*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root,[data-theme=dark]{--color-accent:#e8ff00;--color-accent-dim:#b8cc00;--color-accent-fill:#e8ff00;--color-accent-fill-hover:#f0ff44;--color-accent-on-fill:#0c0c0e;--color-accent-glow:#e8ff001f;--color-accent-ghost:#e8ff000f;--color-bg:#0c0c0e;--color-surface:#1c1c20;--color-surface-2:#28282d;--color-surface-3:#303035;--color-sidebar-bg:#08080a;--color-sidebar-hover:#1c1c20;--color-text:#e8e8ed;--color-text-muted:#9c9ca8;--color-text-dim:#8e8e99;--color-border:#3e3e46;--color-border-subtle:#28282d;--color-control-edge:#72727b;--color-schedule:#4fd5e8;--color-schedule-text:#4fd5e8;--color-schedule-dim:#2e93a3;--color-schedule-fill:#4fd5e812;--color-schedule-fill-active:#4fd5e84d;--color-schedule-edge:#4fd5e838;--color-macro-protein:var(--color-accent);--color-macro-carbs:color-mix(in srgb, var(--color-accent) 42%, transparent);--color-macro-fat:color-mix(in srgb, var(--color-text) 26%, transparent);--color-danger:#f87784;--color-danger-dim:#ff475726;--color-on-danger:#0c0c0e;--color-warning:#e2a300;--color-warning-dim:#e2a3001a;--color-on-warning:#0c0c0e;--color-success:#4ade80;--color-success-dim:#4ade8024;--color-backdrop:#000000b3;--color-scrollbar:#3e3e46;--radius:6px;--radius-sm:3px;--radius-lg:10px;--radius-group:10px;--radius-ctl:4px;--radius-pill:999px;--shadow:0 2px 12px #0006;--shadow-lg:0 8px 32px #0009;--shadow-accent:0 0 20px #e8ff0014;--shadow-card:0 1px 2px #00000080, 0 8px 24px -12px #000000b3;--bottom-tab-bar-h:64px;--athlete-bar-h:50px;--bottom-bar-bleed:0px 80px 0px 80px;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--chrome-safe-top:var(--safe-top);--safe-vh:calc(100dvh - var(--safe-top) - var(--safe-bottom));--safe-vw:calc(100vw - var(--safe-left) - var(--safe-right));--text-xs:10px;--text-sm:11px;--text-ctl:12px;--text-md:13px;--text-lg:14px;--text-xl:16px;--text-2xl:22px;--tracking-label:.1em;--tracking-control:.06em;--ease-wipe:cubic-bezier(.77, 0, .18, 1);--ease-slab:linear(0, .24 5%, .58 11%, .84 18%, .98 25%, 1.03 32%, 1.032 37%, 1.018 46%, 1.005 58%, 1);--dur-tap:.12s;--dur-hover:.2s;--dur-slab:.46s;--dur-arrive:.56s;--dur-wipe:.82s;--glint:#ffffff8c;--shadow-thumb:0 1px 2px #0000002e;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:48px;--ease-settle:cubic-bezier(.16, 1, .3, 1);--ease-snap:cubic-bezier(.2, .9, .1, 1);--ease-seat:cubic-bezier(.2, 1.35, .35, 1);--ease-throw:cubic-bezier(.6, 0, .9, .5);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light]{--color-accent:#4a6200;--color-accent-dim:#5e7a00;--color-accent-fill:#d4e600;--color-accent-fill-hover:#e0f200;--color-accent-on-fill:#1a2000;--color-accent-glow:#4a62001a;--color-accent-ghost:#4a62000d;--color-bg:#f2f1ed;--color-surface:#fff;--color-surface-2:#f7f6f2;--color-surface-3:#eeedea;--color-sidebar-bg:#fafaf8;--color-sidebar-hover:#f0efeb;--color-text:#1a1a1f;--color-text-muted:#5f5f67;--color-text-dim:#6b6b74;--color-border:#c7c6c1;--color-border-subtle:#e8e7e3;--color-control-edge:#87878e;--color-schedule:#17a2bd;--color-schedule-text:#0b6577;--color-schedule-dim:#4c818c;--color-schedule-fill:#17a2bd14;--color-schedule-fill-active:#17a2bd47;--color-schedule-edge:#17a2bd42;--color-danger:#bf2425;--color-danger-dim:#dc262614;--color-on-danger:#fff;--color-warning:#845d0f;--color-warning-dim:#ca8a0414;--color-on-warning:#fff;--color-success:#17733b;--color-success-dim:#16a34a1a;--color-backdrop:#0000004d;--color-scrollbar:#d0d0cc;--shadow:0 2px 8px #0000000f;--shadow-lg:0 8px 24px #0000001a;--shadow-accent:0 0 16px #4a62001a;--shadow-card:0 1px 2px #0000000d, 0 8px 24px -14px #0000002e;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root{--sidebar-width:248px;--rail-collapsed:76px;--photo-ink:#fff;--photo-ink-muted:#ffffffb8;--photo-wash:#ffffff14;--photo-wash-strong:#ffffff26;--photo-scrim:#0009;--photo-scrim-strong:#000000e0;--color-page-text:var(--color-text);--color-page-bg:var(--color-bg);--font-display:"Bebas Neue", "Trainkeep Sans", "Impact", sans-serif;--font-body:"Trainkeep Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--stretch-num:87.5%;--stretch-body:100%;--stretch-label:87.5%}@media (width>=1100px){:root[data-rail=collapsed]{--sidebar-width:var(--rail-collapsed)}}html,body,#root{height:100%}.app-shell{flex-direction:column;min-height:100dvh;display:flex}.app-shell>:not(.app-sidebar):not(.verify-email-banner){flex:1 0 auto}body{font-family:var(--font-body);font-size:15px;font-stretch:var(--stretch-body);font-kerning:normal;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background .25s,color .25s}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}body:has(>#root>.impersonation-banner){--chrome-safe-top:0px}.verify-email-banner~*{--chrome-safe-top:0px}button{cursor:pointer;font-family:inherit;font-size:inherit;color:inherit;background:0 0;border:none}input,textarea{font-family:inherit;font-size:inherit;color:inherit}a{color:inherit;text-decoration:none}::selection{background:var(--color-accent-fill);color:var(--color-accent-on-fill)}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-scrollbar);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-dim)}.noise-bg:before{content:"";opacity:.025;pointer-events:none;z-index:9999;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px;position:fixed;inset:0}[data-theme=light] .noise-bg:before{opacity:.012}.t-label{font-family:var(--font-body);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-control);text-transform:uppercase;font-weight:700}.t-num{font-family:var(--font-body);font-stretch:var(--stretch-num);font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-weight:800}@keyframes arena-fade{0%{opacity:0}to{opacity:1}}@keyframes arena-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes arena-slab-cross{0%{transform-origin:0;transform:scaleX(0)}46%{transform-origin:0;transform:scaleX(1)}54%{transform-origin:100%;transform:scaleX(1)}to{transform-origin:100%;transform:scaleX(0)}}@keyframes arena-ink-under-slab{0%,49%{opacity:0}50%,to{opacity:1}}.page-shell-main>:not(.page-header){animation:arena-fade var(--dur-arrive) var(--ease-settle) backwards}.page-shell-main>:nth-child(2){animation-delay:90ms}.page-shell-main>:nth-child(3){animation-delay:.15s}.page-shell-main>:nth-child(4){animation-delay:.21s}.page-shell-main>:nth-child(n+5){animation-delay:.27s}.arena-rise{animation:arena-rise var(--dur-arrive) var(--ease-settle) backwards;animation-delay:calc(var(--rise-i,0) * 45ms + .12s)}.spot{isolation:isolate;position:relative}.spot:after{content:"";border-radius:inherit;background:radial-gradient(520px circle at var(--spot-x,-600px) var(--spot-y,-600px), color-mix(in srgb, var(--color-accent) 9%, transparent), transparent 62%);opacity:0;transition:opacity var(--dur-hover) ease-out;pointer-events:none;z-index:-1;position:absolute;inset:0}.spot:hover:after{opacity:1}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;transition-delay:0s!important;animation-duration:1ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}.panel-card{gap:var(--space-3);padding:var(--space-3) var(--space-4) var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);flex-direction:column;display:flex;position:relative}.group-card{background:var(--color-surface);border-radius:var(--radius-group);overflow:hidden}.group-card--rows>*+*{border-top:1px solid var(--color-border-subtle)}.group-card--raised{box-shadow:var(--shadow-card)}.page-tabs{gap:var(--space-7);border-bottom:1px solid var(--color-border);display:flex;position:relative}.page-tab{align-items:center;gap:var(--space-2);padding:var(--space-3) 0;font-family:var(--font-body);font-size:var(--text-sm);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-control);text-transform:uppercase;color:var(--color-text-dim);cursor:pointer;transition:color var(--dur-hover), border-color var(--dur-hover);background:0 0;border:0;border-bottom:3px solid #0000;margin-bottom:-1px;font-weight:700;text-decoration:none;display:inline-flex}.page-tab:hover{color:var(--color-text)}.page-tab.active{color:var(--color-text);border-bottom-color:var(--color-accent-fill)}.page-tabs.has-slab .page-tab.active{border-bottom-color:#0000}.page-tabs.has-slab:after{content:"";height:3px;width:var(--slab-w);transform:translateX(var(--slab-x));background:var(--color-accent-fill);pointer-events:none;position:absolute;bottom:-1px;left:0}.page-tabs.slab-ready:after{transition:transform var(--dur-slab) var(--ease-slab), width var(--dur-slab) var(--ease-slab)}.page-tab:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px}@media (width<=720px){.page-tab{min-height:44px}}.page-header{margin-bottom:var(--space-7)}.page-header-eyebrow{font-size:var(--text-sm);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-2);font-weight:700}.page-header-row{justify-content:space-between;align-items:flex-end;gap:var(--space-4);flex-wrap:wrap;display:flex}.page-header-title{font-family:var(--font-display);letter-spacing:.01em;text-transform:uppercase;color:var(--color-text);overflow-wrap:anywhere;min-width:0;animation:arena-ink-under-slab var(--dur-wipe) linear backwards;font-size:clamp(44px,6.4vw,92px);font-weight:400;line-height:.86;position:relative}.page-header-title:after{content:"";background:var(--color-accent-fill);animation:arena-slab-cross var(--dur-wipe) var(--ease-wipe) backwards;pointer-events:none;position:absolute;inset:.04em -.08em .02em;transform:scaleX(0)}.page-header-actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:inline-flex}.page-header-subtitle{margin-top:var(--space-3);max-width:72ch;font-size:var(--text-lg);color:var(--color-text-muted);animation:arena-fade var(--dur-arrive) var(--ease-settle) .38s backwards;line-height:1.5}.error-page{justify-content:center;gap:var(--space-5);min-height:100dvh;padding:var(--space-8) max(var(--space-4), 8vw);background:var(--color-bg);color:var(--color-text);flex-direction:column;display:flex}.error-page-code{font-family:var(--font-display);letter-spacing:.01em;animation:arena-ink-under-slab var(--dur-wipe) linear backwards;align-self:flex-start;margin:0;font-size:clamp(120px,24vw,280px);font-weight:400;line-height:.8;position:relative}.error-page-code:after{content:"";background:var(--color-accent-fill);animation:arena-slab-cross var(--dur-wipe) var(--ease-wipe) backwards;pointer-events:none;position:absolute;inset:.04em -.04em .02em;transform:scaleX(0)}.error-page-message{max-width:40ch;font-size:var(--text-xl);color:var(--color-text-muted);animation:arena-fade var(--dur-arrive) var(--ease-settle) .38s backwards;margin:0;line-height:1.45}.error-page .btn-primary{animation:arena-fade var(--dur-arrive) var(--ease-settle) .48s backwards;align-self:flex-start}.loading-band.app-loading{background:var(--color-bg);min-height:100dvh}.page-center{min-height:100dvh;padding:calc(var(--page-center-y,var(--space-6)) + var(--chrome-safe-top)) calc(var(--page-center-x,var(--space-6)) + var(--safe-right)) calc(var(--page-center-y,var(--space-6)) + var(--safe-bottom)) calc(var(--page-center-x,var(--space-6)) + var(--safe-left));background:var(--color-bg);justify-content:center;align-items:center;display:flex;position:relative}.page-center-toolbar{top:calc(var(--space-4) + var(--chrome-safe-top));right:calc(var(--space-4) + var(--safe-right));z-index:10;gap:var(--space-2);display:flex;position:absolute}.athlete-ctl{justify-content:center;align-items:center;gap:var(--space-1);min-width:44px;min-height:44px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-ctl);background:color-mix(in srgb, var(--color-text) 13%, transparent);color:var(--color-text);font:700 var(--text-sm)/1 var(--font-body);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-control);text-transform:uppercase;cursor:pointer;transition:color var(--dur-hover), background var(--dur-hover);border:0;text-decoration:none;display:inline-flex}.athlete-ctl:not(:disabled):hover{background:color-mix(in srgb, var(--color-text) 20%, transparent)}.athlete-ctl:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.athlete-ctl:disabled{opacity:.55;cursor:not-allowed}.athlete-ctl--chrome{color:var(--color-text);background:0 0}.athlete-ctl--chrome:not(:disabled):hover,.athlete-ctl--chrome:not(:disabled)[aria-expanded=true]{color:var(--color-accent);background:0 0}.athlete-ctl--icon{padding:0}.thread{flex-direction:column;min-width:0;display:flex}.thread-run+.thread-run{margin-top:var(--space-4)}.thread-run{gap:var(--space-2);flex-direction:column;min-width:0;max-width:82%;display:flex}.thread-turns{gap:var(--space-1);flex-direction:column;min-width:0;max-width:100%;margin:0;padding:0;list-style:none;display:flex}.thread-run--mine{padding-left:var(--space-8);align-self:flex-end;align-items:flex-end}.thread-run--mine .thread-turns{align-items:flex-end}.thread-run--theirs{align-self:flex-start;align-items:flex-start}.thread-run--theirs .thread-turns{align-items:flex-start}.thread-who{font-size:var(--text-xs);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;font-weight:700;overflow:hidden}.thread-who--coach{color:var(--color-accent)}.thread-when{font-size:var(--text-md);color:var(--color-text-dim);font-variant-numeric:tabular-nums}.thread-bubble{min-width:0;max-width:100%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-group);background:color-mix(in srgb, var(--color-text) 10%, transparent);font-size:var(--text-lg);color:var(--color-text);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55;position:relative}.thread-bubble--coach{background:var(--color-accent-glow)}.thread-bubble--gone,.thread-bubble--coach.thread-bubble--gone{background:color-mix(in srgb, var(--color-text) 10%, transparent);color:var(--color-text-dim);font-style:italic}.thread-bubble-del{top:50%;right:calc(100% + var(--space-1));position:absolute;transform:translateY(-50%)}.thread-day{align-items:center;gap:var(--space-3);margin:var(--space-5) 0 var(--space-4);font-size:var(--text-xs);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-text-dim);align-self:stretch;font-weight:700;display:flex}.thread-day:first-child{margin-top:0}.thread-note{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-ctl);background:color-mix(in srgb, var(--color-text) 6%, transparent);font-size:var(--text-md);color:var(--color-text-muted);align-self:stretch;line-height:1.5}.thread-note:first-child{margin-top:0}.thread-note-label{margin-bottom:var(--space-1);font-size:var(--text-sm);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-text-dim);font-weight:700;display:block}.thread-day:before,.thread-day:after{content:"";background:var(--color-border-subtle);flex:1;height:1px}.thread--athlete .thread-run{gap:var(--ath-space-2);max-width:84%;margin-bottom:var(--ath-block-gap)}.thread--athlete .thread-run+.thread-run{margin-top:0}.thread--athlete .thread-turns{gap:var(--ath-space-2)}.thread--athlete .thread-run--mine{padding-left:var(--ath-space-6)}.thread--athlete .thread-who,.thread--athlete .thread-when,.thread--athlete .thread-day{font-family:var(--ath-font-body);font-stretch:var(--ath-stretch);font-size:var(--ath-type-label-size);line-height:var(--ath-type-label-line);letter-spacing:var(--ath-type-label-tracking);font-weight:var(--ath-weight-bold);text-transform:uppercase;color:var(--ath-text-faint)}.thread--athlete .thread-who--coach{color:var(--ath-accent)}.thread--athlete .thread-when{font-variant-numeric:tabular-nums}.thread--athlete .thread-bubble{padding:var(--ath-space-3) var(--ath-space-4);border-radius:var(--ath-radius-card);background:var(--ath-surface-raised);font-family:var(--ath-font-body);font-stretch:var(--ath-stretch);font-size:var(--ath-type-md-size);line-height:var(--ath-type-md-line);font-weight:var(--ath-weight-regular);color:var(--ath-text)}.thread--athlete .thread-bubble--coach{background:var(--ath-accent-soft)}.thread--athlete .thread-bubble--gone,.thread--athlete .thread-bubble--coach.thread-bubble--gone{background:var(--ath-surface-raised);color:var(--ath-text-faint);font-style:normal}[data-theme=light] .thread--athlete .thread-bubble:not(.thread-bubble--coach),[data-theme=light] .thread--athlete .thread-bubble--gone{background:var(--ath-mark-wash)}.thread--athlete .thread-day{margin:0 0 var(--ath-block-gap);font-variant-numeric:tabular-nums;align-self:center}.thread--athlete .thread-day:before,.thread--athlete .thread-day:after{content:none}.modal-backdrop{background:var(--color-backdrop);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);overscroll-behavior:contain;z-index:100;padding:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left);place-items:safe center center;animation:.15s ease-out fadeIn;display:grid;position:fixed;inset:0;overflow-y:auto}.modal-backdrop:has(~.modal-backdrop)>.modal{filter:brightness(.65);transition:filter .15s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.pulse-breathe{animation:2.4s ease-in-out infinite pulse-breathe}@keyframes pulse-breathe{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.9)}}@media (prefers-reduced-motion:reduce){.pulse-breathe{animation:none}}.modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-7);width:420px;max-width:calc(var(--safe-vw) - 32px);margin:var(--space-5) 0;box-shadow:var(--shadow-lg);animation:modalIn .28s var(--ease-settle)}.modal.modal-wide{width:640px}@keyframes modalIn{0%{opacity:0;transform:scale(.97)translateY(12px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal.modal--sheet{border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--color-surface-2);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;width:100%;max-width:none;max-height:82dvh;padding:var(--space-3) var(--space-4) var(--space-6);padding-right:calc(var(--space-4) + var(--safe-right));padding-bottom:calc(var(--space-6) + var(--safe-bottom));padding-left:calc(var(--space-4) + var(--safe-left));border-bottom:none;margin:0;animation:.25s cubic-bezier(.32,.72,0,1) modalSheetUp;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}@keyframes modalSheetUp{0%{opacity:.4;transform:translateY(48px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.modal.modal--sheet{animation:none}}.sheet-grabber{background:var(--color-border);width:36px;height:4px;margin:0 auto var(--space-3);border-radius:2px}.section-head{align-items:center;gap:var(--space-3);display:flex}.section-head-text{min-width:0;font-family:var(--font-display);text-transform:uppercase;color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;flex:1;font-weight:400;overflow:hidden}.section-head-col{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.section-head-meta{font-size:var(--text-md);color:var(--color-text-muted);line-height:1.5}.section-head-trail{align-items:center;gap:var(--space-2);flex:none;display:inline-flex}.section-head--title{padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border-subtle);margin-bottom:var(--space-4)}.section-head--title .section-head-text{letter-spacing:.01em;font-size:26px;line-height:1}.section-head--eyebrow .section-head-text{font-family:var(--font-body);font-size:var(--text-sm);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-label);color:var(--color-accent);font-weight:700}.sheet-fields{gap:var(--space-3);flex-flow:wrap;display:flex}.sheet-cell{gap:var(--space-1);flex-direction:column;display:flex}.sheet-cell--full{flex:100%}.sheet-cell--half{flex:40%;min-width:0}.sheet-cell--third{flex:26%;min-width:0}.sheet-label{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-dim);font-weight:700}.sheet-foot{margin-top:var(--space-5);justify-content:flex-end;display:flex}.sheet-group-label{font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-dim);margin:var(--space-4) 0 var(--space-2);font-weight:700}.modal-title-bar{gap:var(--space-1);margin-bottom:var(--space-6);flex-direction:column;display:flex}.modal-eyebrow{font-size:var(--text-sm);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-accent);font-weight:700}.modal h2{font-family:var(--font-display);letter-spacing:.01em;color:var(--color-text);font-size:30px;font-weight:400;line-height:.95}.field-label{font-size:var(--text-sm);font-stretch:var(--stretch-label);color:var(--color-text-muted);margin-bottom:var(--space-2);letter-spacing:var(--tracking-control);text-transform:uppercase;font-weight:700;display:block}.field-label-gap{margin-top:var(--space-4)}.field-input{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-control-edge);border-radius:var(--radius-ctl);background:var(--color-surface-2);color:var(--color-text);transition:border-color var(--dur-hover), box-shadow var(--dur-hover), background-color var(--dur-hover);outline:none}.field-input::placeholder{color:var(--color-text-dim)}.field-input:hover:not(:focus):not(:disabled){border-color:var(--color-text-dim)}.field-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-glow)}.field-error{color:var(--color-danger);font-size:var(--text-md);margin-top:var(--space-2)}.field-ft-group{gap:10px;display:flex}.field-ft-cell{flex:1;position:relative}.field-ft-cell .field-input{padding-right:34px}.field-ft-unit{color:var(--color-text-dim);pointer-events:none;font-size:13px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.modal-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.modal.modal-sm{width:380px}.modal-eyebrow--danger{color:var(--color-danger)}.confirm-text{color:var(--color-text-muted);margin-bottom:4px;font-size:14px;line-height:1.5}.macro-g-suffix{opacity:.85;letter-spacing:0;margin-left:2px;font-size:.85em;font-weight:400}.iubenda-tp-btn:not(.iubenda-floatable-tb-btn):not(.iubenda-floatable-default-btn):not([data-tp-nostyle]),.iubenda-uspr-btn:not(.iubenda-floatable-tb-btn):not(.iubenda-floatable-default-btn):not([data-tp-nostyle]),.iub__us-widget,.iub__us-widget__wrapper{display:none!important}@font-face{font-family:Trainkeep Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/assets/barlow-latin-400-normal-qiz4-Cze.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Trainkeep Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/assets/barlow-latin-ext-400-normal-HxX4XjxC.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Trainkeep Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/assets/barlow-latin-600-normal-DILqtrty.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Trainkeep Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/assets/barlow-latin-ext-600-normal-B8NK_A3D.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Trainkeep Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/assets/barlow-latin-700-normal-A9pxMQ4z.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Trainkeep Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/assets/barlow-latin-ext-700-normal-BLuWmldJ.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Trainkeep Sans;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(/assets/barlow-latin-800-normal-s1sAMnoV.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Trainkeep Sans;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(/assets/barlow-latin-ext-800-normal-BiucknKG.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Trainkeep Sans;font-style:italic;font-weight:400;font-stretch:100%;font-display:swap;src:url(/assets/barlow-latin-400-italic-BjGuzOss.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Trainkeep Sans;font-style:italic;font-weight:400;font-stretch:100%;font-display:swap;src:url(/assets/barlow-latin-ext-400-italic-BALf98tD.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Trainkeep Sans;font-style:italic;font-weight:600;font-stretch:100%;font-display:swap;src:url(/assets/barlow-latin-600-italic-BkHteNoX.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Trainkeep Sans;font-style:italic;font-weight:600;font-stretch:100%;font-display:swap;src:url(/assets/barlow-latin-ext-600-italic-DgQxJCdv.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Trainkeep Sans;font-style:italic;font-weight:700;font-stretch:100%;font-display:swap;src:url(/assets/barlow-latin-700-italic-B8gcIuZB.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Trainkeep Sans;font-style:italic;font-weight:700;font-stretch:100%;font-display:swap;src:url(/assets/barlow-latin-ext-700-italic-l7O3FQDU.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Trainkeep Sans;font-style:italic;font-weight:800;font-stretch:100%;font-display:swap;src:url(/assets/barlow-latin-800-italic-e1LvFkNx.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Trainkeep Sans;font-style:italic;font-weight:800;font-stretch:100%;font-display:swap;src:url(/assets/barlow-latin-ext-800-italic-BoY24aQ0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Trainkeep Sans;font-style:normal;font-weight:400;font-stretch:87.5%;font-display:swap;src:url(/assets/barlow-semi-condensed-latin-400-normal-DlzeKIMS.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Trainkeep Sans;font-style:normal;font-weight:400;font-stretch:87.5%;font-display:swap;src:url(/assets/barlow-semi-condensed-latin-ext-400-normal-BDztQS4c.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Trainkeep Sans;font-style:normal;font-weight:600;font-stretch:87.5%;font-display:swap;src:url(/assets/barlow-semi-condensed-latin-600-normal-BkLiAYu4.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Trainkeep Sans;font-style:normal;font-weight:600;font-stretch:87.5%;font-display:swap;src:url(/assets/barlow-semi-condensed-latin-ext-600-normal-BkQ9hN72.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Trainkeep Sans;font-style:normal;font-weight:700;font-stretch:87.5%;font-display:swap;src:url(/assets/barlow-semi-condensed-latin-700-normal-BpqDG8I9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Trainkeep Sans;font-style:normal;font-weight:700;font-stretch:87.5%;font-display:swap;src:url(/assets/barlow-semi-condensed-latin-ext-700-normal-BhgEo64M.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Trainkeep Sans;font-style:normal;font-weight:800;font-stretch:87.5%;font-display:swap;src:url(/assets/barlow-semi-condensed-latin-800-normal-C0_dLkYa.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Trainkeep Sans;font-style:normal;font-weight:800;font-stretch:87.5%;font-display:swap;src:url(/assets/barlow-semi-condensed-latin-ext-800-normal-mDlgYxrz.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Trainkeep Sans;font-style:italic;font-weight:400;font-stretch:87.5%;font-display:swap;src:url(/assets/barlow-semi-condensed-latin-400-italic-BhTViTlO.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Trainkeep Sans;font-style:italic;font-weight:400;font-stretch:87.5%;font-display:swap;src:url(/assets/barlow-semi-condensed-latin-ext-400-italic-BiReVAVB.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Trainkeep Sans;font-style:italic;font-weight:600;font-stretch:87.5%;font-display:swap;src:url(/assets/barlow-semi-condensed-latin-600-italic-BX4NJ4u9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Trainkeep Sans;font-style:italic;font-weight:600;font-stretch:87.5%;font-display:swap;src:url(/assets/barlow-semi-condensed-latin-ext-600-italic-9kQz3wk3.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Trainkeep Sans;font-style:italic;font-weight:700;font-stretch:87.5%;font-display:swap;src:url(/assets/barlow-semi-condensed-latin-700-italic-CTVo8ywK.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Trainkeep Sans;font-style:italic;font-weight:700;font-stretch:87.5%;font-display:swap;src:url(/assets/barlow-semi-condensed-latin-ext-700-italic-BW1POz6P.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Trainkeep Sans;font-style:italic;font-weight:800;font-stretch:87.5%;font-display:swap;src:url(/assets/barlow-semi-condensed-latin-800-italic-CRJKqBUF.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Trainkeep Sans;font-style:italic;font-weight:800;font-stretch:87.5%;font-display:swap;src:url(/assets/barlow-semi-condensed-latin-ext-800-italic-B__ugv2W.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}.btn-primary,.btn-ghost,.btn-danger,.btn-danger-ghost,.btn-add{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-ctl);font-family:var(--font-body);font-size:var(--text-ctl);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-control);text-transform:uppercase;transition:background-color var(--dur-hover), border-color var(--dur-hover), color var(--dur-hover), box-shadow var(--dur-hover), opacity var(--dur-hover), transform var(--dur-tap);font-weight:700;line-height:1.2;text-decoration:none;display:inline-flex}.btn-primary:not(:disabled):active,.btn-ghost:not(:disabled):active,.btn-danger:not(:disabled):active,.btn-danger-ghost:not(:disabled):active,.btn-add:not(:disabled):active{transform:translateY(1px)}.btn-primary:focus-visible,.btn-ghost:focus-visible,.btn-danger:focus-visible,.btn-danger-ghost:focus-visible,.btn-add:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn-primary:disabled,.btn-ghost:disabled,.btn-danger:disabled,.btn-danger-ghost:disabled,.btn-add:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:var(--color-accent-fill);background-image:linear-gradient(105deg, transparent 38%, var(--glint) 50%, transparent 62%);color:var(--color-accent-on-fill);background-position:130% 0;background-repeat:no-repeat;background-size:260% 100%}.btn-primary:hover:not(:disabled){background-color:var(--color-accent-fill-hover);box-shadow:var(--shadow-accent);transition:background-position .72s var(--ease-settle), background-color var(--dur-hover), box-shadow var(--dur-hover), transform var(--dur-tap);background-position:-30% 0}.btn-primary:focus-visible{outline-color:var(--color-text)}.btn-ghost{color:var(--color-text);border:1px solid var(--color-control-edge);background-color:#0000}.btn-ghost:hover:not(:disabled){border-color:var(--color-text-muted);background-color:color-mix(in srgb, var(--color-text) 6%, transparent)}.btn-danger{background:var(--color-danger);color:var(--color-on-danger)}.btn-danger:hover:not(:disabled){opacity:.85}.btn-danger-ghost{color:var(--color-danger);border:1px solid var(--color-danger);background:0 0}.btn-danger-ghost:hover:not(:disabled){background:var(--color-danger-dim)}.btn-add{background:var(--color-accent-ghost);color:var(--color-accent)}.btn-add:hover:not(:disabled){background:var(--color-accent-glow)}.btn-icon{font-size:18px;font-weight:400;line-height:1}.btn-icon-only{padding:var(--space-3);justify-content:center}.btn-sm{padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}.btn-lg{padding:var(--space-4) var(--space-7);font-size:var(--text-md);font-stretch:var(--stretch-label)}.btn-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:.7s linear infinite btn-spin}@keyframes btn-spin{to{transform:rotate(360deg)}}.cb-custom{appearance:none;border:1.5px solid var(--color-text-muted);border-radius:var(--radius-sm);cursor:pointer;width:16px;height:16px;transition:border-color var(--dur-hover), background-color var(--dur-tap);background:0 0;flex-shrink:0;margin:0;position:relative}.cb-custom:hover:not(:disabled){border-color:var(--color-text)}.cb-custom:checked{background:var(--color-accent-fill);border-color:var(--color-accent)}.cb-custom:checked:after{content:"";border:solid var(--color-accent-on-fill);width:4.5px;height:8.5px;animation:cb-tick-land var(--dur-slab) var(--ease-slab) backwards;border-width:0 2px 2px 0;position:absolute;top:1.5px;left:4.5px;transform:rotate(45deg)}@keyframes cb-tick-land{0%{transform:rotate(45deg)scale(0)}}.cb-custom:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.cb-custom:disabled{cursor:not-allowed;opacity:.45}.toggle{align-items:center;gap:var(--space-3);cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-flex;position:relative}.toggle:has(>input:disabled){cursor:not-allowed;opacity:.45}@media (width<=720px){.toggle{min-height:44px}}.toggle input{opacity:0;width:100%;height:100%;cursor:inherit;margin:0;position:absolute;inset:0}.toggle-track{border-radius:var(--radius-ctl);background:color-mix(in srgb, var(--color-text) 12%, transparent);width:40px;height:22px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-text) 22%, transparent);transition:box-shadow var(--dur-hover);pointer-events:none;flex:none;position:relative;overflow:hidden}.toggle-track:before{content:"";background:var(--color-accent-fill);box-shadow:inset 0 0 0 1px var(--color-accent);transform-origin:0;transition:transform var(--dur-slab) var(--ease-settle);position:absolute;inset:0;transform:scaleX(0)}.toggle-thumb{z-index:1;border-radius:calc(var(--radius-ctl) - 2px);background:var(--color-text-muted);width:16px;height:16px;transition:transform var(--dur-slab) var(--ease-slab), background-color var(--dur-hover);pointer-events:none;position:absolute;top:3px;left:3px}.toggle:hover:not(:has(>input:disabled)) .toggle-track{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-text) 40%, transparent)}.toggle:hover:not(.on):not(:has(>input:disabled)) .toggle-thumb{background:var(--color-text)}.toggle.on .toggle-track:before{transform:none}.toggle.on .toggle-thumb{background:var(--color-accent-on-fill);transform:translate(18px)}.toggle-label{font-family:var(--font-body);font-size:var(--text-sm);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-control);text-transform:uppercase;color:var(--color-text-muted);transition:color var(--dur-hover);font-weight:700}.toggle.on .toggle-label{color:var(--color-text)}.toggle input:focus-visible+.toggle-track{outline:2px solid var(--color-accent);outline-offset:2px}.input-no-spin::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.input-no-spin::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input-no-spin{-moz-appearance:textfield}.select-custom{appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23888' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat}.field-info{color:var(--color-accent);font-size:var(--text-md);margin-top:var(--space-2);line-height:1.5}.alert-error,.alert-warning,.alert-success{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-ctl);background:color-mix(in srgb, var(--alert-tone) 10%, transparent);border:1px solid color-mix(in srgb, var(--alert-tone) 48%, transparent);color:var(--color-text);font-size:var(--text-md);font-weight:600;line-height:1.4;display:flex}.alert-error{--alert-tone:var(--color-danger)}.alert-warning{--alert-tone:var(--color-warning)}.alert-success{--alert-tone:var(--color-accent)}.alert-error>svg,.alert-warning>svg,.alert-success>svg{color:color-mix(in srgb, var(--alert-tone) 76%, var(--color-text));flex:none}.alert-block{align-items:flex-start}.alert-block>svg{margin-top:1px}.toast-fixed{bottom:calc(var(--space-6) + var(--safe-bottom));right:calc(var(--space-6) + var(--safe-right));z-index:1000;max-width:420px;padding:var(--space-4) var(--space-5);background-color:var(--color-surface-2);background-image:linear-gradient(color-mix(in srgb, var(--alert-tone) 9%, transparent), color-mix(in srgb, var(--alert-tone) 9%, transparent));box-shadow:var(--shadow-lg);animation:toast-fixed-arrive var(--dur-arrive) var(--ease-settle) backwards;margin:0;position:fixed}@keyframes toast-fixed-arrive{0%{opacity:0;transform:translateX(calc(100% + var(--space-6)))}}@keyframes toast-fixed-rise{0%{opacity:0;transform:translateY(calc(100% + var(--space-3)))}}@media (width<=560px){.toast-fixed{left:calc(var(--space-3) + var(--safe-left));right:calc(var(--space-3) + var(--safe-right));bottom:calc(var(--space-3) + var(--safe-bottom));max-width:none;animation-name:toast-fixed-rise}}body.has-bottom-tab-bar .toast-fixed{bottom:calc(var(--bottom-tab-bar-h) + var(--space-3) + var(--safe-bottom))}body.has-spotter-launcher .toast-fixed{bottom:calc(var(--space-4) + 48px + var(--space-3) + var(--safe-bottom))}body.has-spotter-launcher.has-bottom-tab-bar .toast-fixed{bottom:calc(var(--bottom-tab-bar-h) + var(--space-3) + 48px + var(--space-3) + var(--safe-bottom))}:root,[data-theme=dark]{--ath-bg:#0c0c0e;--ath-surface:#1c1c20;--ath-surface-raised:#28282d;--ath-dock:#36363d;--ath-dock-line:#e8e8ed21;--ath-frame:#08080a;--ath-frame-veil:#08080ae6;--ath-line:#3e3e46;--ath-control-edge:#e8e8ed6b;--ath-text:#e8e8ed;--ath-text-muted:#aaaab5;--ath-text-faint:#8e8e99;--ath-accent:#e8ff00;--ath-accent-fill:#e8ff00;--ath-accent-lit:#e8ff00;--ath-accent-ink:#0c0c0e;--ath-accent-soft:#e8ff001f;--ath-accent-selection:#e8ff0052;--ath-success:#4ade80;--ath-success-soft:#4ade8024;--ath-warning:#e2a300;--ath-warning-ink:#0c0c0e;--ath-warning-soft:#e2a3001a;--ath-danger:#f87784;--ath-danger-ink:#0c0c0e;--ath-danger-soft:#ff475726;--ath-scrim:#000000b3;--ath-macro-protein:#e8ff00;--ath-macro-carbs:#e8ff006b;--ath-macro-fat:#e8e8ed42;--ath-sink:#e8e8ed0a;--ath-added-edge:#e8e8ed57;--ath-mark-wash:#e8e8ed1f;--ath-elevation:none}[data-theme=light]{--ath-bg:#f2f1ed;--ath-surface:#fff;--ath-surface-raised:#f7f6f2;--ath-dock:#fff;--ath-dock-line:#1a1a1f29;--ath-frame:#fafaf8;--ath-frame-veil:#fafaf8e6;--ath-line:#c7c6c1;--ath-control-edge:#1a1a1f7a;--ath-text:#1a1a1f;--ath-text-muted:#5f5f67;--ath-text-faint:#6b6b74;--ath-accent:#4a6200;--ath-accent-fill:#d4e600;--ath-accent-lit:#abbe00;--ath-accent-ink:#1a2000;--ath-accent-soft:#4a62001a;--ath-accent-selection:#4a62003d;--ath-success:#17733b;--ath-success-soft:#16a34a1a;--ath-warning:#845d0f;--ath-warning-ink:#fff;--ath-warning-soft:#ca8a0414;--ath-danger:#bf2425;--ath-danger-ink:#fff;--ath-danger-soft:#dc262614;--ath-scrim:#0000004d;--ath-macro-protein:#4a6200;--ath-macro-carbs:#4a62006b;--ath-macro-fat:#1a1a1f42;--ath-sink:#1a1a1f0a;--ath-added-edge:#1a1a1f57;--ath-mark-wash:#1a1a1f17;--ath-elevation:0 6px 16px #2a2a221a}:root{--ath-paper:#f7f6f2;--ath-paper-ink:#14150f;--ath-paper-line:#14150f2e;--ath-paper-mark:#e8ff008c;--ath-on-photo-scrim:#0009;--ath-on-photo-ink:#fff;--ath-on-photo-mark:#e8ff00;--ath-on-photo-mark-ink:#0c0c0e;--ath-radius-card:18px;--ath-radius-sheet:24px;--ath-radius-control:14px;--ath-radius-edge:8px;--ath-radius-tile:8px;--ath-radius-pill:999px;--ath-radius-mark:2px;--ath-radius-square:0;--ath-hairline:1px;--ath-space-1:4px;--ath-space-2:8px;--ath-space-3:12px;--ath-space-4:16px;--ath-space-5:20px;--ath-space-6:24px;--ath-space-7:32px;--ath-space-8:40px;--ath-space-9:56px;--ath-gutter:16px;--ath-inset:16px;--ath-block-gap:20px;--ath-control-row:44px;--ath-control-field:44px;--ath-control-segment:34px;--ath-control-icon:36px;--ath-touch:44px;--ath-tap-compact:44px;--ath-tap-min:48px;--ath-tap-primary:56px;--ath-glyph-sm:16px;--ath-glyph:18px;--ath-glyph-lg:20px;--ath-pill-height:24px;--ath-segment-min:56px;--ath-tick-box:28px;--ath-dot:6px;--ath-empty-glyph:64px;--ath-empty-icon:26px;--ath-empty-body-max:280px;--ath-grab-width:38px;--ath-grab-height:4px;--ath-field-multiline:96px;--ath-field-multiline-input:64px;--ath-dialog-width:480px;--ath-bar-clearance:0px;--ath-font-display:var(--font-display);--ath-font-body:var(--font-body);--ath-stretch:100%;--ath-weight-regular:400;--ath-weight-semibold:600;--ath-weight-bold:700;--ath-type-hero-size:64px;--ath-type-hero-line:64px;--ath-type-hero-tracking:-1px;--ath-type-display-size:38px;--ath-type-display-line:40px;--ath-type-display-tracking:0;--ath-type-title-size:26px;--ath-type-title-line:28px;--ath-type-title-tracking:.5px;--ath-type-subtitle-size:19px;--ath-type-subtitle-line:22px;--ath-type-subtitle-tracking:.8px;--ath-type-lg-size:17px;--ath-type-lg-line:24px;--ath-type-md-size:15px;--ath-type-md-line:21px;--ath-type-sm-size:13px;--ath-type-sm-line:18px;--ath-type-button-size:15px;--ath-type-button-line:18px;--ath-type-button-tracking:.5px;--ath-type-label-size:11px;--ath-type-label-line:14px;--ath-type-label-tracking:1.2px;--ath-type-label-tracking-wide:2.2px;--ath-type-tab-size:10px;--ath-type-tab-line:12px;--ath-type-tab-tracking:.9px;--ath-ease-snappy:linear(0, .116 6.3%, .345 12.5%, .574 18.8%, .764 25%, .896 31.3%, .975 37.5%, 1.016 43.8%, 1.031 50%, 1.031 56.3%, 1.025 62.5%, 1.018 68.8%, 1.011 75%, 1.005 81.3%, 1.002 87.5%, 1 93.8%, 1);--ath-dur-snappy:.4s;--ath-ease-settle:linear(0, .096 6.3%, .275 12.5%, .46 18.8%, .614 25%, .735 31.3%, .821 37.5%, .883 43.8%, .924 50%, .952 56.3%, .97 62.5%, .981 68.8%, .989 75%, .993 81.3%, .996 87.5%, .998 93.8%, 1);--ath-dur-settle:.6s;--ath-ease-dock:linear(0, .116 6.3%, .337 12.5%, .564 18.8%, .745 25%, .871 31.3%, .95 37.5%, .993 43.8%, 1.012 50%, 1.018 56.3%, 1.017 62.5%, 1.013 68.8%, 1.009 75%, 1.005 81.3%, 1.003 87.5%, 1.001 93.8%, 1);--ath-dur-dock:.52s;--ath-dock-rise:24px;--ath-dur-quick:.14s;--ath-dur-calm:.26s;--ath-dur-breath:.8s;--ath-dur-pulse:.78s;--ath-dur-sweep:1.1s;--ath-dur-spin:.8s;--ath-press-scale:.97;--ath-press-opacity:.6;--ath-off-opacity:.45;--ath-unsettled-opacity:.4}@media (resolution>=2x){:root{--ath-hairline:.5px}}@media (prefers-reduced-motion:reduce){:root{--ath-dur-snappy:0s;--ath-dur-settle:0s;--ath-dur-dock:0s;--ath-dur-quick:0s;--ath-dur-calm:0s;--ath-dock-rise:0px;--ath-press-scale:1}}.ath-type-hero,.ath-type-display,.ath-type-title,.ath-type-subtitle{font-family:var(--ath-font-display);text-transform:uppercase;font-weight:400;font-stretch:100%}.ath-type-hero{font-size:var(--ath-type-hero-size);line-height:var(--ath-type-hero-line);letter-spacing:var(--ath-type-hero-tracking)}.ath-type-display{font-size:var(--ath-type-display-size);line-height:var(--ath-type-display-line);letter-spacing:var(--ath-type-display-tracking)}.ath-type-title{font-size:var(--ath-type-title-size);line-height:var(--ath-type-title-line);letter-spacing:var(--ath-type-title-tracking)}.ath-type-subtitle{font-size:var(--ath-type-subtitle-size);line-height:var(--ath-type-subtitle-line);letter-spacing:var(--ath-type-subtitle-tracking)}.ath-type-lg,.ath-type-md,.ath-type-sm,.ath-type-button,.ath-type-label{font-family:var(--ath-font-body);font-stretch:var(--ath-stretch);font-weight:var(--ath-weight-regular);letter-spacing:0}.ath-type-lg{font-size:var(--ath-type-lg-size);line-height:var(--ath-type-lg-line)}.ath-type-md{font-size:var(--ath-type-md-size);line-height:var(--ath-type-md-line)}.ath-type-sm{font-size:var(--ath-type-sm-size);line-height:var(--ath-type-sm-line)}.ath-type-button{font-size:var(--ath-type-button-size);line-height:var(--ath-type-button-line);letter-spacing:var(--ath-type-button-tracking);font-weight:var(--ath-weight-bold);text-transform:uppercase}.ath-type-label{font-size:var(--ath-type-label-size);line-height:var(--ath-type-label-line);letter-spacing:var(--ath-type-label-tracking);font-weight:var(--ath-weight-bold);text-transform:uppercase}.ath-type-label--wide{letter-spacing:var(--ath-type-label-tracking-wide)}.ath-weight-semibold{font-weight:var(--ath-weight-semibold)}.ath-weight-bold{font-weight:var(--ath-weight-bold)}.ath-tabular{font-variant-numeric:tabular-nums}.ath-tone-muted{color:var(--ath-text-muted)}.ath-tone-faint{color:var(--ath-text-faint)}.ath-tone-accent{color:var(--ath-accent)}.ath-tone-on-accent{color:var(--ath-accent-ink)}.ath-tone-success{color:var(--ath-success)}.ath-tone-warning{color:var(--ath-warning)}.ath-tone-danger{color:var(--ath-danger)}:root[data-surface=athlete] .toast-fixed{top:calc(var(--safe-top) + var(--ath-space-2));bottom:auto;left:calc(var(--ath-space-5) + var(--safe-left));right:calc(var(--ath-space-5) + var(--safe-right));border-radius:var(--ath-radius-control);max-width:none;padding:var(--ath-space-4) var(--ath-space-5);background-color:var(--ath-surface-raised);box-shadow:var(--ath-elevation);font-family:var(--ath-font-body);font-stretch:var(--ath-stretch);font-size:var(--ath-type-md-size);line-height:var(--ath-type-md-line);font-weight:var(--ath-weight-semibold);animation:ath-toast-drop var(--ath-dur-settle) var(--ath-ease-settle) backwards;border:none;margin-inline:auto}:root[data-surface=athlete] .toast-fixed.alert-error{background-image:linear-gradient(var(--ath-danger-soft), var(--ath-danger-soft));color:var(--ath-danger)}:root[data-surface=athlete] .toast-fixed.alert-success{background-image:linear-gradient(var(--ath-success-soft), var(--ath-success-soft));color:var(--ath-success)}:root[data-surface=athlete] .toast-fixed>svg{color:currentColor}@media (width>=720px){:root[data-surface=athlete] .toast-fixed{width:min(var(--ath-dialog-width), calc(100vw - 2 * var(--ath-space-5)))}}@keyframes ath-toast-drop{0%{opacity:0;transform:translateY(calc(-100% - var(--ath-space-2)))}}.dismiss-btn{border-radius:var(--radius-ctl);cursor:pointer;transition:color var(--dur-tap), background-color var(--dur-tap), opacity var(--dur-tap);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.dismiss-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.dismiss-btn--sm{padding:3px}.dismiss-btn--md{padding:var(--space-1)}.dismiss-btn--lg{padding:6px}.dismiss-btn--subtle{color:var(--color-text-muted)}.dismiss-btn--subtle:hover{color:var(--color-text);background:color-mix(in srgb, var(--color-text) 10%, transparent)}.dismiss-btn--on-accent{color:var(--color-accent-on-fill);opacity:.7}.dismiss-btn--on-accent:hover{opacity:1;background:color-mix(in srgb, var(--color-accent-on-fill) 12%, transparent)}@media (width<=720px){.dismiss-btn{min-width:44px;min-height:44px}}.update-banner{bottom:calc(var(--space-4) + var(--safe-bottom));right:calc(var(--space-4) + var(--safe-right));background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-ctl);width:360px;max-width:calc(100vw - 32px);box-shadow:var(--shadow-lg);padding:var(--space-4) var(--space-5);gap:var(--space-3);z-index:1000;animation:update-banner-arrive var(--dur-arrive) var(--ease-settle) backwards;flex-direction:column;display:flex;position:fixed;overflow:hidden}@keyframes update-banner-arrive{0%{opacity:0;transform:translateX(calc(100% + var(--space-4)))}}@keyframes update-banner-rise{0%{opacity:0;transform:translateY(calc(100% + var(--space-3)))}}.update-banner-dismiss-pos{top:var(--space-2);right:var(--space-2);width:28px;height:28px;position:absolute}.update-banner-body{gap:var(--space-1);padding-right:var(--space-6);flex-direction:column;display:flex}.update-banner-label{font-family:var(--font-body);font-size:var(--text-sm);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-accent);font-weight:700}.update-banner-message{font-family:var(--font-body);font-size:var(--text-md);color:var(--color-text);font-weight:600;line-height:1.45}.update-banner-actions{justify-content:flex-end;display:flex}body.has-bottom-tab-bar .update-banner{bottom:calc(var(--bottom-tab-bar-h) + var(--space-3) + var(--safe-bottom))}body.has-spotter-launcher .update-banner{bottom:calc(var(--space-4) + 48px + var(--space-3) + var(--safe-bottom))}body.has-spotter-launcher.has-bottom-tab-bar .update-banner{bottom:calc(var(--bottom-tab-bar-h) + var(--space-3) + 48px + var(--space-3) + var(--safe-bottom))}@media (width<=600px){.update-banner{left:calc(var(--space-3) + var(--safe-left));right:calc(var(--space-3) + var(--safe-right));bottom:calc(var(--space-3) + var(--safe-bottom));width:auto;max-width:none;animation-name:update-banner-rise}.update-banner-body{padding-right:var(--space-8)}}.ath-btn{--ath-btn-fill:transparent;--ath-btn-ink:var(--ath-accent);height:var(--ath-tap-min);min-height:var(--ath-tap-min);max-width:100%;padding:0 var(--ath-space-4);border-radius:var(--ath-radius-control);background:var(--ath-btn-fill);color:var(--ath-btn-ink);font-family:var(--ath-font-body);font-stretch:var(--ath-stretch);font-size:var(--ath-type-button-size);line-height:var(--ath-type-button-line);letter-spacing:var(--ath-type-button-tracking);font-weight:var(--ath-weight-bold);text-transform:uppercase;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform var(--ath-dur-snappy) var(--ath-ease-snappy), background-color var(--ath-dur-quick) ease-out, color var(--ath-dur-quick) ease-out;border:0;justify-content:center;align-items:center;margin:0;display:inline-flex;position:relative}.ath-btn:active:not(:disabled){transform:scale(var(--ath-press-scale))}.ath-btn:focus-visible{outline:2px solid var(--ath-accent);outline-offset:2px}.ath-btn--primary{--ath-btn-fill:var(--ath-accent-fill);--ath-btn-ink:var(--ath-accent-ink)}.ath-btn--secondary{--ath-btn-fill:var(--ath-accent-soft);height:var(--ath-tap-compact);min-height:var(--ath-tap-compact)}.ath-btn--quiet{--ath-btn-ink:var(--ath-text-muted)}.ath-btn--danger{--ath-btn-fill:var(--ath-danger-soft);--ath-btn-ink:var(--ath-danger)}.ath-btn--warning{--ath-btn-fill:var(--ath-warning-soft);--ath-btn-ink:var(--ath-warning)}.ath-btn--off{--ath-btn-fill:var(--ath-mark-wash);--ath-btn-ink:var(--ath-text-muted);cursor:not-allowed}.ath-btn--off.ath-btn--ghost,.ath-btn--off.ath-btn--quiet{--ath-btn-fill:transparent}.ath-btn--off.ath-btn--quiet{--ath-btn-ink:var(--ath-text-faint)}.ath-btn--pending{opacity:var(--ath-off-opacity);cursor:progress}.ath-btn--stretch{width:100%;display:flex}.ath-btn--word-per-line{white-space:normal;height:auto;padding-block:var(--ath-space-1);text-align:center}.ath-btn-inner{align-items:center;gap:var(--ath-space-2);min-width:0;display:inline-flex}.ath-btn-inner>svg{width:var(--ath-glyph);height:var(--ath-glyph);flex:none}.ath-btn-label{text-overflow:ellipsis;min-width:0;overflow:hidden}.ath-btn--word-per-line .ath-btn-label{overflow:visible}.ath-btn-word{display:block}.ath-btn--pending .ath-btn-inner,.ath-btn--pending .ath-btn-tile>:not(.ath-spinner){visibility:hidden}.ath-btn>.ath-spinner{margin:auto;position:absolute;inset:0}.ath-btn--icon{width:var(--ath-touch);height:var(--ath-touch);min-height:var(--ath-touch);background:0 0;padding:0}.ath-btn-tile{width:var(--ath-control-icon);height:var(--ath-control-icon);border-radius:var(--ath-radius-control);background:var(--ath-btn-fill);justify-content:center;align-items:center;display:flex;position:relative}.ath-btn--beside-field .ath-btn-tile{width:var(--ath-control-field);height:var(--ath-control-field)}.ath-btn-tile>svg{width:var(--ath-glyph-lg);height:var(--ath-glyph-lg)}.ath-btn-tile>.ath-spinner{margin:auto;position:absolute;inset:0}.ath-spinner{width:var(--ath-glyph);height:var(--ath-glyph);border-radius:var(--ath-radius-pill);animation:ath-spin var(--ath-dur-spin) linear infinite;border:2px solid;border-right-color:#0000;display:block}@keyframes ath-spin{to{transform:rotate(360deg)}}.ath-icon-btn{width:var(--ath-touch);height:var(--ath-touch);color:var(--ath-text);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex:none;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex}.ath-icon-btn--start{justify-content:flex-start}.ath-icon-btn-tile{width:var(--ath-control-icon);height:var(--ath-control-icon);border-radius:var(--ath-radius-control);background:var(--ath-surface-raised);transition:background-color var(--ath-dur-quick) ease-out;justify-content:center;align-items:center;display:flex;position:relative}[data-theme=light] .ath-icon-btn-tile{background:var(--ath-mark-wash)}.ath-icon-btn--bordered .ath-icon-btn-tile{border:1px solid var(--ath-line)}.ath-icon-btn--ghost .ath-icon-btn-tile{background:0 0}.ath-icon-btn--accent .ath-icon-btn-tile{background:var(--ath-accent-soft);color:var(--ath-accent)}.ath-icon-btn-tile>svg{width:var(--ath-glyph-lg);height:var(--ath-glyph-lg)}.ath-icon-btn:active:not(:disabled) .ath-icon-btn-tile{background:var(--ath-surface)}.ath-icon-btn--ghost:active:not(:disabled) .ath-icon-btn-tile{background:var(--ath-mark-wash)}.ath-icon-btn:focus-visible{outline:none}.ath-icon-btn:focus-visible .ath-icon-btn-tile{outline:2px solid var(--ath-accent);outline-offset:2px}.ath-icon-btn:disabled{cursor:not-allowed;color:var(--ath-text-faint)}.ath-icon-btn--pending{opacity:var(--ath-off-opacity);cursor:progress}.ath-icon-btn--pending .ath-icon-btn-tile>:not(.ath-spinner){visibility:hidden}.ath-icon-btn-tile>.ath-spinner{margin:auto;position:absolute;inset:0}.ath-header-chip{height:var(--ath-touch);color:var(--ath-text);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex:none;align-items:center;margin:0;padding:0;display:inline-flex}.ath-header-chip-face{align-items:center;gap:var(--ath-space-2);height:var(--ath-control-icon);padding:0 var(--ath-space-3);border:1px solid var(--ath-line);border-radius:var(--ath-radius-control);background:var(--ath-surface-raised);font-family:var(--ath-font-body);font-stretch:var(--ath-stretch);font-size:var(--ath-type-button-size);line-height:var(--ath-type-button-line);letter-spacing:var(--ath-type-button-tracking);font-weight:var(--ath-weight-bold);text-transform:uppercase;white-space:nowrap;display:inline-flex}.ath-header-chip-face>svg{width:var(--ath-glyph);height:var(--ath-glyph);flex:none}.ath-header-chip:active:not(:disabled) .ath-header-chip-face{background:var(--ath-surface)}.ath-header-chip:focus-visible{outline:none}.ath-header-chip:focus-visible .ath-header-chip-face{outline:2px solid var(--ath-accent);outline-offset:2px}.ath-header-chip:disabled{cursor:progress}.ath-card{background:var(--ath-surface);border:1px solid var(--ath-line);border-radius:var(--ath-radius-card);box-shadow:var(--ath-elevation);overflow:hidden}.ath-card--padded{padding:calc(var(--ath-inset) - 1px)}.ath-card--rows>*+*{position:relative}.ath-card--rows>*+:before{content:"";top:0;left:var(--ath-inset);height:var(--ath-hairline);background:var(--ath-line);pointer-events:none;position:absolute;right:0}.ath-card-hairline{height:var(--ath-hairline);margin-left:var(--ath-inset);background:var(--ath-line)}.ath-row{align-items:center;gap:var(--ath-space-4);width:100%;min-height:var(--ath-control-row);padding:var(--ath-space-3) var(--ath-inset);color:inherit;font:inherit;text-align:left;background:0 0;border:0;margin:0;text-decoration:none;display:flex}.ath-row--pressable{cursor:pointer;-webkit-tap-highlight-color:transparent;transition:opacity var(--ath-dur-quick) ease-out, background-color var(--ath-dur-quick) ease-out}.ath-row--pressable:active{opacity:var(--ath-press-opacity)}@media (hover:hover){.ath-row--pressable:hover{background:var(--ath-sink)}}.ath-row--pressable:focus-visible{outline:2px solid var(--ath-accent);outline-offset:-2px}.ath-row--pressable[aria-busy=true]{opacity:var(--ath-off-opacity);cursor:progress}.ath-row>.status-pill.ath-pill{align-self:center}.ath-screen-header{align-items:flex-start;gap:var(--ath-space-4);margin-bottom:var(--ath-block-gap);min-width:0;display:flex}.ath-screen-header--flush,.ath-screen-header-row .ath-screen-header{margin-bottom:0}.ath-screen-header-row{align-items:center;gap:var(--ath-space-4);margin-bottom:var(--ath-block-gap);display:flex}.ath-screen-header-row--above{align-items:stretch;gap:var(--ath-space-2);flex-direction:column}.ath-screen-header-row--above>:first-child{align-self:flex-start}.ath-screen-header-row--flush{margin-bottom:0}.ath-screen-header-row>.ath-screen-header{flex:1;align-items:center}.ath-screen-header-text{flex:1;min-width:0}.ath-screen-header-eyebrow{margin:0 0 var(--ath-space-1);color:var(--ath-accent)}.ath-screen-header-title{color:var(--ath-text);overflow-wrap:break-word;margin:0}.ath-screen-header-rename{align-items:center;gap:var(--ath-space-2);max-width:100%;color:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;margin:0;padding:0;display:inline-flex}.ath-screen-header-rename:active{opacity:var(--ath-press-opacity)}.ath-screen-header-rename:focus-visible{outline:2px solid var(--ath-accent);outline-offset:2px;border-radius:var(--ath-radius-mark)}.ath-screen-header-rename>svg{width:var(--ath-glyph-sm);height:var(--ath-glyph-sm);color:var(--ath-text-faint);flex:none}.ath-screen-header-subtitle{margin:var(--ath-space-1) 0 0;color:var(--ath-text-muted)}.ath-screen-header-action{align-items:center;gap:var(--ath-space-2);flex:none;display:flex}.ath-section-label{justify-content:space-between;align-items:center;gap:var(--ath-space-3);padding:0 var(--ath-space-1) var(--ath-space-2);display:flex}.ath-section-label-text{min-width:0;color:var(--ath-accent);flex-shrink:1;margin:0}.ath-section-label--muted .ath-section-label-text{color:var(--ath-text-muted)}.ath-section-label-meta{color:var(--ath-text-faint);font-variant-numeric:tabular-nums;flex:none}.status-pill.ath-pill{align-self:flex-start;align-items:center;gap:var(--ath-space-1);height:var(--ath-pill-height);padding:0 var(--ath-space-3);border-radius:var(--ath-radius-pill);background:var(--ath-accent-soft);color:var(--ath-accent);font-family:var(--ath-font-body);font-stretch:var(--ath-stretch);font-size:var(--ath-type-label-size);line-height:var(--ath-type-label-line);letter-spacing:var(--ath-type-label-tracking);font-weight:var(--ath-weight-bold);text-transform:uppercase;white-space:nowrap;display:inline-flex}.status-pill.ath-pill--success{background:var(--ath-success-soft);color:var(--ath-success)}.status-pill.ath-pill--warning{background:var(--ath-warning-soft);color:var(--ath-warning)}.status-pill.ath-pill--danger{background:var(--ath-danger-soft);color:var(--ath-danger)}.status-pill.ath-pill--neutral{background:var(--ath-mark-wash);color:var(--ath-text)}.ath-pill-dot{width:var(--ath-dot);height:var(--ath-dot);border-radius:var(--ath-radius-pill);background:currentColor}.ath-seg{min-width:0;display:flex;position:relative}.ath-seg:before{content:"";inset:calc((var(--ath-touch) - var(--ath-control-segment)) / 2) 0;border-radius:var(--ath-radius-control);background:var(--ath-surface);position:absolute}.ath-seg--raised:before{background:var(--ath-surface-raised)}.ath-seg-btn{padding:calc((var(--ath-touch) - var(--ath-control-segment)) / 2) 0;color:var(--ath-text-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex:1 1 0;margin:0;display:flex;position:relative}.ath-seg--inline{display:inline-flex}.ath-seg--inline .ath-seg-btn{min-width:var(--ath-segment-min);flex:none}.ath-seg-scroll{scrollbar-width:none;overflow-x:auto}.ath-seg-scroll::-webkit-scrollbar{display:none}.ath-seg--scroll .ath-seg-btn{min-width:var(--ath-segment-min);flex:1 0 auto}.ath-seg-face{min-height:var(--ath-control-segment);padding:0 var(--ath-space-3);text-align:center;transition:background-color var(--ath-dur-quick) ease-out, color var(--ath-dur-quick) ease-out;flex:1;justify-content:center;align-items:center;display:flex}.ath-seg-btn.is-on .ath-seg-face{background:var(--ath-accent-fill);color:var(--ath-accent-ink)}.ath-seg:not(.ath-seg--grid) .ath-seg-btn.is-on:first-child .ath-seg-face{border-top-left-radius:var(--ath-radius-control);border-bottom-left-radius:var(--ath-radius-control)}.ath-seg:not(.ath-seg--grid) .ath-seg-btn.is-on:last-child .ath-seg-face{border-top-right-radius:var(--ath-radius-control);border-bottom-right-radius:var(--ath-radius-control)}.ath-seg--grid{grid-template-columns:repeat(var(--ath-seg-columns), minmax(0, 1fr));border-radius:var(--ath-radius-control);background:var(--ath-surface);display:grid;overflow:hidden}.ath-seg--grid.ath-seg--raised{background:var(--ath-surface-raised)}.ath-seg--grid:before{content:none}.ath-seg--grid .ath-seg-btn{padding:0}.ath-seg--grid .ath-seg-face{min-height:var(--ath-touch)}.ath-seg-btn:focus-visible{outline:none}.ath-seg-btn:focus-visible .ath-seg-face{outline:2px solid var(--ath-accent);outline-offset:-2px;border-radius:var(--ath-radius-control)}.ath-seg-btn:disabled{cursor:not-allowed;opacity:var(--ath-off-opacity)}.ath-empty{padding:var(--ath-space-8) var(--ath-space-5);text-align:center;flex-direction:column;align-items:center;display:flex}.ath-empty-glyph{width:var(--ath-empty-glyph);height:var(--ath-empty-glyph);margin-bottom:var(--ath-space-5);border-radius:var(--ath-radius-pill);background:var(--ath-accent-soft);color:var(--ath-accent);justify-content:center;align-items:center;display:flex}.ath-empty-glyph>svg{width:var(--ath-empty-icon);height:var(--ath-empty-icon)}.ath-empty-title{color:var(--ath-text);margin:0}.ath-empty-body{max-width:var(--ath-empty-body-max);margin:var(--ath-space-2) 0 0;color:var(--ath-text-muted)}.ath-empty-action{margin-top:var(--ath-space-6);align-self:stretch}.ath-skeleton{width:var(--ath-skeleton-w,100%);height:var(--ath-skeleton-h,16px);border-radius:var(--ath-radius-mark);background:var(--ath-surface-raised);animation:ath-pulse var(--ath-dur-pulse) ease-in-out infinite alternate;display:block}@keyframes ath-pulse{0%{opacity:.6}to{opacity:1}}.ath-skeleton-card{margin-bottom:var(--ath-space-4);padding:var(--ath-inset);border-radius:var(--ath-radius-card);background:var(--ath-surface)}.ath-skeleton-card>.ath-skeleton:nth-child(2){margin-top:var(--ath-space-3)}.ath-skeleton-card>.ath-skeleton:nth-child(3){margin-top:var(--ath-space-2)}@media (prefers-reduced-motion:reduce){.ath-skeleton{opacity:.7;animation:none}}.ath-sheet-layer{z-index:150;position:fixed;inset:0}.ath-sheet-scrim{background:var(--ath-scrim);animation:ath-fade var(--ath-dur-calm) ease-out;position:absolute;inset:0}.ath-sheet{max-height:calc(100dvh - var(--safe-top) - var(--ath-space-4));padding:var(--ath-space-4) calc(var(--ath-gutter) + var(--safe-right)) calc(var(--ath-space-6) + var(--safe-bottom)) calc(var(--ath-gutter) + var(--safe-left));border-radius:var(--ath-radius-sheet) var(--ath-radius-sheet) 0 0;background:var(--ath-surface-raised);box-shadow:var(--ath-elevation);color:var(--ath-text);overscroll-behavior:contain;animation:ath-sheet-rise var(--ath-dur-settle) var(--ath-ease-settle);flex-direction:column;display:flex;position:absolute;bottom:0;left:0;right:0;overflow-y:auto}.ath-sheet:focus{outline:none}.ath-sheet-grab{width:var(--ath-grab-width);height:var(--ath-grab-height);margin:0 auto var(--ath-space-5);border-radius:var(--ath-radius-pill);background:var(--ath-line);flex:none}.ath-sheet-head{align-items:flex-start;gap:var(--ath-space-3);margin-bottom:var(--ath-space-4);display:flex}.ath-sheet-head-text{flex:1;min-width:0}.ath-sheet-title{margin:0}.ath-sheet-subtitle{margin:var(--ath-space-1) 0 0;color:var(--ath-text-muted)}.ath-confirm-title{margin:0}.ath-confirm-body{margin:var(--ath-space-2) 0 var(--ath-space-5);color:var(--ath-text-muted)}.ath-confirm-body--tight{margin-bottom:0}.ath-confirm-detail{min-height:0;margin:var(--ath-space-4) 0 var(--ath-space-5);flex:0 auto;overflow-y:auto}.ath-confirm-actions{gap:var(--ath-space-2);flex-direction:column;flex:none;display:flex}@keyframes ath-fade{0%{opacity:0}}@keyframes ath-sheet-rise{0%{transform:translateY(100%)}}@keyframes ath-dialog-in{0%{opacity:0;transform:translateY(var(--ath-space-4)) scale(.98)}}@media (width>=720px){.ath-sheet-layer{padding:var(--ath-space-6);place-items:center;display:grid}.ath-sheet{width:min(var(--ath-dialog-width), 100%);max-height:calc(100dvh - 2 * var(--ath-space-6));padding:var(--ath-space-6);border-radius:var(--ath-radius-sheet);animation-name:ath-dialog-in;position:relative;bottom:auto;left:auto;right:auto}.ath-sheet-grab{display:none}}.ath-bench{bottom:calc(var(--safe-bottom) + var(--ath-space-5) + var(--ath-bar-clearance));z-index:20;gap:var(--ath-space-3);margin-top:var(--ath-block-gap);padding:var(--ath-space-4);border:1px solid var(--ath-dock-line);border-radius:var(--ath-radius-card);background:var(--ath-dock);box-shadow:var(--ath-elevation);color:var(--ath-text);animation:ath-bench-rise var(--ath-dur-dock) var(--ath-ease-dock);flex-direction:column;display:flex;position:sticky}.ath-bench--standing-down{visibility:hidden}html:has(.ath-bench){scroll-padding-bottom:calc(var(--ath-bench-cover,0px) + var(--ath-space-3))}.ath-bench-hint{text-align:center;text-wrap:balance;color:var(--ath-text-muted);margin:0}.ath-bench-hint--warning{color:var(--ath-warning)}.ath-bench-hint--danger{color:var(--ath-danger)}@keyframes ath-bench-rise{0%{opacity:0;transform:translateY(var(--ath-dock-rise))}}.ath-dock{bottom:var(--ath-bar-clearance);z-index:20;gap:var(--ath-space-3);margin:var(--ath-block-gap) calc(-1 * var(--ath-gutter)) 0;padding:var(--ath-space-3) var(--ath-gutter) calc(var(--ath-space-3) + var(--safe-bottom));border-top:1px solid var(--ath-dock-line);background:var(--ath-dock);color:var(--ath-text);flex-direction:column;display:flex;position:sticky}.ath-tick{align-items:center;gap:var(--ath-space-3);min-width:var(--ath-touch);min-height:var(--ath-touch);color:var(--ath-text);font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;margin:0;padding:0;display:inline-flex}.ath-tick--row{width:100%;display:flex}.ath-tick:not(.ath-tick--row){justify-content:center}.ath-tick-box{width:var(--ath-tick-box);height:var(--ath-tick-box);border:1.5px solid var(--ath-text-muted);border-radius:var(--ath-radius-mark);color:var(--ath-accent-ink);transition:background-color var(--ath-dur-quick) ease-out, border-color var(--ath-dur-quick) ease-out, transform var(--ath-dur-snappy) var(--ath-ease-snappy);background:0 0;flex:none;justify-content:center;align-items:center;display:flex}.ath-tick-box>svg{width:var(--ath-glyph);height:var(--ath-glyph)}.ath-tick[aria-checked=true] .ath-tick-box{border-color:var(--ath-accent-fill);background:var(--ath-accent-fill)}.ath-tick:active:not(:disabled) .ath-tick-box{transform:scale(var(--ath-press-scale))}.ath-tick:focus-visible{outline:none}.ath-tick:focus-visible .ath-tick-box{outline:2px solid var(--ath-accent);outline-offset:2px}.ath-tick:disabled{cursor:not-allowed}.ath-tick:disabled .ath-tick-box{border-color:var(--ath-text-faint)}.ath-tick-label{flex:1;min-width:0}.ath-field{margin-bottom:var(--ath-space-4)}.ath-field-label{margin:0 0 var(--ath-space-2);color:var(--ath-text-faint);display:block}.ath-field-box{align-items:center;gap:var(--ath-space-3);height:var(--ath-control-field);padding:0 var(--ath-inset);border:1px solid var(--ath-line);border-radius:var(--ath-radius-control);background:var(--ath-surface-raised);transition:border-color var(--ath-dur-quick) ease-out;display:flex}.ath-field-box:focus-within{border-color:var(--ath-accent)}.ath-field--invalid .ath-field-box{border-color:var(--ath-danger)}.ath-field--multiline .ath-field-box{height:auto;min-height:var(--ath-field-multiline);padding:var(--ath-space-4) var(--ath-inset);align-items:flex-start}.ath-field-input{min-width:0;height:100%;color:var(--ath-text);font-family:var(--ath-font-body);font-stretch:var(--ath-stretch);font-size:var(--ath-type-lg-size);line-height:var(--ath-type-lg-line);font-weight:var(--ath-weight-regular);background:0 0;border:0;outline:none;flex:1;margin:0;padding:0}.ath-field-input::placeholder{color:var(--ath-text-faint)}.ath-field-input::selection{background:var(--ath-accent-selection)}textarea.ath-field-input{min-height:var(--ath-field-multiline-input);resize:none;field-sizing:content}.ath-field-reveal{margin-right:calc(-1 * var(--ath-space-3));width:var(--ath-touch);height:var(--ath-touch);color:var(--ath-text-muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:flex}.ath-field-reveal[aria-pressed=true]{color:var(--ath-accent)}.ath-field-reveal>svg{width:var(--ath-glyph-lg);height:var(--ath-glyph-lg)}.ath-field-reveal:focus-visible{outline:2px solid var(--ath-accent);outline-offset:-4px;border-radius:var(--ath-radius-control)}.ath-field-hint{margin:var(--ath-space-2) 0 0;color:var(--ath-text-muted)}.ath-field--invalid .ath-field-hint{color:var(--ath-danger)}.ath-macro-block{padding:var(--ath-inset)}.ath-macro-calories{align-items:baseline;gap:var(--ath-space-2);min-width:0;display:flex}.ath-macro-calories-value{min-width:0}.ath-macro-calories-unit{color:var(--ath-text-faint);flex:none}.ath-macro-bar{gap:var(--ath-space-1);height:var(--ath-space-2);margin:var(--ath-space-4) 0;display:flex}.ath-macro-bar--compact{height:calc(var(--ath-space-1) * 1.5);margin:var(--ath-space-1) 0}.ath-macro-bar-segment{flex:var(--ath-macro-share) 1 0;border-radius:var(--ath-radius-mark)}.ath-macro-bar-segment--protein{background:var(--ath-macro-protein)}.ath-macro-bar-segment--carbs{background:var(--ath-macro-carbs)}.ath-macro-bar-segment--fat{background:var(--ath-macro-fat)}.ath-macro-legend{display:flex}.ath-macro-divider{width:var(--ath-hairline);margin:0 var(--ath-space-3);background:var(--ath-line);flex:none}.ath-macro-cell{flex:1;min-width:0}.ath-macro-grams-unit{color:var(--ath-text-faint);text-transform:none;letter-spacing:0}.ath-macro-key{align-items:center;gap:var(--ath-space-1);margin-top:var(--ath-space-1);min-width:0;display:flex}.ath-macro-dot{width:var(--ath-dot);height:var(--ath-dot);border-radius:var(--ath-radius-mark);flex:none}.ath-macro-dot--protein{background:var(--ath-macro-protein)}.ath-macro-dot--carbs{background:var(--ath-macro-carbs)}.ath-macro-dot--fat{background:var(--ath-macro-fat)}.ath-macro-key-label{min-width:0;color:var(--ath-text-faint)}.ath-macro-line{color:var(--ath-text-muted);margin:0}.ath-macro-line-value{color:var(--ath-text);font-weight:var(--ath-weight-bold);font-variant-numeric:tabular-nums}.ath-macro-line-sep{color:var(--ath-text-faint)}.ath-fit{min-width:0;font-size:calc(var(--ath-fit-size) * var(--ath-fit,1));white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.ath-trainkeep-mark{width:var(--ath-mark-size);height:var(--ath-mark-size);border-radius:calc(var(--ath-mark-size) * .24);background:var(--ath-accent-fill);color:var(--ath-accent-ink);flex:none;justify-content:center;align-items:center;display:flex}.ath-trainkeep-mark>svg{width:70%;height:auto}.athlete-update-lock{z-index:9999;background:var(--ath-bg);font-family:var(--ath-font-body);font-stretch:var(--ath-stretch);color:var(--ath-text);padding:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left);flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.athlete-update-lock:focus,.athlete-update-lock:focus-visible{outline:none}.athlete-update-lock-content{justify-content:center;gap:var(--ath-space-2);padding:var(--ath-space-7) var(--ath-gutter);max-width:var(--ath-dialog-width);box-sizing:border-box;flex-direction:column;flex:1;width:100%;margin:0 auto;display:flex}.athlete-update-lock-message{max-width:var(--ath-empty-body-max);margin:0}.athlete-update-lock-progress{height:var(--ath-space-1);background:var(--ath-mark-wash);border-radius:var(--ath-radius-mark);flex-shrink:0;overflow:hidden}.athlete-update-lock-progress-fill{background:var(--ath-accent-fill);border-radius:var(--ath-radius-mark);transform-origin:0;height:100%;animation:1s linear forwards athleteUpdateLockDrain;transform:scaleX(1)}@keyframes athleteUpdateLockDrain{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media (prefers-reduced-motion:reduce){.athlete-update-lock-progress-fill{animation:none;transform:scaleX(1)}}.impersonation-banner{z-index:100;align-items:center;gap:var(--space-3);padding:calc(10px + var(--safe-top)) calc(18px + var(--safe-right)) 10px calc(18px + var(--safe-left));background:var(--color-danger);color:var(--color-on-danger);border-bottom:1px solid color-mix(in srgb, var(--color-bg) 30%, transparent);font-family:var(--font-body);font-size:var(--text-md);flex-wrap:wrap;font-weight:600;display:flex;position:sticky;top:0}.impersonation-banner.is-write{background:color-mix(in srgb, var(--color-danger) 62%, var(--color-bg));color:var(--color-text);border-bottom-color:var(--color-bg)}.impersonation-banner-icon{align-items:center;display:inline-flex}.impersonation-banner-text{align-items:baseline;gap:var(--space-2);flex:auto;min-width:0;display:inline-flex}.impersonation-banner-label{font-size:var(--text-xs);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:800}.impersonation-banner-target{font-size:var(--text-md);white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.impersonation-banner-email{min-width:0;font-size:var(--text-md);opacity:.8;white-space:nowrap;text-overflow:ellipsis;font-weight:400;overflow:hidden}.impersonation-banner-mode{padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-bg) 22%, transparent);font-size:var(--text-xs);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-control);text-transform:uppercase;font-weight:800}.impersonation-banner-actions{align-items:center;gap:var(--space-2);display:inline-flex}.impersonation-banner-toggle,.impersonation-banner-exit{padding:6px var(--space-3);border-radius:var(--radius-ctl);font-family:var(--font-body);font-size:var(--text-sm);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-control);text-transform:uppercase;cursor:pointer;transition:background-color var(--dur-tap), border-color var(--dur-tap), color var(--dur-tap);align-items:center;gap:6px;font-weight:700;display:inline-flex}.impersonation-banner-toggle{background:color-mix(in srgb, var(--color-bg) 18%, transparent);color:inherit;border:1px solid color-mix(in srgb, var(--color-bg) 40%, transparent)}.impersonation-banner-toggle:hover{background:color-mix(in srgb, var(--color-bg) 32%, transparent)}.impersonation-banner-exit{background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-bg)}.impersonation-banner-exit:hover{background:var(--color-surface);border-color:var(--color-surface)}.impersonation-banner-toggle:focus-visible,.impersonation-banner-exit:focus-visible{outline:2px solid var(--color-text);outline-offset:2px}.impersonation-banner-exit:disabled{opacity:.6;cursor:not-allowed}.app-banner{--banner-gutter:var(--space-4);align-items:center;gap:var(--space-4);padding:var(--space-2) calc(var(--banner-gutter) + var(--safe-right)) var(--space-2) calc(var(--banner-gutter) + var(--safe-left));padding-top:calc(var(--space-2) + var(--chrome-safe-top));background:var(--color-surface);color:var(--color-text);border-bottom:1px solid var(--color-border);grid-template-columns:minmax(0,1fr) auto auto;display:grid}.app-banner-title{min-width:0;font-size:var(--text-xl);color:var(--color-accent);line-height:1.3;font-family:var(--font-body);font-stretch:var(--stretch-body);letter-spacing:.02em;text-transform:uppercase;font-weight:800}.app-banner-store{border-radius:var(--radius-ctl);line-height:0;display:block}.app-banner-store img{width:auto;height:28px;display:block}.app-banner-store--iphone img{height:40px}.app-banner-store:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.app-banner~*{--chrome-safe-top:0px}.app-banner:has(~.app-shell,~.has-app-sidebar){--banner-gutter:var(--space-5)}@media (width>=561px){.app-banner:has(~.app-shell,~.has-app-sidebar){--banner-gutter:28px}}@media (width>=720px){.app-banner:has(~.athlete-shell){--banner-gutter:var(--space-6)}}@media (width>=1100px){.app-banner:has(~.app-shell,~.has-app-sidebar){padding-left:calc(var(--sidebar-width) + var(--banner-gutter))}}.app-banner:has(~.auth-invite-live){display:none}.loading-band{--loading-track-w:72px;--loading-track-h:3px;justify-content:center;align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.loading-band--sm{--loading-track-w:32px;--loading-track-h:2px;vertical-align:middle;padding:var(--space-4) 0;display:inline-flex}.loading-band--md{padding:var(--space-8) 0}.loading-band--lg{--loading-track-w:144px;--loading-track-h:4px;gap:var(--space-4);min-height:60vh;padding:0}.loading-band-track{width:var(--loading-track-w);height:var(--loading-track-h);background:color-mix(in srgb, var(--color-text) 12%, transparent);display:block;position:relative}.loading-band-band{background:color-mix(in srgb, var(--color-accent-fill) 70%, var(--color-accent));clip-path:inset(0 30%);animation:1.3s cubic-bezier(.45,0,.3,1) infinite loading-band-read;position:absolute;inset:0}@keyframes loading-band-read{0%{clip-path:inset(0 100% 0 0)}45%{clip-path:inset(0 28% 0 0)}to{clip-path:inset(0 0 0 100%)}}.loading-band-words{font-family:var(--font-body);font-size:var(--text-sm);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-control);text-transform:uppercase;text-align:center;color:var(--color-text-muted);font-weight:700}.theme-toggle{border-radius:var(--radius-ctl);width:36px;height:36px;color:var(--color-text-muted);border:1px solid var(--color-control-edge);background:var(--color-surface);transition:color var(--dur-hover), border-color var(--dur-hover), background var(--dur-hover);place-items:center;display:grid}.theme-toggle svg{transition:transform var(--dur-slab) var(--ease-slab)}.theme-toggle:hover svg{transform:rotate(-20deg)}.theme-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.theme-toggle.rail{width:36px;height:36px;color:var(--color-text-muted);background:0 0;border:0}.theme-toggle.rail:hover{color:var(--color-text);background:color-mix(in srgb, var(--color-text) 8%, transparent)}.theme-toggle:hover{color:var(--color-accent);border-color:var(--color-accent)}.theme-toggle.compact{border-color:var(--color-border-subtle);background:0 0;width:30px;height:30px}.theme-toggle.compact:hover{background:var(--color-sidebar-hover)}.theme-toggle.chrome{border-radius:var(--radius-ctl);min-width:44px;min-height:44px;color:var(--color-text);background:0 0;border:0}.theme-toggle.chrome:hover{color:var(--color-accent)}.legal-footer-links{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.legal-footer-link{color:inherit;font-size:inherit;text-decoration:none}.legal-footer-link:hover{color:var(--color-text)}.legal-footer-link-icon{align-items:center;gap:6px;display:inline-flex}.legal-footer-ccpa-icon{width:26px;height:auto;display:block}.legal-footer-sep{opacity:.5}.legal-footer-error{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-warning);flex:1 0 100%;line-height:1.5}.status-pill{--pill-tone:var(--color-text-muted);align-items:center;gap:var(--space-1);border-radius:var(--radius-pill);font-family:var(--font-body);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-control);text-transform:uppercase;white-space:nowrap;background:color-mix(in srgb, var(--pill-tone) 14%, transparent);color:color-mix(in srgb, var(--pill-tone) 62%, var(--color-text));flex-shrink:0;font-weight:700;line-height:1;display:inline-flex}.status-pill--sm{font-size:var(--text-xs);padding:5px var(--space-2) var(--space-1)}.status-pill--md{font-size:var(--text-sm);padding:6px var(--space-3) 5px}.status-pill--success{--pill-tone:var(--color-success)}.status-pill--warning{--pill-tone:var(--color-warning)}.status-pill--danger{--pill-tone:var(--color-danger)}.status-pill--accent{--pill-tone:var(--color-accent);color:var(--color-accent)}.pricing-tiers-toggle{isolation:isolate;width:fit-content;margin:0 auto var(--space-7);background:var(--color-surface);border:1px solid var(--color-control-edge);border-radius:var(--radius-ctl);display:flex;position:relative;overflow:hidden}.pricing-tiers-toggle-option{z-index:2;min-height:48px;padding:var(--space-2) var(--space-6);font-family:var(--font-body);font-size:var(--text-ctl);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-control);text-transform:uppercase;color:var(--color-text-muted);transition:color var(--dur-hover);flex-direction:column;justify-content:center;align-items:center;gap:2px;font-weight:700;display:inline-flex;position:relative}.pricing-tiers-toggle-option+.pricing-tiers-toggle-option{border-left:1px solid var(--color-border)}.pricing-tiers-toggle-option:hover:not(.is-active){color:var(--color-text)}.pricing-tiers-toggle-option:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.pricing-tiers-toggle-option.is-active{background:var(--color-accent-fill);color:var(--color-accent-on-fill)}.pricing-tiers-toggle.has-slab .pricing-tiers-toggle-option.is-active{background:0 0}.pricing-tiers-toggle.has-slab:before{content:"";z-index:1;width:var(--slab-w);height:var(--slab-h);transform:translate(var(--slab-x), var(--slab-y));background:var(--color-accent-fill);pointer-events:none;position:absolute;top:0;left:0}.pricing-tiers-toggle.slab-ready:before{transition:transform var(--dur-slab) var(--ease-slab), width var(--dur-slab) var(--ease-slab)}.pricing-tiers-toggle.slab-ready .pricing-tiers-toggle-option.is-active{transition:color .14s ease-out 70ms}.pricing-tiers-toggle-hint{font-size:var(--text-xs);opacity:.85}.pricing-tiers-grid{gap:var(--space-4);margin-bottom:var(--space-7);align-items:stretch;display:grid}.pricing-tiers-grid[data-tier-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.pricing-tiers-grid[data-tier-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=768px){.pricing-tiers-grid{max-width:420px;margin:0 auto var(--space-7);grid-template-columns:1fr!important}}.pricing-tiers-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-group);transition:border-color var(--dur-hover), box-shadow var(--dur-hover);flex-direction:column;display:flex;position:relative;overflow:hidden}.pricing-tiers-card.is-recommended{border-color:var(--color-accent-dim)}.pricing-tiers-card.is-recommended .pricing-tiers-head{background:var(--color-accent-ghost)}.pricing-tiers-card.is-current{border-color:var(--color-accent-fill);box-shadow:0 0 0 1px var(--color-accent-fill)}.pricing-tiers-current{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-6);background:var(--color-accent-fill);color:var(--color-accent-on-fill);font-family:var(--font-body);font-size:var(--text-sm);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-label);text-transform:uppercase;margin:0;font-weight:700;display:flex}.pricing-tiers-head{padding:var(--space-6) var(--space-6) var(--space-5);border-bottom:1px solid var(--color-border-subtle)}.pricing-tiers-badge{font-family:var(--font-body);font-size:var(--text-xs);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-3);font-weight:700;display:block}.pricing-tiers-name{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);text-transform:uppercase;font-size:32px;font-weight:400;line-height:1}.pricing-tiers-price{align-items:baseline;gap:var(--space-1);margin-top:var(--space-2);min-height:40px;display:flex}.pricing-tiers-amount{font-family:var(--pricing-num-family,var(--font-display));font-stretch:var(--pricing-num-stretch,normal);font-weight:var(--pricing-num-weight,400);font-variant-numeric:tabular-nums;letter-spacing:var(--pricing-num-tracking,.04em);color:var(--color-text);font-size:40px;line-height:1}.pricing-tiers-period{font-size:var(--text-md);text-transform:uppercase;letter-spacing:var(--tracking-control);color:var(--color-text-muted)}.pricing-tiers-free{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-accent);text-transform:uppercase;font-size:32px;line-height:1}.pricing-tiers-currency{font-size:var(--text-sm);letter-spacing:var(--tracking-control);text-transform:uppercase;color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--radius-pill);padding:var(--space-1) var(--space-2);margin-left:var(--space-2);align-self:center;font-weight:700}.pricing-tiers-per-portal{margin-top:var(--space-3);font-size:var(--text-sm);letter-spacing:var(--tracking-control);text-transform:uppercase;color:var(--color-accent);font-weight:700}.pricing-tiers-per-portal-lead{color:var(--color-text-muted)}.pricing-tiers-caps{gap:var(--space-7);padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--color-border-subtle);background:color-mix(in srgb, var(--color-text) 3%, transparent);display:flex}.pricing-tiers-cap-num{font-family:var(--pricing-num-family,var(--font-display));font-stretch:var(--pricing-num-stretch,normal);font-weight:var(--pricing-num-weight,400);font-variant-numeric:tabular-nums;letter-spacing:var(--pricing-num-tracking,.03em);color:var(--color-text);font-size:28px;line-height:1;display:block}.pricing-tiers-cap-label{font-size:var(--text-xs);letter-spacing:var(--tracking-control);text-transform:uppercase;color:var(--color-text-muted);margin-top:var(--space-1);font-weight:700;display:block}.pricing-tiers-cap--spotter{flex:1;min-width:0}.pricing-tiers-cap-bar{align-items:center;height:28px;display:flex}.pricing-tiers-cap-bar .loadbar{width:100%}.pricing-tiers-cap-cadence{margin-left:var(--space-2);letter-spacing:normal;text-transform:none;font-weight:400}.pricing-tiers-body{padding:var(--space-5) var(--space-6) var(--space-6);flex-direction:column;flex:1;display:flex}.pricing-tiers-group+.pricing-tiers-group{margin-top:var(--space-5)}.pricing-tiers-group-label{font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-text-muted);margin:0 0 var(--space-3);font-weight:700}.pricing-tiers-features{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.pricing-tiers-features li{gap:var(--space-2);font-size:var(--text-lg);color:var(--color-text);line-height:1.35;display:flex}.pricing-tiers-feat-icon{color:var(--color-accent);flex-shrink:0;margin-top:2px}.pricing-tiers-cta-slot{padding:0 var(--space-6) var(--space-6);flex-direction:column;margin-top:auto;display:flex}.pricing-tiers-cta-slot>*{justify-content:center;width:100%}.pricing-tiers-note{text-align:center;max-width:640px;font-size:var(--text-md);color:var(--color-text-muted);margin:0 auto;line-height:1.5}.rt{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:var(--color-surface);padding:var(--space-5) 0 var(--space-6);overflow:hidden}.rt-label{font-size:var(--text-sm);letter-spacing:.16em;text-transform:uppercase;color:var(--color-text-dim);text-align:center;margin-bottom:var(--space-4);font-weight:700}.rt-viewport{-webkit-mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000);mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000)}.rt-track{width:max-content;animation:48s linear infinite rt-drift;display:flex}.rt:hover .rt-track{animation-play-state:paused}@keyframes rt-drift{to{transform:translate(-50%)}}.rt-row{align-items:center;margin:0;padding:0;list-style:none;display:flex}.rt-item{padding:0 var(--space-6);align-items:center;display:flex}.rt-item:after{content:"";width:6px;height:6px;margin-left:var(--space-6);background:var(--color-accent-fill);border-radius:var(--radius-pill);flex:none}.rt-text{font-family:var(--font-display);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;color:var(--color-text-muted);text-decoration:line-through;-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent);font-size:30px;line-height:1.25;text-decoration-thickness:3px}[data-theme=light] .rt-text{-webkit-text-decoration-color:var(--color-accent-fill);text-decoration-color:var(--color-accent-fill)}@media (width<=640px){.rt-text{font-size:22px}.rt-item{padding:0 var(--space-4)}.rt-item:after{margin-left:var(--space-4);height:14px}}@media (prefers-reduced-motion:reduce){.rt-track{animation:none}}.spine{left:var(--space-7);z-index:15;opacity:0;pointer-events:none;height:min(58vh,420px);transition:opacity .4s;display:none;position:fixed;top:50%;transform:translateY(-50%)}.spine[data-lit]{opacity:1;pointer-events:auto}.spine:before{content:"";left:calc(-1 * var(--space-4));top:calc(-1 * var(--space-5));width:210px;bottom:calc(-1 * var(--space-5));background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);opacity:0;transform-origin:0;pointer-events:none;transition:opacity .22s,transform .22s;position:absolute;transform:scale(.98)}.spine:hover:before,.spine:focus-within:before{opacity:1;transform:none}.spine-track{background:var(--color-border);border-radius:2px;width:3px;position:absolute;top:0;bottom:0;left:0;overflow:hidden}.spine-fill{background:linear-gradient(to bottom, var(--color-accent-dim), var(--color-accent-fill));transform-origin:top;border-radius:2px;position:absolute;inset:0;transform:scaleY(0)}.spine-stops{flex-direction:column;justify-content:space-between;margin:0;padding:0;list-style:none;display:flex;position:absolute;inset:0}.spine-stop{display:flex}.spine-link{align-items:center;gap:var(--space-3);padding:var(--space-1) var(--space-2) var(--space-1) 0;border-radius:var(--radius-sm);margin-left:-4px;text-decoration:none;display:flex;position:relative}.spine-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.spine-tick{background:var(--color-bg);border:2px solid var(--color-border);width:11px;height:11px;transition:background .24s ease, border-color .24s ease, transform .24s var(--ease-settle);border-radius:50%;flex:none}.spine-stop[data-state=done] .spine-tick{background:var(--color-accent-dim);border-color:var(--color-accent-dim)}.spine-stop[data-state=active] .spine-tick{background:var(--color-accent-fill);border-color:var(--color-accent-fill);transform:scale(1.25)}.spine-stop[data-state=active] .spine-link:before{content:"";border:2px solid var(--color-accent-fill);opacity:0;width:11px;height:11px;animation:spine-beat var(--dur-wipe) var(--ease-settle);pointer-events:none;border-radius:50%;margin-top:-5.5px;position:absolute;top:50%;left:0}@keyframes spine-beat{0%{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(2.6)}}.spine-label{font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;color:var(--color-text-dim);opacity:0;font-weight:700;transition:opacity .2s,transform .2s,color .2s;transform:translate(-6px)}.spine-stop[data-state=active] .spine-label{opacity:1;color:var(--color-accent);transform:none}.spine:hover .spine-label,.spine:focus-within .spine-label{opacity:1;transform:none}.spine:hover .spine-link:hover .spine-label{color:var(--color-text)}.spine:hover .spine-label{transition-delay:calc(var(--i,0) * 30ms)}@media (width>=1280px){.spine{display:block}}.hsp{z-index:3;width:348px;color:var(--color-text);background:color-mix(in srgb, var(--color-surface) 90%, transparent);-webkit-backdrop-filter:blur(8px);border:1px solid var(--color-border);border-radius:var(--radius-group);box-shadow:var(--shadow-lg);opacity:0;transform-origin:100% 100%;animation:hsp-land .75s var(--ease-settle) .7s forwards;flex-direction:column;display:flex;position:relative;overflow:hidden;transform:translateY(16px)scale(.96)}@keyframes hsp-land{to{opacity:1;transform:none}}.hsp-head{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-subtle);display:flex}.hsp-mark{color:var(--color-accent)}.hsp-name{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;font-size:22px;line-height:1}.hsp-body{gap:var(--space-3);padding:var(--space-4);flex-direction:column;display:flex}.hsp-said{max-width:90%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-group);background:var(--color-accent-glow);font-size:var(--text-sm);overflow-wrap:anywhere;align-self:flex-end;margin:0;line-height:1.45}.hsp-work{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.hsp-step{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted);min-width:0;display:flex}.hsp-tick{border-radius:var(--radius-pill);background:var(--color-accent-fill);width:16px;height:16px;color:var(--color-accent-on-fill);flex:none;place-items:center;display:grid}.hsp-card{border:1px solid var(--color-border);border-radius:var(--radius-group);background:var(--color-surface-2);overflow:hidden}.hsp-card-head{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);flex-direction:column;gap:2px;display:flex}.hsp-eyebrow{font-size:var(--text-xs);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700;display:grid}.hsp-eyebrow>*{grid-area:1/1}.hsp-eyebrow-ask{color:var(--color-accent);opacity:0}.hsp-eyebrow-done{color:var(--color-text-muted)}.hsp-title{font-family:var(--font-display);letter-spacing:.03em;text-transform:uppercase;font-size:22px;line-height:1.05}.hsp-changes{opacity:.55;margin:0;padding:0;list-style:none}.hsp-change{gap:var(--space-1);padding:var(--space-2) var(--space-3);flex-direction:column;display:flex}.hsp-change+.hsp-change{border-top:1px solid var(--color-border)}.hsp-change-title{font-size:var(--text-sm);font-weight:600}.hsp-workouts{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex}.hsp-workout{border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--text-xs);white-space:nowrap;padding:1px 6px;font-weight:600}.hsp-new{border-radius:var(--radius-pill);background:var(--color-accent-glow);color:var(--color-accent);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;padding:1px 7px;font-weight:700}.hsp-kcal{font-size:var(--text-sm);color:var(--color-text-muted)}.hsp-kcal b{font-size:var(--text-lg);color:var(--color-text)}.hsp-foot{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3) var(--space-3);border-top:1px solid var(--color-border);opacity:.35;display:flex}.hsp-yes{min-height:36px;padding:0 var(--space-3);border-radius:var(--radius-ctl);background:var(--color-accent-fill);color:var(--color-accent-on-fill);font-size:var(--text-xs);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-control);text-transform:uppercase;text-align:center;flex:1;place-items:center;font-weight:700;display:grid}.hsp-no{font-size:var(--text-sm);color:var(--color-text-muted);font-weight:600}.hsp-said{animation:hsp-said 13s var(--ease-settle) 1.2s infinite both}.hsp-step--1{animation:hsp-step-1 13s var(--ease-settle) 1.2s infinite both}.hsp-step--1 .hsp-tick{animation:hsp-tick-1 13s var(--ease-settle) 1.2s infinite both}.hsp-step--2{animation:hsp-step-2 13s var(--ease-settle) 1.2s infinite both}.hsp-step--2 .hsp-tick{animation:hsp-tick-2 13s var(--ease-settle) 1.2s infinite both}.hsp-card{animation:hsp-card 13s var(--ease-settle) 1.2s infinite both}.hsp-change--1{animation:hsp-change-1 13s var(--ease-settle) 1.2s infinite both}.hsp-change--2{animation:hsp-change-2 13s var(--ease-settle) 1.2s infinite both}.hsp-changes{animation:13s 1.2s infinite both hsp-changes}.hsp-foot{animation:hsp-foot 13s var(--ease-settle) 1.2s infinite both}.hsp-yes{animation:13s 1.2s infinite both hsp-press}.hsp-eyebrow-ask{animation:13s 1.2s infinite both hsp-ask}.hsp-eyebrow-done{animation:13s 1.2s infinite both hsp-done}@keyframes hsp-said{0%{opacity:0;transform:translateY(10px)}3%,94%{opacity:1;transform:none}98%,to{opacity:0;transform:none}}@keyframes hsp-step-1{0%,8%{opacity:0;transform:translateY(6px)}10%,94%{opacity:1;transform:none}98%,to{opacity:0;transform:none}}@keyframes hsp-tick-1{0%,15%{opacity:0;transform:scale(.4)}16.5%,94%{opacity:1;transform:none}98%,to{opacity:0;transform:none}}@keyframes hsp-step-2{0%,17%{opacity:0;transform:translateY(6px)}19%,94%{opacity:1;transform:none}98%,to{opacity:0;transform:none}}@keyframes hsp-tick-2{0%,24%{opacity:0;transform:scale(.4)}25.5%,94%{opacity:1;transform:none}98%,to{opacity:0;transform:none}}@keyframes hsp-card{0%,28%{opacity:0;transform:translateY(12px)}32%,94%{opacity:1;transform:none}98%,to{opacity:0;transform:none}}@keyframes hsp-change-1{0%,32%{opacity:0;transform:translateY(6px)}35%,to{opacity:1;transform:none}}@keyframes hsp-change-2{0%,34.5%{opacity:0;transform:translateY(6px)}37%,to{opacity:1;transform:none}}@keyframes hsp-changes{0%,55%{opacity:1}58%,to{opacity:.55}}@keyframes hsp-foot{0%,37%{opacity:0;transform:translateY(6px)}39%,54%{opacity:1;transform:none}57%,to{opacity:.35;transform:none}}@keyframes hsp-press{0%,52%{transform:none}53%{transform:translateY(1px)scale(.98)}54.5%,to{transform:none}}@keyframes hsp-ask{0%,54%{opacity:1}55%,to{opacity:0}}@keyframes hsp-done{0%,54%{opacity:0}55%,to{opacity:1}}@media (prefers-reduced-motion:reduce){.hsp{opacity:1;transform:none}}@media (width<=860px){.hsp{transform-origin:0 100%;justify-self:start;width:100%;max-width:420px}}.landing-sticky-cta{z-index:25;gap:var(--space-2);padding:var(--space-3) var(--space-4) calc(var(--space-3) + var(--safe-bottom));padding-left:calc(var(--space-4) + var(--safe-left));padding-right:calc(var(--space-4) + var(--safe-right));background:var(--color-surface);border-top:1px solid var(--color-border);box-shadow:var(--shadow), var(--bottom-bar-bleed) var(--color-surface);visibility:hidden;transition:transform .32s var(--ease-settle), visibility 0s .32s;display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%)}.landing-sticky-cta.is-shown{visibility:visible;transition:transform .32s var(--ease-settle), visibility 0s;transform:none}.landing-sticky-cta>.btn-primary{flex:auto;justify-content:center}.landing-sticky-cta>.btn-ghost{flex:none}@media (width<=860px){.landing{--sticky-cta-h:calc(76px + var(--safe-bottom))}}@media (prefers-reduced-motion:reduce){.landing-sticky-cta,.landing-sticky-cta.is-shown{transition:none}}.landing-ask-band{box-sizing:border-box;max-width:1120px;padding-block:var(--landing-section-y) 0;margin:0 auto}.ab-head{column-gap:var(--space-8);row-gap:var(--space-3);margin-bottom:var(--space-7);grid-template-columns:minmax(0,1fr) minmax(0,28rem);align-items:end;display:grid}.ab-label{font-size:var(--text-sm);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-accent);grid-column:1/-1;margin:0;font-weight:700}.ab-title{font-family:var(--font-display);letter-spacing:.01em;text-transform:uppercase;color:var(--color-text);margin:0;font-size:clamp(44px,6vw,84px);font-weight:400;line-height:.9}.ab-sub{font-size:var(--text-lg);color:var(--color-text-muted);margin:0;line-height:1.55}.ab-asks{columns:3 16rem;column-gap:var(--space-5);margin:0;padding:0;list-style:none}.ab-ask{break-inside:avoid;align-items:flex-start;gap:var(--space-1);margin-bottom:var(--space-5);flex-direction:column;display:flex}.ab-group{font-size:var(--text-xs);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-text-dim);font-weight:700}.ab-bubble{padding:var(--space-3) var(--space-4);border-radius:var(--radius-group);background:var(--color-accent-glow);font-size:var(--text-lg);color:var(--color-text);overflow-wrap:anywhere;margin:0;font-weight:600;line-height:1.4}.ab-trust{margin:var(--space-6) 0 0;border-top:1px solid var(--color-border);grid-template-columns:repeat(4,minmax(0,1fr));padding:0;list-style:none;display:grid}.ab-fact{column-gap:var(--space-2);row-gap:var(--space-1);padding:var(--space-5) var(--space-5) var(--space-5) 0;grid-template-columns:18px minmax(0,1fr);align-content:start;display:grid}.ab-fact+.ab-fact{border-left:1px solid var(--color-border);padding-left:var(--space-5)}.ab-tick{border-radius:var(--radius-pill);background:var(--color-accent-fill);width:18px;height:18px;color:var(--color-accent-on-fill);place-items:center;margin-top:2px;display:grid}.ab-fact-title{font-size:var(--text-md);color:var(--color-text);font-weight:700}.ab-fact-body{font-size:var(--text-md);color:var(--color-text-muted);grid-column:2;line-height:1.5}.ab-lead{column-gap:var(--space-8);padding-block:var(--landing-section-y) var(--space-6);grid-template-columns:minmax(0,1fr) minmax(0,28rem);align-items:end;display:grid}.ab-lead-title{font-family:var(--font-display);letter-spacing:.01em;text-transform:uppercase;color:var(--color-text);margin:0;font-size:clamp(40px,5vw,72px);line-height:.9}.ab-lead-sub{font-size:var(--text-lg);color:var(--color-text-muted);margin:0;line-height:1.55}@media (width<=860px){.ab-head,.ab-lead{row-gap:var(--space-3);grid-template-columns:minmax(0,1fr)}.ab-trust{grid-template-columns:repeat(2,minmax(0,1fr))}.ab-fact:nth-child(3){border-left:0;padding-left:0}.ab-fact:nth-child(n+3){border-top:1px solid var(--color-border)}}@media (width<=560px){.ab-asks{columns:1}.ab-ask{margin-bottom:var(--space-4)}.ab-bubble{font-size:var(--text-md)}.ab-trust{grid-template-columns:minmax(0,1fr)}.ab-fact,.ab-fact+.ab-fact{padding:var(--space-4) 0;border-left:0}.ab-fact+.ab-fact{border-top:1px solid var(--color-border)}}.rundown{top:var(--landing-nav-h);z-index:19;height:var(--rundown-h);background:color-mix(in srgb, var(--color-surface) 82%, transparent);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--color-border);position:sticky}.rundown-inner{box-sizing:border-box;max-width:1120px;height:100%;margin:0 auto}.rundown-ticks{isolation:isolate;height:100%;margin:0;padding:0;list-style:none;display:flex;position:relative}.rundown-item{flex:1 1 0;align-items:center;min-width:0;display:flex;position:relative}.rundown-tick{z-index:1;align-items:center;gap:var(--space-2);width:100%;height:calc(100% - var(--space-3));padding:0 var(--space-3);border-radius:var(--radius-ctl);color:var(--color-text-muted);transition:color var(--dur-hover);text-decoration:none;display:flex;position:relative}.rundown-tick:hover{color:var(--color-text)}.rundown-tick:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.rundown-num{font-size:var(--text-lg);color:inherit;opacity:.72;line-height:1}.rundown-label{min-width:0;font-size:var(--text-ctl);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-control);text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.rundown-tick[aria-current]{color:var(--color-accent-on-fill);background:var(--color-accent-fill)}.rundown-tick[aria-current] .rundown-num{opacity:1}.rundown-ticks.has-slab .rundown-tick[aria-current]{background:0 0}.rundown-ticks.has-slab:before{content:"";z-index:0;width:var(--slab-w);height:var(--slab-h);transform:translate(var(--slab-x), var(--slab-y));background:var(--color-accent-fill);border-radius:var(--radius-ctl);pointer-events:none;position:absolute;top:0;left:0}.rundown-ticks.slab-ready:before{transition:transform var(--dur-slab) var(--ease-slab)}.rundown-ticks.slab-ready .rundown-tick[aria-current]{transition:color .14s ease-out 70ms}.rundown-tick:after{content:"";z-index:1;background:var(--color-accent-fill);border-radius:var(--radius-ctl);pointer-events:none;position:absolute;inset:0;transform:scaleX(0)}.landing.reveals-armed .features[data-motion=scrub] .rundown:not(.is-assembled,[data-shown]) :is(.rundown-num,.rundown-label,.rundown-plate){opacity:0}.features[data-motion=scrub] .rundown.is-assembled:not([data-shown]) .rundown-tick:after{animation:arena-slab-cross var(--dur-slab) var(--ease-wipe) backwards;animation-delay:calc(var(--assembly-delay) + var(--tick-i) * 90ms)}.features[data-motion=scrub] .rundown.is-assembled:not([data-shown]) :is(.rundown-num,.rundown-label,.rundown-plate){animation:rundown-ink-under-slab var(--dur-slab) linear backwards;animation-delay:calc(var(--assembly-delay) + var(--tick-i) * 90ms)}@keyframes rundown-ink-under-slab{0%,50%{opacity:0;animation-timing-function:step-start}}.rundown-progress{background:var(--color-accent);transform-origin:0;opacity:0;pointer-events:none;height:1px;position:absolute;bottom:-1px;left:0;right:0}.rundown-item[data-state=active] .rundown-progress{opacity:1}@supports (animation-timeline:view()){.rundown-progress{animation:linear both rundown-fill;animation-timeline:var(--tick-timeline);animation-range:contain}}@keyframes rundown-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.rundown-plate{display:none}@media (width<=860px){.rundown-ticks.has-slab:before{display:none}.rundown-tick,.rundown-tick[aria-current],.rundown-ticks.has-slab .rundown-tick[aria-current]{justify-content:center;align-items:stretch;gap:var(--space-1);height:100%;padding:0 var(--space-1);color:var(--color-text-dim);background:0 0;flex-direction:column}.rundown-item[data-state=done] .rundown-tick{color:var(--color-text-muted)}.rundown-tick[aria-current]{color:var(--color-text)}.rundown-tick:after{inset:var(--space-1) 0}.rundown-num{font-size:var(--text-md)}.rundown-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.rundown-plate{--plate-lit:color-mix(in srgb, var(--color-accent-fill) 70%, var(--color-accent));background:color-mix(in srgb, var(--color-text) 12%, transparent);height:4px;display:block;position:relative;overflow:hidden}.rundown-plate:after{content:"";background:var(--plate-lit);transform-origin:0;transition:transform .28s var(--ease-settle);position:absolute;inset:0;transform:scaleX(0)}.rundown-item:is([data-state=done],[data-state=active]) .rundown-plate:after{transform:none}@supports (animation-timeline:view()){.rundown-item[data-state=active] .rundown-plate:after{animation:linear both rundown-fill;animation-timeline:var(--tick-timeline);animation-range:contain}}.rundown-progress{display:none}}.features{--rundown-h:48px;--chapter-top:calc(var(--landing-nav-h) + var(--rundown-h));position:relative}@supports (timeline-scope:--a){.features{timeline-scope:var(--chapter-timelines)}}.features .features-intro{box-sizing:border-box;column-gap:var(--space-8);row-gap:var(--space-5);max-width:1120px;padding-block:calc(var(--landing-section-y) + var(--space-6)) var(--space-8);grid-template-columns:minmax(0,1fr) minmax(0,30rem);align-items:end;margin:0 auto;display:grid}.features-intro-label{font-size:var(--text-sm);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-accent);grid-column:1/-1;margin:0;font-weight:700}.features-intro-title{width:fit-content;max-width:100%;font-family:var(--font-display);letter-spacing:.01em;text-transform:uppercase;text-wrap:balance;color:var(--color-text);overflow-wrap:anywhere;grid-column:1/-1;margin:0;font-size:clamp(56px,8vw,120px);font-weight:400;line-height:.86;position:relative}.features-intro-title:after{content:"";background:var(--color-accent-fill);pointer-events:none;position:absolute;inset:.04em -.08em .02em;transform:scaleX(0)}.features-intro-sub{font-size:var(--text-xl);color:var(--color-text-muted);grid-column:2;margin:0;line-height:1.6}.landing.reveals-armed .features[data-motion=scrub] .features-intro:not(.is-in,[data-shown]) :is(.features-intro-label,.features-intro-ink,.features-intro-sub){opacity:0}.features[data-motion=scrub] .features-intro.is-in:not([data-shown]) .features-intro-label{animation:arena-fade var(--dur-arrive) var(--ease-settle) backwards}.features[data-motion=scrub] .features-intro.is-in:not([data-shown]) .features-intro-ink{animation:arena-ink-under-slab var(--dur-wipe) linear .12s backwards}.features[data-motion=scrub] .features-intro.is-in:not([data-shown]) .features-intro-title:after{animation:arena-slab-cross var(--dur-wipe) var(--ease-wipe) .12s backwards}.features[data-motion=scrub] .features-intro.is-in:not([data-shown]) .features-intro-sub{animation:arena-fade var(--dur-arrive) var(--ease-settle) .5s backwards}.chapter{--chapter-h:calc(100svh - var(--chapter-top) + var(--run-vh) * 1vh);height:var(--chapter-h)}.chapter:not(.is-mounted){content-visibility:auto;contain-intrinsic-size:auto var(--chapter-h)}.landing .chapter[id]{scroll-margin-top:var(--chapter-top)}.chapter-track{height:100%;position:relative}@supports (view-timeline-name:--a){.chapter-track{view-timeline-name:var(--view-name)}}.chapter-viewport{top:var(--chapter-top);box-sizing:border-box;height:calc(100svh - var(--chapter-top));align-content:center;align-items:start;gap:var(--space-8);max-width:1120px;padding-block:var(--space-6);grid-template-rows:minmax(min-content,44rem);grid-template-columns:minmax(0,36fr) minmax(0,64fr);margin:0 auto;display:grid;position:sticky}.chapter-stage-slot{align-self:stretch;min-height:0;position:relative}.chapter-slate{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.chapter-slate-head{align-items:flex-start;gap:var(--space-2);flex-direction:column;display:flex}.chapter-num{color:var(--color-text);font-size:clamp(64px,7vw,112px);line-height:.8}.chapter-tag{font-size:var(--text-sm);font-stretch:var(--stretch-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-accent);margin:0;font-weight:700}.chapter-title{font-family:var(--font-display);letter-spacing:.01em;text-transform:uppercase;color:var(--color-text);overflow-wrap:anywhere;text-wrap:balance;margin:0;font-size:clamp(40px,4.4vw,64px);font-weight:400;line-height:.9;position:relative}.chapter-title:focus{outline:none}.chapter-title:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px}.chapter-title:after{content:"";background:var(--color-accent-fill);pointer-events:none;position:absolute;inset:.04em -.08em .02em;transform:scaleX(0)}.chapter-body{max-width:42ch;font-size:var(--text-xl);color:var(--color-text-muted);margin:0;line-height:1.6}.landing.reveals-armed .features[data-motion=scrub] .chapter-slate:not(.is-in,[data-shown]) :is(.chapter-num,.chapter-tag,.chapter-title-ink,.chapter-body){opacity:0}.features[data-motion=scrub] .chapter-slate.is-in:not([data-shown]) :is(.chapter-num,.chapter-tag){animation:arena-fade var(--dur-arrive) var(--ease-settle) backwards}.features[data-motion=scrub] .chapter-slate.is-in:not([data-shown]) .chapter-title-ink{animation:arena-ink-under-slab var(--dur-wipe) linear backwards}.features[data-motion=scrub] .chapter-slate.is-in:not([data-shown]) .chapter-title:after{animation:arena-slab-cross var(--dur-wipe) var(--ease-wipe) backwards}.features[data-motion=scrub] .chapter-slate.is-in:not([data-shown]) .chapter-body{animation:arena-fade var(--dur-arrive) var(--ease-settle) .38s backwards}.landing.reveals-armed .features[data-motion=scrub] .chapter-slate:not(.is-in,[data-shown])+.chapter-stage-slot{opacity:0}.features[data-motion=scrub] .chapter-slate.is-in:not([data-shown])+.chapter-stage-slot{animation:arena-fade var(--dur-arrive) var(--ease-settle) .24s backwards}@media (width<=860px){.features{--rundown-h:44px}.chapter{--chapter-h:calc(100svh - var(--chapter-top) + var(--run-svh) * 1svh)}.rundown-inner,.chapter-viewport{--landing-gutter:var(--space-4)}.features .features-intro{row-gap:var(--space-4);padding-block:var(--landing-section-y) var(--space-6);grid-template-columns:minmax(0,1fr)}.features-intro-title{font-size:clamp(44px,13vw,64px)}.features-intro-sub{font-size:var(--text-lg);grid-column:1;line-height:1.5}.chapter-viewport{height:calc(100svh - var(--chapter-top) - var(--sticky-cta-h,0px));align-content:stretch;align-items:start;gap:var(--space-4);padding-block:var(--space-4);grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.chapter-slate{gap:var(--space-2)}.chapter-slate-head{align-items:center;gap:var(--space-3);flex-direction:row}.chapter-num{font-size:28px}.chapter-title{font-size:clamp(28px,8vw,36px)}.chapter-body{font-size:var(--text-lg);line-height:1.5}}:is(.features[data-motion=still] .chapter,.chapter[data-motion=still]){contain-intrinsic-size:auto 720px;height:auto}:is(.features[data-motion=still],.chapter[data-motion=still]) .chapter-track{height:auto}:is(.features[data-motion=still],.chapter[data-motion=still]) .chapter-viewport{height:auto;padding-block:var(--space-8);grid-template-rows:auto;align-items:center;position:static}:is(.features[data-motion=still],.chapter[data-motion=still]) .chapter-stage-slot{height:clamp(360px,64svh,600px)}@media (prefers-reduced-motion:reduce){.features .chapter{contain-intrinsic-size:auto 720px;height:auto}.features .chapter-track{height:auto}.features .chapter-viewport{height:auto;padding-block:var(--space-8);grid-template-rows:auto;align-items:center;position:static}.features .chapter-stage-slot{height:clamp(360px,64svh,600px)}}.landing,.landing [data-theme=dark]{--font-body:"Barlow", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}.landing{font-family:var(--font-body);background:var(--color-bg);--landing-anchor-offset:calc(90px + var(--chrome-safe-top));--landing-nav-h:calc(68px + var(--chrome-safe-top));--landing-section-y:60px;--landing-gutter:28px;min-height:100%;overflow-x:clip}.landing-nav-inner,.landing-hero,.landing-loop-intro,.landing-ask-band,.rundown-inner,.chapter-viewport,.landing-recap,.landing-apps,.landing-pricing,.landing-cta,.landing-faq,.landing-footer{padding-inline:calc(var(--landing-gutter) + var(--safe-left)) calc(var(--landing-gutter) + var(--safe-right))}.landing.reveals-armed [data-reveal]{opacity:0;transition:opacity .7s var(--ease-settle) var(--reveal-delay,0s), translate .7s var(--ease-settle) var(--reveal-delay,0s), scale .7s var(--ease-settle) var(--reveal-delay,0s),  transform .25s var(--ease-settle), border-color .25s ease, box-shadow .25s ease}.landing.reveals-armed [data-reveal=rise]{translate:0 26px}.landing.reveals-armed [data-reveal=pop]{translate:0 14px;scale:.94}.landing.reveals-armed [data-reveal=trigger]{opacity:1;transition:none}.landing.reveals-armed [data-reveal].is-in{opacity:1;translate:none;scale:none}.landing section[id]{scroll-margin-top:var(--landing-anchor-offset)}.landing-nav{z-index:20;margin-bottom:calc(-1 * var(--landing-nav-h));background:0 0;border-bottom:1px solid #0000;transition:background .25s,box-shadow .25s,border-color .25s;position:sticky;top:0}.landing-nav.is-condensed{background:color-mix(in srgb, var(--color-surface) 82%, transparent);border-bottom-color:var(--color-border);-webkit-backdrop-filter:blur(8px);box-shadow:var(--shadow)}.landing-nav-inner{box-sizing:border-box;max-width:1120px;height:var(--landing-nav-h);padding-block:calc(14px + var(--chrome-safe-top)) 14px;justify-content:space-between;align-items:center;margin:0 auto;display:flex}.landing-brand{color:inherit;text-decoration:none}.landing-brand,.landing-nav .theme-toggle,.landing-nav-cta{position:relative}.landing-brand:after,.landing-nav .theme-toggle:after,.landing-nav-cta:after{content:"";width:max(100%,44px);height:max(100%,44px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.landing-nav-actions{align-items:center;gap:10px;display:flex}.landing-nav-cta{padding-left:var(--space-4);padding-right:var(--space-4);white-space:nowrap}.landing-nav-link{letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);border-radius:var(--radius-sm);padding:8px 10px;font-size:11px;font-weight:700;transition:color .15s,background .15s}.landing-nav-link:hover{color:var(--color-text);background:var(--color-surface-2)}@media (width<=560px){.landing-nav-link{display:none}.landing-nav-inner{--landing-gutter:var(--space-4)}.landing-nav-actions{gap:var(--space-2)}}@media (width<=389.98px){.landing-nav .brand-logo-titles{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.landing-hero{background:var(--color-bg);min-height:clamp(600px,94svh,940px);padding-block:calc(var(--landing-nav-h) + var(--space-6)) 0;grid-template-rows:1fr auto;display:grid;position:relative;overflow:hidden}.landing-hero-plate{z-index:0;display:block;position:absolute;inset:0}.landing-hero-img{object-fit:cover;object-position:66% 42%;width:100%;height:100%;animation:hero-img-settle 2.4s var(--ease-settle) forwards, hero-img-drift 36s ease-in-out 2.4s infinite alternate;display:block;transform:scale(1.08)}@keyframes hero-img-settle{to{transform:scale(1)}}@keyframes hero-img-drift{0%{translate:0;scale:1}to{translate:-1.5% -1%;scale:1.06}}.landing-hero-scrim{z-index:1;pointer-events:none;background:linear-gradient(180deg, color-mix(in srgb, var(--color-bg) 45%, transparent) 0%, transparent 22%, transparent 46%, color-mix(in srgb, var(--color-bg) 72%, transparent) 78%, color-mix(in srgb, var(--color-bg) 94%, transparent) 100%), linear-gradient(90deg, color-mix(in srgb, var(--color-bg) 62%, transparent) 0%, transparent 56%);position:absolute;inset:0}.landing-hero-inner{z-index:2;align-self:end;align-items:end;gap:var(--space-8);width:100%;max-width:1120px;padding-bottom:var(--space-7);grid-template-columns:minmax(0,1fr) auto;margin:0 auto;display:grid;position:relative}.landing-hero-copy{text-align:left;min-width:0}.landing-hero h1{font-family:var(--font-display);letter-spacing:.02em;color:var(--color-text);margin-bottom:var(--space-4);font-size:clamp(42px,8vw,124px);line-height:.94}.lh-line{margin-bottom:-.1em;padding-bottom:.1em;display:block;overflow:hidden}.lh-line-in{animation:lh-line-up .9s var(--ease-settle) 50ms forwards;text-transform:uppercase;display:block;transform:translateY(105%)}.lh-line:nth-child(2) .lh-line-in{animation-delay:.18s}@keyframes lh-line-up{to{transform:translateY(0)}}.landing-hero-accent{color:var(--color-accent);text-transform:uppercase}.lh-sweep{text-wrap:balance;color:var(--color-text);animation:1.1s step-end .55s forwards lh-sweep-ink;display:inline-block;position:relative}.lh-sweep:after{content:"";background:var(--color-accent-fill);clip-path:inset(0 100% 0 0);animation:lh-sweep-bar 1.1s var(--ease-settle) .55s forwards;pointer-events:none;position:absolute;inset:.06em -.06em .1em}@keyframes lh-sweep-bar{0%{clip-path:inset(0 100% 0 0)}48%{clip-path:inset(0)}to{clip-path:inset(0 0 0 100%)}}@keyframes lh-sweep-ink{0%,47%{color:var(--color-text)}48%,to{color:var(--color-accent)}}.landing-hero-sub{color:var(--color-text-muted);max-width:520px;margin:0 0 var(--space-6);opacity:0;animation:hero-rise .8s var(--ease-settle) .42s forwards;font-size:18px;line-height:1.6;transform:translateY(18px)}.landing-hero-category{color:var(--color-text);font-weight:600}.landing-hero-actions{opacity:0;animation:hero-rise .8s var(--ease-settle) .52s forwards;flex-wrap:wrap;align-items:center;gap:14px;display:flex;transform:translateY(18px)}@keyframes hero-rise{to{opacity:1;transform:none}}@supports (animation-timeline:scroll()){@media (prefers-reduced-motion:no-preference) and (width>=861px){.landing-hero-plate{animation:linear both hero-lag;animation-timeline:scroll(root);animation-range:0 100vh}}}@keyframes hero-lag{to{translate:0 90px}}.landing-hero-spec{z-index:2;border-top:1px solid var(--color-border);opacity:0;width:100%;max-width:1120px;animation:hero-rise .7s var(--ease-settle) .9s forwards;grid-template-columns:minmax(0,1.3fr) repeat(2,minmax(0,1fr));margin:0 auto;display:grid;position:relative}.landing-hero-spec-cell{padding:var(--space-4) var(--space-5) var(--space-5) 0;min-width:0}.landing-hero-spec-cell+.landing-hero-spec-cell{border-left:1px solid var(--color-border);padding-left:var(--space-5)}.landing-hero-spec dt{font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-text-dim);margin-bottom:var(--space-1);font-weight:700}.landing-hero-spec dd{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text);align-items:center;min-height:40px;margin:0;font-size:22px;line-height:1.1;display:flex}.landing-hero-spec .landing-hero-spec-platforms{gap:var(--space-2);flex-wrap:nowrap}.landing-hero-spec-store{flex:none;line-height:0;display:block}.landing-hero-spec-store img{width:auto;height:40px;display:block}.landing-hero-spec-web{color:#fff;height:40px;font-family:var(--font-body);letter-spacing:0;text-transform:none;background:#000;border:1px solid #a6a6a6;border-radius:7px;flex:none;align-items:center;gap:6px;padding:0 12px 0 10px;font-size:17px;font-weight:600;text-decoration:none;display:inline-flex}.landing-hero-spec-web:focus-visible,.landing-hero-spec-store:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:7px}@media (prefers-reduced-motion:reduce){.landing-hero *,.landing-hero :before,.landing-hero :after{transition:none!important;animation:none!important}.lh-sweep{color:var(--color-accent)}.lh-sweep:after{display:none}.lh-line-in,.landing-hero-sub,.landing-hero-actions,.landing-hero-spec{opacity:1;transform:none}.landing-hero-img{transform:none}}@media (width<=860px){.landing-hero{--hero-plate-h:clamp(560px, 92svh, 860px);min-height:var(--hero-plate-h);padding-top:calc(var(--landing-nav-h) + 18svh)}.landing-hero-plate,.landing-hero-scrim{height:var(--hero-plate-h);bottom:auto}.landing-hero-img{object-position:50% 0%}.landing-hero-scrim{background:linear-gradient(180deg, color-mix(in srgb, var(--color-bg) 45%, transparent) 0%, transparent 14%, color-mix(in srgb, var(--color-bg) 30%, transparent) 22%, color-mix(in srgb, var(--color-bg) 82%, transparent) 36%, color-mix(in srgb, var(--color-bg) 94%, transparent) 55%, var(--color-bg) 100%)}.landing-hero-inner{gap:var(--space-5);padding-bottom:var(--space-6);grid-template-columns:1fr}.landing-hero h1{font-size:clamp(42px,11vw,72px)}.landing-hero-sub{font-size:16px}}@media (width<=560px){.landing-hero-actions>*{flex:100%;justify-content:center}}@media (width<=1100px){.landing-hero-spec{grid-template-columns:1fr}.landing-hero-spec-cell{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;display:flex}.landing-hero-spec-cell+.landing-hero-spec-cell{border-left:0;border-top:1px solid var(--color-border);padding-left:0}.landing-hero-spec dt{flex-shrink:0;margin-bottom:0}.landing-hero-spec dd{justify-content:flex-end;min-height:0;font-size:18px}}@media (width<=560px){.landing-hero-spec-cell--platforms{align-items:flex-start;gap:var(--space-2);flex-direction:column}.landing-hero-spec .landing-hero-spec-platforms{grid-template-columns:auto auto;display:inline-grid}.landing-hero-spec-web{grid-column:1/-1;justify-content:center}}.landing-recap{max-width:1080px;padding-block:var(--landing-section-y);border-top:1px solid var(--color-border);margin:0 auto}.landing-recap-grid{gap:var(--space-3);flex-wrap:wrap;justify-content:center;max-width:840px;margin:0 auto;list-style:none;display:flex}.landing-rtag{align-items:center;gap:var(--space-2);font-size:var(--text-md);letter-spacing:.04em;color:var(--color-text);border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-pill);padding:var(--space-2) var(--space-4);transition:transform .25s var(--ease-settle), border-color .25s ease, box-shadow .25s ease;text-transform:uppercase;font-weight:600;display:flex}.landing-rtag:hover{border-color:var(--color-accent-dim);box-shadow:var(--shadow-accent);transform:translateY(-3px)}.landing-rtag--lit{border-color:var(--color-accent-fill);background:var(--color-accent-fill);color:var(--color-accent-on-fill)}.landing-rtag--lit .landing-rtag-tick{background:var(--color-accent-on-fill);color:var(--color-accent-fill)}.landing-recap-count{color:var(--color-accent);font-size:.92em}.landing-rtag-tick{background:var(--color-accent-fill);width:18px;height:18px;color:var(--color-accent-on-fill);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.landing-rtag-tick path{stroke-dasharray:26;stroke-dashoffset:0;transition:stroke-dashoffset .5s var(--ease-settle);transition-delay:calc(var(--reveal-delay,0s) + .26s)}.landing.reveals-armed .landing-rtag:not(.is-in) .landing-rtag-tick path{stroke-dashoffset:26px}@media (prefers-reduced-motion:reduce){.landing-rtag-tick path{stroke-dashoffset:0;transition:none}.landing-rtag:hover{transform:none}}.landing-section-label{font-size:var(--text-sm);letter-spacing:var(--tracking-label);color:var(--color-accent);text-align:center;text-transform:uppercase;margin-bottom:12px;font-weight:700}.landing-section-label--start{text-align:left}.landing-section-title{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);text-align:center;margin-bottom:var(--space-8);text-transform:uppercase;font-size:36px}.landing-apps{max-width:1080px;padding-block:var(--landing-section-y);border-top:1px solid var(--color-border);gap:var(--space-8);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;margin:0 auto;display:grid}.landing-apps-plate{aspect-ratio:4/5;border-radius:var(--radius-group);box-shadow:var(--shadow-card);background:var(--color-surface-3);overflow:hidden}.landing-apps-plate img{object-fit:cover;width:100%;height:100%;display:block}.landing-apps-copy{min-width:0}.landing-apps-title{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text);text-transform:uppercase;margin-bottom:var(--space-4);font-size:44px;line-height:1.02}.landing-apps-sub{font-size:var(--text-xl);color:var(--color-text-muted);max-width:48ch;margin-bottom:var(--space-6);line-height:1.6}.landing-apps-list{margin:0;padding:0;list-style:none}.landing-apps-row{align-items:center;gap:var(--space-4);min-height:64px;padding:var(--space-3) var(--space-5);grid-template-columns:auto minmax(0,1fr) auto;display:grid;position:relative}.landing-apps-row--store{--store-badge-height:40px}.landing-apps-row-badge{grid-column:2/-1;justify-self:end;line-height:0;display:block}.landing-apps-row-badge img{height:var(--store-badge-height);width:auto;display:block}.landing-apps-row-badge:after{content:"";position:absolute;inset:0}.landing-apps-row-badge:focus-visible{outline:none}.landing-apps-row-badge:focus-visible:after{outline:2px solid var(--color-accent);outline-offset:-2px;border-radius:var(--radius-ctl)}.landing-apps-row-name{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text);min-width:96px;font-size:22px;line-height:1}.landing-apps-row-note{font-size:var(--text-lg);color:var(--color-text-muted)}@media (width<=860px){.landing-apps{gap:var(--space-7);grid-template-columns:1fr}.landing-apps-plate{aspect-ratio:4/3}.landing-apps-plate img{object-position:50% 40%}.landing-apps-title{font-size:36px}.landing-apps-row{row-gap:var(--space-1);grid-template-columns:auto minmax(0,1fr)}.landing-apps-row .status-pill{grid-area:1/2;justify-self:end}.landing-apps-row-note{grid-area:2/1/auto/-1}}.landing-pricing{max-width:1080px;padding-block:var(--landing-section-y);border-top:1px solid var(--color-border);margin:0 auto}.landing.reveals-armed .landing-pricing-cards .pricing-tiers-card{opacity:0;transition:opacity .75s var(--ease-settle) var(--card-delay,0s), translate .75s var(--ease-settle) var(--card-delay,0s), transform .25s var(--ease-settle), border-color .2s ease, box-shadow .25s ease;translate:0 28px}.landing.reveals-armed .landing-pricing-cards.is-in .pricing-tiers-card{opacity:1;translate:none}.landing-pricing-cards .pricing-tiers-card:nth-child(2){--card-delay:.1s}.landing-pricing-cards .pricing-tiers-card:nth-child(3){--card-delay:.2s}.landing-pricing-cards .pricing-tiers-card:hover{box-shadow:var(--shadow-lg), var(--shadow-accent);transform:translateY(-4px)}@media (prefers-reduced-motion:reduce){.landing-pricing-cards .pricing-tiers-card:hover{transform:none}}.landing-cta{text-align:center;background:var(--color-bg);padding-block:128px;position:relative;overflow:hidden}.landing-cta-plate{z-index:0;object-fit:cover;object-position:50% 55%;width:100%;height:100%;display:block;position:absolute;inset:0}.landing-cta-scrim{z-index:1;pointer-events:none;background:radial-gradient(55% 65% at 50% 50%, color-mix(in srgb, var(--color-bg) 70%, transparent) 0%, color-mix(in srgb, var(--color-bg) 35%, transparent) 60%, transparent 100%), linear-gradient(180deg, color-mix(in srgb, var(--color-bg) 30%, transparent) 0%, transparent 30%, transparent 70%, color-mix(in srgb, var(--color-bg) 30%, transparent) 100%);position:absolute;inset:0}.landing-cta-inner{z-index:2;max-width:1080px;margin:0 auto;position:relative}.landing-cta h2{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);text-transform:uppercase;margin-bottom:12px;font-size:clamp(44px,6vw,72px);line-height:1}.landing-cta p{color:var(--color-text-muted);margin-bottom:32px;font-size:15px}.landing-cta-btn{position:relative;overflow:hidden}.landing-cta-btn:after{content:"";pointer-events:none;background:linear-gradient(100deg,#0000 35%,#ffffff8c 50%,#0000 65%);position:absolute;inset:0;transform:translate(-110%)}.landing-cta-btn:hover:after,.landing-cta-btn:focus-visible:after{animation:.75s ease-out landing-cta-sheen}@keyframes landing-cta-sheen{to{transform:translate(110%)}}@media (prefers-reduced-motion:reduce){.landing-cta-btn:after{display:none}}@media (width<=860px){.landing-cta{padding-block:96px}}.landing-footer-copyright{text-transform:uppercase}.landing-footer{border-top:1px solid var(--color-border);text-align:center;color:var(--color-text-muted);letter-spacing:.04em;flex-direction:column;align-items:center;gap:10px;padding-block:24px;font-size:13px;display:flex}.landing-footer .legal-footer-links{row-gap:0}.landing-footer .legal-footer-link{color:var(--color-text-muted);align-items:center;min-height:44px;display:inline-flex}.landing-footer-links{justify-content:center;gap:var(--space-1) var(--space-2);flex-wrap:wrap;display:flex}.landing-footer-link{letter-spacing:.14em;text-transform:uppercase;min-height:44px;color:var(--color-text-muted);border-radius:var(--radius-sm);align-items:center;padding:0 10px;font-size:11px;font-weight:700;transition:color .15s,background .15s;display:inline-flex}.landing-footer-link:hover{color:var(--color-accent);background:var(--color-accent-ghost)}.landing-faq{max-width:880px;padding-block:var(--landing-section-y);margin:0 auto}.landing-faq-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.landing-faq-item{position:relative}.landing-faq-details{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:border-color .2s,box-shadow .2s;position:relative;overflow:hidden}.landing-faq-details[open]{border-color:var(--color-accent-dim);box-shadow:var(--shadow-accent)}.landing-faq-details:not([open]):hover{border-color:var(--color-text-dim)}.landing-faq-body{overflow:hidden}.landing-faq-details[open]:before{content:"";background:var(--color-accent-fill);border-radius:var(--radius-pill);pointer-events:none;height:2px;position:absolute;top:-1px;left:24px;right:24px}.landing-faq-summary{cursor:pointer;-webkit-user-select:none;user-select:none;outline:none;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:22px 24px;list-style:none;transition:background .15s;display:grid}.landing-faq-summary::-webkit-details-marker{display:none}.landing-faq-summary:hover{background:var(--color-accent-ghost)}.landing-faq-summary:focus-visible{background:var(--color-accent-ghost);box-shadow:inset 0 0 0 2px var(--color-accent-dim)}.landing-faq-num{font-family:var(--font-display);letter-spacing:.14em;color:var(--color-text-muted);background:var(--color-surface-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);text-align:center;min-width:32px;padding:4px 9px;font-size:13px;transition:color .15s,border-color .15s,background .15s}.landing-faq-details[open] .landing-faq-num{color:var(--color-accent-on-fill);background:var(--color-accent-fill);border-color:var(--color-accent-fill)}.landing-faq-question{font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text);font-size:15px;font-weight:600;line-height:1.35}.landing-faq-toggle{border:1px solid var(--color-control-edge);width:32px;height:32px;color:var(--color-text-muted);background:var(--color-surface-2);border-radius:50%;place-items:center;transition:color .15s,border-color .15s,background .15s,transform .2s;display:grid}.landing-faq-details[open] .landing-faq-toggle{color:var(--color-accent-on-fill);background:var(--color-accent-fill);border-color:var(--color-accent-fill);transform:rotate(180deg)}.landing-faq-toggle-close,.landing-faq-details[open] .landing-faq-toggle-open{display:none}.landing-faq-details[open] .landing-faq-toggle-close{display:block}.landing-faq-answer{color:var(--color-text-muted);max-width:68ch;padding:0 24px 24px 74px;font-size:15px;line-height:1.65}@media (width<=640px){.landing-faq{--landing-gutter:var(--space-6)}.landing-faq-summary{grid-template-columns:auto 1fr auto;gap:12px;padding:18px}.landing-faq-question{letter-spacing:.04em;font-size:14px}.landing-faq-answer{padding:0 18px 20px;font-size:14px}.landing-faq-details[open]:before{left:18px;right:18px}}.root-error-boundary{padding:calc(var(--space-5) + var(--safe-top)) calc(var(--space-5) + var(--safe-right)) calc(var(--space-5) + var(--safe-bottom)) calc(var(--space-5) + var(--safe-left));background:var(--color-bg);color:var(--color-text);z-index:9999;place-items:center;display:grid;position:fixed;inset:0}.root-error-boundary-card{align-items:flex-start;gap:var(--space-4);width:100%;max-width:420px;padding:var(--space-6);background:var(--color-surface);border:1px solid var(--color-border);border-left:3px solid var(--color-accent);flex-direction:column;display:flex}.root-error-boundary-title{font-family:var(--font-display);letter-spacing:.02em;text-transform:uppercase;color:var(--color-text);margin:0;font-size:42px;line-height:1}.root-error-boundary-body{font-size:var(--text-md);color:var(--color-text-muted);margin:0;line-height:1.5}@media (width>=720px){.root-error-boundary-card{max-width:480px;padding:var(--space-7)}.root-error-boundary-title{font-size:56px}}
