:root{--primary:#ff5a36;--on-primary:#fff;--background:#0e1014;--surface:#171a21;--surface2:#222631;--border:#2c313d;--text:#f3f4f6;--muted:#9aa1ad;--success:#3dd68c;--warning:#f5b942;--font:system-ui, sans-serif;--radius:16px;--nav-h:64px;--safe-b:env(safe-area-inset-bottom,0px);--safe-t:env(safe-area-inset-top,0px);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--primary-text:var(--primary);--danger:#ff6b6b;--danger-text:#ff8a8a;--nav-bg:var(--surface);--nav-text:var(--text);--nav-muted:var(--muted)}*{box-sizing:border-box}html,body{background:var(--background);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0}body{overscroll-behavior-y:none;font-size:15px;line-height:1.45}h1,h2,h3{letter-spacing:-.01em;margin:0;line-height:1.2}h1{font-size:26px;font-weight:800}h2{font-size:16px;font-weight:700}h3{font-size:18px;font-weight:700}p{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:disabled{opacity:.55;cursor:default}img{max-width:100%;display:block}input,select,textarea{width:100%;font:inherit;color:var(--text);background:var(--surface2);border:1px solid var(--border);border-radius:10px;outline:none;padding:10px 12px;font-size:16px;transition:border-color .15s}input:focus,select:focus,textarea:focus{border-color:var(--primary-text)}textarea{resize:vertical}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.muted{color:var(--muted)}.small{font-size:13px}.center{text-align:center}.grow{flex:1;min-width:0}.row{align-items:center;display:flex}.row.gap,.gap{gap:8px}.stack{flex-direction:column;gap:12px;display:flex}.accent{color:var(--primary-text)}.warn{color:var(--warning)}.error{color:var(--danger);font-size:14px}.success{color:var(--success);font-size:14px}.danger{color:var(--danger)!important}.push-right{margin-left:auto}.plain{display:block}.grid-2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.section-title{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:8px 0 -4px;font-size:13px}.btn{background:var(--surface2);border:1px solid var(--border);white-space:nowrap;border-radius:12px;justify-content:center;align-items:center;gap:6px;min-height:42px;padding:0 16px;font-weight:600;transition:transform 80ms,filter .15s;display:inline-flex}.btn:active:not(:disabled){transform:scale(.97)}.btn.primary{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.btn.primary:hover:not(:disabled){filter:brightness(1.08)}.btn.ghost{background:0 0}.btn.small{border-radius:10px;min-height:34px;padding:0 12px;font-size:14px}.btn.block{width:100%}.btn.big{min-height:54px;margin-top:4px;font-size:17px}.icon-btn{width:36px;height:36px;color:var(--muted);background:0 0;border:0;border-radius:10px;flex-shrink:0;place-items:center;display:inline-grid}.icon-btn:hover:not(:disabled){background:var(--surface2);color:var(--text)}.link{color:var(--primary-text);background:0 0;border:0;padding:0;font-weight:600}.muted-inline{opacity:.7;font-weight:400}.shell{min-height:100vh;padding-bottom:calc(var(--nav-h) + var(--safe-b) + 16px)}.topbar{z-index:10;padding:calc(var(--safe-t) + 10px) 16px 10px;background:color-mix(in srgb, var(--background) 85%, transparent);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;font-size:17px;font-weight:800;display:flex}.logo{border-radius:22%}.side-nav{display:none}main{max-width:760px;margin:0 auto}.page{flex-direction:column;gap:16px;padding:20px 16px;display:flex}.page-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.page-head p{margin-top:4px}.bottom-nav{z-index:10;height:calc(var(--nav-h) + var(--safe-b));padding-bottom:var(--safe-b);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--border);justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav a{color:var(--muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;font-size:11px;font-weight:600;display:flex}.shell.immersive .bottom-nav,.shell.immersive .topbar{display:none}.shell.immersive{padding-bottom:24px}@media (width>=900px){.side-nav{gap:4px;display:flex}.side-nav a{color:var(--muted);border-radius:10px;align-items:center;gap:8px;padding:8px 14px;font-weight:600;display:flex}.side-nav a.active{color:var(--text);background:var(--surface2)}.bottom-nav{display:none}.shell{padding-bottom:40px}.page{padding:32px 16px}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:12px;padding:16px;display:flex}.card-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.card.highlight{border-color:color-mix(in srgb, var(--primary) 60%, var(--border))}.hero-card{background:linear-gradient(135deg, color-mix(in srgb, var(--primary) 18%, var(--surface)), var(--surface) 60%)}.eyebrow{text-transform:uppercase;letter-spacing:.06em;color:var(--primary-text);font-size:12px;font-weight:700}.tile{gap:4px}.tile-value{font-size:24px;font-weight:800}.tile.due{border-color:color-mix(in srgb, var(--primary) 60%, var(--border))}.tile.due .tile-value{color:var(--primary-text)}.empty{color:var(--muted);text-align:center;padding:16px 8px;font-size:14px}.note{color:var(--muted);font-size:14px;font-style:italic}.banner{text-align:left;border:1px solid color-mix(in srgb, var(--primary) 50%, transparent);background:color-mix(in srgb, var(--primary) 14%, transparent);width:100%;color:var(--text);border-radius:12px;align-items:center;gap:10px;padding:12px 14px;display:flex}.banner span{flex:1}.banner svg{color:var(--primary-text)}.demo-note{color:var(--muted);background:var(--surface2);border-radius:10px;padding:10px 12px;font-size:13px}.loading{place-items:center;min-height:40vh;display:grid}.spinner{border:3px solid var(--surface2);border-top-color:var(--primary);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.stats{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.stat{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:12px}.stat-value{font-size:22px;font-weight:800}.stat-label{color:var(--muted);font-size:12px}.stat-sub{color:var(--muted);opacity:.8;font-size:11px}.list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.list>li+li{border-top:1px solid var(--border)}.list-item{justify-content:space-between;align-items:center;gap:12px;width:100%;padding:12px 0;display:flex}.list-item.col{flex-direction:column;align-items:stretch;gap:8px}.row-btn{text-align:left;width:100%;color:inherit;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:0;display:flex}.list-item.row-btn{padding:12px 0}.client-row .avatar{background:color-mix(in srgb, var(--primary) 22%, var(--surface2));width:40px;height:40px;color:var(--text);border-radius:50%;flex-shrink:0;place-items:center;font-size:14px;font-weight:700;display:grid}.client-row svg{color:var(--muted)}.pill{background:var(--surface2);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700}.pill.accent{background:color-mix(in srgb, var(--primary) 20%, transparent);color:var(--primary-text)}.log-detail{background:var(--surface2);border-radius:10px;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.log-line{justify-content:space-between;gap:12px;font-size:14px;display:flex}.log-line span:last-child{text-align:right}.tabs{scrollbar-width:none;gap:6px;margin:0 -16px;padding:0 16px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tabs button{background:var(--surface);border:1px solid var(--border);color:var(--muted);border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:8px 14px;font-size:14px;font-weight:600;display:flex}.badge{background:var(--primary);color:var(--on-primary);border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;display:inline-grid}.chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.chips.scroll{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.chip{background:var(--surface2);border:1px solid var(--border);border-radius:999px;flex-shrink:0;padding:6px 12px;font-size:13px;font-weight:600}.chip.active{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.search{border-radius:12px}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field>span{color:var(--muted);font-size:13px;font-weight:600}.file-btn{border:1px dashed var(--border);color:var(--muted);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border-radius:10px;align-items:center;gap:8px;padding:12px;display:flex;overflow:hidden}.title-input{background:0 0;border-color:#0000;padding-left:4px;font-size:17px;font-weight:700}.title-input:hover{border-color:var(--border)}.bar{flex-direction:column;gap:6px;display:flex}.bar-label{justify-content:space-between;font-size:14px;font-weight:600;display:flex}.bar-label b{color:var(--text)}.bar-track{background:var(--surface2);border-radius:999px;height:8px;overflow:hidden}.bar-fill{background:var(--primary);border-radius:999px;height:100%;transition:width .4s}.bar-fill.over{background:var(--warning)}.macro-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.macro-grid .bar-label{flex-direction:column;font-size:13px}.habits{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.habit{text-align:left;background:var(--surface2);border:1px solid var(--border);border-radius:12px;align-items:center;gap:12px;width:100%;padding:12px;font-weight:600;transition:background .15s;display:flex}.habit.done{background:color-mix(in srgb, var(--success) 14%, var(--surface2));border-color:color-mix(in srgb, var(--success) 40%, transparent)}.tick{border:2px solid var(--border);width:26px;height:26px;color:var(--background);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.habit.done .tick,.tick.big{background:var(--success);border-color:var(--success)}.tick.big{width:44px;height:44px}.done-row{align-items:center;gap:14px;display:flex}.habit-grid{flex-direction:column;gap:8px;display:flex;overflow-x:auto}.hg-row{grid-template-columns:minmax(110px,1fr) repeat(14,16px) 32px 36px;align-items:center;gap:4px;display:grid}.hg-head{color:var(--muted);text-align:center;font-size:11px}.hg-name{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.dot{background:var(--surface2);border-radius:4px;width:14px;height:14px}.dot.on{background:var(--success)}.next-workout{justify-content:space-between;align-items:center;gap:12px;display:flex}.next-workout h3{margin:2px 0}.ex-summary{flex-direction:column;gap:6px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.ex-summary li{justify-content:space-between;gap:12px;display:flex}.logger{padding-top:calc(var(--safe-t) + 12px)}.logger-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.timer{font-variant-numeric:tabular-nums;color:var(--primary-text);font-weight:700}.progress-line{background:var(--surface2);border-radius:999px;height:4px;overflow:hidden}.progress-line div{background:var(--primary);height:100%;transition:width .3s}.ex-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.coach-note{border-left:3px solid var(--primary);background:var(--surface2);border-radius:0 8px 8px 0;padding:8px 12px;font-size:14px}.sets{flex-direction:column;gap:6px;display:flex}.set-row{grid-template-columns:36px 1fr 1fr 48px;align-items:center;gap:8px;display:grid}.set-row.head{color:var(--muted);text-align:center;font-size:12px;font-weight:600}.set-row input{text-align:center;padding:10px 6px;font-weight:700}.set-row.done input{background:color-mix(in srgb, var(--success) 12%, var(--surface2));border-color:color-mix(in srgb, var(--success) 35%, transparent)}.set-n{text-align:center;color:var(--muted);font-weight:700}.set-check{border:1px solid var(--border);background:var(--surface2);height:44px;color:var(--muted);border-radius:10px;place-items:center;display:grid}.set-check.on{background:var(--success);border-color:var(--success);color:var(--background)}.item-edit{background:var(--surface2);border-radius:12px;flex-direction:column;gap:8px;padding:12px;display:flex}.item-edit input,.item-edit select{background:var(--surface)}.item-n{background:var(--primary);width:24px;height:24px;color:var(--on-primary);border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;font-weight:700;display:grid}.save-bar{bottom:calc(var(--nav-h) + var(--safe-b) + 8px);background:var(--surface);border:1px solid var(--border);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px 10px 16px;display:flex;position:sticky;box-shadow:0 8px 30px #00000024}@media (width>=900px){.save-bar{bottom:16px}}.date-nav{justify-content:space-between;align-items:center;display:flex}.chart{width:100%;height:auto;overflow:visible}.chart-label{fill:var(--muted);font-size:13px;font-family:var(--font)}.photos{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px;display:grid}.photos figure{margin:0}.photos img,.photo-ph{aspect-ratio:3/4;object-fit:cover;background:var(--surface2);border-radius:10px;width:100%}.photos figcaption{color:var(--muted);text-align:center;margin-top:4px;font-size:12px}.table-wrap{margin:0 -4px;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;color:var(--muted);white-space:nowrap;padding:6px 4px;font-size:12px;font-weight:600}td{border-top:1px solid var(--border);white-space:nowrap;padding:8px 4px}.scale-q{border:0;margin:0;padding:0}.scale-q legend{margin-bottom:8px;padding:0;font-size:14px;font-weight:600}.scale{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.scale button{background:var(--surface2);border:1px solid var(--border);border-radius:10px;height:44px;font-weight:700}.scale button.on{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.checkin{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:12px;padding:16px;display:flex}.checkin header{justify-content:space-between;align-items:baseline;display:flex}.scales{flex-wrap:wrap;gap:6px;display:flex}.scale-pill{background:var(--surface2);border-radius:999px;align-items:center;gap:8px;padding:4px 4px 4px 12px;font-size:13px;display:flex}.scale-pill b{background:var(--background);border-radius:999px;padding:2px 8px;font-size:12px}.qa p{margin-top:2px}.reply{border-left:3px solid var(--primary);background:color-mix(in srgb, var(--primary) 8%, var(--surface2));border-radius:0 10px 10px 0;flex-direction:column;align-items:flex-start;gap:4px;padding:10px 12px;display:flex}.login{background:radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--primary) 25%, transparent), transparent 60%), var(--background);place-items:center;min-height:100vh;padding:24px 16px;display:grid}.login-card{text-align:center;flex-direction:column;gap:14px;width:100%;max-width:380px;display:flex}.login-card .logo{box-shadow:0 10px 40px color-mix(in srgb, var(--primary) 40%, transparent);margin:0 auto 4px}.login-card form,.login-card .stack{text-align:left;margin-top:10px}.login-links{flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:14px;display:flex}@media (width<=420px){.grid-4{grid-template-columns:1fr 1fr}.stats{gap:8px}.stat{padding:10px}.stat-value{font-size:19px}h1{font-size:23px}}.stats:has(>:nth-child(4)){grid-template-columns:repeat(2,1fr)}@media (width>=700px){.stats:has(>:nth-child(4)){grid-template-columns:repeat(4,1fr)}}.small-val{white-space:pre-line;font-size:14px;line-height:1.25}.left{text-align:left;align-self:flex-start}.phase-card{border-radius:var(--radius);border:1px solid color-mix(in srgb, var(--primary) 40%, var(--border));background:color-mix(in srgb, var(--primary) 8%, var(--surface));flex-direction:column;gap:4px;padding:14px 16px;font-size:14px;display:flex}.med-card{flex-direction:row;justify-content:space-between;align-items:center}.med-card.due{border-color:var(--primary)}.med-card svg{color:var(--muted);flex-shrink:0}.site-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.site-grid .chip{border-radius:10px;padding:10px}.seg{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.seg button{background:var(--surface2);border:1px solid var(--border);border-radius:10px;padding:9px 2px;font-size:13px;font-weight:600}.seg button.on{color:var(--background);border-color:#0000}.seg button.on.sev-0,.sev-0{background:var(--success)}.seg button.on.sev-1{background:#a3d977}.seg button.on.sev-2{background:var(--warning)}.seg button.on.sev-3{background:var(--danger)}.sev{background:var(--surface2);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600}.sev.sev-1{box-shadow:inset 3px 0 #a3d977}.sev.sev-2{box-shadow:inset 3px 0 0 var(--warning)}.sev.sev-3{background:color-mix(in srgb, var(--danger) 22%, var(--surface2))}.check-row{text-align:left;cursor:pointer;align-items:flex-start;gap:10px;font-size:14px;display:flex}.check-row input{width:20px;height:20px;accent-color:var(--primary);flex-shrink:0;margin-top:1px}.flags{flex-direction:column;gap:10px;display:flex}.urgent{border:1px solid var(--danger);background:color-mix(in srgb, var(--danger) 15%, var(--surface));border-radius:12px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.urgent b{color:var(--danger-text)}.red-flag{color:var(--danger-text);font-size:13px;font-weight:600}.symptom-entry{border-bottom:1px solid var(--border);flex-direction:column;gap:8px;padding-bottom:12px;display:flex}.symptom-entry:last-child{border-bottom:0;padding-bottom:0}.symptom-entry header{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.dose-chart{align-items:flex-end;gap:4px;height:90px;padding-bottom:16px;display:flex}.dose-bar{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;height:100%;display:flex;position:relative}.dose-bar span{background:var(--primary);opacity:.85;border-radius:4px 4px 0 0;width:100%;max-width:22px}.dose-bar small{color:var(--muted);font-size:10px;position:absolute;bottom:-16px}.pills{flex-wrap:wrap;justify-content:flex-end;gap:4px;max-width:45%;display:flex}.warn-pill{background:color-mix(in srgb, var(--warning) 18%, transparent);color:var(--warning)}.danger-pill{background:color-mix(in srgb, var(--danger) 20%, transparent);color:var(--danger-text)}.alerts{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.alert{border-left:3px solid var(--warning);background:var(--surface2);border-radius:10px;flex-direction:column;gap:2px;padding:10px 12px;font-size:14px;display:flex}.alert.high{border-left-color:var(--danger)}.alert b{font-size:14px}.suggest{grid-template-columns:1fr 1fr;gap:12px;display:grid}.suggest b{font-size:20px}.consent .consent-body{text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:10px;padding:14px;font-size:14px;display:flex}.consent ul{margin:0;padding-left:18px}.portion{background:var(--surface2);border-radius:12px;padding:12px}.portion input{background:var(--surface)}.portion-total{align-items:baseline;gap:10px;display:flex}.portion-total b{font-size:20px}.food-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.results{flex-direction:column;gap:12px;max-height:60vh;display:flex;overflow-y:auto}.scanner{aspect-ratio:4/3;background:#000;border-radius:12px;position:relative;overflow:hidden}.scanner video{object-fit:cover;width:100%;height:100%}.scan-frame{border:3px solid var(--primary);border-radius:12px;position:absolute;inset:30% 12%;box-shadow:0 0 0 999px #00000059}.scan-hint{text-align:center;color:#fff;font-size:13px;position:absolute;bottom:8px;left:0;right:0}.pills.mobile-only{justify-content:flex-start;max-width:none;margin-top:6px;display:none}@media (width<=699px){.pills.mobile-hide{display:none}.pills.mobile-only{display:flex}}.maint-now{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.maint-kcal{font-size:28px;font-weight:800}.share{flex-direction:column;gap:4px;min-width:120px;display:flex}.share-bar{background:var(--surface2);border-radius:999px;height:6px;overflow:hidden}.share-bar span{background:var(--success);height:100%;display:block}.topbar{background:var(--nav-bg);color:var(--nav-text);border-bottom:1px solid color-mix(in srgb, var(--primary) 30%, transparent)}.topbar .icon-btn{color:var(--nav-muted)}.topbar .icon-btn:hover:not(:disabled){color:var(--nav-text);background:#ffffff14}.topbar .link{color:var(--primary)}.brand-name{flex-direction:column;line-height:1;display:flex}.brand-name b{letter-spacing:.22em;font-size:17px;font-weight:700}.brand-name small{letter-spacing:.32em;color:var(--primary);margin-top:5px;font-size:9.5px;font-weight:300}.side-nav a{color:var(--nav-muted)!important}.side-nav a.active{color:var(--nav-text)!important;background:#ffffff14!important}.bottom-nav{background:var(--nav-bg);border-top:1px solid color-mix(in srgb, var(--primary) 30%, transparent)}.bottom-nav a{color:var(--nav-muted)}.bottom-nav a.active{color:var(--primary)}.btn,.btn.small{border-radius:999px}.card,.stat,.checkin{box-shadow:0 1px 2px #0d1a300a}input,select,textarea,.item-edit input,.item-edit select,.portion input{background:var(--surface)}.tabs button.active{background:var(--nav-bg);color:var(--nav-text);border-color:var(--nav-bg)}.hero-card{background:var(--nav-bg);border-color:var(--nav-bg);color:var(--nav-text)}.hero-card .eyebrow{color:var(--primary)}.hero-card .muted,.hero-card .empty{color:var(--nav-muted)}.login{background:radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--primary) 22%, transparent), transparent 60%), var(--nav-bg);color:var(--nav-text)}.login .muted,.login .field>span,.login .muted-inline{color:var(--nav-muted)}.login .link{color:var(--primary)}.login .demo-note{color:var(--nav-muted);background:#ffffff14}.login .check-row{color:var(--nav-text)}.login .consent-body{color:var(--text)}.login .consent-body .muted{color:var(--muted)}.login .error{color:#ffb4a8}.login-card .logo{box-shadow:none}.login-wordmark{flex-direction:column;align-items:center;gap:8px;display:flex}.login-wordmark b{letter-spacing:.24em;font-size:26px;font-weight:700}.login-wordmark small{letter-spacing:.34em;color:var(--primary);font-size:11px;font-weight:300}.login .btn:not(.primary){color:var(--nav-text);background:0 0;border:1.5px solid #f6f1e759}.login .btn:not(.primary):hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.login .btn.primary .muted-inline{color:var(--on-primary);opacity:.6}.login{background:radial-gradient(circle at 50% 0%, #8fb3e024, transparent 60%), var(--nav-bg)}.intake{background:var(--background);min-height:100vh}.intake-head{padding:calc(var(--safe-t) + 14px) 16px 12px;background:var(--nav-bg);color:var(--nav-text);align-items:center;gap:12px;display:flex}.intake-head>div{flex-direction:column;flex:1;gap:2px;display:flex}.intake-head .eyebrow{color:var(--primary)}.intake-head .muted{color:var(--nav-muted)}.intake .progress-line{border-radius:0}.intake .page{max-width:640px;margin:0 auto;padding-bottom:40px}.intake-nav{gap:10px;margin-top:8px;display:flex}.choice{flex-direction:column;gap:6px;display:flex}.choice button{text-align:left;border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:12px 14px;font-weight:500}.choice button.on{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 14%, var(--surface));font-weight:600}.yesno{grid-template-columns:1fr 1fr;gap:8px;display:grid}.yesno button{border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:11px;font-weight:600}.yesno button.on{background:var(--nav-bg);border-color:var(--nav-bg);color:var(--nav-text)}.review-block{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:6px;padding:14px 16px;display:flex}.review-block header{justify-content:space-between;align-items:center;display:flex}.review-row{justify-content:space-between;gap:16px;font-size:14px;display:flex}.review-row span:last-child{text-align:right}.card .review-row+.review-row{border-top:1px solid var(--border);padding-top:6px}.intake-status{background:var(--surface2);border-radius:12px;padding:12px 14px;font-size:14px}.intake-status.submitted{background:color-mix(in srgb, var(--primary) 18%, var(--surface));border:1px solid var(--primary)}.pill.accent-solid{background:var(--primary);color:var(--on-primary)}.score{border-radius:999px;flex-shrink:0;place-items:center;min-width:44px;height:44px;padding:0 6px;font-size:16px;font-weight:800;display:inline-grid}.score.big{min-width:60px;height:60px;font-size:22px}.score.on{background:color-mix(in srgb, var(--success) 18%, var(--surface));color:var(--success);box-shadow:inset 0 0 0 2px var(--success)}.score.slipping{background:color-mix(in srgb, var(--warning) 18%, var(--surface));color:var(--warning);box-shadow:inset 0 0 0 2px var(--warning)}.score.off{background:color-mix(in srgb, var(--danger) 14%, var(--surface));color:var(--danger);box-shadow:inset 0 0 0 2px var(--danger)}.score.none{background:var(--surface2);color:var(--muted)}.status-text{font-size:14px;font-weight:600}.status-text.on,.ok-text{color:var(--success)}.status-text.slipping{color:var(--warning)}.status-text.off{color:var(--danger)}.review-head{justify-content:space-between;display:flex}.review-title{align-items:center;gap:14px;display:flex}.gap-callout{background:var(--surface2);border-left:3px solid var(--primary);border-radius:10px;flex-direction:column;gap:2px;padding:10px 12px;font-size:14px;display:flex}.comp{flex-direction:column;gap:5px;display:flex}.comp-head{justify-content:space-between;font-size:14px;display:flex}.comp-score.on{color:var(--success);font-weight:700}.comp-score.slipping{color:var(--warning);font-weight:700}.comp-score.off{color:var(--danger);font-weight:700}.bar-fill.good{background:var(--success)}.bar-fill.mid{background:var(--warning)}.bar-fill.bad{background:var(--danger)}.well{flex-wrap:wrap;gap:8px;display:flex}.well span{background:var(--surface2);border-radius:999px;padding:6px 12px;font-size:14px}.summary{flex-direction:column;gap:6px;margin:0;padding-left:18px;font-size:14px;display:flex}.row.wrap{flex-wrap:wrap}.btn.wa{color:#fff;background:#25d366;border-color:#25d366}.review-row-btn.done{opacity:.55}.review-row-btn .avatar{background:color-mix(in srgb, var(--primary) 22%, var(--surface2));border-radius:50%;place-items:center;width:40px;height:40px;font-size:14px;font-weight:700;display:grid}.morning .morning-q{flex-direction:column;gap:6px;display:flex}.morning-label{justify-content:space-between;align-items:baseline;display:flex}.morning.done{color:var(--success);align-items:center;gap:8px;padding:4px 2px;font-size:14px;font-weight:600;display:flex}.weekend-prep{background:color-mix(in srgb, var(--primary) 10%, var(--surface));border:1px solid color-mix(in srgb, var(--primary) 40%, var(--border));border-radius:12px;padding:12px}.friday-banner{background:var(--nav-bg);color:var(--nav-text);border-radius:12px;padding:12px 14px;font-size:14px}.friday-banner b{color:var(--primary)}.preview-banner{background:var(--primary);color:var(--on-primary);justify-content:center;align-items:center;gap:12px;padding:8px 16px;font-size:13px;font-weight:600;display:flex}.preview-banner .link{color:var(--on-primary);text-decoration:underline}.intake-head .icon-btn{color:var(--nav-muted)}.intake-head .icon-btn:hover{color:var(--nav-text);background:#ffffff14}.day-table td{vertical-align:top;white-space:normal}.day-table td:first-child{white-space:nowrap}.score-col{flex-direction:column;align-items:center;gap:4px;display:flex}.avg7{white-space:nowrap;color:var(--muted);font-size:11px;font-weight:700}.avg7.on{color:var(--success)}.avg7.slipping{color:var(--warning)}.avg7.off{color:var(--danger)}.rolling{border-top:1px solid var(--border);flex-direction:column;gap:8px;padding-top:4px;display:flex}.rolling-head{justify-content:space-between;align-items:baseline;font-size:14px;display:flex}.trend.up{color:var(--success);font-weight:700}.trend.down{color:var(--danger);font-weight:700}.trend.flat{color:var(--muted);font-weight:700}.strip{grid-template-columns:repeat(14,1fr);gap:3px;height:64px;display:grid}.strip-day{flex-direction:column;justify-content:flex-end;align-items:center;gap:2px;height:100%;display:flex}.strip-bar{border-radius:3px;width:100%}.strip-bar.on{background:var(--success)}.strip-bar.slipping{background:var(--warning)}.strip-bar.off{background:var(--danger)}.strip-bar.none{background:var(--surface2)}.strip-day small{color:var(--muted);font-size:9px}.strip-day:nth-child(7){border-right:1px dashed var(--border);padding-right:2px}.bodycomp.good{border-color:color-mix(in srgb, var(--success) 45%, var(--border))}.bodycomp.bad{border-color:color-mix(in srgb, var(--danger) 45%, var(--border))}.bodycomp.watch{border-color:color-mix(in srgb, var(--warning) 50%, var(--border))}.bc-label{text-transform:uppercase;letter-spacing:.06em;background:var(--surface2);border-radius:999px;align-self:flex-start;padding:4px 10px;font-size:12px;font-weight:700}.bc-label.good{background:color-mix(in srgb, var(--success) 16%, var(--surface));color:var(--success)}.bc-label.bad{background:color-mix(in srgb, var(--danger) 12%, var(--surface));color:var(--danger)}.bc-label.watch{background:color-mix(in srgb, var(--warning) 16%, var(--surface));color:var(--warning)}.bc-stats{flex-wrap:wrap;gap:8px;font-size:14px;display:flex}.bc-stats span{background:var(--surface2);border-radius:999px;padding:5px 12px}.bc-stats span.muted{background:0 0;padding-left:0}.howto summary{cursor:pointer;color:var(--primary-text);font-size:14px;font-weight:600}.howto ol{flex-direction:column;gap:4px;margin:8px 0 0;padding-left:20px;font-size:14px;display:flex}.between{justify-content:space-between;gap:8px}.readiness{background:var(--surface);border:1px solid var(--border);border-radius:12px;align-items:flex-start;gap:10px;margin-bottom:12px;padding:12px 14px;display:flex}.readiness>svg{color:var(--primary-text);flex-shrink:0;margin-top:2px}.readiness.low{border-color:color-mix(in srgb, var(--warning) 50%, var(--border));background:color-mix(in srgb, var(--warning) 8%, var(--surface))}.readiness.low>svg{color:var(--warning)}.readiness.high{border-color:color-mix(in srgb, var(--success) 45%, var(--border));background:color-mix(in srgb, var(--success) 7%, var(--surface))}.readiness.high>svg{color:var(--success)}.small-scale{margin:8px 0 4px}.small-scale button{height:38px}.target{background:var(--surface2);border-radius:10px;flex-direction:column;gap:2px;margin:4px 0 8px;padding:8px 12px;display:flex}.target b{font-size:14px}.target .small{color:var(--muted)}.target.add_weight{background:color-mix(in srgb, var(--primary) 16%, var(--surface))}.target.add_weight b{color:var(--primary-text)}.ex-name{color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;display:flex}.ex-name svg{color:var(--muted);flex-shrink:0}.set-row.pb input{background:color-mix(in srgb, var(--primary) 22%, var(--surface));border-color:var(--primary)}.pb-badge{background:var(--primary);color:var(--on-primary);border-radius:6px;padding:2px 5px;font-size:11px;font-weight:800;display:inline-block}.pb-flash{color:var(--primary-text);align-items:center;gap:6px;margin:8px 0 0;font-weight:700;animation:.4s ease-out pbpop;display:flex}@keyframes pbpop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.pb-chip{color:var(--primary-text);background:color-mix(in srgb, var(--primary) 16%, transparent);white-space:nowrap;vertical-align:middle;border-radius:999px;align-items:center;gap:4px;margin-left:6px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.pb-stats{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;display:grid}.pb-stats>div{background:var(--surface2);border-radius:10px;flex-direction:column;padding:8px 10px;display:flex}.ex-history{padding-top:8px}.sheet-bg{z-index:50;background:#0a101c80;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--background);border-radius:18px 18px 0 0;width:100%;max-width:640px;max-height:85vh;padding:16px 16px 28px;overflow-y:auto}.sheet h2{margin:0;font-size:18px}.finish-card{text-align:center;margin-top:24px}.finish-card h2{margin:8px 0 4px}.finish-icon{background:var(--primary);width:64px;height:64px;color:var(--on-primary);border-radius:50%;place-items:center;margin:0 auto;display:grid}.pb-list{text-align:left;flex-direction:column;gap:8px;margin:12px 0;padding:0;list-style:none;display:flex}.pb-list li{background:color-mix(in srgb, var(--primary) 12%, var(--surface));border-radius:10px;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 12px;display:flex}.pb-list svg{color:var(--primary-text)}.compare-row{border-bottom:1px solid var(--border);flex-direction:column;gap:4px;padding-bottom:10px;display:flex}.level-chip{background:var(--surface2);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700}.level-chip.l2{background:color-mix(in srgb, var(--primary) 18%, var(--surface));color:var(--primary-text)}.level-chip.l3,.level-chip.l4{background:var(--nav-bg);color:var(--primary)}.level-bar{margin-top:4px}.level-track{grid-template-columns:repeat(5,1fr);gap:3px;height:8px;display:grid;position:relative}.level-track span{background:var(--surface2);border-radius:4px}.level-track span.on{background:var(--primary)}.level-track i{background:var(--nav-bg);border-radius:2px;width:4px;height:16px;position:absolute;top:-4px;transform:translate(-50%)}.level-names{color:var(--muted);text-align:center;grid-template-columns:repeat(5,1fr);margin-top:4px;font-size:10px;display:grid}.logger{padding-bottom:120px}.rest-timer{left:12px;right:12px;bottom:calc(var(--safe-b) + 12px);z-index:40;background:var(--nav-bg);max-width:616px;color:var(--nav-text);border-radius:16px;margin:0 auto;position:fixed;overflow:hidden;box-shadow:0 8px 24px #0a101c4d}.rest-fill{background:color-mix(in srgb, var(--primary) 28%, transparent);transition:width .25s linear;position:absolute;inset:0 auto 0 0}.rest-body{justify-content:space-between;align-items:center;gap:10px;padding:10px 12px 10px 16px;display:flex;position:relative}.rest-main{align-items:center;gap:12px;min-width:0;display:flex}.rest-text{flex-direction:column;min-width:0;display:flex}.rest-label{text-transform:uppercase;letter-spacing:.06em;color:var(--primary);font-size:12px;font-weight:700}.rest-time{font-variant-numeric:tabular-nums;font-size:28px;font-weight:800}.rest-next{color:var(--nav-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.rest-btns{flex-shrink:0;gap:6px;display:flex}.rest-btns button{border:1px solid color-mix(in srgb, var(--nav-text) 25%, transparent);min-width:44px;height:40px;color:var(--nav-text);background:0 0;border-radius:10px;place-items:center;font-weight:700;display:grid}.rest-btns .rest-skip{background:var(--primary);border-color:var(--primary);color:var(--on-primary);padding:0 12px}.rest-timer.over{background:var(--success)}.rest-timer.over .rest-label,.rest-timer.over .rest-next{color:#fff}.rest-timer.over .rest-fill{display:none}.vo2-head{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.vo2-value{font-size:40px;font-weight:800;line-height:1}.vo2-value:after{content:" ml/kg/min";color:var(--muted);font-size:12px;font-weight:600}.vo2-age{text-align:right;flex-direction:column;align-items:flex-end;gap:4px;display:flex}.level-chip.l0{background:color-mix(in srgb, var(--warning) 18%, var(--surface));color:var(--warning)}.cardio-bars{gap:10px;margin-bottom:8px}.cardio-bars .bar-track{margin-top:4px}.cardio-form{border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin:8px 0;padding:12px 0}.chip.small{padding:4px 10px;font-size:12px}.howto ul{flex-direction:column;gap:4px;margin:8px 0 0;padding-left:18px;font-size:14px;display:flex}.rhr-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.rhr-row input{text-align:center;width:90px}
