:root,[data-theme=dark]{--bg:#0a0a0a;--card:#121212;--fg:#fff;--fg2:#e6e6e6;--tile:#0d1f15;--line:#1f3a2a;--line2:#2e5a3e;--track:#1f1f1f;--done:#0a2a17;--sel:#14532d;--warn-bg:#422006;--warn-fg:#fbbf24;--warn-border:#b45309;--danger:#7f1d1d;--accent-text:#22c55e;--run-text:#22c55e;--bike-text:#3b82f6;--danger-text:#ef4444;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light]{--bg:#f3f4f1;--card:#fff;--fg:#0a0a0a;--fg2:#3f3f3f;--tile:#e7f2ea;--line:#d3e3d8;--line2:#8fbf9f;--track:#e4e6e3;--done:#dcfce7;--sel:#bbf7d0;--warn-bg:#fef3c7;--warn-fg:#78350f;--warn-border:#d97706;--danger:#b91c1c;--accent-text:#15803d;--run-text:#15803d;--bike-text:#1d4ed8;--danger-text:#b91c1c;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root{--accent:#22c55e;--primary:#15803d;--blue:#2563eb;--radius:12px;--font-body:"Barlow", system-ui, sans-serif;--font-head:"Barlow Condensed", "Arial Narrow", sans-serif}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);color:var(--fg);font:16px/1.5 var(--font-body);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3{font-family:var(--font-head);margin:0;font-weight:700;line-height:1.1}a{color:var(--accent-text)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button{font:inherit;cursor:pointer;min-height:44px}.btn-primary{background:var(--primary);color:#fff;border:0;border-radius:10px;padding:0 18px;font-weight:600}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px}.btn-ghost{color:var(--fg2);border:1px solid var(--line2);background:0 0;border-radius:10px;padding:0 14px}.btn-primary:disabled{opacity:.6;cursor:default}.btn-link{justify-content:center;align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.page{max-width:1100px;margin:0 auto;padding:32px 16px}.btn-primary,.btn-ghost{white-space:nowrap}.choice-chips{flex-wrap:wrap;gap:8px;display:flex}.choice-chip{border:1px solid var(--line2);background:var(--bg);min-height:44px;color:var(--fg);border-radius:22px;padding:0 14px}.choice-chip[aria-pressed=true]{background:var(--sel);border-color:var(--accent);font-weight:600}.day-chips{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.day-chips button{border:1px solid var(--line2);background:var(--bg);min-height:44px;color:var(--fg2);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:1px;font-size:12px;font-weight:600;display:flex}.day-chips .tier{font-size:11px;font-weight:700}.day-chips button[aria-pressed=true]{background:var(--sel);border-color:var(--accent);color:var(--fg)}.day-chips button:disabled{cursor:default}.icon-btn{min-width:36px;min-height:36px;color:var(--fg2);background:0 0;border:0;border-radius:8px}.icon-btn:hover:not(:disabled){background:var(--track);color:var(--fg)}.icon-btn:disabled{opacity:.3;cursor:default}.btn-small{min-height:36px;margin-top:6px;font-size:14px}.search{font:inherit;border:1px solid var(--line2);background:var(--bg);min-height:44px;color:var(--fg);border-radius:10px;flex:220px;max-width:360px;padding:0 12px}.filter-chips{margin-bottom:16px}.row-actions{white-space:nowrap;align-items:center;gap:4px;display:flex}.exercise-table input,.exercise-table select{font:inherit;border:1px solid var(--line);width:100%;min-width:120px;min-height:38px;color:var(--fg);background:0 0;border-radius:8px;padding:0 8px}.exercise-table input::placeholder{color:var(--fg2);opacity:.7}.exercise-table input:hover,.exercise-table input:focus,.exercise-table select:hover,.exercise-table select:focus{border-color:var(--line2);background:var(--bg)}.exercise-table td{padding-top:4px;padding-bottom:4px}.exercise-table th:first-child,.exercise-table td:first-child{z-index:1;background:var(--card);position:sticky;left:0}.exercise-table td:first-child input{min-width:170px;font-weight:600}.exercise-table .cell-video input{min-width:220px}.exercise-table .cell-cues input{min-width:280px}.sub-chips{border-left:2px solid var(--line2);margin-top:-8px;padding-left:12px}.sub-chips .choice-chip{min-height:36px;font-size:14px}.library-count{margin:0 0 8px}.import-panel{flex-direction:column;gap:10px;margin-bottom:16px;display:flex}.import-panel textarea{font:inherit;border:1px solid var(--line2);background:var(--bg);width:100%;color:var(--fg);resize:vertical;border-radius:10px;padding:10px 12px}.section-heading{border-bottom:2px solid var(--line2);margin-bottom:12px;padding-bottom:6px}.section-heading h2{font-size:28px}.section-heading p{color:var(--fg2);margin:2px 0 0}.sub{color:var(--fg2);margin-top:2px;font-size:13px}.muted{color:var(--fg2);opacity:.8}.chips{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.chip{border:1px solid var(--line2);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:13px;font-weight:600;display:inline-block}.chip-ok{background:var(--done);color:var(--fg)}.chip-warn{background:var(--warn-bg);border-color:var(--warn-border);color:var(--warn-fg)}.chip-danger{background:var(--danger);color:#fff;border-color:#b91c1c}.chip-neutral{background:var(--track);color:var(--fg2)}.focus-tag{color:#fff;border-radius:999px;align-self:flex-start;padding:1px 7px;font-size:11px;font-weight:700}.last-line{color:var(--fg2);margin:2px 0 6px;font-size:13px}.app-header{border-bottom:1px solid var(--line);background:var(--card);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.app-header-brand{align-items:center;gap:10px;min-width:0;display:flex}.app-header-title{font-family:var(--font-head);letter-spacing:.3px;white-space:nowrap;text-overflow:ellipsis;font-size:20px;font-weight:700;overflow:hidden}.theme-switch{color:var(--fg2);background:0 0;border:0;align-items:center;gap:8px;min-width:44px;padding:0 4px;display:flex}.theme-switch-track{background:var(--track);border:1px solid var(--line2);border-radius:11px;width:40px;height:22px;position:relative}.theme-switch-knob{background:var(--accent);border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:2px;left:2px}.theme-switch[aria-checked=true] .theme-switch-knob{transform:translate(18px)}a.app-header-brand{color:var(--fg);text-decoration:none}.app-header-actions{align-items:center;gap:8px;display:flex}.app-header-title-short{display:none}@media (width<=640px){.app-header-title-long{display:none}.app-header-title-short{display:inline}.app-header{padding:10px 12px}.app-header-title{font-size:18px}.app-header-actions{gap:4px}.theme-switch>span[aria-hidden=true]:not(.theme-switch-track){display:none}.app-header-actions .btn-ghost{padding:0 10px}}.header-settings{gap:6px}@media (width<=640px){.header-settings{padding:0 10px}.header-settings-text{display:none}}.athlete-app{flex-direction:column;min-height:100dvh;display:flex}.athlete-header{z-index:10;padding:8px 12px;padding-top:max(8px, env(safe-area-inset-top));background:var(--card);border-bottom:1px solid var(--line);align-items:center;gap:10px;display:flex;position:sticky;top:0}.athlete-header h1{white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:24px;overflow:hidden}.athlete-header .theme-switch>span[aria-hidden=true]:not(.theme-switch-track){display:none}.icon-link{width:44px;height:44px;color:var(--fg2);border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.icon-link:hover{color:var(--fg);background:var(--track)}.athlete-main{width:100%;max-width:640px;padding:16px 16px calc(88px + env(safe-area-inset-bottom));flex-direction:column;flex:1;gap:14px;margin:0 auto;display:flex}.bottom-tabs{z-index:10;background:var(--card);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-tab{max-width:120px;min-height:56px;color:var(--fg2);flex-direction:column;flex:1;align-items:center;gap:2px;padding:8px 0 6px;font-size:12px;font-weight:600;text-decoration:none;display:flex}.bottom-tab.active{color:var(--accent-text)}.a-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px}.a-card h2{margin-bottom:8px;font-size:22px}.a-card-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px;display:flex}.a-card-head h2{margin:0}.greeting{font-size:30px}.tiles{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.tile{background:var(--tile);border:1px solid var(--line);border-radius:var(--radius);padding:10px}.tile-value{font-family:var(--font-head);font-size:26px;font-weight:800;line-height:1.1}.tile-label{color:var(--fg2);font-size:12px}.prompt-card{background:var(--sel);border:1px solid var(--accent);border-radius:var(--radius);color:var(--fg);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;text-decoration:none;display:flex}.prompt-card strong{font-size:17px}.a-session{border-radius:var(--radius);border:1px solid var(--line2);background:var(--tile);color:var(--fg);flex-direction:column;gap:4px;min-height:56px;padding:12px 14px;text-decoration:none;display:flex}.a-session.done{background:var(--done)}.a-session strong{font-size:17px}.a-session-top{align-items:center;gap:8px;display:flex}.a-list{flex-direction:column;gap:8px;display:flex}.btn-full{width:100%}.a-row{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:6px 0;display:flex}.a-row:last-child{border-bottom:0}.a-row span:first-child{color:var(--fg2)}.countdown{font-family:var(--font-head);font-size:40px;font-weight:800;line-height:1}.day-strip{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.day-pill{border:1px solid var(--line);background:var(--card);min-height:60px;color:var(--fg2);border-radius:12px;flex-direction:column;align-items:center;gap:2px;padding:6px 0;font-size:12px;display:flex}.day-pill strong{color:var(--fg);font-size:17px}.day-pill[aria-pressed=true]{border-color:var(--accent);background:var(--sel)}.day-pill.is-today strong{color:var(--accent-text)}.dots{gap:3px;height:7px;display:flex}.dot{background:var(--line2);border-radius:50%;width:7px;height:7px}.dot.all-done{background:var(--fg)}.a-form{flex-direction:column;gap:14px;display:flex}.a-form input,.a-form textarea,.a-form select{font:inherit;border:1px solid var(--line2);background:var(--bg);min-height:44px;color:var(--fg);border-radius:10px;width:100%;padding:8px 12px}.scale{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.scale button{border:1px solid var(--line2);background:var(--bg);min-height:48px;color:var(--fg);border-radius:10px;font-size:18px;font-weight:700}.scale button[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:#fff}.scale-labels{color:var(--fg2);justify-content:space-between;font-size:12px;display:flex}.two-col{grid-template-columns:1fr 1fr;gap:10px;display:grid}.zones{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.zones label{color:var(--fg2);text-align:center;font-size:12px;display:block}.zones input{text-align:center;padding:8px 4px}.required{color:var(--accent-text)}.back-link{min-height:44px;color:var(--fg2);font:inherit;background:0 0;border:0;align-self:flex-start;align-items:center;padding:0;text-decoration:none;display:inline-flex}.timer-card{text-align:left;color:var(--fg);font:inherit;cursor:pointer;justify-content:space-between;align-items:center;display:flex}.timer-card strong{font-size:17px}.timer-card-icon{font-size:30px}.week-nav-a{grid-template-columns:52px 1fr 52px;gap:8px;display:grid}.week-nav-label{font-weight:700}.coach-notes{border-color:var(--line2);background:var(--tile)}.a-block-head{align-items:center;gap:8px;margin-bottom:8px;display:flex}.a-block-head h2{margin:0}.a-block .block-letter{font-family:var(--font-head);color:var(--accent-text);font-size:28px;font-weight:800;line-height:1}.wb-text{white-space:pre-wrap;font-family:var(--font-body);background:var(--tile);border-radius:10px;margin:0 0 12px;padding:12px;font-size:16px}.a-block input{font:inherit;border:1px solid var(--line2);background:var(--bg);min-height:44px;color:var(--fg);border-radius:10px;width:100%;padding:8px 12px}.a-exercises{flex-direction:column;gap:12px;display:flex}.a-exercise{border-bottom:1px solid var(--line);padding-bottom:12px}.a-exercise:last-child{border-bottom:0;padding-bottom:0}.a-exercise-head{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.a-exercise-head strong{font-size:17px}.a-exercise .ex-code{color:var(--fg2);font-weight:700}.demo-link{min-height:36px;color:var(--accent-text);font:inherit;cursor:pointer;background:0 0;border:0;margin-left:auto;padding:0 4px;font-size:14px;font-weight:600;text-decoration:underline}.a-prescription{color:var(--fg2);margin:2px 0 8px}.a-exercise-input{align-items:center;gap:8px;display:flex}.tick-box{border:1px solid var(--line2);cursor:pointer;border-radius:10px;flex:none;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.tick-box input{width:22px;height:22px;min-height:0;accent-color:var(--primary)}.a-exercise.ticked .a-exercise-head strong{color:var(--accent-text)}.rpe-scale{grid-template-columns:repeat(10,1fr);gap:4px;display:grid}.rpe-scale button{border:1px solid var(--line2);background:var(--bg);min-height:44px;color:var(--fg);border-radius:8px;padding:0;font-weight:700}.rpe-scale button[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:#fff}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.sleep-boxes{align-items:flex-start;gap:8px;display:flex}.sleep-box{flex-direction:column;align-items:center;gap:2px;width:84px;display:flex}.sleep-box input{font-family:var(--font-head);text-align:center;min-height:60px;font-size:30px;font-weight:800}.sleep-box span{color:var(--fg2);font-size:12px}.sleep-colon{font-family:var(--font-head);font-size:30px;font-weight:800;line-height:60px}.sleep-steps{flex-direction:column;gap:4px;margin-left:auto;display:flex}.sleep-steps button{border:1px solid var(--line2);background:var(--bg);width:52px;height:28px;min-height:28px;color:var(--fg);border-radius:8px;font-size:18px;font-weight:700;line-height:1}.extra-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding:8px 0;display:flex}.extra-row:last-child{border-bottom:0}.athlete-main .segmented{grid-template-columns:repeat(auto-fit,minmax(0,1fr));width:100%;display:grid}.athlete-main .segmented button{min-height:44px;padding:0 8px}.a-form input[type=date]{appearance:none;text-align:left;min-width:0;height:44px;line-height:26px;display:block}.a-form input[type=date]::-webkit-date-and-time-value{text-align:left;margin:0}.two-col>*{min-width:0}.sub-tabs{background:var(--track);border-radius:12px;grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;padding:4px;display:grid}.sub-tabs button{min-height:40px;color:var(--fg2);background:0 0;border:0;border-radius:9px;font-size:14px;font-weight:600}.sub-tabs button[aria-selected=true]{background:var(--card);color:var(--fg)}.athlete-main .stat-card{padding:16px}.prompt-card.fuel-today{background:var(--tile);border-color:var(--line2)}.strategy-card{border-color:var(--accent);background:var(--tile)}.coach-note{border-left:6px solid var(--accent)}.strategy-body{white-space:pre-wrap;margin:0;line-height:1.55}.checkin-done-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.checkin-done-grid div{flex-direction:column;display:flex}.checkin-done-grid strong{font-family:var(--font-head);font-size:22px;font-weight:800}.day-pill[aria-pressed=true] strong{color:var(--fg)}.move-day{border-top:1px solid var(--line);flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;display:flex}.move-day .btn-small{align-self:flex-start}.stat-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));align-items:start;gap:12px;display:grid}.stat-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:10px;min-width:0;padding:14px 16px;display:flex}.stat-card-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.stat-card-head h3{font-size:20px}.big{flex-direction:column;display:flex}.big-value{font-family:var(--font-head);font-size:34px;font-weight:800;line-height:1.05}.big-unit{color:var(--fg2);font-size:17px;font-weight:600}.big-button{text-align:left;color:inherit;background:0 0;border:0;min-height:0;padding:0}.chart{margin:0}.chart svg{width:100%;display:block}.chart-axis,.bars-labels{color:var(--fg2);justify-content:space-between;margin-top:4px;font-size:11px;display:flex}.chart-empty{margin:0}.bars-wrap{position:relative}.bars-grid{width:100%;height:100%;position:absolute;inset:0}.bars{align-items:flex-end;gap:4px;height:100%;display:flex;position:relative}.bar-col{flex:1;align-items:flex-end;height:100%;display:flex;position:relative}.chart-bar{border-radius:3px 3px 0 0;min-height:0;position:absolute;bottom:0;left:0;right:0}.chart-bar-ghost{background:var(--track);border:1px dashed var(--line2)}.bars-labels span{text-align:center;flex:1}.mini-list{margin:0;padding:0;list-style:none}.mini-list li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding:6px 0;font-size:15px;display:flex}.mini-list li:last-child{border-bottom:0}.quick-log{gap:8px;display:flex}.quick-log input{min-width:0;font:inherit;border:1px solid var(--line2);background:var(--bg);min-height:44px;color:var(--fg);border-radius:10px;flex:1;padding:0 12px}.field-error{color:var(--warn-fg);margin:0;font-size:14px}.checkin-grid,.sleep-figures,.weeks-row{grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:8px;display:grid}.checkin-grid div,.sleep-figures div,.weeks-row div{flex-direction:column;display:flex}.checkin-grid strong,.sleep-figures strong,.weeks-row strong{font-family:var(--font-head);font-size:22px}.checkin-note{color:var(--fg2);margin:0;font-style:italic}.sleep-detail{flex-direction:column;gap:10px;display:flex}.key{color:var(--fg2);flex-wrap:wrap;gap:6px 14px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.key li{align-items:center;gap:6px;display:flex}.key span{border-radius:3px;width:12px;height:12px;display:inline-block}.key .key-dash{border-top:2px dashed #22c55e;border-radius:0;height:0}.key .key-line{border-top:2px solid var(--fg2);border-radius:0;height:0}.zones-table{border-collapse:collapse;width:100%;font-size:15px}.zones-table th,.zones-table td{text-align:left;border-bottom:1px solid var(--line);padding:6px 4px}.zones-table tr:last-child td{border-bottom:0}.zones-table .run{color:var(--run-text);font-weight:600}.zones-table .bike{color:var(--bike-text);font-weight:600}.history-chips{margin:0}.history-chips .choice-chip{min-height:36px;font-size:14px}.a-input,.stat-card select.a-input{font:inherit;border:1px solid var(--line2);background:var(--bg);min-height:44px;color:var(--fg);border-radius:10px;width:100%;padding:8px 12px}.tests-table{border-collapse:collapse;width:100%;font-size:14px}.tests-table th{text-align:left;color:var(--fg2);padding:4px;font-weight:600}.tests-table td{border-top:1px solid var(--line);vertical-align:top;padding:6px 4px}.tests-table input[type=checkbox]{width:20px;height:20px;accent-color:var(--primary)}.apply-box{border:1px solid var(--line2);background:var(--tile);border-radius:10px;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.apply-box ul{margin:0;padding-left:18px}.small-seg button{min-height:32px;padding:0 8px;font-size:12px}.small-seg button:disabled{cursor:default}.gauge{align-self:center;width:100%;max-width:260px}.macros{text-align:center;grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.macros div{flex-direction:column;display:flex}.macros strong{font-family:var(--font-head);font-size:24px}.edit-rows{flex-direction:column;gap:6px;display:flex}.edit-row{grid-template-columns:2fr 1fr 1fr 36px;align-items:center;gap:6px;display:grid}.edit-row.two{grid-template-columns:1fr 2fr 36px}.edit-row input{font:inherit;border:1px solid var(--line2);background:var(--bg);min-height:40px;color:var(--fg);border-radius:8px;min-width:0;padding:0 10px}.supp-tick{border-bottom:1px solid var(--line);cursor:pointer;align-items:center;gap:12px;min-height:52px;padding:6px 0;display:flex}.supp-tick:last-child{border-bottom:0}.supp-tick input{width:24px;height:24px;accent-color:var(--primary);flex:none}.supp-tick span{flex:1}.protocol-list{margin:0;padding:0;list-style:none}.protocol-list li{border-bottom:1px solid var(--line);grid-template-columns:110px 1fr;gap:10px;padding:8px 0;display:grid}.protocol-list li:last-child{border-bottom:0}.protocol-list strong{color:var(--accent-text)}.season-wrap{overflow-x:auto}.season{min-width:900px;position:relative}.season-weeks{color:var(--fg2);grid-template-columns:repeat(30,1fr);font-size:10px;display:grid}.season-weeks div{border-left:1px solid var(--line);text-align:center;padding:2px}.season-weeks .current{background:var(--sel);color:var(--fg);font-weight:700}.season-months{grid-template-columns:repeat(30,1fr);min-height:18px;font-size:12px;font-weight:700;display:grid}.season-lanes{background-image:linear-gradient(to right, var(--line) 1px, transparent 1px);background-size:3.33333% 100%;grid-template-columns:repeat(30,1fr);grid-auto-rows:30px;gap:4px 0;min-height:44px;padding:6px 0;display:grid;position:relative}.season-bar{color:#fff;text-align:left;white-space:nowrap;text-overflow:ellipsis;border:0;border-radius:6px;min-height:0;margin:0 1px;padding:0 8px;font-size:12px;font-weight:700;overflow:hidden}.season-races{grid-template-columns:repeat(30,1fr);min-height:22px;font-size:11px;display:grid}.season-race{color:var(--danger-text);white-space:nowrap;font-weight:700}.phase-key{color:var(--fg2);flex-wrap:wrap;gap:8px 16px;font-size:13px;display:flex}.phase-key-item{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.phase-swatch{border-radius:3px;flex:none;width:12px;height:12px;display:inline-block}.cycle-strip{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.cycle-strip div{color:#fff;text-align:center;white-space:nowrap;text-overflow:ellipsis;border-radius:6px;padding:4px 2px;font-size:11px;font-weight:700;overflow:hidden}.phase-now{align-items:center;gap:10px;display:flex}.phase-dot{border-radius:50%;flex:none;width:14px;height:14px}.season-bar:disabled{cursor:default;opacity:1}.cycle-guide p{margin:0 0 8px}.cycle-strip-coach{margin-bottom:8px}.fuel-vs{text-align:center}.fuel-settings{border-top:1px solid var(--line);padding-top:12px}.fuel-settings summary{cursor:pointer;min-height:36px;font-weight:600}.fuel-setting{flex-direction:column;gap:8px;margin-top:14px;display:flex}.fuel-plan{flex-direction:column;gap:6px;display:flex}.fuel-plan-row{grid-template-columns:40px 1fr;align-items:center;gap:8px;display:grid}.fuel-plan .choice-chip,.fuel-setting>.chips+.chips .choice-chip{min-height:36px;padding:0 12px;font-size:14px}.fuel-protein{font:inherit;border:1px solid var(--line2);background:var(--bg);width:100px;min-height:44px;color:var(--fg);border-radius:10px;padding:0 12px}.skeleton{background:linear-gradient(90deg, var(--track) 0%, var(--line) 50%, var(--track) 100%);background-size:200% 100%;border-radius:8px;animation:1.4s ease-in-out infinite skeleton-shimmer;display:block}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.skeleton-lines{flex-direction:column;gap:8px;display:flex}.skeleton-lines .skeleton{height:14px}.skeleton-cards{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.skeleton-card{border-radius:var(--radius)}.skeleton-table{flex-direction:column;gap:10px;padding:16px;display:flex}.skeleton-row{height:40px}.skeleton-title{width:45%;height:36px;margin-bottom:18px}.timer{z-index:50;padding:12px 16px;padding-top:max(12px, env(safe-area-inset-top));padding-bottom:max(16px, env(safe-area-inset-bottom));background:var(--bg);color:var(--fg);flex-direction:column;transition:background .2s;display:flex;position:fixed;inset:0}.timer-work{color:#fff;background:#14532d}.timer-rest,.timer-ready{color:#fff;background:#1e3a8a}.timer-done{color:#fff;background:#0a0a0a}.timer-top{justify-content:space-between;align-items:center;display:flex}.timer-title{font-family:var(--font-head);font-size:20px;font-weight:700}.timer-btn{width:44px;height:44px;color:inherit;background:0 0;border:1px solid;border-radius:50%;font-size:17px;font-weight:700}.timer-setup,.timer-run,.timer-glossary{flex-direction:column;flex:1;justify-content:center;gap:18px;width:100%;max-width:480px;margin:0 auto;display:flex}.timer-modes{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.timer-modes button{border:1px solid var(--line2);background:var(--card);min-height:52px;color:var(--fg);border-radius:12px;font-size:17px;font-weight:700}.timer-modes button[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:#fff}.timer-fields{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;display:grid}.timer-field{flex-direction:column;gap:4px;display:flex}.timer-field label{color:var(--fg2);font-size:14px;font-weight:600}.timer-field input{font-family:var(--font-head);text-align:center;border:1px solid var(--line2);background:var(--card);min-height:60px;color:var(--fg);border-radius:12px;font-size:32px;font-weight:800}.timer-field span{color:var(--fg2);font-size:12px}.timer-preset{border:1px dashed var(--line2);min-height:44px;color:var(--fg2);background:0 0;border-radius:10px}.timer-total{text-align:center;color:var(--fg2);margin:0}.timer-action{color:#0a0a0a;background:#fff;border:0;border-radius:14px;flex:1;min-height:60px;font-size:20px;font-weight:800}.timer-setup .timer-action,.timer-glossary .timer-action{background:var(--primary);color:#fff}.timer-secondary{color:inherit;background:0 0;border:2px solid}.timer-run{text-align:center}.timer-label{font-family:var(--font-head);text-transform:uppercase;letter-spacing:1px;font-size:36px;font-weight:800}.timer-digits{font-family:var(--font-head);font-variant-numeric:tabular-nums;font-size:clamp(96px,30vw,220px);font-weight:800;line-height:1}.timer-round{font-size:22px;font-weight:700}.timer-progress{background:#ffffff40;border-radius:5px;height:10px;overflow:hidden}.timer-progress span{background:#fff;height:100%;display:block}.timer-controls{gap:10px;display:flex}.timer-glossary p{margin:0;line-height:1.5}.video-backdrop{z-index:40;background:#000000bf;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.video-modal{background:var(--card);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:12px;width:min(720px,100%);max-height:100%;padding:16px;display:flex;overflow-y:auto}.video-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.video-head h2{overflow-wrap:anywhere;flex:1;min-width:0;font-size:24px}.video-frame{aspect-ratio:16/9;background:#000;border-radius:10px;flex-shrink:0;position:relative;overflow:hidden}.video-frame.portrait{aspect-ratio:9/16;align-self:center;height:min(70vh,640px)}.video-frame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.video-cues{color:var(--fg2);white-space:pre-line;margin:0}.video-open{color:var(--fg2);font-size:14px}.notif-card{flex-direction:column;gap:12px;max-width:640px;display:flex}.notif-card h2,.a-form h2{font-size:24px}.notif-help{background:var(--tile);border:1px solid var(--line2);border-radius:10px;padding:10px 14px}.notif-help p{margin:0 0 6px}.notif-help ol{margin:0;padding-left:20px;line-height:1.6}.notif-on{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.notif-options{flex-direction:column;gap:8px;display:flex}.notif-time{max-width:200px}.notif-time input{font:inherit;border:1px solid var(--line2);background:var(--bg);min-height:44px;color:var(--fg);border-radius:10px;padding:0 12px}.install-guide{border-top:1px solid var(--line);padding-top:10px}.install-guide summary{cursor:pointer;color:var(--accent-text);align-items:center;min-height:44px;font-weight:600;display:flex}.install-steps h3{margin:10px 0 4px;font-size:18px}.install-steps ol{margin:0 0 8px;padding-left:22px;line-height:1.6}.settings-stack{flex-direction:column;gap:16px;display:flex}.countdown-row{align-items:baseline;gap:8px;display:flex}.countdown-num{font-family:var(--font-head);color:var(--accent-text);font-size:44px;font-weight:800;line-height:1}.vs-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.vs-grid div{flex-direction:column;display:flex}.vs-grid strong{font-family:var(--font-head);font-size:30px;font-weight:800}.splits-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:14px}.splits-table td{border-bottom:1px solid var(--line);padding:5px 4px}.splits-table td:nth-child(2),.splits-table td:nth-child(4){text-align:right;font-weight:600}.splits-foot td{border-bottom:0;padding-top:8px;font-weight:700}.race-list{margin:0;padding:0;list-style:none}.race-list>li{border-bottom:1px solid var(--line)}.race-list>li:last-child{border-bottom:0}.race-row{width:100%;color:var(--fg);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;min-height:52px;padding:8px 0;display:flex}.race-row>span:first-child{flex-direction:column;display:flex}.race-time{font-family:var(--font-head);font-size:22px;font-weight:800}.race-detail{flex-direction:column;gap:8px;padding:0 0 12px;display:flex}.race-form{border:1px solid var(--line2);background:var(--tile);border-radius:10px;flex-direction:column;gap:10px;padding:12px;display:flex}.race-form-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;display:grid}.race-form input,.race-form textarea{font:inherit;border:1px solid var(--line2);background:var(--bg);min-height:44px;color:var(--fg);border-radius:10px;width:100%;padding:8px 12px}.race-form textarea{font-family:ui-monospace,Menlo,monospace;font-size:13px}.race-form-actions{flex-wrap:wrap;gap:8px;display:flex}.mini-tabs{background:var(--track);border-radius:10px;grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;padding:3px;display:grid}.mini-tabs button{min-height:36px;color:var(--fg2);background:0 0;border:0;border-radius:8px;font-size:13px;font-weight:600}.mini-tabs button[aria-selected=true]{background:var(--card);color:var(--fg)}.radar{align-self:center;width:100%;max-width:320px}.radar-edit{flex-direction:column;gap:4px;display:flex}.radar-row{grid-template-columns:1fr;align-items:center;gap:8px;display:grid}.radar-row.on{grid-template-columns:minmax(150px,1fr) 2fr 34px}.radar-row input[type=range]{width:100%;accent-color:var(--primary)}.radar-score{text-align:right;font-weight:700}.strategy-text,.coach-note-editor textarea{font:inherit;border:1px solid var(--line2);background:var(--bg);width:100%;color:var(--fg);resize:vertical;border-radius:10px;padding:10px 12px}.coach-note-editor{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.auth-page{max-width:420px;margin:0 auto;padding:40px 16px}.auth-page h1{margin-bottom:6px;font-size:36px}.auth-intro{color:var(--fg2);margin:0 0 20px}.auth-form{flex-direction:column;gap:16px;display:flex}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--fg2);font-size:14px;font-weight:600}.field input{font:inherit;border:1px solid var(--line2);background:var(--bg);min-height:44px;color:var(--fg);border-radius:10px;padding:0 12px}.field-hint{color:var(--fg2);font-size:13px}.auth-form .btn-primary{width:100%}.auth-links{text-align:center;margin-top:18px;font-size:15px}.notice{border-radius:10px;padding:12px 14px;font-size:15px}.notice-error{background:var(--warn-bg);border:1px solid var(--warn-border);color:var(--warn-fg)}.notice-ok{background:var(--done);border:1px solid var(--line2);color:var(--fg)}.auth-legal{text-align:center;color:var(--fg2);margin-top:16px;font-size:14px}.field-label{color:var(--fg2);font-size:14px;font-weight:600}.turnstile-box{min-height:65px}.code-input{letter-spacing:8px;text-align:center;font-weight:800;font-family:var(--font-head)!important;font-size:30px!important}.two-step-setup{flex-direction:column;gap:10px;display:flex}.two-step-setup ol{margin:0;padding-left:22px;line-height:1.6}.two-step-setup .field input{font:inherit;border:1px solid var(--line2);background:var(--bg);min-height:52px;color:var(--fg);border-radius:10px;max-width:240px}.qr{background:#fff;border-radius:12px;align-self:flex-start;padding:10px}.secret{background:var(--tile);word-break:break-all;border-radius:8px;margin-top:6px;padding:8px 10px;font-size:14px;display:block}.link-button{color:var(--accent-text);font:inherit;cursor:pointer;background:0 0;border:0;text-decoration:underline}.pw-meter{flex-direction:column;gap:4px;display:flex}.pw-bars{grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.pw-bars span{background:var(--track);border-radius:3px;height:5px}.pw-bars span.on.s0{background:var(--danger-text)}.pw-bars span.on.s1{background:#d97706}.pw-bars span.on.s2,.pw-bars span.on.s3{background:var(--accent-text)}.drawer-backdrop{z-index:20;background:#0000008c;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer{background:var(--card);border-left:1px solid var(--line);width:min(560px,100%);height:100%;padding:0 20px 40px;overflow-y:auto}.drawer-head{z-index:1;background:var(--card);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding:16px 0;display:flex;position:sticky;top:0}.drawer-head h2{font-size:28px}.drawer-wide{width:min(900px,100%)}.drawer-actions{background:var(--card);border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;margin-top:20px;padding:12px 0;display:flex;position:sticky;bottom:0}@media (height<=700px){.drawer-actions{position:static}}.preview-wrap{flex-direction:column;align-items:center;gap:10px;display:flex}.phone{background:var(--bg);border:10px solid #1f1f1f;border-radius:40px;flex-direction:column;width:390px;max-width:100%;height:780px;display:flex;overflow:hidden;box-shadow:0 20px 50px #0006}.phone-header{background:var(--card);border-bottom:1px solid var(--line);font-family:var(--font-head);align-items:center;gap:10px;padding:12px 14px;font-size:20px;display:flex}.phone-screen{flex:1;overflow-y:auto}.phone-screen *{pointer-events:none}.phone-screen .sub-tabs button,.phone-screen .day-pill,.phone-screen .week-nav-a button,.phone-screen .stat-card-head button{pointer-events:auto}.preview-main{padding-bottom:16px}.phone-tabs{border-top:1px solid var(--line);background:var(--card);display:flex}.phone-tabs button{min-height:52px;color:var(--fg2);background:0 0;border:0;flex:1;font-size:13px;font-weight:600}.phone-tabs button[aria-pressed=true]{color:var(--accent-text)}.session-editor{flex-direction:column;gap:16px;display:flex}.session-editor input,.session-editor select,.session-editor textarea{font:inherit;border:1px solid var(--line2);background:var(--bg);color:var(--fg);border-radius:8px}.session-editor .field input,.session-editor .field textarea{min-height:44px;padding:8px 12px}.focus-chips{flex-wrap:wrap;gap:6px;display:flex}.focus-chip{border:1px solid var(--line2);background:var(--bg);min-height:36px;color:var(--fg2);border-radius:18px;padding:0 12px;font-size:14px}.focus-chip[aria-pressed=true]{background:var(--sel);border-color:var(--accent);color:var(--fg);font-weight:600}.block{border:1px solid var(--line);border-radius:var(--radius);background:var(--tile);padding:12px}.block-head{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.block-letter{font-family:var(--font-head);text-align:center;width:30px;color:var(--accent-text);font-size:26px;font-weight:800}.block-name{flex:160px;min-height:40px;padding:0 10px}.block-tools{gap:2px;margin-left:auto;display:flex}.ex-table-wrap{overflow-x:auto}.ex-table{border-collapse:collapse;width:100%;font-size:14px}.ex-table th{text-align:left;color:var(--fg2);white-space:nowrap;padding:0 4px 4px;font-weight:600}.ex-table td{vertical-align:middle;padding:3px 4px}.ex-table input,.ex-table select{width:100%;min-height:38px;padding:0 8px}.ex-code{color:var(--fg2);width:32px;font-weight:700}.ex-name{min-width:170px}.ex-small{min-width:56px;max-width:72px}.ex-mid{min-width:80px}.ex-table .ex-km{border-color:var(--accent);background:var(--done)}.actual-row td{padding-top:0}.actual{color:var(--accent-text);margin:0;font-size:13px}.wb textarea{width:100%;margin-bottom:10px;padding:10px 12px;font-family:ui-monospace,Menlo,monospace;font-size:14px}.session-banner{margin-bottom:12px}.session-actions{flex-wrap:wrap;gap:8px;display:flex}.log-summary{flex-wrap:wrap;gap:8px 20px;margin:0;display:flex}.log-summary dt{color:var(--fg2);font-size:13px}.log-summary dd{margin:0;font-weight:600}.planner-wrap{flex-direction:column;gap:12px;min-width:0;display:flex}.planner{min-width:0}.planner-library summary{cursor:pointer;font-family:var(--font-head);min-height:32px;font-size:20px;font-weight:700}.planner-library summary .sub{font-family:var(--font-body);font-size:14px;font-weight:400}.planner-library[open] summary{margin-bottom:10px}.library-row{align-items:flex-start;gap:10px;display:flex}.library-list.library-row .search{flex:0 0 200px}.library-list.library-row ul{flex-direction:row;align-items:flex-start;max-height:none;margin:0;padding-bottom:4px;overflow-x:auto}.library-list.library-row .library-item{flex:0 0 220px}.week-nav{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.week-label{font-family:var(--font-head);margin-left:8px;font-size:20px;font-weight:700}.days{grid-template-columns:repeat(7,minmax(130px,1fr));gap:8px;padding-bottom:6px;display:grid;overflow-x:auto}.day{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:6px;min-height:180px;padding:8px;display:flex}.day-today{border-color:var(--accent)}.day-drop{background:var(--sel)}.day-head{justify-content:space-between;align-items:baseline;font-size:14px;font-weight:700;display:flex}.day-km{color:var(--accent-text);font-size:12px;font-weight:600}.session-card{text-align:left;border:1px solid var(--line2);background:var(--tile);color:var(--fg);cursor:grab;border-radius:10px;flex-direction:column;gap:3px;padding:8px;font-size:14px;display:flex}.session-card:hover{border-color:var(--accent)}.session-done{background:var(--done)}.session-card .chips{margin-top:2px}.add-session{border:1px dashed var(--line2);min-height:36px;color:var(--fg2);background:0 0;border-radius:10px;margin-top:auto;font-size:13px}.add-session:hover{color:var(--fg);border-color:var(--accent)}.library-list ul{flex-direction:column;gap:6px;max-height:520px;margin:10px 0 0;padding:0;list-style:none;display:flex;overflow-y:auto}.library-list .search{width:100%;max-width:none}.library-item{border:1px solid var(--line);background:var(--tile);cursor:grab;border-radius:10px;align-items:center;gap:8px;padding:8px;display:flex}.library-item-text{flex-direction:column;flex:1;min-width:0;font-size:14px;display:flex}.focus-dot{border-radius:50%;flex:none;width:10px;height:10px}.small{font-size:14px}.btn-danger-text{color:var(--danger-text);border-color:#7f1d1d}.linked-banner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.log-card h3{margin-bottom:8px;font-size:18px}.log-comment{color:var(--fg2);margin:10px 0 0;font-style:italic}.library-manager{margin-top:36px}.library-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;display:grid}.library-card{cursor:default;flex-direction:row;align-items:flex-start}.library-open{text-align:left;color:var(--fg);background:0 0;border:0;flex-direction:column;flex:1;gap:3px;min-height:0;padding:0;display:flex}.programme-details{margin-bottom:16px}.programme-details textarea{font:inherit;border:1px solid var(--line2);background:var(--bg);color:var(--fg);border-radius:10px;padding:8px 12px}.week-tabs .tab{white-space:nowrap;font-size:17px}.insert-row{flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.insert-row .field{min-width:220px}.week-copy{margin-left:auto}.back-link{min-height:44px;color:var(--fg2);align-items:center;text-decoration:none;display:inline-flex}.athlete-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.athlete-top h1{font-size:40px}.athlete-top-actions{flex-wrap:wrap;gap:8px;display:flex}.archived-banner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.jump-bar{z-index:5;background:var(--bg);border-bottom:1px solid var(--line);gap:4px;margin:0 -16px 20px;padding:0 16px;display:flex;position:sticky;top:0;overflow-x:auto}.jump-bar a{min-height:44px;color:var(--fg2);white-space:nowrap;align-items:center;padding:0 12px;font-weight:600;text-decoration:none;display:inline-flex}.jump-bar a:hover{color:var(--accent-text)}.athlete-section{margin-bottom:28px;scroll-margin-top:56px}.placeholder{color:var(--fg2);border-style:dashed}.consultation summary{cursor:pointer;font-family:var(--font-head);min-height:32px;font-size:22px;font-weight:700}.consultation p{margin:10px 0 0}.account-strip{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-top:12px;display:flex}.account-strip dl{flex-wrap:wrap;gap:12px 28px;margin:0;display:flex}.account-strip dt{color:var(--fg2);font-size:13px}.account-strip dd{margin:0;font-weight:600}.account-strip-status{align-items:center;gap:10px;display:flex}.settings-group{border:0;margin:20px 0 0;padding:0}.settings-group legend{font-family:var(--font-head);margin-bottom:10px;font-size:20px;font-weight:700}.field-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.field select,.field input{width:100%}.field select{font:inherit;border:1px solid var(--line2);background:var(--bg);min-height:44px;color:var(--fg);border-radius:10px;padding:0 10px}.segmented{border:1px solid var(--line2);border-radius:10px;display:inline-flex;overflow:hidden}.segmented button{color:var(--fg2);background:0 0;border:0;padding:0 14px}.segmented button[aria-pressed=true]{background:var(--sel);color:var(--fg);font-weight:600}.switch-row{border-bottom:1px solid var(--line);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:44px;display:flex}.switch-row input{width:44px;height:24px;accent-color:var(--primary)}.danger-zone{border-top:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:10px;margin-top:28px;padding-top:16px;display:flex}.btn-danger{color:#fff;background:#b91c1c;border:0;border-radius:10px;padding:0 16px;font-weight:600}.btn-danger:disabled{opacity:.5;cursor:default}.invite-row{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.invite-row .field{flex:220px}@media (width<=600px){.athlete-top h1{font-size:30px}}.answers{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px 20px;margin:12px 0 0;display:grid}.answers dt{color:var(--fg2);font-size:13px}.answers dd{white-space:pre-wrap;margin:0}.tabs{border-bottom:1px solid var(--line);gap:4px;margin-bottom:20px;display:flex;overflow-x:auto}.tab{color:var(--fg2);font-family:var(--font-head);background:0 0;border:0;border-bottom:3px solid #0000;padding:0 14px;font-size:20px;font-weight:700}.tab[aria-selected=true]{color:var(--fg);border-bottom-color:var(--accent)}.stat-tiles{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:20px;display:grid}.stat-tile{background:var(--tile);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px}.stat-value{font-family:var(--font-head);font-size:34px;font-weight:800;line-height:1}.stat-label{margin-top:6px;font-weight:600}.stat-hint{color:var(--fg2);font-size:13px}.toolbar{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:16px;display:flex}.check{cursor:pointer;align-items:center;gap:8px;min-height:44px;display:inline-flex}.check input{width:18px;height:18px;accent-color:var(--primary)}.table-wrap{padding:0;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:15px}.data-table th,.data-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:12px 14px}.data-table tr:last-child td{border-bottom:0}.data-table th{white-space:nowrap;background:var(--tile);padding:0 6px}.sort-btn{color:var(--fg);background:0 0;border:0;padding:0 8px;font-size:14px;font-weight:600}.row-name{color:var(--fg);font-weight:700;text-decoration:none}.row-name:hover{color:var(--accent-text)}.row-archived{opacity:.6}.bar{background:var(--track);border-radius:3px;min-width:90px;height:6px;margin-top:6px;overflow:hidden}.bar span{background:var(--accent);height:100%;display:block}.empty-state{text-align:center;padding:40px 20px}.empty-state p{color:var(--fg2)}.legal-page{max-width:760px;color:var(--fg2);margin:0 auto;padding:32px 16px 64px}.legal-page h1{color:var(--fg);margin-bottom:8px;font-size:40px}.legal-page h2{color:var(--fg);margin:32px 0 8px;font-size:24px}.legal-page p,.legal-page ul{margin:0 0 12px}.legal-page li{margin-bottom:6px}.md-table-wrap{margin:0 0 12px;overflow-x:auto}.legal-page table{border-collapse:collapse;width:100%;font-size:15px}.legal-page th,.legal-page td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:10px 12px}.legal-page th{color:var(--fg);background:var(--tile);font-weight:600}.onboarding{padding-top:24px}.onboarding-wide{max-width:560px}.onboarding-mark{justify-content:center;margin-bottom:16px;display:flex}.onboarding h1{margin-bottom:8px;font-size:32px}.btn-block{width:100%}.progress{grid-template-columns:repeat(5,1fr);gap:4px;margin-bottom:10px;display:grid}.progress span{background:var(--track);border-radius:3px;height:6px}.progress span.on{background:var(--accent)}.step-count{color:var(--fg2);margin:0 0 4px;font-size:14px}.step-buttons{gap:8px;display:flex}.step-buttons .btn-primary{flex:1}.field textarea{font:inherit;border:1px solid var(--line2);background:var(--bg);color:var(--fg);resize:vertical;border-radius:10px;padding:10px 12px}.tick{cursor:pointer;align-items:flex-start;gap:12px;font-size:15px;display:flex}.tick input{width:22px;height:22px;accent-color:var(--primary);flex:none;margin-top:2px}
