.ds-card{padding:var(--pad-card);border-radius:var(--radius-card);box-shadow:var(--elev-flat)}.ds-card-head{padding:var(--pad-card-sm);font-size:var(--fz-body);font-weight:var(--fw-strong)}.ds-row{padding:var(--pad-cell);gap:var(--gap-row)}.ds-list{gap:var(--gap-row)}.ds-grid{gap:var(--gap-grid)}.ds-actions{gap:var(--gap-tight)}.ds-empty{padding:var(--pad-empty);color:var(--dim);font-size:var(--fz-small);font-weight:var(--fw-regular)}.ds-block{padding:var(--pad-card);border-radius:var(--radius-card)}.ds-cell{padding:var(--pad-cell)}.ds-item{padding:var(--pad-card);gap:var(--gap-inline);border-radius:var(--radius-card)}.ds-panel{padding:var(--pad-card-lg);border-radius:var(--radius-panel);box-shadow:var(--elev-flat)}.ds-note{padding:var(--pad-card);border-radius:var(--radius-card);font-size:var(--fz-small);font-weight:var(--fw-regular)}.ds-foot{padding:var(--pad-card)}.ds-bar{border-radius:var(--radius-pill)}.ds-table{padding:var(--pad-cell);border-radius:var(--radius-card)}.ds-tabs{gap:var(--gap-tight)}.ds-menu{padding:var(--pad-control);border-radius:var(--radius-card);box-shadow:var(--elev-raised)}.ds-title{font-size:var(--fz-body);font-weight:var(--fw-strong)}.ds-chip{padding:var(--pad-control);border-radius:var(--radius-control);font-size:var(--fz-caption);font-weight:var(--fw-medium)}.ds-badge{padding:var(--pad-control);border-radius:var(--radius-pill);font-size:var(--fz-caption);font-weight:var(--fw-medium)}:root{--bg:#e9eee8;--canvas:#f4f6f1;--surface:#fcfdf9;--surface-2:#f0f3ed;--line:#dde4da;--line-2:#c8d2c6;--ink:#17231d;--muted:#5d6a62;--dim:#8b978f;--nav:#12271f;--nav-2:#193329;--brand:#d7f58a;--brand-ink:#223413;--green:#2c6b4f;--green-soft:#e1f0e7;--blue:#4d74c9;--blue-soft:#e6ecf8;--amber:#a76a24;--amber-soft:#f7ebd9;--red:#b84d46;--red-soft:#f8e3e0;--violet:#7666c9;--violet-soft:#ece9fa;--shadow:0 1px 2px #14221a0a,0 14px 38px -28px #0e231959;--shadow-lg:0 35px 90px -38px #081c1380;--r:20px;--r-sm:13px;--font:"Inter","SF Pro Text","SF Pro Display",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--mono:"SFMono-Regular","SF Mono",ui-monospace,Menlo,monospace}:root[data-theme=dark]{--bg:#08130e;--canvas:#0d1913;--surface:#122019;--surface-2:#182920;--line:#263b30;--line-2:#3a5145;--ink:#f1f6f2;--muted:#a5b4aa;--dim:#718278;--nav:#091711;--nav-2:#152d23;--brand:#d7f58a;--brand-ink:#1b260d;--green:#7bc39a;--green-soft:#193529;--blue:#88a7ed;--blue-soft:#1c2c4a;--amber:#e0ab69;--amber-soft:#3a2c1b;--red:#ed827b;--red-soft:#3c2220;--violet:#ad9ff0;--violet-soft:#2c274b;--shadow:0 1px 2px #00000040,0 16px 38px -25px #000000b8;--shadow-lg:0 38px 90px -35px #000000c7}*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{background:radial-gradient(circle at 8% 0%,color-mix(in srgb,var(--brand) 15%,transparent),transparent 28rem),var(--bg);min-width:320px;color:var(--ink);font:var(--fz-body)/1.45 var(--font);letter-spacing:var(--ls-text);-webkit-font-smoothing:antialiased;margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}::selection{background:var(--brand);color:var(--brand-ink)}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{letter-spacing:var(--ls-tight);line-height:1.16}h1{font-size:var(--fz-page)}h2{font-size:var(--fz-display)}h3{font-size:var(--fz-section)}h4{font-size:var(--fz-body)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid color-mix(in srgb,var(--green) 28%,transparent);outline-offset:2px}.app{width:min(1540px,100%);min-height:calc(100vh - 28px);margin:var(--sp-7) auto;background:var(--canvas);border:1px solid color-mix(in srgb,var(--line) 80%,transparent);border-radius:var(--rad-2xl);box-shadow:var(--elev-overlay);grid-template-columns:266px minmax(0,1fr);display:grid;overflow:hidden}.side{background:var(--nav);color:var(--nav-ink);padding:var(--sp-8) var(--sp-7) var(--sp-7);flex-direction:column;display:flex;position:relative;overflow:hidden}.side:after{content:"";border-radius:var(--rad-circle);pointer-events:none;background:#d7f58a17;width:280px;height:280px;position:absolute;top:-150px;right:-170px}.brand{align-items:center;gap:var(--sp-6);padding:2px 8px 24px;display:flex;position:relative}.brand-mark{border-radius:var(--rad-md);background:var(--brand);width:39px;height:39px;color:var(--brand-ink);font-weight:var(--fw-heavy);font-size:var(--fz-section);place-items:center;display:grid;box-shadow:0 12px 28px -16px #d7f58abf}.brand b{font-size:calc(18px * var(--fs));letter-spacing:var(--ls-tight);display:block}.brand small{margin-top:var(--sp-1);color:var(--nav-dim);text-transform:uppercase;letter-spacing:.12em;font-size:var(--fz-caption);display:block}.nav-group{margin-top:var(--sp-4)}.nav-label{padding:var(--sp-6) var(--sp-5) var(--sp-4);color:var(--nav-dim);text-transform:uppercase;letter-spacing:.13em;font-weight:var(--fw-strong);font-size:var(--fz-caption)}.nav{gap:var(--sp-2);display:grid}.nav button{align-items:center;gap:var(--sp-5);border-radius:var(--rad-md);width:100%;height:40px;padding:0 var(--sp-5);color:var(--nav-muted);text-align:left;font-size:var(--fz-body);font-weight:var(--fw-medium);transition:var(--dur-fast) ease;background:0 0;border:0;display:flex;position:relative}.nav button:before{content:"";border-radius:0 var(--rad-2xs) var(--rad-2xs) 0;background:0 0;width:3px;height:18px;position:absolute;left:-14px}.nav button:hover{background:var(--nav-hover);color:#fff;transform:translate(2px)}.nav button.on{background:var(--nav-active);color:#fff;box-shadow:inset 0 0 0 1px #ffffff0d}.nav button.on:before{background:var(--brand)}.nav-ic{border-radius:var(--rad-sm);background:var(--nav-well);width:24px;height:24px;font:var(--fw-strong) var(--fz-label) var(--mono);color:var(--nav-dim);place-items:center;display:grid}.nav button.on .nav-ic{background:var(--nav-glow);color:var(--brand)}.nav-badge{min-width:19px;height:19px;padding:0 var(--sp-2);border-radius:var(--rad-xl);color:#ffaca6;font:var(--fw-strong) var(--fz-label) var(--mono);background:#ee827a24;place-items:center;margin-left:auto;display:grid}.side-client-search{padding:0 var(--sp-2)}.side-client-search-box{align-items:center;gap:var(--sp-4);height:40px;padding:0 var(--sp-5);border:1px solid var(--nav-line);border-radius:var(--rad-md);background:var(--nav-hover);color:var(--nav-dim);transition:var(--dur-fast) ease;display:flex}.side-client-search-box:focus-within{background:#ffffff13;border-color:#d7f58a73;box-shadow:0 0 0 3px #d7f58a14}.side-client-search-box>span{font-size:calc(17px * var(--fs));line-height:1}.side-client-search-box input{width:100%;min-width:0;color:var(--nav-ink);font-size:var(--fz-small);background:0 0;border:0;outline:0}.side-client-search-box input::placeholder{color:var(--nav-dim)}.side-client-search-box kbd{min-width:24px;padding:var(--sp-1) var(--sp-2);border-radius:var(--rad-xs);color:var(--nav-dim);text-align:center;font:var(--fz-micro) var(--mono);background:#ffffff0a;border:1px solid #ffffff14}.side-client-results{gap:var(--sp-2);margin-top:var(--sp-3);display:grid}.side-client-result{align-items:center;gap:var(--sp-4);width:100%;padding:var(--sp-4) var(--sp-4);border-radius:var(--rad-md);color:var(--nav-muted);text-align:left;transition:var(--dur-fast) ease;background:0 0;border:0;grid-template-columns:30px minmax(0,1fr) auto;display:grid}.side-client-result:hover,.side-client-result.is-current{color:#fff;background:#fff1}.side-client-result .avatar{width:30px;height:30px;font-size:var(--fz-micro)}.side-client-result b{text-overflow:ellipsis;white-space:nowrap;font-size:var(--fz-small);display:block;overflow:hidden}.side-client-result small{text-overflow:ellipsis;white-space:nowrap;color:var(--nav-dim);font-size:var(--fz-micro);display:block;overflow:hidden}.side-client-result>i{border-radius:var(--rad-circle);background:var(--nav-dim);width:7px;height:7px}.side-client-result>i.active{background:var(--brand)}.side-client-result>i.paused{background:#e0ab69}.side-client-empty{padding:var(--sp-5) var(--sp-4);color:var(--nav-dim);font-size:var(--fz-caption);line-height:1.45}.side-clients-link{width:100%;height:34px;margin-top:var(--sp-2);padding:0 var(--sp-5);border-radius:var(--rad-sm);color:var(--nav-dim);font-size:var(--fz-label);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;display:flex}.side-clients-link:hover{background:var(--nav-hover);color:#fff}.side-clients-link b{color:var(--brand);font:var(--fw-semibold) var(--fz-caption) var(--mono)}.avatar{border-radius:var(--rad-circle);background:var(--violet);color:#fff;width:34px;height:34px;font-weight:var(--fw-bold);font-size:var(--fz-small);flex:none;place-items:center;display:grid}.chev{color:var(--nav-dim);margin-left:auto}.profile{align-items:center;gap:var(--sp-5);padding:var(--sp-7) var(--sp-4) var(--sp-2);border-top:1px solid #ffffff14;margin-top:auto;display:flex}.profile .avatar{background:#3c584b;width:29px;height:29px}.profile b{font-size:var(--fz-compact);display:block}.profile small{color:var(--nav-dim);font-size:var(--fz-label);display:block}.profile button{color:var(--nav-dim);background:0 0;border:0;margin-left:auto}.main{min-width:0}.topbar{z-index:10;align-items:center;gap:var(--sp-7);min-height:62px;padding:var(--sp-5) var(--sp-9);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--canvas) 87%,transparent);-webkit-backdrop-filter:blur(18px)saturate(145%);backdrop-filter:blur(18px)saturate(145%);display:flex;position:sticky;top:0}.topbar h1{display:none}.crumb{color:var(--dim);font-size:var(--fz-small);margin-bottom:0}.crumb b{color:var(--ink)}.spacer{flex:1}.top-actions{gap:var(--sp-4);align-items:center;display:flex}.search{border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);width:220px;height:38px;box-shadow:var(--elev-flat);align-items:center;gap:var(--sp-4);padding:0 var(--sp-5) 0 var(--sp-6);color:var(--dim);text-align:left;font-size:var(--fz-compact);display:flex}.search kbd{border:1px solid var(--line);border-radius:var(--rad-xs);background:var(--surface-2);padding:var(--sp-1) var(--sp-3);font:var(--fz-caption) var(--mono);margin-left:auto}.icon-btn,.btn{border:1px solid var(--line);background:var(--surface);border-radius:var(--rad-md);min-height:38px;transition:background var(--dur-fast),border-color var(--dur-fast),box-shadow var(--dur-fast),transform var(--dur-fast)}.icon-btn{place-items:center;width:38px;display:grid}.btn{padding:var(--sp-4) var(--sp-7);font-weight:var(--fw-semibold);font-size:var(--fz-compact)}.btn:hover,.icon-btn:hover{border-color:var(--line-2);box-shadow:var(--elev-flat)}.btn:active,.icon-btn:active{transform:translateY(1px)scale(.985)}.btn.primary{border-color:var(--green);background:var(--green);color:#fff}.btn.primary:hover{background:color-mix(in srgb,var(--green) 86%,#000)}.btn.lime{border-color:var(--brand);background:var(--brand);color:var(--brand-ink)}.btn.ghost{background:0 0}.content{padding:28px 29px 70px}.view{animation:viewIn var(--dur-normal) cubic-bezier(.2,.75,.25,1)}@keyframes viewIn{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}.page-head{justify-content:space-between;align-items:flex-end;gap:var(--sp-8);margin-bottom:var(--sp-8);display:flex}.page-head .eyebrow{margin-bottom:var(--sp-2)}.page-head p{margin-top:var(--sp-3);max-width:680px;color:var(--muted);font-size:var(--fz-body)}.page-actions{gap:var(--sp-4);flex-wrap:wrap;align-items:center;display:flex}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:var(--fz-label);font-weight:var(--fw-bold);color:var(--dim)}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.dim{color:var(--dim)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--elev-flat)}.card.pad{padding:var(--pad-card)}.card-title{justify-content:space-between;align-items:flex-start;gap:var(--sp-6);margin-bottom:var(--sp-7);display:flex}.card-title p{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-small)}.grid-2{gap:var(--sp-7);grid-template-columns:1fr 1fr;display:grid}.grid-3{gap:var(--sp-6);grid-template-columns:repeat(3,1fr);display:grid}.grid-main{gap:var(--sp-7);grid-template-columns:minmax(0,1.45fr) minmax(300px,.65fr);display:grid}.pill{align-items:center;gap:var(--sp-2);border-radius:var(--rad-pill);min-height:23px;padding:var(--sp-2) var(--sp-5);font-size:var(--fz-label);font-weight:var(--fw-strong);white-space:nowrap;display:inline-flex}.pill.green{background:var(--green-soft);color:var(--green)}.pill.red{background:var(--red-soft);color:var(--red)}.pill.amber{background:var(--amber-soft);color:var(--amber)}.pill.blue{background:var(--blue-soft);color:var(--blue)}.pill.neutral{background:var(--surface-2);color:var(--muted)}.dot{border-radius:var(--rad-circle);width:7px;height:7px;display:inline-block}.divider{background:var(--line);height:1px;margin:var(--sp-7) 0}.between{justify-content:space-between;align-items:center;gap:var(--sp-6);display:flex}.stack{gap:var(--sp-5);display:grid}.stat-grid{gap:var(--sp-6);margin-bottom:var(--sp-7);grid-template-columns:repeat(4,1fr);display:grid}.stat{min-height:110px;padding:var(--sp-7)}.stat .value{margin:var(--sp-6) 0 var(--sp-2);font:var(--fw-semibold) calc(28px * var(--fs))/1 var(--mono);letter-spacing:var(--ls-tight)}.stat small{color:var(--dim);font-size:var(--fz-small)}.trend{font:var(--fw-semibold) var(--fz-small) var(--mono)}.up{color:var(--green)}.down{color:var(--red)}.focus-hero{min-height:245px;color:var(--nav-ink);box-shadow:var(--elev-overlay);background:#142c22;border:0;padding:25px;position:relative;overflow:hidden}.focus-hero:after{content:"";border-radius:var(--rad-circle);background:radial-gradient(circle,#d7f58a33,#0000 68%);width:300px;height:300px;position:absolute;top:-125px;right:-75px}.focus-hero .eyebrow{color:var(--nav-dim)}.focus-hero h2{max-width:540px;margin:var(--sp-5) 0 var(--sp-5);color:#fff;font-size:calc(28px * var(--fs))}.focus-hero>p{max-width:600px;color:var(--nav-muted);font-size:var(--fz-body);line-height:1.6}.focus-bottom{justify-content:space-between;align-items:center;gap:var(--sp-7);z-index:1;display:flex;position:absolute;bottom:22px;left:25px;right:25px}.facepile{align-items:center;display:flex}.facepile .avatar{width:30px;height:30px;font-size:var(--fz-caption);border:2px solid #142c22;margin-left:-7px}.facepile .avatar:first-child{margin-left:0}.facepile small{margin-left:var(--sp-5);color:var(--nav-dim)}.readiness{min-height:245px;padding:var(--sp-8);flex-direction:column;justify-content:space-between;display:flex}.readiness-score{justify-content:space-between;align-items:flex-start;display:flex}.score-ring{border-radius:var(--rad-circle);background:conic-gradient(var(--green) 0 82%,var(--surface-2) 82%);place-items:center;width:70px;height:70px;display:grid;position:relative}.score-ring:before{content:"";border-radius:var(--rad-circle);background:var(--surface);position:absolute;inset:7px}.score-ring b{font:var(--fw-strong) var(--fz-section) var(--mono);position:relative}.readiness h3{margin-top:var(--sp-5);font-size:var(--fz-page)}.readiness p{margin-top:var(--sp-2);color:var(--muted);font-size:var(--fz-compact);line-height:1.55}.mini-metrics{gap:var(--sp-4);padding-top:var(--sp-7);border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.mini-metrics b{font:var(--fw-semibold) var(--fz-body) var(--mono);display:block}.mini-metrics span{font-size:var(--fz-label);color:var(--dim)}.signal-list{gap:var(--gap-row);display:grid}.signal{align-items:center;gap:var(--sp-6);padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-lg);background:var(--surface);transition:var(--dur-fast);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.signal:hover{border-color:var(--line-2);transform:translateY(-1px)}.signal-icon{border-radius:var(--rad-md);width:35px;height:35px;font:var(--fw-bold) var(--fz-label) var(--mono);place-items:center;display:grid}.signal.red .signal-icon{background:var(--red-soft);color:var(--red)}.signal.amber .signal-icon{background:var(--amber-soft);color:var(--amber)}.signal h4{font-size:var(--fz-body)}.signal p{margin-top:var(--sp-2);color:var(--muted);font-size:var(--fz-small)}.signal-actions{gap:var(--sp-3);display:flex}.signal-actions button{border-radius:var(--rad-sm);height:30px;padding:0 var(--sp-5);border:1px solid var(--line);background:var(--surface);font-size:var(--fz-label);font-weight:var(--fw-semibold)}.signal-actions .resolve{background:var(--green);border-color:var(--green);color:#fff}.timeline{display:grid}.timeline-item{padding:0 0 var(--sp-7) var(--sp-8);position:relative}.timeline-item:before{content:"";border-radius:var(--rad-circle);background:var(--green);width:7px;height:7px;box-shadow:0 0 0 4px var(--green-soft);position:absolute;top:4px;left:3px}.timeline-item:after{content:"";background:var(--line);width:1px;position:absolute;top:15px;bottom:2px;left:6px}.timeline-item:last-child:after{display:none}.timeline-item time{font:var(--fw-medium) var(--fz-label) var(--mono);color:var(--dim)}.timeline-item p{margin-top:var(--sp-2);font-size:var(--fz-compact);color:var(--muted)}.client-hero{align-items:center;gap:var(--sp-7);margin-bottom:var(--sp-7);display:flex}.client-hero .avatar{width:50px;height:50px;font-size:var(--fz-body);box-shadow:0 0 0 5px var(--surface)}.client-hero h2{font-size:calc(23px * var(--fs))}.client-meta{gap:var(--sp-4);color:var(--dim);font-size:var(--fz-small);flex-wrap:wrap;display:flex}.client-meta span+span:before{content:"·";margin-right:var(--sp-4)}.client-hero .page-actions{margin-left:auto}.next-action{padding:var(--sp-8);background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--green-soft) 55%,var(--surface)));border-color:color-mix(in srgb,var(--green) 25%,var(--line))}.next-action h3{margin:var(--sp-4) 0 var(--sp-2);font-size:var(--fz-page)}.next-action p{color:var(--muted);font-size:var(--fz-compact);max-width:650px}.next-action .between{margin-top:var(--sp-7)}.client-page-nav{gap:var(--sp-2);padding-bottom:var(--sp-5);border-bottom:1px solid var(--line);scrollbar-width:none;margin:-4px 0 18px;display:flex;overflow-x:auto}.client-page-nav::-webkit-scrollbar{display:none}.client-page-nav button{border-radius:var(--rad-sm);height:32px;padding:0 var(--sp-6);color:var(--muted);font-size:var(--fz-label);font-weight:var(--fw-semibold);white-space:nowrap;background:0 0;border:0;flex:none}.client-page-nav button:hover{background:var(--surface-2);color:var(--ink)}.client-page-nav button.on{background:var(--green-soft);color:var(--green)}.client-overview-grid{gap:var(--gap-grid);grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr);display:grid}.overview-metrics{gap:var(--sp-6);grid-template-columns:repeat(3,1fr);display:grid}.overview-metric{min-height:176px;padding:var(--sp-7);overflow:hidden}.overview-metric.alert{border-color:color-mix(in srgb,var(--red) 55%,var(--line));background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--red-soft) 42%,var(--surface)))}.overview-metric-head{align-items:center;gap:var(--sp-4);color:var(--muted);display:flex}.overview-metric-icon{border-radius:var(--rad-sm);background:var(--green-soft);width:25px;height:25px;color:var(--green);font:var(--fw-bold) var(--fz-micro) var(--mono);place-items:center;display:grid}.overview-metric-head h3{font-size:var(--fz-compact);letter-spacing:var(--ls-snug)}.overview-metric-head .pill{margin-left:auto}.overview-metric-value{align-items:baseline;gap:var(--sp-3);margin-top:var(--sp-5);display:flex}.overview-metric-value b{font:var(--fw-semibold) calc(29px * var(--fs))/1 var(--mono);letter-spacing:-.065em}.overview-metric-value span{color:var(--dim);font-size:var(--fz-caption)}.overview-metric-sub{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-caption)}.mini-spark{width:100%;height:47px;margin:var(--sp-5) 0 var(--sp-4);display:block;overflow:visible}.mini-spark-area{opacity:.08}.mini-spark-line{fill:none;stroke-width:1.35px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.mini-spark-dot{stroke-width:1.1px;vector-effect:non-scaling-stroke}.overview-metric-foot{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);color:var(--dim);font-size:var(--fz-caption);display:flex}.overview-metric-foot b{font:var(--fw-semibold) var(--fz-caption) var(--mono);color:var(--green)}.overview-metric-foot b.warn{color:var(--amber)}.overview-metric-foot b.risk{color:var(--red)}.overview-events{min-height:364px;padding:var(--sp-8)}.overview-events .card-title{margin-bottom:var(--sp-5)}.event-feed{display:grid;position:relative}.event-feed:before{content:"";background:var(--line-2);width:1px;position:absolute;top:8px;bottom:10px;left:6px}.event-entry{padding:0 0 15px 24px;position:relative}.event-entry:last-child{padding-bottom:0}.event-entry:before{content:"";border:2px solid var(--green);border-radius:var(--rad-circle);background:var(--surface);width:9px;height:9px;position:absolute;top:4px;left:1px}.event-entry.red:before{border-color:var(--red)}.event-entry.amber:before{border-color:var(--amber)}.event-entry time{color:var(--dim);font:var(--fz-caption) var(--mono);display:block}.event-entry p{margin-top:var(--sp-2);color:var(--muted);font-size:var(--fz-small);line-height:1.45}.event-entry p b{color:var(--ink)}.overview-lower{gap:var(--sp-7);margin-top:var(--sp-7);grid-template-columns:1fr 1fr;display:grid}.overview-insights,.next-checkin{padding:var(--sp-8)}.insight-row{gap:var(--gap-row);padding:var(--sp-6) 0;border-top:1px solid var(--line);grid-template-columns:28px minmax(0,1fr);display:grid}.insight-row:first-of-type{border-top:0}.insight-row span{border-radius:var(--rad-sm);background:var(--green-soft);width:27px;height:27px;color:var(--green);font:var(--fw-bold) var(--fz-micro) var(--mono);place-items:center;display:grid}.insight-row p{color:var(--muted);font-size:var(--fz-small);line-height:1.55}.insight-row b{color:var(--ink)}.checkin-prompt{padding:var(--sp-6) var(--sp-7);border:1px solid color-mix(in srgb,var(--green) 35%,var(--line));border-radius:var(--rad-md);background:var(--green-soft);color:var(--green);font-size:var(--fz-small);line-height:1.5}.checkin-facts{margin:var(--sp-5) 0 var(--sp-7);display:grid}.checkin-fact{justify-content:space-between;gap:var(--sp-6);padding:var(--sp-5) 0;border-top:1px solid var(--line);color:var(--muted);font-size:var(--fz-small);display:flex}.checkin-fact b{color:var(--ink)}.body-main-grid{gap:var(--gap-grid);grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);align-items:stretch;display:grid}.body-chart-card{min-height:500px;padding:var(--pad-card)}.body-chart-card .card-title{align-items:center}.body-chart{width:100%;height:auto;display:block}.body-grid-line{stroke:var(--line);stroke-width:.65px;vector-effect:non-scaling-stroke}.body-measure-line{fill:none;stroke:var(--line-2);stroke-width:1.05px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.body-average-line{fill:none;stroke:var(--green);stroke-width:1.35px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.body-average-area{fill:var(--green);opacity:.06}.body-chart-dot{fill:var(--surface);stroke:var(--green);stroke-width:1.15px;vector-effect:non-scaling-stroke}.body-chart-label{fill:var(--dim);font:var(--fz-caption) var(--mono)}.body-chart-note{margin-top:var(--sp-5);color:var(--muted);font-size:var(--fz-small);line-height:1.5}.body-side{gap:var(--sp-7);grid-template-rows:1fr 1fr;display:grid}.body-panel{padding:var(--pad-card)}.body-data-row{align-items:baseline;gap:var(--gap-row);padding:var(--sp-5) 0;border-top:1px solid var(--line);grid-template-columns:1fr auto auto;display:grid}.body-data-row:first-of-type{border-top:0}.body-data-row span{color:var(--muted);font-size:var(--fz-small)}.body-data-row b{font:var(--fw-semibold) var(--fz-small) var(--mono)}.body-data-row small{text-align:right;min-width:32px;color:var(--dim);font:var(--fw-semibold) var(--fz-caption) var(--mono)}.body-data-row small.up{color:var(--green)}.body-data-row small.down{color:var(--red)}.circumference-head{gap:var(--sp-4);padding-bottom:var(--sp-4);color:var(--dim);text-transform:uppercase;letter-spacing:var(--ls-caps);font-size:var(--fz-micro);font-weight:var(--fw-bold);grid-template-columns:1fr 52px 55px;display:grid}.circumference-row{gap:var(--sp-4);padding:var(--sp-5) 0;border-top:1px solid var(--line);font-size:var(--fz-small);grid-template-columns:1fr 52px 55px;display:grid}.circumference-row b,.circumference-row small{text-align:right;font:var(--fw-medium) var(--fz-label) var(--mono)}.circumference-row small{color:var(--green)}.photo-progress{margin-top:var(--sp-7);padding:var(--sp-8);overflow:hidden}.photo-scroll{gap:var(--sp-5);padding-bottom:var(--sp-2);scrollbar-width:thin;grid-auto-columns:minmax(120px,1fr);grid-auto-flow:column;display:grid;overflow-x:auto}.progress-photo{border:1px solid var(--line);border-radius:var(--rad-md);background:linear-gradient(145deg,var(--surface-2),color-mix(in srgb,var(--blue-soft) 35%,var(--surface-2)));min-height:150px;color:var(--dim);text-align:center;place-items:center;display:grid}.progress-photo span{font-size:calc(18px * var(--fs));opacity:.55;display:block}.progress-photo b{margin-top:var(--sp-4);font:var(--fw-medium) var(--fz-caption) var(--mono);display:block}.progress-photo.add{color:var(--green);background:var(--green-soft);border-style:dashed}.metric-row{gap:var(--sp-3) var(--sp-6);padding:var(--sp-5) 0;border-top:1px solid var(--line);grid-template-columns:1fr auto;display:grid}.metric-row:first-child{border-top:0}.metric-row span{color:var(--muted);font-size:var(--fz-compact)}.metric-row b{font:var(--fw-semibold) var(--fz-compact) var(--mono)}.subnav{z-index:6;gap:var(--sp-2);padding:var(--sp-2);border:1px solid var(--line);border-radius:var(--rad-md);background:color-mix(in srgb,var(--surface) 90%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:max-content;max-width:100%;margin:-4px 0 16px;display:flex;position:sticky;top:75px;overflow:auto}.subnav button{border-radius:var(--rad-sm);height:32px;padding:0 var(--sp-6);color:var(--muted);font-size:var(--fz-small);font-weight:var(--fw-semibold);white-space:nowrap;background:0 0;border:0}.subnav button:hover,.subnav button.on{background:var(--surface-2);color:var(--ink)}.training-stats{gap:var(--sp-6);margin-bottom:var(--sp-7);grid-template-columns:repeat(4,1fr);display:grid}.training-stat{padding:var(--sp-7)}.training-stat .type{align-items:center;gap:var(--sp-4);color:var(--muted);font-size:var(--fz-small);display:flex}.type-mark{border-radius:var(--rad-xs);width:22px;height:22px;font:var(--fw-bold) var(--fz-micro) var(--mono);background:var(--surface-2);place-items:center;display:grid}.training-stat .value{margin:var(--sp-5) 0 var(--sp-1);font:var(--fw-semibold) calc(24px * var(--fs)) var(--mono);letter-spacing:var(--ls-tight)}.week{gap:var(--sp-4);grid-template-columns:repeat(7,1fr);display:grid;overflow:auto}.day{min-width:122px;min-height:150px;padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface-2)}.day-head{color:var(--dim);text-transform:uppercase;letter-spacing:var(--ls-caps);font-size:var(--fz-caption);font-weight:var(--fw-bold);justify-content:space-between;display:flex}.day.today{border-color:color-mix(in srgb,var(--green) 45%,var(--line));background:color-mix(in srgb,var(--green-soft) 50%,var(--surface))}.session-chip{margin-top:var(--sp-5);padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface)}.session-chip .session-type{font-size:var(--fz-caption);color:var(--dim);text-transform:uppercase;letter-spacing:var(--ls-caps)}.session-chip b{margin-top:var(--sp-2);font-size:var(--fz-small);display:block}.session-chip small{margin-top:var(--sp-2);color:var(--dim);font:var(--fz-label) var(--mono);display:block}.section{margin-top:var(--sp-7);scroll-margin-top:130px}.section-head{justify-content:space-between;align-items:flex-end;gap:var(--sp-7);margin-bottom:var(--sp-5);display:flex}.section-head p{margin-top:var(--sp-2);color:var(--muted);font-size:var(--fz-compact)}.session-hero{padding:var(--sp-8)}.session-summary{gap:var(--sp-8);grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);display:grid}.session-heading{gap:var(--sp-6);align-items:center;display:flex}.activity-badge{border-radius:var(--rad-md);background:var(--blue-soft);width:45px;height:45px;color:var(--blue);font:var(--fw-heavy) var(--fz-label) var(--mono);place-items:center;display:grid}.session-heading h3{font-size:calc(19px * var(--fs))}.session-heading p{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-small)}.session-kpis{gap:var(--sp-4);margin:var(--sp-7) 0 var(--sp-2);grid-template-columns:repeat(4,1fr);display:grid}.session-kpi{padding:var(--sp-5);border-radius:var(--rad-md);background:var(--surface-2)}.session-kpi b{font:var(--fw-semibold) var(--fz-section) var(--mono);display:block}.session-kpi span{font-size:var(--fz-caption);color:var(--dim)}.stress-panel{padding:var(--sp-7);border-radius:var(--rad-lg);background:var(--surface-2)}.stress-score{align-items:baseline;gap:var(--sp-3);display:flex}.stress-score b{font:var(--fw-strong) calc(32px * var(--fs)) var(--mono);letter-spacing:var(--ls-tight)}.stress-score span{color:var(--dim);font-size:var(--fz-label)}.stress-scale{gap:var(--sp-2);margin:var(--sp-6) 0 var(--sp-4);grid-template-columns:repeat(12,1fr);display:grid}.stress-scale i{border-radius:var(--rad-2xs);background:var(--line);height:6px}.stress-scale i.on{background:var(--amber)}.stress-panel p{color:var(--muted);font-size:var(--fz-small);line-height:1.5}.chart-wrap{min-height:190px;position:relative}.chart{width:100%;height:auto;display:block;overflow:visible}.chart-grid{stroke:var(--line);stroke-width:.65px}.chart-label{fill:var(--dim);font:var(--fz-caption) var(--mono)}.chart-line{fill:none;stroke:var(--green);stroke-width:1.35px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.chart-line.secondary{stroke:var(--blue);stroke-width:1.15px}.chart-dot{fill:var(--surface);stroke:var(--green);stroke-width:1.1px;vector-effect:non-scaling-stroke}.chart-area{fill:var(--green);opacity:.055}.chart-note{font-size:var(--fz-label);color:var(--dim);margin-top:var(--sp-2);justify-content:space-between;display:flex}.zone-layout{gap:var(--sp-8);margin-top:var(--sp-7);grid-template-columns:minmax(0,1.4fr) minmax(230px,.6fr);display:grid}.zone-list{gap:var(--gap-row);display:grid}.zone-row b{font:var(--fw-semibold) var(--fz-label) var(--mono)}.zone-bar{border-radius:var(--rad-xs);background:var(--surface-2);height:7px;overflow:hidden}.zone-bar i{border-radius:inherit;transform-origin:0;height:100%;animation:.65s both grow;display:block}@keyframes grow{0%{transform:scaleX(0)}}.zone-row .time{text-align:right;color:var(--muted);font:var(--fz-label) var(--mono)}.calorie-split{gap:var(--sp-7);margin-top:var(--sp-6);grid-template-columns:auto 1fr;align-items:center;display:grid}.donut{border-radius:var(--rad-circle);background:conic-gradient(var(--green) 0 74%,var(--surface-2) 74%);place-items:center;width:74px;height:74px;display:grid;position:relative}.donut:before{content:"";border-radius:var(--rad-circle);background:var(--surface);position:absolute;inset:9px}.donut b{font:var(--fw-semibold) var(--fz-compact) var(--mono);position:relative}.set-table{border-collapse:collapse;width:100%}.set-table th{text-align:left;padding:0 var(--sp-5) var(--sp-5);color:var(--dim);font-size:var(--fz-caption);text-transform:uppercase;letter-spacing:var(--ls-caps)}.set-table td{padding:var(--sp-5) var(--sp-5);border-top:1px solid var(--line);font-size:var(--fz-small)}.set-table td:not(:first-child){font-family:var(--mono)}.rounds{gap:var(--sp-4);display:grid}.round{align-items:center;gap:var(--sp-5);grid-template-columns:54px 1fr 46px;display:grid}.round span{color:var(--dim);font:var(--fz-label) var(--mono)}.round-bar{border-radius:var(--rad-xs);background:var(--surface-2);height:22px;overflow:hidden}.round-bar i{border-radius:inherit;background:linear-gradient(90deg,var(--green),color-mix(in srgb,var(--brand) 70%,var(--green)));opacity:.82;height:100%;display:block}.round b{text-align:right;font:var(--fw-medium) var(--fz-label) var(--mono)}.wod{padding:var(--sp-8);background:linear-gradient(140deg,var(--surface),color-mix(in srgb,var(--amber-soft) 45%,var(--surface)))}.wod-name{align-items:center;gap:var(--sp-6);display:flex}.wod-name .activity-badge{background:var(--amber-soft);color:var(--amber)}.wod h3{font-size:var(--fz-page)}.wod p{margin-top:var(--sp-2);color:var(--muted);font-size:var(--fz-small)}.wod-score{gap:var(--sp-4);margin:var(--sp-7) 0;grid-template-columns:repeat(3,1fr);display:grid}.wod-score div{padding:var(--sp-5);background:color-mix(in srgb,var(--surface) 70%,transparent);border:1px solid var(--line);border-radius:var(--rad-md)}.wod-score b{font:var(--fw-semibold) var(--fz-section) var(--mono);display:block}.wod-score span{color:var(--dim);font-size:var(--fz-caption)}.activity-teaser{gap:var(--sp-7);padding:var(--sp-8);color:#f1f7f3;background:#152e24;border:0;grid-template-columns:1fr auto;align-items:center;display:grid}.activity-teaser p{margin-top:var(--sp-2);color:var(--nav-dim);font-size:var(--fz-compact)}.activity-tags{gap:var(--sp-3);margin-top:var(--sp-6);flex-wrap:wrap;display:flex}.activity-tags span{border:1px solid var(--nav-line);border-radius:var(--rad-pill);padding:var(--sp-2) var(--sp-5);color:#b8c7bf;font-size:var(--fz-label)}.health-lead{gap:var(--sp-7);margin-bottom:var(--sp-7);grid-template-columns:minmax(0,1.25fr) minmax(290px,.75fr);display:grid}.readiness-hero{color:var(--nav-ink);background:#142c22;border:0;padding:23px;position:relative;overflow:hidden}.readiness-hero .eyebrow{color:var(--nav-dim)}.readiness-big{align-items:flex-end;gap:var(--sp-6);margin:var(--sp-6) 0;display:flex}.readiness-big strong{font:var(--fw-strong) calc(54px * var(--fs))/1 var(--mono);letter-spacing:-.08em}.readiness-big span{padding-bottom:var(--sp-3);color:var(--brand);font-size:var(--fz-compact);font-weight:var(--fw-strong)}.readiness-hero>p{max-width:580px;color:var(--nav-muted);font-size:var(--fz-compact)}.readiness-factors{gap:var(--sp-8);margin-top:var(--sp-8);display:flex}.readiness-factors b{font:var(--fw-semibold) var(--fz-body) var(--mono);display:block}.readiness-factors small{color:#81968a;font-size:var(--fz-caption)}.thin-chart-card{padding:var(--pad-card)}.thin-chart-card .chart-wrap{min-height:170px}.legend{gap:var(--sp-6);flex-wrap:wrap;align-items:center;display:flex}.legend span{align-items:center;gap:var(--sp-2);color:var(--muted);font-size:var(--fz-label);display:inline-flex}.legend i{border-radius:var(--rad-2xs);background:var(--green);width:12px;height:2px}.legend i.blue{background:var(--blue)}.legend i.amber{background:var(--amber)}.source{align-items:center;gap:var(--sp-5);padding:var(--sp-5) 0;border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.source:first-child{border-top:0}.source-ic{border-radius:var(--rad-sm);background:var(--surface-2);width:34px;height:34px;font:var(--fw-strong) var(--fz-caption) var(--mono);place-items:center;display:grid}.source b{font-size:var(--fz-compact);display:block}.source small{color:var(--dim);font-size:var(--fz-label);display:block}.fresh{color:var(--green);font:var(--fw-medium) var(--fz-label) var(--mono)}.disclaimer{margin-top:var(--sp-7);padding:var(--sp-6) var(--sp-7);border-radius:var(--rad-md);background:var(--blue-soft);color:var(--blue);font-size:var(--fz-small)}.today-head{justify-content:space-between;align-items:flex-end;gap:var(--sp-8);margin-bottom:var(--sp-7);display:flex}.today-head h2{margin-top:var(--sp-2)}.today-head p{margin-top:var(--sp-2);color:var(--muted);font-size:var(--fz-compact)}.day-nav{align-items:center;gap:var(--sp-2);padding:var(--sp-2);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);display:flex}.day-nav button{border-radius:var(--rad-sm);height:32px;padding:0 var(--sp-5);color:var(--muted);font-size:var(--fz-label);font-weight:var(--fw-semibold);background:0 0;border:0}.day-nav button:hover{background:var(--surface-2);color:var(--ink)}.day-nav .day-current{min-width:132px;color:var(--ink)}.day-strip{gap:var(--sp-5);margin-bottom:var(--sp-7);grid-template-columns:repeat(4,1fr);display:grid}.day-kpi{min-height:78px;padding:var(--sp-6) var(--sp-7);align-items:center;gap:var(--sp-5);display:flex}.day-kpi-mark{border-radius:var(--rad-md);background:var(--surface-2);width:36px;height:36px;color:var(--green);font:var(--fw-bold) var(--fz-caption) var(--mono);flex:none;place-items:center;display:grid}.day-kpi b{font:var(--fw-semibold) calc(17px * var(--fs)) var(--mono);display:block}.day-kpi span{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-label);display:block}.calendar-card{overflow:hidden}.calendar-head{justify-content:space-between;align-items:center;gap:var(--sp-6);padding:var(--sp-7) var(--sp-8);border-bottom:1px solid var(--line);display:flex}.calendar-head p{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-label)}.schedule-layout{grid-template-columns:minmax(0,1.1fr) minmax(330px,.72fr);min-height:520px;display:grid}.schedule-list{padding:var(--sp-4) var(--sp-7) var(--sp-7);border-right:1px solid var(--line)}.schedule-item{gap:var(--sp-6);width:100%;padding:var(--sp-4) var(--sp-3);text-align:left;background:0 0;border:0;grid-template-columns:54px 3px minmax(0,1fr);display:grid;position:relative}.schedule-time{padding-top:var(--sp-5);color:var(--dim);font:var(--fz-label) var(--mono);line-height:1.35}.schedule-time b{color:var(--ink);font-size:var(--fz-small);display:block}.schedule-rail{background:var(--line);border-radius:var(--rad-2xs);position:relative}.schedule-rail:before{content:"";border-radius:var(--rad-circle);background:var(--surface);border:2px solid var(--line-2);z-index:1;width:9px;height:9px;position:absolute;top:13px;left:50%;transform:translate(-50%)}.schedule-item.done .schedule-rail:before{background:var(--green);border-color:var(--green)}.schedule-item.next .schedule-rail:before,.schedule-item.active .schedule-rail:before{background:var(--brand);border-color:var(--green);box-shadow:0 0 0 4px var(--green-soft)}.schedule-block{min-height:66px;padding:var(--sp-5) var(--sp-6);border-radius:var(--rad-md);align-items:center;gap:var(--sp-5);transition:var(--dur-fast);border:1px solid #0000;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.schedule-item:hover .schedule-block{background:var(--surface-2)}.schedule-item.active .schedule-block{border-color:color-mix(in srgb,var(--green) 32%,var(--line));background:color-mix(in srgb,var(--green-soft) 55%,var(--surface));box-shadow:var(--elev-flat)}.schedule-block .avatar{width:32px;height:32px;font-size:var(--fz-caption)}.schedule-main b{font-size:var(--fz-compact);display:block}.schedule-main p{margin-top:var(--sp-1);color:var(--muted);font-size:var(--fz-label)}.schedule-meta{text-align:right}.schedule-meta span{font:var(--fw-semibold) var(--fz-caption) var(--mono);color:var(--muted);display:block}.schedule-meta small{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-caption);display:block}.focus-block{padding:var(--sp-5) var(--sp-6);border-radius:var(--rad-md);background:var(--surface-2);color:var(--dim);font-size:var(--fz-label);justify-content:space-between;margin:5px 6px 5px 86px;display:flex}.focus-block b{color:var(--muted);font-weight:var(--fw-semibold)}.schedule-detail{padding:var(--sp-8);background:color-mix(in srgb,var(--surface-2) 52%,var(--surface))}.detail-client{align-items:center;gap:var(--sp-5);display:flex}.detail-client .avatar{width:41px;height:41px;font-size:var(--fz-small)}.detail-client h3{font-size:calc(17px * var(--fs))}.detail-client p{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-label)}.detail-status{margin-left:auto}.session-plan-source{justify-content:space-between;align-items:flex-start;gap:var(--sp-5);margin:var(--sp-7) 0 var(--sp-4);padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);display:flex}.session-plan-source span{color:var(--green);text-transform:uppercase;letter-spacing:var(--ls-caps);font-size:var(--fz-micro);font-weight:var(--fw-bold);display:block}.session-plan-source b{margin-top:var(--sp-2);font-size:var(--fz-small);display:block}.session-plan-source button{color:var(--green);font-size:var(--fz-caption);font-weight:var(--fw-strong);background:0 0;border:0;flex:none}.session-builder-summary{gap:var(--sp-4);margin-bottom:var(--sp-6);grid-template-columns:repeat(3,1fr);display:grid}.session-builder-summary div{padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface)}.session-builder-summary b{font:var(--fw-semibold) var(--fz-small) var(--mono);display:block}.session-builder-summary span{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-micro);display:block}.detail-tabs{gap:var(--sp-2);padding:var(--sp-2);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);margin-bottom:var(--sp-6);display:flex}.detail-tabs button{border-radius:var(--rad-sm);height:29px;color:var(--muted);font-size:var(--fz-label);font-weight:var(--fw-semibold);background:0 0;border:0;flex:1}.detail-tabs button.on{background:var(--surface-2);color:var(--ink)}.session-builder-blocks{gap:var(--sp-5);display:grid}.session-builder-block{border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);overflow:hidden}.session-builder-block-head{justify-content:space-between;align-items:center;gap:var(--sp-4);padding:var(--sp-4) var(--sp-5);background:var(--surface-2);display:flex}.session-builder-block-head b{font-size:var(--fz-label)}.session-builder-block-head span{color:var(--dim);font:var(--fz-micro) var(--mono);white-space:nowrap}.session-plan-exercise{align-items:center;gap:var(--sp-4);padding:var(--sp-5) var(--sp-5);border-top:1px solid var(--line);cursor:pointer;transition:background var(--dur-fast),box-shadow var(--dur-fast);grid-template-columns:28px minmax(0,1fr) auto;display:grid}.session-plan-exercise:first-child{border-top:0}.session-plan-exercise:hover{background:color-mix(in srgb,var(--green-soft) 38%,var(--surface))}.session-plan-exercise:focus-visible{z-index:1;outline:2px solid var(--green);outline-offset:-2px;position:relative}.session-plan-exercise>span{border-radius:var(--rad-sm);background:var(--green-soft);width:28px;height:28px;color:var(--green);font:var(--fw-bold) var(--fz-micro) var(--mono);place-items:center;display:grid}.session-plan-exercise b{font-size:var(--fz-label);display:block}.session-plan-exercise p{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-micro)}.session-plan-exercise small{text-align:right;color:var(--muted);font:var(--fz-caption) var(--mono)}.session-plan-empty{padding:var(--sp-7);text-align:center;color:var(--dim);font-size:var(--fz-caption)}.session-notes{border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);width:100%;min-height:150px;padding:var(--sp-5);resize:vertical;font-size:var(--fz-label)}.detail-foot{gap:var(--sp-4);margin-top:var(--sp-6);display:flex}.detail-foot .btn{flex:1}.today-work{gap:var(--sp-7);margin-top:var(--sp-7);grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);display:grid}.task-card{padding:var(--pad-card)}.task-toolbar{justify-content:space-between;align-items:flex-start;gap:var(--sp-5);margin-bottom:var(--sp-6);display:flex}.task-toolbar p{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-label)}.task-filters{gap:var(--sp-2);display:flex;overflow:auto}.task-filters button{border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);height:29px;padding:0 var(--sp-5);color:var(--muted);font-size:var(--fz-caption);white-space:nowrap}.task-filters button.on{background:var(--green-soft);border-color:color-mix(in srgb,var(--green) 28%,var(--line));color:var(--green)}.deviation-list{display:grid}.deviation{align-items:center;gap:var(--sp-5);padding:var(--sp-5) 0;border-top:1px solid var(--line);grid-template-columns:5px 38px minmax(0,1fr) auto;display:grid}.deviation:first-child{border-top:0}.deviation-priority{border-radius:var(--rad-xs);background:var(--line);align-self:stretch}.deviation.high .deviation-priority{background:var(--red)}.deviation.medium .deviation-priority{background:var(--amber)}.deviation .avatar{width:34px;height:34px;font-size:var(--fz-caption)}.deviation-main{min-width:0}.deviation-topline{align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-2);display:flex}.task-domain{border-radius:var(--rad-xs);padding:var(--sp-1) var(--sp-2);background:var(--surface-2);color:var(--muted);text-transform:uppercase;letter-spacing:var(--ls-caps);font-size:var(--fz-micro);font-weight:var(--fw-bold)}.task-domain.health{background:var(--red-soft);color:var(--red)}.task-domain.nutrition{background:var(--green-soft);color:var(--green)}.task-domain.training{background:var(--blue-soft);color:var(--blue)}.task-domain.wellbeing{background:var(--amber-soft);color:var(--amber)}.deviation-main b{font-size:var(--fz-small)}.deviation-main p{white-space:nowrap;text-overflow:ellipsis;color:var(--muted);font-size:var(--fz-label);overflow:hidden}.deviation-main small{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-caption);display:block}.deviation-actions{gap:var(--gap-tight);display:flex}.deviation-actions button{border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);height:29px;padding:0 var(--sp-4);font-size:var(--fz-caption);font-weight:var(--fw-semibold)}.deviation-actions .take{background:var(--green);border-color:var(--green);color:#fff}.task-empty{padding:var(--pad-empty);text-align:center;color:var(--dim);font-size:var(--fz-label)}.message-card{padding:var(--pad-card)}.message-count{margin-bottom:var(--sp-6);justify-content:space-between;align-items:flex-end;display:flex}.message-count strong{font:var(--fw-strong) calc(36px * var(--fs))/1 var(--mono);letter-spacing:-.07em}.message-count span{color:var(--dim);font-size:var(--fz-label)}.message-list{display:grid}.message{align-items:center;gap:var(--sp-5);padding:var(--sp-5) 0;border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.message:first-child{border-top:0}.message .avatar{width:31px;height:31px;font-size:var(--fz-caption)}.message b{font-size:var(--fz-label);display:block}.message p{margin-top:var(--sp-1);white-space:nowrap;text-overflow:ellipsis;color:var(--dim);font-size:var(--fz-caption);overflow:hidden}.message time{color:var(--dim);font:var(--fz-micro) var(--mono)}.unread-dot{border-radius:var(--rad-circle);background:var(--green);width:6px;height:6px;margin:var(--sp-2) 0 0 auto}.message-card>.btn{width:100%;margin-top:var(--sp-6)}.portfolio-card{margin-top:var(--sp-7);padding:var(--pad-card)}.portfolio-head{justify-content:space-between;align-items:flex-end;gap:var(--sp-6);margin-bottom:var(--sp-7);display:flex}.portfolio-head p{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-label)}.portfolio-total{text-align:right}.portfolio-total b{font:var(--fw-semibold) var(--fz-page) var(--mono);display:block}.portfolio-total span{color:var(--dim);font-size:var(--fz-caption)}.portfolio-stack{border-radius:var(--rad-sm);background:var(--surface-2);height:10px;margin-bottom:var(--sp-7);display:flex;overflow:hidden}.portfolio-stack i:first-child{background:var(--green);width:67%}.portfolio-stack i:nth-child(2){background:var(--amber);width:21%}.portfolio-stack i:nth-child(3){background:var(--red);width:12%}.portfolio-groups{gap:var(--sp-5);grid-template-columns:repeat(3,1fr);display:grid}.portfolio-group{padding:var(--sp-7);border:1px solid var(--line);border-radius:var(--rad-lg);background:var(--surface);cursor:pointer;transition:var(--dur-fast)}.portfolio-group:hover{border-color:var(--line-2);transform:translateY(-1px)}.portfolio-group.on{border-color:color-mix(in srgb,var(--green) 35%,var(--line));box-shadow:var(--elev-flat)}.group-head{justify-content:space-between;align-items:flex-start;display:flex}.group-head h4{font-size:var(--fz-compact)}.group-head p{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-caption)}.group-head b{font:var(--fw-semibold) var(--fz-page) var(--mono)}.client-minis{gap:var(--sp-3);margin-top:var(--sp-5);display:grid}.client-mini{align-items:center;gap:var(--sp-4);padding-top:var(--sp-4);border-top:1px solid var(--line);display:flex}.client-mini .avatar{width:25px;height:25px;font-size:var(--fz-micro)}.client-mini b{font-size:var(--fz-caption);display:block}.client-mini span{color:var(--dim);font-size:var(--fz-micro);display:block}.client-mini button{color:var(--green);font-size:var(--fz-caption);font-weight:var(--fw-strong);background:0 0;border:0;margin-left:auto}.group-action{width:100%;margin-top:var(--sp-5)}.registry-summary{gap:var(--sp-5);margin-bottom:var(--sp-7);grid-template-columns:repeat(5,1fr);display:grid}.registry-stat{min-height:92px;padding:var(--sp-7)}.registry-stat .eyebrow{margin-bottom:var(--sp-5)}.registry-stat b{font:var(--fw-semibold) calc(22px * var(--fs)) var(--mono);letter-spacing:var(--ls-tight);display:block}.registry-stat span{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-caption);display:block}.registry-card{overflow:hidden}.registry-toolbar{align-items:center;gap:var(--sp-5);padding:var(--sp-7) var(--sp-7);border-bottom:1px solid var(--line);display:flex}.registry-tabs{gap:var(--sp-2);padding:var(--sp-2);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface-2);display:flex}.registry-tabs button{border-radius:var(--rad-sm);height:30px;padding:0 var(--sp-5);color:var(--muted);font-size:var(--fz-caption);font-weight:var(--fw-semibold);white-space:nowrap;background:0 0;border:0}.registry-tabs button.on{background:var(--surface);color:var(--ink);box-shadow:var(--elev-flat)}.registry-search{flex:1;max-width:320px;position:relative}.registry-search input{padding-left:31px}.registry-search:before{content:"⌕";color:var(--dim);z-index:1;position:absolute;top:9px;left:11px}.registry-select{border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);width:175px;height:38px;padding:0 var(--sp-5);color:var(--muted);font-size:var(--fz-label)}.registry-table-wrap{overflow:auto}.registry-table{border-collapse:collapse;width:100%;min-width:1180px}.registry-table th{text-align:left;padding:var(--sp-5) var(--sp-6);color:var(--dim);text-transform:uppercase;letter-spacing:var(--ls-caps);font-size:var(--fz-micro);font-weight:var(--fw-bold);background:var(--surface-2);white-space:nowrap}.registry-table td{padding:var(--sp-6);border-top:1px solid var(--line);vertical-align:middle;font-size:var(--fz-label)}.registry-table tbody tr{transition:background var(--dur-fast)}.registry-table tbody tr:hover{background:color-mix(in srgb,var(--green-soft) 34%,var(--surface))}.registry-table tbody tr.archived{opacity:.7}.registry-person{align-items:center;gap:var(--sp-5);min-width:176px;display:flex}.registry-person .avatar{width:34px;height:34px;font-size:var(--fz-caption)}.registry-person b{font-size:var(--fz-small);display:block}.registry-person small{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-caption);display:block}.client-status{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);border-radius:var(--rad-pill);font-size:var(--fz-caption);font-weight:var(--fw-strong);white-space:nowrap;display:inline-flex}.client-status:before{content:"";border-radius:var(--rad-circle);background:currentColor;width:6px;height:6px}.client-status.active{background:var(--green-soft);color:var(--green)}.client-status.paused{background:var(--amber-soft);color:var(--amber)}.client-status.archived{background:var(--surface-2);color:var(--dim)}.goal-cell{min-width:145px}.goal-cell b{font-size:var(--fz-label);display:block}.goal-cell span{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-caption);display:block}.finance-cell{min-width:150px}.finance-cell b{font:var(--fw-semibold) var(--fz-label) var(--mono);display:block}.finance-cell span{margin-top:var(--sp-2);color:var(--muted);font-size:var(--fz-caption);display:block}.finance-cell small{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-micro);display:block}.score-cell{min-width:120px}.score-top{justify-content:space-between;align-items:baseline;display:flex}.score-top b{font:var(--fw-semibold) var(--fz-small) var(--mono)}.score-top span{color:var(--dim);font-size:var(--fz-micro)}.score-track{height:6px;margin-top:var(--sp-3);border-radius:var(--rad-xs);background:var(--surface-2);overflow:hidden}.score-track i{border-radius:inherit;background:var(--green);height:100%;display:block}.score-cell.warn .score-track i{background:var(--amber)}.score-cell.risk .score-track i{background:var(--red)}.reliability-cell{min-width:145px}.reliability-top{justify-content:space-between;align-items:baseline;display:flex}.reliability-top b{font:var(--fw-semibold) var(--fz-small) var(--mono)}.reliability-top span{font-size:var(--fz-micro);color:var(--dim)}.attendance-events{gap:var(--sp-2);margin-top:var(--sp-2);display:flex}.attendance-events span{border-radius:var(--rad-xs);padding:var(--sp-1) var(--sp-2);background:var(--surface-2);color:var(--muted);font-size:var(--fz-micro);white-space:nowrap}.attendance-events span.cancel{background:var(--red-soft);color:var(--red)}.next-session{min-width:110px}.next-session b{font:var(--fw-medium) var(--fz-label) var(--mono);display:block}.next-session span{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-micro);display:block}.row-menu{border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);width:31px;height:31px;color:var(--dim)}.row-menu.add{width:auto;padding:0 var(--sp-5);color:var(--green);font-size:var(--fz-micro);font-weight:var(--fw-strong);white-space:nowrap}.row-menu:hover{border-color:var(--line-2);color:var(--ink)}.registry-footer{justify-content:space-between;align-items:center;gap:var(--sp-5);padding:var(--sp-6) var(--sp-7);border-top:1px solid var(--line);color:var(--dim);font-size:var(--fz-caption);display:flex}.registry-legend{gap:var(--sp-5);display:flex}.registry-legend span{align-items:center;gap:var(--sp-2);display:flex}.registry-empty{padding:var(--sp-10);text-align:center;color:var(--dim);font-size:var(--fz-label)}.registry-person-button{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.registry-person-button:hover b{color:var(--green)}.registry-person-button:focus-visible{border-radius:var(--rad-sm)}.registry-person-button small strong{color:var(--green);font-weight:var(--fw-strong)}.nutrition-lead{gap:var(--sp-7);margin-bottom:var(--sp-7);grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr);display:grid}.nutrition-hero{color:var(--nav-ink);background:#142c22;border:0;padding:23px;position:relative;overflow:hidden}.nutrition-hero .eyebrow{color:var(--nav-dim)}.energy-total{align-items:baseline;gap:var(--sp-5);margin:var(--sp-6) 0 var(--sp-4);display:flex}.energy-total strong{font:var(--fw-strong) calc(48px * var(--fs))/1 var(--mono);letter-spacing:-.08em}.energy-total span{color:#96aa9f;font-size:var(--fz-compact)}.nutrition-hero>p{max-width:610px;color:var(--nav-muted);font-size:var(--fz-compact)}.energy-track{height:8px;margin:var(--sp-8) 0 var(--sp-4);border-radius:var(--rad-sm);background:var(--nav-line);overflow:hidden}.energy-track i{border-radius:inherit;background:var(--brand);width:98.8%;height:100%;display:block}.energy-scale{color:#82978c;font:var(--fz-caption) var(--mono);justify-content:space-between;display:flex}.macro-grid{gap:var(--sp-5);grid-template-columns:repeat(4,1fr);display:grid}.macro-card{padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface)}.macro-card .between{align-items:baseline}.macro-card b{font:var(--fw-semibold) var(--fz-section) var(--mono)}.macro-card small{color:var(--dim);font:var(--fz-caption) var(--mono)}.macro-progress{height:6px;margin-top:var(--sp-5);border-radius:var(--rad-xs);background:var(--surface-2);overflow:hidden}.macro-progress i{border-radius:inherit;background:var(--green);height:100%;display:block}.meal-list{display:grid}.meal{align-items:center;gap:var(--sp-5);padding:var(--sp-6) 0;border-top:1px solid var(--line);grid-template-columns:48px 36px minmax(0,1fr) auto;display:grid}.meal:first-child{border-top:0}.meal time{color:var(--dim);font:var(--fz-caption) var(--mono)}.meal-mark{border-radius:var(--rad-sm);background:var(--surface-2);width:34px;height:34px;font:var(--fw-bold) var(--fz-caption) var(--mono);place-items:center;display:grid}.meal h4{font-size:var(--fz-compact)}.meal p{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-label)}.meal-energy{text-align:right}.meal-energy b{font:var(--fw-semibold) var(--fz-small) var(--mono);display:block}.meal-energy small{color:var(--dim);font-size:var(--fz-caption)}.day-adherence{gap:var(--sp-2);margin-top:var(--sp-7);grid-template-columns:repeat(14,1fr);display:grid}.day-adherence i{border-radius:var(--rad-xs);background:var(--surface-2);height:30px}.day-adherence i.hit{background:color-mix(in srgb,var(--green) 70%,var(--surface))}.day-adherence i.near{background:color-mix(in srgb,var(--brand) 58%,var(--surface))}.day-adherence i.miss{background:color-mix(in srgb,var(--red) 42%,var(--surface))}.adherence-labels{margin-top:var(--sp-3);color:var(--dim);font:var(--fz-caption) var(--mono);justify-content:space-between;display:flex}.fuel-row{align-items:center;gap:var(--gap-row);padding:var(--sp-5) 0;border-top:1px solid var(--line);grid-template-columns:105px minmax(0,1fr) 58px;display:grid}.fuel-row:first-child{border-top:0}.fuel-row span{color:var(--muted);font-size:var(--fz-small)}.fuel-bar{border-radius:var(--rad-sm);background:var(--surface-2);height:8px;overflow:hidden}.fuel-bar i{border-radius:inherit;background:var(--green);height:100%;display:block}.fuel-row b{text-align:right;font:var(--fw-semibold) var(--fz-label) var(--mono)}.food-insight{gap:var(--sp-5);padding:var(--sp-5) 0;border-top:1px solid var(--line);display:flex}.food-insight:first-child{border-top:0}.insight-mark{border-radius:var(--rad-sm);background:var(--green-soft);width:27px;height:27px;color:var(--green);font:var(--fw-heavy) var(--fz-caption) var(--mono);flex:none;place-items:center;display:grid}.food-insight p{color:var(--muted);font-size:var(--fz-small);line-height:1.5}.food-insight b{color:var(--ink)}.experiment-lead{color:var(--nav-ink);margin-bottom:var(--sp-7);background:#142c22;border:0;padding:24px;position:relative;overflow:hidden}.experiment-lead:after{content:"";border-radius:var(--rad-circle);background:radial-gradient(circle,#d7f58a2e,#0000 68%);width:300px;height:300px;position:absolute;top:-130px;right:-80px}.experiment-lead .eyebrow{color:var(--nav-dim)}.experiment-lead h2{max-width:650px;margin:var(--sp-5) 0 var(--sp-4);font-size:var(--fz-display)}.experiment-lead p{color:#9cb0a5;max-width:690px;font-size:var(--fz-compact);line-height:1.55}.experiment-lead .page-actions{z-index:1;position:absolute;bottom:24px;right:24px}.experiment-card{padding:var(--pad-card)}.experiment-top{justify-content:space-between;align-items:flex-start;gap:var(--sp-6);display:flex}.experiment-top h3{font-size:calc(17px * var(--fs))}.experiment-top p{margin-top:var(--sp-2);color:var(--muted);font-size:var(--fz-small)}.experiment-progress{align-items:center;gap:var(--sp-5);margin:var(--sp-7) 0;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.experiment-progress b{font:var(--fw-semibold) var(--fz-small) var(--mono)}.progress{border-radius:var(--rad-xs);background:var(--surface-2);height:7px;overflow:hidden}.progress i{border-radius:inherit;background:linear-gradient(90deg,var(--green),var(--brand));height:100%;display:block}.experiment-metrics{gap:var(--sp-4);grid-template-columns:repeat(3,1fr);display:grid}.experiment-metric{padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface-2)}.experiment-metric span{color:var(--dim);font-size:var(--fz-caption);display:block}.experiment-metric b{margin-top:var(--sp-2);font:var(--fw-semibold) var(--fz-body) var(--mono);display:block}.experiment-metric small{margin-top:var(--sp-1);color:var(--green);font-size:var(--fz-caption);display:block}.compare{align-items:stretch;gap:var(--sp-4);margin:var(--sp-7) 0;grid-template-columns:1fr auto 1fr;display:grid}.compare-side{padding:var(--sp-6);border-radius:var(--rad-md);background:var(--surface-2)}.compare-side span{color:var(--dim);font-size:var(--fz-caption)}.compare-side b{margin-top:var(--sp-2);font:var(--fw-semibold) var(--fz-section) var(--mono);display:block}.compare-arrow{color:var(--dim);place-items:center;display:grid}.confidence{align-items:center;gap:var(--sp-4);margin-top:var(--sp-6);color:var(--muted);font-size:var(--fz-label);display:flex}.confidence-dots{gap:var(--sp-2);display:flex}.confidence-dots i{border-radius:var(--rad-circle);background:var(--line);width:7px;height:7px}.confidence-dots i.on{background:var(--green)}.experiment-method{gap:var(--sp-4);grid-template-columns:repeat(4,1fr);display:grid}.method-step{padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface)}.method-step span{border-radius:var(--rad-sm);background:var(--green-soft);width:23px;height:23px;color:var(--green);font:var(--fw-bold) var(--fz-caption) var(--mono);place-items:center;display:grid}.method-step b{margin-top:var(--sp-5);font-size:var(--fz-small);display:block}.method-step p{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-caption);line-height:1.45}.template-grid{gap:var(--sp-5);grid-template-columns:repeat(3,1fr);display:grid}.experiment-template{padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);text-align:left}.experiment-template:hover{border-color:var(--line-2);background:var(--surface-2)}.experiment-template .pill{margin-bottom:var(--sp-5)}.experiment-template h4{font-size:var(--fz-compact)}.experiment-template p{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-label)}.week-overview{gap:var(--sp-5);margin-bottom:var(--sp-7);grid-template-columns:repeat(4,1fr);display:grid}.week-kpi{min-height:84px;padding:var(--sp-7) var(--sp-7)}.week-kpi .eyebrow{margin-bottom:var(--sp-4)}.week-kpi b{font:var(--fw-semibold) var(--fz-page) var(--mono);letter-spacing:var(--ls-tight)}.week-kpi span{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-caption);display:block}.weekly-calendar{overflow:hidden}.weekly-calendar-head{justify-content:space-between;align-items:center;gap:var(--sp-6);padding:var(--sp-7) var(--sp-8);border-bottom:1px solid var(--line);display:flex}.weekly-calendar-head p{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-label)}.weekly-calendar-scroll{scrollbar-width:thin;overflow-x:auto}.weekly-day{min-height:440px;padding:0 var(--sp-4) var(--sp-6);border-left:1px solid var(--line);background:var(--surface)}.weekly-day:first-child{border-left:0}.weekly-day-head{z-index:2;justify-content:space-between;align-items:flex-start;gap:var(--sp-4);padding:var(--sp-6) var(--sp-2) var(--sp-5);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;position:sticky;top:0}.weekly-day-head span{color:var(--dim);text-transform:uppercase;letter-spacing:var(--ls-caps);font-size:var(--fz-caption);font-weight:var(--fw-bold);display:block}.weekly-day-head b{margin-top:var(--sp-1);font:var(--fw-semibold) calc(17px * var(--fs)) var(--mono);display:block}.weekly-day-head small{color:var(--dim);font:var(--fz-micro) var(--mono)}.weekly-session{width:100%;margin-top:var(--sp-4);padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);text-align:left;box-shadow:var(--elev-flat);transition:var(--dur-fast);position:relative}.weekly-session:before{content:"";border-radius:0 var(--rad-2xs) var(--rad-2xs) 0;background:var(--green);width:3px;position:absolute;top:10px;bottom:10px;left:-1px}.weekly-session:hover{border-color:var(--line-2);box-shadow:var(--elev-flat);transform:translateY(-1px)}.weekly-session.cardio:before{background:var(--blue)}.weekly-session.conditioning:before{background:var(--amber)}.weekly-session.recovery:before{background:var(--violet)}.weekly-session-time{justify-content:space-between;align-items:center;gap:var(--sp-3);color:var(--dim);font:var(--fz-caption) var(--mono);display:flex}.weekly-session h4{margin-top:var(--sp-3);font-size:var(--fz-small)}.weekly-session p{margin-top:var(--sp-2);color:var(--muted);font-size:var(--fz-caption);line-height:1.35}.weekly-session small{margin-top:var(--sp-3);color:var(--dim);font-size:var(--fz-micro);display:block}.weekly-free{width:100%;margin-top:var(--sp-4);padding:var(--sp-5);border:1px dashed var(--line-2);border-radius:var(--rad-md);color:var(--dim);font-size:var(--fz-caption);text-align:left;background:0 0}.weekly-free:hover{border-color:var(--green);color:var(--green);background:var(--green-soft)}.weekly-work{gap:var(--sp-7);margin-top:var(--sp-7);grid-template-columns:minmax(0,1.45fr) minmax(285px,.55fr);display:grid}.weekly-items{display:grid}.weekly-item{align-items:center;gap:var(--sp-5);padding:var(--sp-6) 0;border-top:1px solid var(--line);grid-template-columns:5px 38px minmax(0,1fr) auto;display:grid}.weekly-item:first-child{border-top:0}.weekly-item.done{opacity:.55}.weekly-item.done h4{text-decoration:line-through}.weekly-item-priority{border-radius:var(--rad-xs);background:var(--line);align-self:stretch}.weekly-item-priority.high{background:var(--red)}.weekly-item-priority.medium{background:var(--amber)}.weekly-item .avatar{width:35px;height:35px;font-size:var(--fz-caption)}.weekly-item-top{align-items:center;gap:var(--sp-3);flex-wrap:wrap;display:flex}.weekly-item h4{font-size:var(--fz-small)}.weekly-item p{margin-top:var(--sp-2);color:var(--muted);font-size:var(--fz-label);line-height:1.4}.weekly-item small{margin-top:var(--sp-2);color:var(--dim);font:var(--fz-caption) var(--mono);display:block}.weekly-item-actions{gap:var(--gap-tight);display:flex}.weekly-item-actions button{border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);height:29px;padding:0 var(--sp-4);font-size:var(--fz-caption);font-weight:var(--fw-semibold)}.weekly-item-actions .complete{border-color:var(--green);background:var(--green);color:#fff}.week-rule-list{display:grid}.week-rule{gap:var(--sp-5);padding:var(--sp-5) 0;border-top:1px solid var(--line);display:flex}.week-rule:first-child{border-top:0}.week-rule span{border-radius:var(--rad-sm);background:var(--surface-2);width:27px;height:27px;color:var(--green);font:var(--fw-bold) var(--fz-micro) var(--mono);flex:none;place-items:center;display:grid}.week-rule b{font-size:var(--fz-label);display:block}.week-rule p{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-caption);line-height:1.45}.quick-workout-modal{width:880px}.quick-source-label{margin-bottom:var(--sp-5);justify-content:space-between;align-items:center;display:flex}.quick-source-label small{color:var(--dim);font-size:var(--fz-caption)}.quick-sources{gap:var(--sp-4);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.quick-sources button{min-height:102px;padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);text-align:left;transition:var(--dur-fast)}.quick-sources button:hover{border-color:var(--line-2);background:var(--surface-2)}.quick-sources button.on{border-color:color-mix(in srgb,var(--green) 45%,var(--line));background:var(--green-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--green) 15%,transparent)}.quick-sources button>span{border-radius:var(--rad-sm);background:var(--surface-2);width:25px;height:25px;color:var(--green);font:var(--fw-strong) var(--fz-label) var(--mono);place-items:center;display:grid}.quick-sources button b{margin-top:var(--sp-5);font-size:var(--fz-label);display:block}.quick-sources button small{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-caption);display:block}.quick-fields{margin-top:var(--sp-7)}.quick-hint{gap:var(--sp-5);margin-top:var(--sp-7);padding:var(--sp-5) var(--sp-6);border-radius:var(--rad-md);background:var(--surface-2);align-items:center;display:flex}.quick-hint>span{border-radius:var(--rad-sm);background:var(--surface);width:26px;height:26px;font:var(--fw-strong) var(--fz-caption) var(--mono);flex:none;place-items:center;display:grid}.quick-hint p{color:var(--muted);font-size:var(--fz-label)}.quick-hint b{color:var(--ink)}.quick-sources button:disabled{cursor:not-allowed;opacity:.48}.quick-sources button:disabled:hover{border-color:var(--line);background:var(--surface)}.workflow-head{justify-content:space-between;align-items:flex-start;gap:var(--sp-8);margin-bottom:var(--sp-7);display:flex}.workflow-head h2{margin-top:var(--sp-2)}.workflow-head p{margin-top:var(--sp-2);color:var(--muted);font-size:var(--fz-compact)}.workflow-actions{align-items:center;gap:var(--sp-4);flex-wrap:wrap;display:flex}.workflow-status{align-items:center;gap:var(--sp-3);color:var(--dim);font-size:var(--fz-caption);display:flex}.workflow-status i{border-radius:var(--rad-circle);background:var(--green);width:7px;height:7px}.builder-meta{gap:var(--sp-5);margin-bottom:var(--sp-7);grid-template-columns:1.5fr .8fr .7fr .7fr;display:grid}.builder-meta .field-input{background:var(--surface);height:38px}.builder-shell{gap:var(--sp-7);grid-template-columns:minmax(0,1.4fr) minmax(320px,.6fr);align-items:start;display:grid}.builder-canvas{padding:var(--sp-8)}.builder-summary{gap:var(--sp-4);margin-bottom:var(--sp-7);grid-template-columns:repeat(4,1fr);display:grid}.builder-summary div{padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface-2)}.builder-summary b{font:var(--fw-semibold) var(--fz-body) var(--mono);display:block}.builder-summary span{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-micro);display:block}.builder-blocks{gap:var(--sp-5);display:grid}.builder-block{border:1px solid var(--line);border-radius:var(--rad-lg);background:var(--surface);overflow:hidden}.builder-block.selected{border-color:color-mix(in srgb,var(--green) 38%,var(--line));box-shadow:var(--elev-flat)}.builder-block-head{align-items:center;gap:var(--sp-5);padding:var(--sp-5) var(--sp-6);background:var(--surface-2);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.drag-mark{color:var(--dim);font:var(--fw-strong) var(--fz-caption) var(--mono);letter-spacing:-.12em}.builder-block-head h4{font-size:var(--fz-small)}.builder-block-head p{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-caption)}.builder-block-actions{gap:var(--gap-tight);display:flex}.builder-block-actions button{border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);width:27px;height:27px;color:var(--dim);font-size:var(--fz-caption)}.builder-exercises{padding:0 var(--sp-6)}.builder-exercise{align-items:center;gap:var(--sp-5);padding:var(--sp-5) 0;border-top:1px solid var(--line);grid-template-columns:30px minmax(0,1fr) auto auto;display:grid}.builder-exercise:first-child{border-top:0}.builder-exercise-code{border-radius:var(--rad-sm);background:var(--green-soft);width:29px;height:29px;color:var(--green);font:var(--fw-bold) var(--fz-micro) var(--mono);place-items:center;display:grid}.builder-exercise h4{font-size:var(--fz-label)}.builder-exercise p{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-caption)}.builder-target{text-align:right}.builder-target b{font:var(--fw-semibold) var(--fz-label) var(--mono);display:block}.builder-target small{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-micro);display:block}.builder-exercise>button{border-radius:var(--rad-sm);width:27px;height:27px;color:var(--dim);background:0 0;border:0}.builder-add-blocks{gap:var(--sp-3);margin-top:var(--sp-6);flex-wrap:wrap;display:flex}.builder-add-blocks button{height:30px;padding:0 var(--sp-5);border:1px dashed var(--line-2);border-radius:var(--rad-sm);color:var(--muted);font-size:var(--fz-caption);background:0 0}.builder-add-blocks button:hover{border-color:var(--green);color:var(--green);background:var(--green-soft)}.builder-library{padding:var(--sp-7);max-height:calc(100vh - 120px);position:sticky;top:91px;overflow:hidden}.builder-library-list{gap:var(--sp-4);max-height:510px;padding-right:var(--sp-1);display:grid;overflow:auto}.builder-library-item{align-items:center;gap:var(--sp-5);padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);text-align:left;grid-template-columns:34px minmax(0,1fr) auto;display:grid}.builder-library-item:hover{border-color:var(--line-2);background:var(--surface-2)}.builder-library-item .exercise-code{width:32px;height:32px}.builder-library-item b{font-size:var(--fz-label);display:block}.builder-library-item small{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-micro);display:block}.builder-library-item>span:last-child{color:var(--green);font-size:var(--fz-section)}.builder-filter-row{gap:var(--sp-2);margin:var(--sp-5) 0;display:flex;overflow:auto}.builder-filter-row button{height:27px;padding:0 var(--sp-4);border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);color:var(--muted);font-size:var(--fz-micro);white-space:nowrap}.builder-filter-row button.on{background:var(--green-soft);color:var(--green);border-color:#0000}.activity-schema-grid{gap:var(--sp-5);margin-bottom:var(--sp-7);grid-template-columns:repeat(4,1fr);display:grid}.activity-schema{padding:var(--sp-7);text-align:left}.activity-schema:hover{border-color:var(--line-2);transform:translateY(-1px)}.activity-schema span{border-radius:var(--rad-sm);background:var(--surface-2);width:31px;height:31px;color:var(--green);font:var(--fw-bold) var(--fz-micro) var(--mono);place-items:center;display:grid}.activity-schema h3{margin-top:var(--sp-5);font-size:var(--fz-compact)}.activity-schema p{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-caption);line-height:1.45}.library-layout{gap:var(--sp-7);grid-template-columns:220px minmax(0,1fr);align-items:start;display:grid}.library-sidebar{padding:var(--sp-7);position:sticky;top:91px}.library-sidebar button{border-radius:var(--rad-sm);width:100%;height:34px;padding:0 var(--sp-5);color:var(--muted);font-size:var(--fz-label);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;display:flex}.library-sidebar button.on{background:var(--green-soft);color:var(--green)}.library-sidebar span{font:var(--fw-semibold) var(--fz-micro) var(--mono)}.library-main{padding:var(--sp-8)}.exercise-grid{gap:var(--sp-5);grid-template-columns:repeat(3,1fr);display:grid}.exercise-card{padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);text-align:left;position:relative}.exercise-card:hover{border-color:var(--line-2);box-shadow:var(--elev-flat)}.exercise-card-top{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);display:flex}.exercise-code{border-radius:var(--rad-md);background:var(--green-soft);width:36px;height:36px;color:var(--green);font:var(--fw-bold) var(--fz-micro) var(--mono);place-items:center;display:grid}.favorite-btn{border-radius:var(--rad-sm);background:var(--surface-2);width:27px;height:27px;color:var(--dim);border:0}.favorite-btn.on{background:var(--amber-soft);color:var(--amber)}.exercise-card h4{margin-top:var(--sp-5);font-size:var(--fz-small)}.exercise-card p{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-caption)}.exercise-tags{gap:var(--sp-2);margin-top:var(--sp-5);flex-wrap:wrap;display:flex}.exercise-tags span{padding:var(--sp-2) var(--sp-3);border-radius:var(--rad-xs);background:var(--surface-2);color:var(--muted);font-size:var(--fz-micro)}.exercise-metric{justify-content:space-between;gap:var(--sp-4);margin-top:var(--sp-5);padding-top:var(--sp-5);border-top:1px solid var(--line);color:var(--dim);font-size:var(--fz-micro);display:flex}.exercise-metric b{color:var(--green);font-weight:var(--fw-semibold)}.exercise-card-add{width:100%;height:30px;margin-top:var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);color:var(--green);font-size:var(--fz-caption);font-weight:var(--fw-strong)}.exercise-card-add:hover{border-color:var(--green);background:var(--green-soft)}.live-page{max-width:980px;margin:0 auto}.live-top{justify-content:space-between;align-items:center;gap:var(--sp-6);margin-bottom:var(--sp-6);display:flex}.live-clock{align-items:center;gap:var(--sp-6);display:flex}.live-clock b{font:var(--fw-semibold) var(--fz-page) var(--mono)}.live-progress{border-radius:var(--rad-xs);background:var(--surface-2);height:6px;margin-bottom:var(--sp-7);overflow:hidden}.live-progress i{border-radius:inherit;background:linear-gradient(90deg,var(--green),var(--brand));height:100%;transition:width var(--dur-normal);display:block}.live-layout{gap:var(--sp-7);grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);display:grid}.live-current{padding:23px}.live-step-label{color:var(--dim);font-size:var(--fz-caption);justify-content:space-between;align-items:center;display:flex}.live-current h2{margin-top:var(--sp-6);font-size:var(--fz-display)}.live-current>p{margin-top:var(--sp-2);color:var(--muted);font-size:var(--fz-small)}.live-prescription{gap:var(--sp-4);margin:var(--sp-8) 0;grid-template-columns:repeat(4,1fr);display:grid}.live-prescription div{padding:var(--sp-5);border-radius:var(--rad-md);background:var(--surface-2)}.live-prescription b{font:var(--fw-semibold) var(--fz-body) var(--mono);display:block}.live-prescription span{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-micro);display:block}.live-set-list{gap:var(--sp-4);display:grid}.live-set{align-items:center;gap:var(--sp-4);padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);grid-template-columns:30px 1fr 1fr 1fr auto;display:grid}.live-set.done{border-color:color-mix(in srgb,var(--green) 35%,var(--line));background:var(--green-soft)}.live-set>span:first-child{border-radius:var(--rad-sm);background:var(--surface-2);width:27px;height:27px;font:var(--fw-strong) var(--fz-micro) var(--mono);place-items:center;display:grid}.live-set label{color:var(--dim);font-size:var(--fz-micro)}.live-set b{font:var(--fw-semibold) var(--fz-caption) var(--mono);display:block}.live-set button{border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);height:31px;padding:0 var(--sp-5);color:var(--green);font-size:var(--fz-caption);font-weight:var(--fw-strong)}.live-set.done button{background:var(--green);border-color:var(--green);color:#fff}.live-quick-actions{gap:var(--sp-3);margin-top:var(--sp-6);grid-template-columns:repeat(4,1fr);display:grid}.live-quick-actions button{border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);min-height:36px;font-size:var(--fz-caption);font-weight:var(--fw-semibold)}.live-quick-actions button:hover{background:var(--surface-2)}.live-side{gap:var(--sp-6);display:grid}.live-rest{padding:var(--sp-8);text-align:center}.rest-time{margin:var(--sp-6) 0;font:var(--fw-strong) calc(38px * var(--fs))/1 var(--mono);letter-spacing:-.07em}.rest-actions{justify-content:center;gap:var(--gap-tight);display:flex}.rest-actions button{border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);height:30px;padding:0 var(--sp-5);font-size:var(--fz-caption)}.live-next{padding:var(--sp-7)}.live-next-exercise{align-items:center;gap:var(--sp-5);padding:var(--sp-5);border-radius:var(--rad-md);background:var(--surface-2);margin-top:var(--sp-5);display:flex}.live-next-exercise b{font-size:var(--fz-label);display:block}.live-next-exercise small{color:var(--dim);font-size:var(--fz-micro)}.live-bottom-actions{gap:var(--sp-4);margin-top:var(--sp-7);display:flex}.live-bottom-actions .btn{flex:1}.compare-summary{gap:var(--sp-5);margin-bottom:var(--sp-7);grid-template-columns:repeat(4,1fr);display:grid}.compare-kpi{padding:var(--sp-7)}.compare-kpi b{margin-top:var(--sp-5);font:var(--fw-semibold) var(--fz-page) var(--mono);display:block}.compare-kpi span{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-caption);display:block}.plan-fact-layout{gap:var(--sp-7);grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);display:grid}.compare-table-card{overflow:hidden}.compare-toolbar{justify-content:space-between;align-items:center;gap:var(--sp-5);padding:var(--sp-7) var(--sp-7);border-bottom:1px solid var(--line);display:flex}.compare-toggle{gap:var(--sp-2);padding:var(--sp-2);border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface-2);display:flex}.compare-toggle button{border-radius:var(--rad-xs);height:27px;padding:0 var(--sp-4);color:var(--muted);font-size:var(--fz-caption);background:0 0;border:0}.compare-toggle button.on{background:var(--surface);color:var(--ink)}.plan-fact-table{border-collapse:collapse;width:100%}.plan-fact-table th{text-align:left;padding:var(--sp-5) var(--sp-6);background:var(--surface-2);color:var(--dim);font-size:var(--fz-micro);text-transform:uppercase;letter-spacing:var(--ls-caps)}.plan-fact-table td{padding:var(--sp-6);border-top:1px solid var(--line);vertical-align:top;font-size:var(--fz-label)}.plan-fact-table b{font-size:var(--fz-label);display:block}.plan-fact-table small{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-micro);display:block}.fact-delta{margin-top:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-radius:var(--rad-xs);background:var(--green-soft);color:var(--green);font-size:var(--fz-micro);font-weight:var(--fw-strong);display:inline-flex}.fact-delta.warn{background:var(--amber-soft);color:var(--amber)}.fact-delta.risk{background:var(--red-soft);color:var(--red)}.compare-insight{padding:var(--sp-8);background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--green-soft) 35%,var(--surface)))}.compare-insight h3{font-size:calc(18px * var(--fs))}.compare-insight>p{margin-top:var(--sp-4);color:var(--muted);font-size:var(--fz-small);line-height:1.55}.compare-decision{margin-top:var(--sp-7);padding:var(--sp-6);border:1px solid color-mix(in srgb,var(--green) 28%,var(--line));border-radius:var(--rad-md);background:var(--surface)}.compare-decision b{font-size:var(--fz-label)}.compare-decision p{margin-top:var(--sp-2);color:var(--muted);font-size:var(--fz-caption);line-height:1.45}dialog{color:var(--ink);background:0 0;border:0;max-width:calc(100vw - 26px);padding:0}dialog::backdrop{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#050e0a80}.modal{border:1px solid var(--line);border-radius:var(--rad-xl);background:var(--surface);width:700px;max-width:100%;box-shadow:var(--elev-overlay);animation:modalIn var(--dur-normal) ease;overflow:hidden}@keyframes modalIn{0%{opacity:0;transform:translateY(10px)scale(.985)}to{opacity:1;transform:none}}.modal-head{padding:var(--sp-8) var(--sp-8);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;display:flex}.modal-head h3{font-size:calc(17px * var(--fs))}.modal-body{padding:var(--sp-8) var(--sp-8)}.modal-foot{justify-content:flex-end;gap:var(--sp-4);padding:var(--sp-7) var(--sp-8);border-top:1px solid var(--line);background:var(--surface-2);display:flex}.catalog-tools{gap:var(--sp-4);margin-bottom:var(--sp-7);display:flex}.field-input{border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface-2);width:100%;height:41px;padding:0 var(--sp-6);font-size:var(--fz-compact)}.catalog-filters{gap:var(--sp-2);margin-bottom:var(--sp-7);display:flex;overflow:auto}.catalog-filters button{height:30px;padding:0 var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);color:var(--muted);font-size:var(--fz-label);white-space:nowrap}.catalog-filters button.on{background:var(--green-soft);border-color:color-mix(in srgb,var(--green) 25%,var(--line));color:var(--green)}.activity-grid{gap:var(--sp-5);grid-template-columns:repeat(3,1fr);max-height:420px;display:grid;overflow:auto}.activity{align-items:center;gap:var(--sp-5);padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);text-align:left;display:flex}.activity:hover{border-color:var(--line-2);background:var(--surface-2)}.activity .activity-badge{border-radius:var(--rad-md);width:35px;height:35px}.activity b{font-size:var(--fz-small);display:block}.activity small{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-caption);display:block}.form-grid{gap:var(--sp-6);grid-template-columns:1fr 1fr;display:grid}.field{gap:var(--sp-3);display:grid}.field.full{grid-column:1/-1}.field label{font-size:var(--fz-label);color:var(--muted);font-weight:var(--fw-semibold)}.field textarea{resize:vertical;min-height:84px;padding:var(--sp-5) var(--sp-6)}.selected-activity{align-items:center;gap:var(--sp-5);padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface-2);margin-bottom:var(--sp-7);display:flex}.toast-wrap{z-index:100;gap:var(--sp-4);display:grid;position:fixed;bottom:22px;right:22px}.toast{align-items:center;gap:var(--sp-5);min-width:280px;max-width:370px;padding:var(--sp-6) var(--sp-7);border:1px solid var(--nav-line);border-radius:var(--rad-md);color:#f2f7f4;box-shadow:var(--elev-overlay);animation:toastIn var(--dur-normal) ease;background:#152b22;display:flex}.toast:before{content:"✓";border-radius:var(--rad-circle);background:var(--brand);width:22px;height:22px;color:var(--brand-ink);font-weight:var(--fw-heavy);font-size:var(--fz-label);place-items:center;display:grid}.toast.out{opacity:0;transition:var(--dur-normal);transform:translateY(7px)}@keyframes toastIn{0%{opacity:0;transform:translateY(8px)}}.bottom-nav{display:none}@media (width<=1080px){.app{grid-template-columns:230px minmax(0,1fr)}.content{padding-left:var(--sp-8);padding-right:var(--sp-8)}.search{justify-content:center;width:40px;padding:0}.search span,.search kbd{display:none}.session-summary,.zone-layout{grid-template-columns:1fr}.training-stats{grid-template-columns:1fr 1fr}.nutrition-lead{grid-template-columns:1fr}.experiment-lead .page-actions{margin-top:var(--sp-8);position:static}.schedule-layout{grid-template-columns:1fr}.schedule-list{border-right:0;border-bottom:1px solid var(--line)}.schedule-detail{min-height:400px}.registry-summary{grid-template-columns:repeat(3,1fr)}.registry-toolbar{flex-wrap:wrap}.registry-search{min-width:220px;max-width:none}.weekly-work{grid-template-columns:1fr}.week-overview{grid-template-columns:1fr 1fr}}@media (width<=860px){body{background:var(--canvas)}.app{min-height:100vh;box-shadow:none;border:0;border-radius:0;margin:0;display:block}.side{display:none}.topbar{min-height:67px;padding:var(--sp-5) var(--sp-7)}.content{padding:20px 15px 90px}.grid-main,.grid-2,.health-lead,.nutrition-lead{grid-template-columns:1fr}.stat-grid{grid-template-columns:1fr 1fr}.bottom-nav{z-index:15;padding:7px 8px calc(7px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface) 92%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav button{color:var(--dim);font-size:var(--fz-caption);font-weight:var(--fw-strong);place-items:center;gap:var(--sp-1);background:0 0;border:0;display:grid}.bottom-nav button span{font:var(--fw-strong) var(--fz-small) var(--mono)}.bottom-nav button.on{color:var(--green)}}@media (width<=600px){h2{font-size:calc(23px * var(--fs))}.page-head{align-items:flex-start}.focus-hero{min-height:292px;padding:var(--sp-8)}.focus-hero h2{font-size:calc(23px * var(--fs))}.focus-bottom{align-items:flex-end;bottom:20px;left:21px;right:21px}.facepile small{display:none}.readiness{min-height:210px}.signal{grid-template-columns:auto minmax(0,1fr)}.signal-actions{grid-column:2}.client-hero{align-items:flex-start}.training-stats{grid-template-columns:1fr 1fr}.week{padding-right:var(--sp-7);margin-right:-15px}.session-kpis{grid-template-columns:1fr 1fr}.session-summary,.zone-layout{gap:var(--sp-6)}.wod-score{grid-template-columns:1fr 1fr}.activity-teaser{grid-template-columns:1fr}.activity-grid{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.subnav{width:100%;top:67px}.toast-wrap{bottom:76px;left:13px;right:13px}.toast{min-width:0;max-width:none}.macro-grid{grid-template-columns:1fr 1fr}.meal{grid-template-columns:42px 32px minmax(0,1fr)}.meal-energy{text-align:left;grid-column:3}.experiment-metrics,.template-grid{grid-template-columns:1fr}.experiment-method{grid-template-columns:1fr 1fr}.experiment-lead h2{font-size:calc(22px * var(--fs))}.today-head{align-items:flex-start}.day-nav{display:none}.week-nav{justify-content:space-between;width:100%;display:flex}.week-nav .day-current{flex:1}.day-strip{grid-template-columns:1fr 1fr}.today-work{grid-template-columns:1fr}.schedule-list{padding-left:var(--sp-4);padding-right:var(--sp-4)}.schedule-item{gap:var(--sp-4);grid-template-columns:48px 3px minmax(0,1fr)}.schedule-block{grid-template-columns:auto minmax(0,1fr)}.schedule-meta{text-align:left;gap:var(--sp-4);grid-column:2;display:flex}.focus-block{margin-left:68px}.schedule-detail{padding:var(--sp-7)}.deviation{grid-template-columns:4px 34px minmax(0,1fr)}.deviation-actions{grid-column:3}.task-toolbar{display:grid}.portfolio-groups{grid-template-columns:1fr}.detail-summary,.registry-summary{grid-template-columns:1fr 1fr}.registry-tabs{width:100%;overflow:auto}.registry-tabs button{flex:1}.registry-search{min-width:100%}.registry-select{flex:1}.registry-footer{flex-direction:column;align-items:flex-start}.registry-legend{flex-wrap:wrap}.week-overview{grid-template-columns:1fr 1fr}.weekly-calendar{border-radius:0;margin-left:-15px;margin-right:-15px}.weekly-calendar-head{padding-left:var(--sp-7);padding-right:var(--sp-7)}.weekly-item{grid-template-columns:4px 34px minmax(0,1fr)}.weekly-item-actions{grid-column:3}.weekly-day{min-height:410px}}@media (width<=390px){.stat-grid,.training-stats,.activity-grid{grid-template-columns:1fr}.topbar h1{font-size:calc(17px * var(--fs))}.crumb,.icon-btn:first-of-type{display:none}}@media (width<=1180px){.client-overview-grid,.body-main-grid{grid-template-columns:1fr}.overview-metrics{grid-template-columns:repeat(3,1fr)}.body-side{grid-template-rows:auto;grid-template-columns:1fr 1fr}}@media (width<=720px){.overview-metrics{grid-template-columns:1fr 1fr}.overview-lower,.body-side{grid-template-columns:1fr}.body-chart-card{min-height:0}.body-chart-wrap{min-height:210px}}@media (width<=430px){.overview-metrics{grid-template-columns:1fr}.overview-metric{min-height:160px}.body-chart-card,.body-panel,.photo-progress{padding:var(--pad-card-sm)}.photo-scroll{grid-auto-columns:115px}.client-page-nav{margin-left:-4px;margin-right:-4px}}@media (width<=1200px){.builder-shell{grid-template-columns:1fr}.builder-library{max-height:none;position:static}.builder-library-list{grid-template-columns:1fr 1fr;max-height:none}.plan-fact-layout{grid-template-columns:1fr}.activity-schema-grid{grid-template-columns:1fr 1fr}}@media (width<=860px){.quick-sources{grid-template-columns:1fr 1fr}.library-layout{grid-template-columns:1fr}.library-sidebar{gap:var(--sp-2);display:flex;position:static;overflow:auto}.library-sidebar button{flex:none;width:auto}.exercise-grid{grid-template-columns:1fr 1fr}.live-layout{grid-template-columns:1fr}.compare-summary{grid-template-columns:1fr 1fr}.workflow-head{display:grid}.workflow-actions{justify-content:flex-start}}.live-set-help{justify-content:space-between;align-items:flex-end;gap:var(--sp-6);margin:0 0 var(--sp-4);padding:0 var(--sp-1);display:flex}.live-set-help b{font-size:var(--fz-label)}.live-set-help span{color:var(--dim);font-size:var(--fz-micro);text-align:right}.live-set-field{gap:var(--sp-2);min-width:0;display:grid}.live-set-field>span{color:var(--dim);font-size:var(--fz-micro);font-weight:var(--fw-strong);letter-spacing:var(--ls-wide)}.live-set-input-wrap{position:relative}.live-set-input{border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);width:100%;height:34px;padding:0 var(--sp-5);color:var(--ink);font:var(--fw-semibold) var(--fz-label) var(--mono);transition:border-color var(--dur-fast),box-shadow var(--dur-fast),background var(--dur-fast);outline:0}.live-set-input:hover{border-color:var(--line-strong)}.live-set-input:focus{border-color:var(--green);box-shadow:0 0 0 3px color-mix(in srgb,var(--green) 13%,transparent);background:#fff}.live-set-input-wrap .live-set-input{padding-right:25px}.live-set-unit{color:var(--dim);font:var(--fw-medium) var(--fz-micro) var(--sans);pointer-events:none;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.live-set button{height:34px;padding:0 var(--sp-5)}.exercise-card-history{width:100%;height:29px;margin-top:var(--sp-4);border-radius:var(--rad-sm);background:var(--surface-2);color:var(--muted);font-size:var(--fz-micro);font-weight:var(--fw-semibold);border:0}.exercise-card-history:hover{background:var(--green-soft);color:var(--green)}.exercise-history-inline{align-items:center;gap:var(--sp-4);padding:var(--sp-5);border:1px solid color-mix(in srgb,var(--green) 22%,var(--line));border-radius:var(--rad-md);background:color-mix(in srgb,var(--green-soft) 38%,var(--surface));grid-template-columns:minmax(170px,1.4fr) repeat(3,minmax(74px,.65fr)) auto;margin:-5px 0 17px;display:grid}.exercise-history-inline>div{min-width:0;padding-right:var(--sp-4);border-right:1px solid var(--line)}.exercise-history-inline>div:nth-child(4){border-right:0}.exercise-history-inline span,.exercise-history-inline small{color:var(--dim);font-size:var(--fz-micro);display:block}.exercise-history-inline b{margin:var(--sp-2) 0 var(--sp-1);font:var(--fw-semibold) var(--fz-label) var(--mono);display:block}.exercise-history-inline button{border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);height:31px;padding:0 var(--sp-5);color:var(--green);font-size:var(--fz-micro);font-weight:var(--fw-strong)}.exercise-history-empty{justify-content:space-between;align-items:center;gap:var(--sp-6);padding:var(--sp-5) var(--sp-6);border-radius:var(--rad-md);background:var(--surface-2);margin:-5px 0 17px;display:flex}.exercise-history-empty b{font-size:var(--fz-label)}.exercise-history-empty span{color:var(--dim);font-size:var(--fz-micro)}.live-set-kind .live-set-input{font-family:var(--font);font-size:var(--fz-caption)}.add-live-set{width:100%;height:38px;margin-top:var(--sp-4);border:1px dashed color-mix(in srgb,var(--green) 55%,var(--line));border-radius:var(--rad-md);background:color-mix(in srgb,var(--green-soft) 34%,var(--surface));color:var(--green);font-size:var(--fz-caption);font-weight:var(--fw-bold)}.add-live-set:hover{background:var(--green-soft);border-style:solid}.exercise-progress-grid{gap:var(--sp-5);grid-template-columns:repeat(3,1fr);display:grid}.exercise-progress-card{padding:var(--pad-card-sm);text-align:left}.exercise-progress-card:hover{border-color:var(--line-2);transform:translateY(-1px)}.exercise-progress-card h4{margin-top:var(--sp-6);font-size:var(--fz-compact)}.exercise-progress-card>p{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-caption)}.exercise-progress-card .mini-spark{height:56px;margin:var(--sp-6) 0 var(--sp-3)}.exercise-progress-meta{gap:var(--sp-4);padding-top:var(--sp-5);border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.exercise-progress-meta span{color:var(--dim);font-size:var(--fz-micro)}.exercise-progress-meta b{margin-bottom:var(--sp-1);color:var(--ink);font:var(--fw-semibold) var(--fz-label) var(--mono);display:block}.exercise-progress-kpis{gap:var(--sp-5);margin-bottom:var(--sp-7);grid-template-columns:repeat(4,1fr);display:grid}.exercise-progress-kpis .card{padding:var(--sp-7)}.exercise-progress-kpis span,.exercise-progress-kpis small{color:var(--dim);font-size:var(--fz-micro);display:block}.exercise-progress-kpis b{margin:var(--sp-4) 0 var(--sp-2);font:var(--fw-semibold) calc(18px * var(--fs)) var(--mono);display:block}.exercise-progress-layout{gap:var(--sp-7);grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);display:grid}.progress-chart-card,.progress-history-card{padding:var(--pad-card)}.progress-insight{gap:var(--sp-5);margin-top:var(--sp-6);padding:var(--sp-6);border-radius:var(--rad-md);background:var(--green-soft);grid-template-columns:32px 1fr;align-items:start;display:grid}.progress-insight p{color:var(--muted);font-size:var(--fz-caption);line-height:1.5}.progress-session-list{display:grid}.progress-session{gap:var(--sp-2) var(--sp-5);padding:var(--sp-5) 0;border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;display:grid}.progress-session:first-child{border-top:0}.progress-session div b,.progress-session div span{display:block}.progress-session div b{font-size:var(--fz-caption)}.progress-session div span,.progress-session small{color:var(--dim);font-size:var(--fz-micro)}.progress-session strong{font:var(--fw-semibold) var(--fz-label) var(--mono)}.progress-session small{grid-column:1/-1}@media (width<=600px){.builder-meta,.builder-summary{grid-template-columns:1fr 1fr}.builder-library-list{grid-template-columns:1fr}.builder-exercise{grid-template-columns:29px minmax(0,1fr) auto}.builder-target{text-align:left;grid-column:2}.exercise-grid{grid-template-columns:1fr}.live-prescription{grid-template-columns:1fr 1fr}.live-set{grid-template-columns:28px 1fr 1fr auto}.live-set label:nth-of-type(3){grid-column:2}.live-quick-actions{grid-template-columns:1fr 1fr}.plan-fact-table{min-width:720px}.compare-table-card{overflow:auto}.quick-workout-modal .modal-foot{flex-wrap:wrap}.quick-workout-modal .modal-foot .btn{flex:1}.activity-schema-grid{grid-template-columns:1fr 1fr}.live-current{padding:var(--sp-7)}.live-current h2{font-size:calc(23px * var(--fs))}}@media (width<=390px){.quick-sources,.activity-schema-grid,.builder-meta,.compare-summary{grid-template-columns:1fr}.live-bottom-actions{display:grid}.live-set{grid-template-columns:28px 1fr auto}.live-set label:nth-of-type(2),.live-set label:nth-of-type(3){grid-column:2}}@media (width<=1000px){.exercise-history-inline{grid-template-columns:1fr 1fr 1fr}.exercise-history-inline>div:first-child,.exercise-history-inline button{grid-column:1/-1}.exercise-progress-layout{grid-template-columns:1fr}}@media (width<=860px){.exercise-progress-grid,.exercise-progress-kpis{grid-template-columns:1fr 1fr}}@media (width<=600px){.exercise-progress-grid,.exercise-progress-kpis{grid-template-columns:1fr}.exercise-history-inline{grid-template-columns:1fr 1fr}.exercise-history-inline>div:first-child,.exercise-history-inline button{grid-column:1/-1}.exercise-history-inline>div{border-right:0}.live-set{grid-template-columns:28px minmax(0,1fr) minmax(0,1fr)}.live-set>span:first-child{grid-row:1/4}.live-set label{grid-column:auto!important}.live-set .live-set-kind{grid-column:2/-1!important}.live-set label:nth-of-type(2){grid-column:2!important}.live-set label:nth-of-type(3){grid-column:3!important}.live-set label:nth-of-type(4){grid-column:2!important}.live-set button{grid-column:3;width:100%}.live-set-help{align-items:flex-start;gap:var(--sp-2);flex-direction:column}.live-set-help span{text-align:left}}.labs-note{align-items:center;gap:var(--sp-5);margin-bottom:var(--sp-7);padding:var(--sp-6) var(--sp-7);border:1px solid color-mix(in srgb,var(--green) 26%,var(--line));border-radius:var(--rad-md);background:color-mix(in srgb,var(--green-soft) 48%,var(--surface));color:var(--muted);font-size:var(--fz-label);line-height:1.45;display:flex}.labs-note>span{border-radius:var(--rad-circle);width:22px;height:22px;color:var(--green);font:var(--fw-bold) var(--fz-caption) var(--mono);border:1px solid;flex:none;place-items:center;display:grid}.labs-table-card{overflow:hidden}.labs-table-head{padding:var(--sp-7) var(--sp-8) var(--sp-5)}.labs-table-head h3{font-size:var(--fz-body)}.labs-table-wrap{overflow:auto}.labs-table{border-collapse:collapse;width:100%;min-width:940px}.labs-table th{padding:var(--sp-5) var(--sp-6);text-align:left;background:var(--surface-2);color:var(--dim);font-size:var(--fz-micro);font-weight:var(--fw-bold);letter-spacing:var(--ls-caps);text-transform:uppercase}.labs-table td{padding:var(--sp-6);border-top:1px solid var(--line);vertical-align:middle;font-size:var(--fz-label)}.labs-biomarker b{font-size:var(--fz-label);display:block}.labs-biomarker small{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-micro);display:block}.labs-value b{font:var(--fw-semibold) var(--fz-compact) var(--mono)}.labs-value small{margin-left:var(--sp-2);color:var(--dim);font-size:var(--fz-micro)}.labs-value.risk b{color:var(--red)}.labs-value.warn b{color:var(--amber)}.labs-value.good b{color:var(--green)}.lab-range{border-radius:var(--rad-xs);background:linear-gradient(90deg,var(--red-soft),var(--green-soft) 21%,var(--green-soft) 79%,var(--red-soft));min-width:250px;height:26px;position:relative}.lab-range:before,.lab-range:after{content:"";background:color-mix(in srgb,var(--green) 32%,transparent);width:1px;position:absolute;top:0;bottom:0}.lab-range:before{left:20%}.lab-range:after{left:80%}.lab-range .current{border-radius:var(--rad-2xs);background:var(--green);width:3px;box-shadow:0 0 0 3px var(--surface);z-index:2;position:absolute;top:-4px;bottom:-4px}.lab-range .current.risk{background:var(--red)}.lab-range .current.warn{background:var(--amber)}.lab-range .history-dot{border:2px solid var(--surface);border-radius:var(--rad-circle);background:var(--muted);opacity:.5;width:8px;height:8px;position:absolute;top:50%;transform:translate(-50%,-50%)}.lab-range .history-dot.recent{opacity:.72;width:9px;height:9px}.lab-reference>small{margin-top:var(--sp-2);color:var(--dim);font:var(--fz-micro) var(--mono);display:block}.lab-marker-legend{gap:var(--sp-5);margin-top:var(--sp-2);flex-wrap:wrap;display:flex}.lab-marker-legend span{align-items:center;gap:var(--sp-2);color:var(--dim);font:var(--fz-micro) var(--mono);display:flex}.lab-marker-legend span:before{content:"";border-radius:var(--rad-circle);background:var(--muted);opacity:.55;width:5px;height:5px}.lab-marker-legend b{color:var(--ink);font-weight:var(--fw-strong)}.lab-status{padding:var(--sp-2) var(--sp-4);border-radius:var(--rad-pill);font-size:var(--fz-micro);font-weight:var(--fw-bold);white-space:nowrap;display:inline-flex}.lab-status.good{background:var(--green-soft);color:var(--green)}.lab-status.warn{background:var(--amber-soft);color:var(--amber)}.lab-status.risk{background:var(--red-soft);color:var(--red)}.lab-delta{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);border-radius:var(--rad-sm);font-size:var(--fz-micro);font-weight:var(--fw-bold);white-space:nowrap;display:inline-flex}.lab-delta.better{background:var(--green-soft);color:var(--green)}.lab-delta.worse{background:var(--red-soft);color:var(--red)}.lab-delta.stable{background:var(--surface-2);color:var(--muted)}.lab-dynamics small{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-micro);display:block}.labs-trends{gap:var(--sp-7);margin-top:var(--sp-7);grid-template-columns:1fr 1fr;display:grid}.lab-trend-card{padding:var(--pad-card)}.lab-trend-card .chart{height:150px}.lab-trend-foot{justify-content:space-between;align-items:center;gap:var(--sp-4);margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-micro);display:flex}.labs-disclaimer{margin-top:var(--sp-7);padding:var(--sp-5) var(--sp-6);border-radius:var(--rad-md);background:var(--surface-2);color:var(--dim);font-size:var(--fz-caption);line-height:1.5}@media (width<=720px){.labs-trends{grid-template-columns:1fr}.labs-note{align-items:flex-start}}@media (width<=860px){body{overflow-x:hidden}.app{min-height:100dvh}.topbar{padding-top:calc(10px + env(safe-area-inset-top))}.bottom-nav{gap:var(--sp-2);grid-template-columns:repeat(4,1fr);display:grid}.bottom-nav button{border-radius:var(--rad-md);min-height:48px;font-size:var(--fz-label);touch-action:manipulation}.bottom-nav button span{font-size:var(--fz-compact)}.bottom-nav button.on{background:var(--green-soft);color:var(--green)}}@media (width<=600px){.content{padding:16px 12px calc(92px + env(safe-area-inset-bottom))}.topbar{min-height:64px;padding-left:var(--sp-6);padding-right:var(--sp-6)}.top-actions{gap:var(--gap-tight)}.topbar .search,.topbar .icon-btn{width:40px;height:40px}.page-head,.today-head{gap:var(--sp-6);display:grid}.page-head{margin-bottom:var(--sp-7)}.card{border-radius:var(--rad-lg)}.btn,.icon-btn{min-height:42px}.client-page-nav{z-index:8;padding:var(--sp-4) var(--sp-6);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--canvas) 94%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);margin:-4px -12px 16px;position:sticky;top:64px}.client-page-nav button{height:38px;padding:0 var(--sp-6)}.weekly-calendar-scroll{scroll-snap-type:x mandatory;scroll-padding-left:12px}.weekly-grid{min-width:max-content;display:flex}.weekly-day{scroll-snap-align:start;flex:none;width:84vw;min-height:390px}.weekly-calendar-head{align-items:flex-start}.weekly-calendar-head .page-actions{display:flex}.registry-card{box-shadow:none;background:0 0;border:0;overflow:visible}.registry-toolbar{margin-bottom:var(--sp-5);padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-lg);background:var(--surface);box-shadow:var(--elev-flat)}.registry-table-wrap{overflow:visible}.registry-table,.registry-table tbody,.registry-table tr,.registry-table td{width:100%;min-width:0;display:block}.registry-table thead{display:none}.registry-table tbody{gap:var(--sp-5);display:grid}.registry-table tbody tr{padding:var(--sp-2) var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-lg);background:var(--surface);box-shadow:var(--elev-flat)}.registry-table tbody tr:hover{background:var(--surface)}.registry-table td{padding:var(--sp-5) 0;border-top:1px solid var(--line)}.registry-table td:first-child{border-top:0}.registry-table td:nth-child(n+2):nth-child(-n+7){align-items:start;gap:var(--sp-5);grid-template-columns:104px minmax(0,1fr);display:grid}.registry-table td:nth-child(n+2):nth-child(-n+7):before{color:var(--dim);font-size:var(--fz-micro);font-weight:var(--fw-strong);letter-spacing:var(--ls-wide);text-transform:uppercase}.registry-table td:nth-child(2):before{content:"Статус"}.registry-table td:nth-child(3):before{content:"Цель"}.registry-table td:nth-child(4):before{content:"Оплата"}.registry-table td:nth-child(5):before{content:"Рекомендации"}.registry-table td:nth-child(6):before{content:"Календарь"}.registry-table td:nth-child(7):before{content:"Следующая"}.registry-person{min-width:0}.registry-person-button small{line-height:1.4}.goal-cell,.finance-cell,.score-cell,.reliability-cell,.next-session{min-width:0}.registry-table td:last-child{padding-bottom:var(--sp-5)}.registry-table .row-menu{width:100%;height:40px}.registry-footer{margin-top:var(--sp-5);padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface)}.labs-table-card{box-shadow:none;background:0 0;border:0;overflow:visible}.labs-table-head{margin-bottom:var(--sp-5);padding:var(--pad-card-sm);border:1px solid var(--line);border-radius:var(--rad-lg);background:var(--surface)}.labs-table-wrap{overflow:visible}.labs-table,.labs-table tbody,.labs-table tr,.labs-table td{width:100%;min-width:0;display:block}.labs-table thead{display:none}.labs-table tbody{gap:var(--sp-5);display:grid}.labs-table tr{padding:var(--sp-2) var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-lg);background:var(--surface);box-shadow:var(--elev-flat)}.labs-table td{padding:var(--sp-5) 0;border-top:1px solid var(--line)}.labs-table td:first-child{border-top:0}.labs-table td:nth-child(2):before,.labs-table td:nth-child(3):before,.labs-table td:nth-child(4):before,.labs-table td:nth-child(5):before{margin-bottom:var(--sp-3);color:var(--dim);font-size:var(--fz-micro);font-weight:var(--fw-strong);letter-spacing:var(--ls-wide);text-transform:uppercase;display:block}.labs-table td:nth-child(2):before{content:"Текущий результат"}.labs-table td:nth-child(3):before{content:"История и референс"}.labs-table td:nth-child(4):before{content:"Статус"}.labs-table td:nth-child(5):before{content:"Изменение"}.lab-range{width:100%;min-width:0}.lab-marker-legend{gap:var(--sp-4)}.modal{border-radius:var(--rad-xl);max-height:calc(100dvh - 16px)}.modal-head{padding:var(--pad-card-sm)}.modal-body{max-height:calc(100dvh - 145px);padding:var(--sp-7);overflow:auto}.modal-foot{padding:12px 15px calc(12px + env(safe-area-inset-bottom))}.quick-workout-modal{width:100%}}@media (pointer:coarse){button,.btn,.icon-btn,input,select{touch-action:manipulation}.nav button,.client-page-nav button,.catalog-filters button{min-height:40px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.view,.modal,.toast,.zone-bar i{animation:none!important}*{transition:none!important}}:root{--pad-x:29px;--topbar-h:62px;--fs:1}@media (width<=1080px){:root{--pad-x:22px}}@media (width<=860px){:root{--pad-x:15px;--topbar-h:calc(60px + env(safe-area-inset-top));--fs:1.1}}@media (width<=600px){:root{--pad-x:12px;--topbar-h:calc(58px + env(safe-area-inset-top));--fs:1.18}}.content{padding-left:var(--pad-x);padding-right:var(--pad-x)}.subnav{top:var(--topbar-h)}@media (width<=600px){.client-page-nav{top:var(--topbar-h)}.weekly-calendar{margin-left:calc(-1*var(--pad-x));margin-right:calc(-1*var(--pad-x))}.weekly-calendar-head{padding-left:var(--pad-x);padding-right:var(--pad-x)}.week{margin-right:calc(-1*var(--pad-x));padding-right:var(--pad-x)}.weekly-calendar-scroll{scroll-padding-left:var(--pad-x)}}@media (width<=1080px){.search:before{content:"⌕";font:var(--fw-regular) 19px/1 var(--font);color:var(--muted)}}@media (width<=860px){input,select,textarea,.field-input,.registry-select{font-size:16px}.field-input{height:46px}.registry-select{height:44px}}@media (width<=600px){.chart-label{font-size:19px}.body-chart-label{font-size:20px}.chart-wrap{min-height:150px}}@media (width<=860px){body{overflow-x:clip}}@media (width<=600px){.toast-wrap{bottom:calc(80px + env(safe-area-inset-bottom))}}@media (width<=860px){.client-page-nav,.subnav,.task-filters,.builder-filter-row,.library-sidebar,.registry-tabs{scroll-snap-type:x proximity;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000)}.client-page-nav>button,.subnav>button,.task-filters>button{scroll-snap-align:start}.week{scroll-snap-type:x proximity;grid-template-columns:repeat(7,minmax(132px,1fr))}.week .day{scroll-snap-align:start}}@media (width<=600px){.page-head .page-actions,.client-hero .page-actions{gap:var(--sp-4);flex-wrap:wrap;width:100%;display:flex;position:static}.page-head .page-actions .btn,.client-hero .page-actions .btn{flex:auto;min-height:44px}.client-hero{align-items:center;gap:var(--sp-6);flex-wrap:wrap}.client-hero>.avatar{flex:none;width:44px;height:44px;font-size:13px}.client-hero>div{flex:180px;min-width:0}.client-hero .page-actions{flex:1 0 100%;order:3;margin-left:0}.topbar .btn.primary{border-radius:var(--rad-md);place-items:center;width:40px;min-width:40px;height:40px;padding:0;font-size:0;display:grid}.topbar .btn.primary:before{content:"+";font:var(--fw-medium) 21px/1 var(--font)}.grid-3,.mini-metrics,.exercise-progress-meta{grid-template-columns:1fr 1fr}.circumference-head,.circumference-row{grid-template-columns:minmax(0,1fr) 48px 50px}.fuel-row{row-gap:var(--sp-2);grid-template-columns:minmax(0,1fr) 54px}.compare{gap:var(--sp-4);text-align:left;grid-template-columns:1fr}}@media (width<=430px){.overview-metrics{grid-template-columns:1fr 1fr}.overview-metric{min-height:132px}}@media (width<=600px){.overview-metric-head{row-gap:var(--sp-2);flex-wrap:wrap}.overview-metric-head .pill{min-height:19px;padding:var(--sp-1) var(--sp-4);margin-left:0;font-size:9px}.overview-metric-foot{font-size:var(--fz-micro)}}@media (width<=339px){.overview-metrics{grid-template-columns:1fr}}@media (pointer:coarse){.registry-tabs button,.subnav button,.task-filters button,.builder-filter-row button,.library-sidebar button{min-height:40px}.row-menu{min-width:40px;min-height:40px}}.modal-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}@media (width<=860px){.crumb{font-size:var(--fz-label);font-weight:var(--fw-semibold);letter-spacing:var(--ls-normal);color:var(--dim);display:block}.topbar h1{display:none}.topbar{min-height:var(--topbar-h);align-items:center}.page-head,.today-head{gap:var(--sp-5);margin-bottom:var(--sp-7)}.page-head .eyebrow,.today-head .eyebrow{margin-bottom:0}.card.pad,.section{padding:var(--pad-card-sm)}.stat{min-height:auto;padding:var(--sp-7)}.card h3{margin-bottom:var(--sp-4)}.stat-grid,.training-stats{grid-template-columns:1fr 1fr}}@media (width<=600px){.topbar{min-height:var(--topbar-h)}.client-page-nav{top:var(--topbar-h)}}@media (width<=339px){.stat-grid,.training-stats{grid-template-columns:1fr}}.search-kind{margin-left:var(--sp-4);font:var(--fw-semibold) 8px var(--mono);color:var(--dim);text-transform:uppercase;letter-spacing:var(--ls-wide);font-style:normal}.search-empty{padding:var(--sp-8) var(--sp-2);color:var(--dim);font-size:var(--fz-small);text-align:center}.search-hit .signal-icon{font:var(--fw-strong) 9px var(--mono)}@media (width<=860px){.bottom-nav{grid-template-columns:repeat(5,1fr)}.bottom-nav button{position:relative}.nav-dot{border-radius:var(--rad-circle);background:var(--red);width:7px;height:7px;position:absolute;top:6px;right:calc(50% - 17px)}}.more-sheet{width:520px}.more-grid{gap:var(--sp-5);display:grid}.more-grid button{align-items:center;gap:var(--sp-6);padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);text-align:left;grid-template-columns:38px minmax(0,1fr);display:grid}.more-grid button>span{border-radius:var(--rad-md);background:var(--surface-2);width:38px;height:38px;color:var(--muted);font:var(--fw-strong) 10px var(--mono);grid-row:1/3;place-items:center;display:grid}.more-grid button b{font-size:var(--fz-compact)}.more-grid button small{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-label);display:block}.live-indicator{z-index:16;left:12px;right:12px;bottom:calc(74px + env(safe-area-inset-bottom));position:fixed}.live-indicator[hidden]{display:none}.live-indicator button{align-items:center;gap:var(--sp-5);width:100%;min-height:46px;padding:0 var(--sp-7);border:1px solid color-mix(in srgb,var(--red) 30%,var(--line));border-radius:var(--rad-md);background:var(--surface);box-shadow:var(--elev-overlay);text-align:left;display:flex}.live-indicator b{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--fz-small);flex:1;overflow:hidden}.live-indicator em{color:var(--dim);font-style:normal;font-size:var(--fz-label);flex:none}@media (width>=861px){.live-indicator{width:320px;bottom:22px;left:auto;right:22px}}body.has-live .content{padding-bottom:calc(146px + env(safe-area-inset-bottom))}.client-nav-select{display:none}@media (width<=860px){.client-page-nav{display:none}.client-nav-select{gap:var(--sp-2);padding:var(--sp-4) var(--sp-6) var(--sp-5);top:var(--topbar-h);z-index:8;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--canvas) 94%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);margin:-4px -12px 14px;display:grid;position:sticky}.client-nav-select span{color:var(--dim);font-size:var(--fz-micro);font-weight:var(--fw-strong);letter-spacing:var(--ls-caps);text-transform:uppercase}.client-nav-select select{width:100%;height:44px;padding:0 var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);color:var(--ink);font-size:16px;font-weight:var(--fw-medium)}}.collapse-toggle{display:none}@media (width<=860px){.collapse-toggle{min-height:34px;padding:0 var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface-2);color:var(--muted);font-size:10px;font-weight:var(--fw-semibold);white-space:nowrap;flex:none;align-self:flex-start;margin-left:auto;display:block}[data-collapsible].collapsed>*{display:none}[data-collapsible].collapsed>.collapsed-head{align-items:flex-start;gap:var(--sp-5);display:flex}[data-collapsible].collapsed{padding-bottom:var(--sp-7)}[data-collapsible].collapsed .collapsed-head p{display:none}}.live-top-actions{gap:var(--sp-4);flex:none;display:flex}@media (width<=600px){.live-top-actions{width:100%}.live-top-actions .btn{flex:1}}.show-more{display:none}@media (width<=860px){.show-more{width:100%;margin-top:var(--sp-6);min-height:44px;font-weight:var(--fw-semibold);display:block}.registry-footer .show-more{order:-1;margin-top:0}.registry-footer{align-items:stretch;gap:var(--sp-5);flex-direction:column}.registry-toolbar{top:var(--topbar-h);z-index:7;background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);position:sticky}.library-main .card-title{top:var(--topbar-h);z-index:7;padding:var(--sp-7);background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);margin:-14px -14px 12px;position:sticky}}.week-overview{margin:var(--sp-7) 0 0;grid-template-columns:repeat(2,minmax(0,1fr))}.week-hours-editor{align-items:center;gap:var(--sp-3);margin-top:var(--sp-4);color:var(--dim);font-size:var(--fz-caption);display:flex}.week-hours-editor label{white-space:nowrap}.week-hours-editor input{border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface-2);width:58px;height:30px;padding:0 var(--sp-4);color:var(--ink);font:var(--fw-semibold) var(--fz-label) var(--mono);text-align:center}.week-hours-editor input:focus{border-color:var(--green);outline:2px solid var(--green-soft)}.registry-table{min-width:1480px}.registry-sort-button{justify-content:space-between;align-items:center;gap:var(--sp-3);width:100%;color:inherit;text-align:left;text-transform:inherit;letter-spacing:inherit;font:inherit;white-space:nowrap;background:0 0;border:0;padding:0;display:flex}.registry-sort-button:hover,.registry-sort-button.on{color:var(--green)}.registry-sort-button i{min-width:12px;font-style:normal;font:var(--fw-bold) var(--fz-micro) var(--mono)}.registry-mobile-sorts{display:none}.result-cell{min-width:126px}.result-cell .score-track i{background:var(--blue)}.result-cell.warn .score-track i{background:var(--amber)}.result-cell.risk .score-track i{background:var(--red)}.client-score-methods{gap:var(--sp-7);margin-top:var(--sp-7);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.weekly-calendar-scroll{height:var(--weekly-viewport-height,472px);scrollbar-gutter:stable;overscroll-behavior:contain;min-height:270px;max-height:calc(100dvh - 140px);transition:height var(--dur-normal) ease;overflow:auto}.weekly-grid{grid-template-columns:54px repeat(7,minmax(154px,1fr));min-width:1180px;display:grid}.weekly-time-axis{z-index:6;border-right:1px solid var(--line);background:var(--surface);position:sticky;left:0}.weekly-time-axis-head{z-index:8;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 96%,transparent);height:72px;color:var(--dim);font:var(--fw-bold) var(--fz-micro) var(--mono);letter-spacing:var(--ls-caps);text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);place-items:center;display:grid;position:sticky;top:0}.weekly-time-track{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-2) 72%,var(--surface)) 0 400px,transparent 400px 1100px,color-mix(in srgb,var(--surface-2) 72%,var(--surface)) 1100px 1200px);height:1200px;position:relative}.weekly-time-track span{color:var(--dim);font:var(--fz-micro) var(--mono);white-space:nowrap;position:absolute;right:7px;transform:translateY(-50%)}.weekly-time-track span:first-child{transform:none}.weekly-time-track span:last-child{transform:translateY(-100%)}.weekly-day{min-height:0;padding:0 var(--sp-2) 0;border-left:1px solid var(--line)}.weekly-day-head{box-sizing:border-box;height:72px;padding:var(--sp-6) var(--sp-2) var(--sp-5)}.weekly-day-timeline{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-2) 60%,var(--surface)) 0 400px,transparent 400px 1100px,color-mix(in srgb,var(--surface-2) 60%,var(--surface)) 1100px 1200px),repeating-linear-gradient(to bottom,transparent 0 49px,var(--line) 49px 50px);height:1200px;position:relative}.weekly-day.is-today .weekly-day-timeline{background:linear-gradient(180deg,color-mix(in srgb,var(--green-soft) 58%,var(--surface)) 0 400px,color-mix(in srgb,var(--green-soft) 20%,var(--surface)) 400px 1100px,color-mix(in srgb,var(--green-soft) 58%,var(--surface)) 1100px 1200px),repeating-linear-gradient(to bottom,transparent 0 49px,var(--line) 49px 50px)}.weekly-session{z-index:3;width:auto;min-height:40px;padding:var(--sp-2) var(--sp-4);border-radius:var(--rad-sm);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;margin:0;position:absolute;left:2px;right:2px;overflow:hidden}.weekly-session:hover{z-index:5}.weekly-session.dragging{z-index:20;cursor:grabbing;pointer-events:none;opacity:.94;outline:2px solid color-mix(in srgb,var(--green) 62%,transparent);box-shadow:var(--elev-raised)}.weekly-session.dragging:after{content:attr(data-drag-label);padding:var(--sp-1) var(--sp-2);border-radius:var(--rad-xs);background:var(--ink);color:var(--surface);font:var(--fw-bold) var(--fz-micro) var(--mono);position:absolute;bottom:4px;right:5px}.weekly-session.confirmed{border-color:color-mix(in srgb,var(--green) 44%,var(--line));background:color-mix(in srgb,var(--green-soft) 72%,var(--surface));box-shadow:0 7px 18px -14px color-mix(in srgb,var(--green) 64%,transparent)}.weekly-session.other{border-color:color-mix(in srgb,var(--violet) 42%,var(--line));background:color-mix(in srgb,var(--violet-soft) 72%,var(--surface));box-shadow:0 7px 18px -14px color-mix(in srgb,var(--violet) 52%,transparent)}.weekly-session.other:before{background:var(--violet)}.weekly-session.confirmed:before{background:var(--green)}.weekly-session.pending:before{background:var(--amber)}.weekly-session-time{font-size:var(--fz-micro)}.weekly-confirmation{align-items:center;gap:var(--sp-2);color:var(--green);font:var(--fw-bold) var(--fz-micro) var(--mono);text-transform:uppercase;letter-spacing:.03em;display:inline-flex}.weekly-confirmation i{border-radius:var(--rad-circle);width:6px;height:6px;box-shadow:0 0 0 2px color-mix(in srgb,currentColor 16%,transparent);background:currentColor;flex:none}.weekly-session.pending .weekly-confirmation{color:var(--amber)}.weekly-session h4{margin-top:var(--sp-2);text-overflow:ellipsis;white-space:nowrap;font-size:var(--fz-caption);overflow:hidden}.weekly-session p{margin-top:var(--sp-1);text-overflow:ellipsis;white-space:nowrap;font-size:var(--fz-micro);overflow:hidden}.weekly-session small{display:none}.weekly-session-resize{z-index:6;cursor:ns-resize;height:8px;position:absolute;bottom:0;left:8px;right:8px}.weekly-session-resize:before{content:"";border-radius:var(--rad-2xs);background:color-mix(in srgb,var(--muted) 62%,transparent);opacity:.7;width:24px;height:2px;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}.weekly-session:hover .weekly-session-resize:before{background:var(--green);opacity:1}.weekly-day-timeline{cursor:crosshair}.weekly-now{z-index:9;border-top:2px solid var(--red);pointer-events:none;position:absolute;left:0;right:0}.weekly-now:before{content:"";border-radius:var(--rad-circle);background:var(--red);width:8px;height:8px;position:absolute;top:-5px;left:-4px}.weekly-now span{padding:var(--sp-1) var(--sp-2);border-radius:var(--rad-xs);background:var(--red);color:#fff;font:var(--fw-bold) var(--fz-micro) var(--mono);box-shadow:var(--elev-flat);position:absolute;top:-10px;right:3px}.weekly-free{z-index:2;width:auto;min-height:40px;padding:var(--sp-3);place-content:center;gap:var(--sp-1);border-color:color-mix(in srgb,var(--green) 36%,var(--line));background:color-mix(in srgb,var(--green-soft) 30%,var(--surface));color:var(--green);text-align:center;margin:0;display:grid;position:absolute;left:2px;right:2px}.weekly-free b{font-size:var(--fz-micro)}.weekly-free span{font:var(--fz-micro) var(--mono);color:var(--muted)}.weekly-calendar-head .page-actions{flex-wrap:wrap;justify-content:flex-end}.confirmation-legend{align-items:center;gap:var(--sp-2);min-height:29px;padding:0 var(--sp-5);border-radius:var(--rad-pill);font-size:var(--fz-micro);font-weight:var(--fw-strong);white-space:nowrap;display:inline-flex}.confirmation-legend i{border-radius:var(--rad-circle);background:currentColor;width:7px;height:7px}.confirmation-legend.confirmed{background:var(--green-soft);color:var(--green)}.confirmation-legend.pending{border:1px dashed color-mix(in srgb,var(--amber) 58%,var(--line));background:var(--amber-soft);color:var(--amber)}.event-type-modal{width:min(560px,100vw - 24px)}.event-type-options{gap:var(--sp-5);grid-template-columns:1fr 1fr;display:grid}.event-type-option{min-height:150px;padding:var(--sp-8);border:1px solid var(--line);border-radius:var(--rad-lg);background:var(--surface);text-align:left;transition:var(--dur-fast)}.event-type-option:hover{border-color:var(--line-2);box-shadow:var(--elev-flat);transform:translateY(-1px)}.event-type-option>span{border-radius:var(--rad-md);background:var(--green-soft);width:38px;height:38px;color:var(--green);font:var(--fw-heavy) var(--fz-label) var(--mono);place-items:center;display:grid}.event-type-option.other>span{background:var(--violet-soft);color:var(--violet)}.event-type-option b{margin-top:var(--sp-7);font-size:var(--fz-compact);display:block}.event-type-option p{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-caption);line-height:1.45}.week-context-menu{z-index:1200;width:250px;padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--rad-md);background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:var(--elev-overlay);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);position:fixed}.week-context-menu[hidden]{display:none}.week-context-head{padding:var(--sp-4) var(--sp-5) var(--sp-5);border-bottom:1px solid var(--line)}.week-context-head b,.week-context-head span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.week-context-head b{font-size:var(--fz-label)}.week-context-head span{margin-top:var(--sp-2);color:var(--dim);font:var(--fz-micro) var(--mono)}.week-context-action{width:100%;margin-top:var(--sp-2);padding:var(--sp-5);align-items:center;gap:var(--sp-4);border-radius:var(--rad-sm);text-align:left;background:0 0;border:0;grid-template-columns:27px minmax(0,1fr);display:grid}.week-context-action:hover{background:var(--green-soft)}.week-context-action>span{border-radius:var(--rad-sm);background:var(--green-soft);width:27px;height:27px;color:var(--green);font-weight:var(--fw-heavy);place-items:center;display:grid}.week-context-action b,.week-context-action small{display:block}.week-context-action b{font-size:var(--fz-label)}.week-context-action small{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-micro)}.week-context-action:disabled{cursor:default;opacity:.58}.week-context-action:disabled:hover{background:0 0}@media (width<=600px){.weekly-grid{grid-template-columns:46px repeat(7,84vw);min-width:max-content;display:grid}.weekly-day{width:auto;min-height:0;padding:0 var(--sp-2);flex:none}.weekly-time-axis-head,.weekly-day-head{height:68px}.weekly-calendar-head{display:grid}.weekly-calendar-head .page-actions{justify-content:flex-start}.week-overview{margin-top:var(--sp-6);grid-template-columns:1fr 1fr}.week-kpi{min-height:auto;padding:var(--sp-6)}.client-score-methods{grid-template-columns:1fr}.registry-mobile-sorts{gap:var(--sp-2);width:100%;padding-top:var(--sp-2);display:flex;overflow:auto}.registry-mobile-sorts button{border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);height:32px;padding:0 var(--sp-5);color:var(--muted);font-size:var(--fz-micro);font-weight:var(--fw-strong);flex:none}.registry-mobile-sorts button.on{border-color:var(--green);background:var(--green-soft);color:var(--green)}.event-type-options{grid-template-columns:1fr}.event-type-option{min-height:116px}}@media (width<=390px){.week-overview{grid-template-columns:1fr}}@media (width<=600px){.registry-table td:nth-child(n+2):nth-child(-n+9){align-items:start;gap:var(--sp-5);grid-template-columns:104px minmax(0,1fr);display:grid}.registry-table td:nth-child(3):before{content:"Цель"}.registry-table td:nth-child(4):before{content:"Срок"}.registry-table td:nth-child(5):before{content:"Финансовые условия"}.registry-table td:nth-child(6):before{content:"Следует рекомендациям"}.registry-table td:nth-child(7):before{content:"Результаты клиента"}.registry-table td:nth-child(8):before{content:"Надёжность календаря"}.registry-table td:nth-child(9):before{content:"Следующая сессия"}}.program-head{margin-bottom:var(--sp-7)}.program-stepper{gap:var(--sp-3);margin-top:var(--sp-6);flex-wrap:wrap;display:flex}.program-step{align-items:center;gap:var(--sp-4);padding:var(--sp-4) var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);color:var(--dim);font-size:var(--fz-caption);font-weight:var(--fw-strong);text-align:left;display:flex}.program-step:hover{border-color:color-mix(in srgb,var(--green) 38%,var(--line));color:var(--green);background:var(--green-soft)}.program-step span{border-radius:var(--rad-xs);background:var(--surface-2);width:20px;height:20px;font:var(--fw-bold) var(--fz-micro) var(--mono);place-items:center;display:grid}.program-step.on{border-color:color-mix(in srgb,var(--green) 34%,var(--line));background:var(--green-soft);color:var(--green)}.program-step.on span{background:var(--green);color:#fff}.cycle-setup-layout{gap:var(--sp-7);grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);align-items:start;display:grid}.cycle-setup-card,.cycle-saved-card{padding:var(--pad-card)}.cycle-setup-intro{align-items:flex-start;gap:var(--sp-5);margin-bottom:var(--sp-8);padding:var(--sp-6);border-radius:var(--rad-md);background:var(--green-soft);display:flex}.cycle-setup-intro>span{border-radius:var(--rad-sm);background:var(--surface);width:31px;height:31px;color:var(--green);font:var(--fw-bold) var(--fz-caption) var(--mono);flex:none;place-items:center;display:grid}.cycle-setup-intro p{color:var(--muted);font-size:var(--fz-label);line-height:1.5}.cycle-form-actions{margin-top:var(--sp-7);justify-content:flex-end;display:flex}.cycle-goal-note{margin-top:var(--sp-4);color:var(--dim);font-size:var(--fz-caption);line-height:1.45}.cycle-saved-list{gap:var(--sp-4);margin-top:var(--sp-6);display:grid}.cycle-saved-item{width:100%;padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);text-align:left}.cycle-saved-item:hover{border-color:color-mix(in srgb,var(--green) 34%,var(--line));background:var(--green-soft)}.cycle-saved-item b,.cycle-saved-item span,.cycle-saved-item small{display:block}.cycle-saved-item b{font-size:var(--fz-label)}.cycle-saved-item span{margin-top:var(--sp-2);color:var(--muted);font-size:var(--fz-caption);line-height:1.35}.cycle-saved-item small{margin-top:var(--sp-4);color:var(--dim);font:var(--fz-micro) var(--mono)}.cycle-context{gap:var(--sp-6);margin-bottom:var(--sp-6);padding:var(--sp-6) var(--sp-7);border:1px solid color-mix(in srgb,var(--green) 26%,var(--line));border-radius:var(--rad-md);background:color-mix(in srgb,var(--green-soft) 42%,var(--surface));grid-template-columns:minmax(0,1fr) auto;display:grid}.cycle-context b,.cycle-context span{display:block}.cycle-context b{font-size:var(--fz-small)}.cycle-context span{margin-top:var(--sp-2);color:var(--muted);font-size:var(--fz-caption)}.cycle-context small{color:var(--dim);font-size:var(--fz-micro);text-align:right;align-self:center;max-width:330px}.cycle-workout-tabs{gap:var(--sp-4);padding:var(--sp-1) var(--sp-1) var(--sp-5);scrollbar-width:thin;display:flex;overflow-x:auto}.cycle-workout-tab{min-width:142px;padding:var(--sp-5) var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);text-align:left}.cycle-workout-tab b,.cycle-workout-tab small{display:block}.cycle-workout-tab b{font-size:var(--fz-label)}.cycle-workout-tab small{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-micro)}.cycle-workout-tab.on{border-color:color-mix(in srgb,var(--green) 38%,var(--line));background:var(--green-soft);color:var(--green)}.cycle-editor-shell{gap:var(--sp-7);grid-template-columns:minmax(0,1fr) 340px;align-items:start;display:grid}.cycle-editor-card{min-width:0;padding:var(--pad-card)}.cycle-workout-meta{gap:var(--sp-5);margin-bottom:var(--sp-7);grid-template-columns:minmax(180px,1.2fr) minmax(150px,.8fr) 110px;display:grid}.cycle-workout-meta .field.full{grid-column:1/-1}.cycle-blocks{gap:var(--sp-6);display:grid}.cycle-block-adds{gap:var(--sp-4);margin:0 0 var(--sp-6);flex-wrap:wrap;display:flex}.cycle-block-adds button{height:34px;padding:0 var(--sp-5);border:1px dashed var(--line-2);border-radius:var(--rad-sm);background:var(--surface);color:var(--muted);font-size:var(--fz-caption);font-weight:var(--fw-strong)}.cycle-block-adds button:hover{border-color:var(--green);background:var(--green-soft);color:var(--green)}.cycle-structure-block{border:1px solid var(--line);border-radius:var(--rad-lg);background:color-mix(in srgb,var(--surface-2) 44%,var(--surface));transition:border-color var(--dur-fast),box-shadow var(--dur-fast);overflow:hidden}.cycle-structure-block.selected{border-color:color-mix(in srgb,var(--green) 52%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--green) 8%,transparent)}.cycle-structure-head{align-items:end;gap:var(--sp-5);padding:var(--sp-6) var(--sp-6);border-bottom:1px solid var(--line);grid-template-columns:minmax(170px,1fr) minmax(150px,.8fr) 120px auto;display:grid}.cycle-structure-select{align-self:center;align-items:center;gap:var(--sp-5);text-align:left;background:0 0;border:0;min-width:0;display:flex}.cycle-block-badge{padding:var(--sp-3) var(--sp-4);border-radius:var(--rad-sm);background:var(--green-soft);color:var(--green);font:var(--fw-heavy) var(--fz-micro) var(--mono);text-transform:uppercase;flex:none}.cycle-structure-select span:last-child{min-width:0}.cycle-structure-select b,.cycle-structure-select small{display:block}.cycle-structure-select b{font-size:var(--fz-label);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cycle-structure-select small{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-micro);line-height:1.35}.cycle-structure-head .field label{font-size:var(--fz-micro)}.cycle-structure-head .field-input{height:36px;min-height:36px}.cycle-block-rounds{gap:var(--sp-3);grid-template-columns:54px minmax(0,1fr);align-items:center;display:grid}.cycle-block-rounds span{color:var(--dim);font-size:var(--fz-micro)}.cycle-remove-block{border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);width:36px;height:36px;color:var(--dim)}.cycle-remove-block:hover{border-color:color-mix(in srgb,var(--red) 35%,var(--line));color:var(--red)}.cycle-structure-block.type-superset .cycle-block-badge{color:#6359bd;background:#eef0ff}.cycle-structure-block.type-circuit .cycle-block-badge{color:#a56417;background:#fff1dc}.cycle-structure-block.type-dropset .cycle-block-badge{color:#b5523d;background:#ffe8e2}.cycle-exercise-list{gap:var(--gap-row);padding:var(--sp-5);display:grid}.cycle-exercise-empty{border:1px dashed var(--line-2);border-radius:var(--rad-md);text-align:center;color:var(--dim);font-size:var(--fz-caption);padding:31px 18px;line-height:1.5}.cycle-exercise-card{border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);overflow:hidden}.cycle-exercise-head{align-items:center;gap:var(--sp-5);padding:var(--sp-5) var(--sp-6);background:var(--surface-2);grid-template-columns:34px minmax(0,1fr) auto;display:grid}.cycle-exercise-code{border-radius:var(--rad-sm);background:var(--green-soft);width:33px;height:33px;color:var(--green);font:var(--fw-bold) var(--fz-micro) var(--mono);place-items:center;display:grid}.cycle-exercise-head b,.cycle-exercise-head small{display:block}.cycle-exercise-head b{font-size:var(--fz-label)}.cycle-exercise-head small{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-micro)}.cycle-exercise-actions{align-items:center;gap:var(--gap-tight);display:flex}.cycle-exercise-actions>span{margin-right:var(--sp-2);color:var(--dim);font-size:var(--fz-micro);white-space:nowrap}.cycle-exercise-actions button{height:30px;padding:0 var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);color:var(--muted);font-size:var(--fz-micro);font-weight:var(--fw-strong)}.cycle-exercise-actions button:last-child{width:30px;font-size:var(--fz-compact);padding:0}.cycle-exercise-actions button:hover{border-color:color-mix(in srgb,var(--green) 35%,var(--line));color:var(--green)}.cycle-exercise-actions button:last-child:hover{border-color:color-mix(in srgb,var(--red) 35%,var(--line));color:var(--red)}.cycle-exercise-actions button:disabled{opacity:.45;cursor:default}.cycle-no-sets{justify-content:space-between;align-items:center;gap:var(--sp-6);padding:var(--sp-6);border-top:1px solid var(--line);color:var(--dim);font-size:var(--fz-caption);display:flex}.cycle-no-sets button{height:31px;padding:0 var(--sp-5);border:1px solid color-mix(in srgb,var(--green) 30%,var(--line));border-radius:var(--rad-sm);background:var(--green-soft);color:var(--green);font-weight:var(--fw-bold)}.cycle-set-list{gap:var(--sp-4);padding:var(--sp-5) var(--sp-6);border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface-2) 44%,var(--surface));display:grid}.cycle-set-details{border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);overflow:hidden}.cycle-set-details summary{justify-content:space-between;align-items:center;gap:var(--sp-6);padding:var(--sp-5) var(--sp-5);cursor:pointer;color:var(--muted);font-size:var(--fz-caption);font-weight:var(--fw-bold);list-style:none;display:flex}.cycle-set-details summary::-webkit-details-marker{display:none}.cycle-set-details summary:after{content:"⌄";color:var(--dim);font-size:var(--fz-small)}.cycle-set-details[open] summary{border-bottom:1px solid var(--line);color:var(--green)}.cycle-set-details[open] summary:after{transform:rotate(180deg)}.cycle-set-summary{color:var(--ink);font:var(--fw-semibold) var(--fz-caption) var(--mono);margin-left:auto}.cycle-set-editor{align-items:end;gap:var(--sp-4);padding:var(--sp-5);grid-template-columns:1fr 1fr auto auto;display:grid}.cycle-set-editor .field label{font-size:var(--fz-micro)}.cycle-set-editor .field-input{height:34px;min-height:34px}.cycle-set-done,.cycle-set-remove{height:34px;padding:0 var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface-2);color:var(--muted);font-size:var(--fz-micro);font-weight:var(--fw-bold)}.cycle-set-done:hover{border-color:var(--green);color:var(--green)}.cycle-set-remove{width:34px;padding:0}.cycle-set-remove:hover{border-color:color-mix(in srgb,var(--red) 35%,var(--line));color:var(--red);background:#ffe8e2}.cycle-exercise-extra{gap:var(--sp-4);padding:var(--sp-5) var(--sp-6);border-top:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.cycle-exercise-extra .field:last-child{grid-column:1/-1}.cycle-exercise-extra .field-input{height:36px;min-height:36px}.cycle-exercise-extra textarea.field-input{height:auto;min-height:62px}.cycle-library{padding:var(--sp-7);max-height:calc(100dvh - 120px);position:sticky;top:91px;overflow:hidden}.cycle-library-list{gap:var(--sp-4);max-height:520px;padding-right:var(--sp-1);display:grid;overflow-y:auto}.cycle-library-item{align-items:stretch;gap:var(--sp-3);padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);grid-template-columns:minmax(0,1fr) 32px;display:grid}.cycle-library-item:hover{border-color:color-mix(in srgb,var(--green) 35%,var(--line));background:var(--green-soft)}.cycle-library-preview{align-items:center;gap:var(--sp-4);padding:var(--sp-2);text-align:left;background:0 0;border:0;grid-template-columns:34px minmax(0,1fr);display:grid}.cycle-library-preview b,.cycle-library-preview small{display:block}.cycle-library-preview b{font-size:var(--fz-caption);line-height:1.3}.cycle-library-preview small{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-micro);line-height:1.35}.cycle-library-add{border-radius:var(--rad-sm);background:var(--green-soft);width:32px;color:var(--green);font-size:var(--fz-body);font-weight:var(--fw-heavy);border:0}.cycle-library-add:hover{background:var(--green);color:#fff}.cycle-library-hint{margin:var(--sp-5) 0 var(--sp-5);padding:var(--sp-5) var(--sp-5);border-radius:var(--rad-sm);background:var(--surface-2);color:var(--muted);font-size:var(--fz-micro);line-height:1.45}.cycle-summary-grid{gap:var(--sp-5);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.cycle-summary-card{min-height:230px;padding:var(--pad-card-sm);flex-direction:column;display:flex}.cycle-summary-card h3{margin-top:var(--sp-6)}.cycle-summary-card>p{margin-top:var(--sp-2);color:var(--muted);font-size:var(--fz-caption);line-height:1.45}.cycle-summary-exercises{gap:var(--sp-2);margin:var(--sp-6) 0;display:grid}.cycle-summary-exercises span{padding:var(--sp-3) var(--sp-4);border-radius:var(--rad-sm);background:var(--surface-2);color:var(--muted);font-size:var(--fz-micro);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cycle-summary-actions{gap:var(--sp-3);margin-top:auto;display:flex}.cycle-summary-actions .btn{flex:1}.cycle-summary-note{margin-top:var(--sp-7);padding:var(--sp-6) var(--sp-7);border-radius:var(--rad-md);background:var(--surface-2);color:var(--muted);font-size:var(--fz-caption);line-height:1.5}@media (width<=1100px){.cycle-editor-shell,.cycle-setup-layout{grid-template-columns:1fr}.cycle-library{max-height:none;position:static}.cycle-library-list{grid-template-columns:1fr 1fr;max-height:none}.cycle-summary-grid{grid-template-columns:1fr 1fr}}@media (width<=650px){.cycle-workout-meta,.cycle-exercise-extra,.cycle-structure-head{grid-template-columns:1fr}.cycle-workout-meta .field.full,.cycle-exercise-extra .field:last-child{grid-column:auto}.cycle-summary-grid,.cycle-library-list,.cycle-context{grid-template-columns:1fr}.cycle-context small{text-align:left}.cycle-editor-card{padding:var(--sp-6)}.cycle-setup-card,.cycle-saved-card{padding:var(--pad-card-sm)}.cycle-exercise-head{grid-template-columns:34px minmax(0,1fr)}.cycle-exercise-actions{grid-column:1/-1;justify-content:flex-end}.cycle-set-editor{grid-template-columns:1fr 1fr}.cycle-set-done,.cycle-set-remove{width:100%}}.exercise-library-head{margin-bottom:var(--sp-7)}.library-layout{grid-template-columns:244px minmax(0,1fr)}.library-sidebar{max-height:calc(100dvh - 108px);padding:var(--sp-6);scrollbar-width:thin;overflow:auto}.library-sidebar>button:first-child{height:38px;font-weight:var(--fw-bold)}.library-filter-section{margin-top:var(--sp-5);padding-top:var(--sp-5);border-top:1px solid var(--line)}.library-filter-heading{padding:0 var(--sp-5) var(--sp-4);color:var(--ink);font-size:var(--fz-caption);font-weight:var(--fw-heavy);letter-spacing:var(--ls-normal)}.library-filter-group{margin:var(--sp-2) 0;padding:var(--sp-4) 0 var(--sp-3);border-radius:var(--rad-sm);background:var(--surface-2)}.library-filter-label{padding:0 var(--sp-5) var(--sp-2);color:var(--dim);font-size:var(--fz-micro);font-weight:var(--fw-bold);letter-spacing:var(--ls-caps);text-transform:uppercase}.library-filter-group button{height:30px;padding-left:var(--sp-7);padding-right:var(--sp-5);border-radius:var(--rad-xs)}.library-main{min-width:0}.library-search{width:min(350px,100%)}.muscle-filter-panel{margin:0 0 var(--sp-6);padding:var(--sp-5) 0 var(--sp-6);border-bottom:1px solid var(--line)}.muscle-filter-panel>span{margin-bottom:var(--sp-4);color:var(--dim);font-size:var(--fz-micro);font-weight:var(--fw-bold);letter-spacing:var(--ls-caps);text-transform:uppercase;display:block}.muscle-filter-row{gap:var(--sp-3);padding-bottom:var(--sp-1);scrollbar-width:thin;overscroll-behavior-x:contain;display:flex;overflow-x:auto}.muscle-filter-row button{height:31px;padding:0 var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-pill);background:var(--surface);color:var(--muted);font-size:var(--fz-caption);font-weight:var(--fw-semibold);white-space:nowrap;flex:none}.muscle-filter-row button:hover{border-color:var(--line-2);color:var(--ink)}.muscle-filter-row button.on{border-color:color-mix(in srgb,var(--green) 30%,var(--line));background:var(--green-soft);color:var(--green)}.exercise-category{padding:var(--sp-2) var(--sp-4);border-radius:var(--rad-pill);background:var(--surface-2);color:var(--muted);font-size:var(--fz-micro);font-weight:var(--fw-semibold)}.exercise-card-meta{margin-top:var(--sp-5);padding-top:var(--sp-5);border-top:1px solid var(--line);color:var(--dim);font-size:var(--fz-micro);line-height:1.4}.exercise-card{flex-direction:column;min-width:0;padding:0;display:flex;overflow:hidden}.exercise-card-media{border-bottom:1px solid var(--line);background:linear-gradient(145deg,var(--surface-2),color-mix(in srgb,var(--green-soft) 42%,var(--surface)));place-items:center;height:148px;display:grid;position:relative;overflow:hidden}.exercise-card-media img{z-index:1;object-fit:cover;background:#fff;width:100%;height:100%;position:relative}.exercise-media-fallback{color:color-mix(in srgb,var(--green) 55%,var(--dim));font:var(--fw-heavy) calc(24px * var(--fs)) var(--mono);letter-spacing:var(--ls-caps)}.exercise-card-media .exercise-category{z-index:2;background:color-mix(in srgb,var(--surface) 88%,transparent);color:var(--ink);box-shadow:var(--elev-flat);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:absolute;top:9px;right:9px}.exercise-card .exercise-card-top{padding:var(--sp-5) var(--sp-6) 0}.exercise-card .exercise-code{border-radius:var(--rad-sm);width:30px;height:30px}.exercise-video-link{min-height:30px;padding:0 var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);color:var(--red);font-size:var(--fz-micro);font-weight:var(--fw-bold);align-items:center;text-decoration:none;display:inline-flex}.exercise-video-link:hover{border-color:color-mix(in srgb,var(--red) 38%,var(--line));background:var(--red-soft)}.exercise-card h4{margin:var(--sp-5) var(--sp-6) 0;font-size:var(--fz-small);line-height:1.3}.exercise-card>p{margin:var(--sp-2) var(--sp-6) 0;line-height:1.45}.exercise-card .exercise-tags{margin:var(--sp-5) var(--sp-6) 0}.exercise-card .exercise-card-meta{margin:auto var(--sp-6) 0;padding:var(--sp-5) 0 var(--sp-6)}.exercise-card .exercise-card-add{width:auto;margin:0 var(--sp-6) var(--sp-6)}.library-main .show-more{margin-top:var(--sp-7);display:block}.catalog-source{justify-content:space-between;align-items:center;gap:var(--sp-6);margin-top:var(--sp-7);padding-top:var(--sp-6);border-top:1px solid var(--line);color:var(--dim);font-size:var(--fz-micro);display:flex}.catalog-source a{color:var(--green);font-weight:var(--fw-semibold);text-decoration:none}.catalog-source a:hover{text-decoration:underline}.exercise-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.exercise-card-compact{min-height:112px;padding:var(--sp-7);justify-content:space-between;gap:var(--sp-7);cursor:pointer;transition:border-color var(--dur-fast),box-shadow var(--dur-fast),transform var(--dur-fast);overflow:visible}.exercise-card-compact:hover,.exercise-card-compact:focus-visible{border-color:color-mix(in srgb,var(--green) 42%,var(--line));box-shadow:var(--elev-flat);outline:0;transform:translateY(-1px)}.exercise-card-compact h4{font-size:var(--fz-small);margin:0;line-height:1.35}.exercise-card-tags{gap:var(--sp-2);flex-wrap:wrap;display:flex}.exercise-card-tags span{padding:var(--sp-2) var(--sp-4);border-radius:var(--rad-xs);background:var(--surface-2);color:var(--muted);font-size:var(--fz-micro);line-height:1.2}.exercise-card-tags span:first-child{background:var(--green-soft);color:var(--green)}.exercise-card-compact.admin-card{border-style:dashed}.exercise-card-compact.admin-card h4{padding-right:34px}.exercise-admin-edit{border:1px solid color-mix(in srgb,var(--green) 28%,var(--line));border-radius:var(--rad-sm);background:var(--green-soft);width:29px;height:29px;color:var(--green);font-size:var(--fz-label);font-weight:var(--fw-heavy);z-index:2;place-items:center;display:grid;position:absolute;top:10px;right:10px}.exercise-admin-edit:hover{border-color:var(--green);background:color-mix(in srgb,var(--green-soft) 72%,var(--surface))}.admin-toggle.on{border-color:color-mix(in srgb,var(--green) 38%,var(--line));background:var(--green-soft);color:var(--green)}.exercise-admin-banner{justify-content:space-between;align-items:center;gap:var(--sp-6);margin-bottom:var(--sp-6);padding:var(--sp-5) var(--sp-6);border:1px dashed color-mix(in srgb,var(--green) 38%,var(--line));border-radius:var(--rad-md);background:color-mix(in srgb,var(--green-soft) 55%,var(--surface));color:var(--green);font-size:var(--fz-caption);display:flex}.exercise-admin-banner b{font-size:var(--fz-label)}.exercise-admin-banner span{color:var(--muted)}.exercise-detail-modal{flex-direction:column;width:min(920px,100vw - 24px);height:auto;max-height:calc(100dvh - 24px);display:flex}.exercise-detail-modal .modal-head{align-items:flex-start}.exercise-detail-modal .modal-head h3{margin-top:var(--sp-2);max-width:720px;font-size:var(--fz-page);line-height:1.25}.exercise-detail-modal .modal-head,.exercise-detail-modal .modal-foot{flex:none}.exercise-detail-modal .modal-body{scrollbar-gutter:stable;flex:auto;min-height:0;max-height:none;padding-bottom:24px;overflow:hidden auto}.exercise-detail-modal .modal-foot{flex-wrap:wrap}.exercise-detail-gallery{gap:var(--sp-5);grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));display:grid}.exercise-detail-photo{border:1px solid var(--line);border-radius:var(--rad-lg);background:#fff;min-width:0;position:relative;overflow:hidden}.exercise-detail-photo img{aspect-ratio:16/10;object-fit:cover;width:100%;display:block}.exercise-detail-photo figcaption{padding:var(--sp-2) var(--sp-4);border-radius:var(--rad-sm);color:#fff;font-size:var(--fz-micro);font-weight:var(--fw-strong);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#11271dc7;position:absolute;bottom:9px;left:9px}.exercise-detail-lead{align-items:flex-start;gap:var(--sp-5);margin-top:var(--sp-7);padding:var(--sp-6);border-radius:var(--rad-md);background:var(--surface-2);display:flex}.exercise-detail-lead p{color:var(--muted);font-size:var(--fz-label);line-height:1.55}.exercise-detail-section{margin-top:var(--sp-8)}.exercise-detail-section h4{margin-bottom:var(--sp-5);font-size:var(--fz-compact)}.exercise-detail-facts{gap:var(--sp-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.exercise-detail-fact{padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface)}.exercise-detail-fact span,.exercise-detail-fact b{display:block}.exercise-detail-fact span{color:var(--dim);font-size:var(--fz-micro);text-transform:uppercase;letter-spacing:var(--ls-wide)}.exercise-detail-fact b{margin-top:var(--sp-2);font-size:var(--fz-label);line-height:1.4}.exercise-instructions{gap:var(--sp-4);counter-reset:steps;list-style:none;display:grid}.exercise-instructions li{min-height:38px;padding:var(--sp-5) var(--sp-6) var(--sp-5) var(--sp-10);border:1px solid var(--line);border-radius:var(--rad-md);color:var(--muted);font-size:var(--fz-label);line-height:1.55;position:relative}.exercise-instructions li:before{counter-increment:steps;content:counter(steps);border-radius:var(--rad-xs);background:var(--green-soft);width:21px;height:21px;color:var(--green);font:var(--fw-bold) var(--fz-micro) var(--mono);place-items:center;display:grid;position:absolute;top:10px;left:11px}.exercise-detail-video{color:var(--red);align-items:center;text-decoration:none;display:inline-flex}.exercise-detail-empty{color:var(--dim);font-size:var(--fz-caption)}.exercise-editor-modal{flex-direction:column;width:min(920px,100vw - 24px);height:auto;max-height:calc(100dvh - 24px);display:flex}.exercise-editor-modal .modal-head,.exercise-editor-modal .modal-foot{flex:none}.exercise-editor-modal .modal-body{scrollbar-gutter:stable;flex:auto;min-height:0;max-height:none;padding-bottom:24px;overflow:hidden auto}.exercise-form-section+.exercise-form-section{margin-top:var(--sp-8);padding-top:var(--sp-8);border-top:1px solid var(--line)}.exercise-form-section>h4{margin-bottom:var(--sp-5);font-size:var(--fz-compact)}.exercise-form-section>p{color:var(--dim);font-size:var(--fz-caption);margin:-6px 0 11px;line-height:1.45}.exercise-photo-upload{min-height:92px;padding:var(--sp-7);border:1px dashed var(--line-2);border-radius:var(--rad-md);background:var(--surface-2);color:var(--muted);text-align:center;cursor:pointer;place-items:center;display:grid}.exercise-photo-upload:hover{border-color:var(--green);color:var(--green);background:var(--green-soft)}.exercise-photo-upload input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.exercise-photo-upload b,.exercise-photo-upload span{display:block}.exercise-photo-upload span{margin-top:var(--sp-2);font-size:var(--fz-caption);color:var(--dim)}.exercise-photo-previews{gap:var(--sp-5);margin-top:var(--sp-5);grid-template-columns:1fr 1fr;display:grid}.exercise-photo-preview{border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface-2);min-height:120px;color:var(--dim);font-size:var(--fz-caption);place-items:center;display:grid;position:relative;overflow:hidden}.exercise-photo-preview img{object-fit:cover;width:100%;height:150px}.exercise-photo-preview button{border-radius:var(--rad-sm);color:#fff;background:#11271dd1;border:1px solid #ffffff6b;width:29px;height:29px;position:absolute;top:7px;right:7px}.exercise-title-modal{width:min(520px,100vw - 24px)}.exercise-title-hint{margin-top:var(--sp-4);color:var(--dim);font-size:var(--fz-caption);line-height:1.45}.exercise-card-frequency{justify-content:space-between;align-items:center;gap:var(--sp-4);color:var(--dim);font-size:var(--fz-micro);font-weight:var(--fw-strong);display:flex}.exercise-card-frequency span{align-items:center;gap:var(--sp-2);display:inline-flex}.exercise-card-frequency i{border-radius:var(--rad-circle);background:var(--green);width:6px;height:6px}.exercise-card-frequency b{color:var(--green);font:var(--fw-semibold) var(--fz-micro) var(--mono)}.exercise-sort-select{border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);min-width:220px;height:38px;color:var(--ink);font-size:var(--fz-caption);font-weight:var(--fw-strong);outline:0;padding:0 34px 0 12px}.exercise-sort-select:focus{border-color:var(--green);box-shadow:0 0 0 3px color-mix(in srgb,var(--green) 11%,transparent)}.finance-head{align-items:center}.finance-head .month-chip{min-height:38px;padding:0 var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);font-weight:var(--fw-strong);align-items:center;display:inline-flex}.tariff-card{margin-bottom:var(--sp-7);padding:var(--pad-card)}.tariff-head{justify-content:space-between;align-items:flex-start;gap:var(--sp-7);display:flex}.tariff-head p{margin-top:var(--sp-2);color:var(--muted);font-size:var(--fz-caption);line-height:1.45}.tariff-list{gap:var(--sp-4);margin-top:var(--sp-7);display:grid}.tariff-row{align-items:end;gap:var(--gap-row);padding:var(--pad-cell);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface-2);grid-template-columns:minmax(190px,1fr) 150px 170px 36px;display:grid}.tariff-row .field label{font-size:var(--fz-micro)}.tariff-row .field-input{background:var(--surface);height:36px;min-height:36px}.tariff-remove{border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);width:36px;height:36px;color:var(--dim)}.tariff-remove:hover{border-color:color-mix(in srgb,var(--red) 35%,var(--line));color:var(--red)}.nba-tariff-select{width:170px;height:30px;margin-top:var(--sp-3);padding:0 var(--sp-4);border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface-2);color:var(--muted);font-size:var(--fz-micro);font-weight:var(--fw-strong)}.finance-hero-grid{gap:var(--gap-grid);margin-bottom:var(--sp-7);grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);display:grid}.finance-hero{min-height:270px;color:var(--nav-ink);box-shadow:var(--elev-overlay);background:linear-gradient(135deg,#132b21,#1c4131);border:0;padding:25px;position:relative;overflow:hidden}.finance-hero:after{content:"";border-radius:var(--rad-circle);background:radial-gradient(circle,#d7f58a38,#0000 68%);width:360px;height:360px;position:absolute;top:-145px;right:-95px}.finance-hero .eyebrow{color:var(--nav-dim)}.finance-hero h2{z-index:1;margin:var(--sp-5) 0 var(--sp-2);color:#fff;font:var(--fw-strong) calc(39px * var(--fs))/1 var(--mono);letter-spacing:-.07em;position:relative}.finance-hero>p{z-index:1;color:#a0b5aa;font-size:var(--fz-small);position:relative}.finance-progress{z-index:1;margin-top:25px;position:relative}.finance-progress-label{justify-content:space-between;align-items:center;gap:var(--sp-5);margin-bottom:var(--sp-4);color:#b8cac0;font-size:var(--fz-caption);display:flex}.finance-progress-label b{color:#fff;font:var(--fw-semibold) var(--fz-label) var(--mono)}.finance-progress-track{border-radius:var(--rad-pill);background:var(--nav-line);height:9px;overflow:hidden}.finance-progress-track i{border-radius:inherit;background:var(--brand);height:100%;display:block}.finance-hero-bottom{z-index:1;gap:var(--sp-4);margin-top:var(--sp-8);grid-template-columns:repeat(3,1fr);display:grid;position:relative}.finance-hero-bottom div{padding:var(--sp-5);border-radius:var(--rad-md);background:var(--nav-well);border:1px solid #ffffff17}.finance-hero-bottom b,.finance-hero-bottom span{display:block}.finance-hero-bottom b{font:var(--fw-semibold) var(--fz-body) var(--mono)}.finance-hero-bottom span{margin-top:var(--sp-1);color:var(--nav-dim);font-size:var(--fz-micro)}.finance-potential{padding:var(--sp-8);background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--brand) 12%,var(--surface)));flex-direction:column;justify-content:space-between;display:flex}.finance-potential h3{margin:var(--sp-5) 0 var(--sp-3);font-size:var(--fz-page)}.finance-potential p{color:var(--muted);font-size:var(--fz-small);line-height:1.55}.finance-potential-value{align-items:baseline;gap:var(--sp-4);margin-top:var(--sp-8);display:flex}.finance-potential-value b{font:var(--fw-strong) calc(30px * var(--fs))/1 var(--mono);letter-spacing:var(--ls-tight)}.finance-potential-value span{color:var(--green);font:var(--fw-strong) var(--fz-label) var(--mono)}.potential-steps{gap:var(--sp-4);margin-top:var(--sp-7);display:grid}.potential-step{align-items:center;gap:var(--sp-5);padding:var(--sp-4) 0;border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.potential-step i{border-radius:var(--rad-circle);background:var(--green);width:8px;height:8px}.potential-step span{color:var(--muted);font-size:var(--fz-caption)}.potential-step b{font:var(--fw-semibold) var(--fz-caption) var(--mono)}.finance-kpis{gap:var(--sp-6);margin-bottom:var(--sp-7);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.finance-kpi{padding:var(--sp-7)}.finance-kpi>span{color:var(--dim);font-size:var(--fz-caption)}.finance-kpi>strong{margin:var(--sp-5) 0 var(--sp-2);font:var(--fw-semibold) calc(23px * var(--fs))/1 var(--mono);letter-spacing:var(--ls-tight);display:block}.finance-kpi>small{color:var(--muted);font-size:var(--fz-caption)}.finance-kpi>small.up{color:var(--green);font-weight:var(--fw-strong)}.finance-action-layout{gap:var(--sp-7);margin-bottom:var(--sp-7);grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);display:grid}.finance-actions-card,.finance-segments{padding:var(--pad-card)}.nba-list{gap:var(--gap-row);display:grid}.nba-item{align-items:center;gap:var(--sp-5);padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);grid-template-columns:34px minmax(0,1fr) auto;display:grid}.nba-rank{border-radius:var(--rad-md);background:var(--green-soft);width:34px;height:34px;color:var(--green);font:var(--fw-bold) var(--fz-label) var(--mono);place-items:center;display:grid}.nba-main{min-width:0}.nba-main b{font-size:var(--fz-small);display:block}.nba-main p{margin-top:var(--sp-2);color:var(--muted);font-size:var(--fz-caption);line-height:1.4}.nba-main small{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-micro);display:block}.nba-value{text-align:right}.nba-value b{color:var(--green);font:var(--fw-strong) var(--fz-small) var(--mono);display:block}.nba-value button{height:28px;margin-top:var(--sp-3);padding:0 var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface-2);font-size:var(--fz-micro);font-weight:var(--fw-strong)}.nba-value button:hover{border-color:var(--green);color:var(--green)}.segment-list{gap:var(--sp-4);display:grid}.segment-row{padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-md)}.segment-row-head{justify-content:space-between;align-items:center;gap:var(--sp-5);display:flex}.segment-row-head b{font-size:var(--fz-label)}.segment-row-head span{font:var(--fw-semibold) var(--fz-caption) var(--mono)}.segment-row p{margin-top:var(--sp-2);color:var(--muted);font-size:var(--fz-caption)}.segment-bar{height:5px;margin-top:var(--sp-5);border-radius:var(--rad-pill);background:var(--surface-2);overflow:hidden}.segment-bar i{border-radius:inherit;background:var(--green);height:100%;display:block}.finance-history-grid{gap:var(--gap-grid);grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);display:grid}.season-card,.payments-card{padding:var(--pad-card)}.season-chart{align-items:end;gap:var(--sp-4);height:230px;padding:var(--sp-8) var(--sp-2) 0;grid-template-columns:repeat(12,1fr);display:grid}.season-col{justify-content:flex-end;align-items:center;gap:var(--sp-3);flex-direction:column;height:100%;display:flex}.season-bars{align-items:flex-end;gap:var(--sp-2);height:180px;display:flex}.season-bars i{border-radius:var(--rad-xs) var(--rad-xs) var(--rad-2xs) var(--rad-2xs);background:var(--green);opacity:.92;width:10px;min-height:4px}.season-bars i.previous{background:var(--line-2);opacity:.75}.season-col b{font:var(--fw-medium) var(--fz-micro) var(--mono);color:var(--dim)}.season-legend{gap:var(--sp-7);color:var(--dim);font-size:var(--fz-micro);display:flex}.season-legend span{align-items:center;gap:var(--sp-3);display:flex}.season-legend i{border-radius:var(--rad-2xs);background:var(--green);width:8px;height:8px}.season-legend i.previous{background:var(--line-2)}.payment-list{display:grid}.payment-row{gap:var(--gap-row);padding:var(--sp-5) 0;border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;display:grid}.payment-row:first-child{border-top:0}.payment-row b,.payment-row span{display:block}.payment-row b{font-size:var(--fz-label)}.payment-row span{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-micro)}.payment-row strong{font:var(--fw-semibold) var(--fz-label) var(--mono)}@media (width<=860px){.finance-hero-grid,.finance-action-layout,.finance-history-grid{grid-template-columns:1fr}.finance-kpis{grid-template-columns:1fr 1fr}.season-chart{gap:var(--sp-2)}.season-bars i{width:8px}.library-sidebar{gap:0 var(--sp-6);grid-template-columns:1.25fr .75fr;max-height:none;display:grid;position:static;overflow:visible;-webkit-mask-image:none;mask-image:none}.library-sidebar>button:first-child{grid-column:1/-1}.library-main .card-title{gap:var(--sp-5)}.library-search{width:min(330px,55vw)}.exercise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.finance-head{align-items:flex-start}.finance-head .page-actions{width:100%}.finance-hero{min-height:0;padding:var(--sp-8)}.finance-hero h2{font-size:calc(32px * var(--fs))}.finance-hero-bottom,.finance-kpis{grid-template-columns:1fr}.nba-item{grid-template-columns:32px minmax(0,1fr)}.nba-value{text-align:left;align-items:center;gap:var(--sp-4);grid-column:2;grid-template-columns:1fr auto;display:grid}.nba-tariff-select{grid-column:1/-1;width:100%}.season-chart{gap:var(--sp-2);height:190px}.season-bars{height:140px}.season-bars i{width:5px}.finance-actions-card,.finance-segments,.season-card,.payments-card{padding:var(--pad-card-sm)}.tariff-row{grid-template-columns:1fr 1fr}.tariff-row .field:first-child{grid-column:1/-1}.tariff-remove{width:100%}.library-sidebar{grid-template-columns:1fr}.library-sidebar>button:first-child{grid-column:auto}.library-main .card-title{align-items:stretch}.library-search{width:100%}.muscle-filter-panel{margin-left:-2px;margin-right:-2px}.exercise-card-media{height:190px}.catalog-source{flex-direction:column;align-items:flex-start}.exercise-grid{grid-template-columns:1fr}.exercise-detail-modal .modal-body{padding:var(--sp-7)}.exercise-detail-gallery{gap:var(--sp-4)}.exercise-detail-photo figcaption{display:none}.exercise-detail-facts{grid-template-columns:1fr}.exercise-detail-modal .modal-foot{flex-wrap:wrap}.exercise-detail-modal .modal-foot>*{flex:1}.exercise-admin-banner{flex-direction:column;align-items:flex-start}.exercise-photo-previews{grid-template-columns:1fr}}:root{--type-caption:10px;--type-label:11px;--type-small:12px;--type-body:14px;--type-card-title:14px;--type-section:16px;--type-page:28px;--weight-regular:450;--weight-medium:600;--weight-strong:700}html,body{max-width:100%;overflow-x:clip}.app,.main,.content,.view{min-width:0;max-width:100%}.view>*{min-width:0}img,svg,video,canvas{max-width:100%}h2{font-size:calc(var(--type-page) * var(--fs));font-weight:var(--weight-strong)}h3{font-size:var(--fz-section);font-weight:var(--weight-strong)}h4{font-size:var(--fz-body);font-weight:var(--weight-strong)}.page-head p,.today-head p,.workflow-head p{font-size:var(--fz-compact);line-height:1.5}.eyebrow,.field label,.nav-label{font-size:var(--fz-label);font-weight:var(--weight-strong)}.btn,.pill{font-size:var(--fz-compact);font-weight:var(--weight-medium)}.card-title p,.card p{line-height:1.5}.client-page-nav,.subnav,.task-filters,.catalog-filters,.builder-filter-row,.muscle-filter-row,.cycle-workout-tabs,.registry-tabs,.registry-mobile-sorts{scroll-snap-type:none;flex-wrap:wrap;width:100%;max-width:100%;display:flex;overflow:visible;-webkit-mask-image:none;mask-image:none}.subnav{width:100%}.client-page-nav button,.subnav button,.task-filters button,.catalog-filters button,.builder-filter-row button,.muscle-filter-row button,.cycle-workout-tab,.registry-tabs button,.registry-mobile-sorts button{white-space:normal;flex:0 auto;min-width:0}.week{grid-template-columns:repeat(7,minmax(0,1fr));overflow:visible}.day{min-width:0}.photo-scroll{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-auto-flow:row;overflow:visible}.builder-shell,.cycle-editor-shell,.builder-canvas,.builder-library,.cycle-editor-card,.cycle-library,.builder-library-list,.cycle-library-list,.builder-library-item,.cycle-library-item{min-width:0}.builder-library-item>span:nth-child(2),.cycle-library-item>span:nth-child(2){overflow-wrap:anywhere;min-width:0}.builder-library-item b,.builder-library-item small,.cycle-library-item b,.cycle-library-item small{overflow-wrap:anywhere;word-break:normal}.builder-library-list,.cycle-library-list{overflow:clip auto}.cycle-library-item{padding:var(--sp-5);grid-template-columns:34px minmax(0,1fr) 32px;align-items:center}.cycle-library-item>.exercise-code{width:32px;height:32px}.cycle-library-item>span:last-child{border-radius:var(--rad-sm);background:var(--green-soft);width:32px;height:32px;color:var(--green);font-size:18px;font-weight:var(--fw-heavy);place-items:center;display:grid}.cycle-library-item:hover>span:last-child{background:var(--green);color:#fff}.cycle-structure-head>*{min-width:0}.cycle-set-editor{grid-template-columns:repeat(2,minmax(0,1fr)) auto 36px}.cycle-set-done{white-space:nowrap}.cycle-set-remove{width:36px}.cycle-dose-scroll{width:100%;min-width:0;overflow:visible}.cycle-dose-grid{gap:var(--sp-4);padding:var(--sp-5) var(--sp-6);border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface-2) 44%,var(--surface));grid-template-columns:repeat(auto-fit,minmax(min(132px,100%),1fr));display:grid}.cycle-dose-label{color:var(--dim);font-size:var(--fz-small);grid-column:1/-1;line-height:1.4}.cycle-dose-label br{display:none}.cycle-set-cell{min-width:0;padding:var(--pad-cell);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);position:relative}.cycle-set-cell>span{min-width:0;color:var(--muted);font-size:var(--fz-small);font-weight:var(--fw-strong);overflow-wrap:anywhere;padding-right:31px;display:block}.cycle-set-cell>.cycle-set-remove{width:28px;height:28px;padding:0;position:absolute;top:7px;right:8px}.cycle-set-inputs{gap:var(--sp-3);margin-top:var(--sp-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.cycle-set-inputs input{width:100%;min-width:0;height:34px;padding:0 var(--sp-4);border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface-2);color:var(--ink);font:var(--fw-medium) var(--fz-compact) var(--mono)}.cycle-set-inputs input:focus{outline:2px solid color-mix(in srgb,var(--green) 24%,transparent);border-color:var(--green)}.live-current,.live-set-list,.live-set{min-width:0}.live-set{grid-template-columns:30px minmax(112px,1.15fr) repeat(3,minmax(72px,.8fr)) minmax(104px,auto)}.live-set>*,.live-set-input{min-width:0}.live-set-field>span{font-size:var(--fz-label)}.live-set button{white-space:nowrap}.weekly-calendar-scroll{overflow-x:clip}.weekly-grid{grid-template-columns:48px repeat(7,minmax(0,1fr));width:100%;min-width:0}.weekly-day,.weekly-day-timeline,.weekly-session{min-width:0}.weekly-session h4,.weekly-session p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.weekly-agenda{display:none}.registry-table{table-layout:fixed;min-width:0}.registry-table th,.registry-table td,.registry-person,.goal-cell,.finance-cell,.score-cell,.result-cell,.reliability-cell,.next-session{min-width:0}.registry-sort-button{white-space:normal;line-height:1.3}.schedule-main b,.detail-client h3,.session-plan-exercise b,.builder-exercise h4,.builder-library-item b,.cycle-library-item b,.cycle-exercise-head b,.exercise-card h4,.weekly-item h4,.deviation-main b{font-size:var(--fz-compact)}.schedule-main p,.schedule-meta,.detail-client p,.session-plan-exercise p,.builder-exercise p,.builder-library-item small,.cycle-library-item small,.cycle-exercise-head small,.exercise-card p,.weekly-item p,.deviation-main p{font-size:var(--fz-small);line-height:1.45}.session-plan-exercise small,.builder-target small,.cycle-exercise-actions>span,.weekly-item small,.deviation-main small,.exercise-card-tags span,.exercise-detail-fact span,.exercise-instructions li:before{font-size:var(--fz-label)}.exercise-detail-lead p,.exercise-detail-fact b,.exercise-instructions li,.exercise-detail-empty{font-size:var(--fz-compact)}@media (width<=1280px){.builder-shell,.cycle-editor-shell,.cycle-setup-layout{grid-template-columns:1fr}.builder-library,.cycle-library{max-height:none;position:static}.builder-library-list,.cycle-library-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.builder-meta,.cycle-workout-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.cycle-workout-meta .field.full{grid-column:1/-1}.live-layout{grid-template-columns:1fr}}@media (width<=1100px){.library-layout{grid-template-columns:1fr}.library-sidebar{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none;display:grid;position:static;overflow:visible}.library-sidebar>button:first-child{grid-column:1/-1}.exercise-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1080px){.weekly-calendar{display:none}.weekly-agenda{gap:var(--sp-5);display:grid}.weekly-agenda-day{min-width:0;padding:var(--sp-7)}.weekly-agenda-head{justify-content:space-between;align-items:center;gap:var(--sp-6);padding-bottom:var(--sp-5);border-bottom:1px solid var(--line);display:flex}.weekly-agenda-head b{font-size:var(--fz-body)}.weekly-agenda-head span{color:var(--dim);font-size:var(--fz-small)}.weekly-agenda-list{gap:var(--sp-4);padding-top:var(--sp-5);display:grid}.weekly-agenda-session{align-items:center;gap:var(--sp-5);width:100%;min-width:0;padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);text-align:left;grid-template-columns:70px minmax(0,1fr) auto;display:grid}.weekly-agenda-session time{font:var(--fw-semibold) var(--fz-small) var(--mono)}.weekly-agenda-session b,.weekly-agenda-session small{overflow-wrap:anywhere;min-width:0;display:block}.weekly-agenda-session b{font-size:var(--fz-compact)}.weekly-agenda-session small{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-small)}.weekly-agenda-session .pill{justify-self:end}.weekly-agenda-empty{padding:var(--sp-4) 0;color:var(--dim);font-size:var(--fz-compact)}}@media (width<=1400px){.registry-card,.labs-table-card{box-shadow:none;background:0 0;border:0;overflow:visible}.registry-table-wrap,.labs-table-wrap{overflow:visible}.registry-table,.registry-table tbody,.registry-table tr,.registry-table td,.labs-table,.labs-table tbody,.labs-table tr,.labs-table td{width:100%;min-width:0;display:block}.registry-table thead,.labs-table thead{display:none}.registry-table tbody,.labs-table tbody{gap:var(--sp-5);display:grid}.registry-table tbody tr,.labs-table tr{padding:var(--sp-2) var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-lg);background:var(--surface);box-shadow:var(--elev-flat)}.registry-table td,.labs-table td{padding:var(--sp-5) 0;border-top:1px solid var(--line)}.registry-table td:first-child,.labs-table td:first-child{border-top:0}.registry-table td:nth-child(n+2):nth-child(-n+9){align-items:start;gap:var(--sp-5);grid-template-columns:150px minmax(0,1fr);display:grid}.registry-table td:nth-child(n+2):nth-child(-n+9):before,.labs-table td:nth-child(2):before,.labs-table td:nth-child(3):before,.labs-table td:nth-child(4):before,.labs-table td:nth-child(5):before{color:var(--dim);font-size:var(--fz-label);font-weight:var(--fw-strong);letter-spacing:var(--ls-wide);text-transform:uppercase;display:block}.registry-table td:nth-child(2):before{content:"Статус"}.registry-table td:nth-child(3):before{content:"Цель"}.registry-table td:nth-child(4):before{content:"Срок"}.registry-table td:nth-child(5):before{content:"Финансовые условия"}.registry-table td:nth-child(6):before{content:"Следует рекомендациям"}.registry-table td:nth-child(7):before{content:"Результаты клиента"}.registry-table td:nth-child(8):before{content:"Надёжность календаря"}.registry-table td:nth-child(9):before{content:"Следующая сессия"}.labs-table td:nth-child(2):before{content:"Текущий результат"}.labs-table td:nth-child(3):before{content:"История и референс"}.labs-table td:nth-child(4):before{content:"Статус"}.labs-table td:nth-child(5):before{content:"Изменение"}.registry-person,.goal-cell,.finance-cell,.score-cell,.result-cell,.reliability-cell,.next-session,.lab-range{min-width:0}.lab-range{width:100%}}@media (width<=720px){:root{--type-page:24px;--type-section:16px;--type-card-title:14px}.builder-library-list,.cycle-library-list,.builder-meta,.cycle-workout-meta{grid-template-columns:1fr}.cycle-workout-meta .field.full{grid-column:auto}.plan-fact-table,.plan-fact-table tbody,.plan-fact-table tr,.plan-fact-table td{width:100%;min-width:0;display:block}.plan-fact-table thead{display:none}.plan-fact-table tbody{gap:var(--sp-5);padding:var(--pad-cell);display:grid}.plan-fact-table tr{padding:var(--sp-2) var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface)}.plan-fact-table td{padding:var(--sp-5) 0;border-top:1px solid var(--line)}.plan-fact-table td:first-child{border-top:0}.plan-fact-table td:nth-child(2):before,.plan-fact-table td:nth-child(3):before,.plan-fact-table td:nth-child(4):before{margin-bottom:var(--sp-2);color:var(--dim);font-size:var(--fz-label);font-weight:var(--fw-strong);text-transform:uppercase;display:block}.plan-fact-table td:nth-child(2):before{content:"План"}.plan-fact-table td:nth-child(3):before{content:"Факт"}.plan-fact-table td:nth-child(4):before{content:"Отклонение"}.compare-table-card{overflow:visible}.live-set{grid-template-columns:28px repeat(2,minmax(0,1fr))}.live-set>span:first-child{grid-row:1/4}.live-set .live-set-kind{grid-column:2/-1}.live-set label:nth-of-type(2){grid-column:2}.live-set label:nth-of-type(3){grid-column:3}.live-set label:nth-of-type(4){grid-column:2}.live-set button{grid-column:3;width:100%}.cycle-set-editor{grid-template-columns:repeat(2,minmax(0,1fr))}.cycle-set-done,.cycle-set-remove{width:100%}.weekly-agenda-session{grid-template-columns:58px minmax(0,1fr)}.weekly-agenda-session .pill{grid-column:2;justify-self:start}.registry-table td:nth-child(n+2):nth-child(-n+9){grid-template-columns:112px minmax(0,1fr)}}@media (width<=860px){.exercise-grid,.tariff-row{grid-template-columns:repeat(2,minmax(0,1fr))}.tariff-row .field:first-child{grid-column:1/-1}.tariff-remove,.nba-tariff-select{width:100%}}@media (width<=600px){.library-sidebar,.exercise-grid{grid-template-columns:1fr}.library-sidebar>button:first-child{grid-column:auto}}.visually-hidden{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.clients-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.registry-column-manager{align-items:center;gap:var(--sp-5);padding:var(--sp-5) var(--sp-7);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface-2) 58%,var(--surface));display:flex;position:relative}.registry-column-caption{color:var(--dim);font-size:var(--fz-label);font-weight:var(--fw-strong);text-transform:uppercase;letter-spacing:var(--ls-caps);flex:none}.registry-column-chips{align-items:center;gap:var(--sp-2);flex-wrap:wrap;min-width:0;display:flex}.registry-column-chip{align-items:center;gap:var(--sp-2);min-width:0;min-height:30px;padding:var(--sp-2) var(--sp-3);border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);color:var(--muted);cursor:grab;transition:var(--dur-fast);display:inline-flex}.registry-column-chip i{color:var(--dim);letter-spacing:-.18em;font-style:normal}.registry-column-sort{align-items:center;gap:var(--sp-2);min-width:0;color:inherit;font-family:var(--font);font-size:var(--fz-small);font-weight:var(--weight-medium);text-align:left;cursor:pointer;background:0 0;border:0;padding:0;line-height:1.25;display:inline-flex}.registry-column-sort span{color:var(--dim);font:var(--weight-medium) var(--fz-micro) var(--font)}.registry-column-sort.on{color:var(--green)}.registry-column-chip>[data-remove-client-column]{border-radius:var(--rad-xs);width:16px;height:16px;color:var(--dim);background:0 0;border:0;flex:none;font-size:11px;line-height:1}.registry-column-chip>[data-remove-client-column]:hover{background:var(--surface-2);color:var(--muted)}.registry-column-chip:hover,.registry-column-chip.drag-over{border-color:color-mix(in srgb,var(--green) 45%,var(--line));color:var(--green)}.registry-column-chip.dragging{opacity:.38}.registry-column-add{align-self:flex-start;margin-left:auto;position:relative}.registry-column-add>button{border:1px dashed var(--green);border-radius:var(--rad-sm);background:var(--green-soft);width:30px;height:30px;color:var(--green);font-size:18px;font-weight:var(--fw-strong)}.registry-column-menu{z-index:20;width:230px;padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);box-shadow:var(--elev-overlay);position:absolute;top:36px;right:0}.registry-column-menu button{align-items:center;gap:var(--sp-4);width:100%;padding:var(--pad-control);border-radius:var(--rad-sm);color:var(--muted);text-align:left;font-size:var(--fz-compact);background:0 0;border:0;display:flex}.registry-column-menu button:hover{background:var(--green-soft);color:var(--green)}.registry-column-menu button span{font-size:16px}.registry-column-menu p{padding:var(--sp-4);color:var(--dim);font-size:var(--fz-small)}.client-registry{table-layout:auto;width:100%;min-width:0}.client-registry th,.client-registry td{padding:var(--sp-5) var(--sp-5)}.client-registry tbody tr{height:58px}.client-registry tbody tr:hover{background:color-mix(in srgb,var(--green-soft) 28%,var(--surface))}.client-name-link{max-width:100%;color:var(--ink);font-family:var(--font);font-size:var(--fz-compact);font-weight:var(--weight-medium);text-align:left;white-space:nowrap;text-underline-offset:3px;background:0 0;border:0;-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.client-name-link:hover,.client-name-link:focus-visible{color:var(--green);outline:0;text-decoration-color:currentColor}.client-goal,.client-tenure,.client-next{font-family:var(--font);font-size:var(--fz-compact);font-weight:var(--weight-regular);line-height:1.4;display:block}.client-tenure,.client-next b{font-family:var(--font);font-weight:var(--weight-regular);font-variant-numeric:tabular-nums}.client-next b{white-space:nowrap}.client-remaining{align-items:baseline;gap:var(--sp-2);grid-template-columns:auto 1fr;display:grid}.client-remaining b{font:var(--weight-medium) var(--fz-body) var(--font);font-variant-numeric:tabular-nums}.client-remaining small{color:var(--dim);font-size:var(--fz-label);font-weight:var(--weight-regular)}.score-circle{--score-color:color-mix(in srgb,var(--green) 82%,var(--surface));border-radius:var(--rad-circle);background:conic-gradient(var(--score-color) calc(var(--score) * 1%),var(--surface-2) 0);place-items:center;width:40px;height:40px;margin:auto;display:grid;position:relative}.score-circle.warn{--score-color:color-mix(in srgb,var(--amber) 82%,var(--surface))}.score-circle.risk{--score-color:color-mix(in srgb,var(--red) 82%,var(--surface))}.score-circle:after{content:"";border-radius:var(--rad-circle);background:var(--surface);position:absolute;inset:5px}.score-circle .score-circle-cap{z-index:2;border-radius:var(--rad-circle);background:var(--score-color);pointer-events:none;width:5px;height:5px;margin:-2.5px;position:absolute;top:50%;left:50%}.score-circle span{z-index:3;font:var(--weight-medium) var(--fz-small) var(--font);font-variant-numeric:tabular-nums;color:var(--ink);position:relative}.client-calendar-cell{text-align:center}.client-calendar-add{border:1px solid color-mix(in srgb,var(--green) 35%,var(--line));border-radius:var(--rad-sm);background:var(--green-soft);width:32px;height:32px;color:var(--green);font-size:18px;font-weight:var(--fw-strong)}.client-calendar-add:hover{background:var(--green);color:#fff}.client-calendar-empty{color:var(--dim)}.finance-client-registry{margin-top:var(--sp-7);overflow:hidden}.finance-client-registry-head{justify-content:space-between;align-items:flex-start;gap:var(--sp-6);padding:var(--sp-8) var(--sp-8);border-bottom:1px solid var(--line);display:flex}.finance-client-registry-head h3{margin-top:var(--sp-2)}.finance-client-registry-head p{margin-top:var(--sp-2);color:var(--muted);font-size:var(--fz-compact)}.finance-client-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;font-family:var(--font)}.finance-client-table th{padding:var(--sp-5) var(--sp-6);background:color-mix(in srgb,var(--surface-2) 76%,var(--surface));color:var(--muted);font-size:var(--fz-small);font-weight:var(--weight-medium);text-align:left;text-transform:none;letter-spacing:normal;line-height:1.3}.finance-client-table td{padding:var(--sp-6) var(--sp-6);border-top:1px solid var(--line);vertical-align:middle;font-family:var(--font);font-size:var(--fz-compact);font-weight:var(--weight-regular);line-height:1.4}.finance-client-table td b,.finance-client-table td small{display:block}.finance-client-table td b{font-weight:var(--weight-medium)}.finance-client-table td small{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-label);font-weight:var(--weight-regular)}.finance-client-table td .pill{font-weight:var(--weight-medium)}.finance-client-table tbody tr:hover{background:color-mix(in srgb,var(--green-soft) 22%,var(--surface))}.cycle-library-list{align-items:stretch}.cycle-library-card{gap:var(--sp-7);cursor:grab;min-height:112px;padding:14px 48px 14px 14px;position:relative}.cycle-library-card h4{margin:0}.cycle-library-card .exercise-card-tags{margin-top:auto}.cycle-library-card .cycle-library-add{border:0;height:34px;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.cycle-library-card.dragging{opacity:.42;transform:scale(.98)}.cycle-structure-block.drag-over{border-color:var(--green);box-shadow:0 0 0 4px color-mix(in srgb,var(--green) 14%,transparent);background:color-mix(in srgb,var(--green-soft) 44%,var(--surface))}.program-step{cursor:pointer}.program-step:focus-visible{outline:2px solid color-mix(in srgb,var(--green) 45%,transparent);outline-offset:2px}.cycle-form-actions{align-items:center;gap:var(--sp-6)}.cycle-form-actions .workflow-status{margin-right:auto}@media (width>=901px){.client-registry-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--elev-flat);overflow:visible}.client-registry,.client-registry tbody,.client-registry tr,.client-registry td{display:revert;width:auto}.client-registry{width:100%;display:table}.client-registry thead{display:table-header-group}.client-registry tbody{display:table-row-group}.client-registry tr{display:table-row}.client-registry th,.client-registry td{display:table-cell}.client-registry tbody tr{box-shadow:none;border:0;border-radius:0;padding:0}.client-registry td:before{content:none!important;display:none!important}}@media (width<=1080px){.clients-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.registry-column-manager{align-items:flex-start}.registry-column-caption{padding-top:var(--sp-4)}.registry-column-menu{position:fixed;top:118px;right:14px}.client-registry-card,.finance-client-registry{box-shadow:none;background:0 0;border:0;overflow:visible}.client-registry colgroup,.client-registry thead,.finance-client-table thead{display:none}.client-registry,.client-registry tbody,.client-registry tr,.client-registry td,.finance-client-table,.finance-client-table tbody,.finance-client-table tr,.finance-client-table td{width:100%;min-width:0;display:block}.client-registry tbody,.finance-client-table tbody{gap:var(--sp-5);display:grid}.client-registry tbody tr,.finance-client-table tbody tr{height:auto;padding:var(--sp-3) var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-lg);background:var(--surface);box-shadow:var(--elev-flat)}.client-registry td,.finance-client-table td{align-items:center;gap:var(--sp-5);padding:var(--sp-5) 0;border-top:1px solid var(--line);grid-template-columns:126px minmax(0,1fr)!important;display:grid!important}.client-registry td:first-child,.finance-client-table td:first-child{border-top:0}.client-registry td[data-label]:before,.finance-client-table td[data-label]:before{color:var(--dim);font-size:var(--fz-label);font-weight:var(--fw-strong);text-transform:uppercase;letter-spacing:var(--ls-wide);content:attr(data-label)!important;display:block!important}.score-circle{margin:0}.client-calendar-cell{text-align:left}.client-calendar-add{width:100%}.finance-client-registry-head{padding:var(--pad-card-sm);border:1px solid var(--line);border-radius:var(--rad-lg);background:var(--surface);box-shadow:var(--elev-flat);margin-bottom:var(--sp-5)}}@media (width<=600px){.clients-summary{grid-template-columns:1fr 1fr}.registry-column-manager{grid-template-columns:auto 1fr auto;display:grid}.registry-column-chips{grid-column:1/-1}.registry-column-add{grid-area:1/3}.client-registry td,.finance-client-table td{grid-template-columns:108px minmax(0,1fr)!important}.finance-client-registry-head{display:grid}.cycle-library-card{min-height:104px}}.app{overflow:clip}.client-registry-card{overflow:visible}.client-registry-card .registry-toolbar{position:static!important}.client-registry-card .registry-table-wrap{overflow:visible}.client-registry{border-collapse:separate;border-spacing:0;table-layout:fixed}.client-registry thead th{height:54px;padding:var(--sp-3) var(--sp-2);vertical-align:middle;background:color-mix(in srgb,var(--surface-2) 96%,var(--surface));color:var(--muted);text-align:left;text-transform:none;letter-spacing:normal}.client-registry thead th:first-child{padding-left:var(--sp-5)}.client-registry thead th:last-child{padding-right:var(--sp-5)}.client-registry thead .registry-column-chip{width:100%;min-height:38px;padding:var(--sp-2) var(--sp-2);gap:var(--sp-2);cursor:grab}.client-registry thead .registry-column-sort{white-space:normal;word-break:normal;overflow-wrap:normal;-webkit-hyphens:none;hyphens:none;flex:1}.client-registry thead th[data-client-column=client] .registry-column-sort,.client-registry thead th[data-client-column=goal] .registry-column-sort,.client-registry thead th[data-client-column=tenure] .registry-column-sort{white-space:nowrap}.client-registry thead th[data-client-column=compliance] .registry-column-sort,.client-registry thead th[data-client-column=result] .registry-column-sort,.client-registry thead th[data-client-column=reliability] .registry-column-sort{text-align:center;justify-content:center}.client-registry thead th.drag-over .registry-column-chip{border-color:var(--green);box-shadow:0 0 0 3px color-mix(in srgb,var(--green) 12%,transparent)}.client-registry thead th.dragging{opacity:.38}.client-column-add-head{text-align:center!important}.client-column-add-head .registry-column-add{place-items:center;margin:0;display:grid;position:relative}.client-column-add-head .registry-column-add>button{width:34px;height:38px}.client-registry td{font-family:var(--font);font-size:var(--fz-compact);font-weight:var(--weight-regular);word-break:normal;overflow-wrap:normal;line-height:1.4}.client-registry td:first-child{padding-left:var(--sp-6)}.client-registry td:last-child{padding-right:var(--sp-6)}@media (width>=761px){.client-registry-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--elev-flat)}.client-registry,.client-registry thead,.client-registry tbody,.client-registry tr,.client-registry th,.client-registry td{width:auto;min-width:0}.client-registry{width:100%!important;display:table!important}.client-registry colgroup{display:table-column-group!important}.client-registry thead{display:table-header-group!important}.client-registry tbody{display:table-row-group!important}.client-registry tr{display:table-row!important}.client-registry th,.client-registry td{display:table-cell!important}.client-registry tbody tr{height:62px;box-shadow:none;border:0;border-radius:0;padding:0}.client-registry td{padding:var(--sp-5) var(--sp-4);border-top:1px solid var(--line);vertical-align:middle}.client-registry td:before{content:none!important;display:none!important}.client-registry thead th{top:var(--topbar-h);z-index:9;box-shadow:0 1px 0 var(--line);position:sticky}.client-registry .score-circle{margin:auto}.client-registry .client-calendar-add{width:32px}.client-registry .client-name-link{font-size:clamp(11px,1.05vw,var(--fz-compact))}.finance-client-table thead th{top:var(--topbar-h);z-index:8;box-shadow:0 1px 0 var(--line);position:sticky}}@media (width<=760px){.client-registry-card .registry-table-wrap{overflow:visible}.client-registry colgroup{display:none!important}.client-registry thead{top:var(--topbar-h);z-index:9;margin-bottom:var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-lg);background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:var(--elev-flat);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);position:sticky;display:block!important}.client-registry thead tr{align-items:center;gap:var(--sp-2);width:100%;padding:var(--sp-5);flex-wrap:wrap;display:flex!important}.client-registry thead th{height:auto;box-shadow:none;background:0 0;flex:0 auto;position:static;width:auto!important;padding:0!important;display:block!important}.client-registry thead th:last-child{margin-left:auto}.client-registry thead .registry-column-chip{width:auto;min-height:34px}.client-column-add-head .registry-column-add>button{width:34px;height:34px}}.finance-client-registry{border-radius:var(--r);background:var(--surface);box-shadow:var(--elev-flat)}.finance-client-registry-head h3{font-size:var(--fz-section);font-weight:var(--weight-strong)}.finance-client-registry-head p{font-weight:var(--weight-regular);line-height:1.5}.finance-client-table th,.finance-client-table td{word-break:normal;overflow-wrap:normal;-webkit-hyphens:none;hyphens:none}.finance-client-table .client-name-link{font-weight:var(--weight-medium)}dialog{max-height:100dvh;overflow:hidden}dialog .modal{box-sizing:border-box;flex-direction:column;max-height:calc(100dvh - 32px);display:flex}dialog .modal-head,dialog .modal-foot{flex:none}dialog .modal-body{overscroll-behavior:contain;flex:auto;min-height:0;overflow-y:auto}html:has(dialog[open]){overflow:hidden}.registry-table thead th,.finance-client-table thead th{box-shadow:0 1px 0 var(--line);position:static}.finance-client-registry-head,.registry-toolbar{z-index:5;background:var(--surface);position:relative}.schedule-item.live .schedule-rail:before{background:var(--brand);border-color:var(--green);box-shadow:0 0 0 4px var(--green-soft)}.schedule-item.live .schedule-rail{background:color-mix(in srgb, var(--green) 34%, var(--line))}.weekly-session-resize{height:12px;left:0;right:0}.weekly-session-resize:hover{cursor:ns-resize}.tariff-row{grid-template-columns:minmax(170px,1fr) 110px 130px 140px 36px}@media (width<=860px){.tariff-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 36px}}.macro-card{flex-direction:column;min-width:0;display:flex}.macro-card .between{align-items:baseline;gap:var(--sp-1) var(--sp-2);flex-wrap:wrap;min-width:0}.macro-card .between b{font-size:var(--fz-section);line-height:1.1}.macro-card .between small{white-space:nowrap;font-size:var(--fz-micro)}.macro-card .macro-progress{margin-top:auto}.macro-card .eyebrow{letter-spacing:.03em;font-size:var(--fz-micro);white-space:nowrap}.remaining-scale{gap:var(--sp-1);grid-template-columns:repeat(10,1fr);min-width:64px;display:grid}.remaining-scale i{border-radius:var(--rad-2xs);background:var(--line);height:5px}.remaining-scale.green i.on{background:var(--green)}.remaining-scale.amber i.on{background:var(--amber)}.remaining-scale.red i.on{background:var(--red)}.remaining-scale.neutral i.on{background:var(--muted)}.client-name-link,.registry-table td .client-name-link,.weekly-item h4,.weekly-agenda-session b,.schedule-main b,.side-client-result b,.finance-client-name,.detail-client h3{font-size:var(--fz-compact)}.btn.add,.page-actions .btn.add{border-color:var(--green);background:var(--green);color:var(--on-accent);font-weight:var(--fw-strong)}.btn.add:hover{background:color-mix(in srgb, var(--green) 88%, #000)}.btn.add:disabled{opacity:.55}.client-name-link,.finance-client-name{align-items:center;gap:var(--sp-4);text-align:left;display:inline-flex}.client-name-link .avatar,.finance-client-name .avatar{width:26px;height:26px;font-size:var(--fz-micro);flex:none}.client-remaining{gap:var(--sp-2);grid-template-columns:auto}.connect-code-chip{align-items:center;gap:var(--sp-2);min-height:38px;padding:0 var(--sp-3) 0 var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);display:inline-flex}.connect-code-chip>button{align-items:center;gap:var(--sp-4);background:0 0;border:0;padding:0;display:inline-flex}.connect-code-chip span{color:var(--dim);text-transform:uppercase;letter-spacing:var(--ls-caps);font-size:var(--fz-micro);font-weight:var(--fw-bold)}.connect-code-chip b{font:var(--fw-strong) var(--fz-label) var(--mono);letter-spacing:var(--ls-wide)}.connect-code-pending{border-radius:var(--rad-pill);background:var(--amber);min-width:18px;height:18px;color:var(--on-accent);font:var(--fw-bold) var(--fz-micro) var(--mono);place-items:center;display:grid;padding:0 var(--sp-3)!important}@media (width<=860px){.connect-code-chip span{display:none}}.connect-card{padding:0;overflow:hidden}.connect-toggle{justify-content:space-between;align-items:flex-start;gap:var(--sp-5);width:100%;padding:var(--sp-7);text-align:left;background:0 0;border:0;display:flex}.connect-toggle b{margin-top:var(--sp-3);font:var(--weight-medium) calc(var(--type-page) * var(--fs)) var(--mono);line-height:1;display:block}.connect-toggle small{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-caption);display:block}.connect-toggle i{color:var(--dim);font-style:normal}.connect-card.is-open{grid-column:1/-1}.connect-body{padding:0 var(--sp-7) var(--sp-6);gap:var(--sp-4);display:grid}.connect-row{align-items:center;gap:var(--gap-row);padding:var(--sp-5) var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface-2);grid-template-columns:34px minmax(0,1fr) auto;display:grid}.connect-row b{font-size:var(--fz-compact);display:block}.connect-row small{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-caption);display:block}.connect-row-actions{align-items:center;gap:var(--sp-3);display:flex}.connect-row-actions>button:not(.add){min-height:30px;padding:0 var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);color:var(--muted);font-size:var(--fz-caption);font-weight:var(--fw-strong)}.connect-row-actions .btn.add{min-height:30px;padding:0 var(--sp-6);font-size:var(--fz-caption)}.connect-row-actions .nba-tariff-select{margin-top:0}.tariff-popover-wrap{position:relative}.tariff-trigger[aria-expanded=true]{border-color:color-mix(in srgb, var(--green) 45%, var(--line));background:var(--green-soft);color:var(--green)}.tariff-popover{z-index:40;width:min(760px,100vw - 40px);padding:var(--sp-7);box-shadow:var(--elev-overlay);position:absolute;top:calc(100% + 8px);right:0}@media (width<=860px){.tariff-popover{left:0;right:auto}}.client-calendar-add,.builder-add-blocks button,.tariff-add{border-color:var(--green);background:var(--green);color:var(--on-accent);font-weight:var(--fw-strong)}.client-calendar-add:hover,.builder-add-blocks button:hover,.tariff-add:hover{background:color-mix(in srgb, var(--green) 88%, #000)}span.avatar,div.avatar{text-align:center;color:var(--on-accent);line-height:1;font-weight:var(--fw-bold);place-items:center;display:grid}.message b,.client-mini b,.connect-row b{font-size:var(--fz-compact)}.client-mini>div>span,.message small{font-size:var(--fz-caption)}.weekly-session.confirmed{border-color:color-mix(in srgb, var(--green) 78%, var(--line));background:color-mix(in srgb, var(--green) 26%, var(--surface))}.weekly-session.confirmed h4{color:color-mix(in srgb, var(--green) 88%, var(--ink))}.weekly-session.pending{border:1px dashed color-mix(in srgb, var(--green) 48%, var(--line));background:color-mix(in srgb, var(--green) 7%, var(--surface));box-shadow:0 7px 18px -14px color-mix(in srgb, var(--green) 40%, transparent)}.weekly-session.online.confirmed{border-color:color-mix(in srgb, var(--blue) 78%, var(--line));background:color-mix(in srgb, var(--blue) 26%, var(--surface))}.weekly-session.online.confirmed h4{color:color-mix(in srgb, var(--blue) 82%, var(--ink))}.weekly-session.online.pending{border:1px dashed color-mix(in srgb, var(--blue) 48%, var(--line));background:color-mix(in srgb, var(--blue) 7%, var(--surface));box-shadow:0 7px 18px -14px color-mix(in srgb, var(--blue) 35%, transparent)}.weekly-session h4{margin-top:0}.weekly-session p{margin-top:var(--sp-2)}.package-history{gap:var(--sp-4);margin-top:var(--sp-6);display:grid}.package-row{align-items:start;gap:var(--sp-7);padding:var(--sp-6) var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);grid-template-columns:minmax(0,1fr) 150px 160px;display:grid}.package-top{align-items:center;gap:var(--sp-4);flex-wrap:wrap;display:flex}.package-top b{font-size:var(--fz-compact)}.package-row small{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-caption);display:block}.package-remaining b{margin-bottom:var(--sp-2);font:var(--fw-semibold) var(--fz-label) var(--mono);color:var(--muted);display:block}.package-remaining small{margin-top:var(--sp-2)}.package-sum{text-align:right}.package-sum b{font:var(--fw-semibold) var(--fz-compact) var(--mono);display:block}.package-sum small{margin-top:var(--sp-2);color:var(--green)}.package-sum .btn.add{margin-top:var(--sp-3);min-height:30px;padding:0 var(--sp-5);font-size:var(--fz-caption)}@media (width<=860px){.package-row{grid-template-columns:minmax(0,1fr) auto}.package-remaining{grid-column:1/-1}}.messages-layout{grid-template-columns:minmax(280px,.8fr) minmax(0,1.4fr);align-items:stretch;min-height:520px;display:grid;overflow:hidden}.messages-threads{padding:var(--sp-4);border-right:1px solid var(--line);max-height:620px;overflow-y:auto}.messages-threads .message{border-radius:var(--rad-md);width:100%;padding:var(--sp-5) var(--sp-5);text-align:left;background:0 0;border:1px solid #0000}.messages-threads .message.is-active{border-color:color-mix(in srgb, var(--green) 30%, var(--line));background:var(--green-soft)}.messages-thread{min-height:0;padding:var(--sp-7);flex-direction:column;display:flex}.messages-history{gap:var(--sp-4);margin:var(--sp-7) 0;flex:1;align-content:start;min-height:240px;max-height:460px;display:grid;overflow-y:auto}.message-bubble{max-width:78%;padding:var(--sp-5) var(--sp-6);border-radius:var(--rad-md);background:var(--surface-2)}.message-bubble.trainer{background:var(--green-soft);justify-self:end}.message-bubble p{font-size:var(--fz-label)}.message-bubble time{margin-top:var(--sp-2);color:var(--dim);font:var(--fz-micro) var(--mono);display:block}.messages-reply{gap:var(--sp-4);display:grid}.analytics-score-row{gap:var(--sp-6);margin-top:var(--sp-7);grid-template-columns:repeat(3,1fr);display:grid}.analytics-score-row>div{padding:var(--sp-7);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface-2);text-align:center}.analytics-score-row b{margin-top:var(--sp-5);font-size:var(--fz-compact);display:block}.analytics-score-row small{margin-top:var(--sp-2);color:var(--dim);font-size:var(--fz-caption);display:block}@media (width<=860px){.messages-layout,.analytics-score-row{grid-template-columns:1fr}}.progress,.macro-progress,.live-progress,.finance-progress-track{border-radius:var(--rad-xs);height:5px}.progress i,.macro-progress i,.live-progress i,.finance-progress-track i{background:linear-gradient(90deg, var(--green), var(--brand))}.score-circle:after{inset:3.5px}.score-circle .score-circle-cap{width:3.5px;height:3.5px;margin:-1.75px}.score-circle .score-circle-cap.start{transform:translateY(-18.25px)}.score-circle .score-circle-cap.end{transform:rotate(calc(var(--score) * 3.6deg)) translateY(-18.25px)}.chart-line{stroke-width:1.8px}.builder-block-head[role=button]{cursor:pointer;grid-template-columns:minmax(0,1fr) auto}.builder-block-head .block-toggle{color:var(--dim);font-size:var(--fz-caption)}.weekly-day.is-today{background:color-mix(in srgb, var(--green) 5%, transparent)}.weekly-day.is-today .weekly-day-head{background:color-mix(in srgb, var(--green) 11%, var(--surface))}.weekly-day.is-today .weekly-day-head b{color:var(--green)}.connect-menu-wrap{position:relative}.connect-menu-trigger i{min-width:16px;height:16px;padding:0 var(--sp-2);border-radius:var(--rad-pill);background:var(--amber);color:var(--on-accent);font:var(--fw-bold) var(--fz-micro) var(--mono);place-items:center;font-style:normal;display:grid;position:absolute;top:-4px;right:-4px}.connect-menu{z-index:60;width:min(560px,100vw - 32px);padding:var(--sp-7);box-shadow:var(--elev-overlay);position:absolute;top:calc(100% + 8px);right:0}.connect-menu .connect-body{margin-top:var(--sp-4);padding:0}.connect-menu .connect-row b{font-size:var(--fz-compact)}.capacity-kpi span{display:block}.capacity-kpi .progress{margin:var(--sp-5) 0 var(--sp-4)}.finance-kpis{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.capacity-load{align-items:center;gap:var(--sp-2);margin-top:var(--sp-4);color:var(--dim);font-size:var(--fz-micro);display:inline-flex}.capacity-load input{width:46px;height:26px;padding:0 var(--sp-3);border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);color:var(--ink);font:var(--fw-semibold) var(--fz-caption) var(--mono)}.registry-total td{padding-top:var(--sp-6);border-top:2px solid var(--line-2);color:var(--muted);font-weight:var(--fw-strong);font-size:var(--fz-caption)}.registry-total td:first-child{color:var(--ink)}.package-editor{position:relative}.package-trigger{width:100%;padding:var(--sp-2) var(--sp-3);border-radius:var(--rad-sm);text-align:left;background:0 0;border:1px solid #0000;margin:-4px -6px}.package-trigger:hover{border-color:var(--line);background:var(--surface-2)}.package-trigger b{font-size:var(--fz-compact);display:block}.package-trigger small{margin-top:var(--sp-1);color:var(--dim);font-size:var(--fz-caption);display:block}.package-popover{z-index:50;width:300px;padding:var(--sp-6);gap:var(--sp-5);box-shadow:var(--elev-overlay);display:grid;position:absolute;top:calc(100% + 6px);left:0}.package-hint{color:var(--dim);font-size:var(--fz-caption);line-height:1.4}.package-fields{gap:var(--sp-4);grid-template-columns:1fr 1fr;display:grid}.package-foot{justify-content:space-between;align-items:center;gap:var(--sp-5);margin-top:var(--sp-1);color:var(--muted);font:var(--fw-semibold) var(--fz-caption) var(--mono);display:flex}.series-chart{width:100%;position:relative}.series-chart svg{width:100%;height:180px;display:block;overflow:visible}.series-dot{border:2.5px solid var(--green);border-radius:var(--rad-circle);background:var(--surface);pointer-events:none;z-index:2;width:9px;height:9px;margin:-4.5px 0 0 -4.5px;position:absolute}.series-tip{z-index:3;min-width:132px;padding:var(--sp-4) var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);box-shadow:var(--elev-overlay);pointer-events:none;white-space:nowrap;position:absolute;top:-6px;transform:translate(-50%,-100%)}.series-tip>b{margin-bottom:var(--sp-2);font-size:var(--fz-caption);color:var(--dim);display:block}.series-tip span{align-items:center;gap:var(--sp-2);font-size:var(--fz-caption);color:var(--muted);display:flex}.series-tip span+span{margin-top:var(--sp-2)}.series-tip i{border-radius:var(--rad-circle);flex:none;width:7px;height:7px}.series-tip b{color:var(--ink);font-variant-numeric:tabular-nums}.body-side{align-content:start;align-items:stretch;gap:var(--gap-grid);margin-top:var(--gap-grid);grid-template-rows:auto;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.body-photos{margin-top:var(--gap-grid)}@media (width<=720px){.body-side{grid-template-columns:1fr}}.composition-list,.girth-list{gap:var(--sp-1);margin-top:var(--sp-5);display:grid}.composition-row,.girth-row{align-items:center;gap:var(--gap-row);padding:var(--sp-4) 0;border-top:1px solid var(--line);display:grid}.composition-row{grid-template-columns:minmax(0,1fr) auto}.girth-row{grid-template-columns:minmax(0,1fr) 76px auto}.composition-row span,.girth-row span{color:var(--muted);font-size:var(--fz-label)}.composition-row b,.girth-row b{font:var(--fw-semibold) var(--fz-small) var(--mono)}.body-chart-card{align-self:start;min-height:0}.body-chart-wrap{min-height:0}.photo-cell:hover{border-color:var(--green)}.photo-viewer{z-index:90;place-items:center;gap:var(--sp-7);padding:var(--sp-9);background:color-mix(in srgb, var(--nav) 78%, transparent);cursor:zoom-out;display:grid;position:fixed;inset:0}.photo-viewer figure{gap:var(--sp-6);width:100%;max-width:min(760px,100%);margin:0;display:grid}.photo-viewer .photo-frame{border-radius:var(--rad-xl);background:linear-gradient(150deg, var(--surface-2), var(--surface));min-height:52vh;color:var(--dim);font-size:var(--fz-small);place-items:center;display:grid}.photo-viewer figcaption{justify-content:space-between;align-items:center;gap:var(--sp-6);color:var(--on-accent);font-size:var(--fz-small);display:flex}.photo-viewer figcaption b{font-size:var(--fz-body)}.photo-viewer-nav{gap:var(--sp-4);display:flex}.body-main-grid{align-items:start}.photo-cell{place-content:center;gap:var(--sp-2);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface-2);text-align:center;cursor:zoom-in;min-height:92px;transition:var(--dur-fast);display:grid}.photo-cell span{color:var(--dim);text-transform:uppercase;letter-spacing:var(--ls-wide);font-size:var(--fz-micro);font-weight:var(--fw-bold)}.photo-cell b{font:var(--fw-semibold) var(--fz-caption) var(--mono)}.photo-strip{gap:var(--sp-4);margin-top:var(--sp-6);grid-template-columns:repeat(4,1fr);display:grid}@media (width<=860px){.photo-strip{grid-template-columns:repeat(2,1fr)}}.nutrition-charts{gap:var(--sp-7);margin-top:var(--sp-7);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}@media (width<=1100px){.nutrition-charts{grid-template-columns:1fr}}.labs-table-card+.labs-table-card{margin-top:var(--sp-7)}.marker-name{align-items:center;gap:var(--sp-2);cursor:help;display:inline-flex;position:relative}.marker-name>i{border:1px solid var(--line-2);border-radius:var(--rad-circle);width:13px;height:13px;color:var(--dim);font:var(--fw-bold) var(--fz-micro) var(--mono);place-items:center;font-style:normal;display:grid}.marker-name:hover>i,.marker-name:focus-visible>i{border-color:var(--green);color:var(--green)}.marker-hint{z-index:90;gap:var(--sp-3);width:290px;padding:var(--sp-5) var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);box-shadow:var(--elev-overlay);color:var(--muted);font-size:var(--fz-caption);white-space:normal;pointer-events:none;line-height:1.5;display:grid;position:fixed}.marker-hint>b{color:var(--ink);font-size:var(--fz-label)}.marker-hint-training{padding-top:var(--sp-3);border-top:1px solid var(--line);color:var(--green)}.labs-draws{align-items:center;gap:var(--sp-4);margin-bottom:var(--sp-7);padding:var(--sp-5) var(--sp-7);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);font:var(--fz-caption) var(--mono);color:var(--dim);flex-wrap:wrap;display:flex}.labs-draws>b{color:var(--ink);font:var(--fw-bold) var(--fz-micro) var(--font);letter-spacing:var(--ls-caps);text-transform:uppercase}.labs-draws>span{padding:var(--sp-2) var(--sp-4);border-radius:var(--rad-pill);background:var(--surface-2)}.labs-draws>span.is-last{background:var(--green-soft);color:var(--green);font-weight:var(--fw-strong)}.labs-draws>small{color:var(--dim);margin-left:auto}.lab-edge{margin-top:var(--sp-1);color:var(--muted);font:var(--fw-semibold) var(--fz-micro) var(--mono);pointer-events:none;position:absolute;top:100%}.lab-edge.low{left:20%;transform:translate(-50%)}.lab-edge.high{left:80%;transform:translate(-50%)}.labs-table .lab-range{margin-bottom:var(--sp-6)}.insight-block{margin-bottom:var(--sp-7)}.insight-grid{gap:var(--sp-5);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}.insight-card{gap:var(--sp-4);padding:var(--sp-6) var(--sp-7);border:1px solid var(--line);border-left:3px solid var(--green);border-radius:var(--rad-md);background:var(--surface-2);font-size:var(--fz-label);line-height:1.5;display:grid}.insight-card.watch{border-left-color:var(--amber)}.insight-card.risk{border-left-color:var(--red)}.insight-head{justify-content:space-between;align-items:flex-start;gap:var(--sp-5);display:flex}.insight-head b{font-size:var(--fz-label);line-height:1.35}.insight-card p{color:var(--muted);margin:0}.insight-training{color:var(--ink)}.insight-foot{justify-content:space-between;gap:var(--sp-3);padding-top:var(--sp-4);border-top:1px solid var(--line);color:var(--dim);font:var(--fz-micro) var(--mono);flex-wrap:wrap;display:flex}.insight-doctor{color:var(--green)}.plan-card{margin-bottom:var(--sp-7)}.plan-card h3{align-items:center;gap:var(--sp-4);display:flex}.plan-track{height:8px;margin-top:var(--sp-2);border-radius:var(--rad-sm);background:var(--surface-2);overflow:hidden}.plan-track i{border-radius:inherit;background:linear-gradient(90deg, var(--green), var(--brand));height:100%;display:block}.plan-track i.ending{background:linear-gradient(90deg, var(--amber), color-mix(in srgb, var(--amber) 50%, var(--brand)))}.plan-track i.expired{background:linear-gradient(90deg, var(--red), var(--amber))}.plan-track-scale{margin-top:var(--sp-3);color:var(--dim);font:var(--fz-caption) var(--mono);justify-content:space-between;display:flex}.plan-reminder{margin-top:var(--sp-5);padding:var(--sp-5) var(--sp-6);border-radius:var(--rad-md);border:1px solid color-mix(in srgb, var(--amber) 30%, var(--line));background:var(--amber-soft);color:var(--ink);font-size:var(--fz-label);line-height:1.5}.plan-reminder.next{border-color:color-mix(in srgb, var(--green) 28%, var(--line));background:var(--green-soft)}.plan-reminder.expired{border-color:color-mix(in srgb, var(--red) 32%, var(--line));background:var(--red-soft)}.plan-corridors{gap:var(--sp-4);margin-top:var(--sp-6);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.plan-corridor{gap:var(--sp-2);padding:var(--sp-5) var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface-2);display:grid}.plan-corridor span{color:var(--dim);font-size:var(--fz-micro);text-transform:uppercase;letter-spacing:var(--ls-wide);font-weight:var(--fw-strong)}.plan-corridor b{font:var(--fw-semibold) var(--fz-compact) var(--mono)}.plan-corridor small{margin-left:var(--sp-2);color:var(--dim);font-size:var(--fz-micro);font-weight:var(--fw-regular)}.plan-editor-backdrop{z-index:80;padding:var(--sp-8);background:color-mix(in srgb, var(--nav) 45%, transparent);place-items:center;display:grid;position:fixed;inset:0;overflow:auto}.plan-editor{width:min(760px,100%);max-height:92vh;padding:var(--sp-8);overflow:auto}.plan-goals,.plan-spans{gap:var(--sp-3);flex-wrap:wrap;display:flex}.plan-goals button,.plan-spans button{padding:var(--sp-4) var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-pill);background:var(--surface);color:var(--muted);font-size:var(--fz-label);font-weight:var(--fw-medium)}.plan-goals button.on,.plan-spans button.on{border-color:var(--green);background:var(--green-soft);color:var(--green)}.plan-period{align-items:end;gap:var(--sp-5);margin-top:var(--sp-6);grid-template-columns:repeat(2,minmax(0,160px)) 1fr;display:grid}.plan-span-total{color:var(--dim);font:var(--fz-caption) var(--mono);align-self:center}.plan-field{gap:var(--sp-2);margin-top:var(--sp-5);display:grid}.plan-field>span{color:var(--dim);font-size:var(--fz-caption);font-weight:var(--fw-strong);text-transform:uppercase;letter-spacing:var(--ls-wide)}.plan-field>span small{margin-left:var(--sp-2);font-weight:var(--fw-regular);text-transform:none;letter-spacing:0}.plan-field input{padding:var(--sp-5) var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface-2);color:var(--ink);font:var(--fw-medium) var(--fz-small) var(--mono)}.plan-field input:focus-visible{outline:2px solid var(--green);outline-offset:-1px}.plan-hint{gap:var(--sp-4);margin-top:var(--sp-7);padding:var(--sp-6) var(--sp-7);border:1px solid color-mix(in srgb, var(--green) 24%, var(--line));border-radius:var(--rad-md);background:var(--green-soft);font-size:var(--fz-label);display:grid}.plan-hint ul{gap:var(--sp-2);padding-left:var(--sp-7);color:var(--muted);margin:0;line-height:1.5;display:grid}.plan-hint .btn{justify-self:start}.plan-grid{gap:var(--sp-5);margin-top:var(--sp-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.plan-actions{align-items:center;gap:var(--sp-4);margin-top:var(--sp-8);padding-top:var(--sp-7);border-top:1px solid var(--line);display:flex}.plan-summary{color:var(--dim);font:var(--fz-caption) var(--mono);flex:1}.meal-photos{margin-top:var(--sp-7)}.meal-strip{gap:var(--sp-5);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));display:grid}.meal-cell{gap:var(--sp-4);padding:var(--pad-cell);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface-2);margin:0;display:grid;position:relative}.meal-thumb{border-radius:var(--rad-sm);background:linear-gradient(140deg, var(--green-soft), var(--surface));height:86px;color:var(--green);font:var(--fw-bold) calc(18px * var(--fs)) var(--font);place-items:center;display:grid}.meal-cell figcaption{gap:var(--sp-1);font-size:var(--fz-caption);display:grid}.meal-cell figcaption b{font-size:var(--fz-label)}.meal-cell figcaption span{color:var(--dim);font-family:var(--mono);font-size:var(--fz-micro)}.meal-cell figcaption small{color:var(--muted);font-size:var(--fz-caption);line-height:1.4}.meal-new{border-radius:var(--rad-circle);background:var(--green);width:8px;height:8px;box-shadow:0 0 0 3px var(--surface-2);position:absolute;top:9px;right:9px}@media (width<=1100px){.plan-corridors,.plan-grid,.plan-period{grid-template-columns:repeat(2,minmax(0,1fr))}}.preset-panel{grid-column:1/-1;margin-top:0}.preset-group-title{margin:var(--sp-7) 0 var(--sp-4);color:var(--dim);font-size:var(--fz-micro);font-weight:var(--fw-bold);letter-spacing:var(--ls-caps);text-transform:uppercase}.preset-group-title:first-of-type{margin-top:var(--sp-2)}.preset-grid{gap:var(--sp-6);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.preset-card{gap:var(--sp-5);padding:var(--pad-card-sm);border:1px solid var(--line);border-radius:var(--rad-lg);background:var(--surface-2);flex-direction:column;display:flex}.preset-card.is-open{border-color:color-mix(in srgb, var(--green) 34%, var(--line));background:var(--surface)}.preset-card header{justify-content:space-between;align-items:flex-start;gap:var(--sp-5);display:flex}.preset-card header b{font-size:var(--fz-small);display:block}.preset-card header p{margin:var(--sp-2) 0 0;color:var(--muted);font-size:var(--fz-label);line-height:1.5}.preset-fit{gap:var(--sp-2);padding:var(--sp-5) var(--sp-5);border-radius:var(--rad-md);background:var(--green-soft);display:grid}.preset-fit b{color:var(--green);font-size:var(--fz-micro);font-weight:var(--fw-bold);letter-spacing:var(--ls-wide);text-transform:uppercase}.preset-fit span{color:var(--muted);font-size:var(--fz-caption);line-height:1.4}.preset-meta{align-items:center;gap:var(--sp-3);color:var(--dim);font:var(--fz-caption) var(--mono);flex-wrap:wrap;flex:none;display:flex}.preset-workouts{gap:var(--sp-5);padding-top:var(--sp-5);border-top:1px solid var(--line);display:grid}.preset-workout>b{align-items:baseline;gap:var(--sp-4);margin-bottom:var(--sp-2);font-size:var(--fz-label);display:flex}.preset-workout>b small{color:var(--dim);font-weight:var(--fw-regular);font-size:var(--fz-caption)}.preset-block{margin-bottom:var(--sp-4);padding-left:var(--sp-5);border-left:2px solid var(--line-2)}.preset-block-name{margin-bottom:var(--sp-2);color:var(--dim);font:var(--fw-strong) var(--fz-micro) var(--font);letter-spacing:var(--ls-wide);text-transform:uppercase;display:block}.preset-exercise{justify-content:space-between;align-items:baseline;gap:var(--sp-5);padding:var(--sp-1) 0;font-size:var(--fz-caption);display:flex}.preset-exercise small{color:var(--dim);font-family:var(--mono);font-size:var(--fz-micro);flex:none}.preset-card footer{gap:var(--sp-3);padding-top:var(--sp-5);border-top:1px solid var(--line);margin-top:auto;display:flex}.preset-card footer .btn{flex:1}.preset-card footer .btn.add{flex:1.4}.exp-summary .exp-stat{text-align:left;cursor:pointer;transition:var(--dur-fast)}.exp-stat:hover{border-color:var(--line-2)}.exp-stat.is-on{border-color:color-mix(in srgb, var(--green) 45%, var(--line));background:var(--green-soft)}.exp-block>b,.exp-protocol>b{margin-bottom:var(--sp-3);color:var(--dim);font-size:var(--fz-micro);font-weight:var(--fw-bold);letter-spacing:var(--ls-caps);text-transform:uppercase;display:block}.exp-matches{gap:var(--sp-2);padding-left:var(--sp-7);color:var(--ink);font-size:var(--fz-label);margin:0;line-height:1.5;display:grid}.exp-rule{margin-top:var(--sp-3);color:var(--dim);font:var(--fz-caption) var(--mono);display:block}.exp-why{color:var(--muted);font-size:var(--fz-label);margin:0;line-height:1.55}.exp-protocol{margin-top:var(--sp-6)}.exp-protocol ol{gap:var(--sp-2);padding-left:var(--sp-8);color:var(--muted);font-size:var(--fz-label);margin:0;line-height:1.5;display:grid}.exp-confidence-note{margin:var(--sp-3) 0 0;color:var(--dim);font-size:var(--fz-caption);line-height:1.45}.experiment-template.is-proposal{align-content:start;gap:var(--sp-5);cursor:default;display:grid}.experiment-template.is-proposal .experiment-metrics{margin:0}.experiment-template.is-proposal .btn{justify-self:start}.exp-signal-grid{gap:var(--sp-4);grid-template-columns:repeat(auto-fill,minmax(230px,1fr));display:grid}.exp-signal{gap:var(--sp-2);padding:var(--sp-5) var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface-2);display:grid}.exp-signal span{color:var(--dim);font-size:var(--fz-micro);font-weight:var(--fw-strong);letter-spacing:var(--ls-wide);text-transform:uppercase}.exp-signal b{font-size:var(--fz-label);font-weight:var(--fw-medium);line-height:1.4}.exp-lib-tabs{margin-bottom:var(--sp-7)}.exp-lib-grid{gap:var(--sp-6);grid-template-columns:repeat(auto-fill,minmax(400px,1fr));display:grid}.exp-lib-card{gap:var(--sp-6);flex-direction:column;display:flex}.exp-lib-card h3{margin-top:var(--sp-2);font-size:var(--fz-compact)}.exp-lib-card p{margin:var(--sp-2) 0 0;color:var(--muted);font-size:var(--fz-label);line-height:1.5}.exp-head-tags{gap:var(--sp-3);margin-bottom:var(--sp-4);flex-wrap:wrap;display:flex}.exp-code{padding:var(--sp-1) var(--sp-4);border-radius:var(--rad-xs);background:var(--surface-2);color:var(--dim);font:var(--fz-micro) var(--mono)}.exp-lib-trigger{padding:var(--sp-5) var(--sp-6);border-radius:var(--rad-md);border:1px solid color-mix(in srgb, var(--green) 20%, var(--line));background:var(--green-soft)}.exp-lib-trigger>b{margin-bottom:var(--sp-2);color:var(--green);font-size:var(--fz-micro);font-weight:var(--fw-bold);letter-spacing:var(--ls-caps);text-transform:uppercase;display:block}.exp-lib-trigger p{margin:0 0 var(--sp-4);color:var(--ink);font-size:var(--fz-label)}.exp-rules{align-items:center;gap:var(--sp-3);flex-wrap:wrap;display:flex}.exp-rules code{padding:var(--sp-2) var(--sp-4);border-radius:var(--rad-xs);background:var(--surface);color:var(--ink);font:var(--fw-medium) var(--fz-caption) var(--mono)}.exp-lib-meta{gap:var(--sp-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.exp-lib-meta>div{gap:var(--sp-2);display:grid}.exp-lib-meta span{color:var(--dim);font-size:var(--fz-micro);font-weight:var(--fw-strong);letter-spacing:var(--ls-wide);text-transform:uppercase}.exp-lib-meta b{font-size:var(--fz-label)}.exp-lib-sources{gap:var(--sp-3);flex-wrap:wrap;display:flex}.exp-lib-sources span{padding:var(--sp-2) var(--sp-5);border-radius:var(--rad-pill);background:var(--surface-2);color:var(--muted);font-size:var(--fz-caption)}.exp-lib-sources span.is-missing{background:var(--amber-soft);color:var(--amber)}.exp-lib-body{gap:var(--sp-6);display:grid}.exp-lib-card .btn{margin-top:auto}@media (width<=1100px){.exp-lib-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.exp-lib-grid{grid-template-columns:1fr}}.recheck-block{margin-top:var(--sp-7);padding-top:var(--sp-6);border-top:1px solid var(--line)}.recheck-title{margin-bottom:var(--sp-4);color:var(--dim);font-size:var(--fz-micro);font-weight:var(--fw-bold);letter-spacing:var(--ls-caps);text-transform:uppercase}.recheck-row{justify-content:space-between;align-items:flex-start;gap:var(--gap-row);padding:var(--sp-4) 0;border-top:1px solid var(--line);display:flex}.recheck-row:first-of-type{border-top:0}.recheck-row b{font-size:var(--fz-label);display:block}.recheck-row span{color:var(--dim);font-size:var(--fz-caption);line-height:1.4}.recheck-row.is-overdue b{color:var(--amber)}.goal-card{margin-bottom:var(--sp-7);border-left:3px solid var(--green)}.goal-card.behind{border-left-color:var(--amber)}.goal-card.ahead,.goal-card.done{border-left-color:var(--green)}.goal-card h3 b{color:var(--green);font:var(--fw-strong) var(--fz-body) var(--mono)}.goal-tracks{gap:var(--sp-4);display:grid}.goal-track{align-items:center;gap:var(--sp-5);font-size:var(--fz-caption);color:var(--dim);grid-template-columns:120px minmax(0,1fr) 96px;display:grid}.goal-bar{border-radius:var(--rad-sm);background:var(--surface-2);height:9px;overflow:hidden}.goal-bar i{border-radius:inherit;background:linear-gradient(90deg, var(--green), var(--brand));height:100%;display:block}.goal-bar.time i{background:var(--line-2)}.goal-track b{text-align:right;color:var(--ink);font:var(--fw-semibold) var(--fz-caption) var(--mono)}.goal-note{margin-top:var(--sp-5);padding-top:var(--sp-5);border-top:1px solid var(--line);color:var(--muted);font-size:var(--fz-label)}.mini-spark-wrap{display:block;position:relative}.mini-spark-dot{border:2px solid var(--green);border-radius:var(--rad-circle);background:var(--surface);pointer-events:none;width:7px;height:7px;margin:-3.5px 0 0 -3.5px;position:absolute}.mini-spark-value{align-items:baseline;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);border:1px solid var(--line);border-radius:var(--rad-xs);background:var(--surface);box-shadow:var(--elev-flat);white-space:nowrap;pointer-events:none;z-index:2;display:flex;position:absolute;bottom:calc(100% - 6px);transform:translate(-50%)}.mini-spark-value b{font:var(--fw-semibold) var(--fz-label) var(--mono);color:var(--ink)}.mini-spark-value i{color:var(--dim);font-style:normal;font-size:var(--fz-micro)}.overview-metric.warn{border-color:color-mix(in srgb, var(--amber) 32%, var(--line))}.overview-metric-sub{line-height:1.45}.event-entry.risk time{color:var(--red)}.event-entry.watch time{color:var(--amber)}.event-entry.good time{color:var(--green)}.insight-row>div{gap:var(--sp-2);display:grid}.insight-row b{align-items:center;gap:var(--sp-4);font-size:var(--fz-small);display:flex}.insight-row p{color:var(--muted);margin:0;line-height:1.5}.insight-row .btn{margin-top:var(--sp-2);justify-self:start}.checkin-fact b.good{color:var(--green)}.checkin-fact b.bad{color:var(--amber)}.checkin-comment{margin-top:var(--sp-5);padding:var(--sp-5) var(--sp-6);border-left:2px solid var(--line-2);color:var(--muted);font-size:var(--fz-label);font-style:italic;line-height:1.5}.checkin-history{align-items:flex-end;gap:var(--sp-4);margin-top:var(--sp-6);padding-top:var(--sp-6);border-top:1px solid var(--line);flex-wrap:wrap;height:auto;min-height:74px;display:flex}.checkin-point{place-content:end flex-end;place-items:center;gap:var(--sp-2);flex-direction:column;flex:1;height:74px;display:flex}.checkin-point i{padding-top:var(--sp-1);border-radius:var(--rad-xs) var(--rad-xs) 0 0;background:linear-gradient(180deg, var(--green), color-mix(in srgb, var(--green) 45%, var(--brand)));flex:none;place-items:start center;width:100%;max-width:26px;min-height:3px;display:grid;position:relative}.checkin-point span{color:var(--dim);font:var(--fz-micro) var(--mono);order:2}.checkin-history>small{color:var(--dim);font-size:var(--fz-micro);flex:1 0 100%;order:3}.health-index-grid{gap:var(--sp-6);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.health-index{gap:var(--sp-4);padding:var(--sp-7);text-align:left;cursor:pointer;transition:var(--dur-fast);display:grid}.health-index:hover{border-color:var(--line-2)}.health-index.is-open{border-color:color-mix(in srgb, var(--green) 40%, var(--line))}.health-score{align-items:baseline;gap:var(--sp-3);display:flex}.health-score b{font:var(--fw-strong) calc(30px * var(--fs)) var(--mono);letter-spacing:var(--ls-snug)}.health-score span{color:var(--dim);font-size:var(--fz-caption)}.health-index.good .health-score b{color:var(--green)}.health-index.watch .health-score b{color:var(--amber)}.health-index.risk .health-score b{color:var(--red)}.health-track{border-radius:var(--rad-xs);background:var(--surface-2);height:6px;overflow:hidden}.health-track i{border-radius:inherit;height:100%;display:block}.health-index-foot{gap:var(--sp-1);display:grid}.health-index-foot b{font:var(--fw-semibold) var(--fz-label) var(--mono)}.health-index-foot span{color:var(--dim);font-size:var(--fz-caption);line-height:1.4}.health-detail{margin-top:var(--sp-7)}.health-series-grid{gap:var(--gap-grid);margin-top:var(--sp-7);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width<=1100px){.health-index-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.health-series-grid{grid-template-columns:1fr}}.training-tabs{margin-bottom:var(--sp-7)}.training-grid{gap:var(--gap-grid);margin-top:var(--sp-7);grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;display:grid}.plan-list,.cycle-list{gap:var(--sp-1);display:grid}.plan-row{align-items:center;gap:var(--sp-6);padding:var(--sp-5) 0;border-top:1px solid var(--line);grid-template-columns:minmax(0,150px) minmax(0,1fr) auto;display:grid}.plan-when b,.plan-what b{font-size:var(--fz-label);display:block}.plan-when span,.plan-what span{color:var(--dim);font-size:var(--fz-caption)}.plan-state{justify-content:flex-end;gap:var(--sp-2);flex-wrap:wrap;display:flex}.cycle-slot{padding:var(--sp-5) 0;border-top:1px solid var(--line)}.cycle-slot p{margin:var(--sp-2) 0 0;color:var(--muted);font-size:var(--fz-caption);line-height:1.45}.cardio-bars{align-items:flex-end;gap:var(--sp-5);height:150px;margin-top:var(--sp-5);display:flex}.cardio-bar{align-content:end;justify-items:center;gap:var(--sp-2);cursor:pointer;background:0 0;border:0;flex:1;height:100%;padding:0;display:grid}.cardio-bar i{border-radius:var(--rad-xs) var(--rad-xs) 0 0;background:color-mix(in srgb, var(--green) 35%, var(--surface-2));width:100%;max-width:46px;min-height:6px;display:block}.cardio-bar.is-on i{background:linear-gradient(180deg, var(--green), var(--brand))}.cardio-bar b{font:var(--fw-semibold) var(--fz-caption) var(--mono)}.cardio-bar span{color:var(--dim);font-size:var(--fz-micro)}.zone-bars{gap:var(--sp-4);display:grid}.zone-row{align-items:center;gap:var(--gap-row);font-size:var(--fz-label);grid-template-columns:minmax(0,140px) minmax(0,1fr) 44px;display:grid}.zone-track{border-radius:var(--rad-sm);background:var(--surface-2);height:10px;overflow:hidden}.zone-track i{border-radius:inherit;height:100%;display:block}.zone-row b{text-align:right;font:var(--fw-semibold) var(--fz-label) var(--mono)}.session-exercises{gap:var(--sp-1);display:grid}.session-exercise{align-items:baseline;gap:var(--sp-6);padding:var(--sp-5) 0;border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,200px) 110px;display:grid}.session-exercise b{font-size:var(--fz-label)}.session-exercise span{color:var(--muted);font:var(--fz-caption) var(--mono)}.session-exercise small{color:var(--dim);text-align:right;font:var(--fw-semibold) var(--fz-caption) var(--mono)}.progress-grid{gap:var(--gap-grid);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width<=1100px){.training-grid,.progress-grid{grid-template-columns:1fr}.plan-row{gap:var(--sp-2);grid-template-columns:1fr}}.message-bubble .pill{margin-bottom:var(--sp-3)}.detail-client .btn{margin-left:auto}.deviation-list.is-scrollable,.weekly-items.is-scrollable{max-height:560px;padding-right:var(--sp-2);overflow-y:auto}.data-state{gap:var(--sp-4);padding:var(--sp-8);border-radius:var(--rad-md);background:var(--surface-2);display:grid}.data-state.is-error{border:1px solid color-mix(in srgb, var(--red) 30%, var(--line));background:var(--red-soft)}.data-state.is-error b{color:var(--red);font-size:var(--fz-small)}.data-state.is-error span{color:var(--muted);font-size:var(--fz-label);line-height:1.45}.data-state.is-error .btn{justify-self:start}.data-state small{color:var(--dim);font-size:var(--fz-caption)}.data-state-skeleton{border-radius:var(--rad-xs);background:linear-gradient(90deg, var(--line) 25%, color-mix(in srgb, var(--line) 45%, var(--surface)) 50%, var(--line) 75%);background-size:200% 100%;height:11px;animation:1.4s ease-in-out infinite data-state-shimmer;display:block}.data-state-skeleton.short{width:45%}@keyframes data-state-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.data-state-skeleton{animation:none}}.exercise-photo-error{margin-top:var(--sp-7);padding:var(--sp-6) var(--sp-7);border-radius:var(--rad-md);background:var(--red-soft);color:var(--red);font-size:var(--fz-small)}@media (width<=600px){.live-top{flex-wrap:wrap}}@media (width<=860px){.client-page-nav{scrollbar-width:none;flex-wrap:nowrap;display:flex;overflow-x:auto}.client-page-nav::-webkit-scrollbar{display:none}.client-page-nav button{white-space:nowrap;flex:none}.client-nav-select{display:none}}@media (width<=600px){.session-exercise{gap:var(--sp-2) var(--sp-6);grid-template-columns:minmax(0,1fr) auto}.session-exercise b{grid-column:1/-1}.session-exercise small{text-align:right}}.bottom-nav{grid-template-columns:none;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column}@media (width<=380px){.health-index-grid,.stat-grid,.exp-summary,.overview-metrics{grid-template-columns:minmax(0,1fr)}.card-title,.nutrition-head,.page-actions{flex-wrap:wrap}.insight-grid,.cycle-setup-layout,.form-grid,.preset-grid{grid-template-columns:minmax(0,1fr)}.modal-body{padding-left:var(--sp-7);padding-right:var(--sp-7)}}@media (width<=600px){.checkin-history{flex-wrap:wrap;height:auto}.checkin-point{height:74px}.checkin-history small{text-align:right;flex:1 0 100%}}.registry-tabs>button,.subnav>button,.task-filters>button,.catalog-filters>button,.training-tabs>button,.cycle-workout-tabs>button,.registry-mobile-sorts>button,.builder-filter-row>button,.muscle-filter-row>button{white-space:nowrap;flex:none}.detail-client-link{align-items:center;gap:var(--sp-5);white-space:normal;flex:1;min-width:0;padding:0;display:flex}.detail-client-link>span:last-child{min-width:0;display:block}.detail-client-link:hover{text-decoration-color:currentColor}.insight-row b .pill{place-items:unset;border-radius:var(--rad-pill);width:auto;height:auto;min-height:23px;padding:var(--sp-2) var(--sp-5);font:var(--fw-strong) var(--fz-caption) var(--font);align-items:center;display:inline-flex}.next-checkin .page-actions{margin-top:var(--sp-7)}.builder-exercise-number{border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface-2);width:26px;min-height:26px;color:var(--muted);font:var(--fw-semibold) var(--fz-caption) var(--mono);align-self:start}.builder-exercise.is-marked{border-color:color-mix(in srgb, var(--green) 55%, var(--line));background:color-mix(in srgb, var(--green-soft) 45%, var(--surface))}.builder-exercise.is-marked .builder-exercise-number{border-color:var(--green);background:var(--green-soft);color:var(--green)}.builder-exercise-body{gap:var(--sp-4);min-width:0;display:grid}.builder-assignment{gap:var(--sp-3);flex-wrap:wrap;display:flex}.builder-assignment .live-set-field{flex:66px;min-width:66px;max-width:108px}.builder-exercise-order{gap:var(--sp-2);align-self:start;display:flex}.builder-exercise-order button{border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);width:24px;min-height:24px;color:var(--muted)}.review-block+.review-block{margin-top:var(--sp-6)}.review-block-head{color:var(--dim);font:var(--fw-semibold) var(--fz-micro) var(--mono);letter-spacing:var(--ls-caps);text-transform:uppercase}.review-row{justify-content:space-between;align-items:baseline;gap:var(--sp-6);padding:var(--sp-4) 0;border-bottom:1px solid var(--line);display:flex}.review-row span{color:var(--muted);font:var(--fz-label) var(--mono);white-space:nowrap}.review-gaps{gap:var(--sp-2);margin-top:var(--sp-7);padding:var(--sp-6) var(--sp-7);border:1px solid color-mix(in srgb, var(--amber) 45%, var(--line));border-radius:var(--rad-md);background:var(--amber-soft);color:var(--amber);font-size:var(--fz-label);display:grid}.assistant-dock{z-index:40;gap:var(--sp-4);display:flex;position:fixed;bottom:18px;right:18px}.assistant-call,.assistant-mic{border-radius:var(--rad-circle);border:1px solid var(--line);background:var(--surface);width:52px;height:52px;color:var(--ink);font:var(--fw-semibold) var(--fz-small) var(--mono);box-shadow:var(--elev-raised)}.assistant-call{border-color:var(--green);background:var(--green);color:var(--on-accent)}.assistant-mic.is-listening{border-color:var(--red);background:var(--red-soft);color:var(--red)}.assistant-mic:disabled{opacity:.55}.assistant-panel{z-index:40;border:1px solid var(--line);border-radius:var(--rad-xl);background:var(--surface);width:min(380px,100vw - 36px);max-height:min(520px,100vh - 120px);box-shadow:var(--elev-overlay);flex-direction:column;display:flex;position:fixed;bottom:74px;right:18px;overflow:hidden}.assistant-head{justify-content:space-between;align-items:center;gap:var(--sp-5);padding:var(--sp-6) var(--sp-7);border-bottom:1px solid var(--line);display:flex}.assistant-head b{font-size:var(--fz-small);display:block}.assistant-head span{color:var(--dim);font-size:var(--fz-caption)}.assistant-feed{padding:var(--sp-6) var(--sp-7);gap:var(--sp-5);flex:1;align-content:start;display:grid;overflow-y:auto}.assistant-line p{padding:var(--sp-5) var(--sp-5);border-radius:var(--rad-md);background:var(--surface-2);color:var(--ink);font-size:var(--fz-label);margin:0;line-height:1.45}.assistant-line.trainer p{background:var(--green-soft);color:var(--green);justify-self:end}.assistant-line button{margin-top:var(--sp-2);color:var(--green);font-size:var(--fz-caption);font-weight:var(--fw-semibold);background:0 0;border:0}.assistant-thinking{padding:var(--sp-5) var(--sp-5);color:var(--dim);font-size:var(--fz-label)}.assistant-input{gap:var(--sp-3);padding:var(--sp-5) var(--sp-6);border-top:1px solid var(--line);display:flex}.assistant-input .field-input{flex:1;min-width:0}@media (width<=860px){.assistant-dock{bottom:74px}.assistant-panel{bottom:130px}.live-page .assistant-dock{left:14px;right:auto}.live-page .live-set-list{padding-bottom:64px}}.live-indicator{max-width:min(460px,100vw - 470px);bottom:30px;left:calc(50vw - min(1540px,100%)/2 + 284px);right:auto}.live-indicator button{box-shadow:var(--elev-raised)}.assistant-mic{font-size:22px;line-height:1}@media (width<=860px){.assistant-mic,.assistant-call{width:44px;height:44px}.assistant-mic{font-size:19px}.live-indicator{left:12px;bottom:calc(74px + env(safe-area-inset-bottom));max-width:calc(100vw - 150px)}}.bottom-more{z-index:45;min-width:210px;padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);box-shadow:var(--elev-raised);display:grid;position:absolute;bottom:calc(100% + 8px);left:8px;right:84px}.bottom-more button{padding:var(--sp-5) var(--sp-5);border-radius:var(--rad-sm);color:var(--ink);font-size:var(--fz-label);text-align:left;background:0 0;border:0;justify-content:flex-start}.bottom-more button:hover{background:var(--surface-2)}.exercise-detail-noimage{margin-bottom:var(--sp-7);padding:var(--sp-6) var(--sp-7);border:1px dashed var(--line);border-radius:var(--rad-md);color:var(--muted);font-size:var(--fz-label);line-height:1.5}.live-add-exercise{gap:var(--sp-4);margin-top:var(--sp-6);display:grid}.live-add-list{gap:var(--sp-2);max-height:220px;display:grid;overflow-y:auto}.live-add-list button{gap:var(--sp-1);padding:var(--sp-5) var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);text-align:left;display:grid}.live-add-list button b{font-size:var(--fz-label)}.live-add-list button small{color:var(--dim);font-size:var(--fz-caption)}.live-add-list button:hover{border-color:color-mix(in srgb, var(--green) 45%, var(--line));background:var(--surface-2)}.walk-in-known{align-items:center;gap:var(--sp-3);margin-top:var(--sp-4);font-size:var(--fz-caption);flex-wrap:wrap;display:flex}.walk-in-known button{padding:var(--sp-2) var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-pill);background:var(--surface);font-size:var(--fz-caption)}.walk-in-known button:hover{border-color:color-mix(in srgb, var(--green) 45%, var(--line));background:var(--green-soft);color:var(--green)}.client-row-actions{text-align:center;width:34px;color:var(--dim)}.client-row-actions button{border-radius:var(--rad-sm);width:26px;height:26px;color:var(--dim);font-size:var(--fz-compact);background:0 0;border:1px solid #0000;line-height:1}.client-row-actions button:hover{border-color:color-mix(in srgb, var(--red) 45%, var(--line));background:color-mix(in srgb, var(--red) 10%, transparent);color:var(--red)}.builder-block-name{flex:1;min-width:0}.builder-block-title{width:100%;padding:var(--sp-1) var(--sp-2);border-radius:var(--rad-xs);color:var(--ink);font:var(--fw-semibold) var(--fz-small) inherit;background:0 0;border:1px solid #0000}.builder-block-title:hover{border-color:var(--line)}.builder-block-title:focus{border-color:var(--green);background:var(--surface);outline:none}.builder-block-rounds{width:42px;padding:var(--sp-1) var(--sp-2);border:1px solid var(--line);border-radius:var(--rad-xs);background:var(--surface);color:var(--ink);font:inherit;font-variant-numeric:tabular-nums}@media (width<=860px){.builder-add-blocks{padding-bottom:64px}.builder-catalogue-target{display:block}}.builder-catalogue-target{margin-top:var(--sp-2);color:var(--green);font-size:var(--fz-caption);display:none}.builder-block-type{color:var(--dim);text-transform:uppercase;letter-spacing:var(--ls-caps);font-size:var(--fz-micro);font-weight:var(--fw-bold);display:block}.progress-open{text-align:left;cursor:pointer;background:0 0;border:0;width:100%;padding:0;display:block}.progress-open:hover h3{color:var(--green)}.progress-open:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:var(--rad-xs)}.link-inline{color:var(--green);font:inherit;text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}@media (width<=860px){.client-page-nav{position:relative;-webkit-mask-image:linear-gradient(90deg,#000 88%,#0000);mask-image:linear-gradient(90deg,#000 88%,#0000)}}.plan-assumed{margin-bottom:var(--sp-4);padding:var(--sp-4) var(--sp-5);border-radius:var(--rad-sm);background:color-mix(in srgb, var(--amber) 12%, transparent);color:var(--ink);font-size:var(--fz-caption);line-height:1.4}.toast{align-items:center;gap:var(--sp-5);display:flex}.toast-action{padding:var(--sp-2) var(--sp-5);border:1px solid color-mix(in srgb, currentColor 45%, transparent);border-radius:var(--rad-pill);color:inherit;font:inherit;font-size:var(--fz-caption);cursor:pointer;background:0 0}.toast-action:hover{background:color-mix(in srgb, currentColor 14%, transparent)}@media (width<=520px){.assistant-panel .icon-btn{display:grid}.assistant-input .btn{padding:0 var(--sp-5);flex:none}.assistant-input input{flex:auto;min-width:0}}.weekly-session.declined{border-style:dashed;border-color:color-mix(in srgb, var(--red) 55%, var(--line));opacity:.82}.weekly-session.declined h4{text-decoration:line-through;-webkit-text-decoration-color:color-mix(in srgb, var(--red) 60%, transparent);text-decoration-color:color-mix(in srgb, var(--red) 60%, transparent)}.confirmation-legend.declined{border-color:color-mix(in srgb, var(--red) 45%, var(--line));color:var(--red)}.confirmation-legend.declined i{background:var(--red)}.session-confirm-row{justify-content:space-between;align-items:center;gap:var(--gap-row);margin:var(--sp-5) 0 0;display:flex}.session-confirm-row .btn{height:28px;padding:0 var(--sp-6);font-size:var(--fz-caption)}.score-circle.empty{border:1px dashed var(--line);color:var(--dim);background:0 0}.score-circle.empty span{color:var(--dim)}.auth-recovery{gap:var(--sp-4);margin-top:var(--sp-6);padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface-2);font-size:var(--fz-label);display:grid}.auth-recovery code{word-break:break-all;font:var(--fz-caption) var(--mono)}.access-log{display:grid}.access-row{gap:var(--gap-row);padding:var(--sp-5) 0;border-top:1px solid var(--line);font-size:var(--fz-label);grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:baseline;display:grid}.access-row:first-child{border-top:0}.access-row span{color:var(--muted)}.access-row time{color:var(--dim);font:var(--fz-caption) var(--mono);font-variant-numeric:tabular-nums}.empty-day{gap:var(--sp-4);padding:var(--sp-8);border:1px dashed var(--line-2);border-radius:var(--rad-md);background:var(--surface-2);display:grid}.empty-day h3{font-size:var(--fz-body)}.empty-day p{color:var(--muted);font-size:var(--fz-label)}.empty-day .page-actions{gap:var(--sp-4);flex-wrap:wrap}.builder-save-error{gap:var(--sp-2);margin:var(--sp-6) 0 0;padding:var(--sp-5) var(--sp-6);border:1px solid color-mix(in srgb, var(--red) 45%, var(--line));border-radius:var(--rad-md);background:color-mix(in srgb, var(--red) 8%, transparent);font-size:var(--fz-label);display:grid}.builder-save-error span{color:var(--muted)}.connect-body.is-scrollable{scrollbar-width:thin;max-height:280px;overflow-y:auto}.mini-spark-value em{margin-left:var(--sp-2);color:var(--dim);font-style:normal}@media (width<=860px){.content{padding-bottom:84px}.detail-foot{padding-bottom:var(--sp-4)}}.series-plot{position:relative}.series-axis{margin-top:var(--sp-2);color:var(--dim);font:var(--fz-micro) var(--mono);justify-content:space-between;display:flex}.series-scale{pointer-events:none;height:100%;color:var(--dim);font:var(--fz-micro) var(--mono);font-variant-numeric:tabular-nums;flex-direction:column;justify-content:space-between;align-items:flex-end;display:flex;position:absolute;top:0;right:0}.exp-stop{gap:var(--sp-4);margin-top:var(--sp-5);flex-direction:column;display:flex}.experiment-card.is-stopped{border-style:dashed}.experiment-card.is-stopped .experiment-metrics{color:var(--dim)}.builder-sets{gap:var(--sp-2);margin-top:var(--sp-4);display:grid}.builder-set-head,.builder-set-row{gap:var(--sp-3);grid-template-columns:22px repeat(4,minmax(0,1fr)) 26px;align-items:center;display:grid}.builder-set-head>span{color:var(--dim);font-size:var(--fz-micro);font-weight:var(--fw-strong);letter-spacing:var(--ls-wide)}.builder-set-number{color:var(--dim);font:var(--fw-semibold) var(--fz-caption) var(--mono);text-align:center}.builder-set-drop,.builder-set-add{border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);color:var(--muted);min-height:26px;font-size:var(--fz-label);font-weight:var(--fw-semibold)}.builder-set-drop:hover,.builder-set-add:hover{border-color:var(--line-2);color:var(--ink)}.builder-set-add{padding:0 var(--sp-5);margin-top:var(--sp-1);justify-self:start}@media (width<=720px){.builder-exercise{grid-template-columns:24px minmax(0,1fr);align-items:start}.builder-exercise-body{grid-column:2}.builder-exercise-order{justify-self:end;gap:var(--sp-3);grid-column:2;display:flex}.builder-set-head{display:none}.builder-set-row{row-gap:var(--sp-2);margin-bottom:var(--sp-3);grid-template-columns:22px minmax(0,1fr) minmax(0,1fr) 26px}.builder-set-row>:first-child{grid-area:1/1/3/2;align-self:center}.builder-set-row>:nth-child(2){grid-area:1/2/2/3}.builder-set-row>:nth-child(3){grid-area:1/3/2/4}.builder-set-row>:nth-child(4){grid-area:2/2/3/3}.builder-set-row>:nth-child(5){grid-area:2/3/3/4}.builder-set-row>:nth-child(6){grid-area:1/4/3/5;align-self:center}}@media (width>=901px){.workflow-head>:first-child{min-width:0}.workflow-head .workflow-actions{flex-wrap:nowrap;flex-shrink:0}.workflow-head .workflow-actions .btn{white-space:nowrap}}.builder-library-line{gap:var(--sp-3);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.builder-library-line .builder-library-item{width:100%}.builder-library-info{width:30px;height:30px;min-height:30px;color:var(--muted);font-size:var(--fz-small)}.builder-library-info:hover{color:var(--ink)}.builder-load{gap:var(--sp-2);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.builder-load-unit{color:var(--dim);font:var(--fw-semibold) var(--fz-caption) var(--mono);white-space:nowrap}.builder-marked{gap:var(--sp-2);margin:0 0 var(--sp-6);padding:var(--sp-5) var(--sp-6);border:1px solid var(--brand);border-radius:var(--rad-md);background:color-mix(in srgb, var(--brand) 12%, transparent);display:grid}.builder-marked b{font-size:var(--fz-small)}.builder-marked span{color:var(--muted);font-size:var(--fz-label)}.builder-marked .page-actions{margin-top:var(--sp-3);flex-wrap:wrap}.builder-finish{gap:var(--sp-6);margin-top:var(--sp-7);padding:var(--sp-6) var(--sp-7);border:1px solid var(--line);border-radius:var(--rad-lg);background:var(--surface);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.builder-finish b{font-size:var(--fz-small);display:block}.builder-finish span{color:var(--muted);font-size:var(--fz-label)}.program-panel{margin-top:var(--sp-7)}.program-workouts{gap:var(--sp-4);margin:var(--sp-6) 0;padding:0;list-style:none;display:grid}.program-workouts li{gap:var(--sp-1) var(--sp-6);padding:var(--sp-5) var(--sp-6);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name actions""meta actions";align-items:center;display:grid}.program-workouts li.is-editing{border-color:var(--brand);background:color-mix(in srgb, var(--brand) 10%, transparent)}.program-workouts b{font-size:var(--fz-small);grid-area:name}.program-workouts span{color:var(--muted);font-size:var(--fz-caption);grid-area:meta}.program-workouts .page-actions{grid-area:actions}.program-saved{gap:var(--sp-3);display:grid}.program-saved b{font-size:var(--fz-label)}.program-saved-item{justify-content:space-between;gap:var(--sp-5);padding:var(--sp-4) var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);text-align:left;font-size:var(--fz-label);display:flex}.program-saved-item:hover{border-color:var(--line-2)}.program-saved-item small{color:var(--dim)}.profile-open{align-items:center;gap:var(--sp-5);min-width:0;padding:var(--sp-2) var(--sp-3);border-radius:var(--rad-sm);color:inherit;text-align:left;background:0 0;border:0;flex:1;margin:-4px -6px;display:flex}.profile-open:hover{background:#ffffff0f}.profile-open>span:last-child{min-width:0}.profile-open b,.profile-open small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.profile .avatar img{border-radius:inherit;object-fit:cover;width:100%;height:100%}.profile-page>.card,.profile-page>.grid-2{margin-bottom:var(--sp-7)}.profile-page .form-grid{align-items:start}.profile-off-empty{margin:var(--sp-5) 0 var(--sp-1)}.profile-off-form{margin-top:var(--sp-5)}.profile-off-actions{margin-top:var(--sp-6)}.profile-person{gap:var(--sp-8);margin-top:var(--sp-6);grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.profile-person .profile-photo{align-items:flex-start;gap:var(--sp-4);flex-direction:column;margin:0}.profile-person .page-actions{flex-direction:column;align-items:stretch}@media (width<=720px){.profile-page .form-grid{align-items:start}.profile-off-empty{margin:var(--sp-5) 0 var(--sp-1)}.profile-off-form{margin-top:var(--sp-5)}.profile-off-actions{margin-top:var(--sp-6)}.profile-person{grid-template-columns:minmax(0,1fr)}}.profile-week{gap:var(--sp-3);margin:var(--sp-6) 0;display:grid}.profile-day{gap:var(--sp-5);padding:var(--sp-4) var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-md);background:var(--surface);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.profile-day.is-off{color:var(--muted);background:0 0}.profile-day-name{align-items:center;gap:var(--sp-4);font-size:var(--fz-small);font-weight:var(--fw-semibold);display:flex}.profile-day-name input{width:15px;height:15px;accent-color:var(--green)}.profile-day-hours{align-items:center;gap:var(--sp-4);display:flex}.profile-day-hours .field-input{width:auto;min-width:108px;height:32px;padding:0 var(--sp-4);font-variant-numeric:tabular-nums}.profile-photo{align-items:center;gap:var(--sp-7);margin-top:var(--sp-6);display:flex}.profile-photo-face{border-radius:var(--rad-xl);width:72px;height:72px;font-size:var(--fz-page)}.profile-photo-face img{border-radius:inherit;object-fit:cover;width:100%;height:100%}.profile-code{gap:var(--sp-2);display:grid}.profile-code code{font:var(--fw-strong) var(--fz-body) var(--mono);letter-spacing:var(--ls-wide)}.profile-code span{font-size:var(--fz-label)}@media (width<=720px){.profile-day{grid-template-columns:minmax(0,1fr)}.profile-day-hours .field-input{flex:1;min-width:0}}.weekly-day.is-off .weekly-day-head{color:var(--dim)}.weekly-day.is-off .weekly-day-timeline{background-image:repeating-linear-gradient(135deg, transparent, transparent 7px, color-mix(in srgb, var(--line) 55%, transparent) 7px, color-mix(in srgb, var(--line) 55%, transparent) 8px)}.auth-hint{margin:var(--sp-2) 0 0;color:var(--muted);font-size:var(--fz-label);line-height:1.45}.field-reveal{position:relative}.field-reveal .field-input{padding-right:84px}.field-reveal-btn{height:29px;padding:0 var(--sp-5);border:1px solid var(--line);border-radius:var(--rad-sm);background:var(--surface);color:var(--muted);font-size:var(--fz-caption);font-weight:var(--fw-semibold);position:absolute;top:50%;right:6px;transform:translateY(-50%)}.field-reveal-btn:hover{border-color:var(--line-2);color:var(--ink)}.auth-hint.wrong{color:var(--red)}.auth-form .btn[disabled]{opacity:.5;cursor:default}.assistant-check{margin:0 0 var(--sp-3);color:var(--amber);font-size:var(--fz-label)}.modal-head .modal-sub{margin-top:var(--sp-1);font-size:var(--fz-label)}.weekly-expand{border:1px solid var(--line);border-radius:var(--rad-pill);background:var(--surface);width:29px;height:29px;color:var(--muted);font:var(--fw-semibold) var(--fz-small) var(--mono);flex:none;line-height:1}.weekly-expand:hover{border-color:var(--line-2);color:var(--ink)}.weekly-expand[aria-expanded=true]{border-color:var(--green);background:var(--green-soft);color:var(--green)}.overview-metrics{align-items:start;gap:var(--gap-grid)}.overview-events{flex-direction:column;min-height:0;display:flex}.overview-events .card-title{flex:none}.event-feed.is-scrollable{padding-right:var(--sp-2);flex:1;min-height:0;max-height:none;overflow-y:auto}.checkin-point i b{color:var(--surface);font:var(--fw-semibold) var(--fz-micro) var(--mono);line-height:1}.series-months{height:var(--sp-7);margin-top:var(--sp-2);color:var(--dim);font:var(--fz-micro) var(--mono);position:relative}.series-months span{white-space:nowrap;position:absolute;top:0;transform:translate(-50%)}.series-months span:first-child{transform:none}.series-months span:last-child{transform:translate(-100%)}.lab-range .history-dot,.lab-range .current{appearance:none;cursor:pointer;border:0;padding:0}.lab-range .history-dot{border:2px solid var(--surface)}.lab-range .history-dot:hover{opacity:1}.lab-range .history-dot.is-picked{opacity:1;background:var(--ink)}.lab-range .current.is-muted{opacity:.42}.lab-range .current.picked{z-index:3;background:var(--ink)}.labs-value-date{margin-top:var(--sp-1);color:var(--dim);font:var(--fz-micro) var(--mono);font-style:normal;display:block}.task-loading{--state:loading}.auth-page{grid-template-columns:minmax(0,1fr);place-items:center;min-height:100dvh;padding:24px 20px;display:grid}@media (width>=900px){.auth-page{place-items:stretch stretch;gap:var(--sp-9);padding:var(--sp-9);grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}}.auth-aside{border-radius:var(--r);background:radial-gradient(circle at 12% 6%, color-mix(in srgb, var(--brand) 14%, transparent), transparent 22rem), var(--nav);color:var(--nav-ink);flex-direction:column;justify-content:space-between;padding:34px;display:none;overflow:hidden}@media (width>=900px){.auth-aside{display:flex}}.auth-aside h2{max-width:15ch;font-size:calc(30px * var(--fs));letter-spacing:var(--ls-snug);line-height:1.15}.auth-aside p{margin-top:var(--sp-6);max-width:42ch;color:color-mix(in srgb, var(--nav-ink) 72%, transparent);font-size:var(--fz-compact);line-height:1.55}.auth-points{gap:var(--sp-6);margin-top:var(--sp-9);display:grid}.auth-point{gap:var(--sp-5);align-items:flex-start;display:flex}.auth-point i{border-radius:var(--rad-sm);background:color-mix(in srgb, var(--brand) 16%, transparent);width:22px;height:22px;color:var(--brand);font:var(--fw-bold) var(--fz-micro) var(--mono);flex:none;place-items:center;font-style:normal;display:grid}.auth-point span{color:color-mix(in srgb, var(--nav-ink) 82%, transparent);font-size:var(--fz-small);line-height:1.5}.auth-legal{color:color-mix(in srgb, var(--nav-ink) 45%, transparent);font-size:var(--fz-caption);line-height:1.5}.auth-panel{width:min(420px,100%);padding:var(--sp-9);place-self:center}.auth-brand{align-items:center;gap:var(--sp-5);margin-bottom:var(--sp-9);display:flex}.auth-brand .brand-mark{border-radius:var(--rad-md);background:var(--brand);width:40px;height:40px;color:var(--brand-ink);font:var(--fw-heavy) var(--fz-section) var(--font);place-items:center;display:grid}.auth-brand b{font-size:var(--fz-section);letter-spacing:var(--ls-snug);display:block}.auth-brand small{margin-top:var(--sp-1);color:var(--dim);text-transform:uppercase;letter-spacing:.12em;font-size:var(--fz-micro);font-weight:var(--fw-strong);display:block}.auth-panel h1{font-size:var(--fz-page);letter-spacing:var(--ls-snug)}.auth-panel>p{margin-top:var(--sp-3);color:var(--muted);font-size:var(--fz-small)}.auth-form{gap:var(--sp-6);margin-top:var(--sp-8);display:grid}.auth-form .btn{width:100%;min-height:42px;margin-top:var(--sp-2)}.auth-error{align-items:center;gap:var(--sp-5);padding:var(--sp-5) var(--sp-6);border:1px solid color-mix(in srgb, var(--red) 32%, transparent);border-radius:var(--r-sm);background:var(--red-soft);color:var(--red);font-size:var(--fz-label);display:flex}.auth-error:before{content:"!";border-radius:var(--rad-circle);background:var(--red);width:20px;height:20px;color:var(--on-accent);font-weight:var(--fw-heavy);font-size:var(--fz-caption);flex:none;place-items:center;display:grid}.auth-demo{margin-top:var(--sp-8);padding-top:var(--sp-7);border-top:1px solid var(--line)}.auth-demo>span{margin-bottom:var(--sp-5);color:var(--dim);text-transform:uppercase;letter-spacing:var(--ls-caps);font-size:var(--fz-micro);font-weight:var(--fw-bold);display:block}.auth-demo-row{justify-content:space-between;align-items:center;gap:var(--gap-row);width:100%;height:34px;padding:0 var(--sp-5);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--muted);font-size:var(--fz-label);text-align:left;display:flex}.auth-demo-row+.auth-demo-row{margin-top:var(--sp-3)}.auth-demo-row:hover{border-color:var(--green);color:var(--ink);background:var(--green-soft)}.auth-demo-row b{font-weight:var(--fw-semibold)}.auth-demo-row span{color:var(--dim);font:var(--fz-caption) var(--mono)}.auth-splash{min-height:100dvh;color:var(--dim);font-size:var(--fz-small);place-items:center;display:grid}.consent-card{padding:var(--sp-2) var(--sp-8)}.consent-row{align-items:center;gap:var(--sp-7);padding:var(--sp-7) 0;border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto auto;display:grid}.consent-row:first-child{border-top:0}.consent-main b{font-size:var(--fz-compact);display:block}.consent-main p{margin-top:var(--sp-2);color:var(--muted);font-size:var(--fz-label);line-height:1.45}.consent-main small{margin-top:var(--sp-2);color:var(--dim);font:var(--fz-caption) var(--mono);display:block}.consent-row .btn{min-width:96px}.consent-readonly{color:var(--dim);font-size:var(--fz-caption)}@media (width<=600px){.consent-row{grid-template-columns:minmax(0,1fr) auto}.consent-row .btn{grid-column:1/-1;width:100%}}.consent-locked{justify-items:center;gap:var(--sp-5);text-align:center;padding:48px 30px;display:grid}.consent-lock-mark{border-radius:var(--rad-circle);background:var(--surface-2);width:42px;height:42px;color:var(--dim);font-size:var(--fz-page);place-items:center;display:grid}.consent-locked h3{font-size:var(--fz-body)}.consent-locked p{max-width:52ch;color:var(--muted);font-size:var(--fz-small);line-height:1.5}:root{--sp-0:0;--sp-1:2px;--sp-2:4px;--sp-3:6px;--sp-4:8px;--sp-5:10px;--sp-6:12px;--sp-7:15px;--sp-8:20px;--sp-9:28px;--sp-10:44px;--rad-2xs:4px;--rad-xs:6px;--rad-sm:9px;--rad-md:13px;--rad-lg:16px;--rad-xl:20px;--rad-2xl:27px;--rad-pill:999px;--rad-circle:50%;--fz-micro:calc(8px * var(--fs));--fz-caption:calc(9px * var(--fs));--fz-label:calc(10px * var(--fs));--fz-small:calc(11px * var(--fs));--fz-compact:calc(12px * var(--fs));--fz-body:calc(14px * var(--fs));--fz-section:calc(16px * var(--fs));--fz-page:calc(21px * var(--fs));--fz-display:calc(27px * var(--fs));--fw-regular:450;--fw-medium:600;--fw-semibold:650;--fw-strong:700;--fw-bold:750;--fw-heavy:800;--ls-tight:-.035em;--ls-snug:-.02em;--ls-text:-.008em;--ls-normal:0;--ls-wide:.06em;--ls-caps:.09em;--lh-flat:1;--lh-tight:1.25;--lh-snug:1.35;--lh-normal:1.45;--lh-relaxed:1.55;--bw-hair:1px;--bw-thick:2px;--z-base:1;--z-sticky:10;--z-dropdown:100;--z-overlay:1000;--z-modal:1100;--dur-fast:.16s;--dur-normal:.24s;--dur-slow:.4s;--ease-standard:cubic-bezier(.2, .75, .25, 1);--ease-linear:linear;--font-sans:"Inter", "SF Pro Text", "SF Pro Display", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"SFMono-Regular", "SF Mono", ui-monospace, Menlo, monospace;--gap-inline:var(--sp-3);--gap-tight:var(--sp-2);--gap-row:var(--sp-5);--gap-block:var(--sp-6);--gap-grid:var(--sp-7);--pad-control:var(--sp-5);--pad-cell:var(--sp-5);--pad-card:var(--sp-8);--pad-card-sm:var(--sp-7);--pad-empty:var(--sp-9);--stack-section:var(--sp-7);--radius-tiny:var(--rad-2xs);--radius-control:var(--rad-sm);--radius-card:var(--rad-md);--radius-panel:var(--rad-lg);--radius-shell:var(--rad-2xl);--radius-pill:var(--rad-pill);--radius-avatar:var(--rad-circle);--focus-width:3px;--focus-offset:2px;--focus-color:color-mix(in srgb, var(--green) 28%, transparent);--pad-x:29px;--topbar-h:62px;--fs:1;--shell-max:1540px;--bg:#e9eee8;--canvas:#f4f6f1;--surface:#fcfdf9;--surface-2:#f0f3ed;--line:#dde4da;--line-2:#c8d2c6;--ink:#17231d;--muted:#5d6a62;--dim:#636e66;--nav:#12271f;--nav-2:#193329;--nav-ink:#f5f9f6;--nav-muted:#9eb2a7;--nav-dim:#849a8e;--nav-hover:#ffffff0e;--nav-active:#ffffff16;--nav-line:#ffffff1a;--nav-well:#ffffff0b;--nav-glow:#d7f58a21;--on-accent:#fff;--brand:#d7f58a;--brand-ink:#223413;--green:#2c6b4f;--green-soft:#e1f0e7;--blue:#4368bc;--blue-soft:#e6ecf8;--amber:#995d11;--amber-soft:#f7ebd9;--red:#b34942;--red-soft:#f8e3e0;--violet:#6d5cbe;--violet-soft:#ece9fa;--shadow-1:0 1px 2px #14221a0a, 0 14px 38px -28px #0e231959;--shadow-2:0 4px 14px -8px #0f231947, 0 20px 50px -30px #0e23196b;--shadow-3:0 35px 90px -38px #081c1380;--elev-flat:var(--shadow-1);--elev-raised:var(--shadow-2);--elev-overlay:var(--shadow-3)}:root[data-theme=dark]{--bg:#08130e;--canvas:#0d1913;--surface:#122019;--surface-2:#182920;--line:#263b30;--line-2:#3a5145;--ink:#f1f6f2;--muted:#a5b4aa;--dim:#7e9086;--nav:#091711;--nav-2:#152d23;--nav-ink:#f5f9f6;--nav-muted:#9eb2a7;--nav-dim:#849a8e;--nav-hover:#ffffff0e;--nav-active:#ffffff16;--nav-line:#ffffff1a;--nav-well:#ffffff0b;--nav-glow:#d7f58a21;--on-accent:#fff;--brand:#d7f58a;--brand-ink:#1b260d;--green:#7bc39a;--green-soft:#193529;--blue:#88a7ed;--blue-soft:#1c2c4a;--amber:#e0ab69;--amber-soft:#3a2c1b;--red:#ed827b;--red-soft:#3c2220;--violet:#ad9ff0;--violet-soft:#2c274b;--shadow-1:0 1px 2px #00000040, 0 16px 38px -25px #000000b8;--shadow-2:0 4px 14px -8px #00000080, 0 20px 50px -30px #000000b3;--shadow-3:0 38px 90px -35px #000000c7}@media (width<=1080px){:root{--pad-x:22px}}@media (width<=860px){:root{--pad-x:15px;--topbar-h:calc(60px + env(safe-area-inset-top));--fs:1.1}}@media (width<=600px){:root{--pad-x:12px;--topbar-h:calc(58px + env(safe-area-inset-top));--fs:1.18}}.t-hero{font-size:var(--fz-display);font-weight:var(--fw-heavy);line-height:var(--lh-flat);letter-spacing:var(--ls-tight)}.t-page-title{font-size:var(--fz-page);font-weight:var(--fw-heavy);line-height:var(--lh-tight);letter-spacing:var(--ls-tight)}.t-section-title{font-size:var(--fz-section);font-weight:var(--fw-strong);line-height:var(--lh-tight);letter-spacing:var(--ls-snug)}.t-card-title{font-size:var(--fz-body);font-weight:var(--fw-strong);line-height:var(--lh-snug);letter-spacing:var(--ls-snug)}.t-body{font-size:var(--fz-body);font-weight:var(--fw-regular);line-height:var(--lh-normal);letter-spacing:var(--ls-normal)}.t-small{font-size:var(--fz-small);font-weight:var(--fw-regular);line-height:var(--lh-normal);letter-spacing:var(--ls-normal)}.t-label{font-size:var(--fz-label);font-weight:var(--fw-medium);line-height:var(--lh-snug);letter-spacing:var(--ls-normal)}.t-caption{font-size:var(--fz-caption);font-weight:var(--fw-medium);line-height:var(--lh-snug);letter-spacing:var(--ls-normal)}.t-eyebrow{font-size:var(--fz-caption);font-weight:var(--fw-strong);line-height:var(--lh-flat);letter-spacing:var(--ls-caps);text-transform:uppercase}.t-numeric{font-size:var(--fz-body);font-weight:var(--fw-strong);line-height:var(--lh-flat);letter-spacing:var(--ls-snug);font-family:var(--font-mono)}[role=button]:focus-visible,[role=tab]:focus-visible,[role=row]:focus-visible,[tabindex]:focus-visible{outline:var(--focus-width) solid var(--focus-color);outline-offset:var(--focus-offset)}
