/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.\!start{inset-inline-start:var(--spacing)!important}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--font-sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--background:#090d10;--surface:#10161a;--surface-raised:#161d22;--surface-subtle:#0d1215;--surface-hover:#1c252b;--text-primary:#f4f2e9;--text-secondary:#a9b2b8;--text-tertiary:#87949c;--border:#263138;--focus:#d8ff73;--surface-page:var(--background);--surface-card:var(--surface);--surface-input:var(--surface-subtle);--border-subtle:var(--border)}@supports (color:color-mix(in lab, red, red)){:root{--border-subtle:color-mix(in srgb, var(--border) 72%, transparent)}}:root{--border-default:var(--border);--text-muted:var(--text-secondary);--focus-ring:var(--focus);--primary:#bafc28;--primary-foreground:#101606;--success:#72df9d;--warning:#f5b942;--danger:#ff6767;--info:#33c7e8;--feature-training:#bafc28;--feature-nutrition:#74d68b;--feature-hydration:#41aef4;--feature-fasting:#f5b942;--feature-mood:#b07bff;--feature-journal:#c894ff;--feature-reflection:#c894ff;--feature-sleep:#788cff;--feature-meditation:#a787ff;--feature-weight:#4fd1b5;--feature-steps:#56b5ff;--feature-heart:#ff6767;--feature-route:#2bd5ee;--feature-routes:var(--feature-route);--feature-plans:#5f9dff;--reflection-understanding:#b07bff;--reflection-implications:#56b5ff;--reflection-application:#72df9d;--training:var(--feature-training);--nutrition:var(--feature-nutrition);--hydration:var(--feature-hydration);--fasting:var(--feature-fasting);--mood:var(--feature-mood);--reflection:var(--feature-reflection);--sleep:var(--feature-sleep);--meditation:var(--feature-meditation);--route:var(--feature-route);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--control-height:46px;--touch-target:44px;--icon-sm:1rem;--icon-md:1.25rem;--icon-lg:1.5rem;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-pill:999px;--shadow:0 20px 70px #0000003d;--sidebar-width:244px;--topbar-height:92px;--content-max:1560px;--motion-fast:.15s;--motion-base:.24s;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:var(--font-sans)}:root[data-theme=light]{--background:#f2f1eb;--surface:#fff;--surface-raised:#fff;--surface-subtle:#e9ece9;--surface-hover:#e3e8e3;--text-primary:#171c1a;--text-secondary:#56625e;--text-tertiary:#79847f;--border:#d7ddd9;--primary:#78b800;--primary-foreground:#fff;--focus:#436b00;--shadow:0 18px 48px #1c262117;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:light){:root[data-theme=system]{--background:#f2f1eb;--surface:#fff;--surface-raised:#fff;--surface-subtle:#e9ece9;--surface-hover:#e3e8e3;--text-primary:#171c1a;--text-secondary:#56625e;--text-tertiary:#79847f;--border:#d7ddd9;--primary:#78b800;--primary-foreground:#fff;--focus:#436b00;--shadow:0 18px 48px #1c262117;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}:root[data-contrast=high]{--border:#6d7a81;--text-secondary:var(--text-primary)}:root[data-density=compact]{--space-6:1rem;--space-8:1.4rem;--topbar-height:76px}:root[data-density=spacious]{--space-6:2rem;--space-8:2.75rem}*{box-sizing:border-box}html{background:var(--background);scroll-behavior:smooth;min-width:320px}body{background:var(--background);color:var(--text-primary);font-family:inherit;font-size:1rem;font-weight:var(--weight-regular);min-height:100dvh;margin:0;line-height:1.5}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1,h2,h3,strong,b{letter-spacing:-.025em}h1,h2,h3{font-weight:var(--weight-bold)}h1{font-size:clamp(2rem,4vw,3.5rem);line-height:1.02}h2{margin-bottom:.55rem;font-size:clamp(1.6rem,3vw,2.5rem);line-height:1.05}h3{margin-bottom:.45rem;font-size:1.08rem}p{color:var(--text-secondary);line-height:1.6}svg{flex:none;width:1.15rem;height:1.15rem}::selection{background:var(--primary);color:var(--primary-foreground)}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.skip-link{z-index:200;background:var(--primary);color:var(--primary-foreground);border-radius:var(--radius-sm);font-weight:var(--weight-bold);padding:.75rem 1rem;position:fixed;top:10px;left:10px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.muted{color:var(--text-secondary)}.fine-print,small{color:var(--text-tertiary);line-height:1.45}.eyebrow{color:var(--primary);font-size:.69rem;font-weight:var(--weight-bold);letter-spacing:.16em;text-transform:uppercase;margin-bottom:.55rem;display:block}.tag{border:1px solid var(--border);width:max-content;color:var(--text-secondary);font-size:.68rem;font-weight:var(--weight-semibold);text-transform:capitalize;border-radius:99px;align-items:center;padding:.27rem .55rem;display:inline-flex}.app-frame{min-height:100dvh}.sidebar{width:var(--sidebar-width);border-right:1px solid var(--border);background:var(--background);padding:1.25rem 1rem;position:fixed;inset:0 auto 0 0}@supports (color:color-mix(in lab, red, red)){.sidebar{background:color-mix(in srgb, var(--background) 95%, transparent)}}.sidebar{z-index:60;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);flex-direction:column;display:flex}.brand{align-items:center;gap:.8rem;min-height:54px;padding:.4rem .55rem 1rem;display:flex}.brand>div{flex-direction:column;display:flex}.brand strong,.onboarding-brand strong,.launch-screen>strong{letter-spacing:.16em;font-size:1.18rem}.brand small{font-size:.67rem}.brand-mark{flex-direction:column;justify-content:center;gap:3px;width:30px;height:30px;display:flex}.brand-mark i{background:var(--primary);border-radius:2px;height:5px;display:block}.brand-mark i:nth-child(2){width:82%;margin-left:9%}.brand-mark i:nth-child(3){width:64%;margin-left:18%}.sidebar-close{margin-left:auto;display:none!important}.nav-list{gap:.2rem;display:grid}.nav-item{min-height:43px;color:var(--text-secondary);font-weight:var(--weight-semibold);transition:background var(--motion-fast), color var(--motion-fast);border-radius:12px;align-items:center;gap:.85rem;padding:.65rem .8rem;font-size:.88rem;display:flex}.nav-item:hover{background:var(--surface-hover);color:var(--text-primary)}.nav-item.active{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.nav-item.active{background:color-mix(in srgb, var(--primary) 13%, var(--surface))}}.nav-item.active{color:var(--text-primary);box-shadow:inset 3px 0 var(--primary)}.nav-item.active svg{color:var(--primary)}.sidebar-divider{background:var(--border);height:1px;margin:.8rem}.nav-list.secondary{margin-bottom:1rem}.local-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-subtle);margin-top:auto;padding:.85rem;font-size:.74rem}.local-card p{margin:.35rem 0 0;font-size:.7rem;line-height:1.45}.status-dot{background:var(--success);width:7px;height:7px;box-shadow:0 0 0 4px var(--success);border-radius:50%;margin-right:.4rem;display:inline-block}@supports (color:color-mix(in lab, red, red)){.status-dot{box-shadow:0 0 0 4px color-mix(in srgb, var(--success) 15%, transparent)}}.main-column{min-height:100dvh;margin-left:var(--sidebar-width)}.pwa-banner{z-index:35;top:calc(var(--topbar-height) + .75rem);border:1px solid var(--primary);justify-content:space-between;align-items:center;gap:1rem;width:calc(100% - 2rem);max-width:720px;margin:.75rem auto 0;padding:.75rem .9rem;display:flex;position:sticky}@supports (color:color-mix(in lab, red, red)){.pwa-banner{border:1px solid color-mix(in srgb, var(--primary) 40%, var(--border))}}.pwa-banner{background:var(--surface-raised);border-radius:15px}@supports (color:color-mix(in lab, red, red)){.pwa-banner{background:color-mix(in srgb, var(--surface-raised) 94%, transparent)}}.pwa-banner{box-shadow:var(--shadow);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.pwa-banner>div{align-items:center;gap:.65rem;display:flex}.pwa-banner>div:first-child>svg{color:var(--primary)}.pwa-banner span{display:grid}.pwa-banner small{font-size:.65rem}.topbar{height:var(--topbar-height);z-index:40;background:var(--background);align-items:center;gap:1rem;padding:1rem clamp(1.2rem,3vw,3rem);display:flex;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.topbar{background:color-mix(in srgb, var(--background) 88%, transparent)}}.topbar{border-bottom:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.topbar{border-bottom:1px solid color-mix(in srgb, var(--border) 70%, transparent)}}.topbar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.page-heading{flex:1;min-width:0}.page-heading>span{color:var(--text-tertiary);font-size:.7rem;font-weight:650}.page-heading h1{margin:.1rem 0 0;font-size:1.15rem}.topbar-actions{align-items:center;gap:.65rem;display:flex}.menu-button{display:none!important}.icon-button{width:var(--touch-target);height:var(--touch-target);cursor:pointer;color:var(--text-secondary);background:0 0;border:0;border-radius:50%;place-items:center;display:inline-grid}.icon-button:hover{background:var(--surface-hover);color:var(--text-primary)}.notification-button{position:relative}.notification-button b{background:var(--primary);min-width:17px;height:17px;color:var(--primary-foreground);border-radius:10px;place-items:center;font-size:.58rem;display:grid;position:absolute;top:0;right:0}.save-indicator{border:1px solid var(--border);color:var(--text-tertiary);font-size:.69rem;font-weight:var(--weight-semibold);border-radius:99px;align-items:center;gap:.35rem;padding:.4rem .65rem;display:inline-flex}.save-indicator svg{width:.85rem}.save-saved{color:var(--success)}.save-failed{color:var(--danger)}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#main-content{width:min(100%, var(--content-max));margin:0 auto;padding:clamp(1.25rem,3vw,3rem)}.bottom-nav,.scrim{display:none}.button{cursor:pointer;min-height:42px;font-weight:var(--weight-bold);transition:transform var(--motion-fast), background var(--motion-fast), border-color var(--motion-fast);border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:.5rem;padding:.7rem 1rem;font-size:.82rem;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{opacity:.45;cursor:not-allowed}.button-primary{background:var(--primary);color:var(--primary-foreground);box-shadow:0 8px 24px var(--primary)}@supports (color:color-mix(in lab, red, red)){.button-primary{box-shadow:0 8px 24px color-mix(in srgb, var(--primary) 15%, transparent)}}.button-primary:hover:not(:disabled){background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.button-primary:hover:not(:disabled){background:color-mix(in srgb, var(--primary) 88%, white)}}.button-secondary{background:var(--surface-raised);border-color:var(--border);color:var(--text-primary)}.button-secondary:hover:not(:disabled){border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.button-secondary:hover:not(:disabled){border-color:color-mix(in srgb, var(--primary) 45%, var(--border))}}.button-ghost{color:var(--text-secondary);background:0 0}.button-ghost:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.button-danger{background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.button-danger{background:color-mix(in srgb, var(--danger) 16%, var(--surface))}}.button-danger{border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.button-danger{border-color:color-mix(in srgb, var(--danger) 50%, var(--border))}}.button-danger{color:var(--danger)}.text-button{color:var(--info);cursor:pointer;background:0 0;border:0;font-size:.76rem;text-decoration:underline}.card{background:linear-gradient(145deg, var(--surface-raised), var(--surface))}@supports (color:color-mix(in lab, red, red)){.card{background:linear-gradient(145deg, color-mix(in srgb, var(--surface-raised) 96%, white 1%), var(--surface))}}.card{border:1px solid var(--border);border-radius:var(--radius-lg);padding:clamp(1rem,2vw,1.5rem);box-shadow:0 1px #ffffff06}.section-header{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.1rem;display:flex}.section-header h2{margin:0;font-size:1.25rem}.section-header .eyebrow{margin-bottom:.35rem}.page-stack{gap:clamp(var(--space-6), 2.4vw, var(--space-10));grid-template-columns:minmax(0,1fr);display:grid}.page-stack>*{min-width:0}.group-icon,.challenge-icon,.fast-icon,.source-icon{background:var(--primary);border-radius:24px;place-items:center;width:74px;height:74px;display:grid}@supports (color:color-mix(in lab, red, red)){.group-icon,.challenge-icon,.fast-icon,.source-icon{background:color-mix(in srgb, var(--primary) 12%, var(--surface))}}.group-icon,.challenge-icon,.fast-icon,.source-icon{color:var(--primary);border:1px solid var(--primary)}@supports (color:color-mix(in lab, red, red)){.group-icon,.challenge-icon,.fast-icon,.source-icon{border:1px solid color-mix(in srgb, var(--primary) 30%, var(--border))}}.group-icon svg,.challenge-icon svg,.fast-icon svg,.source-icon svg{width:2rem;height:2rem}.subnav{border:1px solid var(--border);background:var(--surface-subtle);border-radius:15px;gap:.35rem;width:max-content;max-width:100%;padding:.35rem;display:flex;overflow-x:auto}.subnav button{min-width:max-content;color:var(--text-secondary);font-size:.78rem;font-weight:var(--weight-semibold);cursor:pointer;background:0 0;border:0;border-radius:11px;align-items:center;gap:.45rem;padding:.65rem .85rem;display:inline-flex}.subnav button.active{background:var(--surface-raised);color:var(--text-primary);box-shadow:0 2px 10px #00000026}.subnav button.active svg{color:var(--primary)}.field{color:var(--text-secondary);gap:.42rem;min-width:0;font-size:.76rem;font-weight:700;display:grid}.field small{font-weight:500}input,select,textarea{width:100%;min-height:var(--control-height);border:1px solid var(--border);color:var(--text-primary);background:var(--surface-input);border-radius:11px;padding:.68rem .78rem}.numeric-input-shell{width:100%;display:block;position:relative}.numeric-input-shell input{padding-right:3.4rem}.numeric-input-unit{color:var(--text-tertiary);font-size:.75rem;font-weight:var(--weight-semibold);pointer-events:none;position:absolute;top:50%;right:.8rem;transform:translateY(-50%)}textarea{resize:vertical}input:hover,select:hover,textarea:hover{border-color:var(--text-tertiary)}@supports (color:color-mix(in lab, red, red)){input:hover,select:hover,textarea:hover{border-color:color-mix(in srgb, var(--text-tertiary) 55%, var(--border))}}input:focus,select:focus,textarea:focus{border-color:var(--focus);outline:2px solid var(--focus)}@supports (color:color-mix(in lab, red, red)){input:focus,select:focus,textarea:focus{outline:2px solid color-mix(in srgb, var(--focus) 18%, transparent)}}.rounded-select{width:100%;min-width:0;position:relative}.native-select-proxy{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;min-height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.rounded-select-trigger{width:100%;min-height:var(--control-height);border:1px solid var(--border);color:var(--text-primary);background:var(--surface-subtle);text-align:left;cursor:pointer;border-radius:18px;justify-content:space-between;align-items:center;gap:.75rem;padding:.68rem .9rem;display:flex}.rounded-select-trigger:hover{border-color:var(--text-tertiary)}@supports (color:color-mix(in lab, red, red)){.rounded-select-trigger:hover{border-color:color-mix(in srgb, var(--text-tertiary) 55%, var(--border))}}.rounded-select-trigger:focus-visible,.rounded-select[data-open] .rounded-select-trigger{border-color:var(--focus);outline:2px solid var(--focus)}@supports (color:color-mix(in lab, red, red)){.rounded-select-trigger:focus-visible,.rounded-select[data-open] .rounded-select-trigger{outline:2px solid color-mix(in srgb, var(--focus) 18%, transparent)}}.rounded-select-trigger:disabled{opacity:.55;cursor:not-allowed}.rounded-select-trigger svg{width:1rem;height:1rem;transition:transform var(--motion-fast);flex:none}.rounded-select[data-open] .rounded-select-trigger svg{transform:rotate(180deg)}.rounded-select-menu{z-index:30;border:1px solid var(--text-tertiary);gap:.2rem;width:100%;max-height:260px;padding:.42rem;display:grid;position:absolute;top:calc(100% + .5rem);left:0;overflow-y:auto}@supports (color:color-mix(in lab, red, red)){.rounded-select-menu{border:1px solid color-mix(in srgb, var(--text-tertiary) 45%, var(--border))}}.rounded-select-menu{background:var(--surface-raised);animation:select-menu-in var(--motion-fast);border-radius:20px;box-shadow:0 18px 55px #00000061}.rounded-select-option{width:100%;min-height:40px;color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:14px;justify-content:space-between;align-items:center;gap:.75rem;padding:.62rem .75rem;display:flex}.rounded-select-option:hover,.rounded-select-option:focus-visible{background:var(--surface-hover);outline:0}.rounded-select-option[aria-selected=true]{color:var(--primary);background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.rounded-select-option[aria-selected=true]{background:color-mix(in srgb, var(--primary) 12%, var(--surface))}}.rounded-select-option:disabled{opacity:.45;cursor:not-allowed}.rounded-select-option svg{width:1rem;height:1rem}@keyframes select-menu-in{0%{opacity:0;transform:translateY(-5px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}input[type=checkbox]{appearance:none;background:var(--surface-subtle);cursor:pointer;width:42px;height:24px;min-height:24px;transition:background var(--motion-fast);border-radius:99px;padding:2px}input[type=checkbox]:after{content:"";background:var(--text-tertiary);width:18px;height:18px;transition:transform var(--motion-fast);border-radius:50%;display:block}input[type=checkbox]:checked{background:var(--primary)}input[type=checkbox]:checked:after{background:var(--primary-foreground);transform:translate(17px)}input[type=range]{min-height:26px;accent-color:var(--route);border:0;padding:0}.form-stack{gap:1rem;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.input-action{align-items:end;gap:.6rem;display:flex}.input-action>.field,.input-action>input{flex:1}.input-with-icon{position:relative}.input-with-icon svg{color:var(--text-tertiary);position:absolute;top:50%;left:.8rem;transform:translateY(-50%)}.input-with-icon input{padding-left:2.5rem}.choice-grid{flex-wrap:wrap;gap:.5rem;display:flex}.choice{border:1px solid var(--border);background:var(--surface-subtle);cursor:pointer;border-radius:11px;align-items:center;gap:.35rem;padding:.65rem .8rem;font-size:.75rem;display:inline-flex}.choice.active{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.choice.active{border-color:color-mix(in srgb, var(--primary) 50%, var(--border))}}.choice.active{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.choice.active{background:color-mix(in srgb, var(--primary) 10%, var(--surface))}}.choice svg{color:var(--primary)}fieldset{border:0;margin:0;padding:0}legend{color:var(--text-secondary);margin-bottom:.55rem;font-size:.76rem;font-weight:700}.error-summary{border:1px solid var(--danger);padding:.7rem .85rem}@supports (color:color-mix(in lab, red, red)){.error-summary{border:1px solid color-mix(in srgb, var(--danger) 55%, var(--border))}}.error-summary{background:var(--danger);border-radius:10px}@supports (color:color-mix(in lab, red, red)){.error-summary{background:color-mix(in srgb, var(--danger) 10%, var(--surface))}}.error-summary{color:var(--danger)}.field-error{color:var(--danger)!important}.status-message{background:var(--info);border-radius:10px;padding:.7rem 1rem}@supports (color:color-mix(in lab, red, red)){.status-message{background:color-mix(in srgb, var(--info) 9%, var(--surface))}}.status-message{border:1px solid var(--info)}@supports (color:color-mix(in lab, red, red)){.status-message{border:1px solid color-mix(in srgb, var(--info) 30%, var(--border))}}.status-message{color:var(--text-secondary);font-size:.77rem}.notice{border:1px solid var(--info);gap:.8rem;padding:.9rem 1rem;display:flex}@supports (color:color-mix(in lab, red, red)){.notice{border:1px solid color-mix(in srgb, var(--info) 35%, var(--border))}}.notice{border-radius:var(--radius-md);background:var(--info)}@supports (color:color-mix(in lab, red, red)){.notice{background:color-mix(in srgb, var(--info) 7%, var(--surface))}}.notice>svg{color:var(--info);margin-top:.1rem}.notice strong{font-size:.8rem;display:block}.notice p{margin:.2rem 0 0;font-size:.75rem}.notice-warning{border-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.notice-warning{border-color:color-mix(in srgb, var(--warning) 40%, var(--border))}}.notice-warning{background:var(--warning)}@supports (color:color-mix(in lab, red, red)){.notice-warning{background:color-mix(in srgb, var(--warning) 7%, var(--surface))}}.notice-warning>svg{color:var(--warning)}.notice-danger{border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.notice-danger{border-color:color-mix(in srgb, var(--danger) 40%, var(--border))}}.notice-danger{background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.notice-danger{background:color-mix(in srgb, var(--danger) 7%, var(--surface))}}.notice-danger>svg{color:var(--danger)}.empty-state{text-align:center;border:1px dashed var(--border);border-radius:var(--radius-md);align-content:center;place-items:center;min-height:190px;padding:1.5rem;display:grid}.empty-state h3{margin:.7rem 0 .25rem}.empty-state p{max-width:440px;font-size:.8rem}.empty-icon{width:42px;height:42px;color:var(--primary);background:var(--primary);border-radius:50%;place-items:center;display:grid}@supports (color:color-mix(in lab, red, red)){.empty-icon{background:color-mix(in srgb, var(--primary) 10%, var(--surface))}}.metric{gap:.18rem;min-width:0;display:grid}.metric>span{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.08em;font-size:.67rem}.metric strong{overflow-wrap:anywhere;font-size:clamp(1.05rem,2.5vw,1.5rem)}.metric small{font-size:.66rem}.metric-primary strong{color:var(--primary)}.metric-info strong{color:var(--info)}.metric-warning strong{color:var(--warning)}.metric-danger strong{color:var(--danger)}.metric-training strong{color:var(--training)}.metric-success strong{color:var(--success)}.metric-route strong{color:var(--route)}.metric-row{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:1.25rem;display:grid}.progress-wrap{gap:.4rem;display:grid}.progress-copy{color:var(--text-secondary);justify-content:space-between;gap:1rem;font-size:.69rem;display:flex}.progress-track{background:var(--surface-subtle);border-radius:99px;width:100%;height:7px;overflow:hidden}.progress-bar{border-radius:inherit;background:var(--primary);height:100%;transition:width var(--motion-base);display:block}.tone-training{--tone:var(--training)}.tone-nutrition{--tone:var(--nutrition)}.tone-hydration{--tone:var(--hydration)}.tone-fasting{--tone:var(--fasting)}.tone-mood{--tone:var(--mood)}.tone-reflection{--tone:var(--reflection)}.tone-sleep{--tone:var(--sleep)}.tone-meditation{--tone:var(--meditation)}.tone-route{--tone:var(--route)}.tone-primary{--tone:var(--primary)}.tone-danger{--tone:var(--danger)}.tone-info{--tone:var(--info)}.tone-warning{--tone:var(--warning)}.progress-bar.tone-training,.progress-bar.tone-primary{background:var(--primary)}.progress-bar.tone-hydration{background:var(--hydration)}.progress-bar.tone-fasting{background:var(--fasting)}.progress-bar.tone-nutrition{background:var(--nutrition)}.dialog-overlay{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:fade-in var(--motion-fast);background:#000000ad;position:fixed;inset:0}.dialog-content{z-index:101;background:var(--surface-raised);border:1px solid var(--border);width:min(92vw,640px);max-height:min(88dvh,850px);box-shadow:var(--shadow);animation:dialog-in var(--motion-base);border-radius:24px;padding:1.35rem;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%)}.dialog-heading{justify-content:space-between;gap:1rem;margin-bottom:1.2rem;display:flex}.dialog-heading h2{margin-bottom:.25rem;font-size:1.3rem}.dialog-heading p{margin-bottom:0;font-size:.76rem}.dialog-toolbar{justify-content:flex-end;margin-bottom:.75rem;display:flex}@keyframes fade-in{0%{opacity:0}}@keyframes dialog-in{0%{opacity:0;transform:translate(-50%,-47%)scale(.98)}}.responsive-card-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));display:grid}.quick-action-card{--tone:var(--primary);align-items:center;gap:var(--space-3);border:1px solid var(--border-default);border-radius:var(--radius-md);background:linear-gradient(145deg, var(--tone), var(--surface-card));grid-template-columns:auto minmax(0,1fr) auto;min-width:0;min-height:120px;display:grid;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.quick-action-card{background:linear-gradient(145deg, color-mix(in srgb, var(--tone) 7%, var(--surface-raised)), var(--surface-card))}}.quick-action-card{padding:var(--space-4);cursor:pointer;text-align:left;transition:border-color var(--motion-fast), transform var(--motion-fast), background var(--motion-fast)}.quick-action-card:hover{border-color:var(--tone)}@supports (color:color-mix(in lab, red, red)){.quick-action-card:hover{border-color:color-mix(in srgb, var(--tone) 44%, var(--border))}}.quick-action-card:hover{transform:translateY(-2px)}.quick-action-card:after{content:"";background:var(--tone);border-radius:50%;width:84px;height:84px;position:absolute;top:-36px;right:-36px}@supports (color:color-mix(in lab, red, red)){.quick-action-card:after{background:color-mix(in srgb, var(--tone) 14%, transparent)}}.quick-action-card:after{pointer-events:none}.quick-action-icon{border-radius:var(--radius-sm);background:var(--tone);place-items:center;width:42px;height:42px;display:grid}@supports (color:color-mix(in lab, red, red)){.quick-action-icon{background:color-mix(in srgb, var(--tone) 13%, transparent)}}.quick-action-icon{color:var(--tone)}.quick-action-icon svg{width:var(--icon-md);height:var(--icon-md)}.quick-action-copy{gap:var(--space-1);min-width:0;display:grid}.quick-action-copy strong{font-size:.875rem;font-weight:var(--weight-semibold);overflow-wrap:anywhere}.quick-action-copy small{font-weight:var(--weight-regular)}.quick-action-arrow{width:var(--icon-sm);height:var(--icon-sm);color:var(--text-tertiary)}.quick-action-card.is-compact{min-height:92px;padding:var(--space-3)}.notification-list{gap:.5rem;display:grid}.notification-list article{border:1px solid var(--border);background:var(--primary);border-radius:12px;justify-content:space-between;gap:1rem;padding:.8rem;display:flex}@supports (color:color-mix(in lab, red, red)){.notification-list article{background:color-mix(in srgb, var(--primary) 4%, var(--surface))}}.notification-list article.read{opacity:.65;background:var(--surface)}.notification-list p{margin:.2rem 0;font-size:.74rem}.notification-list article>div:last-child{align-items:start;gap:.4rem;display:flex}.notification-list article button{color:var(--info);cursor:pointer;background:0 0;border:0;font-size:.67rem}.launch-screen{background:radial-gradient(circle at 50% 45%, var(--primary), transparent 30%);align-content:center;place-items:center;gap:.8rem;min-height:100dvh;display:grid}@supports (color:color-mix(in lab, red, red)){.launch-screen{background:radial-gradient(circle at 50% 45%, color-mix(in srgb, var(--primary) 8%, transparent), transparent 30%)}}.launch-screen .brand-mark{width:48px;height:48px}.launch-screen p{font-size:.75rem}.auth-gate{background:var(--background);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{border:1px solid var(--border);background:var(--surface);border-radius:24px;width:min(100%,440px);padding:36px;box-shadow:0 24px 70px #00000047}.auth-brand{letter-spacing:.16em;align-items:center;gap:12px;margin-bottom:28px;display:flex}.auth-card h1{margin:0 0 12px}.auth-card p{color:var(--text-secondary)}.auth-action{width:100%;margin-top:20px}.auth-error{color:var(--danger)!important}.auth-session-control{z-index:100;border:1px solid var(--border);background:var(--surface);border-radius:999px;align-items:center;gap:10px;max-width:min(460px,100vw - 48px);padding:8px 10px 8px 14px;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 16px 42px #0000003d}.auth-session-control span{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.auth-session-control button{border:1px solid var(--border);color:var(--text-primary);background:0 0;border-radius:999px;flex:none;padding:8px 12px}.onboarding-shell{background:radial-gradient(circle at 12% 15%, var(--primary), transparent 28%), var(--background);grid-template-columns:.8fr 1.2fr;min-height:100dvh;display:grid}@supports (color:color-mix(in lab, red, red)){.onboarding-shell{background:radial-gradient(circle at 12% 15%, color-mix(in srgb, var(--primary) 13%, transparent), transparent 28%), var(--background)}}.onboarding-brand{align-items:flex-start;gap:.8rem;padding:2rem;display:flex}.onboarding-panel{background:var(--surface);border-left:1px solid var(--border);flex-direction:column;justify-content:center;justify-self:end;width:min(100%,820px);min-height:100dvh;padding:clamp(1.5rem,6vw,5rem);display:flex;position:relative}.onboarding-progress{grid-template-columns:repeat(4,1fr);gap:.35rem;display:grid;position:absolute;top:2rem;left:clamp(1.5rem,6vw,5rem);right:clamp(1.5rem,6vw,5rem)}.onboarding-progress span{background:var(--border);border-radius:2px;height:3px}.onboarding-progress span.active{background:var(--primary)}.onboarding-step{gap:1rem;display:grid}.onboarding-step h1{max-width:650px;margin:0;font-size:clamp(2.2rem,5vw,4.5rem);line-height:.98}.privacy-points{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.privacy-points>div{background:var(--surface-raised);border:1px solid var(--border);border-radius:15px;gap:.8rem;padding:1rem;display:flex}.privacy-points svg{color:var(--primary)}.privacy-points span{gap:.15rem;display:grid}.onboarding-actions{justify-content:space-between;align-items:center;margin-top:2rem;display:flex}.onboarding-actions>div{gap:.65rem;display:flex}.demo-choice{border:1px solid var(--border);cursor:pointer;border-radius:15px;align-items:center;gap:.8rem;padding:1rem;display:flex}.demo-choice>span{gap:.2rem;display:grid}.dashboard-intro{justify-content:space-between;align-items:end;gap:1rem;display:flex}.dashboard-intro h2{margin-bottom:.5rem;font-size:clamp(2.2rem,5vw,4rem)}.dashboard-intro p{margin-bottom:0}.momentum-card{background:radial-gradient(circle at 50% 50%, var(--primary), transparent 30%), linear-gradient(135deg, var(--surface-raised), var(--surface));grid-template-columns:1.5fr minmax(170px,.7fr) 1fr;align-items:center;gap:clamp(1.5rem,4vw,3rem);padding:clamp(1.5rem,4vw,2.7rem);display:grid}@supports (color:color-mix(in lab, red, red)){.momentum-card{background:radial-gradient(circle at 50% 50%, color-mix(in srgb, var(--primary) 8%, transparent), transparent 30%), linear-gradient(135deg, var(--surface-raised), var(--surface))}}.momentum-copy>div:nth-child(2){align-items:baseline;gap:.8rem;margin-bottom:1.2rem;display:flex}.momentum-copy>div strong{font-size:clamp(2.8rem,6vw,5.5rem);line-height:.9}.momentum-copy>div span{color:var(--text-secondary);font-size:.76rem}.momentum-copy>p{margin:1rem 0 0;font-size:.78rem}.momentum-rings{aspect-ratio:1;background:conic-gradient(var(--primary) var(--momentum), var(--border) 0);box-shadow:0 0 50px var(--primary);border-radius:50%;place-items:center;padding:12px;display:grid}@supports (color:color-mix(in lab, red, red)){.momentum-rings{box-shadow:0 0 50px color-mix(in srgb, var(--primary) 8%, transparent)}}.momentum-rings:before{content:"";background:var(--surface-raised);width:100%;height:100%;box-shadow:inset 0 0 0 8px var(--surface-subtle);border-radius:50%;grid-area:1/1}.momentum-rings div{text-align:center;grid-area:1/1;display:grid;position:relative}.momentum-rings strong{font-size:2rem}.momentum-rings span{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.1em;font-size:.6rem}.momentum-side{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.dashboard-actions{grid-template-columns:repeat(6,minmax(0,1fr));gap:.65rem;display:grid}.action-chip{text-align:left;border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:15px;grid-template-columns:1fr auto;align-items:end;gap:.6rem;min-height:96px;padding:.85rem;display:grid;position:relative;overflow:hidden}.action-chip>svg:first-child{color:var(--tone);align-self:start}.action-chip>svg:last-child{width:.8rem;color:var(--text-tertiary)}.action-chip span{font-size:.72rem;font-weight:var(--weight-semibold)}.action-chip:before{content:"";background:var(--tone);border-radius:50%;width:60px;height:60px;position:absolute;top:-25px;right:-25px}@supports (color:color-mix(in lab, red, red)){.action-chip:before{background:color-mix(in srgb, var(--tone) 15%, transparent)}}.overview-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:.7rem;display:grid}.overview-card{text-align:left;border:1px solid var(--border);background:linear-gradient(150deg, var(--tone), var(--surface));border-radius:17px;flex-direction:column;align-items:flex-start;min-height:155px;padding:1rem;display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.overview-card{background:linear-gradient(150deg, color-mix(in srgb, var(--tone) 5%, var(--surface-raised)), var(--surface))}}.overview-card{cursor:pointer}.overview-card:hover{border-color:var(--tone)}@supports (color:color-mix(in lab, red, red)){.overview-card:hover{border-color:color-mix(in srgb, var(--tone) 40%, var(--border))}}.overview-icon{background:var(--tone);border-radius:10px;place-items:center;width:34px;height:34px;display:grid}@supports (color:color-mix(in lab, red, red)){.overview-icon{background:color-mix(in srgb, var(--tone) 12%, transparent)}}.overview-icon{color:var(--tone);margin-bottom:auto}.overview-card>span{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.08em;font-size:.65rem}.overview-card>strong{margin:.2rem 0;font-size:1.1rem}.overview-arrow{color:var(--text-tertiary);width:.9rem;position:absolute;top:1rem;right:1rem}.dashboard-bottom{grid-template-columns:1.5fr 1fr;gap:.8rem;display:grid}.chart-area{min-height:220px}.chart-skeleton{background:linear-gradient(90deg, var(--surface) 25%, var(--surface-hover) 50%, var(--surface) 75%);background-size:200%;border-radius:12px;height:220px;animation:1.4s infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.scheduled-card{flex-direction:column;display:flex}.scheduled-card .empty-state{flex:1}.scheduled-workout{padding:1rem 0}.scheduled-workout>span{color:var(--primary);font-size:.7rem;font-weight:var(--weight-bold)}.scheduled-workout h3{margin-top:.5rem;font-size:1.6rem}.health-note,.source-note{text-align:center;color:var(--text-tertiary);font-size:.7rem}.training-overview-grid{grid-template-columns:.85fr 1.4fr;gap:.8rem;display:grid}.training-focus{background:radial-gradient(circle at 80% 20%, var(--training), transparent 25%), var(--surface);flex-direction:column;justify-content:end;min-height:260px;display:flex}@supports (color:color-mix(in lab, red, red)){.training-focus{background:radial-gradient(circle at 80% 20%, color-mix(in srgb, var(--training) 16%, transparent), transparent 25%), var(--surface)}}.training-focus h3{font-size:1.7rem}.training-focus .button{width:max-content}.activity-metrics{grid-template-columns:repeat(4,1fr);gap:.8rem;display:grid}.activity-metrics .metric{border:1px solid var(--border);background:var(--surface);border-radius:15px;padding:1rem}.exercise-table{border:1px solid var(--border);border-radius:17px;overflow:hidden}.exercise-table>*{border:0;border-bottom:1px solid var(--border);background:var(--surface);text-align:left;grid-template-columns:1.3fr 1fr 1fr .7fr;align-items:center;gap:1rem;width:100%;padding:.85rem 1rem;font-size:.76rem;display:grid}.exercise-table button{cursor:pointer}.exercise-table button:hover{background:var(--surface-hover)}.exercise-table>:last-child{border-bottom:0}.table-head{background:var(--surface-subtle);color:var(--text-tertiary);font-size:.64rem;font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.08em}.calendar-week{border:1px solid var(--border);border-radius:20px;grid-template-columns:repeat(7,minmax(0,1fr));display:grid;overflow:hidden}.calendar-week>article{border-right:1px solid var(--border);background:var(--surface);min-height:240px;padding:.7rem}.calendar-week>article:last-child{border-right:0}.calendar-week>article.today{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.calendar-week>article.today{background:color-mix(in srgb, var(--primary) 5%, var(--surface))}}.calendar-week article>header{color:var(--text-tertiary);justify-content:space-between;align-items:center;display:flex}.calendar-week article>header span{text-transform:uppercase;font-size:.62rem}.calendar-week article>header strong{font-size:1.1rem}.calendar-week article>button{text-align:left;border:1px solid var(--training);gap:.5rem;width:100%;margin-top:.8rem;padding:.6rem;display:flex}@supports (color:color-mix(in lab, red, red)){.calendar-week article>button{border:1px solid color-mix(in srgb, var(--training) 25%, var(--border))}}.calendar-week article>button{background:var(--training);border-radius:11px}@supports (color:color-mix(in lab, red, red)){.calendar-week article>button{background:color-mix(in srgb, var(--training) 7%, var(--surface))}}.calendar-week article>button{cursor:pointer}.calendar-week article>button svg{color:var(--training)}.calendar-week article>button span{font-size:.7rem;font-weight:var(--weight-semibold);display:grid}.rest-label{color:var(--text-tertiary);margin-top:1rem;font-size:.68rem;display:block}.template-grid,.saved-route-grid,.people-grid,.group-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;display:grid}.template-grid .card{flex-direction:column;display:flex}.template-grid .card p{flex:1;font-size:.76rem}.template-top{justify-content:space-between;display:flex}.template-icon{background:var(--training);border-radius:12px;place-items:center;width:38px;height:38px;display:grid}@supports (color:color-mix(in lab, red, red)){.template-icon{background:color-mix(in srgb, var(--training) 10%, transparent)}}.template-icon{color:var(--training)}.weekday-row,.weekday-picker{gap:.35rem;margin:.8rem 0;display:flex}.weekday-row span,.weekday-picker button{border:1px solid var(--border);background:var(--surface-subtle);width:29px;height:29px;color:var(--text-tertiary);font-size:.61rem;font-weight:var(--weight-bold);border-radius:50%;place-items:center;display:grid}.weekday-row span.active,.weekday-picker button.active{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.workout-header{justify-content:space-between;align-items:end;gap:1rem;padding:1rem 0;display:flex}.workout-header>div:last-child{gap:.6rem;display:flex}.active-workout .workout-header>div:last-child,.active-workout .workout-header p:not(.workout-header-summary){display:none}.workout-header p{align-items:center;gap:.4rem;margin-bottom:0;font-size:.76rem;display:flex}.live-pill{border:1px solid var(--border);color:var(--text-secondary);font-size:.62rem;font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.06em;border-radius:99px;align-items:center;gap:.4rem;padding:.32rem .55rem;display:inline-flex}.live-pill span{background:var(--success);border-radius:50%;width:6px;height:6px}.live-pill.amber span{background:var(--warning)}.live-pill.cyan span{background:var(--route)}.workout-status-paused span{background:var(--warning)}.workout-status-draft span{background:var(--text-tertiary)}.workout-control-bar{z-index:24;border:1px solid var(--primary);align-items:center;gap:.55rem;padding:.75rem;display:flex;position:sticky;top:82px}@supports (color:color-mix(in lab, red, red)){.workout-control-bar{border:1px solid color-mix(in srgb, var(--primary) 28%, var(--border))}}.workout-control-bar{background:var(--surface-raised);border-radius:16px}@supports (color:color-mix(in lab, red, red)){.workout-control-bar{background:color-mix(in srgb, var(--surface-raised) 95%, transparent)}}.workout-control-bar{box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.workout-control-bar>strong{font-variant-numeric:tabular-nums;min-width:100px;margin-right:auto;display:grid}.workout-control-bar>strong small,.autosave-copy{color:var(--text-tertiary);font-size:.65rem;font-weight:600}.workout-progress-card{grid-template-columns:minmax(230px,.8fr) minmax(0,1.2fr);gap:1.2rem;display:grid}.workout-progress-card dl,.workout-summary dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:0;display:grid}.workout-progress-card dl div,.workout-summary dl div{border:1px solid var(--border);background:var(--surface-subtle);border-radius:12px;padding:.65rem}.workout-progress-card dt,.workout-summary dt{color:var(--text-tertiary);font-size:.62rem;font-weight:var(--weight-bold);text-transform:uppercase}.workout-progress-card dd,.workout-summary dd{font-weight:var(--weight-semibold);margin:.25rem 0 0}.add-exercise-row{align-items:end;gap:.6rem;display:flex}.add-exercise-row .field{flex:1}.add-exercise-row .field:first-child{flex:2}.manual-exercise-row{grid-template-columns:minmax(0,2fr) minmax(150px,1fr) auto;align-items:end;gap:.65rem;display:grid}.manual-exercise-row .icon-button{margin-bottom:.1rem}.set-card{padding:0;overflow:hidden}.set-card-header{justify-content:space-between;align-items:center;padding:1rem 1.2rem;display:flex}.set-card-header h3{margin:.35rem 0 0}.set-table{border-top:1px solid var(--border)}.set-row{border-bottom:1px solid var(--border);grid-template-columns:48px repeat(3,minmax(72px,1fr)) 62px minmax(118px,auto);align-items:center;gap:.6rem;padding:.55rem 1rem;display:grid}.set-row.complete,.set-row.set-status-completed{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.set-row.complete,.set-row.set-status-completed{background:color-mix(in srgb, var(--primary) 5%, var(--surface))}}.set-row.set-status-skipped{background:var(--warning)}@supports (color:color-mix(in lab, red, red)){.set-row.set-status-skipped{background:color-mix(in srgb, var(--warning) 7%, var(--surface))}}.set-head{color:var(--text-tertiary);text-transform:uppercase;font-size:.62rem}.set-row input{min-height:38px}.set-check{border:1px solid var(--border);background:var(--surface-subtle);cursor:pointer;border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.set-row.complete .set-check,.set-row.set-status-completed .set-check{background:var(--primary);color:var(--primary-foreground)}.set-check span{font-size:.62rem;font-weight:var(--weight-bold)}.set-more-actions{gap:.3rem;display:flex}.set-more-actions button{border:1px solid var(--border);background:var(--surface-subtle);width:34px;height:34px;color:var(--text-secondary);cursor:pointer;border-radius:9px;place-items:center;display:grid}.set-more-actions svg{width:15px}.add-set{width:100%;color:var(--primary);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:.4rem;padding:.8rem;display:flex}.rest-timer{z-index:20;border:1px solid var(--primary);justify-content:space-between;align-items:center;padding:.8rem 1rem;display:flex;position:sticky;bottom:1rem}@supports (color:color-mix(in lab, red, red)){.rest-timer{border:1px solid color-mix(in srgb, var(--primary) 35%, var(--border))}}.rest-timer{background:var(--surface-raised);border-radius:15px}@supports (color:color-mix(in lab, red, red)){.rest-timer{background:color-mix(in srgb, var(--surface-raised) 94%, transparent)}}.rest-timer{box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.rest-timer>div{align-items:center;gap:.7rem;display:flex}.rest-timer>div span{display:grid}.rest-actions{flex-wrap:wrap;justify-content:flex-end;gap:.4rem;display:flex}.rest-actions .duration-picker{flex:260px;min-width:min(100%,230px)}.rest-actions .duration-dropdown{width:100%}.rest-finished{border-color:var(--success)}.mobile-workout-dock{display:none}.history-list{display:grid}.history-list article{border-bottom:1px solid var(--border);grid-template-columns:56px 1fr auto 22px;align-items:center;gap:1rem;padding:.85rem 0;display:grid}.history-list article:last-child{border-bottom:0}.history-list p{margin:.15rem 0 0;font-size:.72rem}.history-list article>div:nth-child(3){text-align:right;display:grid}.history-date{color:var(--primary);font-size:.7rem;font-weight:var(--weight-bold)}.activity-split{grid-template-columns:1fr 1fr;gap:.8rem;display:grid}.record-row{border-bottom:1px solid var(--border);grid-template-columns:32px 1fr auto;align-items:center;gap:.7rem;padding:.7rem 0;display:grid}.record-row>svg{color:var(--warning)}.record-row span{display:grid}.record-row b{color:var(--primary);font-size:.8rem}.signal-entry-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.signal-entry-grid .field .button{margin-top:.35rem}.nutrition-layout{grid-template-columns:1.35fr .75fr;align-items:start;gap:.8rem;display:grid}.entry-panel{top:calc(var(--topbar-height) + 1rem);position:sticky}.macro-summary{grid-template-columns:170px 1fr;align-items:center;gap:2rem;display:grid}.macro-summary>div:last-child{gap:1rem;display:grid}.calorie-ring{aspect-ratio:1;background:conic-gradient(var(--nutrition) var(--calories), var(--border) 0);border-radius:50%;place-items:center;padding:11px;display:grid}.calorie-ring:before{content:"";background:var(--surface);border-radius:50%;grid-area:1/1;width:100%;height:100%}.calorie-ring span{z-index:1;text-align:center;grid-area:1/1;display:grid}.calorie-ring strong{font-size:1.6rem}.calorie-ring small{font-size:.65rem}.macro-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.meal-list section+section{margin-top:1.25rem}.meal-list h3{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.1em;font-size:.68rem}.meal-list article{border-bottom:1px solid var(--border);grid-template-columns:1fr auto 40px;align-items:center;gap:.6rem;padding:.75rem 0;display:grid}.meal-list article div{display:grid}.meal-list article>span{color:var(--nutrition);font-size:.73rem}.serving-preview{background:var(--surface-subtle);color:var(--text-secondary);border-radius:11px;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem;font-size:.72rem;display:flex}.serving-preview strong{color:var(--text-primary)}.hydration-layout{grid-template-columns:1.25fr .75fr;gap:.8rem;display:grid}.hydration-progress{gap:1.2rem;display:grid}.hydration-number{display:grid}.hydration-number strong{color:var(--hydration);font-size:clamp(3rem,7vw,6rem);line-height:.9}.hydration-number span{color:var(--text-secondary)}.hydration-quick{gap:.55rem}.hydration-quick .quick-action-card{border:1px solid var(--hydration)}@supports (color:color-mix(in lab, red, red)){.hydration-quick .quick-action-card{border:1px solid color-mix(in srgb, var(--hydration) 22%, var(--border))}}.hydration-quick .quick-action-card{background:var(--hydration)}@supports (color:color-mix(in lab, red, red)){.hydration-quick .quick-action-card{background:color-mix(in srgb, var(--hydration) 5%, var(--surface))}}.custom-add{align-items:end;gap:.6rem;display:flex}.custom-add .field{flex:1}.simple-list{display:grid}.simple-list article{border-bottom:1px solid var(--border);grid-template-columns:34px 1fr auto;align-items:center;gap:.65rem;padding:.75rem 0;display:grid}.simple-list article>svg{color:var(--hydration)}.simple-list article span{display:grid}.fasting-timer,.fasting-start{text-align:center;place-items:center;gap:1rem;width:min(100%,700px);margin:0 auto;padding:clamp(1.5rem,4vw,3rem);display:grid}.timer-ring{aspect-ratio:1;background:conic-gradient(var(--fasting) var(--fast), var(--border) 0);border-radius:50%;place-items:center;width:min(300px,70vw);padding:13px;display:grid}.timer-ring:before{content:"";background:var(--surface);width:100%;height:100%;box-shadow:inset 0 0 0 10px var(--surface-subtle);border-radius:50%;grid-area:1/1}.timer-ring>span{z-index:1;grid-area:1/1;display:grid}.timer-ring strong{font-size:clamp(2.2rem,6vw,4.5rem)}.timer-ring small{font-size:.72rem}.fasting-timer .progress-wrap{width:100%}.fasting-timer>div:last-child{gap:.6rem;display:flex}.fasting-start .field{text-align:left;width:min(100%,320px)}.journal-layout{grid-template-columns:1fr 1fr;align-items:start;gap:.8rem;display:grid}.scale-field>div{grid-template-columns:repeat(5,minmax(0,1fr));gap:.4rem;display:grid}.scale-field button{border:1px solid var(--border);background:var(--surface-subtle);cursor:pointer;border-radius:10px;min-height:48px}.scale-field button.active{background:var(--mood);border-color:var(--mood);color:#fff}.mood-history article{border-bottom:1px solid var(--border);grid-template-columns:44px 1fr;align-items:center;gap:.7rem;padding:.7rem 0;display:grid}.mood-history article>strong{background:var(--mood);border-radius:50%;place-items:center;width:38px;height:38px;display:grid}@supports (color:color-mix(in lab, red, red)){.mood-history article>strong{background:color-mix(in srgb, var(--mood) 14%, transparent)}}.mood-history article>strong{color:var(--mood)}.mood-history article span{display:grid}.writing-list article{border-bottom:1px solid var(--border);grid-template-columns:48px 1fr 40px;gap:.7rem;padding:.8rem 0;display:grid}.writing-list article>span{color:var(--mood);font-size:.68rem;font-weight:var(--weight-bold)}.writing-list article p{-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.72rem;display:-webkit-box;overflow:hidden}.meditation-card{text-align:center;background:radial-gradient(circle at 50% 45%, var(--meditation), transparent 28%), var(--surface);flex-direction:column;justify-content:center;align-items:center;min-height:480px;display:flex}@supports (color:color-mix(in lab, red, red)){.meditation-card{background:radial-gradient(circle at 50% 45%, color-mix(in srgb, var(--meditation) 14%, transparent), transparent 28%), var(--surface)}}.meditation-card .field{text-align:left;min-width:220px}.meditation-card>div:last-child{gap:.6rem;display:flex}.meditation-orbit{border:1px solid var(--meditation);place-items:center;width:110px;height:110px;display:grid}@supports (color:color-mix(in lab, red, red)){.meditation-orbit{border:1px solid color-mix(in srgb, var(--meditation) 50%, var(--border))}}.meditation-orbit{box-shadow:0 0 0 18px var(--meditation), 0 0 0 38px var(--meditation);border-radius:50%}@supports (color:color-mix(in lab, red, red)){.meditation-orbit{box-shadow:0 0 0 18px color-mix(in srgb, var(--meditation) 4%, transparent), 0 0 0 38px color-mix(in srgb, var(--meditation) 3%, transparent)}}.meditation-orbit{color:var(--meditation);margin-bottom:2rem}.route-layout{grid-template-columns:.7fr 1.3fr;align-items:start;gap:.8rem;display:grid}.planner-controls{top:calc(var(--topbar-height) + 1rem);position:sticky}.search-results{gap:.35rem;display:grid}.search-results button{border:1px solid var(--border);background:var(--surface);text-align:left;cursor:pointer;border-radius:10px;gap:.55rem;padding:.7rem;font-size:.7rem;display:flex}.search-results svg{color:var(--route)}.endpoint-selected{color:var(--success);align-items:center;gap:.35rem;font-size:.68rem;display:inline-flex}.endpoint-selected svg{width:.9rem;height:.9rem}.range-output{justify-content:space-between;font-size:.7rem;display:flex}.range-output strong{color:var(--route)}.activity-picker{grid-template-columns:repeat(3,1fr);gap:.4rem;display:grid}.activity-picker button{border:1px solid var(--border);background:var(--surface-subtle);text-transform:capitalize;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:.35rem;padding:.65rem;display:flex}.activity-picker button.active{border-color:var(--route);color:var(--route);background:var(--route)}@supports (color:color-mix(in lab, red, red)){.activity-picker button.active{background:color-mix(in srgb, var(--route) 8%, var(--surface))}}.route-canvas{background:#0a1519;min-height:440px;position:relative;overflow:hidden}.leaflet-route-wrap,.leaflet-route-map{width:100%;height:100%;min-height:360px}.leaflet-route-wrap{position:absolute;inset:0}.leaflet-route-map{background:#0c1216}.route-map-overlay{z-index:700;border:1px solid var(--route);gap:.1rem;min-width:132px;padding:.65rem .8rem;display:grid;position:absolute;top:.8rem;right:.8rem}@supports (color:color-mix(in lab, red, red)){.route-map-overlay{border:1px solid color-mix(in srgb, var(--route) 50%, var(--line))}}.route-map-overlay{box-shadow:var(--shadow);color:#fff;pointer-events:none;background:#061216e6;border-radius:12px}.route-map-overlay span{color:#a8c1c7;font-size:.58rem;font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase}.route-map-overlay strong{color:var(--route);font-size:1.1rem}.map-offline-note{z-index:500;border:1px solid var(--line);background:var(--surface);border-radius:999px;margin:0;padding:.7rem .9rem;position:absolute;bottom:1rem;left:1rem;right:1rem}@supports (color:color-mix(in lab, red, red)){.map-offline-note{background:color-mix(in srgb, var(--surface) 92%, transparent)}}.saved-route-map{border:1px solid var(--line);border-radius:var(--radius-md);min-height:220px;position:relative;overflow:hidden}.saved-route-map .leaflet-route-map,.saved-route-map .leaflet-route-wrap{min-height:220px}.contours{opacity:.3;position:absolute;inset:0}.contours i{border:1px solid #2a626d;border-radius:48% 52% 58% 42%;position:absolute;transform:rotate(-15deg)}.contours i:first-child{width:80%;height:70%;top:-25%;left:-15%}.contours i:nth-child(2){width:65%;height:55%;bottom:-15%;right:-10%}.contours i:nth-child(3){width:40%;height:34%;top:14%;right:18%}.contours i:nth-child(4){width:95%;height:90%;top:4%;left:8%}.route-line{position:absolute;inset:18% 14%}.route-line:before{content:"";border:5px solid var(--route);filter:drop-shadow(0 0 10px var(--route));border-left-color:#0000;border-radius:45% 55% 48% 52%;position:absolute;inset:9% 12%}@supports (color:color-mix(in lab, red, red)){.route-line:before{filter:drop-shadow(0 0 10px color-mix(in srgb, var(--route) 45%, transparent))}}.route-line:before{transform:rotate(13deg)}.route-line i{background:var(--route);border-radius:50%;width:10px;height:10px;position:absolute;box-shadow:0 0 0 4px #2bd5ee2e}.route-line i:first-child{top:52%;left:11%}.route-line i:nth-child(2){top:14%;left:28%}.route-line i:nth-child(3){top:8%;right:21%}.route-line i:nth-child(4){bottom:25%;right:11%}.route-line i:nth-child(5){bottom:12%;left:29%}.map-pin{background:var(--route);color:#052128;border-radius:50%;place-items:center;width:40px;height:40px;display:grid;position:absolute;box-shadow:0 0 0 7px #2bd5ee29}.map-pin.start{bottom:22%;left:22%}.map-pin.finish{top:25%;right:19%}.map-caption{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:650;pointer-events:none;background:#050e12d1;border:1px solid #28515b;border-radius:12px;gap:.35rem;max-width:75%;padding:.8rem 1rem;display:grid;position:absolute;bottom:1.2rem;left:1.2rem}.map-caption strong{font-size:1.15rem}.map-caption small{color:#94aeb5;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.map-attribution{color:#7e989f;font-size:.55rem;position:absolute;bottom:.45rem;right:.65rem}.map-empty{text-align:center;color:#77949b;align-content:center;place-items:center;gap:.5rem;display:grid;position:absolute;inset:0}.map-empty svg{width:2rem;height:2rem}.map-empty span{font-size:.72rem}.route-summary{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.route-actions,.saved-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.tracker-layout{grid-template-columns:1.2fr .8fr;gap:.8rem;display:grid}.live-tracker{flex-direction:column;justify-content:space-between;min-height:420px;display:flex}.tracker-metrics{display:grid}.tracker-metrics strong{color:var(--route);font-size:clamp(4rem,10vw,8rem);line-height:.85}.tracker-metrics span{color:var(--text-secondary)}.tracker-actions{gap:.6rem;display:flex}.check-list,.muted-list{color:var(--text-secondary);gap:.6rem;margin:1rem 0 0;padding:0;font-size:.75rem;list-style:none;display:grid}.check-list li{align-items:center;gap:.5rem;display:flex}.check-list svg{color:var(--primary)}.muted-list{color:var(--text-tertiary)}.saved-actions{justify-content:flex-end}.saved-actions>span{color:var(--text-secondary);font-size:.72rem}.route-detail-heading{justify-content:space-between;align-items:center;gap:.8rem;display:flex}.route-detail-map{border:1px solid var(--line);border-radius:var(--radius-md);background:#0c1216;min-height:480px;position:relative;overflow:hidden}.route-detail-map .leaflet-route-wrap,.route-detail-map .leaflet-route-map{min-height:480px}.route-endpoints{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin:0;display:grid}.route-endpoints>div{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-subtle);padding:.8rem}.route-endpoints dt{color:var(--text-tertiary);font-size:.58rem;font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase}.route-endpoints dd{color:var(--text-secondary);margin:.35rem 0 0;font-size:.72rem}.saved-route-grid .card{gap:.7rem;display:grid}.saved-route-grid p{font-size:.75rem}.route-type{color:var(--route);text-transform:uppercase;font-size:.68rem;font-weight:var(--weight-bold);align-items:center;gap:.35rem;display:inline-flex}.community-layout{grid-template-columns:1fr 310px;align-items:start;gap:.8rem;display:grid}.community-side{top:calc(var(--topbar-height) + 1rem);gap:.8rem;display:grid;position:sticky}.community-side .card{gap:.7rem;display:grid}.composer{grid-template-columns:42px 1fr;gap:.8rem;display:grid}.avatar{background:linear-gradient(135deg, var(--mood), var(--surface-hover));border-radius:12px;place-items:center;width:38px;height:38px;display:grid}@supports (color:color-mix(in lab, red, red)){.avatar{background:linear-gradient(135deg, color-mix(in srgb, var(--mood) 60%, var(--surface)), var(--surface-hover))}}.avatar{color:#fff;font-size:.68rem;font-weight:var(--weight-bold)}.avatar.large{border-radius:22px;width:70px;height:70px;font-size:1rem}.composer-actions{justify-content:space-between;align-items:center;gap:1rem;display:flex}.composer-actions span{color:var(--text-tertiary);font-size:.65rem}.feed-list{gap:.8rem;display:grid}.post header{align-items:center;gap:.65rem;display:flex}.post header>div:nth-child(2){display:grid}.post header .tag,.post header .icon-button{margin-left:auto}.post-content{color:var(--text-primary);white-space:pre-wrap;margin:1.2rem 0;font-size:.9rem}.post-actions{border-top:1px solid var(--border);border-bottom:1px solid var(--border);gap:.5rem;padding:.55rem 0;display:flex}.post-actions button{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:.35rem;padding:.4rem .5rem;font-size:.68rem;display:inline-flex}.post-actions button:hover{background:var(--surface-hover)}.post-actions svg{width:.9rem}.comments p{background:var(--surface-subtle);border-radius:9px;gap:.15rem;margin:.5rem 0;padding:.6rem;font-size:.72rem;display:grid}.comments b{color:var(--mood);font-size:.6rem}.comment-form{gap:.5rem;margin-top:.65rem;display:flex}.comment-form input{flex:1}.people-grid .card{flex-direction:column;align-items:flex-start;display:flex}.people-grid .card p{flex:1;font-size:.76rem}.people-grid .tag{margin-bottom:1rem}.messages-layout{grid-template-columns:320px 1fr;gap:.8rem;min-height:560px;display:grid}.thread-list{padding:.8rem}.thread-list .section-header{padding:.4rem}.thread-list>button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;grid-template-columns:40px 1fr 18px;align-items:center;gap:.6rem;width:100%;padding:.65rem;display:grid}.thread-list>button.active{background:var(--surface-hover)}.thread-list>button span{min-width:0;display:grid}.thread-list>button small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.message-panel{flex-direction:column;display:flex}.message-panel>header{justify-content:space-between;display:flex}.message-history{flex-direction:column;flex:1;justify-content:flex-end;gap:.6rem;padding:1rem 0;display:flex}.message-history p{align-self:flex-end;gap:.2rem;max-width:75%;margin:0;display:grid}.message-history p>span{color:var(--text-primary);background:var(--mood)}@supports (color:color-mix(in lab, red, red)){.message-history p>span{background:color-mix(in srgb, var(--mood) 20%, var(--surface))}}.message-history p>span{border-radius:13px 13px 3px;padding:.7rem .8rem}.message-history small{text-align:right;font-size:.58rem}.message-compose{gap:.5rem;display:flex}.group-grid{grid-template-columns:1fr}.group-grid .card{gap:.5rem;display:grid}.group-grid .group-icon{border-radius:14px;width:45px;height:45px}.group-grid .group-icon svg{width:1.2rem}.group-meta{color:var(--text-tertiary);gap:1rem;font-size:.65rem;display:flex}.challenge-card header{align-items:center;gap:.8rem;display:flex}.challenge-card header>div:nth-child(2){flex:1}.challenge-card .challenge-icon{border-radius:14px;width:48px;height:48px}.challenge-card .challenge-icon svg{width:1.3rem}.challenge-progress{align-items:baseline;gap:.4rem;margin:1rem 0 .5rem;display:flex}.challenge-progress strong{color:var(--primary);font-size:2.6rem}.demo-leaderboard{border:1px dashed var(--border);border-radius:12px;margin-top:1rem;padding:.8rem}.demo-leaderboard ol{margin:0;padding-left:1.25rem}.demo-leaderboard li{justify-content:space-between;padding:.35rem;font-size:.7rem;display:flex}.settings-layout{grid-template-columns:260px 1fr;align-items:start;gap:2rem;display:grid}.settings-nav{top:calc(var(--topbar-height) + 1rem);gap:.2rem;display:grid;position:sticky}.settings-nav h2{margin-bottom:1rem;font-size:1.6rem}.settings-nav button{text-align:left;width:100%;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:10px;grid-template-columns:22px 1fr 16px;align-items:center;gap:.6rem;padding:.65rem .7rem;font-size:.76rem;display:grid}.settings-nav button.active{background:var(--surface-raised);color:var(--text-primary)}.settings-nav button.active>svg:first-child{color:var(--primary)}.settings-content{min-width:0}.profile-editor{grid-template-columns:170px 1fr;gap:2rem;display:grid}.profile-photo{flex-direction:column;align-items:center;gap:.8rem;display:flex}.profile-photo>span,.profile-photo img{object-fit:cover;background:linear-gradient(135deg, var(--mood), var(--hydration));color:#fff;width:120px;height:120px;font-size:2rem;font-weight:var(--weight-bold);border-radius:32px;place-items:center;display:grid}.toggle-list{display:grid}.toggle-list label,.switch-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;min-height:62px;padding:.7rem 0;display:flex}.toggle-list label:last-child{border-bottom:0}.toggle-list span,.switch-row span{gap:.15rem;display:grid}.toggle-list strong,.switch-row strong{text-transform:capitalize;font-size:.78rem}.reminder-row{grid-template-columns:42px 1fr 46px 42px;align-items:center;gap:.7rem;display:grid}.reminder-row>svg{color:var(--warning)}.reminder-row p{margin:.15rem 0 0;font-size:.7rem}.appearance-grid{grid-template-columns:repeat(3,1fr);gap:.7rem;display:grid}.appearance-grid>button{text-align:left;border:1px solid var(--border);background:var(--surface-subtle);cursor:pointer;text-transform:capitalize;border-radius:13px;gap:.6rem;padding:.7rem;display:grid;position:relative}.appearance-grid>button.active{border-color:var(--primary)}.appearance-grid>button>svg{color:var(--primary);position:absolute;bottom:.7rem;right:.7rem}.theme-preview{background:#0b1013;border-radius:9px;grid-template-columns:28% 1fr;gap:5px;height:90px;padding:7px;display:grid}.theme-preview.light{background:#eee}.theme-preview.system{background:linear-gradient(135deg,#eee 50%,#0b1013 50%)}.theme-preview i{background:#20292f;border-radius:4px;display:block}.theme-preview.light i{background:#fff;border:1px solid #ddd}.theme-preview i:first-child{grid-row:1/4}.theme-preview i:nth-child(2),.theme-preview i:nth-child(3){opacity:.6;background:#bafc28}.capability-list{display:grid}.capability-list article{border-bottom:1px solid var(--border);grid-template-columns:18px 1fr auto;align-items:center;gap:.7rem;min-height:64px;display:grid}.capability-list article:last-child{border-bottom:0}.capability-list article>div{display:grid}.cap-dot{background:var(--text-tertiary);border-radius:50%;width:9px;height:9px}.cap-dot.available{background:var(--success)}.cap-dot.permission-needed{background:var(--warning)}.cap-dot.permission-denied,.cap-dot.not-supported{background:var(--danger)}.cap-dot.manual-only{background:var(--info)}.large-icon{width:2rem;height:2rem;color:var(--primary)}.plain-list{color:var(--text-muted);flex-direction:column;gap:.5rem;margin:.4rem 0 0;padding-left:1.1rem;font-size:.82rem;line-height:1.5;list-style:outside;display:flex}.local-card a{color:var(--primary);margin-top:.4rem;font-size:.72rem;font-weight:600;display:inline-block}.data-grid{grid-template-columns:repeat(3,1fr);gap:.8rem;display:grid}.data-grid .card{flex-direction:column;align-items:flex-start;display:flex}.data-grid .card p{flex:1;font-size:.76rem}.csv-actions{flex-wrap:wrap;gap:.45rem;display:flex}.import-preview{gap:1rem;display:grid}.faq-list details{border-bottom:1px solid var(--border);padding:.85rem 0}.faq-list summary{font-weight:var(--weight-semibold);cursor:pointer}.faq-list p{margin:.6rem 0 0;font-size:.77rem}.danger-list{display:grid}.danger-list article{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;display:flex}.danger-list article:last-child{border-bottom:0}.danger-list article p{margin:.2rem 0 0;font-size:.73rem}.danger-list article>div:last-child{gap:.5rem;display:flex}.source-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;display:grid}.source-grid .card{flex-direction:column;align-items:flex-start;display:flex}.source-grid .source-icon{border-radius:14px;width:44px;height:44px;margin-bottom:.8rem}.source-grid .source-icon svg{width:1.2rem}.source-grid h3{margin-top:.7rem}.source-grid>.card>strong{color:var(--text-secondary);font-size:.7rem}.source-grid p{flex:1;font-size:.75rem}.source-grid a{color:var(--info);font-size:.73rem;font-weight:var(--weight-semibold);align-items:center;gap:.35rem;display:inline-flex}.source-grid a svg{width:.85rem}.not-found,.fatal-error{text-align:center;align-content:center;place-items:center;min-height:60dvh;padding:2rem;display:grid}.not-found>svg{width:3rem;height:3rem;color:var(--route);margin-bottom:1rem}.not-found p,.fatal-error p{max-width:520px}.fatal-error code{background:var(--surface);max-width:700px;color:var(--danger);overflow-wrap:anywhere;border-radius:10px;margin-bottom:1rem;padding:.8rem}.route-loading{align-content:center;place-items:center;gap:.8rem;min-height:55dvh;display:grid}.route-loading span{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:36px;height:36px;animation:1s linear infinite spin}.route-loading p{font-size:.73rem}@media (width<=1180px){:root{--sidebar-width:78px}.brand>div,.nav-item span,.local-card,.sidebar .secondary .nav-item span{display:none}.brand{justify-content:center}.nav-item{justify-content:center;padding:.7rem}.nav-item.active{box-shadow:inset 0 -3px var(--primary)}.sidebar-divider{margin:.6rem 0}.dashboard-actions,.overview-grid{grid-template-columns:repeat(3,1fr)}.momentum-card{grid-template-columns:1.4fr .7fr}.momentum-side{grid-column:1/-1}.source-grid{grid-template-columns:repeat(2,1fr)}.data-grid{grid-template-columns:1fr}.route-layout{grid-template-columns:.85fr 1.15fr}.community-layout{grid-template-columns:1fr 260px}}@media (width<=900px){:root{--sidebar-width:0px;--topbar-height:78px}.sidebar{width:min(84vw,300px);transition:transform var(--motion-base);box-shadow:var(--shadow);transform:translate(-105%)}.sidebar.sidebar-open{transform:translate(0)}.sidebar .brand>div,.sidebar .nav-item span,.sidebar .local-card,.sidebar .secondary .nav-item span{display:flex}.sidebar .nav-item{justify-content:flex-start}.sidebar-close{display:inline-grid!important}.scrim{z-index:55;background:#0009;border:0;display:block;position:fixed;inset:0}.menu-button{display:inline-grid!important}.main-column{margin-left:0}.save-indicator{display:none}.pwa-banner{top:calc(var(--topbar-height) + .5rem);width:calc(100% - 1.5rem)}#main-content{padding-bottom:6.5rem}.bottom-nav{left:.8rem;right:.8rem;bottom:calc(.65rem + env(safe-area-inset-bottom));z-index:50;border:1px solid var(--border);background:var(--surface-raised);border-radius:20px;grid-template-columns:repeat(5,1fr);min-height:62px;padding:.4rem;display:grid;position:fixed}@supports (color:color-mix(in lab, red, red)){.bottom-nav{background:color-mix(in srgb, var(--surface-raised) 93%, transparent)}}.bottom-nav{box-shadow:var(--shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.bottom-nav a{color:var(--text-tertiary);place-items:center;gap:.2rem;font-size:.58rem;display:grid}.bottom-nav a svg{width:1rem}.bottom-nav a.active{color:var(--primary)}.momentum-card{grid-template-columns:1fr .55fr}.overview-grid{grid-template-columns:repeat(2,1fr)}.dashboard-bottom,.nutrition-layout,.hydration-layout,.journal-layout,.tracker-layout,.training-overview-grid{grid-template-columns:1fr}.entry-panel,.planner-controls,.community-side{position:static}.route-layout,.community-layout{grid-template-columns:1fr}.community-side{grid-template-columns:repeat(2,1fr)}.settings-layout{grid-template-columns:1fr}.settings-nav{padding-bottom:.4rem;display:flex;position:static;overflow-x:auto}.settings-nav>.eyebrow,.settings-nav>h2{display:none}.settings-nav button{min-width:max-content;display:inline-flex}.settings-nav button>svg:last-child{display:none}.messages-layout{grid-template-columns:250px 1fr}.template-grid,.people-grid{grid-template-columns:repeat(2,1fr)}.calendar-week{grid-template-columns:repeat(7,minmax(120px,1fr));overflow-x:auto}.macro-summary{grid-template-columns:140px 1fr}.profile-editor{grid-template-columns:1fr}.profile-photo{flex-direction:row;justify-content:flex-start}.source-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.page-stack>.subnav,.page-stack>.journal-layout{width:100%;max-width:100%}.journal-layout>*{min-width:0}#main-content{padding:1rem 1rem 6.8rem}.topbar{padding:.75rem 1rem}.topbar-actions .button{width:40px;padding:0;font-size:0}.topbar-actions .button svg{margin:0}.page-heading>span{display:none}.card{border-radius:18px}.page-stack{gap:1.3rem}.section-header{align-items:center}.section-header .button{padding:.55rem .7rem}.dashboard-intro{flex-direction:column;align-items:stretch}.dashboard-intro .button{width:100%}.dashboard-intro h2{font-size:2.5rem}.momentum-card{grid-template-columns:1fr}.momentum-rings{grid-row:1;justify-self:center;width:160px}.momentum-side{grid-template-columns:1fr 1fr}.dashboard-actions,.overview-grid{grid-template-columns:repeat(2,1fr)}.overview-card{min-height:145px}.dashboard-bottom,.form-grid{grid-template-columns:1fr}.quick-grid{grid-template-columns:1fr 1fr}.dialog-content{width:100%;max-height:88dvh;padding-bottom:calc(1rem + env(safe-area-inset-bottom));animation:sheet-in var(--motion-base);border-radius:24px 24px 0 0;top:auto;bottom:0;left:0;transform:none}@keyframes sheet-in{0%{opacity:0;transform:translateY(20%)}}.onboarding-shell{grid-template-columns:1fr}.onboarding-brand{z-index:2;padding:1rem;position:absolute}.onboarding-panel{border-left:0;min-height:100dvh;padding:5.5rem 1rem 1rem}.onboarding-progress{top:4.2rem;left:1rem;right:1rem}.onboarding-step h1{font-size:2.4rem}.privacy-points{grid-template-columns:1fr}.onboarding-actions{flex-direction:column-reverse;align-items:stretch}.onboarding-actions>div{grid-template-columns:1fr 1.5fr;display:grid}.onboarding-actions .button{width:100%}.activity-metrics{grid-template-columns:repeat(2,1fr)}.exercise-table .table-head{display:none}.exercise-table>button{grid-template-columns:1fr auto}.exercise-table>button span:nth-child(2),.exercise-table>button span:nth-child(3){display:none}.template-grid,.people-grid,.saved-route-grid,.source-grid{grid-template-columns:1fr}.workout-header{flex-direction:column;align-items:stretch}.workout-header>div:last-child{grid-template-columns:1fr 1fr;display:grid}.workout-control-bar{grid-template-columns:repeat(2,minmax(0,1fr));display:grid;top:70px}.workout-control-bar>strong{grid-column:1/-1}.workout-control-bar .button{width:100%}.workout-progress-card{grid-template-columns:1fr}.set-row{grid-template-columns:34px repeat(3,minmax(58px,1fr)) 48px;gap:.3rem;padding:.45rem .5rem}.set-row:not(.set-head) .set-more-actions{grid-column:1/-1;justify-content:flex-end}.set-head span:last-child{display:none}.set-head{font-size:.52rem}.set-row input{padding:.4rem}.rest-timer{flex-direction:column;align-items:stretch;gap:.65rem}.rest-actions{justify-content:stretch}.rest-actions .button{flex:120px}.active-workout{padding-bottom:calc(82px + env(safe-area-inset-bottom))}.mobile-workout-dock{right:.65rem;bottom:calc(66px + env(safe-area-inset-bottom));z-index:38;border:1px solid var(--primary);grid-template-columns:repeat(4,minmax(0,1fr));gap:.3rem;padding:.45rem;display:grid;position:fixed;left:.65rem}@supports (color:color-mix(in lab, red, red)){.mobile-workout-dock{border:1px solid color-mix(in srgb, var(--primary) 35%, var(--border))}}.mobile-workout-dock{background:var(--surface-raised);border-radius:16px}@supports (color:color-mix(in lab, red, red)){.mobile-workout-dock{background:color-mix(in srgb, var(--surface-raised) 96%, transparent)}}.mobile-workout-dock{box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.mobile-workout-dock button{background:var(--surface-subtle);min-height:46px;color:var(--text-secondary);font-size:.68rem;font-weight:var(--weight-bold);border:0;border-radius:11px}.mobile-workout-dock .mobile-complete-set{background:var(--primary);color:var(--primary-foreground)}.mobile-workout-dock button:disabled{opacity:.45}.activity-split,.signal-entry-grid,.macro-summary{grid-template-columns:1fr}.calorie-ring{justify-self:center;width:160px}.hydration-quick{grid-template-columns:repeat(2,1fr)}.custom-add,.add-exercise-row{flex-direction:column;align-items:stretch}.manual-exercise-row{grid-template-columns:1fr}.manual-exercise-row .icon-button{justify-self:end}.journal-layout{grid-template-columns:1fr}.route-canvas{min-height:360px}.route-summary{grid-template-columns:repeat(2,1fr)}.route-detail-map,.route-detail-map .leaflet-route-wrap,.route-detail-map .leaflet-route-map{min-height:360px}.route-map-overlay{min-width:116px;top:.6rem;right:.6rem}.route-endpoints{grid-template-columns:1fr}.route-detail-heading{flex-direction:column;align-items:stretch}.tracker-metrics strong{font-size:4rem}.community-side,.messages-layout{grid-template-columns:1fr}.thread-list{max-height:280px;overflow:auto}.message-panel{min-height:450px}.profile-editor{gap:1rem}.appearance-grid{grid-template-columns:1fr}.theme-preview{height:65px}.danger-list article{flex-direction:column;align-items:stretch}.danger-list article .button{width:100%}.input-action{flex-direction:column;align-items:stretch}.history-list article{grid-template-columns:50px 1fr 18px}.history-list article>div:nth-child(3){display:none}}@media (width<=380px){.responsive-card-grid,.hydration-quick{grid-template-columns:1fr}.quick-action-card{min-height:96px}}.timer-display{gap:var(--space-1);font-variant-numeric:tabular-nums;letter-spacing:-.025em;justify-items:center;display:inline-grid}.timer-display small{color:var(--text-secondary);font-size:.72rem;font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase}.timer-display strong{font-size:clamp(2.4rem,7vw,5rem);line-height:1}.timer-display.timer-complete strong{color:var(--success)}.timer-controls,.reflection-actions{justify-content:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.segmented-control{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-subtle);gap:2px;max-width:100%;padding:3px;display:inline-flex;overflow-x:auto}.segmented-control button{min-height:var(--touch-target);border-radius:var(--radius-pill);color:var(--text-secondary);white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:.55rem .9rem}.segmented-control button.active{color:var(--primary-foreground);background:var(--primary)}.duration-picker{text-align:left;border:0;width:min(100%,580px);margin:0;padding:0}.duration-picker legend{margin-bottom:var(--space-2);color:var(--text-secondary);font-size:.75rem;font-weight:var(--weight-bold)}.duration-dropdown{align-items:center;gap:var(--space-2);grid-template-columns:28px minmax(0,1fr);display:grid}.duration-dropdown>svg{width:1.1rem;height:1.1rem;color:var(--text-secondary)}.duration-dropdown .rounded-select-trigger{border-radius:var(--radius-lg);min-height:52px}.duration-dropdown .rounded-select-menu{border-radius:var(--radius-lg)}.duration-options{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.duration-options>button{justify-content:space-between;align-items:center;gap:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);min-height:52px;color:var(--text-primary);background:var(--surface-subtle);cursor:pointer;padding:.7rem .85rem;display:flex}.duration-options>button>span:first-child{align-items:center;gap:var(--space-2);display:inline-flex}.duration-options>button.active{border-color:var(--focus);background:var(--focus)}@supports (color:color-mix(in lab, red, red)){.duration-options>button.active{background:color-mix(in srgb, var(--focus) 9%, var(--surface-subtle))}}.duration-check{width:1.25rem;height:1.25rem}.duration-check svg,.duration-options svg{width:1rem;height:1rem}.custom-duration-editor{margin-top:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-subtle)}.duration-fields{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.duration-preview{margin:var(--space-3) 0 0;color:var(--text-secondary)}.duration-preview.invalid,.custom-duration-editor [role=alert]{color:var(--danger)}.fasting-timer,.fasting-start{border-color:var(--fasting)}@supports (color:color-mix(in lab, red, red)){.fasting-timer,.fasting-start{border-color:color-mix(in srgb, var(--fasting) 22%, var(--border))}}.fasting-timer,.fasting-start{background:var(--fasting)}@supports (color:color-mix(in lab, red, red)){.fasting-timer,.fasting-start{background:color-mix(in srgb, var(--fasting) 3%, var(--surface))}}.fasting-timer .timer-display strong,.fasting-start .feature-badge{color:var(--fasting)}.meditation-card .timer-display strong{color:var(--meditation)}.presence-custom-input{align-items:end;gap:var(--space-2);margin-top:var(--space-3);display:flex}.presence-custom-input .field{flex:1}.custom-presence-chip{gap:var(--space-1)}.reflection-form,.guided-reflection{gap:var(--space-4);display:grid}.reflection-card>p{color:var(--text-secondary)}.prompt-picker-toolbar{gap:var(--space-2);grid-template-columns:minmax(0,1fr) minmax(150px,.35fr);display:grid}.prompt-listbox{gap:var(--space-2);max-height:280px;margin-top:var(--space-2);padding-right:var(--space-1);display:grid;overflow-y:auto}.prompt-listbox>button{align-items:center;gap:var(--space-3);min-height:64px;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);background:var(--surface-subtle);text-align:left;cursor:pointer;grid-template-columns:minmax(110px,.25fr) 1fr 24px;display:grid}.prompt-listbox>button.active{border-color:var(--reflection);background:var(--reflection)}@supports (color:color-mix(in lab, red, red)){.prompt-listbox>button.active{background:color-mix(in srgb, var(--reflection) 8%, var(--surface-subtle))}}.prompt-check svg{width:1rem}.tone-understanding{--reflection-stage:var(--reflection-understanding)}.tone-implications{--reflection-stage:var(--reflection-implications)}.tone-application{--reflection-stage:var(--reflection-application)}.feature-badge.tone-understanding,.feature-badge.tone-implications,.feature-badge.tone-application{color:var(--reflection-stage)}.reflection-stage{padding:var(--space-4);border:1px solid var(--reflection-stage)}@supports (color:color-mix(in lab, red, red)){.reflection-stage{border:1px solid color-mix(in srgb, var(--reflection-stage) 42%, var(--border))}}.reflection-stage{border-radius:var(--radius-lg);background:var(--reflection-stage)}@supports (color:color-mix(in lab, red, red)){.reflection-stage{background:color-mix(in srgb, var(--reflection-stage) 5%, var(--surface-subtle))}}.reflection-stage>header{align-items:start;gap:var(--space-3);margin-bottom:var(--space-3);grid-template-columns:34px 1fr auto;display:grid}.reflection-stage>header>span{width:32px;height:32px;color:var(--background);background:var(--reflection-stage);font-weight:var(--weight-bold);border-radius:50%;place-items:center;display:grid}.reflection-stage header div{gap:var(--space-1);display:grid}.reflection-stage .reflection-stage-actions{justify-content:flex-end;gap:var(--space-1);flex-flow:wrap;display:flex}.reflection-skipped{padding:var(--space-3);border:1px dashed var(--border);border-radius:var(--radius-md);color:var(--text-secondary);margin:0}.reflection-stage header small{color:var(--reflection-stage);font-weight:var(--weight-bold);text-transform:uppercase}.reflection-stage textarea{min-height:116px}.date-picker{min-width:min(100%,230px);position:relative}.date-picker-trigger{width:100%;min-height:var(--control-height);align-items:center;gap:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-primary);background:var(--surface-subtle);text-align:left;cursor:pointer;padding:0 .85rem;display:flex}.date-picker-trigger svg{width:1rem;color:var(--text-secondary)}.date-picker-popover{z-index:50;top:calc(100% + var(--space-2));width:min(330px,100vw - 2rem);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow);position:absolute;right:0}.date-picker-heading{text-align:center;grid-template-columns:44px 1fr 44px;align-items:center;display:grid}.date-picker-weekdays,.date-picker-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;display:grid}.date-picker-weekdays span{padding:var(--space-2) 0;color:var(--text-tertiary);text-align:center;font-size:.7rem}.date-picker-grid button{min-width:36px;min-height:36px;color:var(--text-primary);cursor:pointer;background:0 0;border:0;border-radius:50%}.date-picker-grid button.outside{color:var(--text-tertiary);opacity:.55}.date-picker-grid button:disabled{cursor:not-allowed;opacity:.28}.date-picker-grid button.selected{color:var(--primary-foreground);background:var(--primary);opacity:1}.date-picker-grid button.today:not(.selected){box-shadow:inset 0 0 0 1px var(--primary)}.date-picker-actions{gap:var(--space-1);margin-top:var(--space-3);grid-template-columns:auto auto 1fr auto auto;display:grid}.date-time-picker{gap:var(--space-2);grid-template-columns:minmax(210px,1fr) auto;display:grid}.time-picker{align-items:center;gap:var(--space-1);display:flex}.time-picker .rounded-select{min-width:78px}.app-calendar{gap:var(--space-4);display:grid}.calendar-toolbar,.calendar-date-controls{align-items:center;gap:var(--space-2);display:flex}.calendar-toolbar{flex-wrap:wrap;justify-content:space-between}.calendar-date-controls>div{min-width:min(290px,35vw)}.calendar-date-controls h3,.calendar-date-controls small{text-transform:capitalize;margin:0}.calendar-date-controls small{color:var(--text-tertiary)}.calendar-filters{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-subtle)}.calendar-filters summary{min-height:44px;padding:0 var(--space-3);cursor:pointer;align-items:center;display:flex}.calendar-filters>div{gap:var(--space-3);padding:0 var(--space-3) var(--space-3);grid-template-columns:1fr .55fr;display:grid}.calendar-filters fieldset{border:0;min-width:0}.filter-chip-row{gap:var(--space-1);flex-wrap:wrap;display:flex}.filter-chip-row button{border:1px solid var(--border);border-radius:var(--radius-pill);min-height:38px;color:var(--text-secondary);background:var(--surface);text-transform:capitalize;cursor:pointer;padding:.35rem .7rem}.filter-chip-row button.active{color:var(--text-primary);border-color:var(--primary);background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.filter-chip-row button.active{background:color-mix(in srgb, var(--primary) 8%, var(--surface))}}.calendar-agenda{border:1px solid var(--border);border-radius:var(--radius-lg);grid-template-columns:repeat(7,minmax(0,1fr));min-height:380px;display:grid;overflow:hidden}.calendar-agenda.days-1{grid-template-columns:1fr}.calendar-agenda.days-3{grid-template-columns:repeat(3,minmax(0,1fr))}.calendar-agenda>section{align-content:start;gap:var(--space-2);min-width:0;padding:var(--space-3);border-right:1px solid var(--border);background:var(--surface-subtle);display:grid}.calendar-agenda>section:last-child{border-right:0}.calendar-agenda>section.today{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.calendar-agenda>section.today{background:color-mix(in srgb, var(--primary) 4%, var(--surface-subtle))}}.calendar-agenda section>header{color:var(--text-secondary);justify-content:space-between;align-items:center;display:flex}.calendar-agenda header strong{border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.calendar-agenda .today header strong{color:var(--primary-foreground);background:var(--primary)}.current-time-marker{padding-bottom:var(--space-1);border-bottom:2px solid var(--danger);color:var(--danger);font-size:.7rem}.calendar-day-events{gap:var(--space-2);display:grid}.calendar-event{--event-color:var(--text-secondary);align-items:center;gap:var(--space-2);width:100%;min-width:0;min-height:52px;padding:var(--space-2);border:1px solid var(--event-color);grid-template-columns:28px minmax(0,1fr) 18px;display:grid}@supports (color:color-mix(in lab, red, red)){.calendar-event{border:1px solid color-mix(in srgb, var(--event-color) 38%, var(--border))}}.calendar-event{border-left:3px solid var(--event-color);border-radius:var(--radius-sm);color:var(--text-primary);background:var(--event-color)}@supports (color:color-mix(in lab, red, red)){.calendar-event{background:color-mix(in srgb, var(--event-color) 7%, var(--surface))}}.calendar-event{text-align:left;cursor:pointer}.calendar-event>span:nth-child(2){min-width:0;display:grid}.calendar-event strong,.calendar-event small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-event small{color:var(--text-secondary);text-transform:capitalize}.calendar-event svg{width:1rem;color:var(--event-color)}.calendar-event.compact{min-height:30px;padding:.3rem .45rem;font-size:.66rem;display:block}.calendar-event.compact .calendar-event-icon,.calendar-event.compact .calendar-status-icon{display:none}.event-workout{--event-color:var(--training)}.event-fast{--event-color:var(--fasting)}.event-meditation{--event-color:var(--meditation)}.event-journal{--event-color:var(--reflection)}.event-mood{--event-color:var(--mood)}.event-nutrition{--event-color:var(--nutrition)}.event-hydration{--event-color:var(--hydration)}.event-sleep{--event-color:var(--sleep)}.event-route{--event-color:var(--route)}.event-weight{--event-color:var(--feature-weight)}.event-steps{--event-color:var(--feature-steps)}.event-heart_rate{--event-color:var(--feature-heart)}.status-skipped,.status-canceled,.status-missed{opacity:.68}.status-skipped strong,.status-canceled strong{text-decoration:line-through}.calendar-add-subtle,.calendar-more{border:1px dashed var(--border);border-radius:var(--radius-sm);min-height:42px;color:var(--text-tertiary);cursor:pointer;background:0 0}.calendar-add-subtle svg{vertical-align:middle;width:1rem}.calendar-month{border:1px solid var(--border);border-radius:var(--radius-lg);grid-template-columns:repeat(7,minmax(0,1fr));min-width:760px;display:grid;overflow:hidden}.calendar-month-scroll{border-radius:var(--radius-lg);max-width:100%;overflow-x:auto}.calendar-weekday{padding:var(--space-2);border-bottom:1px solid var(--border);color:var(--text-secondary);text-align:center;font-size:.72rem;font-weight:var(--weight-bold)}.calendar-month>section{min-height:118px;padding:var(--space-2);border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface-subtle);align-content:start;gap:3px;display:grid}.calendar-month>section.outside{opacity:.72}.calendar-month>section.today{box-shadow:inset 0 0 0 2px var(--primary)}.calendar-day-number{width:32px;height:32px;color:var(--text-primary);cursor:pointer;background:0 0;border:0;border-radius:50%}.calendar-year{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.calendar-year>button{gap:var(--space-3);min-height:120px;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--text-primary);background:var(--surface-subtle);text-align:left;cursor:pointer;display:grid}.year-density{grid-template-columns:repeat(6,1fr);gap:4px;display:grid}.year-density i{border-radius:var(--radius-pill);background:var(--border);height:8px}.year-density i.active{background:var(--primary)}@media (width<=900px){.calendar-toolbar,.calendar-date-controls{align-items:stretch}.calendar-toolbar{display:grid}.calendar-date-controls>div{flex:1;min-width:0}.calendar-agenda{grid-template-columns:1fr;overflow:visible}.calendar-agenda.days-3,.calendar-agenda.days-7{grid-template-columns:1fr}.calendar-agenda>section{border-right:0;border-bottom:1px solid var(--border)}.calendar-month{min-width:660px}.calendar-year{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.duration-options,.duration-fields,.prompt-picker-toolbar,.calendar-filters>div,.date-time-picker{grid-template-columns:1fr}.presence-custom-input,.calendar-date-controls{flex-wrap:wrap;align-items:stretch}.presence-custom-input{display:grid}.prompt-listbox>button{grid-template-columns:1fr 24px}.prompt-listbox .feature-badge{grid-column:1/-1}.reflection-stage>header{grid-template-columns:34px 1fr}.reflection-stage>header .reflection-stage-actions{grid-column:1/-1;justify-content:flex-start}.date-picker-popover{left:0;right:auto}.calendar-year{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root[data-reducedMotion="true"] *,:root[data-reducedMotion="true"] :before,:root[data-reducedMotion="true"] :after{transition-duration:.01ms!important;animation-duration:.01ms!important}@media (forced-colors:active){.progress-bar,.brand-mark i,.status-dot{forced-color-adjust:none}}@media print{.sidebar,.topbar,.bottom-nav,.button,.icon-button{display:none!important}.main-column{margin:0}#main-content{padding:0}.card{break-inside:avoid;box-shadow:none}}.public-page{background:var(--background);min-height:100dvh;color:var(--text-primary);flex-direction:column;display:flex}.public-header{border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem clamp(1rem,4vw,3rem);display:flex}.public-brand{font-weight:var(--weight-bold);letter-spacing:.02em;color:var(--text-primary);align-items:center;gap:.6rem;font-size:1.15rem;text-decoration:none;display:inline-flex}.public-mark{flex-direction:column;justify-content:center;gap:3px;width:26px;display:inline-flex}.public-mark i{background:var(--primary);border-radius:2px;height:4px;display:block}.public-mark i:first-child{width:100%}.public-mark i:nth-child(2){width:78%;margin-inline-start:11%}.public-mark i:nth-child(3){width:56%;margin-inline-start:22%}.public-nav{flex-wrap:wrap;align-items:center;gap:clamp(.75rem,2vw,1.5rem);display:flex}.public-nav a{color:var(--text-secondary);font-size:.95rem;text-decoration:none}.public-nav a:hover,.public-nav a:focus-visible{color:var(--text-primary);text-decoration:underline}.public-cta-small{border:1px solid var(--border-default);border-radius:999px;padding:.45rem .9rem;color:var(--text-primary)!important}.public-main{flex:1;width:min(72ch,100%);margin-inline:auto;padding:clamp(1.75rem,5vw,3.5rem) clamp(1rem,4vw,3rem) 4rem}.public-title h1,.public-hero h1{letter-spacing:-.02em;margin:0 0 .5rem;font-size:clamp(2rem,6vw,3rem);line-height:1.1}.public-intro,.public-hero-tagline{color:var(--text-secondary);margin:0 0 .75rem;font-size:clamp(1.05rem,2.5vw,1.25rem)}.public-updated{color:var(--text-tertiary);margin:0;font-size:.9rem}.public-hero{padding-bottom:1rem}.public-hero-lead{max-width:60ch;color:var(--text-secondary);line-height:1.65}.public-hero-actions{flex-wrap:wrap;gap:.75rem;margin:1.5rem 0 1rem;display:flex}.public-cta,.public-cta-secondary{min-height:46px;font-weight:var(--weight-semibold);border-radius:999px;justify-content:center;align-items:center;padding:.7rem 1.4rem;text-decoration:none;display:inline-flex}.public-cta{background:var(--primary);color:var(--primary-foreground)}.public-cta:hover,.public-cta:focus-visible{filter:brightness(1.08)}.public-cta-secondary{border:1px solid var(--border-default);color:var(--text-primary)}.public-cta-secondary:hover,.public-cta-secondary:focus-visible{background:var(--surface-hover)}.public-availability{border:1px solid var(--border-subtle);background:var(--surface-subtle);color:var(--text-secondary);border-radius:12px;margin:0;padding:.85rem 1rem;font-size:.95rem}.public-section{margin-top:clamp(2rem,5vw,3rem)}.public-section h2{letter-spacing:-.01em;margin:0 0 .75rem;font-size:clamp(1.3rem,3vw,1.6rem)}.public-section h3{margin:0 0 .4rem;font-size:1.05rem}.public-section p,.public-section li{color:var(--text-secondary);line-height:1.65}.public-section ul,.public-section ol{padding-inline-start:1.25rem}.public-section li{margin-bottom:.5rem}.public-section a{color:var(--text-primary);text-underline-offset:2px;text-decoration:underline}.public-section code{background:var(--surface-raised);color:var(--text-primary);border-radius:5px;padding:.1rem .35rem;font-size:.9em}.public-feature-grid,.public-two-column{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:1rem;padding:0;list-style:none;display:grid}.public-feature-grid li,.public-two-column>div{border:1px solid var(--border-subtle);background:var(--surface);border-radius:12px;padding:1rem}.public-two-column ul{margin-bottom:0}.public-callout{border-inline-start:3px solid var(--primary);background:var(--surface-subtle);border-radius:0 12px 12px 0;margin-top:1rem;padding:.9rem 1.1rem}.public-callout-warning{border-inline-start-color:var(--warning)}.public-steps li{margin-bottom:.75rem}.public-footer{border-top:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.5rem;padding:1.5rem clamp(1rem,4vw,3rem) 2.5rem;display:flex}.public-footer p{color:var(--text-tertiary);margin:0;font-size:.9rem}.public-footer nav{flex-wrap:wrap;gap:.75rem 1.25rem;display:flex}.public-footer a{color:var(--text-secondary);font-size:.9rem;text-decoration:none}.public-footer a:hover,.public-footer a:focus-visible{color:var(--text-primary);text-decoration:underline}.public-page a:focus-visible,.public-page button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}@media (prefers-reduced-motion:reduce){.public-page *{transition:none!important;animation:none!important}}.auth-policy-links{flex-wrap:wrap;justify-content:center;gap:.5rem 1.1rem;margin:1.25rem 0 0;font-size:.9rem;display:flex}.auth-policy-links a{color:var(--text-secondary);text-underline-offset:2px;text-decoration:underline}.auth-policy-links a:hover,.auth-policy-links a:focus-visible{color:var(--text-primary)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
