@font-face{font-family:Newsreader;src:url(/assets/newsreader-400-BRTCwsP3.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Newsreader;src:url(/assets/newsreader-500-BGIsifaT.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Newsreader;src:url(/assets/newsreader-600-D6BEa4Ta.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Sans;src:url(/assets/ibm-plex-sans-400-CDDApCn2.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Sans;src:url(/assets/ibm-plex-sans-500-6ng42L7E.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Sans;src:url(/assets/ibm-plex-sans-600-CuJfVYMP.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#faf8f4;--surface:#fff;--surface-sunken:#f2efe9;--border:#928f88;--border-strong:#cdc5b6;--hairline:#efebe3;--text:#1b1916;--text-secondary:#4b463e;--text-muted:#6f685d;--primary:#23201b;--primary-contrast:#faf8f4;--domain-sleep:#6d4ab8;--domain-move:#0e7490;--domain-fuel:#b45309;--domain-checkin:#0f766e;--ok:#1f7a4d;--attention:#a16207;--safety:#b3261e;--safety-surface:#fdf6f5;--withheld-text:#6f685d;--withheld-border:#cdc5b6;--font-display:"Newsreader", Georgia, serif;--font-body:"IBM Plex Sans", system-ui, sans-serif;--text-display:2rem;--text-h1:1.5rem;--text-h2:1.25rem;--text-h3:1.0625rem;--text-body:1rem;--text-sm:.875rem;--text-label:.75rem;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--radius-full:999px;--elev-1:0 1px 2px #1b191612;--elev-2:0 2px 10px #1b19160d;--elev-3:0 8px 28px #1b191617;--dur-fast:.15s;--dur-base:.22s;--dur-slow:.32s;--ease-out:cubic-bezier(.16,1,.3,1);font-family:var(--font-body)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#14120f;--surface:#1d1a16;--surface-sunken:#241f1b;--border:#716c66;--border-strong:#4a433a;--hairline:#241f1b;--text:#f5f1ea;--text-secondary:#cfc7b8;--text-muted:#9a9186;--primary:#f5f1ea;--primary-contrast:#1b1916;--domain-sleep:#b49bf5;--domain-move:#4dd4ee;--domain-fuel:#f0b849;--domain-checkin:#45d6c0;--ok:#4ade80;--attention:#f0b849;--safety:#fb7185;--safety-surface:#2a1618;--withheld-text:#9a9186;--withheld-border:#4a433a;--elev-1:0 1px 2px #00000073;--elev-2:0 4px 14px #00000080;--elev-3:0 12px 32px #0000008c}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#14120f;--surface:#1d1a16;--surface-sunken:#241f1b;--border:#716c66;--border-strong:#4a433a;--hairline:#241f1b;--text:#f5f1ea;--text-secondary:#cfc7b8;--text-muted:#9a9186;--primary:#f5f1ea;--primary-contrast:#1b1916;--domain-sleep:#b49bf5;--domain-move:#4dd4ee;--domain-fuel:#f0b849;--domain-checkin:#45d6c0;--ok:#4ade80;--attention:#f0b849;--safety:#fb7185;--safety-surface:#2a1618;--withheld-text:#9a9186;--withheld-border:#4a433a;--elev-1:0 1px 2px #00000073;--elev-2:0 4px 14px #00000080;--elev-3:0 12px 32px #0000008c}}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);min-height:100%;margin:0;padding:0}body{-webkit-text-size-adjust:100%;font-size:16px;line-height:1.45}a{color:var(--domain-move)}a:hover{color:#0b5a70}:root[data-theme=dark] a:hover{color:#6ee4f7}.num{font-variant-numeric:tabular-nums}.serif{font-family:var(--font-display)}button{font:inherit;color:inherit}input,select,textarea{font:inherit;color:inherit;background:var(--surface);border:1px solid var(--border);border-radius:10px;width:100%;padding:10px}label{color:var(--text-muted);margin-bottom:4px;font-size:.85rem;display:block}h1{font-family:var(--font-display);font-size:var(--text-h1);letter-spacing:-.01em;margin:0;font-weight:600;line-height:1.25}h2{font-family:var(--font-body);font-size:var(--text-h2);margin:0;font-weight:600;line-height:1.3}h3{font-family:var(--font-body);font-size:var(--text-h3);margin:0;font-weight:600;line-height:1.4}.app-shell{max-width:720px;margin:0 auto;padding:0 12px 128px}.sidebar{display:none}.app-header{z-index:5;background:var(--bg);border-bottom:1px solid var(--border);padding:12px 0 8px;position:sticky;top:0}.app-header .muted{font-size:.8rem}.bottom-nav{z-index:10;background:var(--surface);border-top:1px solid var(--border);padding:6px 4px calc(6px + env(safe-area-inset-bottom));grid-template-columns:repeat(5,1fr);gap:2px;display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav-link{min-height:56px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:6px 2px;font-family:inherit;font-size:11px;text-decoration:none;display:flex}.bottom-nav-link[aria-current=page],.bottom-nav-link[aria-expanded=true]{background:var(--surface-sunken);color:var(--text)}.theme-toggle{gap:var(--space-1);display:flex}.theme-toggle-btn{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-sunken);width:36px;height:36px;color:var(--text-muted);cursor:pointer;justify-content:center;align-items:center;display:flex}.theme-toggle-btn[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:var(--primary-contrast)}.more-sheet-backdrop{z-index:20;background:#0006;align-items:flex-end;display:flex;position:fixed;inset:0}.more-sheet{background:var(--surface);border-top:1px solid var(--border);border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;box-shadow:var(--elev-3);padding:var(--space-4) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom))}.more-sheet-header{justify-content:flex-end;display:flex}.more-sheet-close{border-radius:var(--radius-sm);color:var(--text);cursor:pointer;background:0 0;border:none;padding:8px;display:flex}.more-sheet-nav{gap:var(--space-2);margin-top:var(--space-2);flex-direction:column;display:flex}.more-sheet-link{align-items:center;gap:var(--space-3);min-height:56px;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--text);text-decoration:none;display:flex}.more-sheet-link[aria-current=page]{background:var(--surface-sunken)}.more-sheet-footer{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--hairline);justify-content:flex-end;display:flex}@media (width>=1024px){.app-shell{grid-template:"sidebar header""sidebar main"1fr"sidebar nav"/240px minmax(0,1fr);max-width:none;min-height:100vh;margin:0;padding:0;display:grid}.sidebar{height:100vh;padding:var(--space-6) var(--space-4);border-right:1px solid var(--border);background:var(--surface);flex-direction:column;grid-area:sidebar;display:flex;position:sticky;top:0}.sidebar-header{margin-bottom:var(--space-6)}.sidebar-app-name{font-size:var(--text-h2);margin:0}.sidebar-email{margin:var(--space-1) 0 0;font-size:var(--text-sm)}.sidebar-nav{gap:var(--space-1);flex-direction:column;display:flex}.sidebar-nav-link{align-items:center;gap:var(--space-3);min-height:44px;padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--text-secondary);text-decoration:none;display:flex}.sidebar-nav-link[aria-current=page]{background:var(--surface-sunken);color:var(--text)}.sidebar-footer{padding-top:var(--space-4);border-top:1px solid var(--hairline);margin-top:auto}.app-header{padding-left:var(--space-6);padding-right:var(--space-6);grid-area:header}main{padding:0 var(--space-6) var(--space-8);gap:var(--space-8);grid-area:main;grid-template-columns:minmax(0,1fr) 320px;align-items:start;display:grid}main>*{grid-column:1}.rail-section{grid-column:2}.bottom-nav{grid-area:nav;display:none}}.card--hero{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--card-hero-accent,var(--primary));border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--elev-2);margin-top:var(--space-6)}.card--hero h2{font-size:var(--text-h2);color:var(--text);text-transform:none;letter-spacing:normal;margin:0 0 var(--space-2);font-weight:600}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);margin-top:var(--space-3)}.card h2{font-size:var(--text-h3);margin:0 0 var(--space-2);text-transform:none;letter-spacing:normal;color:var(--text);font-weight:600}.card p{margin:0 0 var(--space-2)}.card--quiet{border:none;border-top:1px solid var(--border);padding:var(--space-4) 0 0;margin-top:var(--space-6);background:0 0;border-radius:0}.card--quiet h2{font-size:var(--text-label);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:0 0 var(--space-3);font-weight:600}.card--quiet p,.card--quiet li{font-size:var(--text-sm);color:var(--text-muted)}.muted{color:var(--text-muted)}.stack{flex-direction:column;gap:8px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.btn{border:1px solid var(--border);background:var(--surface-sunken);cursor:pointer;border-radius:10px;min-height:44px;padding:10px 14px}.btn-primary{background:var(--primary);border-color:var(--primary);color:var(--primary-contrast);font-weight:600}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-compact{min-height:36px;padding:6px 10px;font-size:.85rem}.timeline{flex-direction:column;gap:2px;margin:0;padding:0 0 0 30px;list-style:none;display:flex;position:relative}.timeline:before{content:"";background:var(--border);width:1px;position:absolute;top:12px;bottom:12px;left:6px}.timeline-item{padding:var(--space-4) 0;border-bottom:1px solid var(--hairline);position:relative}.timeline-item--completed,.timeline-item--skipped,.timeline-item--rest_declared{opacity:.72}.timeline-node{border:2px solid var(--border);background:var(--bg);border-radius:999px;width:13px;height:13px;position:absolute;top:19px;left:-30px}.timeline-node--filled{border:none;justify-content:center;align-items:center;display:flex}.withheld{align-items:center;gap:var(--space-1);border:1px dashed var(--withheld-border);border-radius:var(--radius-sm);color:var(--withheld-text);font-size:var(--text-label);letter-spacing:.06em;text-transform:uppercase;padding:3px 10px;font-weight:600;display:inline-flex}.status-chip{text-transform:uppercase;letter-spacing:.05em;background:color-mix(in srgb, var(--text-muted) 8%, transparent);color:var(--text-muted);border:none;border-radius:999px;align-items:center;gap:4px;padding:2px 9px;font-size:.72rem;display:inline-flex}.status-chip--completed{background:color-mix(in srgb, var(--ok) 5%, transparent);color:var(--ok)}.status-chip--attention{background:color-mix(in srgb, var(--attention) 1%, transparent);color:var(--attention)}.status-chip--safety{background:color-mix(in srgb, var(--safety) 14%, transparent);color:var(--safety)}.notice{border-radius:var(--radius-md);margin-top:var(--space-3);border:1px solid var(--border);background:var(--surface);padding:12px 14px}.notice--attention{border-color:var(--attention)}.notice--info{border-color:var(--border);background:var(--surface-sunken)}.notice--restricted,.notice--urgent,.notice--emergency{border-color:var(--border);border-left:3px solid var(--safety);background:var(--safety-surface)}.notice h3{margin:0 0 4px;font-size:.9rem}.field-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}@media (width<=420px){.field-grid{grid-template-columns:1fr}}.checkbox-row{gap:var(--space-3);min-height:44px;padding:var(--space-1) 0;align-items:flex-start;display:flex}.checkbox-row input{width:auto;margin-top:4px}.error-text{color:var(--safety)}.success-text{color:var(--ok)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.lead{font-size:1.05rem}.detail-heading{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:10px 0 4px;font-size:.85rem}.card h3{font-size:var(--text-sm);margin:12px 0 4px}.form-inset{margin-top:10px}.form-block{border-top:1px solid var(--border);margin-top:16px;padding-top:10px}.fieldset{margin:var(--space-6) 0 0;border:0;padding:0}.fieldset legend{font-size:var(--text-h3);color:var(--text);margin-bottom:var(--space-3);padding:0;font-weight:600}.fieldset--symptoms{border:1px solid var(--safety-surface);border-left:3px solid var(--safety);border-radius:var(--radius-md);background:var(--safety-surface);padding:var(--space-3) var(--space-4);margin-top:var(--space-4)}.fieldset--symptoms legend{color:var(--safety);font-size:var(--text-sm);margin-bottom:var(--space-2);font-weight:600}.checkin-no-measurement{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);padding:var(--space-3) var(--space-4);margin-top:var(--space-3)}.value-chip{background:var(--surface-sunken);color:var(--text-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums;border-radius:999px;padding:2px 9px;font-weight:600}.value-chip--active{background:color-mix(in srgb, var(--domain-checkin) 7%, transparent);color:var(--domain-checkin)}input[type=range]{appearance:none;cursor:pointer;background-color:initial;border:none;border-radius:999px;outline:none;width:100%;height:6px;padding:0}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--surface);border:2px solid var(--domain-checkin);cursor:pointer;border-radius:999px;width:18px;height:18px}input[type=range]::-moz-range-thumb{background:var(--surface);border:2px solid var(--domain-checkin);cursor:pointer;border-radius:999px;width:18px;height:18px}input[type=range]::-moz-range-track{background:0 0;border-radius:999px;height:6px}.disclaimer{text-align:center;margin:16px 0 0}.status-chip--planned{background:color-mix(in srgb, var(--text-muted) 8%, transparent);color:var(--text-muted)}.status-chip--moved{background:color-mix(in srgb, var(--attention) 1%, transparent);color:var(--attention)}.status-chip--cancelled{background:color-mix(in srgb, var(--safety) 14%, transparent);color:var(--safety)}.status-chip--skipped{background:color-mix(in srgb, var(--text-muted) 8%, transparent);color:var(--text-muted)}.status-chip--rest_declared{background:color-mix(in srgb, var(--border-strong) 25%, transparent);color:var(--text-secondary)}a.btn{text-decoration:none;display:inline-block}.adherence-grid{margin-top:var(--space-2);grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;display:grid}.adherence-cell{border-radius:6px;height:24px}.adherence-cell--completed{background:var(--ok)}.adherence-cell--not_recorded{border:1px dashed var(--border-strong);box-sizing:border-box}.adherence-cell--skipped{background:var(--surface-sunken)}.adherence-cell--today{background:var(--bg);border:2px solid var(--primary);box-sizing:border-box}.adherence-legend{margin:var(--space-3) 0 0;color:var(--text-muted);flex-direction:column;gap:5px;padding:0;font-size:10.5px;list-style:none;display:flex}.adherence-legend li{align-items:center;gap:var(--space-2);display:flex}.adherence-swatch{border-radius:4px;flex-shrink:0;width:14px;height:14px;display:inline-block}.adherence-swatch--completed{background:var(--ok)}.adherence-swatch--not_recorded{border:1px dashed var(--border-strong);box-sizing:border-box}.adherence-swatch--skipped{background:var(--surface-sunken)}.adherence-swatch--today{background:var(--bg);border:2px solid var(--primary);box-sizing:border-box}.checkin-trend-grid{gap:var(--space-4);margin-top:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(110px,1fr));display:grid}.checkin-sparkline svg{width:100%;height:auto;margin-top:var(--space-1)}.settings-group summary{cursor:pointer;justify-content:space-between;align-items:center;list-style:none;display:flex}.settings-group summary::-webkit-details-marker{display:none}.settings-group summary:after{content:"";border-right:2px solid var(--text-muted);border-bottom:2px solid var(--text-muted);width:9px;height:9px;transition:transform var(--dur-fast) var(--ease-out);flex-shrink:0;transform:rotate(45deg)}.settings-group[open] summary:after{transform:rotate(-135deg)}.settings-group summary h2{margin:0}@media (prefers-reduced-motion:reduce){.settings-group summary:after{transition:none}}.not-available-pill{align-items:center;gap:var(--space-1);border:1px dashed var(--border-strong);border-radius:var(--radius-sm);color:var(--text-muted);font-size:var(--text-label);letter-spacing:.04em;text-transform:uppercase;padding:4px 10px;font-weight:600;display:inline-flex}.coach-input-disabled{border:1px dashed var(--border-strong);border-radius:var(--radius-md);padding:var(--space-4);background:var(--surface-sunken);gap:var(--space-3);flex-direction:column;display:flex}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton{border-radius:var(--radius-sm);background:var(--surface-sunken);display:inline-block}@media (prefers-reduced-motion:no-preference){.skeleton{background:linear-gradient(90deg, var(--surface-sunken) 25%, var(--border) 50%, var(--surface-sunken) 75%);background-size:200% 100%;animation:1.4s ease-in-out infinite skeleton-shimmer}}.skeleton--title{width:45%;height:1.3em;margin-bottom:var(--space-3);display:block}.skeleton--text{width:80%;height:.9em;margin-bottom:var(--space-2);display:block}.skeleton--block{width:100%;height:56px;display:block}.state-error{align-items:flex-start;gap:var(--space-2);flex-direction:column;display:flex}.state-error .state-error-row{align-items:center;gap:var(--space-2);display:flex}.state-empty{align-items:flex-start;gap:var(--space-2);padding:var(--space-2) 0;color:var(--text-muted);flex-direction:column;display:flex}.state-empty .state-empty-row{align-items:center;gap:var(--space-2);display:flex}@media (prefers-reduced-motion:no-preference){.btn,a.btn{transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out)}.btn:active,a.btn:active{transform:scale(.97)}.card,.card--hero{transition:box-shadow var(--dur-base) var(--ease-out)}.more-sheet-backdrop{opacity:0;transition:opacity var(--dur-base) var(--ease-out)}.more-sheet-backdrop--visible{opacity:1}.more-sheet{opacity:0;transition:opacity var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);transform:translateY(16px)}.more-sheet--visible{opacity:1;transform:translateY(0)}}
