.assistant-panel,.assistant-launch{--as-bg:#f5f3ec;--as-surface:#fff;--as-ink:#18332f;--as-muted:#546661;--as-border:#d8dfd7;--as-accent:#1d5a50;--as-soft:#eaf0e7;--as-lime:#d8ef92;color:var(--as-ink);font-family:inherit}:root[data-theme=dark] .assistant-panel,:root[data-theme=dark] .assistant-launch{--as-bg:#0f1f1c;--as-surface:#162b27;--as-ink:#f5f3ec;--as-muted:#b4c2ba;--as-border:#34504a;--as-accent:#d8ef92;--as-soft:#23402f;--as-lime:#d8ef92}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .assistant-panel,:root:not([data-theme=light]) .assistant-launch{--as-bg:#0f1f1c;--as-surface:#162b27;--as-ink:#f5f3ec;--as-muted:#b4c2ba;--as-border:#34504a;--as-accent:#d8ef92;--as-soft:#23402f;--as-lime:#d8ef92}}.assistant-launch{position:fixed;right:28px;bottom:26px;z-index:80;display:flex;align-items:center;gap:12px;min-height:52px;padding:10px 16px 10px 11px;border:1px solid #18332f;border-radius:100px;background:#18332f;color:#fff;box-shadow:0 8px 30px #122d2828;font-family:inherit;font-size:14px;font-weight:600;line-height:1;cursor:pointer}.assistant-spark{display:grid;place-items:center;background:#d8ef92;color:#18332f;width:31px;height:31px;border-radius:50%;font-size:21px}.assistant-launch kbd{font-family:inherit;font-size:11px;line-height:1.3;color:#dce4da;border:1px solid #718d82;border-radius:4px;padding:3px 5px}.assistant-panel{position:fixed;z-index:200;right:16px;top:16px;bottom:16px;width:min(422px,calc(100vw - 32px));display:flex;flex-direction:column;background:var(--as-bg);border:1px solid var(--as-border);border-radius:22px;box-shadow:0 15px 80px #071d242d;overflow:hidden;isolation:isolate;font-size:14px;line-height:1.55;max-height:calc(100dvh - 32px)}.assistant-panel.assistant-expanded{width:min(680px,calc(100vw - 32px))}.assistant-panel button{font:inherit;cursor:pointer}.assistant-panel button:disabled{cursor:not-allowed;opacity:.55}.assistant-panel button:focus-visible,.assistant-panel a:focus-visible,.assistant-panel textarea:focus-visible,.assistant-panel select:focus-visible,.assistant-panel summary:focus-visible,.assistant-launch:focus-visible{outline:3px solid var(--as-accent);outline-offset:3px}.assistant-panel a{color:var(--as-accent)}.assistant-header{display:flex;align-items:center;gap:12px;padding:21px 20px 15px;background:var(--as-surface)}.assistant-avatar{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--as-lime);color:#18332f;font-size:25px}.assistant-header h2{font-size:18px;line-height:1.2;margin:0 0 5px;font-weight:650;letter-spacing:-.4px}.assistant-mode{display:flex;gap:6px;align-items:center;color:var(--as-muted);font-size:11px}.assistant-mode i{width:6px;height:6px;border-radius:50%;background:var(--as-accent)}.assistant-header-actions{display:flex;gap:3px;margin-left:auto}.assistant-icon{display:grid;place-items:center;border:0;background:transparent;color:var(--as-muted);font-size:23px!important;width:36px;min-height:36px;border-radius:9px}.assistant-icon:hover{background:var(--as-soft)}.assistant-toolbar{display:flex;align-items:center;gap:8px;padding:9px 18px;border-bottom:1px solid var(--as-border);background:var(--as-surface)}.assistant-toolbar button{border:0;background:transparent;color:var(--as-muted);padding:5px 3px;font-size:12px;border-radius:5px;min-height:32px}.assistant-toolbar button:hover{color:var(--as-ink)}.assistant-keyboard{margin-left:auto;font-size:10px;color:var(--as-muted);white-space:nowrap}.assistant-context{display:flex;align-items:center;gap:8px;min-height:39px;padding:7px 20px;background:var(--as-soft);border-bottom:1px solid var(--as-border);font-size:11px;color:var(--as-muted)}.assistant-context>span{overflow-wrap:anywhere}.assistant-context button{margin-left:auto;flex:none;border:0;background:transparent;color:var(--as-muted);width:28px;height:28px;font-size:18px}.assistant-history{max-height:35%;overflow:auto;background:var(--as-surface);border-bottom:1px solid var(--as-border);padding:12px 20px;flex-shrink:0}.assistant-history h3{font-size:12px;margin:0 0 8px;color:var(--as-muted)}.assistant-history>button{display:block;width:100%;padding:10px;border:0;border-bottom:1px solid var(--as-border);background:transparent;color:var(--as-ink);text-align:left;overflow-wrap:anywhere;border-radius:6px;font-size:13px}.assistant-history>button[aria-current=true]{background:var(--as-soft)}.assistant-history small{display:block;color:var(--as-muted);margin-top:3px}.assistant-log{padding:22px 20px;overflow-y:auto;overscroll-behavior:contain;min-height:80px;flex:1;scrollbar-width:thin}.assistant-welcome{padding:18px 0 24px}.assistant-welcome-symbol{font-size:31px;color:var(--as-accent)}.assistant-eyebrow{font-size:9px!important;letter-spacing:1.7px;font-weight:650;color:var(--as-muted);margin:16px 0 9px!important}.assistant-welcome h3{font-family:inherit;font-size:30px;line-height:1.15;font-weight:650;letter-spacing:-.9px;margin:0 0 12px}.assistant-welcome>p{font-size:13px;color:var(--as-muted);margin:0 0 24px;max-width:300px}.assistant-prompts{display:grid;grid-template-columns:1fr 1fr;gap:8px}.assistant-prompts>button{border:1px solid var(--as-border);background:var(--as-surface);color:var(--as-ink);border-radius:10px;padding:13px 12px;display:flex;text-align:left;align-items:center;gap:9px;justify-content:space-between;font-size:12px;line-height:1.4;min-height:62px}.assistant-prompts>button:hover{border-color:var(--as-accent)}.assistant-prompts>button span{color:var(--as-accent);font-size:15px}.assistant-message{margin-bottom:24px;overflow-wrap:anywhere}.assistant-message-author{display:flex;gap:10px;align-items:center;font-size:12px;font-weight:650;margin-bottom:8px}.assistant-message-author span{font-size:10px;font-weight:400;color:var(--as-muted)}.assistant-message-content{white-space:pre-wrap;font-size:13px;line-height:1.7}.assistant-message-user{padding:13px 15px;background:var(--as-soft);border-radius:12px;margin-left:22px}.assistant-message-user p{margin:0;white-space:pre-wrap}.assistant-message-user small{font-size:11px;color:var(--as-muted)}.assistant-evidence{font-size:11px;margin:12px 0;color:var(--as-muted)}.assistant-evidence-details{font-size:11px;color:var(--as-muted);margin:12px 0}.assistant-evidence-details summary{cursor:pointer;min-height:28px}.assistant-evidence-details p{margin:8px 0}.assistant-message .step{margin-top:16px;background:var(--as-surface);border:1px solid var(--as-border);padding:15px;border-radius:13px;color:var(--as-ink)}.assistant-message .step .row{gap:8px}.assistant-message .step .btn{font-size:12px;min-height:38px;padding:7px 13px}.assistant-message .step .small{font-size:11px}.assistant-message .step ul,.assistant-message .step .proposal-facts{font-size:12px}.assistant-compose{padding:15px 17px 12px;background:var(--as-surface);border-top:1px solid var(--as-border);flex-shrink:0}.assistant-compose form{border:1px solid var(--as-border);border-radius:13px;background:var(--as-bg);overflow:hidden}.assistant-compose textarea{border:0!important;box-shadow:none!important;background:transparent!important;border-radius:0!important;width:100%;resize:none;min-height:72px;max-height:150px;padding:12px 13px!important;color:var(--as-ink)!important;font-family:inherit!important;font-size:13px!important;line-height:1.5!important;display:block}.assistant-compose textarea::placeholder{color:var(--as-muted)}.assistant-send-row{display:flex;gap:8px;align-items:center;justify-content:space-between;padding:0 9px 9px}.assistant-provider{font-size:10px;color:var(--as-muted);display:flex;align-items:center;gap:5px}.assistant-provider select{font-family:inherit;font-size:11px;background:transparent;color:var(--as-muted);border:0;max-width:155px;padding:5px;min-height:32px;width:auto;margin:0}.assistant-send{background:#1d5a50;color:#fff;border:0;border-radius:8px;padding:8px 12px;min-height:36px;font-size:12px!important;font-weight:600!important;display:flex;gap:14px;align-items:center;white-space:nowrap}.assistant-send span{font-size:17px}.assistant-send:disabled{background:var(--as-soft);color:var(--as-muted);opacity:1!important}.assistant-privacy{font-size:10px;color:var(--as-muted);margin-top:9px}.assistant-privacy summary{cursor:pointer;min-height:25px;line-height:1.7}.assistant-privacy[open]{max-height:150px;overflow:auto}.assistant-privacy p{margin:5px 0}.assistant-error{padding:9px 11px;margin:0 0 12px;background:var(--as-soft);border-left:3px solid var(--as-accent);font-size:12px;border-radius:6px}.assistant-error p{margin:0 0 8px}.assistant-error button{border:1px solid var(--as-border);border-radius:7px;padding:7px 10px;background:var(--as-surface);color:var(--as-ink)}.assistant-error small{display:block;margin-top:7px;font-size:10px;color:var(--as-muted)}.assistant-offline{font-size:12px;color:var(--as-muted);margin:0 0 10px}.assistant-sr{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden;white-space:nowrap}.coach-overview{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:clamp(24px,4vw,56px);max-width:950px;margin:12px 0 28px}.coach-overview h2{font-family:inherit;font-weight:700;font-size:clamp(30px,4vw,48px);line-height:1.12;letter-spacing:-1.6px;max-width:580px;margin:14px 0 18px}.coach-overview>p{max-width:590px;color:var(--muted)}.coach-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.coach-prompts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:950px}.coach-prompt{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:14px;padding:22px;text-align:left;cursor:pointer;font:inherit}.coach-prompt strong{display:block;margin:0 0 8px}.coach-prompt span{font-size:13px;color:var(--muted)}.proposal-facts{display:grid;grid-template-columns:1fr;gap:8px;margin:12px 0}.proposal-facts>div{padding:10px;border-radius:7px;background:var(--bg);border:1px solid var(--border)}.proposal-facts dt{font-size:11px;color:var(--muted);margin-bottom:5px}.proposal-facts dd{margin:0;font-size:13px}.proposal-facts dd span{display:block;margin-top:4px;font-size:12px;color:var(--muted)}@media(min-width:1800px){.assistant-panel{right:28px;top:24px;bottom:24px;max-height:calc(100dvh - 48px);width:440px}.assistant-panel.assistant-expanded{width:720px}}@media(max-width:767px){.assistant-launch{bottom:calc(82px + env(safe-area-inset-bottom));right:16px;min-height:47px;padding:7px 13px 7px 8px;gap:8px;font-size:12px}.assistant-launch kbd{display:none}.assistant-spark{width:29px;height:29px;font-size:18px}.assistant-panel,.assistant-panel.assistant-expanded{top:0;right:0;bottom:0;width:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0;padding-top:env(safe-area-inset-top)}.assistant-header{padding:15px 18px 12px}.assistant-toolbar{padding-left:18px}.assistant-context{padding:5px 18px;min-height:36px}.assistant-log{padding:20px 18px}.assistant-welcome{padding-top:14px}.assistant-compose{padding:12px 13px calc(10px + env(safe-area-inset-bottom))}.assistant-compose textarea{font-size:16px!important;min-height:75px}.assistant-icon{width:42px;min-height:42px}.assistant-toolbar button{min-height:36px}.assistant-backdrop{position:fixed;inset:0;background:#10282766;z-index:199}.assistant-keyboard{display:none}.assistant-history>button{min-height:48px}.coach-prompts{grid-template-columns:1fr}.assistant-provider select{font-size:12px;max-width:140px}.assistant-send{min-height:42px}.assistant-privacy summary{min-height:28px}}@media(prefers-reduced-motion:no-preference){.assistant-panel{animation:coach-enter .18s ease-out}.assistant-launch{transition:transform .15s ease}.assistant-launch:hover{transform:translateY(-2px)}@keyframes coach-enter{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}}.assistant-context .assistant-resume-context{width:auto;white-space:nowrap;font-size:11px;text-decoration:underline;padding:4px 0 4px 8px;height:auto;min-height:30px}.assistant-icon{min-width:44px;min-height:44px}.assistant-toolbar button{min-height:44px}.assistant-context button{min-width:44px;min-height:36px}.assistant-send,.assistant-message .step .btn{min-height:44px}.assistant-panel button:disabled{opacity:1;color:var(--as-muted)}.assistant-compose form{border-color:var(--input-border,#7e9088)}.assistant-panel:has(.assistant-history) .assistant-log{display:none}.assistant-history{flex:1;min-height:60px;max-height:none}@media(min-width:1280px){.assistant-panel.assistant-docked{right:16px;top:16px;bottom:16px;max-height:calc(100dvh - 32px);min-width:340px;max-width:720px}body:has(.assistant-panel.assistant-docked) .workspace{margin-right:calc(var(--coach-w,420px) + 32px)!important;transition:margin-right .12s ease}body.assistant-resizing,body.assistant-resizing *{cursor:col-resize!important;-webkit-user-select:none;user-select:none}body.assistant-resizing .workspace{transition:none}}.assistant-resize{position:absolute;left:0;top:0;bottom:0;width:10px;cursor:col-resize;z-index:2;touch-action:none}.assistant-resize:after{content:"";position:absolute;left:3px;top:50%;width:4px;height:44px;margin-top:-22px;border-radius:4px;background:var(--as-border);opacity:.9}.assistant-resize:hover:after,.assistant-resize:focus-visible:after{background:var(--as-accent)}.assistant-resize:focus-visible{outline:none}.assistant-pin.on{color:var(--as-accent)}.assistant-mode[data-kind=simulated] i{background:#b7791f}.assistant-mode[data-kind=live] i{background:#2f855a}.assistant-context{flex-wrap:wrap;gap:6px;padding:8px 18px}.assistant-chip{display:inline-flex;align-items:center;gap:4px;min-height:28px;padding:2px 4px 2px 10px;border:1px solid var(--as-border);border-radius:999px;background:var(--as-surface);color:var(--as-ink);font-size:11px;line-height:1.2}.assistant-chip-fixed{padding-right:10px;color:var(--as-muted)}.assistant-context .assistant-chip button{margin:0;width:24px!important;min-width:24px!important;height:24px!important;min-height:24px!important;border-radius:50%;font-size:14px!important;color:var(--as-muted)}.assistant-chip input[type=date]{border:0!important;background:transparent!important;color:var(--as-ink)!important;font:inherit!important;font-size:11px!important;padding:0!important;min-height:22px;width:auto;margin:0;box-shadow:none!important}.assistant-context .assistant-chip-add,.assistant-context .assistant-chip-reset{margin:0 0 0 2px;width:auto!important;min-width:0!important;height:auto!important;min-height:28px!important;padding:2px 6px;font-size:11px!important;border:0;background:transparent;color:var(--as-accent);text-decoration:underline}.assistant-context .assistant-chip-reset{margin-left:auto}.assistant-progress{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:11px 13px;margin:0 0 18px;border-radius:12px;background:var(--as-surface);border:1px solid var(--as-border);font-size:12px}.assistant-progress small{color:var(--as-muted);flex-basis:100%;font-size:11px}.assistant-dots{display:inline-flex;gap:4px}.assistant-dots i{width:6px;height:6px;border-radius:50%;background:var(--as-accent);opacity:.35}@media(prefers-reduced-motion:no-preference){.assistant-dots i{animation:coach-dot 1s infinite ease-in-out}.assistant-dots i:nth-child(2){animation-delay:.15s}.assistant-dots i:nth-child(3){animation-delay:.3s}@keyframes coach-dot{0%,to{opacity:.25}50%{opacity:1}}}.assistant-stop{background:#7a2e2e!important}.assistant-msg-error{font-size:12px;color:var(--as-muted);border-left:3px solid #b7791f;padding-left:8px}.assistant-message-author span[data-simulated]{color:#9a5b00;font-weight:600}:root[data-theme=dark] .assistant-message-author span[data-simulated]{color:#f0b35a}.assistant-message-safety .assistant-message-content{border-left:3px solid var(--as-accent);padding-left:11px}.assistant-dataread dl{margin:6px 0 0;display:grid;gap:6px}.assistant-dataread dl>div{display:grid;grid-template-columns:82px 1fr;gap:8px}.assistant-dataread dt{font-weight:650;color:var(--as-ink)}.assistant-dataread dd{margin:0}.assistant-dataread [data-kind=missing] dt{color:#9a5b00}:root[data-theme=dark] .assistant-dataread [data-kind=missing] dt{color:#f0b35a}.proposal-effect{margin:10px 0}.proposal-effect ul{margin:4px 0 0;padding-left:18px;font-size:12px}.proposal-receipt{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center;margin:10px 0 2px;padding:8px 10px;border-radius:8px;background:var(--as-soft,#eaf0e7);font-size:12px;font-weight:600}.proposal-receipt a{font-weight:500}.proposal-diff{width:100%;border-collapse:collapse;margin:6px 0 10px;font-size:12px}.proposal-diff th,.proposal-diff td{padding:4px 6px;border-bottom:1px solid var(--border,#d8dfd7);text-align:left}.proposal-diff .num{text-align:right;font-variant-numeric:tabular-nums}.proposal-diff tr[data-changed] td:last-child{color:var(--as-accent,#1d5a50)}.proposal-facts dd span{white-space:normal}.coach-providers{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:6px;font-size:13px}.assistant-pin{font-size:12px!important;width:auto!important;padding:0 10px;border:1px solid var(--as-border)!important;border-radius:999px;min-height:32px!important;height:32px;align-self:center}.assistant-pin.on{background:var(--as-soft);border-color:var(--as-accent)!important}.assistant-panel.assistant-compact .assistant-avatar,.assistant-panel.assistant-compact .assistant-privacy,.assistant-panel.assistant-compact .assistant-welcome{display:none}.assistant-panel.assistant-compact .assistant-header{padding:6px 14px}.assistant-panel.assistant-compact .assistant-toolbar{padding:0 14px;min-height:0}.assistant-panel.assistant-compact .assistant-toolbar button{min-height:36px}.assistant-panel.assistant-compact .assistant-header h2{font-size:15px;margin:0}.assistant-panel.assistant-compact .assistant-context{padding:4px 12px;min-height:0}.assistant-panel.assistant-compact .assistant-log{padding:10px 14px}.assistant-panel.assistant-compact .assistant-compose{padding:8px 10px}.assistant-panel.assistant-compact .assistant-compose textarea{min-height:44px!important}.assistant-chip-date{position:relative}.assistant-chip-date input[type=date]{position:absolute;left:0;top:0;bottom:0;width:calc(100% - 28px)!important;opacity:0;cursor:pointer}.assistant-chip-date:focus-within{outline:3px solid var(--as-accent);outline-offset:2px}.assistant-send{background:#18332f;color:#f5f3ec}:root[data-theme=dark] .assistant-send{background:#d8ef92;color:#18332f}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .assistant-send{background:#d8ef92;color:#18332f}}:root[data-theme=dark] .assistant-launch{border-color:#d8ef92}.assistant-send:disabled{background:var(--as-soft)!important;color:var(--as-muted)!important}.conn{display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:0 10px;border-radius:999px;border:1px solid var(--border);font-size:12.5px;color:var(--muted);text-decoration:none;white-space:nowrap;max-width:280px}.conn:hover{color:var(--text)}.conn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.conn-text{overflow:hidden;text-overflow:ellipsis}.conn-dot{width:8px;height:8px;border-radius:50%;background:#8a948f;flex:none}.conn-ok .conn-dot{background:#2f8f5b}.conn-demo .conn-dot{background:#7aa35a}.conn-down{border-color:#c98a2b;color:#8a5a12}.conn-down .conn-dot{background:#c98a2b;animation:conn-pulse 1.6s ease-in-out infinite}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .conn-down{color:#f0c27a}}:root[data-theme=dark] .conn-down{color:#f0c27a}@keyframes conn-pulse{50%{opacity:.35}}@media(prefers-reduced-motion:reduce){.conn-down .conn-dot{animation:none}}.conn-toast{position:fixed;z-index:60;left:50%;transform:translate(-50%);bottom:calc(84px + env(safe-area-inset-bottom));width:min(560px,calc(100vw - 32px));padding:12px 14px;border-radius:12px;background:var(--surface);color:var(--text);border:1px solid var(--border);box-shadow:0 10px 30px #00000024;display:grid;gap:8px;font-size:14px}.conn-toast .row{display:flex;gap:8px}@media(max-width:760px){.conn{padding:0 8px}.conn-text{max-width:128px}}@media(max-width:420px){.conn-text{display:none}.conn{min-width:32px;justify-content:center}}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.install-app{border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:var(--s3);display:grid;gap:var(--s2);justify-items:start}.install-app p{margin:0}.install-steps{margin:0;padding-left:20px;display:grid;gap:4px}.pwa-update{position:fixed;z-index:80;left:50%;transform:translate(-50%);bottom:calc(88px + env(safe-area-inset-bottom));width:min(520px,calc(100vw - 32px));display:flex;align-items:center;justify-content:space-between;gap:var(--s3);flex-wrap:wrap;padding:10px 14px;border-radius:12px;background:var(--surface);color:var(--text);border:1px solid var(--accent);box-shadow:0 10px 30px #0000002e}@media(min-width:1024px){.pwa-update{bottom:24px}}.btn.back-standalone{gap:4px}.login-install{margin-top:var(--s4);max-width:460px;margin-left:auto;margin-right:auto}:root{--tfr-ink: #18332f;--tfr-ivory: #f5f3ec;--tfr-lime: #d8ef92;--pillar-train: #3689c9;--pillar-fuel: #e9ac45;--pillar-recover: #a29bcc;--bg: #f5f3ec;--surface: #ffffff;--surface2: #ecebdf;--text: #18332f;--muted: #566660;--border: #d8d5c8;--accent: #18332f;--accent-fg: #f5f3ec;--accent-soft: #e8ecdc;--link: #1d5a50;--lime: #d8ef92;--lime-soft: #e6f2bc;--nav-active-bg: #e6f2bc;--nav-active-bar: #18332f;--ok: #166534;--ok-bg: #dcfce7;--warn: #92400e;--warn-bg: #fef3c7;--bad: #b91c1c;--bad-bg: #fee2e2;--info: #075985;--info-bg: #e0f2fe;--c1: #18332f;--c2: #0369a1;--c3: #15803d;--c4: #7e22ce;--c5: #a16207;--focus: #1d4ed8;--shadow: 0 3px 18px rgba(24,51,47,.03);--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 32px;--r: 18px;--nav-w: 264px;color-scheme:light dark;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #0f1f1c;--surface: #162b27;--surface2: #20382f;--text: #f5f3ec;--muted: #b4c2ba;--border: #34504a;--accent: #d8ef92;--accent-fg: #18332f;--accent-soft: #23402f;--link: #d8ef92;--lime-soft: #2b4a2a;--nav-active-bg: #243d2b;--nav-active-bar: #d8ef92;--ok: #86efac;--ok-bg: #14301e;--warn: #fcd34d;--warn-bg: #3a2a08;--bad: #fca5a5;--bad-bg: #3f1414;--info: #7dd3fc;--info-bg: #0c2a3d;--c1: #d8ef92;--c2: #38bdf8;--c3: #4ade80;--c4: #c084fc;--c5: #facc15;--focus: #9cc9ff;--shadow: none}}:root[data-theme=dark]{--bg: #0f1f1c;--surface: #162b27;--surface2: #20382f;--text: #f5f3ec;--muted: #b4c2ba;--border: #34504a;--accent: #d8ef92;--accent-fg: #18332f;--accent-soft: #23402f;--link: #d8ef92;--lime-soft: #2b4a2a;--nav-active-bg: #243d2b;--nav-active-bar: #d8ef92;--ok: #86efac;--ok-bg: #14301e;--warn: #fcd34d;--warn-bg: #3a2a08;--bad: #fca5a5;--bad-bg: #3f1414;--info: #7dd3fc;--info-bg: #0c2a3d;--c1: #d8ef92;--c2: #38bdf8;--c3: #4ade80;--c4: #c084fc;--c5: #facc15;--focus: #9cc9ff;--shadow: none;color-scheme:dark}:root[data-theme=light]{color-scheme:light}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text)}body{font-size:16px;line-height:1.5;-webkit-text-size-adjust:100%;overflow-x:hidden}h1{font-size:1.6rem;line-height:1.2;margin:0;letter-spacing:-.01em}h2{font-size:1.05rem;margin:0}h3{font-size:.95rem;margin:0 0 var(--s2)}p{margin:0 0 var(--s2);overflow-wrap:anywhere}a{color:var(--link);text-underline-offset:2px}code,.code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em;background:var(--surface2);padding:1px 6px;border-radius:6px;margin-left:6px}.muted{color:var(--muted)}.small{font-size:.85rem}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.ok{color:var(--ok);font-weight:600}.bad{color:var(--bad);font-weight:600}.warn-t{color:var(--warn)}:focus-visible,input[type=date]:focus-within,input[type=datetime-local]:focus-within{outline:3px solid var(--focus);outline-offset:2px;border-radius:4px}.skip{position:absolute;left:-999px;top:8px;background:var(--accent);color:var(--accent-fg);padding:10px 16px;border-radius:8px;z-index:100}.skip:focus{left:8px}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.app{min-height:100vh}.sidebar{display:none}.main{padding:var(--s4);padding-bottom:96px;max-width:1280px;margin:0 auto;min-width:0}.topbar{display:flex;align-items:center;gap:var(--s3);padding:var(--s2) var(--s4);background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20;min-height:56px}.brand{font-weight:800;letter-spacing:-.02em;display:flex;align-items:center;gap:8px;color:var(--text);text-decoration:none;font-size:1.1rem}.brand i{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:8px;background:var(--accent);color:var(--accent-fg);font-style:normal;font-size:.8rem}.spacer{flex:1}.tabbar{position:fixed;bottom:0;left:0;right:0;background:var(--surface);border-top:1px solid var(--border);display:grid;grid-template-columns:repeat(5,1fr);padding-bottom:env(safe-area-inset-bottom);z-index:30}.tabbar a,.tabbar button{min-height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:.72rem;color:var(--muted);text-decoration:none;background:none;border:0;font-family:inherit;cursor:pointer}.tabbar a.active,.tabbar button.on{color:var(--accent);font-weight:700}.tabbar .ic{font-size:1.2rem;line-height:1}.sheet-bg{position:fixed;inset:0;background:#00000073;z-index:40}.sheet{position:fixed;left:0;right:0;bottom:0;max-height:80vh;overflow:auto;background:var(--surface);border-radius:16px 16px 0 0;padding:var(--s4);padding-bottom:calc(var(--s4) + env(safe-area-inset-bottom));z-index:41}.sheet h3{margin-top:var(--s4);color:var(--muted);text-transform:uppercase;font-size:.72rem;letter-spacing:.08em}.sheet a{display:flex;align-items:center;min-height:48px;color:var(--text);text-decoration:none;border-radius:8px;padding:0 var(--s3)}.sheet a.active{background:var(--nav-active-bg);font-weight:700}.sidenav h3{margin:var(--s4) var(--s3) var(--s1);color:var(--muted);text-transform:uppercase;font-size:.7rem;letter-spacing:.09em}.sidenav a{display:flex;align-items:center;min-height:44px;padding:0 var(--s3);color:var(--text);text-decoration:none;border-radius:10px;border-left:3px solid transparent}.sidenav a:hover{background:var(--surface2)}.sidenav a.active{background:var(--nav-active-bg);border-left-color:var(--nav-active-bar);font-weight:700}@media(min-width:1024px){.app{display:grid;grid-template-columns:var(--nav-w) minmax(0,1fr)}.sidebar{display:block;position:sticky;top:0;align-self:start;height:100vh;height:100dvh;overflow-y:auto;overscroll-behavior:contain;background:var(--surface);border-right:1px solid var(--border);padding:var(--s4) var(--s2)}.tabbar,.topbar .brand{display:none}.topbar{justify-content:flex-end}.main{padding:var(--s5) var(--s6);padding-bottom:var(--s6);width:100%}.sidebar .brand{padding:0 var(--s3) var(--s3)}}.banner{padding:var(--s2) var(--s4);font-size:.9rem;text-align:center}.banner.synthetic{background:var(--info-bg);color:var(--info);border-bottom:1px solid var(--border)}.banner.offline{background:var(--warn-bg);color:var(--warn);font-weight:600;position:sticky;top:56px;z-index:19;border-bottom:1px solid var(--border)}.page-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s3);align-items:flex-end;margin-bottom:var(--s4)}.page-head p{margin:4px 0 0}.row{display:flex;flex-wrap:wrap;gap:var(--s2);align-items:center}.row.between{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:var(--s4)}.grid{display:grid;gap:var(--s4);grid-template-columns:minmax(0,1fr)}@media(min-width:768px){.grid.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.g4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(min-width:1100px){.grid.main-side{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:var(--s4);box-shadow:var(--shadow);min-width:0}.card-accent{border-top:4px solid var(--accent)}.card-warn{border-left:4px solid var(--warn)}.card-h{display:flex;justify-content:space-between;align-items:center;gap:var(--s2);flex-wrap:wrap;margin-bottom:var(--s3)}.card-a{display:flex;gap:var(--s2);flex-wrap:wrap}.hero{background:linear-gradient(135deg,var(--accent-soft),var(--surface))}.stat{padding:var(--s2) 0}.stat-l{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.stat-v{font-size:1.7rem;font-weight:800;letter-spacing:-.02em;line-height:1.2}.stat-s{font-size:.82rem}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:var(--s3)}.btn{min-height:44px;min-width:44px;padding:0 var(--s4);border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;text-decoration:none}.btn:hover:not(:disabled){background:var(--surface2)}.btn.primary{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.btn.primary:hover:not(:disabled){filter:brightness(1.08);background:var(--accent)}.btn.danger{background:var(--bad);color:#fff;border-color:var(--bad)}:root[data-theme=dark] .btn.danger{color:#1c0a0a}.btn.ghost{background:transparent}.btn.sm{min-height:44px;font-size:.85rem;padding:0 var(--s3)}.btn:disabled{opacity:.55;cursor:not-allowed}.field{display:flex;flex-direction:column;gap:4px;min-width:0}.field label{font-size:.85rem;font-weight:600}input,select,textarea{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--muted);border-radius:8px;padding:0 var(--s3);min-height:44px;width:100%;min-width:0}textarea{padding:var(--s2) var(--s3);min-height:88px;resize:vertical}input[type=checkbox],input[type=radio]{width:22px;min-height:22px;height:22px;accent-color:var(--accent)}input[type=range]{padding:0}.form{display:grid;gap:var(--s3);grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));align-items:end}.form .wide{grid-column:1 / -1}.check{flex-direction:row;align-items:center;gap:var(--s2);min-height:44px}.check label{font-weight:500}.live{min-height:1.4em;font-size:.9rem}.live>span{margin-right:8px}.badge{display:inline-block;padding:1px 8px;border-radius:99px;font-size:.75rem;font-weight:700;border:1px solid transparent;white-space:nowrap;vertical-align:middle}.b-neutral{background:var(--surface2);color:var(--text);border-color:var(--border)}.b-ok{background:var(--ok-bg);color:var(--ok)}.b-warn{background:var(--warn-bg);color:var(--warn)}.b-bad{background:var(--bad-bg);color:var(--bad)}.b-info{background:var(--info-bg);color:var(--info)}.b-accent{background:var(--accent-soft);color:var(--link)}.note{padding:var(--s2) var(--s3);border-radius:8px;background:var(--surface2);margin:var(--s2) 0;font-size:.92rem}.note.warn{background:var(--warn-bg);color:var(--warn)}.note.info{background:var(--info-bg);color:var(--info)}.note.bad{background:var(--bad-bg);color:var(--bad)}.state{padding:var(--s5);text-align:center;color:var(--muted);border:1px dashed var(--border);border-radius:var(--r)}.state.error{color:var(--bad);border-color:var(--bad);background:var(--bad-bg)}.spin{display:inline-block;width:14px;height:14px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:sp 1s linear infinite;vertical-align:-2px}@keyframes sp{to{transform:rotate(360deg)}}.list{margin:0;padding-left:1.2em}.list li{margin:2px 0}.kv{margin:0;display:grid;gap:4px}.kv>div{display:grid;grid-template-columns:minmax(110px,1fr) 2fr;gap:var(--s2);border-bottom:1px solid var(--border);padding:4px 0}.kv dt{color:var(--muted);font-size:.88rem}.kv dd{margin:0;min-width:0;overflow-wrap:anywhere}.tabs{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid var(--border);margin-bottom:var(--s4)}.tabs button{min-height:44px;padding:0 var(--s4);background:none;border:0;border-bottom:3px solid transparent;font:inherit;font-weight:600;color:var(--muted);cursor:pointer;white-space:nowrap}.tabs button.on{color:var(--text);border-bottom-color:var(--accent)}.disc{border:1px solid var(--border);border-radius:8px;margin:var(--s2) 0;background:var(--surface)}.disc summary{cursor:pointer;padding:var(--s2) var(--s3);min-height:44px;display:flex;align-items:center;font-weight:600}.disc-b{padding:var(--s2) var(--s3) var(--s3)}.modal-bg{position:fixed;inset:0;background:#00000080;z-index:60;display:flex;justify-content:flex-end}.modal{background:var(--surface);width:min(560px,100%);height:100%;overflow:auto;padding:var(--s4)}.drop{border:2px dashed var(--muted);border-radius:var(--r);padding:var(--s6);text-align:center;background:var(--surface)}.drop.over{border-color:var(--accent);background:var(--accent-soft)}progress{width:100%;height:12px;accent-color:var(--accent)}.tscroll{overflow-x:auto;max-width:100%;border-radius:8px}table.rt{width:100%;border-collapse:collapse;font-size:.92rem}.rt th{text-align:left;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:var(--s2) var(--s3);border-bottom:2px solid var(--border);white-space:nowrap}.rt td{padding:var(--s2) var(--s3);border-bottom:1px solid var(--border);vertical-align:top}.rt tr.sel td{background:var(--accent-soft)}.rt td.num,.rt th.num{text-align:right;font-variant-numeric:tabular-nums}@media(max-width:719px){.rt:not(.keep) thead{display:block;position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.rt:not(.keep) thead tr,.rt:not(.keep) thead th{display:block;width:1px;padding:0;white-space:normal}.rt:not(.keep),.rt:not(.keep) tbody,.rt:not(.keep) tr,.rt:not(.keep) td{display:block;width:100%}.rt:not(.keep) tr{border:1px solid var(--border);border-radius:10px;margin-bottom:var(--s2);padding:var(--s1) var(--s3);background:var(--surface)}.rt:not(.keep) td{border:0;display:flex;justify-content:space-between;gap:var(--s3);padding:4px 0;text-align:right}.rt:not(.keep) td:before{content:attr(data-label);color:var(--muted);font-size:.78rem;text-align:left;flex:none}}.chart{width:100%;min-height:200px}.chartblock{margin:var(--s2) 0}.zone-bar{display:grid;grid-template-columns:110px 1fr 70px;gap:var(--s2);align-items:center;margin:4px 0;font-size:.88rem}.zone-bar .bar{background:var(--surface2);height:14px;border-radius:7px;overflow:hidden}.zone-bar .bar i{display:block;height:100%;background:var(--accent)}.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.cal .dow{font-size:.72rem;color:var(--muted);text-align:center;font-weight:700}.cal .day{min-height:92px;border:1px solid var(--border);border-radius:8px;padding:4px;background:var(--surface);font-size:.78rem;overflow:hidden;text-align:left;cursor:pointer;font-family:inherit;color:var(--text);display:flex;flex-direction:column;gap:2px}.cal .day.sel{outline:3px solid var(--accent)}.cal .day.out{opacity:.5}.cal .day.today .dn{background:var(--accent);color:var(--accent-fg)}.cal .dn{font-weight:800;width:22px;height:22px;border-radius:11px;display:grid;place-items:center}.chip{display:block;border-radius:4px;padding:1px 4px;font-size:.7rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:var(--surface2)}.chip.planned{background:var(--info-bg);color:var(--info)}.chip.completed{background:var(--ok-bg);color:var(--ok)}.chip.skipped{background:var(--warn-bg);color:var(--warn);text-decoration:line-through}.chip.nodata{color:var(--muted);font-style:italic;background:transparent}@media(max-width:719px){.cal .day{min-height:64px}.cal .chip{font-size:0;height:8px;padding:0}.cal .chip.nodata{display:none}}.bubble{max-width:760px;padding:var(--s3);border-radius:14px;background:var(--surface2);margin:var(--s2) 0;white-space:pre-wrap;overflow-wrap:anywhere}.bubble.user{background:var(--accent-soft);margin-left:auto;border-bottom-right-radius:4px}.msg{display:flex;flex-direction:column}.msg.user{align-items:flex-end}.chips{display:flex;gap:var(--s2);flex-wrap:wrap}.chips .btn{border-radius:99px}.map{width:100%;height:260px;background:var(--surface2);border-radius:8px}.step{border:1px solid var(--border);border-radius:10px;padding:var(--s3);margin:var(--s2) 0;background:var(--surface)}.step.nested{margin-left:var(--s4);border-left:4px solid var(--accent)}.draft{border:2px dashed var(--accent);border-radius:var(--r);padding:var(--s3);background:var(--accent-soft)}.planned-row{opacity:.8;font-style:italic}.planned-row td:first-child{border-left:3px dashed var(--muted)}.login{min-height:100vh;display:grid;place-items:center;padding:var(--s4)}.login .card{width:min(420px,100%)}body{font-size:15px;letter-spacing:-.012em}button,input,textarea,select{letter-spacing:inherit}h1{font-size:clamp(1.9rem,2.7vw,2.75rem);font-weight:730;letter-spacing:-.055em;line-height:1.1}h2{letter-spacing:-.025em;font-size:1.06rem;font-weight:680}h3{letter-spacing:-.015em}.stat-v,td,.num{font-variant-numeric:tabular-nums}a{text-decoration-thickness:1px;text-underline-offset:4px}.main{max-width:1600px;padding-top:32px}.workspace{min-width:0}.topbar{min-height:76px;gap:14px;padding:12px 32px}.brand{gap:10px;font-size:22px;letter-spacing:-.06em}.breadcrumb{display:flex;gap:15px;align-items:center;font-size:12px;color:var(--muted)}.breadcrumb strong{font-weight:550;color:var(--text)}.athlete-label{display:flex;align-items:center;gap:9px;font-size:12px}.avatar{display:inline-grid;place-items:center;width:30px;height:30px;background:var(--accent-soft);border:1px solid var(--border);border-radius:50%;font-weight:700}.coach-top{background:var(--text);color:var(--bg);border-color:var(--text);font-size:13px}.coach-top:hover:not(:disabled){background:var(--accent);color:var(--accent-fg)}kbd{font:inherit;opacity:.75;font-size:10px;border:1px solid currentColor;border-radius:4px;padding:1px 4px;margin-left:8px}.sidenav h3{font-size:9px;letter-spacing:.16em;margin:20px 15px 7px;font-weight:650}.sidenav a{gap:12px;font-size:13px;padding:0 14px;min-height:39px;border-left:0;border-radius:9px;color:var(--muted)}.sidenav a.active{color:var(--text);background:var(--nav-active-bg);box-shadow:inset 3px 0 0 var(--nav-active-bar)}.sidenav a svg{flex:none}.nav-tag{font-size:8px;letter-spacing:.08em;border:1px solid var(--border);border-radius:4px;padding:2px 4px;margin-left:auto}.sidebar{scrollbar-width:thin}.sidebar-foot{margin:28px 12px 5px;padding-top:16px;border-top:1px solid var(--border);font-size:11px;display:flex;align-items:center;flex-wrap:wrap;gap:6px}.sidebar-foot .small{display:block;width:100%;padding-left:12px;font-size:10px}.local-dot{width:6px;height:6px;display:inline-block;border-radius:100%;background:#69894e;flex:none}.banner.synthetic{margin:0;background:transparent;border-bottom:1px solid var(--border);padding:8px 32px;color:var(--muted);font-size:11px;text-align:left;display:flex;gap:7px;align-items:center}.page-head{margin-bottom:25px}.page-head p{margin-top:9px}.stack,.grid{gap:22px}.grid{align-items:start}.card{padding:24px}.card-h{margin-bottom:19px}.card-a a{font-size:12px;font-weight:650;text-decoration:none}.card-a a:hover{text-decoration:underline}.stat-v{font-size:2rem;font-weight:650;letter-spacing:-.055em;line-height:1.2}.stat-l{font-size:10px;letter-spacing:.085em;margin-bottom:7px}.stat-s{margin-top:7px;font-size:12px}.btn{border-radius:10px;font-size:13px;transition:background .15s,border-color .15s}.btn:disabled{opacity:1;color:var(--muted);background:var(--surface2);border-color:var(--border)}.btn.primary:disabled{background:var(--surface2);color:var(--muted)}input,select,textarea{border-color:var(--border);border-radius:9px}input:hover,select:hover,textarea:hover{border-color:var(--muted)}.field label{font-size:12px}.field small{font-size:11px;line-height:1.6}.badge{font-size:10px;padding:3px 9px;font-weight:650;letter-spacing:0}.rt th{font-size:10px;letter-spacing:.08em;border-bottom-width:1px;padding:12px}.rt td{padding:14px 12px;font-size:13px}.rt tbody tr:last-child td{border-bottom:0}.rt tbody tr:hover td{background:color-mix(in srgb,var(--accent-soft) 30%,transparent)}.rt td a{font-weight:600;text-decoration:none}.disc{border-radius:10px}.disc summary{font-size:12px;gap:8px}.disc summary:before{content:"+";font-size:17px;font-weight:400}.disc[open] summary:before{content:"−"}.disc summary::-webkit-details-marker{display:none}.disc-b{padding:12px 16px 16px}.note{line-height:1.6;font-size:13px;padding:12px 14px}.state{font-size:13px;padding:28px}.zone-bar .bar{height:10px}.cal{gap:6px}.cal .day{border-radius:10px;padding:9px;min-height:110px}.cal .day.out{opacity:1;color:var(--muted);background:var(--surface2)}.cal .dow{padding:10px 0}.cal .dn{margin-bottom:5px}.chip{padding:3px 5px}.sheet{box-shadow:0 -20px 70px #0003}.sheet a{gap:12px}.login{background:radial-gradient(ellipse at top left,var(--accent-soft),transparent 65%),var(--bg)}.login .card{width:min(480px,100%);padding:36px}.login h1{margin:26px 0 14px}.login form{margin-top:28px}.login .note{margin-top:22px}@media(min-width:1024px){.sidebar{padding:25px 12px 15px}.sidebar .brand{padding:0 8px 12px}.main{padding:35px 36px 70px}}@media(min-width:1800px){.main{padding:45px 55px 80px}}@media(max-width:1100px){.athlete-label>span:last-child{display:none}}@media(max-width:1023px){.topbar{padding:10px 20px;gap:8px}.breadcrumb,.coach-top kbd,.athlete-label{display:none}.topbar .brand{margin-right:auto}.banner.synthetic{padding:8px 20px}.main{padding:26px 22px 100px}.tabbar{min-height:68px;box-shadow:0 -4px 24px #18332f06}.tabbar a,.tabbar button{font-size:10px;gap:5px;min-height:66px}.tabbar a.active:before{content:"";position:absolute;top:0;width:25px;height:3px;background:var(--accent);border-radius:0 0 3px 3px}}@media(max-width:600px){body{font-size:14px}.main{padding:24px 16px 100px}.topbar{padding:9px 12px;min-height:64px;gap:3px}.topbar .brand{font-size:18px;gap:7px}.topbar .btn{padding:0 9px;font-size:11px}.coach-top{min-width:44px}.coach-top span{display:none}.banner.synthetic{padding:7px 16px;font-size:10px}.synthetic-detail{display:none}.card{padding:19px;border-radius:16px}.stack,.grid{gap:16px}.page-head{margin-bottom:20px}.page-head>.row{width:100%}.page-head>.row input[type=date]{flex:1}.stat-v{font-size:1.65rem}.stats{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:12px}.rt:not(.keep) td{font-size:12px;padding:5px 0}.rt:not(.keep) td:before{font-size:11px}.cal{gap:3px}.cal .day{padding:4px;min-height:66px}.login .card{padding:25px}}@media(max-width:1023px){.assistant-launch{display:none!important}}:root{--input-border:#7e9088}:root[data-theme=dark]{--input-border:#6f8d84}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--input-border:#6f8d84}}input,select,textarea{border-color:var(--input-border)}.main{container-type:inline-size;container-name:workspace}@media(min-width:1280px){body:has(.assistant-panel:not(.assistant-expanded)) .athlete-label{display:none}}@container workspace (max-width:850px){.today-intro,.today-direction,.daily-metrics,.grid.g2,.grid.g3,.grid.g4{grid-template-columns:minmax(0,1fr)}.today-intro{gap:16px}.today-intro h2{font-size:2.5rem}.coach-invitation{min-height:110px;padding:20px}.daily-metric-group+.daily-metric-group{border-left:0;border-top:1px solid var(--border)}.page-head{flex-wrap:wrap}}@container workspace (max-width:850px){.grid.main-side,.grid.side-main{grid-template-columns:minmax(0,1fr)}}.fueling-inputs{container-type:inline-size}.fueling-fields{align-items:start}.fueling-fields .field{display:grid;grid-template-rows:auto 44px auto}.fueling-actions{margin-top:18px}.fueling-inputs .chips{margin:12px 0}@container (min-width:600px){.fueling-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.fueling-fields .field{grid-row:span 3;grid-template-rows:subgrid}}.sidebar-foot{display:grid;gap:6px}.sidebar-foot .product-line{font-size:11.5px;line-height:1.45;color:var(--muted)}.sidebar-foot .server-line{display:flex;align-items:center;gap:6px;font-size:10.5px;padding:0;width:auto}.app,.login{min-height:100vh;min-height:100dvh}.sheet{max-height:80vh;max-height:80dvh;overscroll-behavior:contain}html{scroll-padding-top:92px}@media(max-width:1023px){html{scroll-padding-top:80px;scroll-padding-bottom:calc(84px + env(safe-area-inset-bottom))}.main{padding-bottom:calc(100px + env(safe-area-inset-bottom))}.topbar{padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right))}.tabbar{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.tabbar a,.tabbar button{position:relative}body:has(:is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),textarea,select,[contenteditable=true]):focus) .tabbar{display:none}body:has(:is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),textarea,select):focus) .main{padding-bottom:calc(24px + env(safe-area-inset-bottom))}}@media(max-width:600px){.topbar{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.main{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}}.coach-top:focus-visible,.btn.primary:focus-visible,.coach-cta:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.disc summary:focus-visible{outline-offset:-3px}.tabbar a:focus-visible,.tabbar button:focus-visible{outline-offset:-4px}@media(min-width:421px){.banner.synthetic.covered{display:none}}.eyebrow{font-size:.7rem;letter-spacing:.16em;font-weight:750;color:var(--muted);margin-bottom:12px;text-transform:uppercase}abbr.est{font-size:.62em;font-weight:650;letter-spacing:.02em;color:var(--muted);text-decoration:none;margin-left:4px;cursor:help}.sport-tag{--sport: var(--sport-other);display:inline-flex;align-items:center;gap:5px;padding:2px 9px 2px 6px;border-radius:99px;font-size:11px;font-weight:650;color:var(--text);background:color-mix(in srgb,var(--sport) 13%,transparent);white-space:nowrap}.sport-tag svg{color:var(--sport);flex:none}.sport-tag.compact{width:28px;height:28px;padding:0;justify-content:center;border-radius:9px;flex:none}.topbar .btn{white-space:nowrap}@media(min-width:1280px){body:has(.assistant-panel:not(.assistant-expanded)) .coach-top kbd,body:has(.assistant-panel:not(.assistant-expanded)) .breadcrumb,body:has(.assistant-panel.assistant-docked) .athlete-label{display:none}}.tfr-logo{display:block;flex:none}.tfr-logo img{display:block;width:100%;height:auto}.tfr-logo .logo-dark{display:none}:root[data-theme=dark] .tfr-logo .logo-light{display:none}:root[data-theme=dark] .tfr-logo .logo-dark{display:block}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .tfr-logo .logo-light{display:none}:root:not([data-theme=light]) .tfr-logo .logo-dark{display:block}}.tfr-mark{display:block;flex:none;border-radius:22%}:root[data-theme=dark] .tfr-mark{box-shadow:0 0 0 1px #34504a}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .tfr-mark{box-shadow:0 0 0 1px #34504a}}.brand-full{display:block;padding:2px 6px 10px}.sidebar .brand-full{padding:2px 6px 10px}.brand-compact{gap:0}.login-brand{margin:0 0 6px -6px}.pillar:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:8px;vertical-align:1px;background:var(--pillar-train)}.pillar-fuel:before{background:var(--pillar-fuel)}.pillar-recover:before{background:var(--pillar-recover)}.sheet h3.pillar:before{vertical-align:0}.tabbar a[href="/coach"] .ic{display:grid;place-items:center;width:46px;height:28px;margin:-4px 0;border-radius:99px;background:var(--tfr-lime);color:var(--tfr-ink)}.tabbar a[href="/coach"]{color:var(--text)}.tabbar a[href="/coach"].active:before{display:none}.login-brand{margin:-8px 0 -4px -22px}.sidebar .brand-full{margin-left:-8px}:root{--data-power:#8054bd;--data-heart-rate:#d23e58;--data-cadence:#ce6b1b;--data-speed:#1878bc;--data-altitude:#687e8b;--data-load:#6175ad;--data-session-rpe:#9a4f72;--data-fitness:#1976bd;--data-fatigue:#d16b23;--data-form:#14877c;--data-energy:#b57b12;--data-carbohydrate:#1486b0;--data-protein:#b54a98;--data-fat:#b28b26;--data-water:#1c82ca;--data-sleep:#8258ba;--data-hrv:#168676;--data-unknown:#78848d;--data-route:#1878bc;--zone-1:#657789;--zone-2:#2378bf;--zone-3:#23824f;--zone-4:#f2cf3a;--zone-5:#ed872e;--zone-6:#ce3a46;--zone-7:#8955c7;--data-zone-ink:#fff;--zone-4-ink:#242918;--zone-5-ink:#26231c;--sport-cycling:#0a8a80;--sport-running:#b5427d;--sport-strength:#8d6436;--sport-functional:#6f7d16;--sport-other:#3f4b48;--zone-custom-0:#e3edf7;--zone-custom-1:#cadbed;--zone-custom-2:#aecbe5;--zone-custom-3:#8db4db;--zone-custom-4:#6a9ccd;--zone-custom-5:#4c81b9;--zone-custom-6:#3568a0;--zone-custom-7:#254e80;--zone-custom-8:#163860;--zone-custom-0-ink:#142c44;--zone-custom-1-ink:#142c44;--zone-custom-2-ink:#142c44;--zone-custom-3-ink:#142c44;--zone-custom-4-ink:#142c44}:root[data-theme=dark]{--data-power:#bb8eef;--data-heart-rate:#ff8196;--data-cadence:#ffac65;--data-speed:#6cbcff;--data-altitude:#aec2cf;--data-load:#a0b1ed;--data-session-rpe:#e7a2c2;--data-fitness:#65baff;--data-fatigue:#ffa568;--data-form:#62d3bc;--data-energy:#f0c35c;--data-carbohydrate:#5dccea;--data-protein:#ed8ace;--data-fat:#e7cb7a;--data-water:#6ac5ff;--data-sleep:#bd95f0;--data-hrv:#63d1b4;--data-unknown:#a8b5be;--data-route:#6cbcff;--zone-1:#a5b3c0;--zone-2:#67b7f5;--zone-3:#65cb8a;--zone-4:#ffe16b;--zone-5:#ffab60;--zone-6:#ff7d87;--zone-7:#bd8ceb;--data-zone-ink:#15252b;--zone-4-ink:#242918;--zone-5-ink:#26231c;--sport-cycling:#3fd6c4;--sport-running:#f08cbd;--sport-strength:#c79a6b;--sport-functional:#b8c75a;--sport-other:#d4dcd8;--zone-custom-0:#33475e;--zone-custom-1:#3e5875;--zone-custom-2:#4a6a8c;--zone-custom-3:#5d7fa4;--zone-custom-4:#7999bd;--zone-custom-5:#97b4d3;--zone-custom-6:#b2cce4;--zone-custom-7:#cde0f1;--zone-custom-8:#e7f1fc;--zone-custom-0-ink:#fff;--zone-custom-1-ink:#fff;--zone-custom-2-ink:#fff;--zone-custom-3-ink:#fff;--zone-custom-4-ink:#142c44}@media(prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]){--data-power:#bb8eef;--data-heart-rate:#ff8196;--data-cadence:#ffac65;--data-speed:#6cbcff;--data-altitude:#aec2cf;--data-load:#a0b1ed;--data-session-rpe:#e7a2c2;--data-fitness:#65baff;--data-fatigue:#ffa568;--data-form:#62d3bc;--data-energy:#f0c35c;--data-carbohydrate:#5dccea;--data-protein:#ed8ace;--data-fat:#e7cb7a;--data-water:#6ac5ff;--data-sleep:#bd95f0;--data-hrv:#63d1b4;--data-unknown:#a8b5be;--data-route:#6cbcff;--zone-1:#a5b3c0;--zone-2:#67b7f5;--zone-3:#65cb8a;--zone-4:#ffe16b;--zone-5:#ffab60;--zone-6:#ff7d87;--zone-7:#bd8ceb;--data-zone-ink:#15252b;--sport-cycling:#3fd6c4;--sport-running:#f08cbd;--sport-strength:#c79a6b;--sport-functional:#b8c75a;--sport-other:#d4dcd8;--zone-custom-0:#33475e;--zone-custom-1:#3e5875;--zone-custom-2:#4a6a8c;--zone-custom-3:#5d7fa4;--zone-custom-4:#7999bd;--zone-custom-5:#97b4d3;--zone-custom-6:#b2cce4;--zone-custom-7:#cde0f1;--zone-custom-8:#e7f1fc;--zone-custom-0-ink:#fff;--zone-custom-1-ink:#fff;--zone-custom-2-ink:#fff;--zone-custom-3-ink:#fff}}.config-zone-band span{border-right-color:#14232b4d}.zone-time-strip>span{border-right-color:#14232b4d}.profile-block rect:not(.profile-range){stroke:#14232b3d;stroke-width:.6;vector-effect:non-scaling-stroke}
