/* BUFF OS v72 — the "Beat yourself" scoreboard inside the Today/Week/Month card. */
.v72-btn { width: 100%; margin-top: 12px; min-height: 46px; border-radius: 14px; font-family: inherit; font-size: 14px; font-weight: 800;
  display: flex; align-items: center; justify-content: center; gap: 8px; cursor: pointer; color: var(--accent);
  background: rgba(var(--accent-rgb), .09); border: 1px solid rgba(var(--accent-rgb), .3); }
.v72-btn span { font-size: 10px; opacity: .8; }
.v72-btn:active { transform: scale(.98); }
.v72-btn.on { background: rgba(var(--accent-rgb), .14); }

.v72-p { margin-top: 12px; padding-top: 12px; border-top: 1px solid rgba(255, 255, 255, .07); }
.v72-head { display: flex; flex-direction: column; gap: 3px; margin-bottom: 12px; }
.v72-head b { font-size: 17px; font-weight: 800; letter-spacing: -.01em; }
.v72-head span { font-size: 12.5px; line-height: 1.45; font-weight: 600; color: var(--txt3); }

.v72-sw { display: flex; gap: 6px; margin-bottom: 12px; padding: 3px; border-radius: 12px; background: rgba(255, 255, 255, .05); }
.v72-sw button { flex: 1; min-height: 34px; border-radius: 9px; border: 0; background: transparent; cursor: pointer;
  font-family: inherit; font-size: 12px; font-weight: 800; color: var(--txt3); }
.v72-sw button.on { background: rgba(255, 255, 255, .1); color: var(--txt); }

.v72-strip { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-bottom: 14px; }
.v72-m { position: relative; display: flex; flex-direction: column; gap: 1px; padding: 10px 11px; border-radius: 13px;
  background: rgba(255, 255, 255, .045); }
.v72-m small { font-size: 10px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; color: var(--txt3); }
.v72-m b { font-size: 20px; white-space: nowrap; font-weight: 800; letter-spacing: -.02em; font-variant-numeric: tabular-nums; line-height: 1.15; }
.v72-sub { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 4px 6px; margin-top: 5px; min-width: 0; }
.v72-sub span { font-size: 11px; font-weight: 700; color: var(--txt3); white-space: nowrap; }

.v72-d { font-style: normal; font-size: 11px; font-weight: 800; padding: 2px 7px; border-radius: 8px; font-variant-numeric: tabular-nums; white-space: nowrap; }
.v72-d.up { color: #4ddb9a; background: rgba(77, 219, 154, .13); }
.v72-d.dn { color: #ff9a76; background: rgba(255, 138, 107, .13); }
.v72-d.eq { color: var(--txt3); background: rgba(255, 255, 255, .06); }

.v72-rows { display: flex; flex-direction: column; gap: 11px; }
.v72-r { display: flex; flex-direction: column; gap: 6px; }
.v72-rh { display: flex; align-items: center; gap: 8px; font-size: 13.5px; font-weight: 700; }
.v72-rh > span:first-child { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.v72-vs { flex: 0 0 auto; font-variant-numeric: tabular-nums; }
.v72-vs b { font-weight: 800; }
.v72-vs small { font-size: 11.5px; font-weight: 700; color: var(--txt3); }
.v72-pb { font-style: normal; font-size: 10.5px; font-weight: 800; color: #f0c567; }
.v72-bar { position: relative; display: block; height: 7px; border-radius: 4px; background: rgba(255, 255, 255, .07); overflow: visible; }
.v72-bar .a { position: absolute; left: 0; top: 0; bottom: 0; border-radius: 4px; background: #ff9a76; }
.v72-bar .a.win { background: #4ddb9a; }
/* the marker is where the earlier you finished — the line to cross */
.v72-bar .m { position: absolute; top: -3px; bottom: -3px; width: 2px; margin-left: -1px; border-radius: 1px; background: rgba(255, 255, 255, .75); }
.v72-more { margin-top: 2px; font-size: 11.5px; font-weight: 700; color: var(--txt3); }
.v72-sec { font-size: 10px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--txt3); margin: 4px 0 2px; }

.v72-tip { margin-top: 12px; padding: 10px 12px; border-radius: 12px; font-size: 12.5px; line-height: 1.5; font-weight: 600;
  background: rgba(255, 255, 255, .045); color: var(--txt2, var(--txt)); }
.v72-tip b { font-weight: 800; color: var(--txt); }
.v72-tip.rec { background: rgba(240, 197, 103, .12); }
.v72-foot { margin-top: 12px; font-size: 11px; line-height: 1.5; font-weight: 600; color: var(--txt3); }
.v72-foot b { color: var(--txt); font-weight: 800; }

.v72-recs { display: flex; flex-direction: column; gap: 8px; margin-bottom: 12px; }
.v72-rec { display: flex; align-items: center; gap: 10px; padding: 9px 11px; border-radius: 12px; background: rgba(255, 255, 255, .045); }
.v72-rec > span { font-size: 18px; flex: 0 0 auto; }
.v72-rec > div { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; }
.v72-rec b { font-size: 13px; font-weight: 700; }
.v72-rec small { font-size: 11px; font-weight: 600; color: var(--txt3); }
.v72-rec em { font-style: normal; font-size: 14px; font-weight: 800; font-variant-numeric: tabular-nums; flex: 0 0 auto; }
.v72-rows .v72-rec { background: transparent; padding: 6px 2px; border-bottom: 1px solid rgba(255, 255, 255, .05); border-radius: 0; }

/* "vs your best day" sits on its own row under the two shorter comparisons */
.v72-best { width: 100%; min-height: 40px; margin: -4px 0 12px; border-radius: 12px; cursor: pointer; font-family: inherit;
  font-size: 12.5px; font-weight: 800; color: #f0c567; background: rgba(240, 197, 103, .08); border: 1px solid rgba(240, 197, 103, .28); }
.v72-best.on { background: rgba(240, 197, 103, .18); border-color: rgba(240, 197, 103, .55); }
.v72-best:active { transform: scale(.98); }

/* exercises in the compare and records lists open that exercise */
.v72-tap { cursor: pointer; -webkit-tap-highlight-color: transparent; border-radius: 12px; transition: background .12s; }
.v72-r.v72-tap { padding: 8px 8px 6px; margin: 0 -8px; } .v72-tap:active { background: rgba(255, 255, 255, .08); }
.v72-r.v72-tap .v72-rh::after { content: "›"; flex: 0 0 auto; margin-left: 2px; font-size: 20px; font-weight: 500; line-height: 1; color: var(--txt3, #8a8f98); }
.v72-rec.v72-tap { cursor: pointer; }
