/*! tailwindcss v4.3.0 | 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)))){*,::backdrop,:after,:before{--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-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-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;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:host,:root{--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;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{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}:host,html{-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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{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}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,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,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-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,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-3{top:calc(var(--spacing) * 3)}.isolate{isolation:isolate}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.block\!{display:block!important}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.flex-shrink,.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.tracking-\[0\.16em\]{--tw-tracking:.16em;letter-spacing:.16em}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.ring,.shadow{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px)}.blur,.drop-shadow{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,)}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a)) drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f)}.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,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.block-1{block-size:calc(var(--spacing) * 1)}}:root{--fos-space-1:4px;--fos-space-2:8px;--fos-space-3:12px;--fos-space-4:16px;--fos-space-5:20px;--fos-space-6:24px;--fos-space-7:28px;--fos-space-8:32px;--fos-space-9:36px;--fos-space-10:40px;--fos-space-12:48px;--fos-space-16:64px;--fos-radius-sm:3px;--fos-radius-md:5px;--fos-radius-lg:8px;--fos-radius-xl:12px;--fos-radius-full:999px;--fos-ff-display:var(--fos-ff-display-loaded),"Bricolage Grotesque",sans-serif;--fos-ff-body:var(--fos-ff-display-loaded),"Bricolage Grotesque",sans-serif;--fos-ff-data:var(--fos-ff-data-loaded),"JetBrains Mono",monospace;--fos-ff-fancy:var(--fos-ff-fancy-loaded),"Fraunces",Georgia,serif;--theme-transition:background-color .22s ease,color .22s ease,border-color .22s ease}:root,:root[data-theme=light]{color-scheme:light;--fos-bg-base:#f4efe9;--fos-bg-01:#f9f5ef;--fos-bg-02:#fff;--fos-bg-03:#ede6dd;--fos-bg-04:#e0d7ca;--fos-bg-hover-subtle:#f0eae0;--fos-accent:#7a1e2c;--fos-accent-hi:#92293a;--fos-accent-lo:#5c1521;--fos-accent-dim:#7a1e2c14;--fos-accent-mid:#7a1e2c38;--fos-text-hi:#1a1413;--fos-text-mid:#574d48;--fos-text-lo:#7a6f66;--fos-text-muted:#b8aea4;--fos-border:#e2d9cc;--fos-border-strong:#ccc1b0;--fos-success:#5e7848;--fos-success-dim:#5e78481a;--fos-warning:#8c6515;--fos-warning-dim:#8c65151a;--fos-danger:#b03020;--fos-danger-dim:#b030201a;--fos-info:#1e547a;--fos-info-dim:#1e547a17;--fos-cog-shallow:#8c6515;--fos-cog-admin:#1e547a;--fos-cog-meeting:#8c5938;--fos-color-copper:#b86940;--fos-color-olive:#6e7330;--fos-color-sage:#5e7848;--fos-color-teal:#2f6863;--fos-color-marine:#3a6680;--fos-color-mauve:#8a5e76;--fos-color-plum:#704c70;--fos-color-sand:#88784e;--fos-mood-energized:#c97a5e;--fos-mood-neutral:#b5ada1;--fos-mood-drained:#7d9b94;--fos-mood-energized-text:#8e4a30;--fos-mood-neutral-text:#6e6256;--fos-mood-drained-text:#52766f;--fos-track-learning:var(--fos-color-sage);--fos-shadow-card:0 2px 6px #14100c14,0 1px 2px #14100c0a;--fos-shadow-fab:0 4px 16px #14100c1f,0 1px 2px #14100c14;--fos-shadow-modal:0 12px 40px #14100c29,0 4px 12px #14100c14}:root[data-theme=dark]{color-scheme:dark;--fos-bg-base:#0e0c0c;--fos-bg-01:#131010;--fos-bg-02:#191515;--fos-bg-03:#201b1b;--fos-bg-04:#292322;--fos-bg-hover-subtle:#1c1818;--fos-accent:#c14454;--fos-accent-hi:#d65a6a;--fos-accent-lo:#a13344;--fos-accent-dim:#c1445424;--fos-accent-mid:#c1445447;--fos-text-hi:#efeae5;--fos-text-mid:#a39c95;--fos-text-lo:#928a80;--fos-text-muted:#463e3a;--fos-border:#231e1e;--fos-border-strong:#322a29;--fos-success:#a8c490;--fos-success-dim:#a8c49024;--fos-warning:#d4a850;--fos-warning-dim:#d4a85024;--fos-danger:#e26a5a;--fos-danger-dim:#e26a5a24;--fos-info:#7aa9c4;--fos-info-dim:#7aa9c424;--fos-cog-shallow:#d4a850;--fos-cog-admin:#7aa9c4;--fos-cog-meeting:#b88c6c;--fos-color-copper:#e2956c;--fos-color-olive:#9aa050;--fos-color-sage:#a8c490;--fos-color-teal:#7dbdb5;--fos-color-marine:#5a8aa8;--fos-color-mauve:#b888a8;--fos-color-plum:#a07ba0;--fos-color-sand:#b8a87c;--fos-mood-energized:#e09a82;--fos-mood-neutral:#d4ccc0;--fos-mood-drained:#a0bdb5;--fos-mood-energized-text:#f2bba0;--fos-mood-neutral-text:#e8e2d6;--fos-mood-drained-text:#b8d0c8;--fos-track-learning:var(--fos-color-sage);--fos-shadow-card:0 2px 8px #00000040;--fos-shadow-fab:0 8px 24px #0006;--fos-shadow-modal:0 16px 48px #00000080,0 4px 12px #0000004d}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body,html{background:var(--fos-bg-base);color:var(--fos-text-hi);font-family:var(--fos-ff-body);transition:var(--theme-transition);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}:focus-visible{outline:2px solid var(--fos-accent-hi);outline-offset:2px;border-radius:var(--fos-radius-md)}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}*{scrollbar-width:thin;scrollbar-color:var(--fos-bg-04) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--fos-bg-04);background-clip:content-box;border:2px solid #0000;border-radius:4px;transition:background .14s}::-webkit-scrollbar-thumb:hover{background:var(--fos-border-strong);background-clip:content-box}::-webkit-scrollbar-corner{background:0 0}.scrollbar-hidden{scrollbar-width:none}.scrollbar-hidden::-webkit-scrollbar{display:none}.app-shell{--sidebar-width:220px;grid-template-columns:var(--sidebar-width) 1fr;min-height:100vh;display:grid}.app-shell[data-sidebar=collapsed]{--sidebar-width:64px}.main{padding:var(--fos-space-10) var(--fos-space-6);width:100%;max-width:1100px;margin:0 auto;position:relative;overflow-x:hidden}.sidebar{background:var(--fos-bg-01);border-right:1px solid var(--fos-border);padding:var(--fos-space-5) var(--fos-space-3) var(--fos-space-5);flex-direction:column;height:100vh;transition:width .3s cubic-bezier(.4,0,.2,1),padding .3s cubic-bezier(.4,0,.2,1);display:flex;position:sticky;top:0;overflow:visible}.sidebar-top{margin-bottom:var(--fos-space-6);flex-shrink:0;position:relative;overflow:visible}.brand,.sidebar-top{align-items:center;gap:var(--fos-space-2);display:flex}.brand{min-width:0;color:var(--fos-accent);flex:1;line-height:1;text-decoration:none}.brand-icon{flex-shrink:0;align-items:center;display:inline-flex}.brand-icon svg{width:20px;height:20px}.brand-wordmark{font-family:var(--fos-ff-fancy);letter-spacing:-.02em;white-space:nowrap;font-size:18px;font-weight:700;transition:opacity .16s,max-width .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.sidebar-collapse-toggle{background:var(--fos-bg-base);border:1px solid var(--fos-border);cursor:pointer;width:28px;height:28px;color:var(--fos-text-mid);z-index:10;box-shadow:var(--fos-shadow-card);border-radius:50%;justify-content:center;align-items:center;transition:background .14s,color .14s;display:flex;position:absolute;top:50%;right:-14px;transform:translateY(-50%)}.sidebar-collapse-toggle:hover{background:var(--fos-bg-02);color:var(--fos-text-hi)}.sidebar-collapse-toggle svg{width:14px;height:14px;transition:transform .3s cubic-bezier(.4,0,.2,1)}.sidebar-nav{flex-direction:column;flex:1;gap:2px;display:flex;overflow:hidden}.sidebar-link,.sidebar-row{align-items:center;gap:var(--fos-space-3);padding:9px var(--fos-space-3);border-radius:var(--fos-radius-md);font-family:var(--fos-ff-body);color:var(--fos-text-lo);cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:none;width:100%;font-size:13px;font-weight:400;text-decoration:none;transition:background-color .15s,color .15s;display:flex}.sidebar-link:hover,.sidebar-row:hover{color:var(--fos-text-mid);background:var(--fos-bg-hover-subtle)}.sidebar-link.active{color:var(--fos-accent);background:var(--fos-accent-dim)}.sidebar-icon{flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;display:inline-flex}.sidebar-icon svg{width:18px;height:18px}.sidebar-label{text-overflow:ellipsis;transition:opacity .16s,max-width .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.sidebar-bottom{gap:var(--fos-space-1);padding-top:var(--fos-space-4);flex-direction:column;flex-shrink:0;margin-top:auto;display:flex;overflow:hidden}.sidebar-bottom .sidebar-icon svg{opacity:.8}.theme-toggle-row{cursor:pointer}.plan-pill{align-items:center;gap:var(--fos-space-2);padding:7px var(--fos-space-3);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);margin-top:var(--fos-space-2);font-size:12px;transition:max-height .3s cubic-bezier(.4,0,.2,1),opacity .2s,margin .3s;display:flex;overflow:hidden}.plan-dot{background:var(--fos-text-lo);border-radius:50%;flex-shrink:0;width:7px;height:7px}.plan-text{color:var(--fos-text-hi);white-space:nowrap;font-weight:500}.plan-divider{color:var(--fos-text-lo)}.plan-count{color:var(--fos-text-mid);white-space:nowrap}.plan-upgrade{color:var(--fos-accent);padding-left:var(--fos-space-2);border-left:1px solid var(--fos-border);white-space:nowrap;margin-left:auto;font-weight:600;text-decoration:none}.plan-upgrade:hover{color:var(--fos-accent-hi)}.user-row{gap:var(--fos-space-2);padding:6px var(--fos-space-2);margin-top:var(--fos-space-1);display:flex;overflow:hidden}.avatar,.user-row{align-items:center}.avatar{border-radius:var(--fos-radius-full);background:var(--fos-bg-04);width:26px;height:26px;font-family:var(--fos-ff-body);color:var(--fos-text-mid);flex-shrink:0;justify-content:center;font-size:11px;font-weight:600;display:inline-flex}.user-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--fos-text-mid);flex:1;font-size:13px}.user-logout-form,.user-name{transition:opacity .16s,max-width .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.user-logout-form{flex-shrink:0;margin-left:auto}.logout{font-family:var(--fos-ff-body);color:var(--fos-text-lo);cursor:pointer;border-radius:var(--fos-radius-sm);white-space:nowrap;background:0 0;border:none;padding:3px 6px;font-size:12px;transition:color .12s,background .12s}.logout:hover{color:var(--fos-text-mid);background:var(--fos-bg-02)}.app-shell[data-sidebar=collapsed] .sidebar .brand-wordmark,.app-shell[data-sidebar=collapsed] .sidebar .sidebar-label,.app-shell[data-sidebar=collapsed] .sidebar .user-logout-form,.app-shell[data-sidebar=collapsed] .sidebar .user-name{opacity:0;pointer-events:none;max-width:0;overflow:hidden}.app-shell[data-sidebar=collapsed] .sidebar .plan-pill{opacity:0;pointer-events:none;max-height:0;margin-top:0;overflow:hidden}.app-shell[data-sidebar=collapsed] .sidebar .sidebar-collapse-toggle svg{transform:rotate(180deg)}.app-shell[data-sidebar=collapsed] .sidebar .sidebar-link,.app-shell[data-sidebar=collapsed] .sidebar .sidebar-row{padding:9px var(--fos-space-3);justify-content:flex-start}.app-shell[data-sidebar=collapsed] .sidebar .sidebar-icon svg{opacity:1;width:20px;height:20px}.sidebar-bell{cursor:pointer;width:28px;height:28px;color:var(--fos-text-mid);border-radius:var(--fos-radius-sm);background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;max-width:28px;transition:background .14s,color .14s,opacity .16s,max-width .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:visible}.sidebar-bell:hover{background:var(--fos-bg-02);color:var(--fos-text-hi)}.sidebar-bell svg{width:18px;height:18px}.sidebar-bell-badge{background:var(--fos-accent);color:#fff;border-radius:var(--fos-radius-full);text-align:center;min-width:14px;padding:2px 4px;font-size:9px;font-weight:700;line-height:1;position:absolute;top:-2px;right:-2px}.app-shell[data-sidebar=collapsed] .sidebar .brand{padding-left:var(--fos-space-3)}.app-shell[data-sidebar=collapsed] .sidebar .sidebar-bell--top,.sidebar-bell-row{display:none}.app-shell[data-sidebar=collapsed] .sidebar .sidebar-bell-row{display:flex}.sidebar-bell-row-icon{position:relative}.sidebar-bell-badge--inline{background:var(--fos-accent);color:#fff;border-radius:var(--fos-radius-full);text-align:center;pointer-events:none;min-width:14px;padding:2px 4px;font-size:9px;font-weight:700;line-height:1;position:absolute;top:-4px;right:-6px}.bottom-strip{display:none}.more-sheet-overlay{z-index:200;-webkit-backdrop-filter:blur(6px);background:#00000073;animation:fade-in .16s ease-out;position:fixed;inset:0}:root[data-theme=light] .more-sheet-overlay{background:#14100c59}.more-sheet{z-index:210;background:var(--fos-bg-base);border-top:1px solid var(--fos-border);border-radius:var(--fos-radius-lg) var(--fos-radius-lg) 0 0;padding:var(--fos-space-4) var(--fos-space-4) calc(var(--fos-space-5) + env(safe-area-inset-bottom));animation:slide-up .22s cubic-bezier(.16,1,.3,1);position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 32px #0000001f}.more-sheet-handle{border-radius:var(--fos-radius-full);background:var(--fos-border-strong);width:36px;height:4px;margin:0 auto var(--fos-space-5)}.more-sheet-items{gap:var(--fos-space-1);flex-direction:column;display:flex}.more-sheet-divider{background:var(--fos-border);height:1px;margin:var(--fos-space-2) 0}@keyframes slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.theme-toggle{border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);width:36px;height:36px;color:var(--fos-text-mid);cursor:pointer;background:0 0;flex-shrink:0;justify-content:center;align-items:center;transition:border-color .12s,color .12s,background .12s;display:inline-flex}.theme-toggle:hover{border-color:var(--fos-border-strong);color:var(--fos-text-hi);background:var(--fos-bg-hover-subtle)}.theme-toggle:focus-visible{border-color:var(--fos-accent);box-shadow:0 0 0 3px var(--fos-accent-dim);outline:none}.theme-toggle-icon{width:16px;height:16px}.form-field{gap:var(--fos-space-2);flex-direction:column;display:flex}.form-field label{color:var(--fos-text-mid);letter-spacing:.03em;text-transform:uppercase;font-size:12px;font-weight:500}.form-input{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);padding:var(--fos-space-3) var(--fos-space-4);font-family:var(--fos-ff-body);color:var(--fos-text-hi);width:100%;font-size:14px;transition:border-color .15s}.form-input:focus{border-color:var(--fos-accent);outline:none}.form-input::placeholder{color:var(--fos-text-muted)}.btn-primary{color:#fff;border-radius:var(--fos-radius-md);padding:var(--fos-space-3) var(--fos-space-5);font-family:var(--fos-ff-body);cursor:pointer;border:none;font-size:14px;font-weight:500;transition:background-color .15s}.btn-primary:hover{background:var(--fos-accent-hi)}.btn-oauth{justify-content:center;align-items:center;gap:var(--fos-space-2);background:var(--fos-bg-03);color:var(--fos-text-mid);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);padding:var(--fos-space-3) var(--fos-space-5);font-family:var(--fos-ff-body);cursor:pointer;width:100%;font-size:14px;transition:background-color .15s,color .15s;display:inline-flex}.btn-oauth:hover{background:var(--fos-bg-04);color:var(--fos-text-hi)}.btn-oauth svg{flex-shrink:0}.landing{max-width:980px;min-height:100vh;padding:var(--fos-space-6) var(--fos-space-8);flex-direction:column;margin:0 auto;display:flex}.landing-nav{justify-content:space-between;align-items:center;display:flex}.landing-brand{font-family:var(--fos-ff-display);color:var(--fos-accent);letter-spacing:-.01em;font-size:20px;font-weight:700}.landing-nav-link{color:var(--fos-text-mid);font-size:14px;text-decoration:none}.landing-nav-link:hover{color:var(--fos-text-hi)}.landing-hero{justify-content:center;gap:var(--fos-space-6);flex-direction:column;flex:1;max-width:560px;display:flex}.landing-hero h1{font-family:var(--fos-ff-display);letter-spacing:-.03em;color:var(--fos-text-hi);font-size:56px;font-weight:800;line-height:.95}.landing-tagline{font-family:var(--fos-ff-body);color:var(--fos-text-mid);max-width:480px;font-size:18px;line-height:1.4}.landing-cta-row{gap:var(--fos-space-3);flex-wrap:wrap;display:flex}.landing-cta{justify-content:center;align-items:center;width:auto;min-width:140px;text-decoration:none;display:inline-flex}.track-form-inline{gap:var(--fos-space-5);flex-direction:column;display:flex}.track-color-picker{gap:var(--fos-space-2);flex-wrap:wrap;display:flex}.track-color-swatch{border-radius:var(--fos-radius-full);background:var(--swatch-color);cursor:pointer;border:2px solid #0000;width:24px;height:24px;transition:border-color .15s,transform .15s}.track-color-swatch.is-selected{border-color:var(--fos-text-hi);transform:scale(1.18)}.track-cogtype-group{gap:var(--fos-space-2);flex-wrap:wrap;display:flex}.track-cogtype-btn{font-size:13px;font-family:var(--fos-ff-body);padding:var(--fos-space-2) var(--fos-space-3);border-radius:var(--fos-radius-md);background:var(--fos-bg-03);border:1px solid var(--fos-border);color:var(--fos-text-lo);cursor:pointer;transition:background-color .15s,color .15s,border-color .15s}.track-cogtype-btn.is-selected{background:var(--fos-accent-dim);border-color:var(--fos-accent);color:var(--fos-accent-hi)}.track-billable-check{align-items:center;gap:var(--fos-space-2);color:var(--fos-text-lo);cursor:pointer;font-size:13px;display:flex}.track-billable-check input[type=checkbox]{accent-color:var(--fos-accent);cursor:pointer;width:14px;height:14px}.settings-shell{gap:var(--fos-space-12);grid-template-columns:220px 1fr;align-items:start;display:grid}.settings-nav{gap:var(--fos-space-1);top:var(--fos-space-10);flex-direction:column;display:flex;position:sticky}.settings-nav-link{padding:var(--fos-space-2) var(--fos-space-3);border-radius:var(--fos-radius-md);color:var(--fos-text-lo);align-items:center;font-size:13px;text-decoration:none;transition:background-color .15s,color .15s;display:flex}.settings-nav-link:hover{color:var(--fos-text-mid);background:var(--fos-bg-hover-subtle)}.settings-nav-link[aria-current=page]{color:var(--fos-text-hi);background:var(--fos-bg-03);font-weight:500}.settings-content{max-width:680px}.tracks-editor{gap:var(--fos-space-8);flex-direction:column;display:flex}.tracks-editor-header h1{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.02em;font-size:20px;font-weight:700}.tracks-editor-hint{color:var(--fos-text-lo);margin-top:var(--fos-space-2);font-size:13px;line-height:1.5}.tracks-list{gap:var(--fos-space-2);flex-direction:column;display:flex}.track-row{align-items:center;gap:var(--fos-space-3);padding:var(--fos-space-3) var(--fos-space-4);background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);display:flex}.track-row-swatch{border-radius:var(--fos-radius-full);background:var(--swatch-color);flex-shrink:0;width:10px;height:10px}.track-row-name{color:var(--fos-text-hi);flex:1;font-size:14px}.track-row-meta{color:var(--fos-text-lo);text-transform:capitalize;font-size:12px}.track-row-badge{color:var(--fos-success);background:var(--fos-success-dim);border-radius:var(--fos-radius-full);padding:1px 8px;font-size:11px}.track-row-actions{gap:var(--fos-space-2);flex-shrink:0;display:flex}.track-action-btn{font-size:12px;font-family:var(--fos-ff-body);color:var(--fos-text-lo);cursor:pointer;padding:var(--fos-space-1) var(--fos-space-2);border-radius:var(--fos-radius-sm);background:0 0;border:none;transition:color .15s,background-color .15s}.track-action-btn:hover{color:var(--fos-text-mid);background:var(--fos-bg-03)}.track-action-btn--danger:hover{color:var(--fos-danger);background:var(--fos-danger-dim)}.tracks-empty{color:var(--fos-text-lo);text-align:center;padding:var(--fos-space-8);border:1px dashed var(--fos-border);border-radius:var(--fos-radius-md);font-size:13px}.track-form-row{background:var(--fos-bg-02);border:1px solid var(--fos-accent-mid);border-radius:var(--fos-radius-md);padding:var(--fos-space-5);gap:var(--fos-space-4);flex-direction:column;display:flex}.track-form-actions{gap:var(--fos-space-3);align-items:center;display:flex}.track-edit-notify{gap:var(--fos-space-2);padding-top:var(--fos-space-2);border-top:1px solid var(--fos-border);flex-direction:column;display:flex}.track-edit-notify-hint{color:var(--fos-text-lo);margin:0;font-size:12px}.btn-secondary{color:var(--fos-text-lo);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);padding:var(--fos-space-3) var(--fos-space-5);font-family:var(--fos-ff-body);cursor:pointer;background:0 0;font-size:14px;font-weight:500;transition:background-color .15s,color .15s}.btn-secondary:hover{background:var(--fos-bg-03);color:var(--fos-text-mid)}.tracks-add-btn{font-size:13px;font-family:var(--fos-ff-body);color:var(--fos-accent);border:1px dashed var(--fos-accent-mid);border-radius:var(--fos-radius-md);padding:var(--fos-space-3) var(--fos-space-4);cursor:pointer;text-align:center;background:0 0;width:100%;transition:background-color .15s,border-color .15s}.tracks-add-btn:hover{background:var(--fos-accent-dim);border-color:var(--fos-accent)}.tracks-upgrade-prompt{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);padding:var(--fos-space-6) var(--fos-space-8);gap:var(--fos-space-4);flex-direction:column;align-items:flex-start;display:flex}.tracks-upgrade-prompt p{color:var(--fos-text-lo);font-size:13px;line-height:1.5}.tracks-upgrade-link{align-items:center;width:auto;text-decoration:none;display:inline-flex}.tracks-archived{gap:var(--fos-space-3);flex-direction:column;display:flex}.tracks-archived h2{color:var(--fos-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:500}.track-archived-row{opacity:.65;background:var(--fos-bg-01)}.archive-editor{gap:var(--fos-space-8)}.archive-editor,.archive-list{flex-direction:column;display:flex}.archive-list{gap:var(--fos-space-2);margin:0;padding:0;list-style:none}.archive-row{align-items:center;gap:var(--fos-space-3);padding:var(--fos-space-3) var(--fos-space-4);background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);display:flex}.archive-row-stripe{border-radius:2px;flex-shrink:0;width:3px;height:32px}.archive-row-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.archive-row-name{color:var(--fos-text-hi);white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.archive-row-meta{color:var(--fos-text-lo);align-items:center;gap:var(--fos-space-2);font-size:12px;display:flex}.archive-row-sep{color:var(--fos-text-muted)}.archive-row-error{color:var(--fos-danger);margin-top:2px;font-size:12px}.archive-row-restore{font-size:12px;font-family:var(--fos-ff-body);color:var(--fos-text-lo);border:1px solid var(--fos-border);border-radius:var(--fos-radius-sm);padding:var(--fos-space-1) var(--fos-space-3);cursor:pointer;background:0 0;flex-shrink:0;transition:color .15s,background-color .15s,border-color .15s}.archive-row-restore:hover{color:var(--fos-text-hi);border-color:var(--fos-text-lo);background:var(--fos-bg-03)}.archive-row-restore:disabled{opacity:.5;cursor:not-allowed}.archive-empty{color:var(--fos-text-lo);text-align:center;padding:var(--fos-space-8);border:1px dashed var(--fos-border);border-radius:var(--fos-radius-md);font-size:13px}.ob-page{grid-template-columns:360px 1fr;min-height:100vh;display:grid}.ob-rail{background:var(--fos-bg-01);border-right:1px solid var(--fos-border);padding:var(--fos-space-10) var(--fos-space-9);height:100vh;transition:var(--theme-transition);flex-direction:column;display:flex;position:sticky;top:0}.ob-rail-head{margin-bottom:var(--fos-space-12);align-items:center;display:flex}.ob-brand{font-family:var(--fos-ff-display);color:var(--fos-accent);letter-spacing:-.015em;font-size:22px;font-weight:700;line-height:1}.ob-steps{gap:var(--fos-space-5);flex-direction:column;margin-bottom:auto;display:flex}.ob-step{align-items:flex-start;gap:var(--fos-space-4);padding:var(--fos-space-3) 0;transition:opacity .22s;display:flex}.ob-step-num{font-family:var(--fos-ff-data);letter-spacing:.16em;color:var(--fos-text-muted);flex-shrink:0;width:24px;padding-top:2px;font-size:10px;font-weight:600;line-height:1.4}.ob-step-label{font-family:var(--fos-ff-body);color:var(--fos-text-lo);font-size:14px;line-height:1.4;transition:color .22s}.ob-step-sub{font-family:var(--fos-ff-data);letter-spacing:.12em;color:var(--fos-text-muted);text-transform:uppercase;opacity:0;margin-top:2px;font-size:10px;transition:opacity .22s}.ob-step.active .ob-step-num{color:var(--fos-accent)}.ob-step.active .ob-step-label{color:var(--fos-text-hi);font-weight:500}.ob-step.active .ob-step-sub{opacity:1}.ob-step.done .ob-step-num{color:var(--fos-text-mid)}.ob-step.done .ob-step-label{color:var(--fos-text-mid);text-decoration:line-through;-webkit-text-decoration-color:var(--fos-border-strong);text-decoration-color:var(--fos-border-strong);text-decoration-thickness:1px}.ob-coach{border-left:2px solid var(--fos-accent);padding:var(--fos-space-3) 0 var(--fos-space-3) var(--fos-space-4);margin-top:var(--fos-space-8)}.ob-coach-msg{font-family:var(--fos-ff-fancy);color:var(--fos-text-mid);font-size:15px;font-style:italic;font-weight:400;line-height:1.55}.ob-coach-attr{font-family:var(--fos-ff-data);text-transform:uppercase;letter-spacing:.16em;color:var(--fos-text-lo);margin-top:var(--fos-space-2);font-size:9px}.ob-rail-foot{padding-top:var(--fos-space-6);margin-top:auto}.ob-stage{padding:var(--fos-space-16) var(--fos-space-16);flex-direction:column;justify-content:center;max-width:760px;min-height:100vh;display:flex}.ob-screen-active{animation:ob-screen-in .38s cubic-bezier(.16,1,.3,1) forwards}@keyframes ob-screen-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.ob-kicker{font-family:var(--fos-ff-data);letter-spacing:.18em;color:var(--fos-accent);text-transform:uppercase;margin-bottom:var(--fos-space-3);align-items:center;gap:var(--fos-space-2);font-size:10px;font-weight:600;display:inline-flex}.ob-kicker-dot{background:var(--fos-accent);border-radius:50%;width:5px;height:5px;display:inline-block}.ob-h1{font-family:var(--fos-ff-display);letter-spacing:-.025em;color:var(--fos-text-hi);margin-bottom:var(--fos-space-4);max-width:560px;font-size:44px;font-weight:700;line-height:1.02}.ob-lead{font-family:var(--fos-ff-fancy);color:var(--fos-text-mid);max-width:540px;margin-bottom:var(--fos-space-10);padding-left:var(--fos-space-4);font-size:15px;font-style:italic;font-weight:400;line-height:1.5;position:relative}.ob-lead:before{content:"";background:var(--fos-accent-mid);border-radius:1px;width:2px;position:absolute;top:4px;bottom:4px;left:0}.ob-section{margin-bottom:var(--fos-space-8)}.ob-label{font-family:var(--fos-ff-data);letter-spacing:.16em;text-transform:uppercase;color:var(--fos-text-mid);margin-bottom:var(--fos-space-3);font-size:10px;font-weight:600;display:block}.ob-help{font-family:var(--fos-ff-body);color:var(--fos-text-lo);line-height:1.55}.ob-error,.ob-help{margin-top:var(--fos-space-3);font-size:13px}.ob-error{color:var(--fos-danger)}.ob-input{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);width:100%;font-family:var(--fos-ff-body);color:var(--fos-text-hi);box-shadow:var(--fos-shadow-card);padding:13px 16px;font-size:15px;transition:border-color .12s,background .12s,box-shadow .12s}.ob-input::placeholder{color:var(--fos-text-muted)}.ob-input:focus{border-color:var(--fos-accent);box-shadow:0 0 0 3px var(--fos-accent-dim);outline:none}.ob-chips{gap:var(--fos-space-3);flex-wrap:wrap;display:flex}.ob-chip{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);font-family:var(--fos-ff-body);color:var(--fos-text-mid);cursor:pointer;box-shadow:var(--fos-shadow-card);padding:11px 18px;font-size:14px;font-weight:500;transition:all .14s}.ob-chip:hover{border-color:var(--fos-border-strong);color:var(--fos-text-hi)}.ob-chip.selected{border-color:var(--fos-accent);background:var(--fos-accent-dim);color:var(--fos-accent);font-weight:600}.ob-other-input-wrap-visible{margin-top:var(--fos-space-4);max-width:360px;animation:ob-screen-in .28s cubic-bezier(.16,1,.3,1) forwards}.ob-actions{align-items:center;gap:var(--fos-space-4);margin-top:var(--fos-space-10);padding-top:var(--fos-space-6);border-top:1px solid var(--fos-border);display:flex}.ob-btn{font-family:var(--fos-ff-body);border-radius:var(--fos-radius-md);cursor:pointer;align-items:center;gap:var(--fos-space-2);border:none;padding:12px 22px;font-size:14px;font-weight:600;transition:background .14s,color .14s,opacity .14s;display:inline-flex}.ob-btn-primary{background:var(--fos-accent);color:#fff;font-weight:600}.ob-btn-primary:hover{background:var(--fos-accent-hi)}.ob-btn-primary:disabled{background:var(--fos-bg-04);color:var(--fos-text-muted);cursor:not-allowed}.ob-btn-ghost{color:var(--fos-text-lo);background:0 0;padding:12px 14px;font-weight:500}.ob-btn-ghost:hover{color:var(--fos-text-mid)}.ob-btn-back{color:var(--fos-text-lo);background:0 0;margin-right:auto;padding:12px 14px;font-weight:500}.ob-btn-back:hover{color:var(--fos-text-mid)}.ob-hour-grid{gap:var(--fos-space-3);grid-template-columns:repeat(5,1fr);max-width:540px;display:grid}.ob-hour-chip{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);padding:var(--fos-space-5) var(--fos-space-3);font-family:var(--fos-ff-body);cursor:pointer;box-shadow:var(--fos-shadow-card);text-align:center;align-items:center;gap:var(--fos-space-1);flex-direction:column;min-width:0;transition:all .14s;display:flex}.ob-hour-chip:hover{border-color:var(--fos-border-strong)}.ob-hour-chip:hover .ob-hour-chip-num{color:var(--fos-text-hi)}.ob-hour-chip.selected{border-color:var(--fos-accent);background:var(--fos-accent-dim)}.ob-hour-chip-num{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.02em;font-size:28px;font-weight:700;line-height:1}.ob-hour-chip.selected .ob-hour-chip-num{color:var(--fos-accent)}.ob-hour-chip-unit{font-family:var(--fos-ff-data);letter-spacing:.18em;text-transform:uppercase;color:var(--fos-text-lo);font-size:9px}.ob-hour-chip.selected .ob-hour-chip-unit{color:var(--fos-accent)}.ob-oauth-stack{gap:var(--fos-space-3);margin-bottom:var(--fos-space-2);flex-direction:column;display:flex}.ob-oauth-btn{justify-content:center;align-items:center;gap:var(--fos-space-2);background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);width:100%;padding:12px var(--fos-space-5);font-family:var(--fos-ff-body);color:var(--fos-text-mid);cursor:pointer;box-shadow:var(--fos-shadow-card);font-size:14px;font-weight:500;transition:background .14s,color .14s;display:inline-flex}.ob-oauth-btn:hover{background:var(--fos-bg-03);color:var(--fos-text-hi)}.ob-oauth-btn svg{flex-shrink:0}.ob-divider{align-items:center;gap:var(--fos-space-4);margin:var(--fos-space-6) 0;display:flex}.ob-divider:after,.ob-divider:before{content:"";background:var(--fos-border);flex:1;height:1px}.ob-divider-label{font-family:var(--fos-ff-data);letter-spacing:.12em;text-transform:uppercase;color:var(--fos-text-muted);font-size:10px;font-weight:600}.ob-signin-line{margin-top:var(--fos-space-6);color:var(--fos-text-lo);font-size:13px}.ob-signin-line-inline{text-align:right;margin-top:0;margin-left:auto}.ob-signin-line a{color:var(--fos-accent);font-weight:600;text-decoration:none}.ob-signin-line a:hover{color:var(--fos-accent-hi)}.ob-summary{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);padding:var(--fos-space-5) var(--fos-space-6);margin-top:var(--fos-space-6);max-width:540px}.ob-summary-row{padding:var(--fos-space-2) 0;border-bottom:1px solid var(--fos-border);justify-content:space-between;align-items:baseline;display:flex}.ob-summary-row:last-child{border-bottom:none}.ob-summary-key{font-family:var(--fos-ff-data);letter-spacing:.16em;text-transform:uppercase;color:var(--fos-text-lo);font-size:10px}.ob-summary-val{font-family:var(--fos-ff-body);color:var(--fos-text-hi);font-size:14px;font-weight:500}@media (max-width:1180px){.ob-page{grid-template-columns:280px 1fr}.ob-rail{padding:var(--fos-space-9) var(--fos-space-7)}.ob-stage{padding:var(--fos-space-12) var(--fos-space-10);max-width:none}.ob-h1{font-size:38px}}@media (max-width:920px){.ob-page{grid-template-columns:1fr}.ob-rail{height:auto;padding:var(--fos-space-5) var(--fos-space-7);border-right:none;border-bottom:1px solid var(--fos-border);position:relative}.ob-rail-head{margin-bottom:var(--fos-space-4)}.ob-stage{padding:var(--fos-space-10) var(--fos-space-9);justify-content:flex-start;width:100%;max-width:720px;min-height:auto;margin:0 auto}.ob-steps{gap:var(--fos-space-3) var(--fos-space-5);flex-flow:wrap;margin-bottom:0}.ob-steps-preview{display:none}.ob-step{align-items:center;padding:0}.ob-coach,.ob-step .ob-step-label,.ob-step-sub{display:none}.ob-step.active{background:var(--fos-accent-dim);border-radius:var(--fos-radius-md);gap:8px;padding:4px 10px 4px 8px}.ob-step.active .ob-step-label{color:var(--fos-accent);font-size:13px;font-weight:600;display:inline}.ob-step.done .ob-step-num{color:var(--fos-text-lo)}.ob-step-num{width:auto}.ob-h1{font-size:36px}}@media (max-width:640px){.ob-rail{padding:var(--fos-space-5)}.ob-stage{padding:var(--fos-space-8) var(--fos-space-5)}.ob-brand{font-size:20px}.ob-h1{font-size:30px}.ob-kicker{font-size:9px}.ob-steps{gap:var(--fos-space-3)}.ob-chips{gap:var(--fos-space-2)}.ob-chip{text-align:center;flex:calc(50% - 4px);padding:11px 14px}.ob-input{font-size:16px}.ob-actions{gap:var(--fos-space-3);padding-top:var(--fos-space-5);margin-top:var(--fos-space-7);flex-wrap:wrap}.ob-btn-primary{flex:auto;justify-content:center;padding:14px 22px}.ob-btn-back{padding:14px 12px}.ob-lead{margin-bottom:var(--fos-space-7)}.ob-section{margin-bottom:var(--fos-space-6)}.ob-signin-line-inline{margin-top:var(--fos-space-4);text-align:center;width:100%;margin-left:0}}@media (max-width:420px){.ob-stage{padding:var(--fos-space-7) var(--fos-space-4)}.ob-rail{padding:var(--fos-space-4)}.ob-h1{font-size:26px}.ob-lead{font-size:14px}.ob-chip{flex:100%}.ob-steps{gap:var(--fos-space-2)}.ob-step.active{padding:4px 8px}.ob-step.active .ob-step-label{font-size:12px}}.ob-track-list{gap:var(--fos-space-3);margin-bottom:var(--fos-space-5);flex-direction:column;display:flex}.ob-track-row{align-items:center;gap:var(--fos-space-4);background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);padding:var(--fos-space-3) var(--fos-space-4);box-shadow:var(--fos-shadow-card);transition:border-color .12s,background .12s;display:flex}.ob-track-row:focus-within{border-color:var(--fos-accent);box-shadow:0 0 0 3px var(--fos-accent-dim)}.ob-track-swatch{background:var(--track-color);border-radius:3px;flex-shrink:0;width:12px;height:12px;box-shadow:inset 0 0 0 1px #00000014}.ob-track-input{font-family:var(--fos-ff-body);color:var(--fos-text-hi);background:0 0;border:none;flex:1;padding:4px 0;font-size:14px;font-weight:500}.ob-track-input:focus{outline:none}.ob-track-input::placeholder{color:var(--fos-text-muted)}.ob-track-primary{font-family:var(--fos-ff-data);letter-spacing:.16em;text-transform:uppercase;color:var(--fos-accent);background:var(--fos-accent-dim);border-radius:var(--fos-radius-sm);padding:3px 7px;font-size:9px;font-weight:600}.ob-track-remove{color:var(--fos-text-muted);cursor:pointer;border-radius:var(--fos-radius-sm);background:0 0;border:none;align-items:center;padding:4px;transition:color .12s,background .12s;display:inline-flex}.ob-track-remove:hover{color:var(--fos-danger);background:var(--fos-danger-dim)}.ob-track-remove svg{width:14px;height:14px}.ob-add-track{border:1px dashed var(--fos-border-strong);color:var(--fos-text-lo);border-radius:var(--fos-radius-md);padding:var(--fos-space-3) var(--fos-space-4);font-family:var(--fos-ff-data);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;align-items:center;gap:var(--fos-space-2);background:0 0;font-size:10px;transition:color .12s,border-color .12s,background .12s;display:inline-flex}.ob-add-track:hover{color:var(--fos-text-mid);border-color:var(--fos-text-lo);background:var(--fos-bg-hover-subtle)}.ob-add-track-plus{font-family:var(--fos-ff-body);font-size:14px;font-weight:500;line-height:1}a.ob-btn-back{text-decoration:none}@media (max-width:760px){.ob-hour-grid{grid-template-columns:repeat(4,1fr)}.ob-hour-grid .ob-hour-chip:last-child{gap:var(--fos-space-2);padding:var(--fos-space-3) var(--fos-space-4);flex-direction:row;grid-column:1/-1}.ob-hour-grid .ob-hour-chip:last-child .ob-hour-chip-num{font-size:16px!important}}@media (max-width:640px){.ob-hour-grid{gap:var(--fos-space-2);grid-template-columns:repeat(3,1fr)}.ob-hour-chip{padding:var(--fos-space-4) var(--fos-space-2)}.ob-hour-chip-num{font-size:24px}.ob-summary{padding:var(--fos-space-4) var(--fos-space-5)}.ob-summary-row{padding:var(--fos-space-2) 0}}@media (max-width:420px){.ob-hour-grid{grid-template-columns:repeat(2,1fr)}.ob-hour-grid .ob-hour-chip:last-child{grid-column:1/-1}}.today-page{min-height:100%;padding:0;position:relative}.today-header{align-items:baseline;gap:var(--fos-space-4);margin-bottom:var(--fos-space-8);display:flex}.today-title{font-family:var(--fos-ff-display);letter-spacing:-.02em;color:var(--fos-text-hi);font-size:32px;font-weight:700;line-height:1}.today-date{font-family:var(--fos-ff-data);letter-spacing:.12em;text-transform:uppercase;color:var(--fos-text-lo);font-size:11px}.block-list{gap:var(--fos-space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.today-coach-note{text-align:left;width:100%;margin:var(--fos-space-4) 0 var(--fos-space-2);background:var(--fos-bg-02);border:1px solid var(--fos-border);border-left:2px solid var(--fos-accent);border-radius:0 var(--fos-radius-md) var(--fos-radius-md) 0;padding:var(--fos-space-3) var(--fos-space-5);box-shadow:var(--fos-shadow-card);cursor:pointer;transition:background .14s;animation:coachEnter .52s cubic-bezier(.16,1,.3,1) 80ms both;display:block}.today-coach-note:hover{background:var(--fos-bg-03)}.today-coach-note:focus-visible{outline:2px solid var(--fos-accent);outline-offset:2px}.today-coach-note-text{font-family:var(--fos-ff-fancy);color:var(--fos-text-hi);letter-spacing:-.005em;font-size:15px;font-style:italic;font-weight:500;line-height:1.5}.today-head{margin-bottom:var(--fos-space-4);justify-content:space-between;align-items:center;display:flex}.today-head-label{font-family:var(--fos-ff-data);letter-spacing:.18em;text-transform:uppercase;color:var(--fos-text-lo);font-size:9px;font-weight:600}.density-icons{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);gap:2px;padding:2px;display:inline-flex}.density-icon{border-radius:var(--fos-radius-sm);width:28px;height:28px;color:var(--fos-text-lo);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s;display:inline-flex}.density-icon svg{width:14px;height:14px}.density-icon:hover{color:var(--fos-text-mid);background:var(--fos-bg-03)}.density-icon.active{background:var(--fos-bg-04);color:var(--fos-text-hi)}.block-list[data-density=comfortable]{gap:var(--fos-space-3);flex-direction:column;display:flex}.block-list[data-density=compact]{gap:var(--fos-space-3);grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;align-items:stretch;display:grid}.block-list[data-density=compact]>li{flex-direction:column;display:flex}.block-list[data-density=compact] .block-card,.block-list[data-density=compact] .block-empty{flex:1}.block-list[data-density=compact] .block-card-actions{margin-top:auto}@media (max-width:640px){.block-list[data-density=compact]{grid-template-columns:1fr}}.block-card{gap:var(--fos-space-2);background:var(--fos-bg-02);border-radius:var(--fos-radius-md);border:1px solid var(--fos-border);border-left:3px solid var(--block-stripe,var(--fos-accent));padding:var(--fos-space-4) var(--fos-space-5);box-shadow:var(--fos-shadow-card);flex-direction:column;transition:border-color .12s,background .12s;display:flex;position:relative}.block-card:hover{background:var(--fos-bg-hover-subtle)}.block-card-title{font-family:var(--fos-ff-body);color:var(--fos-text-hi);font-size:15px;font-weight:500;line-height:1.3}.block-card-status--running{color:var(--fos-accent);letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:600}.block-card-description{font-family:var(--fos-ff-body);color:var(--fos-text-lo);margin:0;font-size:12px;font-style:italic;line-height:1.4}.block-card-meta{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.block-card-meta-sep{color:var(--fos-text-muted);margin:0 2px}.block-card-duration{font-family:var(--fos-ff-data);color:var(--fos-text-lo);font-size:11px}.block-card-cog{gap:3px}.block-card-cog,.block-card-meta-track{font-family:var(--fos-ff-data);align-items:center;font-size:11px;display:inline-flex}.block-card-meta-track{gap:4px}.block-card-meta-project{font-family:var(--fos-ff-data);color:var(--fos-text-muted);font-size:11px}.block-card-actions{margin-top:var(--fos-space-4);align-items:center;gap:var(--fos-space-4);padding-top:var(--fos-space-3);border-top:1px solid var(--fos-border);display:flex}.block-card-pause-btn{border:1px solid var(--fos-border);width:32px;height:32px;color:var(--fos-text-mid);border-radius:var(--fos-radius-sm);cursor:pointer;background:0 0;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background .14s,color .14s,border-color .14s;display:inline-flex}.block-card-pause-btn:hover{background:var(--fos-bg-02);color:var(--fos-text-hi);border-color:var(--fos-text-lo)}.block-card-pause-btn svg{width:14px;height:14px}.block-overflow{z-index:5;position:absolute;top:12px;right:14px}.block-overflow-btn{color:var(--fos-text-lo);border-radius:var(--fos-radius-sm);letter-spacing:.08em;cursor:pointer;background:0 0;border:0;padding:4px 8px;font-size:13px;line-height:1;transition:background .14s,color .14s}.block-overflow-btn:hover{color:var(--fos-text-hi);background:var(--fos-bg-03)}.block-overflow-menu{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);z-index:20;flex-direction:column;gap:0;min-width:156px;padding:4px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 24px #0000001f,0 2px 6px #0000000f}.block-overflow-menu:before{content:"";background:var(--fos-bg-02);border-top:1px solid var(--fos-border);border-left:1px solid var(--fos-border);width:8px;height:8px;position:absolute;top:-5px;right:12px;transform:rotate(45deg)}.block-overflow-item{color:var(--fos-text-mid);text-align:left;font-size:13px;font-family:var(--fos-ff-body);border-radius:var(--fos-radius-sm);cursor:pointer;background:0 0;border:0;padding:8px 12px;font-weight:500;transition:background .12s,color .12s}.block-overflow-item:hover{background:var(--fos-bg-03);color:var(--fos-text-hi)}.block-overflow-item--danger{color:var(--fos-danger)}.block-overflow-item--danger:hover{background:var(--fos-danger-dim);color:var(--fos-danger)}.block-overflow-item:disabled{opacity:.5;cursor:default}.block-inline-actions{align-items:center;gap:var(--fos-space-2);display:flex}.block-list[data-density=comfortable] .block-overflow{display:none}.block-list[data-density=comfortable] .block-inline-actions{display:flex}.block-list[data-density=compact] .block-overflow{display:block}.block-list[data-density=compact] .block-inline-actions{display:none}.block-list[data-density=compact] .block-card-title{padding-right:36px}.btn{font-family:var(--fos-ff-body);border-radius:var(--fos-radius-md);cursor:pointer;border:none;width:auto;padding:8px 18px;font-size:14px;font-weight:600;transition:background .15s,color .15s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--fos-accent);color:var(--fos-bg-base);font-weight:700}.btn-primary:hover:not(:disabled){background:var(--fos-accent-hi)}.btn-link{color:var(--fos-text-mid);background:0 0;padding:0;font-size:13px}.btn-link:hover:not(:disabled){color:var(--fos-text-hi)}.btn-link--danger{color:var(--fos-danger)}.btn-link--danger:hover:not(:disabled){color:#d68272}.btn-link--accent{color:var(--fos-accent)}.btn-link--accent:hover:not(:disabled){color:var(--fos-accent-hi)}@keyframes block-pulse{0%,to{box-shadow:0 0 0 0 var(--fos-accent-mid)}50%{box-shadow:0 0 0 5px var(--fos-accent-dim)}}.block-card--active{background:var(--fos-accent-dim);cursor:pointer;animation:block-pulse 2s ease-in-out infinite}.block-card--active:hover{background:var(--fos-accent)}@supports (color:color-mix(in lab,red,red)){.block-card--active:hover{background:color-mix(in srgb,var(--fos-accent) 16%,transparent)}}@media (prefers-reduced-motion:reduce){.block-card--active{animation:none}}.block-empty{border:1px dashed var(--fos-border-strong);border-radius:var(--fos-radius-lg);padding:var(--fos-space-5) var(--fos-space-6);cursor:pointer;text-align:left;width:100%;min-height:110px;color:inherit;background:0 0;align-items:center;font-family:inherit;transition:border-color .25s,background .25s;display:flex;position:relative}.block-empty:hover{border-color:var(--fos-accent);background:var(--fos-accent-dim);border-style:solid}.block-empty:hover .block-empty-circle{background:var(--fos-accent);border-color:var(--fos-accent);color:var(--fos-bg-base);border-style:solid;transform:scale(1.05)}.block-empty:hover .block-empty-prompt{color:var(--fos-text-hi)}.block-empty:hover .block-empty-action{color:var(--fos-accent)}.block-empty-circle{border:1.5px dashed var(--fos-border-strong);width:44px;height:44px;color:var(--fos-text-mid);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:22px;font-weight:300;line-height:1;transition:all .25s;display:inline-flex}.block-empty-text{flex-direction:column;gap:4px;display:flex}.block-empty-prompt{font-family:var(--fos-ff-fancy);color:var(--fos-text-mid);letter-spacing:-.005em;font-size:16px;font-style:italic;font-weight:400;line-height:1.3;transition:color .25s}.block-empty-action{font-family:var(--fos-ff-body);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:600;transition:color .25s}.block-list[data-density=comfortable] .block-empty{gap:var(--fos-space-5);text-align:left;flex-direction:row;align-items:center}.block-list[data-density=compact] .block-empty{gap:var(--fos-space-3);text-align:center;padding:var(--fos-space-6) var(--fos-space-4);flex-direction:column;align-items:center}.block-list[data-density=compact] .block-empty-text{align-items:center}.block-list-item--empty{list-style:none}.add-block-log-past-link{text-align:center;width:100%;margin-top:var(--fos-space-3);font-family:var(--fos-ff-body);color:var(--fos-text-muted);cursor:pointer;padding:var(--fos-space-1) 0;background:0 0;border:none;font-size:13px;transition:color .12s;display:block}.add-block-log-past-link:hover{color:var(--fos-text-mid)}.cog-icon{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.cog-icon svg{width:100%;height:100%}.blocks-done-group{margin-top:var(--fos-space-4);padding-top:var(--fos-space-4);border-top:1px solid var(--fos-border);gap:var(--fos-space-2);flex-direction:column;display:flex}.blocks-done-group[data-density=compact]{gap:var(--fos-space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (max-width:640px){.blocks-done-group[data-density=compact]{grid-template-columns:1fr}}.block-done{align-items:baseline;gap:var(--fos-space-3);padding:var(--fos-space-3) var(--fos-space-4);background:var(--fos-bg-01);border-left:2px solid var(--fos-accent);border-radius:0 var(--fos-radius-md) var(--fos-radius-md) 0;transition:background .12s;display:flex}.block-done:hover{background:var(--fos-bg-02)}.block-done--menu-open{z-index:10;position:relative}.block-done--deep{border-left-color:var(--fos-accent)}.block-done--shallow{border-left-color:var(--fos-cog-shallow)}.block-done--admin{border-left-color:var(--fos-cog-admin)}.block-done--meeting{border-left-color:var(--fos-cog-meeting)}.bd-check{color:var(--fos-accent);flex-shrink:0;font-size:13px;font-weight:600;line-height:1}.bd-title{font-family:var(--fos-ff-body);color:var(--fos-text-mid);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:14px;font-weight:500;overflow:hidden}.bd-meta{font-family:var(--fos-ff-data);color:var(--fos-text-lo);white-space:nowrap;flex-shrink:0;font-size:11px}.bd-meta-sep{color:var(--fos-text-muted);margin:0 2px}.bd-cog{gap:2px}.bd-cog,.bd-meta-track{align-items:center;display:inline-flex}.bd-meta-track{gap:3px}.bd-meta-project{color:var(--fos-text-muted)}.fab{bottom:var(--fos-space-8);right:var(--fos-space-8);background:var(--fos-accent);color:#fff;cursor:pointer;width:52px;height:52px;box-shadow:var(--fos-shadow-fab);z-index:40;border:none;border-radius:50%;justify-content:center;align-items:center;transition:background .14s,transform .12s;display:flex;position:fixed}.fab:hover{background:var(--fos-accent-hi);transform:scale(1.06)}.fab svg{width:20px;height:20px}.fab-wrapper{bottom:var(--fos-space-8);right:var(--fos-space-8);align-items:flex-end;gap:var(--fos-space-3);z-index:40;flex-direction:column;display:flex;position:fixed}.fab-wrapper .fab{flex-shrink:0;position:static}.fab--open{background:var(--fos-bg-04);color:var(--fos-text-hi)}.fab--open:hover{background:var(--fos-bg-04);transform:none}.fab-menu{gap:var(--fos-space-2);flex-direction:column;align-items:flex-end;display:flex}.fab-menu-item{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-full);color:var(--fos-text-hi);font-family:var(--fos-ff-body);padding:var(--fos-space-2) var(--fos-space-5);cursor:pointer;box-shadow:var(--fos-shadow-card);white-space:nowrap;font-size:14px;font-weight:500;transition:background-color .14s,color .14s}.fab-menu-item:hover{background:var(--fos-bg-03)}.sheet-overlay{z-index:50;background:#00000073;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}@media (min-width:641px){.sheet-overlay{padding:var(--fos-space-6);align-items:center}}.sheet{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-xl) var(--fos-radius-xl) 0 0;box-shadow:var(--fos-shadow-modal);flex-direction:column;width:100%;max-width:560px;max-height:92vh;display:flex;overflow-y:auto}@media (min-width:641px){.sheet{border-radius:var(--fos-radius-xl);max-height:80vh}}.sheet-header{padding:var(--fos-space-5) var(--fos-space-6);border-bottom:1px solid var(--fos-border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.sheet-title{font-family:var(--fos-ff-display);letter-spacing:-.015em;color:var(--fos-text-hi);font-size:18px;font-weight:700}.sheet-close{color:var(--fos-text-lo);cursor:pointer;padding:var(--fos-space-1);border-radius:var(--fos-radius-sm);background:0 0;border:none;align-items:center;transition:color .12s;display:flex}.sheet-close:hover{color:var(--fos-text-mid)}.sheet-close svg{width:16px;height:16px}.sheet-body{padding:var(--fos-space-6);gap:var(--fos-space-6);flex-direction:column;flex:1;display:flex;overflow-y:auto}.sheet-field{gap:var(--fos-space-3);flex-direction:column;display:flex}.sheet-checkbox,.sheet-field--inline{gap:var(--fos-space-2)}.sheet-checkbox{align-items:center;font-family:var(--fos-ff-body);color:var(--fos-text-mid);cursor:pointer;font-size:14px;display:flex}.sheet-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--fos-accent);cursor:pointer;flex-shrink:0}.toggle{border-radius:var(--fos-radius-full);cursor:pointer;border:none;flex-shrink:0;align-items:center;width:36px;height:20px;padding:2px;transition:background-color .2s;display:inline-flex;position:relative}.toggle,.toggle:hover:not(.toggle--disabled){background:var(--fos-border)}@supports (color:color-mix(in lab,red,red)){.toggle:hover:not(.toggle--disabled){background:color-mix(in srgb,var(--fos-border) 80%,var(--fos-text-mid))}}.toggle--on,.toggle--on:hover:not(.toggle--disabled){background:var(--fos-accent)}@supports (color:color-mix(in lab,red,red)){.toggle--on:hover:not(.toggle--disabled){background:color-mix(in srgb,var(--fos-accent) 88%,white)}}.toggle--disabled{cursor:not-allowed;opacity:.5}.toggle:focus-visible{outline:2px solid var(--fos-accent);outline-offset:2px}.toggle-thumb{background:var(--fos-bg-base);border-radius:50%;width:16px;height:16px;transition:transform .2s;display:block;box-shadow:0 1px 2px #00000026}.toggle--on .toggle-thumb{transform:translate(16px)}.sheet-field-toggle-row{justify-content:space-between;align-items:center;gap:var(--fos-space-3);display:flex}.sheet-label{font-family:var(--fos-ff-data);letter-spacing:.16em;text-transform:uppercase;color:var(--fos-text-mid);font-size:10px;font-weight:600}.sheet-pills{gap:var(--fos-space-2);flex-wrap:wrap;display:flex}.sheet-pill{align-items:center;gap:var(--fos-space-2);background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-full);font-family:var(--fos-ff-body);color:var(--fos-text-mid);cursor:pointer;padding:6px 14px;font-size:13px;font-weight:500;transition:all .12s;display:inline-flex}.sheet-pill:hover{border-color:var(--fos-border-strong);color:var(--fos-text-hi)}.sheet-pill--selected{border-color:var(--pill-accent,var(--fos-accent));background:var(--pill-accent,var(--fos-accent))}@supports (color:color-mix(in lab,red,red)){.sheet-pill--selected{background:color-mix(in srgb,var(--pill-accent,var(--fos-accent)) 10%,transparent)}}.sheet-pill--selected{color:var(--pill-accent,var(--fos-accent));font-weight:600}.sheet-pill-swatch{border-radius:2px;flex-shrink:0;width:8px;height:8px}.sheet-input{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);width:100%;font-family:var(--fos-ff-body);color:var(--fos-text-hi);box-shadow:var(--fos-shadow-card);padding:12px 14px;font-size:15px;transition:border-color .12s,box-shadow .12s}.sheet-input::placeholder{color:var(--fos-text-muted)}.sheet-input:focus{border-color:var(--fos-accent);box-shadow:0 0 0 3px var(--fos-accent-dim);outline:none}.sheet-input--sm{margin-top:var(--fos-space-2);padding:9px 12px;font-size:14px}.sheet-input[type=number]{appearance:textfield}.sheet-input[type=number]::-webkit-inner-spin-button,.sheet-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.sheet-textarea{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);width:100%;font-family:var(--fos-ff-body);color:var(--fos-text-hi);resize:vertical;min-height:60px;box-shadow:var(--fos-shadow-card);padding:10px 14px;font-size:14px;line-height:1.5;transition:border-color .12s,box-shadow .12s}.sheet-textarea::placeholder{color:var(--fos-text-muted)}.sheet-textarea:focus{border-color:var(--fos-accent);box-shadow:0 0 0 3px var(--fos-accent-dim);outline:none}.sheet-label-optional{color:var(--fos-text-muted);font-size:10px;font-weight:400}.sheet-duration-grid{gap:var(--fos-space-2);flex-wrap:wrap;display:flex}.sheet-dur-chip{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);font-family:var(--fos-ff-data);letter-spacing:.06em;color:var(--fos-text-mid);cursor:pointer;padding:7px 14px;font-size:12px;font-weight:600;transition:all .12s}.sheet-dur-chip:hover{border-color:var(--fos-border-strong);color:var(--fos-text-hi)}.sheet-dur-chip--selected{border-color:var(--fos-accent);background:var(--fos-accent-dim);color:var(--fos-accent)}.sheet-hint{font-family:var(--fos-ff-fancy);color:var(--fos-text-mid);padding-left:var(--fos-space-3);border-left:2px solid var(--fos-accent);font-size:14px;font-style:italic;line-height:1.55}.sheet-helper{color:var(--fos-text-lo);margin-top:var(--fos-space-1);font-size:12px}.sheet-helper--rolled{color:var(--fos-text-mid)}.sheet-error{color:var(--fos-danger);background:var(--fos-danger-dim);border-radius:var(--fos-radius-md);padding:var(--fos-space-3) var(--fos-space-4);font-size:13px}.sheet-footer{justify-content:flex-end;align-items:center;gap:var(--fos-space-3);padding-top:var(--fos-space-4);border-top:1px solid var(--fos-border);flex-shrink:0;display:flex}.sheet-btn{font-family:var(--fos-ff-body);border-radius:var(--fos-radius-md);cursor:pointer;border:none;padding:10px 20px;font-size:14px;font-weight:600;transition:background .14s,color .14s}.sheet-btn--primary{background:var(--fos-accent);color:#fff}.sheet-btn--primary:hover{background:var(--fos-accent-hi)}.sheet-btn--primary:disabled{background:var(--fos-bg-04);color:var(--fos-text-muted);cursor:not-allowed}.sheet-btn--ghost{color:var(--fos-text-lo);border:1px solid var(--fos-border);background:0 0}.sheet-btn--ghost:hover{color:var(--fos-text-mid);border-color:var(--fos-border-strong)}.sheet-btn--secondary{color:var(--fos-accent);border:1px solid var(--fos-accent);background:0 0;font-weight:500}.sheet-btn--secondary:hover:not(:disabled){background:var(--fos-accent-dim)}.sheet-btn--secondary:disabled{opacity:.6;cursor:not-allowed}.sheet-pill--new-track{color:var(--fos-text-lo);background:0 0;border-style:dashed}.sheet-pill--new-track:hover{color:var(--fos-text-mid);border-color:var(--fos-border-strong);border-style:solid}.sheet-track-form{margin-top:var(--fos-space-3);padding:var(--fos-space-3);background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);gap:var(--fos-space-3);flex-direction:column;display:flex}.sheet-track-form-row .sheet-input--sm{margin-top:0}.sheet-track-form-colors{gap:var(--fos-space-2);flex-wrap:wrap;display:flex}.sheet-color-swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;flex-shrink:0;width:28px;height:28px;padding:0;transition:transform .12s,border-color .12s}.sheet-color-swatch:hover{transform:scale(1.1)}.sheet-color-swatch--selected{border-color:var(--fos-text-hi);transform:scale(1.1)}.sheet-color-swatch:focus-visible{box-shadow:0 0 0 3px var(--fos-accent-dim);outline:none}.sheet-color-swatch:disabled{opacity:.5;cursor:not-allowed}.sheet-color-swatch--copper{background:var(--fos-color-copper)}.sheet-color-swatch--olive{background:var(--fos-color-olive)}.sheet-color-swatch--sage{background:var(--fos-color-sage)}.sheet-color-swatch--teal{background:var(--fos-color-teal)}.sheet-color-swatch--marine{background:var(--fos-color-marine)}.sheet-color-swatch--mauve{background:var(--fos-color-mauve)}.sheet-color-swatch--plum{background:var(--fos-color-plum)}.sheet-color-swatch--sand{background:var(--fos-color-sand)}.sheet-track-form-error{color:var(--fos-danger);margin:0;font-size:12px}.sheet-track-form-actions{justify-content:flex-end;gap:var(--fos-space-2);display:flex}.sheet-track-form-cancel{color:var(--fos-text-lo);cursor:pointer;background:0 0;border:none;padding:6px 10px;font-size:13px;transition:color .12s}.sheet-track-form-cancel:hover{color:var(--fos-text-mid)}.sheet-track-form-cancel:disabled{opacity:.5;cursor:not-allowed}.sheet-track-form-create{background:var(--fos-accent);color:#fff;border-radius:var(--fos-radius-sm);cursor:pointer;border:none;padding:8px 16px;font-size:13px;font-weight:600;transition:background .14s,opacity .12s}.sheet-track-form-create:hover:not(:disabled){background:var(--fos-accent-hi)}.sheet-track-form-create:disabled{opacity:.5;cursor:not-allowed}.upgrade-overlay{z-index:240;background:#0000008c;animation:fade-in .16s ease-out;position:fixed;inset:0}.upgrade-modal{z-index:250;background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);width:min(440px,100vw - 32px);box-shadow:var(--fos-shadow-modal);position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.upgrade-modal-body{padding:var(--fos-space-6)}.upgrade-modal-msg{font-family:var(--fos-ff-fancy);color:var(--fos-text-hi);margin:0;font-size:16px;font-style:italic;line-height:1.5}.upgrade-modal-actions{justify-content:space-between;align-items:center;gap:var(--fos-space-3);padding:var(--fos-space-4) var(--fos-space-6) var(--fos-space-5);border-top:1px solid var(--fos-border);display:flex}.upgrade-modal-skip{color:var(--fos-text-lo);cursor:pointer;background:0 0;border:none;padding:8px 0;font-size:13px;transition:color .12s}.upgrade-modal-skip:hover{color:var(--fos-text-mid);text-underline-offset:3px;text-decoration:underline}.upgrade-modal-cta{background:var(--fos-accent);color:#fff;border-radius:var(--fos-radius-md);border:none;padding:10px 22px;font-size:14px;font-weight:600;text-decoration:none;transition:background .14s;display:inline-block}.upgrade-modal-cta:hover{background:var(--fos-accent-hi)}@media (max-width:640px){.upgrade-modal{width:calc(100vw - 16px)}.upgrade-modal-msg{font-size:15px}.upgrade-modal-actions{flex-wrap:wrap}.upgrade-modal-cta{text-align:center;flex:1;min-height:44px;padding:12px;font-size:15px}}.time-picker{width:100%;position:relative}.time-picker-display{align-items:center;gap:var(--fos-space-2);background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);width:100%;font-family:var(--fos-ff-body);color:var(--fos-text-muted);cursor:pointer;box-shadow:var(--fos-shadow-card);text-align:left;padding:12px 14px;font-size:15px;transition:border-color .12s,box-shadow .12s;display:flex}.time-picker-display:hover{border-color:var(--fos-border-strong)}.time-picker-display--open,.time-picker-display:focus-visible{border-color:var(--fos-accent);box-shadow:0 0 0 3px var(--fos-accent-dim);outline:none}.time-picker-display--filled{color:var(--fos-text-hi)}.time-picker-value{flex:1;font-weight:500}.time-picker-icons{align-items:center;gap:var(--fos-space-2);flex-shrink:0;display:inline-flex}.time-picker-chevron{width:14px;height:14px;color:var(--fos-text-lo);transition:transform .16s}.time-picker-display--open .time-picker-chevron{transform:rotate(180deg)}.time-picker-clear{color:var(--fos-text-lo);cursor:pointer;border-radius:var(--fos-radius-sm);background:0 0;border:none;justify-content:center;align-items:center;padding:2px;transition:color .12s,background .12s;display:inline-flex}.time-picker-clear:hover{color:var(--fos-danger);background:var(--fos-danger-dim)}.time-picker-clear svg{width:12px;height:12px}.time-picker-popover{z-index:1000;background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);box-shadow:var(--fos-shadow-modal);min-width:320px;animation:time-picker-fade-in .14s ease-out}.time-picker-popover--up{animation:time-picker-fade-in-up .14s ease-out}@keyframes time-picker-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes time-picker-fade-in-up{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.time-picker-typing{padding:var(--fos-space-3) var(--fos-space-4);border-bottom:1px solid var(--fos-border)}.time-picker-typing-input{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);width:100%;font-family:var(--fos-ff-data);color:var(--fos-text-hi);text-align:center;padding:9px 12px;font-size:14px;font-weight:500;transition:border-color .12s,box-shadow .12s}.time-picker-typing-input::placeholder{color:var(--fos-text-muted);font-weight:400}.time-picker-typing-input:focus{border-color:var(--fos-border-strong);box-shadow:0 0 0 3px var(--fos-bg-hover-subtle);outline:none}.time-picker-typing-input--valid:focus{border-color:var(--fos-accent);box-shadow:0 0 0 3px var(--fos-accent-dim)}.time-picker-columns{gap:var(--fos-space-3);padding:var(--fos-space-4);grid-template-columns:1fr 1fr auto;display:grid}.time-picker-col{gap:var(--fos-space-2);flex-direction:column;min-width:72px;display:flex}.time-picker-col--period{min-width:64px}.time-picker-col-label{font-family:var(--fos-ff-data);letter-spacing:.16em;text-transform:uppercase;color:var(--fos-text-lo);text-align:center;height:12px;font-size:9px;font-weight:600}.time-picker-col-list{scrollbar-width:thin;scrollbar-color:var(--fos-border-strong) transparent;flex-direction:column;gap:2px;max-height:200px;display:flex;overflow-y:auto}.time-picker-col-list::-webkit-scrollbar{width:6px}.time-picker-col-list::-webkit-scrollbar-track{background:0 0}.time-picker-col-list::-webkit-scrollbar-thumb{background:var(--fos-border-strong);border-radius:3px}.time-picker-period-stack{flex-direction:column;gap:2px;display:flex}.time-picker-item{border-radius:var(--fos-radius-sm);font-family:var(--fos-ff-data);color:var(--fos-text-mid);cursor:pointer;text-align:center;background:0 0;border:1px solid #0000;padding:8px 12px;font-size:13px;font-weight:500;transition:all .12s}.time-picker-item:hover{background:var(--fos-bg-hover-subtle);color:var(--fos-text-hi)}.time-picker-item:focus-visible{background:var(--fos-bg-hover-subtle);border-color:var(--fos-border-strong);outline:none}.time-picker-item--selected{background:var(--fos-accent-dim);border-color:var(--fos-accent);color:var(--fos-accent);font-weight:600}.time-picker-footer{padding:var(--fos-space-3) var(--fos-space-4);border-top:1px solid var(--fos-border);justify-content:flex-end;display:flex}.time-picker-done{background:var(--fos-accent);color:#fff;border-radius:var(--fos-radius-md);font-family:var(--fos-ff-body);cursor:pointer;border:none;padding:7px 18px;font-size:13px;font-weight:600;transition:background .14s}.time-picker-done:hover{background:var(--fos-accent-hi)}.time-picker-done:focus-visible{outline:2px solid var(--fos-accent-dim);outline-offset:2px}.greeting{margin-bottom:var(--fos-space-8)}.greeting-title,.page-title{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.01em;margin:0;font-size:36px;font-weight:800;line-height:1.1}.greeting-meta{align-items:baseline;gap:var(--fos-space-2);margin-top:var(--fos-space-2);font-family:var(--fos-ff-body);font-size:14px;display:flex}.greeting-meta-sep{color:var(--fos-text-muted)}.greeting-date{color:var(--fos-text-mid)}.greeting-sub{color:var(--fos-text-lo)}.greeting-date-wrap{position:relative}.greeting-date-btn{cursor:pointer;color:inherit;font:inherit;background:0 0;border:0;padding:0}.greeting-date-btn:hover .greeting-date{text-decoration:underline;-webkit-text-decoration-color:var(--fos-text-lo);text-decoration-color:var(--fos-text-lo);text-underline-offset:3px}.greeting-back-to-today{cursor:pointer;font-family:inherit;font-size:inherit;color:var(--fos-accent);background:0 0;border:0;padding:0}.greeting-back-to-today:hover{text-decoration:underline}.date-picker-popover{z-index:50;background:var(--fos-bg-base);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);padding:var(--fos-space-3);width:280px;animation:datePickerIn .18s cubic-bezier(.16,1,.3,1);position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 12px 32px #0000001f,0 4px 8px #0000000f}@keyframes datePickerIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.date-picker-shortcuts{gap:var(--fos-space-2);margin-bottom:var(--fos-space-3);padding-bottom:var(--fos-space-3);border-bottom:1px solid var(--fos-border);display:flex}.date-picker-shortcut{background:var(--fos-bg-02);border:1px solid var(--fos-border);color:var(--fos-text-mid);border-radius:var(--fos-radius-sm);cursor:pointer;flex:1;padding:6px 10px;font-size:12px;font-weight:600;transition:all .14s}.date-picker-shortcut:hover:not(:disabled){background:var(--fos-bg-03);color:var(--fos-text-hi)}.date-picker-shortcut:disabled{opacity:.5;cursor:default}.date-picker-month-nav{margin-bottom:var(--fos-space-3);justify-content:space-between;align-items:center;display:flex}.date-picker-nav-btn{border-radius:var(--fos-radius-sm);width:28px;height:28px;color:var(--fos-text-mid);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.date-picker-nav-btn:hover{background:var(--fos-bg-02);color:var(--fos-text-hi)}.date-picker-month-label{font-family:var(--fos-ff-body);color:var(--fos-text-hi);font-size:14px;font-weight:600}.date-picker-weekdays{grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:6px;display:grid}.date-picker-weekday{font-family:var(--fos-ff-data);text-transform:uppercase;letter-spacing:.08em;color:var(--fos-text-lo);text-align:center;font-size:10px;font-weight:600}.date-picker-days{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.date-picker-day{border-radius:var(--fos-radius-sm);height:32px;font-family:var(--fos-ff-data);color:var(--fos-text-hi);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:500;transition:background .12s,color .12s}.date-picker-day:hover{background:var(--fos-bg-02)}.date-picker-day--other-month{color:var(--fos-text-lo)}.date-picker-day--today{color:var(--fos-accent);font-weight:700}.date-picker-day--viewed{background:var(--fos-accent);color:#fff}.date-picker-day--viewed:hover{background:var(--fos-accent-hi)}.block-card-scheduled{font-family:var(--fos-ff-data);text-transform:uppercase;letter-spacing:.08em;color:var(--fos-text-mid);background:var(--fos-bg-02);border-radius:var(--fos-radius-sm);border:1px solid var(--fos-border);padding:6px 12px;font-size:11px;font-weight:600}.hero{margin-bottom:var(--fos-space-6)}.hero-head{margin-bottom:var(--fos-space-3);justify-content:space-between;align-items:baseline;display:flex}.hero-head-left{align-items:center;gap:var(--fos-space-4);display:flex}.hero-label{font-family:var(--fos-ff-data);text-transform:uppercase;letter-spacing:.14em;color:var(--fos-text-lo);font-size:10px}.share-week{background:var(--fos-accent-dim);color:var(--fos-accent-hi);border:1px solid var(--fos-accent-mid);border-radius:var(--fos-radius-md);font-family:var(--fos-ff-body);cursor:default;letter-spacing:-.005em;align-items:center;gap:8px;padding:8px 14px 8px 10px;font-size:13px;font-weight:600;transition:background .2s,border-color .2s,color .2s,transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 1px #c144541f}:root[data-theme=light] .share-week{color:var(--fos-accent);background:#7a1e2c0f;border-color:#7a1e2c38;box-shadow:0 1px #7a1e2c0f}.share-week-icon{border-radius:var(--fos-radius-sm);z-index:1;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;transition:transform .2s cubic-bezier(.34,1.56,.64,1);display:inline-flex;position:relative}.share-week-icon,:root[data-theme=light] .share-week-icon{background:var(--fos-accent);color:#fff}.share-week-icon svg{width:13px;height:13px}.share-week-text{z-index:1;line-height:1.2;position:relative}.share-week-arrow{opacity:.75;z-index:1;margin-left:2px;font-size:13px;line-height:1;transition:transform .2s cubic-bezier(.34,1.56,.64,1);display:inline-block;position:relative}.share-week-arrow,:root[data-theme=light] .share-week-arrow{color:var(--fos-accent)}.share-week:hover{border-color:var(--fos-accent);color:var(--fos-accent-hi);background:#c1445433;transform:translateY(-1px);box-shadow:0 4px 12px #c144542e}:root[data-theme=light] .share-week:hover{border-color:var(--fos-accent);background:#7a1e2c1a;box-shadow:0 4px 12px #7a1e2c1f}.share-week:hover .share-week-icon{transform:rotate(-3deg)scale(1.06)}.share-week:hover .share-week-arrow{opacity:1;transform:translate(2px)}.share-week:active{transform:translateY(0)scale(.98);box-shadow:0 1px #c144541f}.share-week:disabled{opacity:.65;cursor:not-allowed}.hero-total{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.005em;font-size:32px;font-weight:800;line-height:1}.hero-total-unit{color:var(--fos-text-mid);margin-left:1px;font-size:18px;font-weight:500}.hero-bar{border-radius:var(--fos-radius-md);background:var(--fos-bg-03);height:56px}.hero-bar,.hero-segment{display:flex;overflow:hidden}.hero-segment{padding:0 var(--fos-space-3);color:#fff;flex-direction:column;justify-content:center;min-width:0;transition:background-color .2s}.hero-segment--narrow{padding:0 var(--fos-space-2)}.hero-seg-name{font-family:var(--fos-ff-body);letter-spacing:-.005em;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;line-height:1.2;overflow:hidden}.hero-seg-hours{font-family:var(--fos-ff-data);opacity:.85;margin-top:1px;font-size:11px;font-weight:500;line-height:1.2}.hero-bar--empty{padding:0 var(--fos-space-5);justify-content:center;align-items:center;display:flex}.hero-empty-msg{color:var(--fos-text-mid);text-align:center;font-family:Fraunces,serif;font-size:14px;font-style:italic;font-weight:500;line-height:1.4}.dashboard-tabs{gap:var(--fos-space-2);border-bottom:1px solid var(--fos-border);margin-bottom:var(--fos-space-5);display:flex}.tab-btn{font-family:var(--fos-ff-body);color:var(--fos-text-lo);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 18px;font-size:14px;font-weight:500;transition:color .12s,border-color .12s;position:relative}.tab-btn:hover{color:var(--fos-text-mid)}.tab-btn.active{color:var(--fos-text-hi);border-bottom-color:var(--fos-accent);font-weight:600}.tab-btn:focus-visible{color:var(--fos-text-hi);background:var(--fos-bg-hover-subtle);border-radius:var(--fos-radius-sm) var(--fos-radius-sm) 0 0;outline:none}.dashboard-placeholder{margin-top:var(--fos-space-12);text-align:center;color:var(--fos-text-mid);padding:var(--fos-space-8);font-family:Fraunces,serif;font-size:15px;font-style:italic}.today-start-error{margin-top:var(--fos-space-4);padding:var(--fos-space-3) var(--fos-space-4);background:var(--fos-danger-dim);border:1px solid var(--fos-danger);border-radius:var(--fos-radius-md);color:var(--fos-danger);font-size:13px}.session-fullscreen{background:var(--fos-bg-base);z-index:200;opacity:0;pointer-events:none;justify-content:center;align-items:center;transition:opacity .32s;display:flex;position:fixed;inset:0}.session-fullscreen.open{opacity:1;pointer-events:auto}.session-ambience{background:radial-gradient(70% 60% at 50% 35%,#c144540d,#0000 65%),radial-gradient(50% 35% at 50% 100%,#c144540a,#0000 60%)}.session-ambience,.session-pause-veil{pointer-events:none;position:absolute;inset:0}.session-pause-veil{opacity:0;z-index:1;background:#0e0c0c8c;transition:opacity .32s}:root[data-theme=light] .session-pause-veil{background:#f4efe98c}.session-fullscreen.paused .session-pause-veil{opacity:1}.session-fullscreen.paused .session-pause-veil:after{content:"PAUSED";font-family:var(--fos-ff-data);letter-spacing:.2em;color:var(--fos-text-hi);border-radius:var(--fos-radius-md);padding:7px 16px;font-size:13px;font-weight:700;top:50%;left:50%;transform:translate(-50%,-50%)}.session-close,.session-fullscreen.paused .session-pause-veil:after{background:var(--fos-bg-02);border:1px solid var(--fos-border);position:absolute}.session-close{width:36px;height:36px;color:var(--fos-text-mid);cursor:default;z-index:10;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:all .18s cubic-bezier(.34,1.56,.64,1);display:inline-flex;top:24px;right:24px}.session-close svg{width:14px;height:14px}.session-close:hover{color:var(--fos-text-hi);background:var(--fos-bg-03);border-color:var(--fos-border-strong);transform:scale(1.05)}.session-close:active{transform:scale(.95)}.session-content{align-items:center;gap:var(--fos-space-4);z-index:2;flex-direction:column;max-width:560px;padding:0 24px;display:flex;position:relative}.session-header{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.14em;gap:8px;font-size:11px}.session-cog-mark,.session-header{align-items:center;display:inline-flex}.session-cog-mark{justify-content:center;width:12px;height:12px}.session-cog-mark svg{width:100%;height:100%}.session-cog-label{color:var(--fos-text-mid);font-weight:600}.session-header-sep{color:var(--fos-text-muted)}.session-block-name{color:var(--fos-text-mid);font-family:var(--fos-ff-body);text-transform:none;letter-spacing:0;font-size:12px;font-weight:500}.session-hero{align-items:center;gap:var(--fos-space-5);margin-top:var(--fos-space-2);flex-direction:column;display:flex}.session-intent-wrap{text-align:center;max-width:460px;padding:0 24px;position:relative}.session-intent-wrap.is-empty,.session-intent-wrap:empty{display:none}.session-intent-mark{font-family:var(--fos-ff-fancy);color:var(--fos-accent-mid);-webkit-user-select:none;user-select:none;font-size:32px;line-height:1;position:absolute;top:-8px;left:0}.session-intent{font-family:var(--fos-ff-fancy);color:var(--fos-text-hi);letter-spacing:-.01em;font-size:22px;font-style:italic;font-weight:400;line-height:1.35}.session-clock-wrap{justify-content:center;align-items:center;width:320px;height:320px;display:flex;position:relative}.session-ring{width:100%;height:100%;animation:ringBreathe 5s ease-in-out infinite;position:absolute;inset:0}@keyframes ringBreathe{0%,to{opacity:1}50%{opacity:.94}}.session-fullscreen.paused .session-ring{opacity:.5;animation:none}.session-arc{transition:stroke-dashoffset 1s linear,stroke .2s}.session-interrupt-ticks line{opacity:0;animation:tickAppear .36s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes tickAppear{0%{opacity:0;stroke-width:0}to{opacity:.8;stroke-width:2.5px}}.session-time{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:96px;font-weight:800;line-height:1;transition:color .2s}.session-fullscreen.paused .session-time{color:var(--fos-warning)}.session-coach{font-family:var(--fos-ff-fancy);color:var(--fos-text-mid);text-align:center;opacity:0;letter-spacing:-.005em;max-width:460px;min-height:22px;font-size:16px;font-style:italic;font-weight:400;line-height:1.4;transition:opacity .48s,transform .48s;transform:translateY(4px)}.session-coach.visible{opacity:1;transform:translateY(0)}.session-interrupts{flex-direction:column;align-items:center;gap:6px;display:flex}.interrupt-btn{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);color:var(--fos-text-mid);font-family:var(--fos-ff-body);cursor:default;align-items:center;gap:8px;padding:9px 18px;font-size:13px;font-weight:500;transition:all .18s cubic-bezier(.34,1.56,.64,1);display:inline-flex}.interrupt-btn:hover{background:var(--fos-bg-03);color:var(--fos-text-hi);border-color:var(--fos-border-strong);transform:translateY(-1px)}.interrupt-btn:active{transform:scale(.97)}.interrupt-icon{background:var(--fos-bg-04);width:18px;height:18px;color:var(--fos-text-mid);border-radius:50%;justify-content:center;align-items:center;font-size:14px;line-height:1;display:inline-flex}.interrupt-label{font-family:var(--fos-ff-data);text-transform:uppercase;letter-spacing:.1em;font-size:11px}.interrupt-count{font-family:var(--fos-ff-data);color:var(--fos-text-hi);font-variant-numeric:tabular-nums;margin-left:4px;font-size:14px;font-weight:600}.interrupt-help{font-family:var(--fos-ff-body);color:var(--fos-text-lo);font-size:11px}.session-controls{margin-top:var(--fos-space-3);gap:12px}.session-btn,.session-controls{align-items:center;display:inline-flex}.session-btn{border-radius:var(--fos-radius-md);font-family:var(--fos-ff-body);cursor:default;border:1px solid #0000;gap:7px;padding:10px 22px;font-size:14px;font-weight:600;transition:all .18s cubic-bezier(.34,1.56,.64,1)}.session-btn svg{width:12px;height:12px}.session-btn-secondary{background:var(--fos-bg-02);color:var(--fos-text-hi);border-color:var(--fos-border)}.session-btn-secondary:hover{background:var(--fos-bg-03);border-color:var(--fos-border-strong);transform:translateY(-1px)}.session-btn-primary{background:var(--fos-accent);color:#fff;border-color:var(--fos-accent)}.session-btn-primary:hover{background:var(--fos-accent-hi);transform:translateY(-1px);box-shadow:0 4px 14px #c144544d}:root[data-theme=light] .session-btn-primary:hover{box-shadow:0 4px 14px #7a1e2c33}.session-btn:active{transform:translateY(0)scale(.97)}.session-btn:disabled{opacity:.5;cursor:default;pointer-events:none}.session-restart-link{color:var(--fos-text-lo);font-family:var(--fos-ff-body);text-decoration:underline;-webkit-text-decoration-color:var(--fos-text-muted);text-decoration-color:var(--fos-text-muted);text-underline-offset:3px;cursor:default;background:0 0;border:none;margin-top:4px;font-size:12px;transition:color .15s}.session-restart-link:hover{color:var(--fos-text-mid)}.session-restart-link:disabled{opacity:.35}@media (prefers-reduced-motion:reduce){.session-ring{animation:none}.session-arc,.session-ring{transition:none}}.session-strip{background:var(--fos-bg-02);border-bottom:1px solid var(--fos-border);z-index:100;height:0;transition:height .32s cubic-bezier(.32,.72,0,1);position:fixed;top:0;left:0;right:0;overflow:hidden;box-shadow:0 1px 4px #0003}:root[data-theme=light] .session-strip{box-shadow:0 1px 4px #14100c0d}.session-strip.open{height:40px}.session-strip-inner{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;height:100%;padding:0 16px;transition:background .15s;display:flex}.session-strip-inner:hover{background:var(--fos-bg-03)}.session-strip-inner:focus-visible{box-shadow:0 0 0 3px var(--fos-accent-dim) inset;outline:none}.session-strip-cog{flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;display:inline-flex}.session-strip-cog svg{width:100%;height:100%}.session-strip-primary{font-family:var(--fos-ff-body);color:var(--fos-text-hi);white-space:nowrap;text-overflow:ellipsis;max-width:380px;font-size:13px;font-weight:500;line-height:1;overflow:hidden}.session-strip-meta{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;align-items:center;gap:6px;font-size:10px;line-height:1;display:inline-flex}.session-strip-meta-sep{color:var(--fos-text-muted)}.session-strip-spacer{flex:1}.session-strip-time{font-family:var(--fos-ff-data);color:var(--fos-text-hi);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:14px;font-weight:600}.session-strip.paused .session-strip-time{color:var(--fos-warning);animation:stripPausedPulse 1.6s ease-in-out infinite}.session-strip.paused .session-strip-primary{opacity:.55}@keyframes stripPausedPulse{0%,to{opacity:1}50%{opacity:.55}}.session-strip-actions{flex-shrink:0;align-items:center;gap:4px;display:inline-flex}.session-strip-btn{background:var(--fos-bg-03);border:1px solid var(--fos-border);width:28px;height:28px;color:var(--fos-text-mid);border-radius:var(--fos-radius-sm);cursor:pointer;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.session-strip-btn svg{width:13px;height:13px}.session-strip-btn:hover{color:var(--fos-text-hi);background:var(--fos-bg-04);border-color:var(--fos-border-strong)}.session-strip-progress{background:var(--fos-bg-03);width:100%;height:2px;position:absolute;bottom:0;left:0}.session-strip-progress>span{background:var(--fos-accent);width:0;height:100%;transition:width 1s linear;display:block}body.has-session-strip{padding-top:40px}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes sheet-slide-up{0%{opacity:0;transform:translate(-50%,calc(12px - 50%))}to{opacity:1;transform:translate(-50%,-50%)}}.reflection-overlay{z-index:220;-webkit-backdrop-filter:blur(6px);background:#0000008c;animation:fade-in .16s ease-out;position:fixed;inset:0}:root[data-theme=light] .reflection-overlay{background:#14100c59}.reflection-sheet{z-index:230;background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);width:min(560px,100vw - 32px);max-height:calc(100vh - 32px);box-shadow:var(--fos-shadow-modal);animation:sheet-slide-up .2s ease-out;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.reflection-head{padding:var(--fos-space-6) var(--fos-space-6) var(--fos-space-3);border-bottom:1px solid var(--fos-border)}.reflection-kicker{font-family:var(--fos-ff-data);text-transform:uppercase;letter-spacing:.16em;color:var(--fos-text-lo);font-size:9px}.reflection-block-name{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.01em;margin-top:4px;font-size:22px;font-weight:700}.reflection-body{padding:var(--fos-space-5) var(--fos-space-6);gap:var(--fos-space-6);flex-direction:column;display:flex}.reflection-section{gap:var(--fos-space-3);flex-direction:column;display:flex}.reflection-section-label{color:var(--fos-text-mid);font-size:13px;font-weight:600}.reflection-intent-quote{font-family:var(--fos-ff-fancy);color:var(--fos-text-hi);padding-left:var(--fos-space-3);border-left:2px solid var(--fos-accent);font-size:15px;font-style:italic;line-height:1.4}.reflection-quote-mark{color:var(--fos-accent);margin-right:4px;font-size:1.1em}.reflection-options{gap:var(--fos-space-2);flex-wrap:wrap;display:flex}.reflection-pill{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-full);color:var(--fos-text-mid);cursor:pointer;padding:8px 16px;font-size:13px;font-weight:500;transition:border-color .12s,color .12s}.reflection-pill:hover:not(:disabled){border-color:var(--fos-border-strong);color:var(--fos-text-hi)}.reflection-pill--selected{background:var(--fos-accent-dim);border-color:var(--fos-accent);color:var(--fos-accent);font-weight:600}.reflection-state-grid{gap:var(--fos-space-2);grid-template-columns:repeat(4,1fr);display:grid}.reflection-state-card{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);padding:var(--fos-space-3);cursor:pointer;text-align:center;min-height:80px;color:var(--fos-text-mid);flex-direction:column;justify-content:center;align-items:center;gap:4px;transition:border-color .14s,color .14s;display:flex}.reflection-state-card:hover:not(:disabled){border-color:var(--fos-border-strong)}.reflection-state-card--selected{border-color:currentColor}.reflection-state-card--deep{color:var(--fos-success)}.reflection-state-card--partial{color:var(--fos-warning)}.reflection-state-card--drifted{color:var(--fos-text-lo)}.reflection-state-card--skipped{color:var(--fos-danger)}.reflection-state-symbol{font-family:var(--fos-ff-data);font-size:18px;font-weight:600;line-height:1}.reflection-state-label{font-size:13px;font-weight:600}.reflection-state-desc{color:var(--fos-text-lo);font-size:10px;font-weight:400;line-height:1.3}.reflection-privacy{font-family:var(--fos-ff-fancy);color:var(--fos-text-lo);text-align:center;font-size:13px;font-style:italic}.reflection-error{margin:0 var(--fos-space-6) var(--fos-space-3);padding:var(--fos-space-3) var(--fos-space-4);background:var(--fos-danger-dim);border:1px solid var(--fos-danger);border-radius:var(--fos-radius-md);color:var(--fos-danger);font-size:13px}.reflection-actions{justify-content:space-between;align-items:center;gap:var(--fos-space-3);padding:var(--fos-space-4) var(--fos-space-6) var(--fos-space-5);border-top:1px solid var(--fos-border);display:flex}.reflection-skip{color:var(--fos-text-lo);cursor:pointer;background:0 0;border:none;padding:8px 0;font-size:13px;transition:color .12s}.reflection-skip:hover:not(:disabled){color:var(--fos-text-mid);text-underline-offset:3px;text-decoration:underline}.reflection-submit{background:var(--fos-accent);color:#fff;border-radius:var(--fos-radius-md);cursor:pointer;border:none;padding:10px 22px;font-size:14px;font-weight:600;transition:background .14s,opacity .12s}.reflection-submit:hover:not(:disabled){background:var(--fos-accent-hi)}.reflection-submit:disabled{opacity:.5;cursor:not-allowed}.reflection-options--wrap{flex-wrap:wrap}.reflection-textarea{resize:none;background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-sm);width:100%;color:var(--fos-text-hi);font-family:var(--fos-ff-body);padding:var(--fos-space-3) var(--fos-space-4);outline:none;font-size:14px;line-height:1.5;transition:border-color .12s}.reflection-textarea:focus{border-color:var(--fos-accent)}.reflection-textarea::placeholder{color:var(--fos-text-lo)}.reflection-optional{color:var(--fos-text-lo);font-size:12px;font-weight:400}@media (max-width:640px){.greeting-title{font-size:28px}.greeting-meta{flex-wrap:wrap;font-size:13px}.hero-head{gap:var(--fos-space-3);flex-wrap:wrap}.hero-total{font-size:26px}.share-week{padding:6px 10px 6px 8px;font-size:11px}.share-week-arrow{display:none}.hero-bar{height:48px}.hero-seg-name{font-size:11px}.hero-seg-hours{font-size:10px}.hero-empty-msg,.tab-btn{font-size:13px}.tab-btn{padding:10px 14px}.today-coach-note{margin:var(--fos-space-3) 0 var(--fos-space-2);padding:var(--fos-space-3) var(--fos-space-4)}.block-card-title,.today-coach-note-text{font-size:14px}.fab-wrapper{bottom:var(--fos-space-6);right:var(--fos-space-5)}.sheet-body{padding:var(--fos-space-5)}.sheet-label{font-size:11px}.sheet-input{padding:14px;font-size:16px}.sheet-dur-chip,.sheet-pill{padding:10px 16px;font-size:14px}.sheet-dur-chip{justify-content:center;align-items:center;min-height:44px;display:inline-flex}.sheet-hint{font-size:14px}.sheet-helper{font-size:13px}.sheet-btn{padding:12px 20px;font-size:15px}.time-picker-display{padding:14px;font-size:16px}.time-picker-typing-input{padding:11px 12px;font-size:16px}.time-picker-popover{min-width:300px}.time-picker-columns{padding:var(--fos-space-3);gap:var(--fos-space-2)}.time-picker-col{min-width:80px}.time-picker-col--period{min-width:70px}.time-picker-col-label{font-size:10px}.time-picker-col-list{max-height:220px}.time-picker-item{justify-content:center;align-items:center;min-height:44px;padding:12px 14px;font-size:15px;display:inline-flex}.time-picker-done{min-height:44px;padding:10px 22px;font-size:14px}.session-clock-wrap{width:240px;height:240px}.session-time{font-size:68px}.session-close{top:16px;right:16px}.reflection-sheet{width:calc(100vw - 16px)}.reflection-head{padding:var(--fos-space-5) var(--fos-space-5) var(--fos-space-3)}.reflection-body{padding:var(--fos-space-4) var(--fos-space-5)}.reflection-block-name{font-size:19px}.reflection-state-grid{grid-template-columns:repeat(2,1fr)}.reflection-state-card{min-height:70px;padding:var(--fos-space-2)}.reflection-state-symbol{font-size:16px}.reflection-actions{padding:var(--fos-space-4) var(--fos-space-5);flex-wrap:wrap}.reflection-submit{flex:1;min-height:44px;padding:12px;font-size:15px}.reflection-skip{font-size:14px}}.track-icon{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.track-icon svg{width:100%;height:100%}.bd-meta-track .track-icon,.bd-meta-track svg,.block-card-meta-track .track-icon,.block-card-meta-track svg{vertical-align:-.15em}.hero-seg-row{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;line-height:1.2;display:inline-flex;overflow:hidden}.hero-segment .track-icon{color:inherit;flex-shrink:0}.hero-coach{margin-top:var(--fos-space-4);background:var(--fos-bg-02);border-left:2px solid var(--fos-accent);border-radius:0 var(--fos-radius-md) var(--fos-radius-md) 0;padding:var(--fos-space-3) var(--fos-space-4);box-shadow:var(--fos-shadow-card);transition:var(--theme-transition);animation:coachEnter .52s cubic-bezier(.16,1,.3,1) .12s both}.hero-coach-msg{color:var(--fos-text-hi);letter-spacing:-.005em;font-family:Fraunces,serif;font-size:15px;font-style:italic;font-weight:500;line-height:1.5}.hero-coach-attr{font-family:var(--fos-ff-data);text-transform:uppercase;letter-spacing:.14em;color:var(--fos-text-lo);margin-top:var(--fos-space-2);font-size:11px}@keyframes coachEnter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.status-strip{margin-top:var(--fos-space-4);margin-bottom:var(--fos-space-5);background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);padding:var(--fos-space-3) var(--fos-space-5);align-items:center;gap:var(--fos-space-5);box-shadow:var(--fos-shadow-card);transition:var(--theme-transition);display:flex}.status-cell{flex-direction:column;flex-shrink:0;gap:4px;display:flex}.status-label{font-family:var(--fos-ff-data);text-transform:uppercase;letter-spacing:.08em;color:var(--fos-text-mid);font-size:10px;font-weight:600}.status-period{letter-spacing:0;text-transform:none;color:var(--fos-text-low);margin-left:4px;font-size:9px;font-weight:500}.status-value{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.02em;font-size:22px;font-weight:700;line-height:1.1}.status-value-row{align-items:baseline;gap:var(--fos-space-2);display:flex}.status-unit{color:var(--fos-text-mid);font-size:12px;font-weight:500}.status-value--building{color:var(--fos-text-lo);font-size:14px;font-weight:500}.status-delta{font-family:var(--fos-ff-data);color:var(--fos-text-lo);font-size:11px}.status-delta.up{color:var(--fos-success)}.status-delta.down{color:var(--fos-danger)}.status-delta.stable{color:var(--fos-text-mid)}.status-strip-freeze{background:var(--fos-info-dim);color:var(--fos-info);border-radius:var(--fos-radius-sm);font-family:var(--fos-ff-data);align-items:center;gap:3px;margin-left:4px;padding:3px 6px 3px 5px;font-size:10px;font-weight:500;display:inline-flex}.status-strip-freeze svg{width:10px;height:10px}.status-divider{background:var(--fos-border);flex-shrink:0;align-self:center;width:1px;height:28px}.status-link{color:var(--fos-accent);font-family:var(--fos-ff-body);border-radius:var(--fos-radius-sm);cursor:pointer;white-space:nowrap;background:0 0;border:0;margin-left:auto;padding:6px 8px;font-size:13px;font-weight:600;transition:background .14s}.status-link:hover{background:var(--fos-bg-02)}.status-link:focus-visible{outline:2px solid var(--fos-accent);outline-offset:2px}.status-freeze{font-family:var(--fos-ff-data);letter-spacing:.1em;text-transform:uppercase;color:var(--fos-info);background:var(--fos-info-dim);border-radius:var(--fos-radius-sm);align-items:center;gap:4px;padding:2px 6px;font-size:10px;display:inline-flex}@keyframes dashboardSectionIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.tab-pane .capacity{animation:dashboardSectionIn .28s cubic-bezier(.16,1,.3,1) both}.tab-pane .stat-grid{animation:dashboardSectionIn .28s cubic-bezier(.16,1,.3,1) 80ms both}.tab-pane .dashboard-billable{animation:dashboardSectionIn .28s cubic-bezier(.16,1,.3,1) .16s both}.tab-pane .dashboard-own-paid{animation:dashboardSectionIn .28s cubic-bezier(.16,1,.3,1) .24s both}.tab-pane .goal-section{animation:dashboardSectionIn .28s cubic-bezier(.16,1,.3,1) .32s both}.donut-arc{transition:stroke-dashoffset .8s cubic-bezier(.16,1,.3,1)}.capacity{margin-top:var(--fos-space-6)}.capacity-head{margin-bottom:var(--fos-space-2);justify-content:space-between;align-items:baseline;display:flex}.capacity-label{font-family:var(--fos-ff-body);color:var(--fos-text-mid);font-size:13px}.capacity-status{font-family:var(--fos-ff-data);letter-spacing:.08em;text-transform:uppercase;font-size:11px}.capacity-status--on_track{color:var(--fos-accent)}.capacity-status--heavy{color:var(--fos-warning)}.capacity-status--overloaded{color:var(--fos-danger)}.capacity-bar{border-radius:var(--fos-radius-full);background:var(--fos-bg-03);gap:1px;height:12px;display:flex;overflow:hidden;box-shadow:inset 0 1px 2px #0000000f}.capacity-bar>span{height:100%;transition:width .4s cubic-bezier(.16,1,.3,1);display:block}.capacity-sub{font-size:12px}.capacity-legend,.capacity-sub{font-family:var(--fos-ff-data);color:var(--fos-text-lo);margin-top:var(--fos-space-2)}.capacity-legend{align-items:center;gap:var(--fos-space-3);text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:600;display:inline-flex}.capacity-legend-item{align-items:center;gap:4px;display:inline-flex}.capacity-legend-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.dashboard-billable{margin-top:var(--fos-space-6)}.db-head{margin-bottom:var(--fos-space-3);justify-content:space-between;align-items:center;display:flex}.db-label{font-family:var(--fos-ff-body);color:var(--fos-text-mid);font-size:13px}.db-period-toggle{background:var(--fos-bg-03);gap:2px;padding:2px;display:flex}.db-period-btn,.db-period-toggle{border-radius:var(--fos-radius-full)}.db-period-btn{font-family:var(--fos-ff-data);letter-spacing:.04em;text-transform:uppercase;color:var(--fos-text-lo);cursor:pointer;background:0 0;border:none;padding:3px 10px;font-size:11px;font-weight:600;transition:background .15s,color .15s}.db-period-btn.active{background:var(--fos-bg-01);color:var(--fos-text-hi);box-shadow:0 1px 3px #0000001f}.db-stat-row{align-items:baseline;gap:var(--fos-space-2);margin-bottom:var(--fos-space-2);display:flex}.db-hours{font-family:var(--fos-ff-data);color:var(--fos-text-hi);font-size:28px;font-weight:700;line-height:1}.db-hours--over{color:var(--fos-danger)}.db-target{font-family:var(--fos-ff-data);color:var(--fos-text-lo);font-size:13px}.db-bar{background:var(--fos-bg-03);height:10px;overflow:hidden;box-shadow:inset 0 1px 2px #0000000f}.db-bar,.db-bar-fill{border-radius:var(--fos-radius-full)}.db-bar-fill{background:var(--fos-accent);height:100%;transition:width .4s cubic-bezier(.16,1,.3,1)}.db-bar-fill--over{background:var(--fos-danger);width:100%!important}.db-no-target{align-items:baseline;gap:var(--fos-space-2);flex-wrap:wrap;display:flex}.db-hours-bare{font-family:var(--fos-ff-data);color:var(--fos-text-hi);font-size:28px;font-weight:700;line-height:1}.db-no-target-hint{font-family:var(--fos-ff-data);color:var(--fos-text-lo);font-size:13px}.dashboard-own-paid{margin-top:var(--fos-space-6)}.op-head{margin-bottom:var(--fos-space-3);justify-content:space-between;align-items:center;display:flex}.op-label{font-family:var(--fos-ff-body);color:var(--fos-text-mid);font-size:13px}.op-period{letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:600}.op-empty,.op-period{font-family:var(--fos-ff-data);color:var(--fos-text-lo)}.op-empty{margin:0;font-size:13px}.op-bar{border-radius:var(--fos-radius-full);background:var(--fos-bg-03);height:12px;margin-bottom:var(--fos-space-3);gap:1px;display:flex;overflow:hidden;box-shadow:inset 0 1px 2px #0000000f}.op-bar-own{background:var(--fos-accent)}.op-bar-own,.op-bar-paid{height:100%;transition:width .4s cubic-bezier(.16,1,.3,1)}.op-bar-paid{background:var(--fos-cog-shallow)}.op-legend{gap:var(--fos-space-4);font-family:var(--fos-ff-data);text-transform:uppercase;letter-spacing:.1em;color:var(--fos-text-lo);font-size:10px;font-weight:600}.op-legend,.op-legend-item{align-items:center;display:inline-flex}.op-legend-item{gap:4px}.op-legend-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.op-legend-dot--own{background:var(--fos-accent)}.op-legend-dot--paid{background:var(--fos-cog-shallow)}.stat-grid{margin-top:var(--fos-space-6);grid-template-columns:1fr 1.1fr 1fr;display:grid}.stat-card,.stat-grid{gap:var(--fos-space-3)}.stat-card{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);padding:var(--fos-space-5);flex-direction:column;min-height:200px;display:flex}.stat-head{justify-content:space-between;align-items:flex-start;display:flex}.stat-head .label{font-family:var(--fos-ff-body);color:var(--fos-text-mid);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:600}.stat-value{font-family:var(--fos-ff-display);color:var(--fos-text-hi);font-size:48px;font-weight:800;line-height:1}.stat-period,.stat-value--building{color:var(--fos-text-lo)}.stat-period{font-family:var(--fos-ff-data);letter-spacing:.14em;text-transform:uppercase;margin-top:var(--fos-space-1);font-size:11px}.sparkline{flex-shrink:0;width:96px;height:32px}.day-chips{gap:var(--fos-space-2);display:flex}.day-chip{border-radius:var(--fos-radius-sm);background:var(--fos-bg-04);width:24px;height:24px;color:var(--fos-text-lo);font-family:var(--fos-ff-data);flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:500;display:inline-flex}.day-chip.filled{background:var(--fos-accent);color:var(--fos-bg-base)}.day-chip.freeze{background:var(--fos-info-dim);color:var(--fos-info);border:1px solid var(--fos-info)}.day-chip.freeze svg{width:12px;height:12px}.streak-freeze{align-items:center;gap:var(--fos-space-1);margin-bottom:var(--fos-space-1);display:flex}.streak-freeze-icon{color:var(--fos-info);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.streak-freeze-icon,.streak-freeze-icon svg{width:14px;height:14px}.streak-freeze-count{font-family:var(--fos-ff-data);color:var(--fos-info);letter-spacing:.08em;text-transform:uppercase;font-size:11px}.stat-foot{font-family:var(--fos-ff-data);color:var(--fos-text-mid);margin-top:auto;font-size:12px}.stat-foot .foot-sub{color:var(--fos-text-lo);letter-spacing:.14em;text-transform:uppercase;font-size:11px;display:block}.delta-up{color:var(--fos-success)}.delta-down,.delta-up{font-family:var(--fos-ff-data);align-items:center;gap:4px;font-size:12px;display:inline-flex}.delta-down{color:var(--fos-danger)}.delta-stable{font-family:var(--fos-ff-data);color:var(--fos-text-mid);font-size:12px}.pill-btn{border-radius:var(--fos-radius-sm);font-family:var(--fos-ff-body);cursor:default;border:none;align-self:flex-start;padding:4px 10px;font-size:11px;font-weight:500}.pill-btn.stable{background:var(--fos-bg-03);color:var(--fos-text-mid)}.pill-btn.improved{background:var(--fos-success-dim);color:var(--fos-success)}.pill-btn.worsened{background:var(--fos-danger-dim);color:var(--fos-danger)}.stat-card-v2{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);padding:var(--fos-space-6);gap:var(--fos-space-4);flex-direction:column;min-height:0;display:flex;position:relative;overflow:hidden}.stat-card-v2:before{content:"";background:linear-gradient(to bottom,var(--fos-accent-dim) 0,transparent 100%);opacity:.6;pointer-events:none;height:60px;position:absolute;inset:0 0 auto}.stat-card-v2>*{z-index:1;position:relative}.statv2-kicker{font-family:var(--fos-ff-data);color:var(--fos-text-mid);text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:500}.statv2-hero{justify-content:space-between;align-items:flex-end;gap:var(--fos-space-4);margin-top:-2px;display:flex}.statv2-num{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:56px;font-weight:800;line-height:.95}.statv2-num-unit{color:var(--fos-text-mid);margin-left:2px;font-size:.45em;font-weight:600}.statv2-delta{border-radius:var(--fos-radius-md);font-family:var(--fos-ff-data);flex-shrink:0;align-items:baseline;gap:4px;margin-bottom:6px;padding:6px 10px;font-weight:700;display:inline-flex}.statv2-delta.down{color:var(--fos-danger);background:#e26a5a24}.statv2-delta.up{color:var(--fos-track-learning);background:#a8c49024}.statv2-delta.stable{background:var(--fos-bg-04);color:var(--fos-text-mid)}.statv2-delta-arrow{font-size:14px;line-height:1}.statv2-delta-num{font-variant-numeric:tabular-nums;font-size:16px;line-height:1}.statv2-delta-meta{opacity:.85;text-transform:uppercase;letter-spacing:.1em;margin-left:2px;font-size:9px;font-weight:500}.statv2-meters{gap:var(--fos-space-3);padding-top:var(--fos-space-3);border-top:1px solid var(--fos-border)}.statv2-meter,.statv2-meters{flex-direction:column;display:flex}.statv2-meter{gap:4px}.statv2-meter-head{justify-content:space-between;align-items:baseline;display:flex}.statv2-meter-label{font-family:var(--fos-ff-body);color:var(--fos-text-mid);font-size:12px;font-weight:500}.statv2-meter-num{font-family:var(--fos-ff-data);color:var(--fos-text-lo);font-size:11px}.statv2-meter-num strong{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.01em;margin-right:1px;font-size:14px;font-weight:700}.statv2-meter-max{color:var(--fos-text-lo)}.statv2-meter-bar{background:var(--fos-bg-04);border-radius:3px;height:6px;overflow:hidden}.statv2-meter-bar>span{border-radius:3px;height:100%;transition:width .32s cubic-bezier(.16,1,.3,1);display:block}.statv2-meter[data-tier=low] .statv2-meter-bar>span{background:var(--fos-danger);opacity:.75}.statv2-meter[data-tier=mid] .statv2-meter-bar>span{background:var(--fos-warning)}.statv2-meter[data-tier=high] .statv2-meter-bar>span{background:var(--fos-success)}.statv2-trend{align-items:center;gap:var(--fos-space-3);padding-top:var(--fos-space-3);border-top:1px solid var(--fos-border);margin-top:var(--fos-space-2);display:flex}.statv2-trend-label{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.1em;flex-shrink:0;font-size:10px}.statv2-spark-wrap{flex:1;height:24px;position:relative;overflow:visible}.statv2-spark{width:100%;height:100%;display:block;overflow:visible}.statv2-spark-dot{pointer-events:none;background-color:currentColor;border-radius:50%;width:5px;height:5px;margin-top:-2.5px;margin-right:-2.5px;position:absolute}.statv2-weekbars{padding:var(--fos-space-3) 0;border-top:1px solid var(--fos-border);grid-template-columns:repeat(7,1fr);align-items:end;gap:6px;height:80px;display:grid}.statv2-weekbar{flex-direction:column;justify-content:flex-end;align-items:center;gap:4px;height:100%;display:flex}.statv2-weekbar>span{background:var(--fos-danger);opacity:.7;border-radius:2px 2px 0 0;width:100%;min-height:3px;transition:opacity .2s;display:block}.statv2-weekbar:hover>span{opacity:1}.statv2-weekbar>em{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.1em;font-size:9px;font-style:normal;line-height:1}.statv2-details{border-top:1px solid var(--fos-border);padding-top:var(--fos-space-3);flex-direction:column;gap:0;display:flex}.statv2-detail-row{border-bottom:1px solid var(--fos-border);justify-content:space-between;align-items:baseline;padding:8px 0;display:flex}.statv2-detail-row:last-child{border-bottom:none;padding-bottom:0}.statv2-detail-row:first-child{padding-top:0}.statv2-detail-label{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.12em;font-size:10px}.statv2-detail-value{font-family:var(--fos-ff-body);color:var(--fos-text-hi);font-size:13px;font-weight:600}.statv2-detail-meta{font-family:var(--fos-ff-data);color:var(--fos-text-mid);margin-left:2px;font-weight:500}.goal-section{margin-top:var(--fos-space-12);gap:var(--fos-space-12);padding:0 var(--fos-space-8);grid-template-columns:280px 1fr;align-items:center;display:grid}.donut-wrap{align-items:center;gap:var(--fos-space-3);flex-direction:column;display:flex}.donut{width:200px;height:200px;position:relative}.donut-center{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.donut-pct{font-family:var(--fos-ff-display);color:var(--fos-text-hi);font-size:36px;font-weight:800;line-height:1}.donut-label{font-family:var(--fos-ff-body);margin-top:2px;font-size:13px}.donut-label,.donut-sub{color:var(--fos-text-lo)}.donut-sub{font-family:var(--fos-ff-data);font-size:12px}.breakdown{gap:var(--fos-space-3);flex-direction:column;display:flex}.breakdown-row{gap:var(--fos-space-4);grid-template-columns:72px 1fr auto;align-items:center;display:grid}.breakdown-label{font-family:var(--fos-ff-data);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:4px;font-size:11px;display:inline-flex}.breakdown-bar{background:var(--fos-bg-03);height:4px;overflow:hidden}.breakdown-bar,.breakdown-bar>span{border-radius:var(--fos-radius-full)}.breakdown-bar>span{height:100%;transition:width .3s;display:block}.breakdown-stat{font-family:var(--fos-ff-data);color:var(--fos-text-mid);white-space:nowrap;font-size:13px}.breakdown-stat .a{color:var(--fos-text-hi);font-weight:500}.breakdown-stat .slash{color:var(--fos-text-lo);margin:0 3px}.info-tooltip-wrap{vertical-align:middle;margin-left:var(--fos-space-2);align-items:center;display:inline-flex;position:relative}.info-tooltip-trigger{border:1.5px solid var(--fos-border-strong);width:16px;height:16px;color:var(--fos-text-muted);font-family:var(--fos-ff-sans);cursor:pointer;text-transform:none;letter-spacing:0;background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.info-tooltip-trigger:hover{color:var(--fos-text-mid);border-color:var(--fos-text-mid)}.info-tooltip-panel{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);padding:var(--fos-space-3) var(--fos-space-4);width:220px;font-family:var(--fos-ff-sans);color:var(--fos-text-mid);text-transform:none;letter-spacing:0;z-index:50;box-shadow:var(--fos-shadow-lg);font-size:12px;font-weight:400;line-height:1.5;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}@media (max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{display:none}.bottom-strip{z-index:50;background:var(--fos-bg-base);border-top:1px solid var(--fos-border);padding:6px 4px calc(6px + env(safe-area-inset-bottom));transition:var(--theme-transition);display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-strip-item{color:var(--fos-text-lo);cursor:pointer;border-radius:var(--fos-radius-sm);background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:6px 2px;text-decoration:none;transition:color .12s;display:flex}.bottom-strip-item:hover{color:var(--fos-text-mid)}.bottom-strip-item.active{color:var(--fos-accent)}.bottom-strip-icon{display:inline-flex}.bottom-strip-icon svg{width:20px;height:20px}.bottom-strip-label{text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:600}.bottom-strip-bell{position:relative}.bottom-strip-bell-badge{background:var(--fos-accent);color:#fff;border-radius:var(--fos-radius-full);text-align:center;pointer-events:none;min-width:14px;padding:2px 4px;font-size:9px;font-weight:700;line-height:1;position:absolute;top:4px;right:calc(50% - 18px)}.main{padding:var(--fos-space-3) var(--fos-space-3) calc(64px + env(safe-area-inset-bottom)) var(--fos-space-3)}.today-page{padding:0}.fab-wrapper{bottom:calc(56px + env(safe-area-inset-bottom) + var(--fos-space-3));right:var(--fos-space-4)}.stat-grid{grid-template-columns:1fr}.stat-card{min-height:unset}.goal-section{gap:var(--fos-space-6);grid-template-columns:1fr;padding:0}.donut-wrap{align-items:center;gap:var(--fos-space-4);flex-direction:row}.hero-segment{padding:0 var(--fos-space-2)}.status-strip{gap:var(--fos-space-3) var(--fos-space-5);padding:var(--fos-space-3) var(--fos-space-4);grid-template-columns:1fr 1fr;display:grid}.status-divider{display:none}.status-link{text-align:right;grid-column:1/-1;margin-left:0}.greeting-title{font-size:32px}.tab-btn{padding:10px 16px;font-size:13px}}@media (max-width:640px){.stat-grid{grid-template-columns:1fr}.stat-card{min-height:unset}.stat-value{font-size:36px}.goal-section{margin-top:var(--fos-space-8)}.donut{width:140px;height:140px}.donut-pct{font-size:28px}}@media (max-width:360px){.status-strip{grid-template-columns:1fr}.status-link{text-align:left}}.sheet-track-form-row{gap:var(--fos-space-5);align-items:flex-start;display:flex}@media (max-width:540px){.sheet-track-form-row{gap:var(--fos-space-3);flex-direction:column}}.sheet-track-form-section{flex-direction:column;display:flex}.sheet-track-form-label{font-family:var(--fos-ff-body);color:var(--fos-text-mid);margin-bottom:var(--fos-space-2);align-items:baseline;gap:6px;font-size:12px;font-weight:600;display:flex}.form-label-optional,.sheet-track-form-label-hint{color:var(--fos-text-lo);font-size:11px;font-weight:400}.icon-picker-trigger{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);width:36px;height:36px;color:var(--fos-text-mid);cursor:pointer;justify-content:center;align-items:center;padding:0;transition:border-color .14s,background .14s,color .14s;display:inline-flex}.icon-picker-trigger:hover:not(:disabled){border-color:var(--fos-border-strong);color:var(--fos-text-hi);background:var(--fos-bg-02)}.icon-picker-trigger:focus-visible{box-shadow:0 0 0 3px var(--fos-accent-dim);outline:none}.icon-picker-trigger:disabled{opacity:.5;cursor:not-allowed}.icon-picker-trigger-plus{font-family:var(--fos-ff-body);color:var(--fos-text-lo);font-size:20px;font-weight:300;line-height:1}.icon-picker-popover{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);z-index:260;flex-direction:column;width:340px;max-height:440px;display:flex;position:fixed;overflow:hidden;box-shadow:0 10px 30px #0000002e,0 2px 6px #00000014}[data-theme=light] .icon-picker-popover{box-shadow:0 10px 30px #14100c1a,0 2px 6px #14100c0d}.icon-picker-tabs{border-bottom:1px solid var(--fos-border);flex-shrink:0;display:flex}.icon-picker-tab{font-family:var(--fos-ff-body);color:var(--fos-text-lo);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:10px 12px;font-size:13px;font-weight:500;transition:color .14s,border-color .14s}.icon-picker-tab:hover:not(.icon-picker-tab--disabled):not(.icon-picker-tab--active){color:var(--fos-text-mid)}.icon-picker-tab--active{color:var(--fos-text-hi);border-bottom-color:var(--fos-accent)}.icon-picker-tab--disabled{color:var(--fos-text-muted);cursor:not-allowed}.icon-picker-search-wrap{flex-shrink:0;padding:8px 10px 6px}.icon-picker-search{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);width:100%;font-family:var(--fos-ff-body);color:var(--fos-text-hi);padding:6px 10px;font-size:13px;transition:border-color .14s,background .14s}.icon-picker-search::placeholder{color:var(--fos-text-lo)}.icon-picker-search:focus{border-color:var(--fos-accent-mid);background:var(--fos-bg-01);outline:none}.icon-picker-body{flex:1;padding:4px 10px 10px;overflow-y:auto}.icon-picker-empty{text-align:center;color:var(--fos-text-lo);padding:24px 10px;font-size:13px}.icon-picker-grid{grid-template-columns:repeat(8,32px);justify-content:space-between;gap:4px;display:grid}.icon-picker-swatch{border-radius:var(--fos-radius-sm);width:32px;height:32px;color:var(--fos-text-mid);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;transition:background .1s,color .1s,border-color .1s;display:inline-flex}.icon-picker-swatch:hover{background:var(--fos-bg-03);color:var(--fos-text-hi)}.icon-picker-swatch--selected{background:var(--fos-accent-dim);color:var(--fos-accent);border-color:var(--fos-accent-mid)}.icon-picker-swatch:focus-visible{box-shadow:0 0 0 2px var(--fos-accent-dim);outline:none}.icon-picker-footer{border-top:1px solid var(--fos-border);flex-shrink:0;padding:6px 10px}.icon-picker-remove{border-radius:var(--fos-radius-sm);color:var(--fos-text-lo);cursor:pointer;font-family:var(--fos-ff-body);background:0 0;border:none;align-items:center;gap:4px;padding:4px 8px;font-size:12px;transition:color .12s,background .12s;display:inline-flex}.icon-picker-remove:hover{color:var(--fos-text-hi);background:var(--fos-bg-02)}.icon-picker-emoji-wrap{overflow:hidden}.icon-picker-emoji-root,.icon-picker-emoji-wrap{flex-direction:column;flex:1;min-height:0;display:flex}.icon-picker-emoji-root{background:0 0;width:100%}.icon-picker-emoji-search{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);font-family:var(--fos-ff-body);color:var(--fos-text-hi);outline:none;flex-shrink:0;width:calc(100% - 20px);margin:8px 10px 6px;padding:6px 10px;font-size:13px;transition:border-color .14s,background .14s}.icon-picker-emoji-search::placeholder{color:var(--fos-text-lo)}.icon-picker-emoji-search:focus{border-color:var(--fos-accent-mid);background:var(--fos-bg-01)}.icon-picker-emoji-viewport{flex:1;min-height:0}.icon-picker-emoji-state{height:100%;min-height:120px;color:var(--fos-text-lo);font-size:13px;font-family:var(--fos-ff-body);justify-content:center;align-items:center;padding:24px 10px;display:flex}.icon-picker-emoji-list{padding:4px 6px 10px}.icon-picker-emoji-wrap [frimousse-row]{box-sizing:border-box;justify-content:space-between;width:100%}.icon-picker-emoji-list [frimousse-category-header]{font-family:var(--fos-ff-data);letter-spacing:.14em;text-transform:uppercase;color:var(--fos-text-lo);background:var(--fos-bg-01);padding:6px 4px 3px;font-size:10px}.icon-picker-emoji-list [frimousse-emoji]{border-radius:var(--fos-radius-sm);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:20px;line-height:1;transition:background .1s,border-color .1s;display:inline-flex}.icon-picker-emoji-list [frimousse-emoji]:hover,.icon-picker-emoji-list [frimousse-emoji][data-active]{background:var(--fos-bg-03);border-color:var(--fos-border-strong)}.icon-picker-emoji-list [frimousse-emoji]:focus-visible{box-shadow:0 0 0 2px var(--fos-accent-dim);outline:none}.goals-page{gap:var(--fos-space-5);flex-direction:column;display:flex}.goals-page-header{justify-content:space-between;align-items:center;display:flex}.goals-page-header h1{color:var(--fos-text-hi);margin:0;font-size:22px;font-weight:700}.goals-empty{align-items:center;gap:var(--fos-space-4);text-align:center;padding:var(--fos-space-10) var(--fos-space-8);background:var(--fos-bg-01);border:1px dashed var(--fos-border);border-radius:var(--fos-radius-md);color:var(--fos-text-lo);font-size:14px}.goals-empty,.goals-list{flex-direction:column;display:flex}.goals-list{gap:var(--fos-space-6);margin:0;padding:0;list-style:none}@keyframes card-rise-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes countdown-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.8)}}.goal-card{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);animation:card-rise-in .5s cubic-bezier(.16,1,.3,1) both;overflow:hidden}.goal-card:first-child{animation-delay:80ms}.goal-card:nth-child(2){animation-delay:.18s}.goal-card:nth-child(3){animation-delay:.28s}.goal-card-edge{background:var(--fos-text-muted);height:3px}.goal-card[data-status=behind] .goal-card-edge{background:var(--fos-danger)}.goal-card[data-status=atrisk] .goal-card-edge{background:var(--fos-warning)}.goal-card[data-status=ontrack] .goal-card-edge{background:var(--fos-track-learning)}.goal-card-body{padding:var(--fos-space-6) var(--fos-space-7) var(--fos-space-7)}.goal-card[data-status=behind] .goal-card-body{background:linear-gradient(#b94c3c0d,#0000 80px)}.goal-card[data-status=atrisk] .goal-card-body{background:linear-gradient(#b080200d,#0000 80px)}.goal-card[data-status=ontrack] .goal-card-body{background:linear-gradient(#5e78480d,#0000 80px)}.goal-card-top-row{justify-content:space-between;align-items:flex-start;gap:var(--fos-space-3);margin-bottom:var(--fos-space-4);display:flex}.goal-card-top-row>.goal-card-top-right:only-child{margin-left:auto}.goal-card-top-right{gap:var(--fos-space-1)}.goal-card-flag,.goal-card-top-right{align-items:center;display:inline-flex}.goal-card-flag{gap:var(--fos-space-2);color:var(--fos-danger);font-family:var(--fos-ff-data);text-transform:uppercase;letter-spacing:.14em;border-radius:var(--fos-radius-md);background:#b94c3c24;padding:7px 14px;font-size:11px;font-weight:700;line-height:1}.goal-card-flag:before{content:"";background:var(--fos-danger);border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:countdown-pulse 1.6s ease-in-out infinite}.goal-card[data-status=atrisk] .goal-card-flag{color:var(--fos-warning);background:#b0802024}.goal-card[data-status=atrisk] .goal-card-flag:before{background:var(--fos-warning)}.goal-card-menu-wrap{flex-shrink:0}.goal-card-menu{width:32px;height:32px;cursor:pointer;border-radius:50%;transition:all .15s}.goal-card-title{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.01em;margin-top:0;margin-bottom:6px;font-size:18px;font-weight:700;line-height:1.2}.goal-card-hero .goal-card-title{font-size:26px;font-weight:800}.goal-card-why{font-family:var(--fos-ff-fancy);color:var(--fos-text-lo);margin-top:var(--fos-space-1);margin-bottom:var(--fos-space-3);-webkit-line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;font-size:14px;font-style:italic;font-weight:400;line-height:1.45;display:-webkit-box;overflow:hidden}.goal-card-track{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:6px;font-size:11px;display:inline-flex}.goal-card-track .track-icon{width:12px;height:12px;display:inline-flex}.goal-card-track svg{width:100%;height:100%}.goal-card-type-sep{color:var(--fos-text-muted)}.goal-hero-split{gap:var(--fos-space-7);margin-top:var(--fos-space-5);padding-top:var(--fos-space-5);border-top:1px solid var(--fos-border);grid-template-columns:1fr 220px;align-items:stretch;display:grid}.goal-hero-split-left{gap:var(--fos-space-3);flex-direction:column;min-width:0;display:flex}.goal-hero-split-left .goal-card-title{margin-bottom:4px}.goal-hero-split-left .goal-card-why{margin-bottom:0}.goal-hero-split-left .goal-card-track{margin-bottom:var(--fos-space-3)}.goal-hero-split-left .goal-coach{margin-top:0}.goal-hero-split-right{justify-content:center;align-items:center;gap:var(--fos-space-4);flex-direction:column;display:flex}.goal-hero-pace{margin-top:var(--fos-space-4);padding:var(--fos-space-5) var(--fos-space-5) var(--fos-space-4);background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md)}.goal-hero-pace-label{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.16em;margin-bottom:var(--fos-space-3);font-size:10px;font-weight:600}.goal-hero-pace-numbers{gap:var(--fos-space-3);margin-bottom:var(--fos-space-3);padding-bottom:var(--fos-space-3);border-bottom:1px solid var(--fos-border);grid-template-columns:1fr auto 1fr;align-items:center;display:grid}.goal-hero-pace-current,.goal-hero-pace-target{flex-direction:column;gap:4px;display:flex}.goal-hero-pace-current{align-items:flex-end}.goal-hero-pace-num{font-family:var(--fos-ff-display);color:var(--fos-danger);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:28px;font-weight:800;line-height:.9}.goal-hero-pace-unit{color:var(--fos-text-mid);margin-left:1px;font-size:.5em;font-weight:600}.goal-hero-pace-target-label{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.16em;font-size:9px;font-weight:700}.goal-hero-pace-arrow{font-family:var(--fos-ff-display);color:var(--fos-text-muted);font-size:24px;font-weight:400;line-height:1}.goal-hero-pace-current-num{font-family:var(--fos-ff-display);color:var(--fos-text-mid);letter-spacing:-.015em;font-variant-numeric:tabular-nums;font-size:22px;font-weight:700;line-height:.9}.goal-hero-pace-current-unit{color:var(--fos-text-lo);margin-left:1px;font-size:.55em;font-weight:600}.goal-hero-pace-current-label{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.16em;font-size:9px;font-weight:700}.goal-hero-pace-gap{font-family:var(--fos-ff-fancy);color:var(--fos-text-mid);font-size:13px;font-style:italic;font-weight:400;line-height:1.5}.goal-hero-pace-gap strong{font-family:var(--fos-ff-display);color:var(--fos-danger);letter-spacing:-.01em;font-size:16px;font-style:normal;font-weight:800}.goal-coach{gap:var(--fos-space-3);padding:var(--fos-space-4) var(--fos-space-5);margin-top:var(--fos-space-5);background:var(--fos-bg-02);border-left:2px solid var(--fos-accent);border-radius:0 var(--fos-radius-md) var(--fos-radius-md) 0;display:flex}.goal-card[data-status=behind] .goal-coach{border-left-color:var(--fos-danger)}.goal-card[data-status=atrisk] .goal-coach{border-left-color:var(--fos-warning)}.goal-card[data-status=ontrack] .goal-coach{border-left-color:var(--fos-track-learning)}.goal-coach-mark{font-family:var(--fos-ff-fancy);color:var(--fos-accent-mid);flex-shrink:0;font-size:22px;font-style:italic;line-height:1}.goal-card[data-status=behind] .goal-coach-mark{color:#b94c3c8c}.goal-card[data-status=atrisk] .goal-coach-mark{color:#b080209e}.goal-card[data-status=ontrack] .goal-coach-mark{color:#5e78488c}.goal-coach-text{font-family:var(--fos-ff-fancy);color:var(--fos-text-hi);font-size:15px;font-style:italic;font-weight:400;line-height:1.45}.goal-status-block{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;margin-left:auto;display:flex}.goal-numbers-row .goal-status-block{align-self:flex-start}.goal-hero-status-block-below{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:180px;margin-left:0;margin-right:0;display:flex}.goal-hero-status-block-below>*{margin-left:0;margin-right:0}.goal-hero-status-block-below .goal-hero-status-pill{align-self:center}.goal-hero-status-pill{border-radius:var(--fos-radius-sm);font-family:var(--fos-ff-data);text-transform:uppercase;letter-spacing:.14em;color:var(--fos-danger);background:#b94c3c2e;flex-shrink:0;margin-bottom:8px;padding:5px 12px;font-size:11px;font-weight:700;line-height:1}.goal-card[data-status=atrisk] .goal-hero-status-pill{color:var(--fos-warning);background:#b080202e}.goal-card[data-status=ontrack] .goal-hero-status-pill{color:var(--fos-track-learning);background:#5e78482e}.goal-status-subline{font-family:var(--fos-ff-fancy);color:var(--fos-text-mid);text-align:right;max-width:220px;font-size:12px;font-style:italic;font-weight:400;line-height:1.2}.goal-card[data-status=behind] .goal-status-subline{color:var(--fos-danger)}.goal-card[data-status=atrisk] .goal-status-subline{color:var(--fos-warning)}.goal-card[data-status=ontrack] .goal-status-subline{color:var(--fos-track-learning)}.goal-hero-status-block-below .goal-status-subline{text-align:center;max-width:180px}.goal-numbers-row{margin-top:var(--fos-space-4);margin-bottom:var(--fos-space-3);font-family:var(--fos-ff-data);align-items:baseline;gap:6px;font-size:13px;display:flex}.goal-current{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.02em;font-size:28px;font-weight:800;line-height:1}.goal-divider{color:var(--fos-text-muted);margin:0 4px}.goal-target{color:var(--fos-text-mid);font-size:14px}.goal-meta-sep{color:var(--fos-text-muted)}.goal-meta{color:var(--fos-text-mid);font-size:11px}.goal-pace{margin-top:var(--fos-space-4);font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.1em;font-size:11px}.goal-pace-num{color:var(--fos-text-hi);font-weight:700}.goal-sheet-backdrop{z-index:100;padding:var(--fos-space-4);background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.goal-sheet{background:var(--fos-bg-base);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);padding:var(--fos-space-6);gap:var(--fos-space-4);flex-direction:column;width:100%;max-width:480px;max-height:90vh;display:flex;overflow-y:auto}.goal-sheet-header{justify-content:space-between;align-items:center;display:flex}.goal-sheet-header h2{color:var(--fos-text-hi);margin:0;font-size:17px;font-weight:700}.goal-sheet-close{color:var(--fos-text-lo);cursor:pointer;border-radius:var(--fos-radius-sm);background:0 0;border:none;padding:4px 8px;font-size:20px;line-height:1}.goal-sheet-close:hover{color:var(--fos-text-hi);background:var(--fos-bg-03)}.goal-sheet-mode-picker{gap:var(--fos-space-3);grid-template-columns:1fr 1fr;display:grid}.mode-card{padding:var(--fos-space-4);background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);text-align:left;cursor:pointer;transition:border-color .14s,background .14s}.mode-card:hover{border-color:var(--fos-border-strong)}.mode-card--active{border-color:var(--fos-accent);background:var(--fos-accent-dim)}.mode-card strong{margin-bottom:var(--fos-space-1);color:var(--fos-text-hi);font-size:14px;display:block}.mode-card p{color:var(--fos-text-lo);margin:0;font-size:12px}.goal-sheet-mode-locked{padding:var(--fos-space-2) var(--fos-space-3);background:var(--fos-bg-01);border-radius:var(--fos-radius-sm);color:var(--fos-text-mid);margin:0;font-size:13px}.goal-sheet-mode-locked-hint{color:var(--fos-text-lo);margin-top:2px;font-size:12px;display:block}.goal-sheet-field{gap:var(--fos-space-1);flex-direction:column;display:flex}.goal-sheet-field label,.goal-sheet-field-label{color:var(--fos-text-mid);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:600}.goal-sheet-field input[type=number],.goal-sheet-field input[type=text]{border:1px solid var(--fos-border);border-radius:var(--fos-radius-sm);background:var(--fos-bg-02);color:var(--fos-text-hi);font-size:14px;font-family:var(--fos-ff-body);padding:8px 12px;transition:border-color .14s}.goal-sheet-field input:focus{border-color:var(--fos-accent);outline:none}.goal-sheet-field input:disabled{opacity:.5;cursor:not-allowed}.goal-sheet-locked-value{color:var(--fos-text-mid);margin:0;font-size:14px}.field-hint{font-family:var(--fos-ff-body);color:var(--fos-text-lo);text-transform:none;letter-spacing:0;margin-left:6px;font-size:12px;font-weight:400}.field-textarea{box-sizing:border-box;width:100%;font-family:var(--fos-ff-fancy);color:var(--fos-text-hi);background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-sm);resize:vertical;min-height:56px;padding:10px 12px;font-size:14px;font-style:italic;line-height:1.45;transition:border-color .14s}.field-textarea:focus{border-color:var(--fos-accent);outline:none}.field-textarea::placeholder{opacity:.5;font-style:italic}.track-selector{position:relative}.track-selector-trigger{align-items:center;gap:var(--fos-space-2);border:1px solid var(--fos-border);border-radius:var(--fos-radius-sm);background:var(--fos-bg-02);width:100%;color:var(--fos-text-hi);font-size:14px;font-family:var(--fos-ff-body);cursor:pointer;text-align:left;padding:8px 12px;transition:border-color .14s;display:flex}.track-selector-trigger:hover{border-color:var(--fos-border-strong)}.track-selector-trigger:focus{border-color:var(--fos-accent);outline:none}.track-selector-trigger:disabled{opacity:.5;cursor:not-allowed}.track-selector-swatch{border-radius:50%;flex-shrink:0;width:10px;height:10px}.track-selector-name{flex:1}.track-selector-chevron{width:14px;height:14px;color:var(--fos-text-lo);flex-shrink:0;transition:transform .14s}.track-selector-chevron--open{transform:rotate(180deg)}.track-selector-panel{z-index:400;background:var(--fos-bg-base);border:1px solid var(--fos-border);border-radius:var(--fos-radius-sm);max-height:240px;margin:0;padding:4px;list-style:none;position:fixed;overflow-y:auto;box-shadow:0 4px 16px #0000001f}.track-selector-option{align-items:center;gap:var(--fos-space-2);border-radius:var(--fos-radius-sm);cursor:pointer;color:var(--fos-text-hi);font-size:14px;font-family:var(--fos-ff-body);padding:8px 10px;display:flex}.track-selector-option:hover{background:var(--fos-bg-02)}.track-selector-option--active,.track-selector-option--active:hover{background:var(--fos-accent-dim)}.date-field-picker{position:relative}.date-field-trigger{border:1px solid var(--fos-border);border-radius:var(--fos-radius-sm);background:var(--fos-bg-02);width:100%;color:var(--fos-text-hi);font-size:14px;font-family:var(--fos-ff-body);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;padding:8px 12px;transition:border-color .14s;display:flex}.date-field-trigger:hover{border-color:var(--fos-border-strong)}.date-field-trigger:focus{border-color:var(--fos-accent);outline:none}.date-field-trigger:disabled{opacity:.5;cursor:not-allowed}.date-field-clear,.date-field-placeholder{color:var(--fos-text-lo)}.date-field-clear{cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0 2px;font-size:16px;line-height:1}.date-field-clear:hover{color:var(--fos-text-hi)}.duration-chips{align-items:center;gap:var(--fos-space-2);flex-wrap:wrap;display:flex}.duration-chip{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-sm);color:var(--fos-text-mid);cursor:pointer;padding:6px 12px;font-size:13px;transition:background .14s,border-color .14s}.duration-chip:hover{border-color:var(--fos-border-strong);color:var(--fos-text-hi)}.duration-chip--active{background:var(--fos-accent);border-color:var(--fos-accent);color:var(--fos-bg-base);font-weight:600}.duration-custom{border:1px solid var(--fos-border);border-radius:var(--fos-radius-sm);background:var(--fos-bg-02);width:90px;color:var(--fos-text-hi);font-size:13px;font-family:var(--fos-ff-body);padding:6px 10px}.goal-sheet-break-behavior{gap:var(--fos-space-2);border:none;flex-direction:column;margin:0;padding:0;display:flex}.goal-sheet-break-behavior legend{color:var(--fos-text-mid);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--fos-space-2);padding:0;font-size:12px;font-weight:600}.goal-sheet-break-option{column-gap:var(--fos-space-2);padding:var(--fos-space-3);border:1px solid var(--fos-border);border-radius:var(--fos-radius-sm);cursor:pointer;grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:center;row-gap:2px;transition:border-color .14s;display:grid}.goal-sheet-break-option:hover{border-color:var(--fos-border-strong)}.goal-sheet-break-option input[type=radio]{grid-row:1/3;align-self:center}.goal-sheet-break-option strong{color:var(--fos-text-hi);font-size:13px}.goal-sheet-break-option span,.goal-sheet-hint{color:var(--fos-text-lo);font-size:12px}.goal-sheet-hint{padding:var(--fos-space-2) var(--fos-space-3);background:var(--fos-bg-01);border-radius:var(--fos-radius-sm);margin:0;font-style:italic;line-height:1.5}.goal-sheet-error{color:var(--fos-danger);margin:0;font-size:13px}.goal-sheet-footer{gap:var(--fos-space-2);padding-top:var(--fos-space-2);justify-content:flex-end;display:flex}.archive-section-title{color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.07em;margin:0 0 var(--fos-space-3);font-size:12px;font-weight:600}.archive-row-delete{font-size:12px;font-family:var(--fos-ff-body);color:var(--fos-danger);border:1px solid var(--fos-border);border-radius:var(--fos-radius-sm);padding:var(--fos-space-1) var(--fos-space-3);cursor:pointer;background:0 0;flex-shrink:0;transition:background .15s,border-color .15s}.archive-row-delete:hover{background:var(--fos-danger-dim);border-color:var(--fos-danger)}.archive-row-delete:disabled{opacity:.5;cursor:not-allowed}.goal-status{font-family:var(--fos-ff-data);text-transform:uppercase;letter-spacing:.14em;border-radius:var(--fos-radius-sm);margin-left:auto;padding:3px 8px;font-size:10px;font-weight:700}.goal-status-block .goal-status{margin-left:0}.status-behind{color:var(--fos-danger);background:#b94c3c24}.status-atrisk{color:var(--fos-warning);background:#b0802024}.status-ontrack{color:var(--fos-track-learning);background:#5e784824}.goal-countdown{background:var(--fos-bg-03);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);flex-shrink:0;align-items:center;gap:8px;padding:7px 12px;line-height:1;display:inline-flex;position:relative}.goal-card[data-status=atrisk] .goal-countdown{background:#b080201a;border-color:#b0802059}.goal-card[data-status=behind] .goal-countdown{background:#b94c3c1a;border-color:#b94c3c59}.goal-countdown-num{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.015em;font-variant-numeric:tabular-nums;font-size:18px;font-weight:800;line-height:1}.goal-card[data-status=atrisk] .goal-countdown-num{color:var(--fos-warning)}.goal-card[data-status=behind] .goal-countdown-num{color:var(--fos-danger)}.goal-countdown-label{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.14em;font-size:10px;font-weight:700;line-height:1}.goal-countdown-label-unit{color:var(--fos-text-mid)}@keyframes thermo-fill-in{0%{width:0!important}}.goal-thermo{background:var(--fos-bg-04);height:12px;margin-top:var(--fos-space-3);border-radius:6px;position:relative;overflow:visible}.goal-thermo-fill{background:var(--goal-track,var(--fos-accent));border-radius:6px;height:100%;animation:thermo-fill-in .8s cubic-bezier(.16,1,.3,1) .2s both}.goal-card[data-status=behind] .goal-thermo-fill{box-shadow:0 0 8px #b94c3c4d}.goal-thermo-tick{background:var(--fos-text-muted);border-radius:50%;width:4px;height:4px;position:absolute;top:50%;transform:translate(-50%,-50%)}@keyframes day-chip-pop{0%{opacity:0;transform:scale(.6)}50%{opacity:1;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}.goal-day-chips{margin-top:var(--fos-space-4);align-items:flex-end;gap:10px;display:inline-flex}.goal-day-chip-stack{flex-direction:column;align-items:center;gap:6px;animation:day-chip-pop .32s cubic-bezier(.34,1.56,.64,1) both;display:flex}.goal-day-chip-stack:first-child{animation-delay:.24s}.goal-day-chip-stack:nth-child(2){animation-delay:.29s}.goal-day-chip-stack:nth-child(3){animation-delay:.34s}.goal-day-chip-stack:nth-child(4){animation-delay:.39s}.goal-day-chip-stack:nth-child(5){animation-delay:.44s}.goal-day-chip-stack:nth-child(6){animation-delay:.49s}.goal-day-chip-stack:nth-child(7){animation-delay:.54s}.goal-day-chip{border-radius:var(--fos-radius-md);background:var(--fos-bg-04);border:1px dashed var(--fos-border-strong);width:28px;height:28px;display:inline-block}.goal-day-chip.filled{background:var(--goal-track,var(--fos-accent));border:none;box-shadow:0 1px #0000000a}.goal-day-chip-stack>em{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-style:normal;font-weight:600;line-height:1}@keyframes ring-fill-in{0%{stroke-dashoffset:540.35px}}@keyframes pulse-num-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.goal-countdown-num,.goal-current,.goal-hero-num,.goal-hero-pace-num,.week-pulse-num{animation:pulse-num-in .6s cubic-bezier(.16,1,.3,1) .3s both}.goal-hero-ring{flex-shrink:0;position:relative}.goal-hero-ring--hero{width:180px;height:180px}.goal-hero-ring--small{width:80px;height:80px}.goal-hero-ring-svg{width:100%;height:100%;overflow:visible}.goal-hero-ring-track{stroke:var(--fos-bg-04)}.goal-hero-ring-arc{filter:drop-shadow(0 0 6px #b94c3c66);transition:stroke-dashoffset 1.2s cubic-bezier(.16,1,.3,1);animation:ring-fill-in 1.4s cubic-bezier(.16,1,.3,1) .4s both}.goal-hero-ring-center{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex;position:absolute;inset:0}.goal-hero-ring-pct{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:48px;font-weight:800;line-height:.9}.goal-hero-ring-pct-unit{color:var(--fos-text-mid);margin-left:1px;font-size:.5em;font-weight:600}.goal-hero-ring-num{font-family:var(--fos-ff-data);color:var(--fos-text-mid);letter-spacing:-.005em;margin-top:4px;font-size:13px;font-weight:700}.goal-hero-ring-num-unit{color:var(--fos-text-lo);font-size:.85em;font-weight:600}.goal-hero-ring-target{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.14em;font-size:9px;font-weight:600}.page-head{margin-bottom:var(--fos-space-7);justify-content:space-between;align-items:flex-start;display:flex}.goals-summary{margin-top:var(--fos-space-2);font-family:var(--fos-ff-data);text-transform:uppercase;letter-spacing:.1em;align-items:baseline;gap:8px;font-size:11px;display:inline-flex}.goals-summary-num{color:var(--fos-text-mid);font-weight:600}.goals-summary-sep{color:var(--fos-text-muted)}.goals-summary-flag{border-radius:var(--fos-radius-sm);padding:2px 6px;font-weight:600}.goals-summary-behind{color:var(--fos-danger);background:#b94c3c24}.goals-summary-atrisk{color:var(--fos-warning);background:#b0802024}.page-coach{margin:var(--fos-space-1) 0 var(--fos-space-6);padding:0;animation:page-coach-fade-in .8s cubic-bezier(.16,1,.3,1);position:relative}.page-coach-mark{color:var(--fos-accent);opacity:.22;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:64px;font-weight:500;line-height:1;position:absolute;top:-6px;left:-2px}.page-coach-mark,.page-coach-text{font-family:var(--fos-ff-fancy);font-style:italic}.page-coach-text{color:var(--fos-text-hi);letter-spacing:-.005em;z-index:1;max-width:760px;margin:0;padding-left:30px;font-size:22px;font-weight:400;line-height:1.4;position:relative}.page-coach-emph{color:var(--fos-accent);font-weight:500}@keyframes page-coach-fade-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.week-pulse{gap:var(--fos-space-5);margin-bottom:var(--fos-space-7);padding:var(--fos-space-6);background:linear-gradient(180deg,var(--fos-bg-01) 0,var(--fos-bg-base) 100%);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);grid-template-columns:2fr auto 1fr auto 1fr;align-items:center;display:grid}.week-pulse-divider{background:var(--fos-border);width:1px;height:80px}.week-pulse-stat{gap:var(--fos-space-2);flex-direction:column;justify-content:center;min-width:0;display:flex}.week-pulse-chart-stat,.week-pulse-stat-head{gap:var(--fos-space-3)}.week-pulse-stat-head{align-items:baseline;display:flex}.week-pulse-num{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:36px;font-weight:800;line-height:.9}.week-pulse-unit{font-size:.5em;font-weight:600}.week-pulse-fraction,.week-pulse-unit{color:var(--fos-text-mid);margin-left:2px}.week-pulse-fraction{font-family:var(--fos-ff-data);font-size:.45em;font-weight:500}.week-pulse-meta-vert{flex-direction:column;gap:4px}.week-pulse-meta,.week-pulse-meta-vert{font-family:var(--fos-ff-data);text-transform:uppercase;letter-spacing:.12em;font-size:10px;display:inline-flex}.week-pulse-meta{align-items:baseline;gap:8px}.week-pulse-label{color:var(--fos-text-mid);font-weight:600}.week-pulse-sub{color:var(--fos-text-lo);font-weight:500}.week-pulse-delta{border-radius:var(--fos-radius-sm);align-self:flex-start;padding:1px 5px;font-weight:700}.week-pulse-delta--up{color:var(--fos-success);background:var(--fos-success-dim)}.week-pulse-delta--down{color:var(--fos-warning);background:var(--fos-warning-dim)}.week-chart{grid-template-columns:repeat(7,1fr);align-items:end;gap:5px;height:56px;padding-top:8px;display:grid}.week-chart-bar{flex-direction:column;justify-content:flex-end;align-items:center;gap:5px;height:100%;display:flex;position:relative}.week-chart-bar>em{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.1em;font-size:9px;font-style:normal;font-weight:600;line-height:1}.week-chart-fill{background:var(--fos-accent);border-radius:2px 2px 0 0;width:100%;min-height:2px;transition:height .6s cubic-bezier(.16,1,.3,1);animation:chart-bar-rise .7s cubic-bezier(.16,1,.3,1) both;display:block}.week-chart-fill-best{background:var(--fos-success)}.week-chart-bar-today:before{content:"";background:var(--fos-accent);border-radius:50%;width:4px;height:4px;position:absolute;top:-2px;left:50%;transform:translate(-50%)}.week-chart-bar-today>em{color:var(--fos-accent);font-weight:800}.week-chart-bar-today .week-chart-fill{background:var(--fos-accent-hi)}.week-chart-bar-future .week-chart-fill{background:0 0;border:1px dashed var(--fos-border-strong);border-bottom:none;min-height:100%}@keyframes chart-bar-rise{0%{transform-origin:bottom;transform:scaleY(0)}to{transform:scaleY(1)}}.week-chart-bar:first-child .week-chart-fill{animation-delay:.4s}.week-chart-bar:nth-child(2) .week-chart-fill{animation-delay:.46s}.week-chart-bar:nth-child(3) .week-chart-fill{animation-delay:.52s}.week-chart-bar:nth-child(4) .week-chart-fill{animation-delay:.58s}.week-chart-bar:nth-child(5) .week-chart-fill{animation-delay:.64s}.week-chart-bar:nth-child(6) .week-chart-fill{animation-delay:.7s}.week-chart-bar:nth-child(7) .week-chart-fill{animation-delay:.76s}@media (max-width:768px){.greeting-title,.page-title{font-size:28px}.page-coach-text{font-size:18px}.week-pulse{gap:var(--fos-space-4);grid-template-columns:1fr}.week-pulse-divider{width:100%;height:1px}.goal-hero-split{gap:var(--fos-space-4);flex-direction:column;display:flex}.goal-hero-split-left,.goal-hero-split-right{display:contents}.goal-hero-split .goal-card-title{order:1;margin-bottom:0}.goal-hero-split .goal-card-why{order:2;margin-bottom:0}.goal-hero-split .goal-card-track{order:3;margin-bottom:0}.goal-hero-split .goal-hero-ring{order:4;align-self:center}.goal-hero-split .goal-hero-status-block-below{order:5;align-self:center}.goal-hero-split .goal-hero-pace{order:6;margin-top:0}.goal-hero-split .goal-coach{order:7}.goal-hero-ring--hero{width:140px;height:140px}.goal-hero-ring-pct{font-size:36px}.goal-hero-status-block-below{width:140px}.goal-hero-status-block-below .goal-status-subline{max-width:140px}.goal-hero-pace-num{font-size:22px}}.page-head-right{gap:var(--fos-space-3);flex-wrap:wrap}.page-head-right,.week-pager{align-items:center;display:inline-flex}.week-pager{gap:8px}.week-pager-btn{background:var(--fos-bg-02);border:1px solid var(--fos-border);width:32px;height:32px;color:var(--fos-text-mid);border-radius:var(--fos-radius-md);cursor:default;justify-content:center;align-items:center;padding:0;transition:all .15s cubic-bezier(.34,1.56,.64,1);display:inline-flex}.week-pager-btn svg{width:14px;height:14px}.week-pager-btn:hover{background:var(--fos-bg-03);border-color:var(--fos-border-strong);color:var(--fos-text-hi)}.week-pager-btn:active{transform:scale(.94)}.week-pager-label{text-align:center;min-width:140px;line-height:1.15}.week-pager-title{font-family:var(--fos-ff-body);color:var(--fos-text-hi);font-size:13px;font-weight:600}.week-pager-range{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.08em;margin-top:2px;font-size:11px}.week-pager-btn:disabled{opacity:.35;cursor:not-allowed}.week-pager-btn:disabled:hover{background:var(--fos-bg-02);border-color:var(--fos-border);color:var(--fos-text-mid)}.analytics-stats{gap:var(--fos-space-5);grid-template-columns:1fr 1fr;display:grid}.analytics-stats .stat-card{padding:var(--fos-space-6);min-height:240px}.stat-grid-v2{grid-template-columns:1fr 1fr}.section-head{margin-bottom:var(--fos-space-4);justify-content:space-between;align-items:center;display:flex}.section-title{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.01em;margin:0;font-size:18px;font-weight:700}.section-kicker{font-family:var(--fos-ff-data);color:var(--fos-text-mid);text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:700}.hour-distribution{padding:var(--fos-space-6)}.hour-distribution,.streak-summary{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);margin-top:var(--fos-space-5)}.streak-summary{padding:var(--fos-space-5) var(--fos-space-6)}.streak-summary-head{margin-bottom:var(--fos-space-3);align-items:center;gap:8px;display:flex}.streak-summary-icon{color:var(--fos-warning);align-items:center;width:14px;height:14px;display:inline-flex}.streak-summary-icon svg{width:100%;height:100%}.streak-summary-label{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.14em;font-size:11px}.streak-summary-num{font-family:var(--fos-ff-display);color:var(--fos-text-hi);font-size:22px;font-weight:700}.streak-summary-sep{color:var(--fos-text-muted)}.streak-summary-status{font-family:var(--fos-ff-body);color:var(--fos-track-learning);font-size:12px;font-weight:500}.streak-summary-chips{margin-bottom:var(--fos-space-2);gap:6px;display:flex}.streak-summary-chip{width:22px;height:22px;font-family:var(--fos-ff-data);background:var(--fos-bg-04);color:var(--fos-text-lo);cursor:default;border-radius:50%;justify-content:center;align-items:center;font-size:9px;font-weight:600;display:inline-flex}.streak-summary-chip[data-state=filled]{background:var(--fos-accent);color:#fff}.streak-summary-chip[data-state=freeze]{background:var(--fos-info-dim);color:var(--fos-info);border:1px dashed var(--fos-info)}.streak-summary-chip[data-state=pending]{border:1px dashed var(--fos-accent);color:var(--fos-accent)}.streak-summary-chip[data-state=empty]{background:var(--fos-bg-02);color:var(--fos-text-lo)}.streak-summary-foot{font-family:var(--fos-ff-data);color:var(--fos-text-mid);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.top-blocks{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);padding:var(--fos-space-5) var(--fos-space-6);margin-top:var(--fos-space-5)}.top-blocks-list{flex-direction:column;gap:0;display:flex}.top-blocks-row{align-items:center;gap:var(--fos-space-4);padding:var(--fos-space-3) 0;border-bottom:1px solid var(--fos-border);display:flex}.top-blocks-row:last-child{border-bottom:none}.top-blocks-num{font-family:var(--fos-ff-data);color:var(--fos-text-lo);flex-shrink:0;width:16px;font-size:12px;font-weight:600}.top-blocks-body{flex:1;min-width:0}.top-blocks-name{font-family:var(--fos-ff-ui);color:var(--fos-text-hi);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.top-blocks-intent{color:var(--fos-text-lo);margin-top:1px;font-size:12px}.top-blocks-meta{align-items:center;gap:var(--fos-space-3);flex-shrink:0;display:flex}.top-blocks-sep{background:var(--fos-border);width:1px;height:16px}.top-blocks-duration{font-family:var(--fos-ff-data);color:var(--fos-text-hi);font-size:15px;font-weight:700}.top-blocks-duration-unit{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.goals-progressed{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);padding:var(--fos-space-5) var(--fos-space-6);margin-top:var(--fos-space-5)}.goals-progressed-list{flex-direction:column;gap:0;display:flex}.goals-progressed-row{align-items:center;gap:var(--fos-space-3);padding:var(--fos-space-3) 0;border-bottom:1px solid var(--fos-border);display:flex}.goals-progressed-row:last-child{border-bottom:none}.goals-progressed-marker{border-radius:50%;flex-shrink:0;width:8px;height:8px}.goals-progressed-body{flex:1;min-width:0}.goals-progressed-name{font-family:var(--fos-ff-ui);color:var(--fos-text-hi);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.goals-progressed-delta{font-family:var(--fos-ff-data);flex-shrink:0;font-size:12px;font-weight:600}.goals-progressed-track{color:var(--fos-text-lo);margin-top:1px;font-size:11px}.goals-progressed-row[data-status=advanced] .goals-progressed-delta{color:var(--fos-success)}.goals-progressed-row[data-status=recovered] .goals-progressed-delta{color:var(--fos-accent)}.goals-progressed-row[data-status=stalled] .goals-progressed-delta{color:var(--fos-text-lo)}.coach-takeaway{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-left:3px solid var(--fos-accent);border-radius:var(--fos-radius-lg);padding:var(--fos-space-6) var(--fos-space-7);margin-top:var(--fos-space-5);text-align:center;position:relative}.coach-takeaway-mark{color:var(--fos-accent-mid);margin-bottom:var(--fos-space-2);-webkit-user-select:none;user-select:none;font-family:Fraunces,serif;font-size:32px;line-height:1}.coach-takeaway-text{color:var(--fos-text-hi);letter-spacing:-.005em;max-width:540px;margin:0 auto;font-family:Fraunces,serif;font-size:18px;font-style:italic;font-weight:400;line-height:1.4}.coach-takeaway-attr{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.1em;margin-top:var(--fos-space-3);font-size:11px}.reflection-section{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);padding:var(--fos-space-6);margin-top:var(--fos-space-5)}.dist-rows{flex-direction:column}.dist-row,.dist-rows{gap:var(--fos-space-3);display:flex}.dist-row{align-items:center}.dist-label{align-items:center;gap:var(--fos-space-2);width:160px;color:var(--fos-text-hi);white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;font-size:13px;font-weight:600;display:flex;overflow:hidden}.dist-label .cog-icon{flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;display:inline-flex}.dist-label .cog-icon svg{width:100%;height:100%}.dist-bar{background:var(--fos-bg-02);border-radius:3px;flex:1;height:6px;overflow:hidden}.dist-bar>span{border-radius:3px;height:100%;transition:width .4s;display:block}.dist-stat{align-items:baseline;gap:var(--fos-space-2);flex-shrink:0;justify-content:flex-end;width:80px;display:flex}.dist-hours{color:var(--fos-text-hi);font-size:13px;font-weight:600}.dist-hours,.dist-pct{font-family:var(--fos-ff-data)}.dist-pct{font-size:11px}.dist-empty,.dist-pct{color:var(--fos-text-lo)}.dist-empty{margin:0 0 var(--fos-space-4);font-size:13px}.dist-foot{gap:var(--fos-space-3);margin-top:var(--fos-space-5);padding-top:var(--fos-space-4);border-top:1px solid var(--fos-border);flex-direction:column;display:flex}.dist-foot-label{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.14em;font-size:10px}.dist-foot-grid{gap:var(--fos-space-3);grid-template-columns:repeat(3,1fr);display:grid}.dist-foot-item{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);align-items:center;gap:8px;padding:8px 12px;display:flex}.dist-foot-item .track-icon{flex-shrink:0;width:12px;height:12px;display:inline-flex}.dist-foot-item .track-icon svg{width:100%;height:100%}.dist-foot-name{font-family:var(--fos-ff-body);color:var(--fos-text-mid);flex:1;font-size:12px;font-weight:500}.dist-delta{font-family:var(--fos-ff-data);letter-spacing:.02em;color:var(--fos-text-lo);font-size:12px;font-weight:600}.dist-delta.up{color:var(--fos-track-learning)}.dist-delta.down{color:var(--fos-danger)}.section-meta{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.1em;font-size:11px}.top-block-row{align-items:center;gap:var(--fos-space-4);padding:var(--fos-space-3) 0;border-bottom:1px solid var(--fos-border);display:flex}.top-block-row:last-child{border-bottom:none}.top-block-num{font-family:var(--fos-ff-data);color:var(--fos-text-lo);flex-shrink:0;width:16px;font-size:12px;font-weight:600}.top-block-body{flex:1;min-width:0}.top-block-name{font-family:var(--fos-ff-ui);color:var(--fos-text-hi);font-size:14px;font-weight:500}.top-block-intent,.top-block-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.top-block-intent{color:var(--fos-text-lo);margin-top:1px;font-size:12px}.top-block-meta{align-items:center;gap:var(--fos-space-2);margin-top:var(--fos-space-1);color:var(--fos-text-mid);font-size:12px;display:flex}.top-block-sep{background:var(--fos-border);flex-shrink:0;width:1px;height:12px}.top-block-duration{font-family:var(--fos-ff-data);color:var(--fos-text-hi);flex-shrink:0;font-size:15px;font-weight:700}.top-block-duration-unit{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.top-blocks-empty{color:var(--fos-text-lo);margin:0;font-size:13px}.goal-progressed-row{align-items:center;gap:var(--fos-space-3);padding:var(--fos-space-3) 0;border-bottom:1px solid var(--fos-border);display:flex}.goal-progressed-row:last-child{border-bottom:none}.goal-progressed-marker{font-family:var(--fos-ff-data);text-align:center;flex-shrink:0;width:16px;font-size:14px;font-weight:700}.goal-progressed-body{flex:1;min-width:0}.goal-progressed-name{font-family:var(--fos-ff-ui);color:var(--fos-text-hi);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.goal-progressed-delta{font-family:var(--fos-ff-data);margin-top:1px;font-size:12px;font-weight:600}.goal-progressed-track{flex-shrink:0;align-items:center;display:flex}.goal-progressed-row[data-status=advanced] .goal-progressed-marker,.goal-progressed-row[data-status=completed] .goal-progressed-marker{color:var(--fos-success)}.goal-progressed-row[data-status=recovered] .goal-progressed-marker{color:var(--fos-accent)}.goal-progressed-row[data-status=stalled] .goal-progressed-marker{color:var(--fos-text-lo)}.goal-progressed-row[data-status=advanced] .goal-progressed-delta,.goal-progressed-row[data-status=completed] .goal-progressed-delta{color:var(--fos-success)}.goal-progressed-row[data-status=recovered] .goal-progressed-delta{color:var(--fos-accent)}.goal-progressed-row[data-status=stalled] .goal-progressed-delta{color:var(--fos-text-lo)}.reflection-prompt{font-family:var(--fos-ff-display);color:var(--fos-text-hi);margin-bottom:var(--fos-space-3);font-size:16px;font-weight:600}.reflection-foot{justify-content:space-between;align-items:center;gap:var(--fos-space-3);margin-top:var(--fos-space-3);flex-wrap:wrap;display:flex}.reflection-hint{color:var(--fos-text-lo);font-size:12px}.reflection-error{color:var(--fos-danger,var(--fos-warning));font-size:12px}@media (max-width:639px){.analytics-stats,.stat-grid-v2{grid-template-columns:1fr}.page-head-right{gap:var(--fos-space-2)}.week-pager-label{min-width:80px}}.section-subtitle{font-family:var(--fos-ff-fancy);color:var(--fos-text-mid);letter-spacing:-.005em;margin-top:4px;font-size:14px;font-style:italic;font-weight:400}.track-trends{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);padding:var(--fos-space-6);margin-top:var(--fos-space-5)}.trend-empty{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.08em;padding:var(--fos-space-4) 0;font-size:12px}.trend-rows{gap:var(--fos-space-2);flex-direction:column;display:flex}.trend-row{gap:var(--fos-space-5);padding:var(--fos-space-3) 0;border-bottom:1px solid var(--fos-border);grid-template-columns:100px 200px 1fr;align-items:center;display:grid}.trend-row:last-child{border-bottom:none;padding-bottom:0}.trend-row:first-child{padding-top:0}.trend-delta-block{align-items:baseline;gap:4px;display:flex}.trend-row[data-direction=up] .trend-delta-block{color:var(--fos-success)}.trend-row[data-direction=down] .trend-delta-block{color:var(--fos-danger)}.trend-delta-arrow{font-family:var(--fos-ff-data);font-size:18px;font-weight:700;line-height:1}.trend-delta-num{font-family:var(--fos-ff-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:28px;font-weight:800;line-height:1}.trend-delta-unit{opacity:.85;margin-left:1px;font-size:.55em}.trend-delta-new{font-family:var(--fos-ff-data);letter-spacing:.08em;font-size:14px;font-weight:700}.trend-meta{flex-direction:column;gap:4px;min-width:0;display:flex}.trend-name{font-family:var(--fos-ff-body);color:var(--fos-text-hi);letter-spacing:-.005em;align-items:center;gap:8px;font-size:14px;font-weight:600;display:inline-flex}.trend-name .track-icon{flex-shrink:0;width:14px;height:14px;display:inline-flex}.trend-name .track-icon svg{width:100%;height:100%}.trend-context{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.08em;font-size:10px}.trend-spark-wrap{width:100%;height:56px;position:relative;overflow:visible}.trend-spark{width:100%;height:100%;display:block;overflow:visible}.trend-spark-dot{pointer-events:none;background-color:currentColor;border-radius:50%;width:6px;height:6px;margin-top:-3px;margin-right:-3px;position:absolute}.heatmap-section{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);padding:var(--fos-space-6);margin-top:var(--fos-space-5);position:relative;overflow:hidden}.heatmap-wrap{scrollbar-width:thin;scrollbar-color:var(--fos-bg-04) transparent;overflow-x:auto}.heatmap-wrap::-webkit-scrollbar{height:6px}.heatmap-wrap::-webkit-scrollbar-track{background:0 0}.heatmap-wrap::-webkit-scrollbar-thumb{background:var(--fos-bg-04);border-radius:3px}.heatmap-wrap::-webkit-scrollbar-thumb:hover{background:var(--fos-border-strong)}.heatmap-months{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.1em;grid-template-columns:32px repeat(52,14px);gap:2px;min-height:14px;margin-bottom:6px;font-size:10px;display:grid}.heatmap-body{grid-template-columns:32px 1fr;gap:4px;display:grid}.heatmap-days{font-family:var(--fos-ff-data);color:var(--fos-text-lo);grid-template-rows:repeat(7,14px);align-items:center;gap:2px;font-size:10px;display:grid}.heatmap-grid{align-items:flex-start;gap:2px;display:flex}.heatmap-col{flex-direction:column;flex-shrink:0;gap:2px;display:flex}.heatmap-cell{background:var(--fos-bg-04);border-radius:3px;width:14px;height:14px;transition:transform .15s}.heatmap-cell:hover{cursor:default;transform:scale(1.2)}.heatmap-cell[data-level="1"]{background:var(--fos-accent-dim)}.heatmap-cell[data-level="2"]{background:var(--fos-accent)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-level="2"]{background:color-mix(in srgb,var(--fos-accent) 12%,transparent)}}.heatmap-cell[data-level="3"]{background:var(--fos-accent-mid)}.heatmap-cell[data-level="4"]{background:var(--fos-accent)}.heatmap-cell[data-track=copper][data-level="1"]{background:var(--fos-color-copper)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=copper][data-level="1"]{background:color-mix(in srgb,var(--fos-color-copper) 25%,transparent)}}.heatmap-cell[data-track=copper][data-level="2"]{background:var(--fos-color-copper)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=copper][data-level="2"]{background:color-mix(in srgb,var(--fos-color-copper) 50%,transparent)}}.heatmap-cell[data-track=copper][data-level="3"]{background:var(--fos-color-copper)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=copper][data-level="3"]{background:color-mix(in srgb,var(--fos-color-copper) 75%,transparent)}}.heatmap-cell[data-track=copper][data-level="4"]{background:var(--fos-color-copper)}.heatmap-cell[data-track=olive][data-level="1"]{background:var(--fos-color-olive)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=olive][data-level="1"]{background:color-mix(in srgb,var(--fos-color-olive) 25%,transparent)}}.heatmap-cell[data-track=olive][data-level="2"]{background:var(--fos-color-olive)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=olive][data-level="2"]{background:color-mix(in srgb,var(--fos-color-olive) 50%,transparent)}}.heatmap-cell[data-track=olive][data-level="3"]{background:var(--fos-color-olive)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=olive][data-level="3"]{background:color-mix(in srgb,var(--fos-color-olive) 75%,transparent)}}.heatmap-cell[data-track=olive][data-level="4"]{background:var(--fos-color-olive)}.heatmap-cell[data-track=sage][data-level="1"]{background:var(--fos-color-sage)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=sage][data-level="1"]{background:color-mix(in srgb,var(--fos-color-sage) 25%,transparent)}}.heatmap-cell[data-track=sage][data-level="2"]{background:var(--fos-color-sage)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=sage][data-level="2"]{background:color-mix(in srgb,var(--fos-color-sage) 50%,transparent)}}.heatmap-cell[data-track=sage][data-level="3"]{background:var(--fos-color-sage)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=sage][data-level="3"]{background:color-mix(in srgb,var(--fos-color-sage) 75%,transparent)}}.heatmap-cell[data-track=sage][data-level="4"]{background:var(--fos-color-sage)}.heatmap-cell[data-track=teal][data-level="1"]{background:var(--fos-color-teal)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=teal][data-level="1"]{background:color-mix(in srgb,var(--fos-color-teal) 25%,transparent)}}.heatmap-cell[data-track=teal][data-level="2"]{background:var(--fos-color-teal)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=teal][data-level="2"]{background:color-mix(in srgb,var(--fos-color-teal) 50%,transparent)}}.heatmap-cell[data-track=teal][data-level="3"]{background:var(--fos-color-teal)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=teal][data-level="3"]{background:color-mix(in srgb,var(--fos-color-teal) 75%,transparent)}}.heatmap-cell[data-track=teal][data-level="4"]{background:var(--fos-color-teal)}.heatmap-cell[data-track=marine][data-level="1"]{background:var(--fos-color-marine)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=marine][data-level="1"]{background:color-mix(in srgb,var(--fos-color-marine) 25%,transparent)}}.heatmap-cell[data-track=marine][data-level="2"]{background:var(--fos-color-marine)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=marine][data-level="2"]{background:color-mix(in srgb,var(--fos-color-marine) 50%,transparent)}}.heatmap-cell[data-track=marine][data-level="3"]{background:var(--fos-color-marine)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=marine][data-level="3"]{background:color-mix(in srgb,var(--fos-color-marine) 75%,transparent)}}.heatmap-cell[data-track=marine][data-level="4"]{background:var(--fos-color-marine)}.heatmap-cell[data-track=mauve][data-level="1"]{background:var(--fos-color-mauve)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=mauve][data-level="1"]{background:color-mix(in srgb,var(--fos-color-mauve) 25%,transparent)}}.heatmap-cell[data-track=mauve][data-level="2"]{background:var(--fos-color-mauve)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=mauve][data-level="2"]{background:color-mix(in srgb,var(--fos-color-mauve) 50%,transparent)}}.heatmap-cell[data-track=mauve][data-level="3"]{background:var(--fos-color-mauve)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=mauve][data-level="3"]{background:color-mix(in srgb,var(--fos-color-mauve) 75%,transparent)}}.heatmap-cell[data-track=mauve][data-level="4"]{background:var(--fos-color-mauve)}.heatmap-cell[data-track=plum][data-level="1"]{background:var(--fos-color-plum)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=plum][data-level="1"]{background:color-mix(in srgb,var(--fos-color-plum) 25%,transparent)}}.heatmap-cell[data-track=plum][data-level="2"]{background:var(--fos-color-plum)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=plum][data-level="2"]{background:color-mix(in srgb,var(--fos-color-plum) 50%,transparent)}}.heatmap-cell[data-track=plum][data-level="3"]{background:var(--fos-color-plum)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=plum][data-level="3"]{background:color-mix(in srgb,var(--fos-color-plum) 75%,transparent)}}.heatmap-cell[data-track=plum][data-level="4"]{background:var(--fos-color-plum)}.heatmap-cell[data-track=sand][data-level="1"]{background:var(--fos-color-sand)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=sand][data-level="1"]{background:color-mix(in srgb,var(--fos-color-sand) 25%,transparent)}}.heatmap-cell[data-track=sand][data-level="2"]{background:var(--fos-color-sand)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=sand][data-level="2"]{background:color-mix(in srgb,var(--fos-color-sand) 50%,transparent)}}.heatmap-cell[data-track=sand][data-level="3"]{background:var(--fos-color-sand)}@supports (color:color-mix(in lab,red,red)){.heatmap-cell[data-track=sand][data-level="3"]{background:color-mix(in srgb,var(--fos-color-sand) 75%,transparent)}}.heatmap-cell[data-track=sand][data-level="4"]{background:var(--fos-color-sand)}.heatmap-legend{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.1em;margin-top:var(--fos-space-4);align-items:center;gap:4px;padding-left:36px;font-size:10px;display:inline-flex}.heatmap-legend .legend-cell{width:12px;height:12px}.heatmap-empty-overlay{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.08em;border-radius:var(--fos-radius-lg);padding:var(--fos-space-6);text-align:center;pointer-events:none;background:#00000008;justify-content:center;align-items:center;font-size:12px;display:flex;position:absolute;inset:0}@media (max-width:639px){.trend-row{grid-template-rows:auto auto;grid-template-columns:72px 1fr}.trend-spark-wrap{grid-column:1/-1;height:40px}}.coach-observations{margin-top:var(--fos-space-6)}.coach-obs-empty{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.08em;padding:var(--fos-space-4) 0;font-size:12px}.coach-obs-list{flex-direction:column}.coach-obs,.coach-obs-list{gap:var(--fos-space-3);display:flex}.coach-obs{padding:var(--fos-space-4) var(--fos-space-5);background:var(--fos-bg-01);border:1px solid var(--fos-border);border-left:2px solid var(--fos-accent);border-radius:0 var(--fos-radius-md) var(--fos-radius-md) 0;max-height:200px;position:relative;overflow:hidden}.coach-obs[data-tag=stall]{border-left-color:var(--fos-warning)}.coach-obs[data-tag=surge]{border-left-color:var(--fos-success)}.coach-obs[data-tag=drift]{border-left-color:var(--fos-danger)}.coach-obs[data-tag=lopsided]{border-left-color:var(--fos-info)}.coach-obs-mark{font-family:var(--fos-ff-fancy);color:var(--fos-accent-mid);-webkit-user-select:none;user-select:none;flex-shrink:0;margin-top:-2px;font-size:28px;line-height:1}.coach-obs-body{flex:1;min-width:0}.coach-obs-text{font-family:var(--fos-ff-fancy);color:var(--fos-text-hi);letter-spacing:-.005em;margin-bottom:6px;font-size:16px;font-style:italic;font-weight:400;line-height:1.4}.coach-obs-meta{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:6px;font-size:10px;display:inline-flex}.coach-obs-track-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.coach-obs-sep{color:var(--fos-text-muted)}.coach-obs-tag[data-tag=stall]{color:var(--fos-warning)}.coach-obs-tag[data-tag=surge]{color:var(--fos-success)}.coach-obs-tag[data-tag=drift]{color:var(--fos-danger)}.coach-obs-tag[data-tag=lopsided]{color:var(--fos-info)}.drift-breakdown{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);padding:var(--fos-space-6);margin-top:var(--fos-space-5)}.drift-reason-tag{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.drift-reason-tag,.drift-reason-tag[data-reason]{background:var(--fos-text-muted)}.insight-card{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);padding:var(--fos-space-6);margin-top:var(--fos-space-5)}.insight-card-head{margin-bottom:var(--fos-space-5);justify-content:space-between;align-items:baseline;display:flex}.insight-card-kicker{color:var(--fos-text-lo);letter-spacing:.14em;font-size:11px}.insight-card-kicker,.insight-card-meta{font-family:var(--fos-ff-data);text-transform:uppercase}.insight-card-meta{color:var(--fos-text-muted);letter-spacing:.1em;font-size:10px}.insight-card-hero{text-align:center;padding:var(--fos-space-5) 0 var(--fos-space-4);border-bottom:1px solid var(--fos-border);margin-bottom:var(--fos-space-5)}.insight-card-quote-mark{font-family:var(--fos-ff-fancy);color:var(--fos-accent-mid);-webkit-user-select:none;user-select:none;margin-bottom:var(--fos-space-2);font-size:36px;line-height:1}.insight-card-headline{font-family:var(--fos-ff-fancy);color:var(--fos-text-hi);letter-spacing:-.01em;max-width:540px;margin:0 auto;font-size:22px;font-style:italic;font-weight:500;line-height:1.3}.insight-card-attr{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.1em;margin-top:var(--fos-space-3);font-size:10px}.insight-card-evidence{gap:var(--fos-space-3);flex-direction:column;display:flex}.insight-evidence-row{gap:var(--fos-space-4);grid-template-columns:140px 1fr 60px;align-items:center;display:grid}.insight-evidence-label{font-family:var(--fos-ff-data);color:var(--fos-text-mid);text-transform:uppercase;letter-spacing:.1em;font-size:11px}.insight-bucket-count{color:var(--fos-text-muted);font-weight:400}.insight-evidence-bar{background:var(--fos-bg-04);border-radius:4px;height:8px;overflow:hidden}.insight-evidence-bar>span{border-radius:4px;height:100%;transition:width .24s ease-out;display:block}.insight-evidence-num{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.01em;text-align:right;font-size:18px;font-weight:700;line-height:1}.insight-evidence-unit{color:var(--fos-text-mid);margin-left:1px;font-size:.6em}.insight-bucket-na{color:var(--fos-text-muted);font-size:.7em}.burnout-radar{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);padding:var(--fos-space-6)}.burnout-flags{gap:var(--fos-space-3);margin-top:var(--fos-space-4)}.burnout-flag,.burnout-flags{flex-direction:column;display:flex}.burnout-flag{gap:var(--fos-space-1);padding:var(--fos-space-3) var(--fos-space-4) var(--fos-space-3) var(--fos-space-5);border-radius:var(--fos-radius-md);border-left:3px solid var(--fos-warning);background:var(--fos-warning-dim)}.burnout-flag-label{font-family:var(--fos-ff-data);letter-spacing:.12em;text-transform:uppercase;color:var(--fos-warning);font-size:10px;font-weight:700}.burnout-flag-text{color:var(--fos-text-hi);font-size:13px;line-height:1.4}.mood-analytics{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);padding:var(--fos-space-6)}.mood-body{margin-top:var(--fos-space-4);position:relative}.mood-pro-gate{z-index:2;justify-content:center;align-items:center;gap:var(--fos-space-2);flex-direction:column;display:flex;position:absolute;inset:0}.mood-pro-badge{background:var(--fos-accent);color:#fff;border-radius:var(--fos-radius-full);font-family:var(--fos-ff-data);letter-spacing:.1em;text-transform:uppercase;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.mood-pro-desc{color:var(--fos-text-mid);margin:0;font-size:13px}.mood-content--blurred{filter:blur(5px);pointer-events:none;-webkit-user-select:none;user-select:none}.mood-segment--energized{background:var(--fos-mood-energized)}.mood-segment--neutral{background:var(--fos-mood-neutral)}.mood-segment--drained{background:var(--fos-mood-drained)}.mood-segment{display:block}.mood-bar{display:flex;overflow:hidden}.mood-bar,.mood-bar--empty{border-radius:var(--fos-radius-full);background:var(--fos-bg-04);height:10px}.mood-overall{gap:var(--fos-space-2);flex-direction:column;display:flex}.mood-section-label{font-family:var(--fos-ff-data);letter-spacing:.12em;text-transform:uppercase;color:var(--fos-text-lo);margin-bottom:var(--fos-space-1);font-size:10px;font-weight:700}.mood-overall-counts{gap:var(--fos-space-4);flex-wrap:wrap;display:flex}.mood-count{font-family:var(--fos-ff-data);font-size:11px}.mood-count--energized{color:var(--fos-mood-energized-text)}.mood-count--neutral{color:var(--fos-mood-neutral-text)}.mood-count--drained{color:var(--fos-mood-drained-text)}.mood-dow{margin-top:var(--fos-space-6)}.mood-dow-chart{align-items:flex-end;gap:var(--fos-space-2);display:flex}.mood-dow-col{align-items:center;gap:var(--fos-space-1);flex-direction:column;flex:1;display:flex}.mood-dow-bar{background:var(--fos-bg-04);border-radius:var(--fos-radius-sm);flex-direction:column;width:100%;height:64px;display:flex;overflow:hidden}.mood-dow-bar[data-empty=true]{opacity:.4;position:relative}.mood-dow-bar[data-empty=true]:after{content:"—";font-size:12px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mood-dow-bar[data-empty=true]:after,.mood-dow-label{color:var(--fos-text-muted);font-family:var(--fos-ff-data)}.mood-dow-label{font-size:10px}.mood-dow-label-abbr{display:none}.mood-dow-label-full{display:inline}.mood-by-track{margin-top:var(--fos-space-6)}.mood-track-row{gap:var(--fos-space-4);padding:var(--fos-space-2) 0;border-bottom:1px solid var(--fos-border);grid-template-columns:minmax(0,140px) 1fr 40px;align-items:center;display:grid}.mood-track-row:last-child{border-bottom:none}.mood-track-name{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:13px;font-weight:500;overflow:hidden}.mood-track-total{font-family:var(--fos-ff-data);color:var(--fos-text-muted);text-align:right;font-size:12px}.mood-empty{color:var(--fos-text-lo);margin:0;font-size:13px;line-height:1.5}@media (max-width:639px){.dist-label{width:120px}.dist-stat{width:56px}.insight-evidence-row{grid-template-columns:100px 1fr 48px}.insight-evidence-num{font-size:14px}.mood-dow-label-full{display:none}.mood-dow-label-abbr{display:inline}.mood-dow-bar{height:48px}.coach-obs{padding:var(--fos-space-3)}.coach-obs-text{font-size:14px}.coach-obs-mark{font-size:20px}.burnout-flag{padding:var(--fos-space-2) var(--fos-space-3)}.burnout-flag-label{font-size:9px}.burnout-flag-text{font-size:13px;line-height:1.45}.heatmap-section:after{content:"";background:linear-gradient(to right,transparent,var(--fos-bg-01));pointer-events:none;border-radius:0 var(--fos-radius-lg) var(--fos-radius-lg) 0;width:40px;position:absolute;top:0;bottom:0;right:0}.statv2-hero{align-items:flex-start;gap:var(--fos-space-2);flex-direction:column}.page-analytics .page-head{flex-direction:row;justify-content:space-between;align-items:center}.page-report .page-head{align-items:flex-start;gap:var(--fos-space-3);flex-direction:column}.page-report .page-head-right{justify-content:space-between;width:100%}}.btn-soft{background:var(--fos-bg-03);border:1px solid var(--fos-border);color:var(--fos-text-mid);border-radius:var(--fos-radius-md);font-family:var(--fos-ff-body);cursor:default;align-items:center;padding:6px 12px;font-size:12px;font-weight:500;text-decoration:none;transition:all .15s;display:inline-flex}.btn-soft:hover{background:var(--fos-bg-04);color:var(--fos-text-hi);border-color:var(--fos-border-strong)}.btn-soft-small{padding:5px 10px;font-size:11px}.btn-primary-small{padding:7px 14px;font-size:12px}.goals-completed-toggle{color:var(--fos-text-lo);font-family:var(--fos-ff-data);text-transform:uppercase;letter-spacing:.14em;cursor:default;background:0 0;border:none;align-items:center;gap:6px;padding:4px 0;font-size:11px;transition:color .15s;display:inline-flex}.goals-completed-toggle:hover{color:var(--fos-text-mid)}.goals-completed-arrow{transition:transform .2s;display:inline-block}.goals-completed-toggle.expanded .goals-completed-arrow{transform:rotate(90deg)}.empty-page-state{text-align:center;border:1px dashed var(--fos-border-strong);border-radius:var(--fos-radius-lg);margin-top:var(--fos-space-8);margin-bottom:var(--fos-space-12);padding:80px 32px}.empty-page-icon{width:56px;height:56px;color:var(--fos-text-lo);margin-bottom:var(--fos-space-4);justify-content:center;align-items:center;display:inline-flex}.empty-page-icon svg{width:100%;height:100%}.empty-page-title{font-family:var(--fos-ff-display);color:var(--fos-text-mid);margin-bottom:var(--fos-space-2);font-size:18px;font-weight:700}.empty-page-body{font-family:var(--fos-ff-body);color:var(--fos-text-lo);max-width:380px;margin:0 auto;font-size:13px;line-height:1.5}.clients-overview{gap:var(--fos-space-4);margin-top:var(--fos-space-5);grid-template-columns:repeat(3,1fr);display:grid}.clients-overview-card{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);padding:var(--fos-space-5)}.clients-overview-label{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.14em;margin-bottom:var(--fos-space-2);font-size:10px}.clients-overview-num{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.025em;font-size:32px;font-weight:800;line-height:1}.clients-overview-unit{color:var(--fos-text-mid);margin-left:2px;font-size:.55em}.clients-overview-foot{font-family:var(--fos-ff-data);color:var(--fos-text-muted);text-transform:uppercase;letter-spacing:.1em;margin-top:6px;font-size:10px}.clients-section{margin-top:var(--fos-space-8)}.clients-list{gap:var(--fos-space-4);flex-direction:column;display:flex}.client-card{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);padding:var(--fos-space-5);cursor:pointer;color:inherit;text-decoration:none;transition:background-color .15s,box-shadow .15s;display:block}.client-card:hover{box-shadow:0 2px 8px #0000000f}.client-card:hover,:root[data-theme=light] .client-card:hover{background:var(--fos-bg-02)}@supports (color:color-mix(in lab,red,red)){:root[data-theme=light] .client-card:hover{background:color-mix(in srgb,var(--fos-bg-02) 95%,var(--fos-text-hi))}}:root[data-theme=light] .client-card:hover{box-shadow:0 2px 8px #14100c14}.client-card:focus-visible{outline:2px solid var(--fos-accent);outline-offset:2px}.client-card-archived{opacity:.7}.client-card-head{align-items:center;gap:var(--fos-space-4);display:flex}.client-avatar{border-radius:var(--fos-radius-md);width:44px;height:44px;font-family:var(--fos-ff-display);color:var(--fos-text-hi);background:var(--fos-bg-03);letter-spacing:.02em;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:inline-flex}.client-card-info{flex:1;min-width:0}.client-name{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.01em;margin:0 0 4px;font-size:17px;font-weight:700}.client-meta{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:6px;font-size:10px;display:inline-flex}.client-status{border-radius:var(--fos-radius-sm);padding:2px 6px;font-weight:600}.client-status.active{color:var(--fos-track-learning);background:#a8c49024}.client-status.paused{color:var(--fos-warning);background:#d4a8501f}.client-status.archived{background:var(--fos-bg-04);color:var(--fos-text-mid)}.client-meta-sep{color:var(--fos-text-muted)}.client-meta-item{white-space:nowrap}.client-meta-item:before{content:"·";color:var(--fos-text-muted);padding:0 5px}.client-card-stats{gap:var(--fos-space-4);padding-top:var(--fos-space-4);margin-top:var(--fos-space-4);border-top:1px solid var(--fos-border);grid-template-columns:repeat(3,1fr);display:grid}.client-stat-label{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.1em;margin-bottom:4px;font-size:10px}.client-stat-num{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.015em;font-size:20px;font-weight:700;line-height:1}.client-projects{margin-top:var(--fos-space-4);flex-wrap:wrap;gap:6px;display:inline-flex}.client-project-pill{background:var(--fos-bg-03);border:1px solid var(--fos-border);border-radius:var(--fos-radius-full);font-family:var(--fos-ff-data);color:var(--fos-text-mid);text-transform:uppercase;letter-spacing:.08em;padding:4px 10px;font-size:10px}.client-coach{gap:var(--fos-space-3);padding:var(--fos-space-3) var(--fos-space-4);margin-top:var(--fos-space-4);background:var(--fos-bg-02);border-left:2px solid var(--fos-warning);border-radius:0 var(--fos-radius-md) var(--fos-radius-md) 0;display:flex}.client-coach .goal-coach-mark{color:#d4a8508c}.clients-archived{gap:var(--fos-space-4);margin-top:var(--fos-space-3);flex-direction:column;display:none}.clients-archived.open{display:flex}.btn-with-icon{align-items:center;gap:6px;display:inline-flex}.btn-with-icon .btn-plus{font-family:var(--fos-ff-data);margin-top:-1px;font-size:16px;font-weight:600;line-height:1}.clients-hero{margin-top:var(--fos-space-5);padding:var(--fos-space-6);background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg)}.clients-hero-head{margin-bottom:var(--fos-space-3);justify-content:space-between;align-items:baseline;display:flex}.clients-hero-total{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.005em;font-size:32px;font-weight:800;line-height:1}.clients-hero-total-unit{color:var(--fos-text-mid);margin-left:1px;font-size:18px;font-weight:500}.clients-hero-bar{border-radius:var(--fos-radius-md);height:56px;margin-bottom:var(--fos-space-4);display:flex;overflow:hidden}.clients-hero-segment{height:100%;color:var(--fos-bg-base);flex-direction:column;justify-content:space-between;min-width:0;padding:10px 14px;display:flex;background:var(--client-color,var(--fos-text-muted))!important}:root[data-theme=light] .clients-hero-segment{color:#fff}.clients-hero-seg-row{align-items:center;gap:6px;min-width:0;display:inline-flex}.clients-hero-seg-name{font-family:var(--fos-ff-body);letter-spacing:-.005em;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.clients-hero-seg-hours{font-family:var(--fos-ff-data);opacity:.88;font-size:11px;font-weight:500}.clients-hero-segment.narrow .clients-hero-seg-name{font-size:11px}.clients-hero-coach{gap:var(--fos-space-3);padding:var(--fos-space-3) var(--fos-space-4);background:var(--fos-bg-02);border-left:2px solid var(--fos-accent);border-radius:0 var(--fos-radius-md) var(--fos-radius-md) 0;display:flex}.clients-hero-coach-mark{color:var(--fos-accent-mid);-webkit-user-select:none;user-select:none;flex-shrink:0;margin-top:-2px;font-family:Fraunces,serif;font-size:24px;line-height:1}.clients-hero-coach-text{color:var(--fos-text-hi);letter-spacing:-.005em;flex:1;font-family:Fraunces,serif;font-size:15px;font-style:italic;font-weight:400;line-height:1.4}.client-card{border-left:4px solid var(--client-color,var(--fos-text-muted));position:relative}.client-card .client-avatar{background:var(--client-color,var(--fos-bg-03));color:var(--fos-bg-base);border:none;font-weight:800}:root[data-theme=light] .client-card .client-avatar{color:#fff}.client-stat-delta{font-family:var(--fos-ff-data);text-transform:uppercase;letter-spacing:.12em;border-radius:var(--fos-radius-sm);margin-top:4px;padding:2px 5px;font-size:9px;font-weight:700;line-height:1;display:inline-block}.client-stat-delta-up{color:var(--fos-track-learning);background:#a8c4901a}:root[data-theme=light] .client-stat-delta-up{background:#5e78481a}.client-stat-delta-down{color:var(--fos-danger);background:#e26a5a1a}:root[data-theme=light] .client-stat-delta-down{background:#b94c3c1a}.clients-overview-delta-up{color:var(--fos-track-learning)}.client-card[data-health=declining]{border-left-color:var(--fos-danger);background:linear-gradient(180deg,#e26a5a0a 0,var(--fos-bg-01) 60%)}:root[data-theme=light] .client-card[data-health=declining]{background:linear-gradient(180deg,#b94c3c0d 0,var(--fos-bg-01) 60%)}.client-status.client-health-pill{color:var(--fos-danger);background:#e26a5a2e;font-weight:700}:root[data-theme=light] .client-status.client-health-pill{background:#b94c3c29}.client-status.declining{color:var(--fos-danger);background:#e26a5a2e;border:1px solid #e26a5a4d;font-weight:700}:root[data-theme=light] .client-status.declining{background:#b94c3c29;border-color:#b94c3c47}.client-card-coach-line{font-family:var(--fos-ff-body);color:var(--fos-text-mid);margin:var(--fos-space-2) 0;padding:var(--fos-space-2) var(--fos-space-3);border-left:2px solid var(--fos-danger);border-radius:var(--fos-radius-sm);background:#e26a5a0f;font-size:12px;font-style:italic}:root[data-theme=light] .client-card-coach-line{background:#b94c3c0d}.client-detail-hero .client-card-coach-line{margin-top:var(--fos-space-3);margin-bottom:0}.client-card-stats{grid-template-columns:repeat(4,1fr)}.client-stat-unit{color:var(--fos-text-mid);margin-left:1px;font-size:.55em;font-weight:600}.client-type-badge{background:var(--fos-bg-03);border:1px solid var(--fos-border);color:var(--fos-text-mid);border-radius:var(--fos-radius-sm);font-family:var(--fos-ff-data);text-transform:uppercase;letter-spacing:.12em;margin-left:4px;padding:2px 6px;font-size:9px;font-weight:700}.page-clients .page-coach{margin-top:var(--fos-space-2);margin-bottom:var(--fos-space-7)}.goal-card-menu-wrap{position:relative}.goal-card-menu{border-radius:var(--fos-radius-md);width:28px;height:28px;color:var(--fos-text-lo);cursor:default;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:background .12s,color .12s;display:inline-flex}.goal-card-menu:hover{background:var(--fos-bg-03);color:var(--fos-text-hi)}.goal-card-menu svg{width:14px;height:14px}@media (max-width:700px){.clients-overview{gap:var(--fos-space-2);grid-template-columns:repeat(3,1fr)}.clients-overview-card{padding:var(--fos-space-3)}.clients-overview-label{font-size:9px}.clients-overview-num{font-size:24px}.client-card-stats{grid-template-columns:repeat(2,1fr)}.client-meta{row-gap:var(--fos-space-1);flex-wrap:wrap;display:flex}.toggle:after{content:"";position:absolute;inset:-12px -8px}}.client-detail-back{font-family:var(--fos-ff-data);text-transform:uppercase;letter-spacing:.1em;color:var(--fos-text-lo);margin-bottom:var(--fos-space-6);align-items:center;gap:4px;font-size:11px;font-weight:600;text-decoration:none;transition:color .12s;display:inline-flex}.client-detail-back:hover{color:var(--fos-text-hi)}.client-detail-back svg{flex-shrink:0;width:14px;height:14px}.client-detail-hero{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-left:4px solid var(--client-color,var(--fos-text-muted));border-radius:var(--fos-radius-lg);padding:var(--fos-space-6);margin-bottom:var(--fos-space-6)}.client-detail-hero-head{align-items:center;gap:var(--fos-space-4);margin-bottom:var(--fos-space-5);display:flex}.client-detail-avatar{border-radius:var(--fos-radius-md);width:52px;height:52px;font-family:var(--fos-ff-display);color:var(--fos-bg-base);background:var(--client-color,var(--fos-bg-03));letter-spacing:.02em;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;font-weight:800;display:inline-flex}:root[data-theme=light] .client-detail-avatar{color:#fff}.client-detail-hero-info{flex:1;min-width:0}.client-detail-name{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.02em;margin:0 0 6px;font-size:22px;font-weight:800}.client-detail-meta{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:8px;font-size:10px;display:inline-flex}.client-detail-stats{gap:var(--fos-space-4);padding-top:var(--fos-space-4);border-top:1px solid var(--fos-border);grid-template-columns:repeat(3,1fr);display:grid}.client-detail-actions{align-items:center;gap:var(--fos-space-3);margin-bottom:var(--fos-space-4);display:flex}.client-detail-projects-section{margin-top:var(--fos-space-2)}.client-detail-projects-grid{gap:var(--fos-space-4);margin-top:var(--fos-space-4);grid-template-columns:repeat(2,1fr);display:grid}.client-detail-archived-wrap{margin-top:var(--fos-space-5)}.client-detail-archived{gap:var(--fos-space-4);margin-top:var(--fos-space-3);flex-direction:column;display:none}.client-detail-archived.open{display:flex}.project-card{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-left:4px solid var(--track-color,var(--fos-text-muted));border-radius:var(--fos-radius-lg);padding:var(--fos-space-5)}.project-card--archived{opacity:.7}.project-card-head{align-items:center;gap:var(--fos-space-3);display:flex}.project-card-track-dot{background:var(--track-color,var(--fos-text-muted));border-radius:50%;flex-shrink:0;width:10px;height:10px}.project-card-info{flex:1;min-width:0}.project-card-name{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:700;overflow:hidden}.project-card-track{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.1em;margin-top:2px;font-size:10px}.project-card-badges{flex-shrink:0;align-items:center;gap:6px;display:flex}.project-card-badge{border-radius:var(--fos-radius-full);font-family:var(--fos-ff-data);text-transform:uppercase;letter-spacing:.1em;padding:2px 7px;font-size:9px;font-weight:700}.project-card-badge--billable{background:var(--fos-accent-dim);color:var(--fos-accent)}.project-card-target{margin-top:var(--fos-space-4)}.project-card-target-bar{background:var(--fos-bg-03);border-radius:var(--fos-radius-full);height:6px;margin-bottom:6px;overflow:hidden}.project-card-target-fill{background:var(--fos-accent);border-radius:var(--fos-radius-full);height:100%;transition:width .3s}.project-card-target-fill--overscope{background:var(--fos-danger)}.project-card-target-label{font-family:var(--fos-ff-data);color:var(--fos-text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:10px}.project-card-stats{gap:var(--fos-space-4);padding-top:var(--fos-space-4);margin-top:var(--fos-space-4);border-top:1px solid var(--fos-border);grid-template-columns:repeat(3,1fr);display:grid}.project-card-stat-label{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.1em;margin-bottom:4px;font-size:10px}.project-card-stat-num{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.015em;font-size:18px;font-weight:700;line-height:1}.project-card-stat-unit{color:var(--fos-text-mid);margin-left:1px;font-size:.55em;font-weight:600}.project-sheet-track-readonly{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);font-family:var(--fos-ff-body);color:var(--fos-text-mid);align-items:center;gap:8px;width:100%;padding:8px 12px;font-size:14px;display:inline-flex}.project-sheet-track-dot{background:var(--track-color,var(--fos-text-muted));border-radius:50%;flex-shrink:0;width:10px;height:10px}@media (max-width:700px){.client-detail-stats,.project-card-stats{grid-template-columns:repeat(2,1fr)}.client-detail-actions{flex-wrap:wrap}.client-detail-projects-grid{grid-template-columns:1fr}}.confirm-modal-backdrop{z-index:300;padding:var(--fos-space-4);background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}:root[data-theme=light] .confirm-modal-backdrop{background:#14100c59}.confirm-modal{background:var(--fos-bg-base);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);width:100%;max-width:400px;box-shadow:var(--fos-shadow-modal);overflow:hidden}.confirm-modal-body{padding:var(--fos-space-5) var(--fos-space-6) var(--fos-space-4)}.template-edit-modal .confirm-modal-body{gap:var(--fos-space-5);flex-direction:column;display:flex}.confirm-modal-title{font-family:var(--fos-ff-display);color:var(--fos-text-hi);margin:0 0 var(--fos-space-2);letter-spacing:-.01em;font-size:16px;font-weight:700}.confirm-modal-text{color:var(--fos-text-mid);margin:0;font-size:13px;line-height:1.5}.confirm-modal-actions{justify-content:flex-end;gap:var(--fos-space-2);padding:var(--fos-space-3) var(--fos-space-6) var(--fos-space-5);border-top:1px solid var(--fos-border);display:flex}.btn-danger{background:var(--fos-danger);color:#fff}.btn-danger:hover:not(:disabled){opacity:.9}.distraction-backdrop{z-index:1100;padding-bottom:env(safe-area-inset-bottom,0);background:#00000073;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.distraction-picker{background:var(--fos-bg-02);border:1px solid var(--fos-border-strong);border-radius:var(--fos-radius-lg) var(--fos-radius-lg) 0 0;width:100%;max-width:380px;padding:var(--fos-space-4) var(--fos-space-4) var(--fos-space-3);gap:var(--fos-space-3);flex-direction:column;display:flex}.distraction-picker-label{font-family:var(--fos-ff-body);color:var(--fos-text-mid);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:12px}.distraction-picker-grid{gap:var(--fos-space-2);grid-template-columns:1fr 1fr;display:grid}.distraction-chip{background:var(--fos-bg-03);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);font-family:var(--fos-ff-body);color:var(--fos-text-hi);cursor:pointer;text-align:left;padding:10px 12px;font-size:14px;transition:background .15s,border-color .15s,transform .1s}.distraction-chip:hover{background:var(--fos-bg-04,var(--fos-bg-03));border-color:var(--fos-border-strong)}.distraction-chip:active{transform:scale(.97)}.distraction-dismiss{font-family:var(--fos-ff-body);color:var(--fos-text-lo);cursor:pointer;background:0 0;border:none;align-self:center;padding:4px 8px;font-size:13px;transition:color .15s}.distraction-dismiss:hover{color:var(--fos-text-mid)}.distraction-text-modal{background:var(--fos-bg-02);border:1px solid var(--fos-border-strong);border-radius:var(--fos-radius-lg) var(--fos-radius-lg) 0 0;width:100%;max-width:380px;padding:var(--fos-space-4) var(--fos-space-4) var(--fos-space-3);gap:var(--fos-space-3);flex-direction:column;display:flex}.distraction-text-type{font-family:var(--fos-ff-body);color:var(--fos-text-mid);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:12px}.distraction-textarea{box-sizing:border-box;background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-sm);width:100%;color:var(--fos-text-hi);font-family:var(--fos-ff-body);padding:var(--fos-space-2) var(--fos-space-3);resize:none;outline:none;font-size:14px;line-height:1.5;transition:border-color .15s}.distraction-textarea:focus{border-color:var(--fos-border-strong)}.distraction-textarea::placeholder{color:var(--fos-text-lo)}.distraction-text-foot{justify-content:space-between;align-items:center;gap:var(--fos-space-2);display:flex}.distraction-char-count{font-family:var(--fos-ff-data);color:var(--fos-text-lo);font-variant-numeric:tabular-nums;font-size:11px}.distraction-text-actions{gap:var(--fos-space-2);display:flex}.distraction-skip-btn{border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);font-family:var(--fos-ff-body);color:var(--fos-text-mid);cursor:pointer;background:0 0;padding:6px 14px;font-size:13px;transition:background .15s}.distraction-skip-btn:hover{background:var(--fos-bg-03)}.distraction-save-btn{background:var(--fos-accent);border:1px solid var(--fos-accent);border-radius:var(--fos-radius-md);font-family:var(--fos-ff-body);color:#fff;cursor:pointer;padding:6px 14px;font-size:13px;font-weight:600;transition:opacity .15s}.distraction-save-btn:hover:not(:disabled){opacity:.9}.distraction-save-btn:disabled{opacity:.4;cursor:default}.distractions-page{padding:var(--fos-space-6) var(--fos-space-5);max-width:720px;margin:0 auto}.distractions-header{margin-bottom:var(--fos-space-2)}.distractions-subtitle{color:var(--fos-text-mid);margin:0 0 var(--fos-space-6) 0;font-size:14px;font-style:italic}.distractions-tabs{gap:var(--fos-space-2);border-bottom:1px solid var(--fos-border);margin-bottom:var(--fos-space-5);display:flex}.distractions-tab{font-family:var(--fos-ff-body);color:var(--fos-text-lo);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 18px;font-size:14px;font-weight:500;transition:color .12s,border-color .12s;position:relative}.distractions-tab:hover{color:var(--fos-text-mid)}.distractions-tab--active{color:var(--fos-text-hi);border-bottom-color:var(--fos-accent);font-weight:600}.distractions-content-card{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);overflow:hidden}.distractions-filters{gap:var(--fos-space-2);padding:var(--fos-space-4) var(--fos-space-5);border-bottom:1px solid var(--fos-border);flex-wrap:wrap;display:flex}.distractions-empty{text-align:center;padding:var(--fos-space-10) var(--fos-space-5);color:var(--fos-text-mid);max-width:480px;margin:0 auto;font-size:14px;font-style:italic;line-height:1.5}.distractions-list{gap:var(--fos-space-6);padding:var(--fos-space-5);flex-direction:column;display:flex}.distractions-group{gap:var(--fos-space-2);flex-direction:column;display:flex}.distractions-group-title{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.1em;margin:0 0 var(--fos-space-2) 0;font-size:11px;font-weight:700}.distraction-row{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);padding:var(--fos-space-3) var(--fos-space-4);cursor:pointer;transition:background .15s,box-shadow .15s}.distraction-row:hover{box-shadow:0 1px 4px #0000000a}.distraction-row--expanded,.distraction-row:hover{background:var(--fos-bg-02)}.distraction-row-main{align-items:center;gap:var(--fos-space-3);display:flex}.distraction-row-context{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.distraction-block-name{font-family:var(--fos-ff-display);color:var(--fos-text-hi);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.distraction-track-name{text-transform:uppercase;letter-spacing:.08em;font-size:10px}.distraction-time,.distraction-track-name{font-family:var(--fos-ff-data);color:var(--fos-text-lo)}.distraction-time{flex-shrink:0;font-size:11px}.distraction-delete-btn{color:var(--fos-text-lo);border-radius:var(--fos-radius-sm);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:18px;transition:background .15s,color .15s;display:inline-flex}.distraction-delete-btn:hover{background:var(--fos-bg-03);color:var(--fos-danger)}.distraction-type-chip{border-radius:var(--fos-radius-sm);font-family:var(--fos-ff-data);letter-spacing:.12em;text-transform:uppercase;color:var(--fos-danger);background:#e26a5a1a;border:1px solid #e26a5a33;flex-shrink:0;align-items:center;padding:3px 8px;font-size:9px;font-weight:700;display:inline-flex}.distraction-text{color:var(--fos-text-mid);margin:var(--fos-space-2) 0 0 0;padding-left:72px;font-size:13px;line-height:1.5}.distraction-text--clamp{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.distraction-expanded-meta{gap:var(--fos-space-3);margin-top:var(--fos-space-3);padding:var(--fos-space-2) 0;border-top:1px solid var(--fos-border);font-family:var(--fos-ff-data);color:var(--fos-text-lo);flex-wrap:wrap;padding-left:72px;font-size:11px;display:flex}.analytics-distractions-footer{margin-top:var(--fos-space-8);padding-top:var(--fos-space-6);border-top:1px solid var(--fos-border)}.analytics-distractions-link{font-family:var(--fos-ff-body);color:var(--fos-accent);align-items:center;gap:4px;font-size:13px;text-decoration:none;display:inline-flex}.analytics-distractions-link:hover{text-decoration:underline}.ideas-list{gap:var(--fos-space-4);flex-direction:column;display:flex}.ideas-track-card{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);padding:var(--fos-space-5)}.ideas-group-title{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.1em;margin:0 0 var(--fos-space-3) 0;font-size:11px;font-weight:700}.idea-row{align-items:flex-start;gap:var(--fos-space-3);padding:var(--fos-space-3) 0;border-bottom:1px solid var(--fos-border);display:flex}.idea-row:last-child{border-bottom:none;padding-bottom:0}.idea-row-main{flex:1;min-width:0}.idea-text{color:var(--fos-text-hi);margin:0 0 var(--fos-space-1) 0;font-size:14px;line-height:1.5}.idea-row-meta{gap:var(--fos-space-3);align-items:center;display:flex}.idea-block-name{color:var(--fos-text-mid);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.idea-date{font-family:var(--fos-ff-data);color:var(--fos-text-lo);flex-shrink:0;font-size:11px}@media (max-width:700px){.distractions-page{padding:var(--fos-space-4) var(--fos-space-3)}.distraction-row-main{flex-wrap:wrap}.distraction-row-context{order:3;width:100%}.distraction-expanded-meta,.distraction-text{padding-left:0}}.block-card-recurring-icon{margin-left:var(--fos-space-2);color:var(--fos-text-muted);vertical-align:middle;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:11px;display:inline-block}.sheet-repeat-fields{gap:var(--fos-space-3);margin-top:var(--fos-space-3);padding:var(--fos-space-3);background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);flex-direction:column;display:flex}.sheet-pills--sm .sheet-pill{padding:4px 10px;font-size:12px}.sheet-dow-pills{gap:var(--fos-space-2);flex-wrap:wrap;display:flex}.sheet-dow-pill{background:var(--fos-bg-02);border:1px solid var(--fos-border);width:36px;height:36px;font-family:var(--fos-ff-data);color:var(--fos-text-mid);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:600;transition:all .12s;display:inline-flex}.sheet-dow-pill:hover{border-color:var(--fos-border-strong);color:var(--fos-text-hi)}.sheet-dow-pill--selected{background:var(--fos-accent)}@supports (color:color-mix(in lab,red,red)){.sheet-dow-pill--selected{background:color-mix(in srgb,var(--fos-accent) 15%,transparent)}}.sheet-dow-pill--selected{border-color:var(--fos-accent);color:var(--fos-accent)}.sheet-repeat-end{gap:var(--fos-space-2);flex-direction:column;display:flex}.sheet-btn--sm{padding:7px 14px;font-size:13px}.sheet-recurring-info{gap:var(--fos-space-2);flex-direction:column;display:flex}.sheet-recurring-summary{font-family:var(--fos-ff-body);color:var(--fos-text-hi);font-size:13px}.sheet-recurring-actions{gap:var(--fos-space-3);align-items:center;display:flex}.btn-link--muted{color:var(--fos-text-muted)}.btn-link--muted:hover{color:var(--fos-text-mid)}.recurring-delete-options{gap:var(--fos-space-2);margin:var(--fos-space-3) 0;flex-direction:column;display:flex}.recurring-delete-option{text-align:left;background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);padding:var(--fos-space-3) var(--fos-space-4);cursor:pointer;flex-direction:column;gap:2px;transition:border-color .12s;display:flex}.recurring-delete-option:hover{border-color:var(--fos-border-strong)}.recurring-delete-option--danger{border-color:var(--fos-danger)}@supports (color:color-mix(in lab,red,red)){.recurring-delete-option--danger{border-color:color-mix(in srgb,var(--fos-danger) 30%,transparent)}}.recurring-delete-option--danger:hover{border-color:var(--fos-danger)}.recurring-delete-option-label{font-family:var(--fos-ff-body);color:var(--fos-text-hi);font-size:14px;font-weight:600}.recurring-delete-option--danger .recurring-delete-option-label{color:var(--fos-danger)}.recurring-delete-option-hint{font-family:var(--fos-ff-body);color:var(--fos-text-muted);font-size:12px}.btn-block{justify-content:center;width:100%}.carry-over-modal .confirm-modal-body{padding-bottom:var(--fos-space-3)}.carry-over-actions{gap:var(--fos-space-3);padding:0 var(--fos-space-5) var(--fos-space-5);flex-direction:column;display:flex}.carry-over-divider{align-items:center;gap:var(--fos-space-3);color:var(--fos-text-lo);font-size:12px;display:flex}.carry-over-divider:after,.carry-over-divider:before{content:"";background:var(--fos-border);flex:1;height:1px}.carry-over-cancel{color:var(--fos-text-lo);align-self:center;font-size:13px}.carry-over-cancel:hover{color:var(--fos-text-mid)}.carry-challenge-block-name{margin-top:var(--fos-space-2);color:var(--fos-text-lo);font-style:italic}.carry-challenge-options{padding:0 var(--fos-space-5) var(--fos-space-2);margin:0}.block-carry-error{color:var(--fos-danger);margin:var(--fos-space-1) var(--fos-space-4) 0;font-size:12px}.confirm-modal-cancel{color:var(--fos-text-lo);font-family:var(--fos-ff-body);cursor:pointer;padding:var(--fos-space-1) var(--fos-space-2);border-radius:var(--fos-radius-sm);background:0 0;border:none;font-size:13px;transition:color .12s,background .12s}.confirm-modal-cancel:hover{color:var(--fos-text-mid);background:var(--fos-bg-hover-subtle)}.sheet-template-shortcut{border-bottom:1px solid var(--fos-border);margin-bottom:var(--fos-space-4);padding-bottom:var(--fos-space-3)}.sheet-template-header{align-items:center;gap:var(--fos-space-2);width:100%;padding:var(--fos-space-1) 0;cursor:pointer;font-family:var(--fos-ff-body);letter-spacing:.06em;text-transform:uppercase;color:var(--fos-text-lo);text-align:left;background:0 0;border:none;font-size:12px;font-weight:600;display:flex}.sheet-template-header:hover{color:var(--fos-text-mid)}.sheet-template-chevron{width:14px;height:14px;margin-left:auto;transition:transform .16s}.sheet-template-chevron--open{transform:rotate(180deg)}.sheet-template-list{margin-top:var(--fos-space-2);flex-direction:column;gap:2px;max-height:280px;display:flex;overflow-y:auto}.sheet-template-row{align-items:center;gap:var(--fos-space-2);border-radius:var(--fos-radius-sm);width:100%;padding:var(--fos-space-2) var(--fos-space-2);cursor:pointer;text-align:left;font-family:var(--fos-ff-body);background:0 0;border:none;transition:background .12s;display:flex}.sheet-template-row:hover{background:var(--fos-bg-hover-subtle)}.sheet-template-swatch{background:var(--fos-text-lo);border-radius:50%;flex-shrink:0;width:10px;height:10px}.sheet-template-row-name{color:var(--fos-text-hi);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:14px;overflow:hidden}.sheet-template-row-meta{color:var(--fos-text-lo);flex-shrink:0;font-size:12px}.bd-overflow{flex-shrink:0;position:relative}.bd-overflow-btn{border-radius:var(--fos-radius-sm);cursor:pointer;color:var(--fos-text-lo);background:0 0;border:none;padding:2px 6px;font-size:14px;line-height:1;transition:color .12s,background .12s}.bd-overflow-btn:hover{color:var(--fos-text-mid);background:var(--fos-bg-hover-subtle)}.bd-overflow-menu{background:var(--fos-bg-02);border:1px solid var(--fos-border-strong);border-radius:var(--fos-radius-md);box-shadow:var(--fos-shadow-fab);z-index:60;min-width:160px;padding:0;position:absolute;top:calc(100% + 4px);right:0;overflow:hidden}.bd-overflow-item{width:100%;padding:var(--fos-space-2) var(--fos-space-3);font-family:var(--fos-ff-body);color:var(--fos-text-hi);text-align:left;cursor:pointer;background:0 0;border:none;font-size:13px;transition:background .1s;display:block}.bd-overflow-item:hover{background:var(--fos-bg-hover-subtle)}.settings-profile{max-width:640px;padding:var(--fos-space-6) var(--fos-space-5);margin:0 auto}.settings-page-header{margin-bottom:var(--fos-space-6)}.settings-page-header h1{font-size:var(--fos-text-2xl);color:var(--fos-text-hi);margin:0;font-weight:700}.templates-section{border-top:1px solid var(--fos-border);padding-top:var(--fos-space-4)}.templates-section-toggle{align-items:center;gap:var(--fos-space-2);width:100%;padding:var(--fos-space-2) 0;cursor:pointer;text-align:left;font-family:var(--fos-ff-body);background:0 0;border:none;display:flex}.templates-section-title{color:var(--fos-text-hi);font-size:15px;font-weight:600}.templates-section-count{color:var(--fos-text-lo);font-size:13px}.templates-section-chevron{width:16px;height:16px;color:var(--fos-text-lo);margin-left:auto;transition:transform .16s}.templates-section-chevron--open{transform:rotate(180deg)}.templates-section-body{margin-top:var(--fos-space-3)}.templates-empty{color:var(--fos-text-lo);padding:var(--fos-space-2) 0;margin:0;font-size:13px}.template-list{gap:var(--fos-space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.template-row{align-items:center;gap:var(--fos-space-3);padding:var(--fos-space-2) 0;border-bottom:1px solid var(--fos-border);display:flex}.template-row:last-child{border-bottom:none}.template-row-swatch{background:var(--fos-text-lo);border-radius:50%;flex-shrink:0;width:10px;height:10px}.template-row-name{color:var(--fos-text-hi);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:14px;font-weight:500;overflow:hidden}.template-row-meta{color:var(--fos-text-lo);flex-shrink:0;font-size:12px}.template-row-actions{gap:var(--fos-space-2);flex-shrink:0;display:flex}.template-edit-modal{width:min(480px,100vw - 2rem);max-height:90vh;overflow-y:auto}.push-perm-card{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);box-shadow:var(--fos-shadow-card);align-items:flex-start;gap:14px;max-width:560px;padding:20px 24px;display:flex}.push-perm-icon{background:var(--fos-accent-dim);width:28px;height:28px;color:var(--fos-accent-hi);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.push-perm-icon svg{width:14px;height:14px}.push-perm-icon-info{background:var(--fos-bg-04);color:var(--fos-text-mid)}.push-perm-icon-success{background:var(--fos-accent-dim);color:var(--fos-accent-hi)}.push-perm-icon-warn{background:var(--fos-warning-dim);color:var(--fos-warning)}.push-perm-body{flex:1;min-width:0}.push-perm-title{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.01em;margin-bottom:6px;font-size:16px;font-weight:700}.push-perm-text{line-height:1.45}.push-perm-steps,.push-perm-text{font-family:var(--fos-ff-body);color:var(--fos-text-mid);font-size:13.5px}.push-perm-steps{margin:10px 0 0;padding-left:20px;line-height:1.5}.push-perm-steps li{margin-bottom:4px}.push-perm-steps svg{vertical-align:middle;width:14px;height:14px;margin:0 2px;display:inline-block}.push-perm-actions{justify-content:flex-end;gap:12px;margin-top:16px;display:flex}.push-perm-btn-primary{background:var(--fos-accent);color:#fff;border-radius:var(--fos-radius-md);font-family:var(--fos-ff-body);cursor:pointer;border:none;padding:8px 16px;font-size:13px;font-weight:500;transition:opacity .15s}.push-perm-btn-primary:hover{opacity:.9}.push-perm-btn-secondary{border:1px solid var(--fos-border);color:var(--fos-text-mid);border-radius:var(--fos-radius-md);font-family:var(--fos-ff-body);cursor:pointer;background:0 0;padding:8px 16px;font-size:13px;font-weight:500;transition:color .15s,border-color .15s}.push-perm-btn-secondary:hover{color:var(--fos-text-hi);border-color:var(--fos-border-strong)}.settings-row{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);padding:var(--fos-space-5)}.settings-row-toggle{justify-content:space-between;align-items:center;gap:var(--fos-space-4);display:flex}.settings-row-block{gap:var(--fos-space-4);flex-direction:column;display:flex}.settings-row-text{flex:1;min-width:0}.settings-row-title{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.005em;margin-bottom:4px;font-size:15px;font-weight:700;line-height:1.3}.settings-row-sub{font-family:var(--fos-ff-body);color:var(--fos-text-mid);font-size:13px;line-height:1.5}.settings-toggle{cursor:pointer;flex-shrink:0;display:inline-block;position:relative}.settings-toggle input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute}.settings-toggle-track{background:var(--fos-bg-04);border-radius:12px;width:44px;height:24px;transition:background .18s;display:block;position:relative}.settings-toggle-thumb{background:var(--fos-bg-01);border-radius:50%;width:18px;height:18px;transition:transform .18s cubic-bezier(.16,1,.3,1);position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #0003}.settings-toggle input:checked+.settings-toggle-track{background:var(--fos-track-learning)}.settings-toggle input:checked+.settings-toggle-track .settings-toggle-thumb{transform:translate(20px)}.settings-section{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);padding:var(--fos-space-5) var(--fos-space-6)}.settings-section-head{justify-content:space-between;align-items:flex-start;gap:var(--fos-space-5);margin-bottom:var(--fos-space-4);display:flex}.settings-section-head-text{flex:1;min-width:0}.settings-section-title{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.015em;margin:0 0 4px;font-size:20px;font-weight:800;line-height:1.2}.settings-section-sub{font-family:var(--fos-ff-body);color:var(--fos-text-mid);max-width:540px;margin:0;font-size:13px;line-height:1.5}.notif-bell,.notif-wrap{position:relative}.notif-bell{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);width:36px;height:36px;color:var(--fos-text-mid);cursor:default;justify-content:center;align-items:center;padding:0;transition:all .18s cubic-bezier(.34,1.56,.64,1);display:inline-flex}.notif-bell svg{width:16px;height:16px}.notif-bell:hover{color:var(--fos-text-hi);border-color:var(--fos-border-strong);background:var(--fos-bg-02);transform:translateY(-1px)}.notif-bell:active{transform:translateY(0)scale(.96)}.notif-bell.has-unread svg{color:var(--fos-accent)}.notif-badge{background:var(--fos-accent);color:#fff;min-width:16px;height:16px;font-family:var(--fos-ff-data);box-shadow:0 0 0 2px var(--fos-bg-base);border-radius:8px;justify-content:center;align-items:center;padding:0 4px;font-size:10px;font-weight:700;line-height:1;transition:transform .22s cubic-bezier(.34,1.56,.64,1);display:inline-flex;position:absolute;top:-3px;right:-3px}.notif-badge.empty{display:none}.notif-tray{background:var(--fos-bg-02);border-left:1px solid var(--fos-border);z-index:50;pointer-events:none;flex-direction:column;width:400px;max-width:100vw;transition:transform .32s cubic-bezier(.32,.72,0,1);display:flex;position:fixed;top:0;bottom:0;right:0;overflow:hidden;transform:translate(100%);box-shadow:-16px 0 40px #00000059,-4px 0 12px #0003}:root[data-theme=light] .notif-tray{border-left-color:var(--fos-border-strong);box-shadow:-16px 0 40px #14100c1a,-4px 0 12px #14100c0d}.notif-tray.open{pointer-events:auto;transform:translate(0)}.notif-backdrop{z-index:49;opacity:0;pointer-events:none;background:#0006;transition:opacity .22s;position:fixed;inset:0}:root[data-theme=light] .notif-backdrop{background:#14100c33}.notif-backdrop.open{opacity:1;pointer-events:auto}.notif-tray-head{border-bottom:1px solid var(--fos-border);justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.notif-tray-title{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.01em;font-size:18px;font-weight:700}.notif-tray-clear{font-family:var(--fos-ff-data);color:var(--fos-text-lo);cursor:default;text-transform:uppercase;letter-spacing:.08em;background:0 0;border:none;padding:4px 0;font-size:11px;transition:color .15s}.notif-tray-clear:hover{color:var(--fos-accent-hi)}.notif-list{flex:1;padding:10px 12px;overflow-y:auto}.notif-item{border-radius:var(--fos-radius-md);max-height:200px;color:inherit;align-items:flex-start;gap:10px;margin-bottom:2px;padding:12px;text-decoration:none;transition:background .15s,opacity .22s,transform .22s,max-height .32s,padding .22s,margin .22s;display:flex;overflow:hidden}.notif-item:hover{background:var(--fos-bg-03)}.notif-item.dismissing{opacity:0;max-height:0;margin-bottom:0;padding-top:0;padding-bottom:0;transform:translate(20px)}.notif-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;margin-top:2px;display:inline-flex}.notif-icon svg{width:14px;height:14px}.notif-accent{background:var(--fos-accent-dim);color:var(--fos-accent-hi)}.notif-coach{background:var(--fos-bg-04);color:var(--fos-text-mid)}.notif-warn{background:var(--fos-warning-dim);color:var(--fos-warning)}.notif-body{flex:1;min-width:0}.notif-text{font-family:var(--fos-ff-body);color:var(--fos-text-hi);letter-spacing:-.005em;margin-bottom:4px;font-size:13.5px;font-weight:500;line-height:1.45}.notif-meta{font-family:var(--fos-ff-data);color:var(--fos-text-lo);text-transform:uppercase;letter-spacing:.08em;font-size:10px}.notif-time{text-transform:lowercase;letter-spacing:0}.notif-dismiss,.notif-time{color:var(--fos-text-muted)}.notif-dismiss{border-radius:var(--fos-radius-sm);cursor:default;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:18px;line-height:1;transition:color .15s,background .15s;display:inline-flex}.notif-dismiss:hover{color:var(--fos-text-hi);background:var(--fos-bg-04)}.notif-tray-foot{border-top:1px solid var(--fos-border);text-align:center;background:var(--fos-bg-01);padding:12px 20px}.notif-tray-settings{color:var(--fos-text-mid);font-family:var(--fos-ff-body);cursor:default;border-radius:var(--fos-radius-sm);background:0 0;border:none;padding:6px 12px;font-size:12px;text-decoration:none;transition:color .15s,background .15s;display:inline-block}.notif-tray-settings:hover{color:var(--fos-text-hi);background:var(--fos-bg-03)}.notif-empty{text-align:center;color:var(--fos-text-mid);padding:32px 24px;font-family:Fraunces,serif;font-size:14px;font-style:italic}.notif-tray-actions{align-items:center;gap:12px;display:flex}.notif-tray-close{color:var(--fos-text-mid);border-radius:var(--fos-radius-sm);cursor:default;background:0 0;border:none;justify-content:center;align-items:center;width:28px;height:28px;padding:0;transition:color .15s,background .15s;display:inline-flex}.notif-tray-close svg{width:14px;height:14px}.notif-tray-close:hover{color:var(--fos-text-hi);background:var(--fos-bg-04)}.notif-badge-pulse{background:var(--fos-accent);color:#fff;min-width:16px;height:16px;font-family:var(--fos-ff-data);box-shadow:0 0 0 2px var(--fos-bg-base);border-radius:8px;justify-content:center;align-items:center;padding:0 4px;font-size:10px;font-weight:700;line-height:1;animation:notifBadgePulse .38s cubic-bezier(.34,1.56,.64,1);display:inline-flex;position:absolute;top:-3px;right:-3px}@keyframes notifBadgePulse{0%{opacity:0;transform:scale(0)}60%{opacity:1;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}.public-profile-page{background:var(--fos-bg-base);min-height:100dvh;color:var(--fos-text-hi);padding:var(--fos-space-8) var(--fos-space-5);flex-direction:column;align-items:center;display:flex}.public-profile-header{gap:var(--fos-space-6);width:100%;max-width:720px;margin-bottom:var(--fos-space-8);flex-direction:column;display:flex}.public-profile-brand{align-items:center;gap:var(--fos-space-2);color:var(--fos-text-hi);width:fit-content;text-decoration:none;display:inline-flex}.public-profile-identity{gap:var(--fos-space-1);flex-direction:column;display:flex}.public-profile-name{font-family:var(--fos-ff-display);color:var(--fos-text-hi);margin:0;font-size:32px;font-weight:800;line-height:1.1}.public-profile-handle{font-family:var(--fos-ff-data);color:var(--fos-text-lo);letter-spacing:.04em;margin:0;font-size:13px}.public-profile-main{gap:var(--fos-space-6);flex-direction:column;width:100%;max-width:720px;display:flex}.public-profile-stats{gap:var(--fos-space-4);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.public-profile-stat-card{min-height:unset}.public-profile-section{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);padding:var(--fos-space-5);gap:var(--fos-space-4);flex-direction:column;display:flex}.public-profile-empty{font-family:var(--fos-ff-body);color:var(--fos-text-lo);margin:0;font-size:13px}.public-profile-goal-list,.public-profile-track-list{gap:var(--fos-space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.public-profile-goal-row,.public-profile-track-row{align-items:center;gap:var(--fos-space-3);display:flex}.public-profile-swatch{border-radius:2px;flex-shrink:0;width:10px;height:10px}.public-profile-goal-name,.public-profile-track-name{font-family:var(--fos-ff-body);color:var(--fos-text-hi);flex:1;font-size:14px}.public-profile-goal-percent,.public-profile-track-hours{font-family:var(--fos-ff-data);color:var(--fos-text-mid);font-variant-numeric:tabular-nums;font-size:13px}.public-profile-footer{width:100%;max-width:720px;margin-top:var(--fos-space-10);padding-top:var(--fos-space-6);border-top:1px solid var(--fos-border);justify-content:center;display:flex}.public-profile-cta{font-family:var(--fos-ff-body);color:var(--fos-accent);font-size:14px;text-decoration:none;transition:opacity .15s}.public-profile-cta:hover{opacity:.75}@media (max-width:640px){.public-profile-stats{grid-template-columns:1fr}.public-profile-name{font-size:26px}}.settings-intro{font-family:var(--fos-ff-body);color:var(--fos-text-mid);margin-bottom:20px;font-size:13.5px;line-height:1.5}.settings-field{flex-direction:column;gap:6px;margin-bottom:20px;display:flex}.settings-label{font-family:var(--fos-ff-body);letter-spacing:.04em;text-transform:uppercase;color:var(--fos-text-mid);font-size:12px;font-weight:600}.settings-input{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);width:100%;font-family:var(--fos-ff-body);color:var(--fos-text-hi);box-sizing:border-box;outline:none;padding:8px 12px;font-size:14px;transition:border-color .15s}.settings-input:focus{border-color:var(--fos-accent)}.settings-input-mono{font-family:var(--fos-ff-mono);color:var(--fos-text-mid);font-size:13px}.settings-help{font-family:var(--fos-ff-body);color:var(--fos-text-lo);margin:0;font-size:12px;line-height:1.4}.settings-field-group,.settings-section-title-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.settings-section-title-row{margin-bottom:16px}.settings-section-state-pill{font-family:var(--fos-ff-body);letter-spacing:.04em;text-transform:uppercase;background:var(--fos-bg-03);color:var(--fos-text-lo);border-radius:100px;padding:2px 8px;font-size:11px;font-weight:600}.settings-section-state-pill[data-state=on]{color:var(--fos-track-learning);background:#5e784824}.settings-toggle-large{cursor:pointer;flex-shrink:0;display:inline-block;position:relative}.settings-toggle-large input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute}.settings-toggle-large .settings-toggle-track{border-radius:14px;width:52px;height:28px}.settings-toggle-large .settings-toggle-thumb{width:22px;height:22px;top:3px;left:3px}.settings-toggle-large input:checked+.settings-toggle-track{background:var(--fos-track-learning)}.settings-toggle-large input:checked+.settings-toggle-track .settings-toggle-thumb{transform:translate(24px)}.settings-url-action{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding:10px 12px;display:flex}.settings-url-action-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.settings-url-action-buttons{flex-shrink:0;align-items:center;gap:6px;display:flex}.settings-url-btn{font-family:var(--fos-ff-body);border-radius:var(--fos-radius-sm);border:1px solid var(--fos-border);background:var(--fos-bg-03);color:var(--fos-text-mid);cursor:pointer;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.settings-url-btn:hover{background:var(--fos-bg-hover-subtle);color:var(--fos-text-hi)}.settings-url-btn svg{flex-shrink:0}.settings-url-btn--view{color:var(--fos-accent);border-color:var(--fos-accent);background:0 0}.settings-url-btn--view:hover{background:rgba(var(--fos-accent-rgb,0 0 0)/.06)}.settings-url-btn:disabled,.settings-url-btn[aria-disabled=true]{opacity:.4;pointer-events:none;cursor:default}.settings-visibility-grid{grid-template-columns:1fr;display:grid}.settings-check-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.settings-check-item{border-radius:var(--fos-radius-sm);transition:background .15s}.settings-check-item:hover{background:var(--fos-bg-hover-subtle)}.settings-check-item label{cursor:pointer;align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.settings-check-item:has(input:not(:checked)) .settings-check-name{opacity:.45}.settings-check-item:has(input:disabled){opacity:.4;pointer-events:none}.settings-check-box{border:1.5px solid var(--fos-border);background:var(--fos-bg-02);cursor:pointer;appearance:none;border-radius:4px;justify-content:center;align-items:center;width:18px;min-width:18px;height:18px;margin-top:1px;transition:background .15s,border-color .15s;display:inline-flex;position:relative}.settings-check-box:checked{background:var(--fos-track-learning);border-color:var(--fos-track-learning)}.settings-check-box:checked:after{content:"";border:2px solid #fff;border-top:none;border-left:none;width:6px;height:9px;position:absolute;top:1px;left:4px;transform:rotate(45deg)}.light .settings-check-box{border-color:var(--fos-border);background:var(--fos-bg-01)}.settings-check-text{flex-direction:column;gap:1px;display:flex}.settings-check-name{font-family:var(--fos-ff-body);color:var(--fos-text-hi);font-size:14px;transition:opacity .15s}.settings-check-meta{font-family:var(--fos-ff-body);color:var(--fos-text-lo);font-size:12px;line-height:1.4}.settings-section[data-state=off] .settings-check-list,.settings-section[data-state=off] .settings-url-action{opacity:.45;pointer-events:none}.shc-card{background:var(--fos-bg-01);width:1200px;height:630px;color:var(--fos-text-hi);box-sizing:border-box;flex-direction:column;padding:40px 48px;overflow:hidden}.shc-card,.shc-header{justify-content:space-between;display:flex}.shc-header{align-items:center}.shc-identity{flex-direction:column;gap:2px;display:flex}.shc-name{font-family:var(--fos-ff-display);color:var(--fos-text-hi);font-size:20px;font-weight:700}.shc-handle{font-family:var(--fos-ff-data);color:var(--fos-text-lo);font-size:13px}.shc-brand{color:var(--fos-text-mid);align-items:center;gap:8px;display:flex}.shc-wordmark{font-family:var(--fos-ff-display);letter-spacing:-.01em;font-size:15px;font-weight:600}.shc-stat{align-items:baseline;gap:10px;display:flex}.shc-stat-value{font-family:var(--fos-ff-data);color:var(--fos-text-hi);font-size:64px;font-weight:800;line-height:1}.shc-stat-label{font-family:var(--fos-ff-body);color:var(--fos-text-mid);font-size:18px}.shc-heatmap{flex-shrink:0}.shc-heatmap .heatmap-wrap{width:max-content;overflow:visible}.shc-heatmap .heatmap-empty-overlay{display:none}.shc-footer{justify-content:space-between;align-items:center;display:flex}.shc-range{color:var(--fos-text-lo)}.shc-range,.shc-watermark{font-family:var(--fos-ff-data);font-size:13px}.shc-watermark{color:var(--fos-text-muted);letter-spacing:.02em}.shc-weekly{justify-content:space-between}.shc-weekly-body{flex-direction:column;flex:1;justify-content:center;gap:18px;padding:0;display:flex}.shc-weekly-bar-row{align-items:center;gap:24px;display:flex}.shc-weekly-bar{flex:1;min-width:0}.shc-weekly .hero-bar{overflow:hidden}.shc-weekly-total{flex-shrink:0;align-items:baseline;gap:4px;display:flex}.shc-weekly-total-value{font-family:var(--fos-ff-data);color:var(--fos-text-hi);font-size:48px;font-weight:800;line-height:1}.shc-weekly-total-unit{font-family:var(--fos-ff-body);color:var(--fos-text-mid);font-size:20px}.shc-weekly-sessions{flex-direction:column;gap:6px;display:flex}.shc-weekly-session-row{align-items:center;gap:8px;display:flex}.shc-weekly-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.shc-weekly-session-icon{color:var(--fos-text-lo);flex-shrink:0;align-items:center;display:inline-flex}.shc-weekly-session-label{font-family:var(--fos-ff-body);color:var(--fos-text-mid);align-items:center;gap:6px;font-size:14px;display:flex}.shc-weekly-session-cog{text-transform:capitalize;color:var(--fos-text-hi);font-weight:500}.shc-weekly-session-sep{color:var(--fos-text-lo)}.shc-weekly-session-track{color:var(--fos-text-mid)}.shc-weekly-session-dur{font-family:var(--fos-ff-data);color:var(--fos-text-lo);font-size:13px}.shc-weekly-stats{gap:32px;display:flex}.shc-weekly-stat{align-items:baseline;gap:8px;display:flex}.shc-weekly-stat-value{font-family:var(--fos-ff-data);color:var(--fos-text-hi);font-size:28px;font-weight:700;line-height:1}.shc-weekly-stat-label{font-family:var(--fos-ff-body);color:var(--fos-text-lo);font-size:13px}.shc-weekly-coach{border-top:1px solid var(--fos-border);align-items:baseline;gap:12px;padding-top:4px;display:flex}.shc-weekly-coach-quote{font-family:var(--fos-ff-body);color:var(--fos-text-mid);flex:1;font-size:14px;font-style:italic;line-height:1.4}.shc-weekly-coach-attr{font-family:var(--fos-ff-data);color:var(--fos-text-lo);flex-shrink:0;font-size:11px}.shc-drift{justify-content:space-between}.shc-drift-body{flex-direction:column;flex:1;justify-content:center;gap:20px;display:flex}.shc-drift-hero{align-items:baseline;gap:16px;display:flex}.shc-drift-rate{font-family:var(--fos-ff-data);color:var(--fos-accent);font-size:80px;font-weight:800;line-height:1}.shc-drift-rate--none{color:var(--fos-text-lo)}.shc-drift-rate-label{font-family:var(--fos-ff-body);color:var(--fos-text-mid);font-size:18px}.shc-drift-stats{gap:32px;display:flex}.shc-drift-stat{align-items:baseline;gap:8px;display:flex}.shc-drift-stat-value{font-family:var(--fos-ff-data);color:var(--fos-text-hi);font-size:28px;font-weight:700;line-height:1}.shc-drift-stat-label{font-family:var(--fos-ff-body);color:var(--fos-text-lo);font-size:13px}.shc-drift-observation{background:var(--fos-bg-03);border-radius:var(--fos-radius-md);border-left:3px solid var(--fos-accent);align-items:baseline;gap:12px;padding:12px 16px;display:flex}.shc-drift-obs-quote{font-family:var(--fos-ff-body);color:var(--fos-text-mid);flex:1;font-size:14px;font-style:italic;line-height:1.4}.shc-drift-obs-attr{font-family:var(--fos-ff-data);color:var(--fos-text-lo);flex-shrink:0;font-size:11px}.shc-drift-tagline{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.01em;font-size:22px;font-weight:700}.shc-goal{justify-content:space-between}.shc-goal-body{flex-direction:column;flex:1;justify-content:center;gap:16px;padding:0;display:flex}.shc-goal-meta{align-items:center;gap:8px;display:flex}.shc-goal-track-icon{flex-shrink:0;align-items:center;display:inline-flex}.shc-goal-track-name{font-family:var(--fos-ff-body);color:var(--fos-text-mid);font-size:14px;font-weight:500}.shc-goal-name{font-family:var(--fos-ff-display);color:var(--fos-text-hi);letter-spacing:-.02em;margin:0;font-size:32px;font-weight:800;line-height:1.1}.shc-goal-progress{flex-direction:column;gap:10px;display:flex}.shc-goal-progress-bar-wrap{background:var(--fos-bg-03);border-radius:4px;height:8px;overflow:hidden}.shc-goal-progress-bar-fill{border-radius:4px;height:100%;transition:width .3s}.shc-goal-progress-stats{gap:28px;display:flex}.shc-goal-progress-stat{flex-direction:column;gap:1px;display:flex}.shc-goal-progress-val{font-family:var(--fos-ff-data);color:var(--fos-text-hi);font-size:22px;font-weight:700;line-height:1.1}.shc-goal-progress-sub{font-family:var(--fos-ff-body);color:var(--fos-text-lo);font-size:12px}.shc-goal-heatmap{flex-wrap:wrap;gap:3px;display:flex}.shc-goal .heatmap-cell:hover{transform:none}.shc-goal-coach{flex-direction:column;gap:3px;margin-top:4px;display:flex}.shc-goal-coach-quote{font-family:var(--fos-ff-body);color:var(--fos-text-mid);font-size:14px;font-style:italic;line-height:1.4}.shc-goal-coach-attr{font-family:var(--fos-ff-data);color:var(--fos-text-lo);letter-spacing:.04em;text-transform:uppercase;font-size:11px}.share-goal{font-family:var(--fos-ff-body);color:var(--fos-text-mid);background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);cursor:pointer;align-items:center;gap:6px;padding:4px 10px 4px 7px;font-size:12px;font-weight:500;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.share-goal:hover{background:var(--fos-bg-03);color:var(--fos-text-hi);border-color:var(--fos-border-mid)}.share-goal-icon{align-items:center;display:inline-flex}.share-goal-icon svg{width:12px;height:12px}.shc-year{justify-content:space-between}.shc-year-stats{border-bottom:1px solid var(--fos-border);align-items:flex-end;gap:48px;padding-bottom:14px;display:flex}.shc-year-stat{flex-direction:column;flex-shrink:0;gap:4px;display:flex}.shc-year-stat-value{font-family:var(--fos-ff-data);color:var(--fos-text-hi);font-size:44px;font-weight:800;line-height:1}.shc-year-track-name{font-size:32px;font-weight:700;line-height:1}.shc-year-stat-label{font-family:var(--fos-ff-body);color:var(--fos-text-mid);white-space:nowrap;font-size:13px}.shc-year-coach{flex-direction:column;gap:3px;display:flex}.shc-year-coach-quote{font-family:var(--fos-ff-body);color:var(--fos-text-mid);font-size:15px;font-style:italic;line-height:1.4}.shc-year-coach-attr{font-family:var(--fos-ff-data);color:var(--fos-text-lo);letter-spacing:.04em;text-transform:uppercase;font-size:11px}.shc-year .heatmap-cell:hover{transform:none}.share-modal-controls-inner{flex-direction:column;gap:12px;display:flex}.share-card-toggle{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-md);gap:4px;width:fit-content;padding:3px;display:flex}.share-card-toggle-btn{font-family:var(--fos-ff-body);color:var(--fos-text-lo);border-radius:calc(var(--fos-radius-md) - 2px);cursor:pointer;background:0 0;border:none;padding:5px 14px;font-size:13px;font-weight:500;transition:background .15s,color .15s}.share-card-toggle-btn.active{background:var(--fos-bg-03);color:var(--fos-text-hi)}.share-card-toggle-btn:hover:not(.active){color:var(--fos-text-mid)}.share-pro-badge{font-family:var(--fos-ff-data);letter-spacing:.04em;text-transform:uppercase;color:var(--fos-accent);background:#c144541f;border-radius:4px;margin-left:4px;padding:2px 5px;font-size:10px;font-weight:700}.share-modal-backdrop{z-index:300;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.share-modal{background:var(--fos-bg-02);border:1px solid var(--fos-border);border-radius:var(--fos-radius-xl);box-shadow:var(--fos-shadow-modal);flex-direction:column;gap:20px;max-width:90vw;padding:24px;display:flex}.share-modal-preview{border-radius:var(--fos-radius-lg);border:1px solid var(--fos-border);overflow:hidden}.share-scale-outer{position:relative;overflow:hidden}.share-modal-controls{flex-direction:column;gap:12px;display:flex}.share-modal-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.share-anon-toggle{font-family:var(--fos-ff-body);color:var(--fos-text-mid);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:14px;display:flex}.share-modal-status{font-family:var(--fos-ff-body);color:var(--fos-text-lo);text-align:center;font-size:13px}.weekly-preview-page{justify-content:flex-start;min-height:100%;padding:40px 24px 64px}.weekly-preview-card,.weekly-preview-page{flex-direction:column;align-items:center;display:flex}.weekly-preview-card{gap:28px;width:100%;max-width:900px}.weekly-preview-img{border:1px solid var(--fos-border);border-radius:12px;width:100%;height:auto;display:block}.weekly-preview-actions{flex-direction:column;align-items:center;gap:16px;display:flex}.weekly-preview-share-btn{font-family:var(--fos-ff-body);color:var(--fos-bg-01);background:var(--fos-text-hi);cursor:pointer;border:none;border-radius:8px;padding:12px 28px;font-size:15px;font-weight:600;transition:opacity .15s}.weekly-preview-share-btn:disabled{opacity:.5;cursor:not-allowed}.weekly-preview-share-btn:hover:not(:disabled){opacity:.85}.weekly-preview-error{font-family:var(--fos-ff-body);color:var(--fos-accent);font-size:13px}.weekly-preview-dismiss{font-family:var(--fos-ff-mono);color:var(--fos-text-lo);border-bottom:1px solid #0000;padding:4px 0;font-size:13px;text-decoration:none;transition:border-color .15s}.weekly-preview-dismiss:hover{border-color:var(--fos-text-lo)}.pricing-page{background:var(--fos-bg-base);min-height:100dvh;color:var(--fos-text-hi);padding:var(--fos-space-12) var(--fos-space-5) var(--fos-space-16);flex-direction:column;align-items:center;display:flex}.pricing-back{top:var(--fos-space-4);left:var(--fos-space-5);color:var(--fos-text-lo);align-items:center;gap:var(--fos-space-1);padding:5px var(--fos-space-2);border-radius:var(--fos-radius-md);z-index:10;font-size:13px;font-weight:500;line-height:1;text-decoration:none;transition:color .14s,background .14s;display:inline-flex;position:fixed}.pricing-back:hover{color:var(--fos-text-mid);background:var(--fos-bg-02)}.pricing-hero{text-align:center;width:100%;max-width:600px;margin-bottom:var(--fos-space-10)}.pricing-hero-heading{font-family:var(--fos-ff-display);color:var(--fos-text-hi);margin-bottom:var(--fos-space-4);font-size:clamp(24px,5vw,38px);font-weight:800;line-height:1.1}.pricing-hero-sub{color:var(--fos-text-mid);font-size:16px;line-height:1.6}.pricing-toggle{background:var(--fos-bg-03);margin-bottom:var(--fos-space-8);gap:2px;padding:3px;display:flex}.pricing-toggle,.pricing-toggle-btn{border-radius:var(--fos-radius-full);align-items:center}.pricing-toggle-btn{font-family:var(--fos-ff-body);cursor:pointer;color:var(--fos-text-lo);white-space:nowrap;gap:var(--fos-space-1);background:0 0;border:none;padding:6px 16px;font-size:13px;font-weight:600;transition:background .14s,color .14s,box-shadow .14s;display:inline-flex}.pricing-toggle-btn[data-active=true]{background:var(--fos-bg-02);color:var(--fos-text-hi);box-shadow:var(--fos-shadow-card)}.pricing-toggle-save{color:var(--fos-success);font-size:11px;font-weight:700}.pricing-cards{gap:var(--fos-space-5);width:100%;max-width:800px;margin-bottom:var(--fos-space-10);grid-template-columns:1fr 1fr;display:grid}@media (max-width:620px){.pricing-page{padding-top:max(var(--fos-space-5),env(safe-area-inset-top) + var(--fos-space-4))}.pricing-back{min-height:44px;padding:0 var(--fos-space-3);margin-bottom:var(--fos-space-6);align-self:flex-start;font-size:14px;position:static}.pricing-cards{grid-template-columns:1fr}}.pricing-card{background:var(--fos-bg-01);border:1px solid var(--fos-border);border-radius:var(--fos-radius-xl);padding:var(--fos-space-6);gap:var(--fos-space-4);box-shadow:var(--fos-shadow-card);flex-direction:column;display:flex}.pricing-card--pro{border-color:var(--fos-accent);background:var(--fos-bg-02)}.pricing-card-header{gap:var(--fos-space-1);flex-direction:column;display:flex}.pricing-card-badge{letter-spacing:.07em;text-transform:uppercase;color:var(--fos-accent);background:var(--fos-accent-dim);border-radius:var(--fos-radius-full);width:fit-content;margin-bottom:var(--fos-space-1);align-items:center;padding:3px 9px;font-size:10px;font-weight:700;display:inline-flex}.pricing-card-tier{font-family:var(--fos-ff-display);color:var(--fos-text-hi);margin:0;font-size:20px;font-weight:800}.pricing-card-tier--pro{color:var(--fos-accent)}.pricing-card-price{font-family:var(--fos-ff-display);color:var(--fos-text-hi);margin:var(--fos-space-1) 0 0;font-size:30px;font-weight:800;line-height:1.15}.pricing-card-price-note{color:var(--fos-text-mid);margin:0;font-size:13px;line-height:1.4}.pricing-card-description{color:var(--fos-text-mid);font-size:15px}.pricing-card-divider{border:none;border-top:1px solid var(--fos-border);margin:0}.pricing-card-bullets{gap:var(--fos-space-3);flex-direction:column;flex:1;margin:0;padding:0;list-style:none;display:flex}.pricing-card-bullet{align-items:flex-start;gap:var(--fos-space-2);color:var(--fos-text-mid);font-size:15px;line-height:1.55;display:flex}.pricing-card-bullet-check{color:var(--fos-success);flex-shrink:0;font-size:15px;line-height:1.55}.pricing-card-footnote{color:var(--fos-text-lo);font-size:13px;line-height:1.5}.pricing-card-founding-note{color:var(--fos-text-mid);background:var(--fos-accent-dim);border-radius:var(--fos-radius-md);padding:var(--fos-space-3);font-size:13px;line-height:1.6}.pricing-card-cta{padding-top:var(--fos-space-2);margin-top:auto}.pricing-cta-current{text-align:center;color:var(--fos-text-muted);cursor:default;-webkit-user-select:none;user-select:none;padding:9px 0;font-size:13px;font-weight:600;display:block}.pricing-cta-upgrade{width:100%;font-family:var(--fos-ff-body);background:var(--fos-accent);color:#fff;border-radius:var(--fos-radius-md);cursor:pointer;text-align:center;border:none;padding:10px 20px;font-size:14px;font-weight:700;transition:background .14s;display:block}.pricing-cta-upgrade:hover{background:var(--fos-accent-hi)}.pricing-cta-upgrade:disabled,.pricing-cta-upgrade[aria-busy=true]{cursor:default;opacity:.7}.pricing-cta-upgrade:disabled:hover,.pricing-cta-upgrade[aria-busy=true]:hover{background:var(--fos-accent)}.pricing-cta-error{margin-top:var(--fos-space-2);color:var(--fos-text-mid);text-align:center;font-size:13px}.pricing-table-section{gap:var(--fos-space-4);flex-direction:column;width:100%;max-width:800px;display:flex}.pricing-table-heading{font-family:var(--fos-ff-display);color:var(--fos-text-hi);font-size:18px;font-weight:700}.pricing-table-wrap{-webkit-overflow-scrolling:touch;border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);overflow-x:auto}.pricing-table{border-collapse:collapse;width:100%;min-width:480px;font-size:13px}.pricing-table th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--fos-text-lo);padding:var(--fos-space-3) var(--fos-space-4);border-bottom:1px solid var(--fos-border-strong);background:var(--fos-bg-03);font-size:11px;font-weight:700}.pricing-table th:not(:first-child){text-align:center;min-width:80px}.pricing-table-pro-header{color:var(--fos-accent)}.pricing-table td{padding:var(--fos-space-3) var(--fos-space-4);color:var(--fos-text-mid);border-bottom:1px solid var(--fos-border);vertical-align:middle}.pricing-table td:not(:first-child){text-align:center;font-weight:600}.pricing-table tr:last-child td{border-bottom:none}.pricing-table-check{color:var(--fos-success);font-size:14px}.pricing-table-check--pro{color:var(--fos-accent)}.pricing-table-dash{color:var(--fos-text-muted)}@media (max-width:620px){.pricing-table-wrap{overflow-x:visible}.pricing-table{min-width:0;display:block}.pricing-table thead{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;position:absolute;overflow:hidden}.pricing-table tbody{display:block}.pricing-table tr{border:1px solid var(--fos-border);border-radius:var(--fos-radius-lg);padding:var(--fos-space-3) var(--fos-space-4);margin-bottom:var(--fos-space-2);display:block;overflow:hidden}.pricing-table tr:last-child{margin-bottom:0}.pricing-table td:first-child{letter-spacing:.05em;text-transform:uppercase;color:var(--fos-text-lo);padding:0 0 var(--fos-space-2) 0;border-bottom:1px solid var(--fos-border);margin-bottom:var(--fos-space-2);text-align:left;font-size:11px;font-weight:700;display:block}.pricing-table td:nth-child(2),.pricing-table td:nth-child(3){vertical-align:top;border-bottom:none;flex-direction:column;align-items:flex-start;gap:2px;width:50%;padding:0;font-size:14px;font-weight:600;display:inline-flex}.pricing-table td:nth-child(2):before{content:"Free";color:var(--fos-text-lo)}.pricing-table td:nth-child(2):before,.pricing-table td:nth-child(3):before{letter-spacing:.05em;text-transform:uppercase;font-size:10px;font-weight:700}.pricing-table td:nth-child(3):before{content:"Pro";color:var(--fos-accent)}}@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-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-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}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}