:root{--bg:#F2F2F7;--surface:#FFFFFF;--surface-2:#EFEFF4;--ink:#000000;--ink-2:#6C6C70;--ink-3:#AEAEB2;--line:#D8D8DC;--blue:#007AFF;--blue-press:#0062CC;--on-blue:#FFFFFF;--blue-soft:#E5F1FF;--green:#34C759;--green-soft:#E2F7E7;--yellow:#FFCC00;--on-yellow:#000;--orange:#FF9500;--red:#FF3B30;--red-soft:#FFE7E5;--ring-move:#FA114F;--ring-ex:#92E82A;--ring-stand:#1EEAEF;--num:ui-rounded,"SF Pro Rounded",-apple-system,BlinkMacSystemFont,system-ui,sans-serif;--display:-apple-system,"SF Pro Display",BlinkMacSystemFont,"Segoe UI",Roboto,system-ui,sans-serif;--text:-apple-system,"SF Pro Text",BlinkMacSystemFont,"Segoe UI",Roboto,system-ui,sans-serif;--r-sheet:14px;--r-card:12px;--r-ctl:12px;--safe-b:env(safe-area-inset-bottom,0px);--safe-t:env(safe-area-inset-top,0px);--tabs-h:52px;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#000000;--surface:#1C1C1E;--surface-2:#2C2C2E;--ink:#FFFFFF;--ink-2:#98989F;--ink-3:#636366;--line:#38383A;--blue:#0A84FF;--blue-press:#0071E3;--on-blue:#FFFFFF;--blue-soft:#0B2A4A;--green:#30D158;--green-soft:#0F2E19;--yellow:#FFD60A;--orange:#FF9F0A;--red:#FF453A;--red-soft:#3A1614;color-scheme:dark}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{background:var(--bg)}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.4 var(--text);-webkit-font-smoothing:antialiased;overscroll-behavior-y:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none;padding:0}img{display:block}:focus-visible{outline:2.5px solid var(--blue);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}#screen{max-width:560px;margin:0 auto;padding:calc(var(--safe-t) + 12px) 16px calc(var(--tabs-h) + var(--safe-b) + 120px)}body.no-tabs #screen{padding-bottom:calc(var(--safe-b) + 140px)}.title{font:700 36px/1 var(--num);letter-spacing:.2px;margin:18px 0 4px}.subtitle{color:var(--ink-2);margin:0 0 20px}.h2{font:600 22px/1.1 var(--num);margin:28px 0 10px;display:flex;align-items:baseline;justify-content:space-between}.h2 button{font:600 15px var(--text);color:var(--blue)}.muted{color:var(--ink-2)}.small{font-size:14px}.tiny{font-size:12.5px;color:var(--ink-3)}.num{font-family:var(--num);font-variant-numeric:tabular-nums}.topbar{position:sticky;top:0;z-index:5;margin:calc(-12px - var(--safe-t)) -16px 0;padding:calc(var(--safe-t) + 8px) 12px 8px;display:flex;align-items:center;gap:8px;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.topbar .grow{flex:1;min-width:0;text-align:center;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.back{min-width:44px;height:44px;display:flex;align-items:center;gap:2px;color:var(--blue);font-weight:500;padding-right:6px}.back svg{width:22px;height:22px}.btn{display:flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 18px;border-radius:var(--r-ctl);font-weight:600;width:100%}.btn.primary{background:var(--blue);color:var(--on-blue)}.btn.primary:active{background:var(--blue-press)}.btn.plain{background:var(--surface);color:var(--blue)}.btn.danger{background:var(--red-soft);color:var(--red)}.btn:disabled{opacity:.5}.pillbtn{min-height:36px;padding:0 14px;border-radius:999px;background:var(--blue);color:var(--on-blue);font-weight:600;font-size:15px}.pillbtn.soft{background:var(--blue-soft);color:var(--blue)}.link{color:var(--blue);font-weight:600;min-height:44px;padding:0 4px}.row{display:flex;align-items:center;gap:12px}.stack{display:grid;gap:12px}.spacer{flex:1}.group{background:var(--surface);border-radius:var(--r-card);overflow:hidden}.item{display:flex;align-items:center;gap:12px;padding:12px 14px;min-height:60px;width:100%;text-align:left;position:relative}.group .item+.item:before{content:"";position:absolute;top:0;left:14px;right:0;border-top:1px solid var(--line)}.item .grow{flex:1;min-width:0}.item .name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item .meta{font-size:14px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chev{color:var(--ink-3);font-size:20px}.thumb{width:48px;height:48px;border-radius:10px;object-fit:cover;flex:none;background:var(--surface-2)}.thumb.letter{display:grid;place-items:center;font:700 22px var(--num);color:var(--blue);background:var(--blue-soft)}.badge{font-size:12px;font-weight:600;padding:3px 8px;border-radius:999px;background:var(--surface-2);color:var(--ink-2);white-space:nowrap}.badge.shared{background:var(--blue-soft);color:var(--blue)}.week{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;background:var(--surface);border-radius:var(--r-card);padding:12px 10px}.day{display:grid;justify-items:center;gap:6px;font-size:12px;color:var(--ink-3)}.day b{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font:600 18px var(--num);color:var(--ink-2);border:2px solid transparent}.day.trained b{background:var(--green);color:#fff}.day.today b{border-color:var(--blue);color:var(--ink)}.day.trained.today b{border-color:var(--green)}.start-card{margin-top:14px;display:grid;gap:10px}.plan{background:var(--surface);border-radius:var(--r-card);padding:14px 14px 12px;display:grid;gap:8px}.plan .top{display:flex;align-items:center;gap:8px}.plan .pname{font:600 21px/1.1 var(--num);flex:1;min-width:0;text-align:left}.plan .exlist{font-size:14px;color:var(--ink-2);line-height:1.45}.plan .bottom{display:flex;align-items:center;gap:10px}.resume{display:flex;align-items:center;gap:12px;background:var(--green);color:#fff;border-radius:var(--r-card);padding:14px 16px;width:100%;text-align:left}.resume .num{font-size:26px;font-weight:700}.wk-head{display:flex;align-items:flex-end;gap:12px;margin:14px 0 6px}.wk-head .t{flex:1;min-width:0}.wk-head h1{font:700 30px/1.05 var(--num);margin:0;word-break:break-word}.clock{font:600 20px var(--num);color:var(--ink-2);font-variant-numeric:tabular-nums}.ex{background:var(--surface);border-radius:var(--r-card);margin-top:14px;padding:12px 10px 8px}.ex-top{display:flex;align-items:center;gap:10px;padding:0 4px 8px}.ex-top .grow{flex:1;min-width:0;text-align:left}.ex-top .name{font:600 20px/1.1 var(--num);color:var(--blue)}.ex-top .meta{font-size:13px;color:var(--ink-2)}.dots{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:var(--ink-2);font-size:22px;line-height:1}.grid{display:grid;grid-template-columns:40px 1fr 74px 64px 48px;gap:6px;align-items:center}.ghead{font-size:12px;color:var(--ink-3);padding:0 2px 4px;text-align:center}.ghead span:nth-child(2){text-align:left}.setrow{padding:3px 2px;border-radius:10px}.setrow.done{background:var(--green-soft)}.setno{height:36px;border-radius:9px;font:600 18px var(--num);color:var(--ink-2);background:var(--surface-2)}.setrow.done .setno{background:transparent;color:var(--green)}.prev{font:500 17px var(--num);color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cell{height:40px;width:100%;border:0;border-radius:9px;background:var(--surface-2);text-align:center;font:600 20px var(--num);font-variant-numeric:tabular-nums;padding:0 2px}.cell::placeholder{color:var(--ink-2);opacity:.6;font-weight:500}.setrow.done .cell{background:transparent}.cell.bad{box-shadow:inset 0 0 0 2px var(--red)}.addset{width:100%;min-height:42px;margin-top:4px;border-radius:10px;color:var(--blue);font-weight:600;font-size:15px}.target{font-size:12.5px;color:var(--ink-3);text-align:center;padding-top:2px}.wk-actions{display:grid;gap:10px;margin-top:18px}#dock{position:fixed;left:0;right:0;bottom:calc(var(--tabs-h) + var(--safe-b));z-index:20;display:grid;gap:8px;padding:0 12px 8px;max-width:560px;margin:0 auto;pointer-events:none}body.no-tabs #dock{bottom:var(--safe-b);padding-bottom:12px}#dock>*{pointer-events:auto}.rest{position:relative;overflow:hidden;border-radius:18px;background:var(--surface);box-shadow:0 6px 24px #0f141e2e;display:flex;align-items:center;gap:6px;padding:8px 8px 8px 16px}.rest .fill{position:absolute;inset:0;background:var(--yellow);transform-origin:left;transition:transform .25s linear}.rest>*:not(.fill){position:relative}.rest .left{flex:1;min-width:0;color:var(--on-yellow)}.rest .left small{display:block;font-size:12.5px;font-weight:600;opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rest .time{font:700 40px/.95 var(--num);font-variant-numeric:tabular-nums}.rest button{min-width:48px;height:44px;border-radius:12px;background:#ffffffbf;color:#16191f;font:600 17px var(--num)}.rest.over{animation:pulse 1s ease-in-out 3}.rest.over .fill{transform:scaleX(1)!important;background:var(--green)}.rest.over .left{color:#fff}@keyframes pulse{50%{transform:scale(1.03)}}.pill-wk{display:flex;align-items:center;gap:10px;background:var(--ink);color:var(--bg);border-radius:16px;padding:12px 16px;text-align:left;box-shadow:0 6px 24px #0f141e2e}.pill-wk .grow{flex:1;min-width:0;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pill-wk .num{font-size:20px;font-weight:600}#tabs{position:fixed;left:0;right:0;bottom:0;z-index:21;padding-bottom:var(--safe-b);background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--line)}#tabs .in{max-width:560px;margin:0 auto;display:grid;grid-template-columns:repeat(5,1fr);height:var(--tabs-h)}#tabs button{display:grid;justify-items:center;align-content:center;gap:3px;font-size:11px;font-weight:600;color:var(--ink-3)}#tabs button svg{width:25px;height:25px}body.no-tabs #tabs{display:none}.search{position:relative;margin-bottom:10px}.search input{width:100%;height:44px;border:0;border-radius:var(--r-ctl);background:var(--surface);padding:0 14px 0 40px;font-size:17px}.search svg{position:absolute;left:12px;top:12px;width:20px;height:20px;color:var(--ink-3)}.chips{display:flex;gap:8px;overflow-x:auto;margin:0 -16px;padding:2px 16px 12px;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chip{flex:none;min-height:36px;padding:0 14px;border-radius:999px;background:var(--surface);color:var(--ink-2);font-weight:600;font-size:14.5px}.chip[aria-pressed=true]{background:var(--ink);color:var(--bg)}.listlabel{font-size:13px;font-weight:600;color:var(--ink-3);margin:16px 4px 6px}.sel{width:26px;height:26px;border-radius:50%;border:2px solid var(--line);flex:none;display:grid;place-items:center;color:#fff}.sel svg{width:16px;height:16px}.item[aria-selected=true] .sel{background:var(--blue);border-color:var(--blue)}.field{display:grid;gap:6px;font-size:14px;font-weight:600;color:var(--ink-2)}.field input,.field select,.field textarea{height:48px;border:0;border-radius:var(--r-ctl);background:var(--surface);padding:0 14px;font-size:17px;font-weight:400;color:var(--ink)}.field textarea{height:96px;padding:12px 14px;resize:vertical}.sheet .field input,.sheet .field select,.sheet .field textarea{background:var(--surface-2)}.toggle{display:flex;align-items:center;gap:12px;background:var(--surface);border-radius:var(--r-ctl);padding:10px 14px;min-height:56px}.toggle .grow{flex:1}.switch{appearance:none;-webkit-appearance:none;width:51px;height:31px;border-radius:999px;background:var(--line);position:relative;transition:background .2s;flex:none}.switch:after{content:"";position:absolute;top:2px;left:2px;width:27px;height:27px;border-radius:50%;background:#fff;box-shadow:0 2px 4px #0003;transition:transform .2s}.switch:checked{background:var(--green)}.switch:checked:after{transform:translate(20px)}.choice{display:flex;flex-wrap:wrap;gap:8px}.pe{background:var(--surface);border-radius:var(--r-card);padding:12px;display:grid;gap:10px}.pe .row .grow{flex:1;min-width:0}.pe .name{font-weight:600}.pe-ctl{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.pe-ctl label{display:grid;gap:4px;font-size:12px;color:var(--ink-3);font-weight:600}.stepper{display:flex;align-items:center;background:var(--surface-2);border-radius:10px;height:40px}.stepper button{width:36px;height:40px;font-size:20px;color:var(--blue)}.stepper span{flex:1;text-align:center;font:600 19px var(--num)}.pe-ctl input,.pe-ctl select{height:40px;border:0;border-radius:10px;background:var(--surface-2);text-align:center;font:600 18px var(--num);width:100%;color:var(--ink)}.iconbtn{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:var(--ink-3);font-size:18px}.demo{position:relative;border-radius:var(--r-card);background:var(--surface-2);margin-top:8px;min-height:min-content}.demo img{border-radius:inherit}.demo img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}.demo img.b{position:absolute;inset:0;height:100%}.demo img.b{animation:xfade 3.2s ease-in-out infinite}@keyframes xfade{0%,18%{opacity:0}42%,68%{opacity:1}92%,to{opacity:0}}@media (prefers-reduced-motion:reduce){.demo{display:grid;grid-template-columns:1fr 1fr}.demo img{aspect-ratio:1}.demo img.b{position:static;height:auto;opacity:1}}.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.stat{background:var(--surface);border-radius:var(--r-card);padding:12px 14px}.stat b{display:block;font:700 30px/1 var(--num);font-variant-numeric:tabular-nums}.stat span{font-size:13px;color:var(--ink-2)}.chart{background:var(--surface);border-radius:var(--r-card);padding:12px 12px 8px}.chart svg{width:100%;height:150px;display:block;overflow:visible}.steps{margin:0;padding-left:22px;display:grid;gap:8px;line-height:1.5}.steps li::marker{font:600 16px var(--num);color:var(--ink-3)}.wk-card{background:var(--surface);border-radius:var(--r-card);padding:14px;display:grid;gap:6px;text-align:left;width:100%}.wk-card .top{display:flex;align-items:baseline;gap:8px}.wk-card .pname{font:600 20px/1.1 var(--num);flex:1}.figs{display:flex;gap:16px;font-size:14px;color:var(--ink-2)}.figs b{font:600 18px var(--num);color:var(--ink)}.setline{display:flex;gap:10px;padding:6px 0;font:500 18px var(--num)}.setline span:first-child{width:28px;color:var(--ink-3)}#sheet-root{position:fixed;inset:0;z-index:40;display:none}#sheet-root.open{display:block}.scrim{position:absolute;inset:0;background:#0a0c1073;animation:fade .2s}.sheet{position:absolute;left:0;right:0;bottom:0;max-width:560px;margin:0 auto;background:var(--bg);border-radius:var(--r-sheet) var(--r-sheet) 0 0;padding:8px 16px calc(var(--safe-b) + 16px);max-height:92dvh;display:flex;flex-direction:column;animation:up .26s cubic-bezier(.2,.8,.2,1)}.sheet.tall{height:92dvh}.sheet .grab{width:38px;height:5px;border-radius:3px;background:var(--line);margin:0 auto 6px;flex:none}.sheet-head{display:flex;align-items:center;gap:8px;min-height:48px;flex:none}.sheet-head h2{flex:1;margin:0;font:700 24px var(--num);text-align:center}.sheet-head .link{min-width:64px}.sheet-body{overflow-y:auto;flex:1;padding-bottom:8px;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.sheet-foot{flex:none;padding-top:10px}.actions{display:grid;gap:8px}.actions .btn{background:var(--surface);color:var(--ink);font-weight:500}.actions .btn.red{color:var(--red)}@keyframes up{0%{transform:translateY(100%)}}@keyframes fade{0%{opacity:0}}.summary{text-align:center;padding:10px 0}.summary .big{font:700 64px/1 var(--num)}.prs{display:grid;gap:8px;text-align:left;margin-top:14px}.pr{background:var(--surface);border-radius:12px;padding:10px 14px;display:flex;gap:10px;align-items:center}.pr i{font-style:normal;width:30px;height:30px;border-radius:50%;background:var(--yellow);display:grid;place-items:center;font:700 15px var(--num);color:#16191f}.auth{max-width:420px;margin:0 auto;padding-top:9vh}.mark{width:64px;height:64px;border-radius:16px}.auth h1{font:700 44px/1 var(--num);margin:18px 0 8px}#toast{position:fixed;left:50%;top:calc(var(--safe-t) + 10px);transform:translate(-50%);z-index:60;background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:12px;font-weight:600;font-size:15px;max-width:calc(100% - 32px);opacity:0;pointer-events:none;transition:opacity .2s}#toast.show{opacity:1}.empty{background:var(--surface);border-radius:var(--r-card);padding:22px 18px;text-align:center;color:var(--ink-2)}.empty b{display:block;color:var(--ink);font-size:17px;margin-bottom:4px}.loading{display:grid;place-items:center;min-height:60vh;color:var(--ink-3)}.hint{background:var(--blue-soft);color:var(--ink);border-radius:12px;padding:10px 14px;font-size:14.5px;margin:12px 0 0;line-height:1.45}.daynav{display:flex;align-items:center;justify-content:space-between;background:var(--surface);border-radius:var(--r-card);padding:4px;margin-bottom:12px}.daynav b{font:600 20px var(--num)}.iconbtn.big{width:44px;height:44px;color:var(--blue)}.iconbtn.big svg{width:22px;height:22px}.iconbtn.flip svg{transform:scaleX(-1)}.iconbtn:disabled{opacity:.3}.kcal-card{background:var(--surface);border-radius:var(--r-card);padding:16px;display:grid;gap:14px}.kc-top{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.kc-big{font-size:56px;font-weight:700;line-height:.9}.kc-sub{color:var(--ink-2);font-size:14px;margin-top:4px}.kc-side{display:grid;gap:2px;text-align:right;color:var(--ink-2);font-size:14px}.kc-side b{color:var(--ink);font-size:20px;font-weight:600}.bar{height:8px;border-radius:99px;background:var(--surface-2);overflow:hidden}.bar i{display:block;height:100%;border-radius:inherit;background:var(--green);transition:width .3s}.bar.big{height:14px}.bar.over i{background:var(--red)}.macros{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.macro{display:grid;gap:6px;font-size:13px;color:var(--ink-2)}.macro{gap:2px}.macro .mv{white-space:nowrap}.macro .bar{margin-top:4px}.macro b{font-size:19px;color:var(--ink);font-weight:600}.macro.p .bar i{background:var(--blue)}.macro.c .bar i{background:var(--yellow)}.macro.f .bar i{background:var(--ink-3)}.item .name.wrap{white-space:normal;line-height:1.3}.item .kc{font-size:20px;font-weight:600}.item.add-food{color:var(--blue);font-weight:600;min-height:50px;justify-content:center}.food-mini{display:flex;align-items:center;gap:12px;background:var(--surface);border-radius:var(--r-card);padding:12px 14px;text-align:left;width:100%}.food-mini .grow{flex:1;min-width:0}.bignum{font:600 28px var(--num)!important;height:56px!important}.totals{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;background:var(--surface);border-radius:12px;padding:12px}.sheet .totals{background:var(--surface)}.totals div{display:grid;justify-items:center}.totals b{font-size:24px;font-weight:700}.totals span{font-size:12px;color:var(--ink-2)}.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.three{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}.three input,.two input{min-width:0;width:100%}a.btn{text-decoration:none}.titlerow{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.titlerow .title{margin-bottom:14px}.searchrow{display:flex;gap:8px;align-items:flex-start;flex:none}.searchrow .search{flex:1;min-width:0}.scanbtn{display:flex;align-items:center;gap:6px;height:44px;padding:0 14px;border-radius:var(--r-ctl);background:var(--blue);color:var(--on-blue);font-weight:600;flex:none}.titlerow .scanbtn{margin-bottom:14px}.scanbtn svg{width:22px;height:22px}.scanbox{position:relative;border-radius:var(--r-card);overflow:hidden;background:#000;aspect-ratio:3/4;max-height:56dvh;width:100%}.scanbox video{width:100%;height:100%;object-fit:cover;display:block}.aim{position:absolute;inset:20% 5%;border:3px solid var(--yellow);border-radius:14px;box-shadow:0 0 0 999px #00000059}.thumbbtn{flex:none;border-radius:10px;position:relative}.thumbbtn:after{content:"";position:absolute;right:-3px;bottom:-3px;width:18px;height:18px;border-radius:50%;background:var(--blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M9 7l8 5-8 5z'/%3E%3C/svg%3E") center/14px no-repeat;border:2px solid var(--surface)}.vflow{display:block}.vflow>*+*{margin-top:12px}.vflow .demo{margin-top:12px}.vh{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;pointer-events:none}label.btn{cursor:pointer}.btn.nudge{background:var(--blue);color:var(--on-blue)}.repeat-card{display:flex;align-items:center;gap:12px;background:var(--surface);border-radius:var(--r-card);padding:12px 14px;text-align:left;width:100%}.repeat-card .grow{flex:1;min-width:0}.coach{background:var(--surface);border-radius:var(--r-card);padding:14px;margin-top:18px}.coach-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px}.coach-head b{font:700 22px var(--num)}.balance{display:grid;gap:7px}.bal{display:grid;grid-template-columns:78px 1fr 28px;align-items:center;gap:10px;font-size:14px;color:var(--ink-2)}.bal b{text-align:right;font-size:18px;color:var(--ink)}.bal .bar{position:relative;overflow:visible;height:10px}.bal .bar i{background:var(--yellow)}.bal.ok .bar i{background:var(--green)}.bal.none span{color:var(--red);font-weight:600}.bal .bar em{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--ink-3);border-radius:1px}.coachtip{display:flex;align-items:center;gap:10px;background:var(--blue-soft);border-radius:10px;padding:8px 10px;margin:0 2px 8px;font-size:14px;line-height:1.35}.coachtip span{flex:1}.coachtip .pillbtn{flex:none;white-space:nowrap}.watchline{font-size:14px;color:var(--ink-2)}.burned{font-size:14px;color:var(--ink-2);margin-top:-4px}.copyrow{display:flex;align-items:center;gap:10px;background:var(--surface);border-radius:12px;padding:10px 12px}.copyrow .grow{flex:1;min-width:0}.copyrow code{display:block;font-size:13px;word-break:break-all;color:var(--ink)}.vflow .h2{margin-top:22px}:root{--fig-skin:#E7EAEF;--fig-skin-far:#BCC3CD;--fig-line:#4D5563;--fig-hi:#FFFFFF;--fig-shade:#1B2230;--fig-mus:#E0463B;--fig-mus2:#F2A79F;--fig-mus-far:#B54840;--fig-short:#2C313A;--fig-short-far:#1F232A;--fig-hair:#3B4049;--fig-plate:#25292F;--fig-rim:#5A616D;--fig-metal:#A6AEBA;--fig-pad:#3D434D}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--fig-skin:#DCE0E6;--fig-skin-far:#848C99;--fig-line:#0C0E12;--fig-shade:#000;--fig-mus:#F0554A;--fig-mus2:#B9675F;--fig-mus-far:#9A3F38;--fig-short:#4A505B;--fig-short-far:#373C45;--fig-hair:#2A2E35;--fig-plate:#5B626E;--fig-rim:#8C94A1;--fig-metal:#8C94A1;--fig-pad:#4A515C}}:root[data-theme=dark]{--fig-skin:#DCE0E6;--fig-skin-far:#848C99;--fig-line:#0C0E12;--fig-shade:#000;--fig-mus:#F0554A;--fig-mus2:#B9675F;--fig-mus-far:#9A3F38;--fig-short:#4A505B;--fig-short-far:#373C45;--fig-hair:#2A2E35;--fig-plate:#5B626E;--fig-rim:#8C94A1;--fig-metal:#8C94A1;--fig-pad:#4A515C}.figthumb{display:grid;place-items:center;background:var(--surface-2);overflow:hidden}.figthumb svg{width:100%;height:100%}.demo.anim{aspect-ratio:248/234;max-height:46dvh;display:grid;place-items:center;background:var(--surface)}.demo.anim svg{width:100%;height:100%}.demo-switch{display:block;margin:4px auto 0;min-height:36px}.tick{width:42px;height:42px;justify-self:center;border-radius:50%;display:grid;place-items:center;background:var(--surface);border:2px solid var(--line);color:var(--ink-3);transition:transform .12s ease,background .2s,border-color .2s,color .2s}.tick svg{width:22px;height:22px}.tick:active{transform:scale(.88)}.setrow.ready .tick{border-color:var(--green);color:var(--green)}.setrow.done .tick{background:var(--green);border-color:var(--green);color:#fff;box-shadow:0 2px 8px color-mix(in srgb,var(--green) 40%,transparent)}.setrow.pop{animation:rowflash .7s ease-out}.setrow.pop .tick{animation:tickpop .42s cubic-bezier(.2,1.7,.4,1)}.setrow.pop .tick path{stroke-dasharray:1;stroke-dashoffset:1;animation:tickdraw .32s .1s ease-out forwards}@keyframes tickpop{0%{transform:scale(.55)}to{transform:scale(1)}}@keyframes tickdraw{to{stroke-dashoffset:0}}@keyframes rowflash{0%{background:color-mix(in srgb,var(--green) 38%,transparent)}to{background:var(--green-soft)}}.testmark{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;flex:none;font-weight:700;color:#fff;background:var(--ink-3)}.testmark.ok{background:var(--green)}.testmark.bad{background:var(--red)}.item .meta.wrap{white-space:normal}body{font:17px/1.35 var(--text);letter-spacing:-.2px}.title{font:700 34px/1.2 var(--display);letter-spacing:.37px;margin:6px 0 2px}.subtitle{font-size:15px;margin:0 0 16px}.h2{font:700 22px/1.25 var(--display);letter-spacing:.35px;margin:26px 2px 8px}.h2 button{font:400 17px var(--text)}.thumb.letter{font:600 20px var(--num)}.plan .pname,.wk-card .pname{font:600 19px/1.2 var(--display);letter-spacing:.2px}.wk-head h1{font:700 28px/1.15 var(--display);letter-spacing:.35px}.ex-top .name{font:600 17px/1.25 var(--text);letter-spacing:-.4px}.sheet-head h2{font:600 17px var(--text);letter-spacing:-.4px}.auth h1{font:700 40px/1.1 var(--display)}.coach-head b{font:700 20px var(--display)}.daynav b{font:600 17px var(--text)}.clock,.setno,.prev,.cell,.stepper span,.stat b,.figs b,.setline,.summary .big,.kc-big,.bignum,.rest .time,.day b,.kc-side b,.macro b,.totals b,.item .kc,.bal b{font-family:var(--num)}.topbar{background:color-mix(in srgb,var(--bg) 78%,transparent);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:.5px solid transparent;transition:border-color .2s}.topbar .grow{font:600 17px var(--text);letter-spacing:-.4px}#navbar{position:fixed;top:0;left:0;right:0;z-index:15;height:calc(var(--safe-t) + 44px);padding-top:var(--safe-t);display:grid;place-items:center;font:600 17px var(--text);letter-spacing:-.4px;background:color-mix(in srgb,var(--bg) 78%,transparent);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:.5px solid var(--line);opacity:0;pointer-events:none;transition:opacity .18s}#navbar.show{opacity:1}body.no-tabs #navbar{display:none}.btn{min-height:50px;border-radius:var(--r-ctl);font:600 17px var(--text);letter-spacing:-.4px}.btn.plain{background:var(--surface);color:var(--blue);font-weight:400}.btn.danger{background:var(--surface);color:var(--red);font-weight:400}.pillbtn{min-height:34px;font:600 15px var(--text);letter-spacing:-.2px}.link{font-weight:400}.sheet-head .link:last-child{font-weight:600}.group,.plan,.wk-card,.ex,.kcal-card,.coach,.stat,.empty,.pe,.week,.daynav,.chart,.copyrow,.food-mini,.repeat-card{border-radius:var(--r-card);box-shadow:none}.item{min-height:52px;padding:10px 16px}.group .item+.item:before{left:16px;border-top:.5px solid var(--line)}.group .item:has(.thumb)+.item:has(.thumb):before{left:76px}.item .name{font-weight:400;font-size:17px;letter-spacing:-.4px}.item .meta{font-size:15px}.chev{font-size:22px;color:var(--ink-3)}.thumb{border-radius:9px}.chip{background:var(--surface);font:500 15px var(--text);letter-spacing:-.2px}.chip[aria-pressed=true]{background:var(--blue);color:#fff}.search input{background:color-mix(in srgb,var(--ink-3) 24%,transparent);border-radius:10px;height:38px;font-size:17px}.search svg{top:9px}.field{font-weight:400;font-size:13px;color:var(--ink-2);letter-spacing:-.1px}.field input,.field select,.field textarea{border-radius:10px}.listlabel{font-size:13px;font-weight:400;color:var(--ink-2);margin:20px 16px 6px}.hint{background:var(--surface);border-radius:var(--r-card);color:var(--ink-2)}.hint b{color:var(--ink)}.coachtip{background:color-mix(in srgb,var(--blue) 10%,var(--surface))}.day.trained b{background:var(--green);color:#000}.day.today b{border-color:var(--blue)}.sheet{border-radius:var(--r-sheet) var(--r-sheet) 0 0;background:var(--bg)}.sheet .grab{width:36px;background:var(--ink-3);opacity:.5}.scrim{background:#00000059}#tabs{background:color-mix(in srgb,var(--surface) 82%,transparent);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-top:.5px solid var(--line)}#tabs .in{grid-template-columns:repeat(5,1fr)}#tabs button{font:500 10px var(--text);letter-spacing:.1px;gap:2px;padding-top:4px;align-content:start}#tabs button svg{width:27px;height:27px}#tabs button[aria-current=page]{color:var(--blue)}.rest{background:#1c1c1e;color:#fff;border-radius:24px;box-shadow:0 8px 30px #00000047;padding:10px 10px 14px 18px}.rest .fill{top:auto;bottom:0;height:4px;background:var(--orange);border-radius:0}.rest .left{color:#fff}.rest .left small{color:#aeaeb2;opacity:1}.rest .time{color:var(--orange);font-weight:600}.rest button{background:#ffffff24;color:#fff;border-radius:999px;min-width:50px;font:600 15px var(--text)}.rest.over .fill{background:var(--green)}.rest.over .time{color:var(--green)}.pill-wk{background:#1c1c1e;color:#fff;border-radius:24px}.pill-wk .num{color:var(--orange)}.rings{display:flex;align-items:center;gap:16px;background:#000;color:#fff;border-radius:var(--r-card);padding:16px;width:100%;text-align:left}.rings svg{width:112px;height:112px;flex:none}.rings .legend{display:grid;gap:8px;min-width:0}.rings .legend div{font:600 14px var(--text);letter-spacing:-.2px}.rings .legend b{display:block;font:600 22px/1.1 var(--num)}.rings .legend small{font:600 15px var(--num);color:#8e8e93}.rings .r-mv b{color:var(--ring-move)}.rings .r-ex b{color:var(--ring-ex)}.rings .r-st b{color:var(--ring-stand)}.food-mini .fi{width:36px;height:36px;border-radius:10px;background:var(--orange);color:#fff;display:grid;place-items:center;flex:none}.food-mini .fi svg{width:21px;height:21px}.eyebrow-date{font:600 13px var(--text);color:var(--ink-2);margin:14px 0 0;letter-spacing:-.1px}.demo.gif{display:grid;grid-template-columns:1fr;place-items:center;background:#fff;aspect-ratio:1;height:auto;max-height:46dvh;overflow:hidden}.demo.gif img{width:auto;height:100%;max-width:100%;aspect-ratio:1;object-fit:contain;border-radius:0;image-rendering:auto}.gifcredit{margin:6px 0 0;text-align:center;font-size:12px;line-height:1.3;color:var(--ink-3)}.gifcredit .link{font-size:12px;min-height:32px;padding:0 4px}.gifgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin-top:10px}.gifcell{display:flex;flex-direction:column;gap:6px;padding:6px;border-radius:14px;background:var(--surface);border:2px solid transparent;text-align:left;font-size:13px;line-height:1.25;color:var(--ink);cursor:pointer}.gifcell[aria-pressed=true]{border-color:var(--blue)}.gifcell img{width:100%;aspect-ratio:1;object-fit:contain;background:#fff;border-radius:10px}.wcard{background:var(--surface);border-radius:var(--r-card);display:grid;grid-template-columns:1fr auto;align-items:end;overflow:hidden}.wbody{display:grid;gap:7px;padding:14px 4px 12px 14px;text-align:left;min-width:0;color:inherit}.wtop{display:flex;align-items:center;gap:8px}.wtop .pname{font:600 21px/1.1 var(--num);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wthumbs{display:flex;gap:6px;align-items:center}.thumb.mini{width:38px;height:38px;border-radius:9px}.wthumbs .more{font-size:13px;font-weight:600;color:var(--ink-2);padding-left:2px}.wnames{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4}.wmeta{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:14px;font-weight:600;color:var(--ink)}.wact{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:10px;padding:10px 12px 12px 4px;align-self:stretch}.wact .more{font-size:16px;letter-spacing:1px;color:var(--blue)}.thumb.gthumb{background:#fff;object-fit:contain}#syncpill{position:fixed;left:50%;transform:translate(-50%);top:calc(env(safe-area-inset-top) + 8px);z-index:60;display:flex;align-items:center;gap:8px;max-width:calc(100% - 32px);background:#1c1c1e;color:#fff;font:600 13px/1.25 var(--text);padding:8px 14px;border-radius:999px;box-shadow:0 4px 16px #00000040}#syncpill .dot{width:8px;height:8px;border-radius:50%;background:var(--orange);flex:none;animation:syncdot 1.6s ease-in-out infinite}@keyframes syncdot{50%{opacity:.35}}.sslabel{display:flex;align-items:baseline;gap:8px;margin:18px 4px -2px;font:700 13px var(--text);color:var(--ssc);text-transform:uppercase;letter-spacing:.4px}.sslabel span{font-weight:500;text-transform:none;letter-spacing:0;color:var(--ink-2)}.ex.ss{border-left:4px solid var(--ssc)}.ex.ss:not(.ss-last){margin-bottom:-6px;border-bottom-left-radius:6px;border-bottom-right-radius:6px}.ex.ss:not(.ss-first){border-top-left-radius:6px;border-top-right-radius:6px}.setno{position:relative}.rirtag{position:absolute;right:-3px;top:-4px;min-width:15px;height:15px;padding:0 3px;border-radius:8px;background:var(--surface-2);color:var(--ink-2);font:700 10px/15px var(--text);text-align:center}.effort{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:8px 0 2px;padding:8px 10px;border-radius:12px;background:var(--blue-soft)}.effort span{font:600 13px var(--text);color:var(--blue);margin-right:2px;flex-basis:100%}.effort button{min-width:40px;min-height:34px;border-radius:999px;background:var(--surface);font:600 15px var(--num);color:var(--ink)}.effort .skip{min-width:34px;margin-left:auto;background:none;color:var(--ink-3)}.exfoot{display:flex;gap:8px}.exfoot .addset{flex:1}.warm{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:6px 0 4px}.warm .wl{font:600 12px var(--text);color:var(--ink-2);text-transform:uppercase;letter-spacing:.3px;margin-right:2px}.wchip{min-height:32px;padding:0 10px;border-radius:999px;background:var(--surface-2);font:600 14px var(--num);color:var(--ink)}.wchip small{font-weight:500;color:var(--ink-2)}.wchip.done{background:var(--green-soft);color:var(--green);text-decoration:line-through}.warm .wx{margin-left:auto;color:var(--ink-3);min-width:30px;min-height:30px}.pillbtn.small{min-height:30px;padding:0 10px;font-size:13px}.platerow{display:flex;align-items:center;justify-content:center;gap:12px}.stepbtn{width:48px;height:48px;border-radius:50%;background:var(--surface-2);font:600 24px var(--num);color:var(--blue)}.plkg{display:flex;align-items:baseline;gap:6px}.plkg input{width:130px;text-align:center;font:700 40px var(--num);border:none;background:none;color:var(--ink);padding:0}.plkg span{font:600 17px var(--text);color:var(--ink-2)}.platesvg{width:100%;height:auto;background:var(--surface);border-radius:14px}.plsides{margin:8px 0 4px;font-size:15px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.pl{display:inline-block;min-width:34px;text-align:center;padding:3px 8px;border-radius:8px;background:var(--pc);color:#fff;font:700 14px var(--num);border:1px solid #0002}.pl[style*="#F4F4F2"]{color:#111}.sslink{align-self:center;margin:-4px auto;min-height:32px;padding:0 14px;border-radius:999px;background:var(--surface-2);color:var(--ink-2);font:600 13px var(--text)}.sslink[aria-pressed=true]{background:#af52de22;color:#af52de}:root{--mm-0:#C9CFD8;--mm-body:#E6E9EE;--mm-line:#FFFFFF}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--mm-0:#596171;--mm-body:#3A404C;--mm-line:#1C1F26}}:root[data-theme=dark]{--mm-0:#596171;--mm-body:#3A404C;--mm-line:#1C1F26}.bmhost{display:flex;gap:10px;justify-content:center;align-items:flex-start}.bm-fig{flex:1;min-width:0;max-width:170px;text-align:center}.bm-fig span{display:block;font-size:12px;color:var(--ink-3);margin-top:2px}.bmhost svg{width:100%;height:auto;display:block}.bm-body path{fill:var(--mm-body)}.bm-mus path{stroke:var(--mm-line);stroke-width:2.2;stroke-linejoin:round}.bm-mus path[data-act]{cursor:pointer}.bm-mus path[data-act]:active{opacity:.75}.mm-mini .bmhost{gap:4px}.mm-row.hl{background:var(--surface-2)}.mm-mini{display:flex;align-items:center;gap:12px;background:var(--surface);border-radius:var(--r-card);padding:10px 14px;text-align:left;width:100%}.mm-mini .bmhost{width:112px;flex:none;pointer-events:none}.mm-mini .grow{flex:1;min-width:0}.mm-card{background:var(--surface);border-radius:var(--r-card);padding:14px 18px 10px;margin-top:12px}.mm-card .bmhost{max-width:360px;margin:0 auto}.mm-legend{display:flex;justify-content:center;flex-wrap:wrap;gap:4px 12px;margin-top:8px;font-size:12.5px;color:var(--ink-2)}.mm-legend i{display:inline-block;width:11px;height:11px;border-radius:3px;margin-right:4px;vertical-align:-1px}.mm-row .bar{height:6px;border-radius:3px;background:var(--surface-2);margin-top:6px;overflow:hidden}.mm-row .bar i{display:block;height:100%;border-radius:3px}.mm-row b{min-width:34px;text-align:right;font-size:17px}.big4{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:6px}.b4{background:var(--surface);border-radius:var(--r-card);padding:12px 14px;text-align:left;display:grid;gap:2px;color:inherit}.b4 .l{font:600 13px var(--text);color:var(--ink-2)}.b4 b{font:700 28px/1.1 var(--num)}.b4 b small{font-size:15px;color:var(--ink-2)}.b4 .s{font-size:12.5px;color:var(--ink-3)}.b4.none b{color:var(--ink-3)}.badge.newpr{background:var(--yellow);color:#000;vertical-align:2px}.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:4px 0 6px}.tiles button{background:var(--surface);border-radius:var(--r-card);padding:12px 6px;display:grid;justify-items:center;gap:6px;font:600 14px var(--text);color:var(--ink)}.tiles .ti{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;color:#fff}.tiles .ti svg{width:20px;height:20px}.live{display:flex;align-items:center;gap:12px;background:var(--green-soft);color:var(--ink);border-radius:var(--r-card);padding:12px 14px;margin:6px 0 10px}.live .pulse{width:12px;height:12px;border-radius:50%;background:var(--green);flex:none;box-shadow:0 0 0 0 var(--green);animation:pulse 1.8s infinite}@keyframes pulse{70%{box-shadow:0 0 0 10px transparent}to{box-shadow:0 0 0 0 transparent}}.streak{color:var(--orange);font-weight:600}.vs-invite{display:flex;align-items:center;gap:12px;background:var(--surface);border-radius:var(--r-card);padding:12px 14px;text-align:left;width:100%}.vsicon{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,#ff2d55,#af52de);color:#fff;display:grid;place-items:center;font:800 13px var(--text);flex:none}.vs-card{background:var(--surface);border-radius:var(--r-card);padding:14px}.vs-head{display:flex;align-items:baseline;justify-content:space-between}.vs-names{display:flex;justify-content:space-between;font:600 13px var(--text);margin:10px 0 2px}.vs-names span:first-child{color:var(--blue)}.vs-names span:last-child{color:#af52de}.vs-row{display:grid;grid-template-columns:52px 1fr 52px;align-items:center;gap:8px;margin-top:8px}.vs-row .v{font:600 16px var(--num);color:var(--ink-2)}.vs-row .v:last-child{text-align:right}.vs-row .v.win{color:var(--ink);font-weight:800}.vs-bar{position:relative;height:22px;border-radius:7px;background:var(--surface-2);display:flex;overflow:hidden}.vs-bar i{display:block;height:100%}.vs-bar .me{background:color-mix(in srgb,var(--blue) 45%,transparent)}.vs-bar .fr{background:color-mix(in srgb,#AF52DE 45%,transparent);margin-left:auto}.vs-bar em{position:absolute;inset:0;display:grid;place-items:center;font:600 12px var(--text);font-style:normal;color:var(--ink)}.bw-card{background:var(--surface);border-radius:var(--r-card);padding:14px;margin-top:8px}.bw-top{display:flex;align-items:flex-start;justify-content:space-between}.bw-big{font:700 38px/1 var(--num)}.bw-big small{font-size:17px;color:var(--ink-2)}.bw-diff{font:700 17px var(--num);text-align:right;display:grid}.bw-diff small{font:500 12px var(--text);color:var(--ink-2)}.bw-diff.up{color:var(--orange)}.bw-diff.down{color:var(--green)}.bw-in{display:flex;align-items:flex-end;gap:10px;margin-top:10px}.bw-in .field{flex:1;min-width:0}.bw-in .field input{width:100%;min-width:0}.bw-in .btn{width:auto;flex:none;padding:0 18px}.meas{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px}.meas .m{background:var(--surface);border-radius:14px;padding:10px 12px;display:grid;gap:2px}.meas span{font:600 13px var(--text);color:var(--ink-2)}.meas b{font:700 22px var(--num)}.meas b small{font-size:13px;color:var(--ink-2)}.meas em{font-style:normal;font-size:12px}.meas em.up{color:var(--orange)}.meas em.down{color:var(--green)}.ph-add{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:10px}.ph-add .btn{width:auto;flex:none;padding:0 16px}.ph-add .choice{min-width:0}.ph-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.ph{position:relative;aspect-ratio:3/4;border-radius:12px;overflow:hidden;background:var(--surface-2)}.ph img{width:100%;height:100%;object-fit:cover;display:block}.ph-l{position:absolute;left:0;right:0;bottom:0;padding:14px 6px 5px;font:600 11.5px var(--text);color:#fff;background:linear-gradient(transparent,#0000008c);text-align:left}.ph-wait{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--surface-2),var(--surface),var(--surface-2));background-size:200% 100%;animation:shimmer 1.2s infinite}@keyframes shimmer{to{background-position:-200% 0}}.ph-full{width:100%;border-radius:14px;display:block}.cmp{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cmp>div{display:grid;gap:6px}.cmp img,.cmp .ph-wait{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:12px}.cmp select{font:inherit;padding:8px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink)}.link.red{color:var(--red)}.water{background:var(--surface);border-radius:var(--r-card);padding:12px 14px;margin-top:12px}.water .wt{display:flex;justify-content:space-between;align-items:baseline}.water .wt b{font-size:17px}.water .wt span{font:700 18px var(--num);color:#30a2e0}.water .wt small{font-size:13px;color:var(--ink-2)}.glasses{display:flex;gap:5px;margin:10px 0}.gl{flex:1;height:30px;border:2px solid #9FD2EE;border-top-width:0;border-radius:2px 2px 7px 7px;position:relative;overflow:hidden;max-width:30px}.gl i{position:absolute;left:0;right:0;bottom:0;background:#30a2e0;transition:height .3s}.wbtns{display:flex;gap:8px}.wbtns button{flex:1;min-height:40px;border-radius:12px;background:#30a2e01f;color:#1f86c2;font:600 15px var(--text);line-height:1.1}.wbtns button small{display:block;font-size:11px;font-weight:500;opacity:.8}.wbtns button:first-child{flex:0 0 44px;font-size:22px}.wbtns .wgoal{flex:0 0 56px;background:var(--surface-2);color:var(--ink-2)}.wbtns button:disabled{opacity:.4}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .wbtns button{color:#64c1f2}}.copyday{display:grid;gap:2px;width:100%;margin-top:12px;padding:12px 14px;border-radius:var(--r-card);background:var(--blue-soft);color:var(--blue);text-align:left}.mealmenu{min-width:32px;min-height:28px;border-radius:8px;color:var(--blue);font-size:18px;line-height:1}.nudge{display:flex;align-items:flex-start;gap:10px;background:#ff950018;border-radius:var(--r-card);padding:12px 14px;margin-bottom:10px}.nudge b{color:#c46a00}.nudge .wx{color:var(--ink-3);min-width:28px;min-height:28px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .nudge b{color:#ffb340}}.authseg{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:var(--surface-2);border-radius:12px;padding:3px;margin-top:22px}.authseg button{min-height:40px;border-radius:9px;font:600 14.5px var(--text);color:var(--ink-2)}.authseg button[aria-selected=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px #00000024}.pwrow{position:relative;display:block}.pwrow input{width:100%;padding-right:64px}.pwrow .link{position:absolute;right:10px;top:50%;transform:translateY(-50%);min-height:32px}#tabs .tab-start{position:relative;color:var(--blue)}#tabs .tab-start i{display:grid;place-items:center;width:56px;height:56px;margin-top:-22px;border-radius:50%;background:var(--blue);color:#fff;box-shadow:0 6px 18px color-mix(in srgb,var(--blue) 40%,transparent),0 0 0 5px var(--bg)}#tabs .tab-start i svg{width:26px;height:26px;margin-left:3px}#tabs .tab-start span{font-weight:700}#tabs .tab-start.on-wk{color:var(--green)}#tabs .tab-start.on-wk i{background:var(--green);box-shadow:0 6px 18px color-mix(in srgb,var(--green) 40%,transparent),0 0 0 5px var(--bg);animation:livepulse 2s ease-in-out infinite}@keyframes livepulse{50%{transform:scale(1.06)}}.hero{display:grid;gap:4px;margin-top:14px;padding:18px 18px 14px;border-radius:var(--r-card);background:linear-gradient(150deg,var(--blue),color-mix(in srgb,var(--blue) 70%,#000));color:#fff;text-align:left;width:100%}.hero .eyebrow{font-size:12px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;opacity:.8}.hero b{font:700 26px/1.15 var(--num,inherit)}.hero .small{opacity:.9}.hero .hero-ex{font-size:14px;opacity:.85;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hero .hero-go{margin-top:12px;background:#fff;color:var(--blue);font-weight:700;min-height:54px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:18px;border-radius:14px}.hero .hero-go svg{width:20px;height:20px}.hero .hero-alt{color:#fff;opacity:.9;justify-self:center;min-height:40px;font-weight:600}.hero .hero-alts{display:flex;justify-content:center;column-gap:18px;row-gap:0;flex-wrap:wrap}.hero.live{display:flex;align-items:center;gap:12px;background:linear-gradient(150deg,var(--green),color-mix(in srgb,var(--green) 70%,#000))}.hero.live .grow{display:grid;gap:3px;flex:1;min-width:0}.hero.live .num{font-size:30px;font-weight:700}.hero-tip{margin-top:8px;padding:8px 10px;border-radius:10px;background:#ffffff29;font-size:14px;line-height:1.35}.hero-tip b{font:inherit;font-weight:700}.hero-pick{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:16px;border-radius:var(--r-card);background:var(--blue);color:#fff}.hero-pick .grow{display:grid;gap:2px;flex:1}.hero-pick .eyebrow{font-size:12px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;opacity:.8}.hero-pick b{font-size:21px}.go{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:color-mix(in srgb,var(--blue) 14%,transparent);color:var(--blue);flex:none}.go svg{width:16px;height:16px;margin-left:2px}.go.big{width:48px;height:48px;background:#fff}.go.big svg{width:22px;height:22px}.h3{font-size:13px;font-weight:600;color:var(--ink-3);text-transform:uppercase;letter-spacing:.4px;margin:4px 4px 6px}.seg{display:grid;grid-template-columns:1fr 1fr;gap:2px;padding:2px;margin:6px 0 10px;border-radius:10px;background:var(--surface-2)}.seg button{min-height:36px;border-radius:8px;font-weight:600;font-size:14px;color:var(--ink-2)}.seg button[aria-selected=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px #0000001f}:root{--rec-g:#16A34A;--rec-y:#E0A800;--rec-r:#E5383B}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--rec-g:#2BD46B;--rec-y:#FFD23F;--rec-r:#FF5A5F}}:root[data-theme=dark]{--rec-g:#2BD46B;--rec-y:#FFD23F;--rec-r:#FF5A5F}.hero-tip .dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px;vertical-align:0;background:#fff}.hero-tip.g .dot{background:#5cf08f}.hero-tip.y .dot{background:#ffd23f}.hero-tip.r .dot{background:#ff7a7d}.whoop-card{display:flex;align-items:center;gap:14px;width:100%;margin-top:12px;padding:12px 14px;border-radius:var(--r-card);background:var(--surface);text-align:left}.wh-logo{font:800 11px/1 var(--text);letter-spacing:2.4px;color:var(--ink-2)}.wh-ring{--c:var(--ink-3);flex:none;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--c) calc(var(--p)*1%),var(--surface-2) 0)}.wh-ring:before{content:"";grid-area:1/1;width:50px;height:50px;border-radius:50%;background:var(--surface)}.wh-ring b{grid-area:1/1;position:relative;font:700 15px var(--num,inherit)}.wh-ring.g{--c:var(--rec-g)}.wh-ring.y{--c:var(--rec-y)}.wh-ring.r{--c:var(--rec-r)}.wh-stats{flex:1;min-width:0;display:grid;gap:6px}.wh-row{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.wh-row>span{display:grid;min-width:0}.wh-row b{font-size:16px}.wh-row small{font-size:11.5px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.whb{fill:var(--ink-3)}.whb.g{fill:var(--rec-g)}.whb.y{fill:var(--rec-y)}.whb.r{fill:var(--rec-r)}.whb.none{fill:var(--surface-2)}.wh-pill{min-width:52px;text-align:center;padding:5px 8px;border-radius:999px;font-weight:700;font-size:14px;background:var(--surface-2);color:var(--ink-2)}.wh-pill.g{background:color-mix(in srgb,var(--rec-g) 18%,transparent);color:var(--rec-g)}.wh-pill.y{background:color-mix(in srgb,var(--rec-y) 22%,transparent);color:color-mix(in srgb,var(--rec-y) 70%,var(--ink))}.wh-pill.r{background:color-mix(in srgb,var(--rec-r) 16%,transparent);color:var(--rec-r)}.wh-work{margin-top:12px;display:grid;gap:8px}.h2 .opt{font:600 12px var(--text);color:var(--ink-3);background:var(--surface-2);padding:3px 8px;border-radius:999px;letter-spacing:0}.device{display:grid;gap:10px;padding:14px;border-radius:var(--r-card);background:var(--surface)}.dev-head{display:flex;align-items:center;gap:12px}.dev-head .grow{flex:1;min-width:0}.dev-ic{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;flex:none;font:800 18px var(--text);color:#fff}.dev-ic.wh{background:#111}.dev-ic.aw{background:linear-gradient(150deg,#ff375f,#ff9f0a)}.dev-ic svg{width:22px;height:22px}.badge.on{background:color-mix(in srgb,var(--rec-g) 16%,transparent);color:var(--rec-g)}.row2{display:grid;grid-template-columns:1fr 1fr;gap:8px}.danger-text{color:var(--red)}.wh-row b small{display:inline;font-size:11px;font-weight:600}.wh-day .meta{white-space:normal}#tabs .tab-start i{margin:-29px auto 0;justify-self:center}#tabs .tab-start i svg{margin-left:3px}#tabs .tab-start span{line-height:normal}.pillbtn.cancelwk{color:var(--red);background:var(--red-soft)}.dev-line{display:flex;align-items:center;gap:10px;width:100%;padding:12px 14px;border-radius:var(--r-card);background:var(--surface);text-align:left;font-weight:600}.dev-line .grow{flex:1}.vs-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:6px}.vs-head b{font-size:17px}.lb{display:grid}.lbr{display:grid;grid-template-columns:24px minmax(0,1fr) 62px 38px 48px 46px;column-gap:8px;align-items:center;padding:9px 0;border-top:.5px solid var(--line)}.lbr.lbh{border-top:0;padding:2px 0 6px}.lbh span{font-size:10.5px;font-weight:600;color:var(--ink-3);text-transform:uppercase;letter-spacing:.3px;text-align:right}.lbr>b{text-align:right;font-variant-numeric:tabular-nums;font-size:15px}.lb .rk{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--surface-2);font-size:12px;font-weight:700;color:var(--ink-2)}.lb .rk.gold{background:#ffd60a;color:#000}.lb .nm{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb .nm.me{color:var(--blue)}.invite-banner{margin:14px 0 4px;padding:12px 14px;border-radius:var(--r-card);background:var(--blue-soft);color:var(--ink);font-size:15px;line-height:1.4}.invite-banner.bad{background:var(--red-soft)}.inv-pick{display:grid;gap:4px;width:100%;text-align:left;padding:16px;border-radius:var(--r-card);background:var(--surface);border:1.5px solid transparent}.inv-pick:active{border-color:var(--blue)}.inv-pick b{font-size:17px}.inv-link{width:100%;padding:12px 14px;border-radius:var(--r-ctl);border:1px solid var(--line);background:var(--surface);color:var(--ink);font:500 14px ui-monospace,SFMono-Regular,Menlo,monospace}.item.inv{gap:8px}body.sheet-open{position:fixed;left:0;right:0;width:100%;overflow:hidden}#sheet-root .sheet-body,#sheet-root .sheet{overscroll-behavior:contain}.infobtn{display:inline-grid;place-items:center;width:22px;height:22px;margin-left:8px;border-radius:50%;border:1.5px solid var(--ink-3);color:var(--ink-2);font:italic 700 13px Georgia,serif;vertical-align:4px}.infobtn[aria-expanded=true]{background:var(--blue);border-color:var(--blue);color:#fff}.wk-head .titlerow{display:flex;align-items:center;gap:0;min-width:0}.wk-head .titlerow h1{min-width:0}.wk-head .infobtn{flex:none;vertical-align:0}#tabs .in{grid-template-columns:repeat(5,minmax(0,1fr))}#tabs .tab-start{position:static}#tabs .in{position:relative}#tabs .tab-start i{position:absolute;left:50%;top:-28px;margin:0;transform:translate(-50%)}#tabs .tab-start:before{content:"";display:block;width:27px;height:27px}#tabs .tab-start.on-wk i{animation:livepulse2 2s ease-in-out infinite}@keyframes livepulse2{50%{transform:translate(-50%) scale(1.06)}}@media (prefers-reduced-motion:reduce){#tabs .tab-start.on-wk i{animation:none}}.send-friend{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border-radius:var(--r-card);background:var(--surface);text-align:left}.send-friend .grow{flex:1;min-width:0}.sf-ic{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:var(--blue);color:#fff;flex:none}.sf-ic svg{width:22px;height:22px}#tabs .tab-start i svg{margin-left:-1px}.go svg{margin-left:-1px}.hero .hero-go svg{margin-left:0}#updatebar{position:fixed;left:12px;right:12px;top:calc(var(--safe-t) + 8px);z-index:60;display:flex;align-items:center;gap:12px;max-width:536px;margin:0 auto;padding:12px 14px;border-radius:14px;background:var(--ink);color:var(--bg);box-shadow:0 8px 30px #00000040;animation:updin .3s ease-out}#updatebar .grow{flex:1;min-width:0}#updatebar .small{opacity:.75}@keyframes updin{0%{transform:translateY(-20px);opacity:0}}html{touch-action:manipulation;-webkit-text-size-adjust:100%}body{-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;overscroll-behavior-y:none}input,textarea,select,[contenteditable],.inv-link,.selectable{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}img{-webkit-user-drag:none}.wl-top{display:flex;align-items:center;justify-content:space-between;min-height:44px;margin-bottom:6px}.wl-steps{display:flex;gap:6px}.wl-steps i{width:26px;height:5px;border-radius:3px;background:var(--surface-2)}.wl-steps i.on{background:var(--blue)}.wl-opt{display:grid;gap:3px;width:100%;text-align:left;padding:16px 18px;border-radius:var(--r-card);background:var(--surface);border:2px solid transparent;font-size:17px}.wl-opt[aria-pressed=true]{border-color:var(--blue)}.wl-opt:active{transform:scale(.99)}.wl-days{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.wl-days .wl-opt{text-align:center;padding:16px 4px;font-size:22px}.wl-days .wl-opt span{font-size:11px}.wl-plan{display:grid;gap:4px;padding:14px 16px;border-radius:var(--r-card);background:var(--surface)}.wl-plan b{font-size:17px}.deload{display:grid;gap:8px;margin-top:12px;padding:14px 16px;border-radius:var(--r-card);background:var(--surface);border-left:4px solid var(--orange)}.deload.on{border-left-color:var(--green)}.deload b{font-size:16px}.deload .link{justify-self:start;min-height:32px}.exnote{display:block;width:calc(100% - 28px);margin:0 14px 6px;padding:7px 10px;border-radius:9px;background:color-mix(in srgb,var(--yellow) 22%,transparent);color:var(--ink);font-size:14px;text-align:left;white-space:pre-wrap}.exnote:before{content:"📝 "}.feed{background:var(--surface);border-radius:var(--r-card);padding:14px 14px 4px}.fw{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:.5px solid var(--line)}.fw:first-of-type{border-top:0}.fw .grow{flex:1;min-width:0}.fw .name{font-size:15px}.fw .meta{font-size:13px;color:var(--ink-2);margin-top:2px}.hi5{display:inline-flex;align-items:center;gap:4px;min-width:52px;justify-content:center;height:38px;padding:0 10px;border-radius:999px;background:var(--surface-2);font-size:18px}.hi5 span{font:700 13px var(--text);color:var(--ink-2)}.hi5.on{background:color-mix(in srgb,var(--orange) 22%,transparent)}.hi5.on span{color:var(--ink)}.hi5:active{transform:scale(.92)}.kudos{font-size:12.5px;font-weight:600;margin-left:auto;margin-right:8px;color:var(--ink-2)}.kudos-who{margin:-4px 2px 10px;color:var(--ink-2);font-size:15px}.a2hs{display:grid;gap:10px;margin-top:12px;padding:14px 16px;border-radius:var(--r-card);background:var(--surface)}.a2hs-top{display:flex;align-items:center;gap:12px}.a2hs-top img{width:44px;height:44px;border-radius:10px;flex:none}.a2hs-top .grow{flex:1;min-width:0}.a2hs-x{align-self:flex-start}.a2hs-steps{margin:0;padding-left:22px;display:grid;gap:6px;font-size:15px}.shareic{display:inline-grid;place-items:center;width:24px;height:24px;vertical-align:-6px;color:var(--blue)}.shareic svg{width:20px;height:20px}.restbub-wrap{display:flex;justify-content:center;margin:10px 0 0;position:relative}.restbub-wrap+.ex,.restbub-wrap+.sslabel{margin-top:10px}.restbub-wrap:before{content:"";position:absolute;left:50%;top:-8px;bottom:-12px;border-left:2px dotted var(--line);z-index:0}.restbub{position:relative;z-index:1;display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:5px 13px;border-radius:999px;border:0;background:var(--surface);color:var(--ink-2);font:600 14px/1 var(--text, inherit);font-variant-numeric:tabular-nums;box-shadow:0 1px 3px #00000014}.restbub svg{width:15px;height:15px}.restbub .small{font-weight:500;opacity:.85}.restbub.live{background:var(--blue);color:var(--on-blue);animation:restpulse 2s ease-in-out infinite}@keyframes restpulse{50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--blue) 18%,transparent)}}@media (prefers-reduced-motion:reduce){.restbub.live{animation:none}}.wl-note{margin:0 0 6px;padding:10px 12px;border-radius:12px;background:var(--green-soft);color:var(--ink);font-size:15px}.wk-head .together{display:flex;width:fit-content;align-items:center;gap:6px;margin-top:6px;padding:4px 10px;border-radius:999px;background:var(--green-soft);color:var(--ink);font-size:13px;font-weight:600}.wk-head .together .pulse{width:8px;height:8px;border-radius:50%;background:var(--green);animation:togetherdot 1.6s ease-in-out infinite}@keyframes togetherdot{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.wk-head .together .pulse{animation:none}}.fromtag{color:var(--green);font-weight:600}div.live .live-top{display:flex;align-items:center;gap:10px}div.live .live-row{display:flex;align-items:center;gap:10px;margin-top:8px}div.live{flex-direction:column;align-items:stretch;gap:0}.pillbtn.join{background:var(--green);color:#fff;min-height:36px;padding:0 16px;font-weight:700}.party-in{font-size:13px;font-weight:600;color:var(--green)}.party{margin:4px 0 10px;padding:12px;border-radius:var(--r-card);background:var(--green-soft)}.party-h{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.party-h .small{flex-basis:100%}.party .pulse{width:8px;height:8px;border-radius:50%;background:var(--green);animation:togetherdot 1.6s ease-in-out infinite}.pchips{display:flex;gap:8px;overflow-x:auto;margin-top:10px;padding-bottom:2px;scrollbar-width:none}.pchip{display:flex;align-items:center;gap:8px;flex:none;padding:6px 12px 6px 6px;border-radius:999px;background:var(--surface)}.pchip .av{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font-weight:700;font-size:14px}.pchip.me .av{background:var(--blue)}.pchip b{display:block;font-size:14px;line-height:1.1}.pchip small{display:block;color:var(--ink-2);font-size:12px;white-space:nowrap}.item.person .av{width:34px;height:34px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--blue-soft);color:var(--blue);font-weight:700}.hero .hero-alts .hero-alt{width:auto;flex:none;min-height:40px}.item.person .meta{white-space:normal}.es-group{padding:6px 12px 4px}.es-row{display:grid;grid-template-columns:36px 1fr 1fr 40px;gap:8px;align-items:center;padding:4px 0}.es-head{font-size:12px;color:var(--ink-2);font-weight:600;padding-bottom:0}.es-head span{text-align:center}.es-head span:first-child{text-align:left}.es-n{font-weight:700;color:var(--ink-2)}.es-row .cell{width:100%;min-width:0}.es-del{width:36px;height:36px;border-radius:50%;border:0;background:var(--red-soft);color:var(--red);font-weight:700}.vsl{display:flex;justify-content:space-between;margin-top:10px}.vsl-side b{display:block;font-size:15px}.vsl-side small{color:var(--ink-2);font-size:13px;font-variant-numeric:tabular-nums}.vsl-side.r{text-align:right}.vsl-bar{height:10px;border-radius:5px;background:var(--green);overflow:hidden;margin-top:6px}.vsl-bar i{display:block;height:100%;background:var(--blue);border-right:2px solid var(--surface);transition:width .5s ease}.vsl-lead{margin-top:6px;font-size:13px;font-weight:600}.bwnote{margin:12px 0 4px;padding:12px 14px;border-radius:var(--r-card);background:var(--blue-soft);font-size:15px;line-height:1.4}.bwnote .pillbtn{display:block;margin-top:10px}.ghead abbr{text-decoration:none}.namecard{display:grid;gap:6px;margin-top:12px;padding:14px;border-radius:var(--r-card);background:var(--surface)}.namecard .row2{display:flex;gap:8px;margin-top:4px}.namecard input{flex:1;min-width:0;height:42px;border:0;border-radius:var(--r-ctl);background:var(--surface-2);padding:0 12px;font-size:17px}.namecard .link{justify-self:start;color:var(--ink-2)}button.mm-row{width:100%;text-align:left}.mm-row .chev{transition:transform .2s}.mm-row .chev.open{transform:rotate(90deg)}.mm-drop{padding:2px 14px 10px 28px;background:var(--surface-2)}.mm-drop p{margin:8px 0}.mm-ex{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:9px 0;border-bottom:1px solid var(--line)}.mm-ex:last-child{border-bottom:0}.mm-ex b{display:block;font-size:15px}.mm-ex .small{display:block}.seg+.subtitle{margin-top:10px}.fh{background:var(--surface);border-radius:var(--r-card);overflow:hidden}.fh-head{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:12px 14px}.fh-head .av{width:38px;height:38px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font-weight:700}.fh-head b,.fh-wb b,.fh-head .small,.fh-wb .small{display:block}.chev.open{transform:rotate(90deg)}.chev{transition:transform .2s}.fh-list{border-top:1px solid var(--line);padding:4px 0 6px}.fh-w{display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px;padding:0 10px 0 14px;border-bottom:1px solid var(--line)}.fh-w:last-of-type{border-bottom:0}.fh-wb{display:flex;align-items:center;gap:8px;text-align:left;padding:10px 0;min-width:0}.fh-sets{grid-column:1 / -1;padding:2px 0 12px 10px;display:grid;gap:6px}.fh-ex b{display:block;font-size:15px}.fh-ex .small{display:block;white-space:pre-wrap;font-variant-numeric:tabular-nums}.privrow{margin:6px 0 4px}.privchip{display:block;margin-top:6px;padding:4px 10px;border-radius:999px;background:var(--surface-2);color:var(--ink-2);font-size:13px;font-weight:600;width:fit-content}.privchip.on{background:var(--ink);color:var(--bg)}.lock{font-size:13px}.mm-ex .grow,.fh-wb .grow,.fh-head .grow{flex:1;min-width:0}.lifted,.wrapcard{display:flex;align-items:center;gap:14px;padding:14px;border-radius:var(--r-card);background:var(--surface);text-align:left;width:100%}.lifted b{display:block;font-size:22px;line-height:1.2;margin:1px 0 2px}.lifted .small,.wrapcard .small{display:block}.lk-emoji{font-size:40px;line-height:1;flex:none}.lk-emoji.small{font-size:26px}.wrapcard{background:linear-gradient(135deg,#ff2d55,#5e5ce6);color:#fff}.wrapcard b{display:block;font-size:17px}.wrapcard .chev{color:#fff}.sum-like{margin:12px 0 0;font-size:16px}.ghost{margin:4px 0 10px;padding:12px 14px;border-radius:var(--r-card);background:var(--surface);border:1.5px dashed color-mix(in srgb,var(--ink-2) 35%,transparent)}.gh-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.gh-x{width:30px;height:30px;border-radius:50%;color:var(--ink-2);flex:none}.gh-track{position:relative;height:30px;margin:8px 14px 4px;border-radius:15px;background:var(--surface-2)}.gh-track .gh-finish{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:18px}.gh-track i{position:absolute;top:50%;transform:translate(-50%,-50%);font-style:normal;font-size:20px;transition:left .8s ease}.gh-track .gh-g{opacity:.65;filter:grayscale(.3)}.gh-msg b{display:block;font-size:15px}.gh-msg .small{display:block;font-variant-numeric:tabular-nums}.sum-ghost,.sum-hit{display:flex;gap:12px;align-items:flex-start;margin:12px 0 0;padding:12px 14px;border-radius:14px;background:var(--surface-2);text-align:left}.sum-ghost .si,.sum-hit .si{font-size:26px;line-height:1.1;flex:none}.sum-ghost b,.sum-hit b{display:block}.sum-ghost .small,.sum-hit .small{display:block;margin-top:2px}.sum-ghost.won{background:var(--green-soft)}.sum-hit{background:color-mix(in srgb,#AF52DE 16%,var(--surface))}.predict{display:flex;gap:12px;align-items:flex-start;margin:12px 0 0;padding:14px;border-radius:var(--r-card);background:color-mix(in srgb,#AF52DE 14%,var(--surface))}.predict b{display:block;line-height:1.3}.predict .small{display:block;margin-top:4px}.pr-ball{font-size:30px;line-height:1}.prs .pr{align-items:center}canvas.confetti{position:fixed;inset:0;width:100vw;height:100vh;pointer-events:none;z-index:999}.hist-sub{display:flex;align-items:center;justify-content:space-between;gap:10px}.hist-sub .subtitle{margin:0}.sheet.wrapsheet{height:100dvh;max-height:100dvh;border-radius:0;padding:0;background:#000;max-width:560px}.sheet.wrapsheet .grab{display:none}.wrapstory{position:relative;height:100%;color:#fff;display:flex;flex-direction:column;justify-content:center;padding:calc(env(safe-area-inset-top) + 64px) 30px calc(env(safe-area-inset-bottom) + 70px);overflow:hidden}.wrapstory.w1{background:linear-gradient(160deg,#ff2d55,#5e5ce6)}.wrapstory.w2{background:linear-gradient(160deg,#ff9500,#ff2d55)}.wrapstory.w3{background:linear-gradient(160deg,#0a84ff,#30d158)}.wrapstory.w4{background:linear-gradient(160deg,#5e5ce6,#0a84ff)}.wrapstory.w5{background:linear-gradient(160deg,#af52de,#ff9f0a)}.wrapstory.w6{background:linear-gradient(160deg,#1c1c1e,#5e5ce6)}.w-bars{position:absolute;top:calc(env(safe-area-inset-top) + 14px);left:14px;right:14px;display:flex;gap:4px}.w-bars i{flex:1;height:3px;border-radius:2px;background:#ffffff59}.w-bars i.done,.w-bars i.on{background:#fff}.w-close{position:absolute;top:calc(env(safe-area-inset-top) + 26px);right:12px;z-index:4;width:40px;height:40px;color:#fff;font-size:20px}.w-slide{position:relative;z-index:2;pointer-events:none;animation:wIn .45s cubic-bezier(.2,.8,.2,1)}.w-slide p{margin:10px 0;font-size:19px;line-height:1.4;opacity:.95}.w-eye{display:block;font-size:15px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;opacity:.85;margin-bottom:10px}.w-huge{font-size:clamp(46px,14vw,78px);line-height:1;margin:0 0 18px;font-weight:900;letter-spacing:-1px}.w-mid{font-size:clamp(32px,9vw,46px);line-height:1.08;margin:0 0 14px;font-weight:850}.w-big{font-size:24px!important}.w-emoji{font-size:64px!important;margin:6px 0!important;line-height:1}.w-emoji.big{font-size:96px!important}.w-pill{display:inline-block;padding:8px 14px;border-radius:999px;background:#fff3;font-weight:700;font-size:16px!important}.w-card{display:block;width:62%;max-width:260px;margin:8px auto 16px;border-radius:14px;box-shadow:0 12px 40px #0006}.w-share{pointer-events:auto;position:relative;z-index:3;background:#fff;color:#000;font-weight:700}.w-prev,.w-next{position:absolute;top:60px;bottom:0;z-index:1}.w-prev{left:0;width:33%}.w-next{right:0;width:67%}.w-hint{position:absolute;bottom:calc(env(safe-area-inset-bottom) + 22px);left:0;right:0;text-align:center;font-size:13px;opacity:.7}@keyframes wIn{0%{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.w-slide{animation:none}.gh-track i{transition:none}}.wrapstory.w7{background:linear-gradient(160deg,#af52de,#ff9f0a)}.wrapstory.w8{background:linear-gradient(160deg,#1c1c1e,#5e5ce6)}.wrapstory.w5{background:linear-gradient(160deg,#ff9f0a,#ff375f)}.wrapstory.w6{background:linear-gradient(160deg,#30d158,#0a84ff)}.w-list{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:14px}.w-list li{display:flex;gap:16px;align-items:flex-start}.w-n{font-size:30px;font-weight:900;opacity:.7;min-width:26px;line-height:1.1}.w-list li.first .w-n{opacity:1}.w-li{display:grid;gap:4px;min-width:0;flex:1}.w-li b{font-size:22px;line-height:1.15}.w-list li.first .w-li b{font-size:28px}.w-li small{font-size:15px;opacity:.85}.w-bar{display:block;height:8px;border-radius:4px;background:#ffffff40;overflow:hidden}.w-bar i{display:block;height:100%;background:#fff;border-radius:4px}.w-card{width:66%}.me-head{display:flex;align-items:center;gap:14px;margin-top:8px}.me-av{width:58px;height:58px;flex:none;border-radius:50%;display:grid;place-items:center;font-size:26px;font-weight:800;color:#fff;background:linear-gradient(135deg,var(--blue),#5E5CE6)}.me-head .title{font-size:30px;line-height:1.1;overflow:hidden;text-overflow:ellipsis}.me-head .grow{min-width:0}.me-head .subtitle{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.setrow-i{display:flex;align-items:center;gap:12px;width:100%;text-align:left}.set-ic{width:30px;height:30px;flex:none;border-radius:8px;display:grid;place-items:center;color:#fff;font-size:16px}.set-ic svg{width:16px;height:16px;fill:#fff}.setrow-i .grow{min-width:0}.setrow-i .meta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.me-head+.stats{margin-top:18px}.setrow{position:relative;touch-action:pan-y}.setrow.swiping{z-index:2}.setrow.swiping:after{content:"Delete";position:absolute;top:0;bottom:0;left:100%;width:220px;margin-left:6px;border-radius:10px;background:color-mix(in srgb,var(--red) 55%,var(--surface));color:#fff;font-weight:700;display:flex;align-items:center;padding-left:18px;transition:background .15s}.setrow.del-ready:after{background:var(--red)}section.ex{overflow:hidden}.stepbar{position:absolute;top:-42px;z-index:5;display:flex;gap:2px;padding:3px;border-radius:12px;background:var(--ink);box-shadow:0 6px 20px #00000040}.stepbar button{min-width:62px;height:34px;border-radius:9px;color:var(--bg);font-weight:700;font-size:15px;font-variant-numeric:tabular-nums}.stepbar button:active{background:color-mix(in srgb,var(--bg) 22%,transparent)}#toast.has-undo{display:flex;align-items:center;gap:14px;pointer-events:auto;padding:8px 8px 8px 16px}#toast .undo{color:#0a84ff;font-weight:800;padding:6px 10px;border-radius:8px}.wcard{grid-template-columns:minmax(0,1fr) auto}.wtop .pname{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.15}.platebtn{width:34px;height:34px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--blue-soft)}.platebtn svg{width:20px;height:20px;fill:var(--blue)}.btn.danger-text,.btn.plain.danger-text{color:var(--red)}.h3 .opt{margin-left:6px;padding:1px 8px;border-radius:999px;background:var(--surface-2);color:var(--ink-2);font-size:12px;font-weight:600;letter-spacing:0;text-transform:none}.title+.stack,.title+.group{margin-top:14px}.summary .big.long{font-size:44px;line-height:1.05}.lbr .nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lbr{grid-template-columns:22px minmax(0,1fr) 34px 34px 58px 38px;column-gap:7px}.lbh span{overflow:visible;white-space:nowrap}@media (max-width:399px){.lbr{grid-template-columns:22px minmax(0,1fr) 40px 58px 40px}.lbr>:nth-child(4){display:none}}.set-ic svg{width:19px;height:19px;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.set-ic svg .dot{fill:#fff;stroke:none}.set-ic{width:32px;height:32px;border-radius:9px}.tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.tile{display:grid;align-content:start;gap:4px;padding:12px 14px;border-radius:var(--r-card);background:var(--surface);text-align:left;min-width:0;color:inherit}.tile .tl{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--ink-2)}.tile .ti{width:22px;height:22px;border-radius:6px;display:grid;place-items:center;font-size:13px;flex:none}.tile .ti.food{background:#ff9500;color:#fff}.tile .ti.food svg{width:14px;height:14px}.tile .ti.lift{background:var(--surface-2)}.tile .ti.lift svg{width:12px;height:12px;fill:var(--ink)}.tile .tb{font-size:22px;line-height:1.15;font-weight:800;overflow-wrap:anywhere}.tile .tb small{font-size:13px;font-weight:600;color:var(--ink-2)}.tile .ts{font-size:12.5px;color:var(--ink-2);line-height:1.3}.today-sec{margin-top:22px}.stack.quiet .mm-mini,.stack.quiet .send-friend{background:transparent;border:1px solid var(--line)}.wk-actions{margin-top:22px}.wk-actions .finishbig{min-height:54px;font-size:18px;font-weight:700;background:var(--green);color:#fff}.wk-actions .cancelwk{justify-self:center;color:var(--red);font-weight:600;padding:8px 14px}.av{display:grid;place-items:center;border-radius:50%;flex:none;overflow:hidden}.av.pic,.me-av.pic,.lav.pic{background:var(--surface-2,#ddd)!important;padding:0}.pic img{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%}.me-avbtn{position:relative;padding:0;border:0;background:none;border-radius:50%;flex:none;cursor:pointer}.me-avbtn .me-av{width:64px;height:64px}.me-avbtn .cam{position:absolute;right:-2px;bottom:-2px;width:24px;height:24px;border-radius:50%;background:var(--blue);display:grid;place-items:center;border:2px solid var(--bg)}.me-avbtn .cam svg{width:13px;height:13px;fill:none;stroke:#fff;stroke-width:2;stroke-linejoin:round}.item.person .av.pic,.fh-head .av.pic{background:none}.fw .fav{width:34px;height:34px;background:var(--blue-soft);color:var(--blue);font-weight:700;font-size:15px}.lav{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;margin-right:6px;vertical-align:-4px;background:var(--blue-soft);color:var(--blue);font-size:11px;font-weight:700;overflow:hidden}.lb .nm.me .lav{background:var(--blue);color:#fff}.fcode{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:var(--r-card);background:var(--surface)}.fcode .grow{display:grid;gap:2px;min-width:0}.fcode b{font-size:20px;letter-spacing:.02em}.item.person .pillbtn,.item.person .iconbtn{flex:none}.freq{display:flex;align-items:center;gap:12px;margin-top:12px;padding:14px;border-radius:var(--r-card);background:var(--surface)}.freq .av{width:44px;height:44px;background:var(--blue-soft);color:var(--blue);font-weight:700;font-size:18px}.freq .grow{min-width:0;line-height:1.35}.freq-b{display:grid;gap:4px;justify-items:center;flex:none}.fcard{display:flex;align-items:center;gap:12px;padding:12px;border-radius:var(--r-card);background:var(--surface)}.fcard .fbig{width:52px;height:52px;background:var(--blue-soft);color:var(--blue);font-weight:800;font-size:22px}#friend-find{display:flex;gap:8px}#friend-find input{flex:1;min-width:0}[data-l]:before{content:attr(data-l)}.btn.addf{display:flex;align-items:center;justify-content:center;gap:6px}.btn.addf svg{width:18px;height:18px}.item.person .pillbtn+.iconbtn{margin-left:-4px}#ps-sug .group,#ps-res .group{margin-top:2px}.wk-top{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.wk-top .cancel-top{color:var(--red);font-weight:600;font-size:16px;padding:8px 6px}.coach-head .askc{display:inline-flex;align-items:center;gap:5px;align-self:center}.askc svg{width:15px;height:15px}.sf-ic.ai{background:linear-gradient(135deg,#5e5ce6,#af52de)}.sf-ic.ai svg{width:20px;height:20px;color:#fff}.cchat{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}.cb{max-width:86%;padding:10px 14px;border-radius:18px;font-size:16px;line-height:1.4;overflow-wrap:anywhere}.cb.me{align-self:flex-end;background:var(--blue);color:#fff;border-bottom-right-radius:6px;white-space:pre-wrap}.cb.ai{align-self:flex-start;background:var(--surface);color:var(--ink);border-bottom-left-radius:6px}.cb.ai p{margin:0 0 8px}.cb.ai p:last-child{margin-bottom:0}.cb.ai ul,.cb.ai ol{margin:0 0 8px;padding-left:20px}.cb.ai li{margin:3px 0}.cb.ai>:last-child{margin-bottom:0}.cb.typing{display:flex;gap:5px;padding:14px 16px}.cb.typing i{width:7px;height:7px;border-radius:50%;background:var(--ink-3);animation:ctype 1.2s infinite ease-in-out}.cb.typing i:nth-child(2){animation-delay:.15s}.cb.typing i:nth-child(3){animation-delay:.3s}@keyframes ctype{0%,80%,to{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.cb.typing i{animation:none}}.cintro{display:grid;gap:4px;padding:16px;border-radius:var(--r-card);background:var(--surface)}.cerr{margin:0;padding:10px 12px;border-radius:12px;background:var(--red-soft);color:var(--red);font-size:15px}.cchips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.cchips .chip{text-align:left}.toggle.cfood{margin-bottom:10px}.ccompose{position:sticky;bottom:calc(var(--safe-b) + 10px);display:flex;align-items:flex-end;gap:8px;padding:8px;border-radius:24px;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 2px 14px #00000014}.ccompose textarea{flex:1;min-width:0;border:0;background:transparent;resize:none;font:inherit;font-size:17px;line-height:1.35;padding:8px;max-height:140px;color:var(--ink)}.ccompose textarea:focus{outline:none}.ccompose .pillbtn{width:38px;height:38px;min-height:38px;padding:0;border-radius:50%;display:grid;place-items:center;flex:none}.ccompose .pillbtn svg{width:18px;height:18px}.ex-top:has(.optchip){flex-wrap:wrap}.ex-top .exbreak{flex-basis:100%;height:0;order:8}.ex-top .optchip{order:9;margin:0 0 0 2px}.optchip{display:inline-flex;align-items:center;gap:4px;margin:0 14px 8px;padding:5px 11px;border-radius:999px;border:0;background:var(--blue-soft);color:var(--blue);font-size:13px;font-weight:600}.pe-alts{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;padding-top:10px;border-top:.5px solid var(--line)}.pe-alts .pa-l{font-size:13px;color:var(--ink-2);font-weight:600;width:100%}.pe-alts .pa{display:inline-flex;align-items:center;gap:4px;padding:4px 4px 4px 10px;border-radius:999px;background:var(--surface-2);font-size:14px}.pe-alts .pa button{border:0;background:none;color:var(--ink-3);width:24px;height:24px;border-radius:50%;font-size:13px}.pe-altadd{display:block;margin-top:8px}.giflink{display:flex;gap:8px;margin-top:14px}.giflink input{flex:1;min-width:0;height:40px;border:0;border-radius:var(--r-ctl);background:var(--surface-2);padding:0 12px;font-size:16px;color:var(--ink)}.ex-top:has(.benchchip){flex-wrap:wrap}.ex-top .benchchip{order:9;margin:0 6px 0 2px}.benchchip{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:999px;border:0;background:var(--surface-2);color:var(--ink);font-size:13px;font-weight:700}.benchchip svg{width:15px;height:15px}.benchchip.unset{color:var(--ink-2);font-weight:600}.benchpick{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.benchpick .bp{height:60px;border-radius:16px;border:0;background:var(--surface-2);color:var(--ink);font:700 24px var(--num)}.benchpick .bp[aria-pressed=true]{background:var(--blue);color:#fff}.sbench{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:999px;background:var(--surface-2);font-size:12px;font-weight:700;color:var(--ink-2);vertical-align:2px}.podium{margin:14px 0 4px;padding:14px;border-radius:var(--r-card);background:var(--surface);text-align:left}.podium .pod-h{display:flex;align-items:center;gap:8px;justify-content:space-between}.podium.wait .pod-h{justify-content:flex-start}.podium .pod-live{display:grid;gap:2px;margin-top:6px}.podium .pl-row{display:flex;align-items:center;gap:10px;padding:7px 4px;border-top:.5px solid var(--line)}.podium .pl-row:first-child{border-top:0}.podium .pl-row.me b{color:var(--blue)}.podium .pl-n{width:20px;font-weight:700;color:var(--ink-2);text-align:center}.pod-stage{display:flex;align-items:flex-end;justify-content:center;gap:10px;margin-top:12px}.pod-col{flex:1;max-width:110px;display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center;min-width:0}.pod-col b{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pod-col.me b{color:var(--blue)}.pod-col .pod-av{width:44px;height:44px;background:var(--blue-soft);color:var(--blue);font-weight:800;font-size:18px}.pod-block{width:100%;border-radius:12px 12px 4px 4px;display:grid;place-items:center;font-size:26px;background:linear-gradient(180deg,color-mix(in srgb,var(--blue) 22%,var(--surface-2)),var(--surface-2))}.pod-col.p1 .pod-block{height:96px;background:linear-gradient(180deg,#ffd86b,#f5b700)}.pod-col.p2 .pod-block{height:70px;background:linear-gradient(180deg,#e6e8ec,#bfc4cc)}.pod-col.p3 .pod-block{height:54px;background:linear-gradient(180deg,#f0c49b,#c98a55)}

.fh-tot{margin-left:8px;font-size:13px;font-weight:500;color:var(--ink-2);font-variant-numeric:tabular-nums}
.pe-pool{display:flex;align-items:center;gap:12px;margin:0 0 10px;padding:12px 14px;border-radius:14px;background:var(--surface);font-size:14px}
.pe-pool .grow{flex:1;min-width:0}

/* 7.8.1: roomier friends cards */
.nw{white-space:nowrap}
.lbr{grid-template-columns:24px minmax(0,1fr) 40px 58px 46px;column-gap:8px}
.lbh span{font-size:10px;letter-spacing:.2px;white-space:nowrap}
.fw{gap:12px;padding:13px 0;align-items:flex-start}
.fw .hi5{align-self:center}
.fw .name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}
.fw .meta{line-height:1.4;margin-top:3px}
.stack>.feed,.stack>.vs-card{min-width:0}
.fw>.grow{min-width:0;overflow:hidden}
/* 7.9: levels and friend profiles */
[data-act="fprofile"]{cursor:pointer}
.fw-av{flex:none;padding:0;border:0;background:none}
.fh-prof{padding:6px 14px 0}
.lvt0{--lv:#8e8e93}.lvt1{--lv:#30b0c7}.lvt2{--lv:#34c759}.lvt3{--lv:#007aff}.lvt4{--lv:#5856d6}.lvt5{--lv:#af52de}.lvt6{--lv:#ff9500}.lvt7{--lv:#ff3b30}.lvt8{--lv:#c9a000}
.lvb{display:inline-block;margin-left:4px;padding:1px 7px;border-radius:999px;font-size:11px;font-weight:700;color:#fff;background:var(--lv);vertical-align:1px;font-variant-numeric:tabular-nums}
.lvtag{font-weight:700;color:var(--blue)}
.lvcard{display:flex;align-items:center;gap:14px;margin:14px 0 0;padding:14px;border-radius:var(--r-card);background:var(--surface)}
.lvcard .grow{flex:1;min-width:0}
.lvbig{width:58px;height:58px;flex:none;border-radius:50%;display:grid;place-content:center;text-align:center;background:var(--lv);color:#fff;line-height:1}
.lvbig small{font-size:10px;font-weight:700;letter-spacing:.6px;opacity:.85}
.lvbig b{font-size:24px;font-variant-numeric:tabular-nums}
.lvrow{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.lvrow b{font-size:17px}
.lvbar{height:8px;border-radius:99px;background:var(--surface-2);overflow:hidden;margin:7px 0 5px}
.lvbar i{display:block;height:100%;border-radius:99px;background:var(--lv)}
.fp-head{display:flex;align-items:center;gap:14px;margin-top:6px}
.fp-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}
.fp-stats>div{background:var(--surface);border-radius:var(--r-card);padding:12px 6px;text-align:center;min-width:0}
.fp-stats b{display:block;font-size:18px;font-variant-numeric:tabular-nums;white-space:nowrap}
.fp-stats span{font-size:12px;color:var(--ink-2)}
.fp-fun{margin:10px 4px 0;font-size:14px;color:var(--ink-2)}
.fp-week{margin-top:10px}
.fp-card{background:var(--surface);border-radius:var(--r-card);padding:2px 14px}
.fp-row{display:flex;align-items:center;gap:12px;padding:11px 0;border-top:.5px solid var(--line)}
.fp-row:first-child{border-top:0}
.fp-row .grow{flex:1;min-width:0}
.fp-row>b{font-variant-numeric:tabular-nums;white-space:nowrap}
.fp-sub{display:block;margin-top:2px;line-height:1.4}
.sum-lvl{display:flex;gap:12px;align-items:center;margin:12px 0 0;padding:12px 14px;border-radius:var(--r-card);background:var(--surface-2);text-align:left}
.sum-lvl .si{font-size:24px}
.sum-lvl b{display:block}
.sum-lvl.up{background:color-mix(in srgb,var(--blue) 14%,transparent)}
.fp-stats{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.5fr)}
.fp-stats b{font-size:17px}
/* 8.0: bench icon, nicer levels, sign-up screens */
.benchbtn{position:relative}
.benchbtn svg{fill:none;stroke:var(--blue);stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}
.benchbtn:not(.set){background:var(--surface-2)}
.benchbtn:not(.set) svg{stroke:var(--ink-2)}
.bb{position:absolute;top:-4px;right:-4px;min-width:17px;height:17px;padding:0 4px;box-sizing:border-box;border-radius:99px;background:var(--blue);color:#fff;font:700 10.5px/17px var(--num);font-style:normal;text-align:center}
.benchpick{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.benchpick .bp{height:52px;border-radius:14px;font-size:20px}
.lvcard{display:flex;align-items:center;gap:16px;margin:14px 0 0;padding:16px;border-radius:20px;background:var(--surface);position:relative;overflow:hidden}
@supports (background:color-mix(in srgb,red 10%,white)){.lvcard{background:linear-gradient(135deg,color-mix(in srgb,var(--lv) 16%,var(--surface)),var(--surface) 72%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--lv) 22%,transparent)}}
.lvring{position:relative;width:88px;height:88px;flex:none}
.lvring svg{width:100%;height:100%;transform:rotate(-90deg)}
.lvring .trk{fill:none;stroke:var(--surface-2);stroke-width:7}
.lvring .prg{fill:none;stroke:var(--lv);stroke-width:7;stroke-linecap:round}
.lvnum{position:absolute;inset:0;display:grid;place-content:center;text-align:center;line-height:1}
.lvnum small{font-size:9px;font-weight:700;letter-spacing:.8px;color:var(--ink-2)}
.lvnum b{font-size:30px;font-variant-numeric:tabular-nums;color:var(--lv)}
.lvtitle{display:flex;align-items:center;gap:7px}
.lvtitle i{font-style:normal;font-size:19px}
.lvtitle b{font-size:19px}
.lvxp{font-size:13px;color:var(--ink-2)}
.lvxp b{color:var(--ink);font-variant-numeric:tabular-nums}
.lvbar{height:8px;border-radius:99px;background:var(--surface-2);overflow:hidden;margin:7px 0 5px}
.lvbar i{display:block;height:100%;border-radius:99px;background:var(--lv)}
.lvnext{display:block;margin-top:2px}
.lvsrc{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}
.lvsrc>div{background:var(--surface);border-radius:14px;padding:10px 6px;text-align:center;min-width:0}
.lvsrc span{display:block;font-size:11px;color:var(--ink-2)}
.lvsrc b{display:block;font-size:15px;font-variant-numeric:tabular-nums;white-space:nowrap}
.lvsrc em{font-style:normal;font-size:11px;font-weight:700;color:var(--green)}
.lvladder{display:flex;gap:8px;overflow-x:auto;margin:10px -16px 0;padding:2px 16px 6px;scroll-snap-type:x proximity;scrollbar-width:none}
.lvladder::-webkit-scrollbar{display:none}
.lvstep{flex:none;width:80px;padding:10px 6px;border-radius:14px;background:var(--surface);text-align:center;opacity:.45;scroll-snap-align:start}
.lvstep.got{opacity:1}
.lvstep.now{box-shadow:inset 0 0 0 2px var(--lv)}
.lvstep i{display:block;font-style:normal;font-size:22px}
.lvstep b{display:block;font-size:12px;margin-top:2px}
.lvstep span{font-size:11px;color:var(--ink-2)}
.lvbanner{margin:14px 0 0;padding:12px 14px;border-radius:16px;background:linear-gradient(90deg,var(--blue),#AF52DE);color:#fff;font-weight:700;animation:lvpop .6s cubic-bezier(.2,1.4,.4,1)}
.lvup .prg{animation:lvfill 1.1s ease-out}
.lvup .lvnum b{animation:lvpop .8s .3s both}
@keyframes lvfill{from{stroke-dashoffset:var(--C)}}
@keyframes lvpop{0%{transform:scale(.7);opacity:0}60%{transform:scale(1.08)}100%{transform:scale(1);opacity:1}}
@media (prefers-reduced-motion:reduce){.lvup .prg,.lvup .lvnum b,.lvbanner{animation:none}}
.authcard{display:grid;gap:12px;text-align:center;margin-top:18px}
.authcard h2{margin:0}
.authcard p{margin:0}
.authbig{font-size:46px;line-height:1}
.namehint{display:block;font-size:13px;min-height:16px;margin-top:5px;color:var(--ink-2)}
.namehint.ok{color:var(--green)}
.namehint.bad{color:var(--red)}
.lvladder{scroll-padding:0 16px}
/* 8.1: Today, redesigned */
.td-head{display:flex;align-items:flex-end;gap:12px;margin:10px 0 14px}
.td-hd{flex:1;min-width:0}
.td-head .eyebrow-date{margin:0 0 4px}
.td-title{margin:0;font:700 28px/1.15 var(--display);letter-spacing:.2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.td-nm{color:var(--blue)}
.td-lv{position:relative;width:48px;height:48px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--surface)}
.td-lv svg{position:absolute;inset:3px;width:calc(100% - 6px);height:calc(100% - 6px);transform:rotate(-90deg)}
.td-lv b{position:relative;font:800 16px var(--num);color:var(--lv)}
.td-lv .trk,.wk-ring .trk{fill:none;stroke:var(--surface-2);stroke-width:4}
.td-lv .prg,.wk-ring .prg{fill:none;stroke:var(--lv,var(--blue));stroke-width:4;stroke-linecap:round}
.hero{position:relative;overflow:hidden;gap:8px;margin-top:0;padding:20px 18px 14px;border-radius:24px;background:linear-gradient(135deg,#0A84FF 0%,#5E5CE6 58%,#AF52DE 100%)}
.hero>:not(.hero-deco){position:relative}
.hero-deco{position:absolute;right:-46px;top:-56px;width:210px;height:210px;border-radius:50%;background:radial-gradient(circle,#ffffff38,#ffffff00 68%);pointer-events:none}
.hero>b{font:700 30px/1.1 var(--display);letter-spacing:.2px}
.hero-meta{display:flex;flex-wrap:wrap;gap:6px}
.hchip{padding:4px 10px;border-radius:999px;background:#ffffff26;font-size:13px;font-weight:600}
.hero .hero-ex{display:flex;flex-wrap:wrap;gap:6px;white-space:normal;overflow:visible;opacity:1}
.hero-ex i{font-style:normal;font-size:13px;padding:3px 9px;border-radius:8px;background:#00000026;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hero-ex i.more{background:#ffffff26}
.hero-chipbtn{padding:9px 14px;border-radius:999px;background:#ffffff2e;color:#fff;font-weight:700;font-size:14px}
.hero .hero-alts{margin-top:2px;column-gap:10px;row-gap:8px}
.hero.live{align-items:center;background:linear-gradient(135deg,#30D158,#009B72)}
.hero.live>b,.hero.live .grow>b{font:700 26px/1.15 var(--display)}
.hero-clock{display:flex;align-items:center;gap:10px}
.hero-clock i{width:40px;height:40px;border-radius:50%;background:#fff;color:#009B72;display:grid;place-items:center}
.hero-clock i svg{width:18px;height:18px;fill:currentColor}
.pulse-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#fff;margin-right:7px;vertical-align:1px;animation:pulse 1.8s infinite}
.wkcard{margin-top:12px;padding:16px;border-radius:22px;background:var(--surface);display:grid;gap:14px}
.wk-top{display:flex;align-items:center;gap:14px}
.wk-top .grow{flex:1;min-width:0}
.wk-ring{position:relative;width:58px;height:58px;flex:none;display:grid;place-items:center}
.wk-ring svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.wk-ring .prg{stroke:var(--green)}
.wk-ring b{position:relative;font:800 21px var(--num)}
.wk-ring.done b{color:var(--green)}
.wk-h{display:block;font-size:17px}
.wk-s{display:block;font-size:13px;color:var(--ink-2);margin-top:2px}
.wk-streak{flex:none;padding:6px 10px;border-radius:999px;background:#ff95001f;color:var(--orange);font-weight:700;font-size:13px;white-space:nowrap}
.wkcard .week{background:none;padding:0;gap:4px;border-radius:0}
.wk-lvl{display:grid;gap:8px;width:100%;padding:12px 14px;border-radius:16px;background:var(--surface-2);text-align:left}
.wl-row{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:14px;min-width:0}
.wl-row b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wl-row span{color:var(--ink-2);font-size:12.5px;white-space:nowrap}
.wl-bar{height:6px;border-radius:99px;background:color-mix(in srgb,var(--ink) 10%,transparent);overflow:hidden}
.wl-bar i{display:block;height:100%;border-radius:99px;background:var(--lv)}
.tiles{gap:12px;margin-top:12px}
.tile{padding:14px 14px 13px;border-radius:20px;gap:6px}
.tile .tb{font-size:26px;font-weight:800;letter-spacing:-.3px}
.tile .tb small{font-size:14px}
.tbar{display:block;height:6px;border-radius:99px;background:var(--surface-2);overflow:hidden;margin-top:4px}
.tbar i{display:block;height:100%;border-radius:99px;background:var(--orange)}
.today-sec{margin-top:26px}
.td-title{white-space:normal;font-size:26px;line-height:1.15;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.wkcard{grid-template-columns:minmax(0,1fr)}
.wkcard>*{min-width:0}
.wk-lvl{min-width:0}
.wk-h{overflow-wrap:anywhere}
.wkcard{white-space:normal}
.wk-s{white-space:normal}
.tiles .tile{justify-items:stretch;text-align:left}
.tbar{width:100%}
.hero.live .eyebrow{white-space:nowrap}
.feed-head{display:flex;align-items:center;gap:8px;width:100%;padding:0 0 10px;text-align:left;color:var(--ink)}
.feed-head b{flex:1;font-size:17px}
.feed-n{min-width:22px;height:22px;padding:0 6px;box-sizing:border-box;border-radius:11px;background:var(--blue-soft);color:var(--blue);font:700 13px/22px var(--num);text-align:center}
.feed-head .chev{transition:transform .2s}
.feed.open .feed-head .chev{transform:rotate(90deg)}
.feed-hint{margin:0 0 6px}
.item.person.tap{cursor:pointer}

/* Friends hub: uses existing GymTrack palette and buttons. */
.friends-entry{width:100%;display:flex;align-items:center;gap:12px;text-align:left;border:1px solid var(--border,rgba(128,128,128,.16));border-radius:16px;padding:15px;background:var(--card,var(--surface,#fff));color:inherit;cursor:pointer}.friends-entry .grow{display:flex;flex-direction:column;gap:3px}.friends-entry-icon{font-size:24px;display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:rgba(100,100,100,.1)}.friends-shortcut{margin:14px 0}.friends-page-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.friends-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}.friends-overview>div{display:flex;flex-direction:column;align-items:center;gap:4px;background:var(--card,rgba(128,128,128,.08));border-radius:14px;padding:14px 6px}.friends-overview strong{font-size:25px}.friends-overview span{font-size:12px;opacity:.65}.friends-empty{border-radius:14px;padding:20px 16px;background:rgba(128,128,128,.08);line-height:1.5}.friends-page-head + .friends-overview + .btn{margin-bottom:20px}
