@layer reset;@layer tokens{:root{color-scheme:dark;--ink-950:#05070c;--ink-900:#0f131c;--ink-880:#181e2b;--ink-800:#232b3b;--ink-700:#232b3b;--ink-600:#2e3849;--ink-500:#34b2a7;--ink-400:#58d0b8;--ink-ink:#0b1517;--mist-050:#f4fafa;--mist-300:#a8b3c7;--mist-500:#8391a8;--red-500:#ff5a5f;--red-400:#ff8b8e;--green-400:#0fec89;--amber-400:#e8b45a;--rose-400:#ee8ba0;--lime-400:#a3c97f;--volt-400:#bff34a;--coral-400:#f0906f;--space-1:2px;--space-2:4px;--space-3:8px;--space-4:12px;--space-5:16px;--space-6:20px;--space-7:24px;--space-8:32px;--space-9:48px;--color-app-bg:var(--ink-950);--color-surface:var(--ink-900);--color-surface-2:var(--ink-800);--color-surface-3:var(--color-surface-2);--color-surface-4:var(--ink-880);--color-text:var(--mist-050);--color-text-strong:var(--color-text);--color-text-muted:var(--mist-300);--color-text-subtle:var(--color-text-muted);--color-border:var(--ink-700);--color-border-strong:var(--ink-600);--color-border-2:var(--color-border);--color-accent:var(--ink-500);--color-accent-hover:var(--ink-400);--color-accent-ink:var(--color-accent);--color-accent-on:var(--ink-ink);--color-accent-tint:#34b2a724;--color-accent-border:#34b2a761;--color-danger:var(--red-500);--color-danger-on:var(--color-app-bg);--color-alert:var(--color-danger);--color-alert-strong:var(--red-400);--color-alert-tint-border:#ff5a5f61;--color-alert-tint-bg:#ff5a5f1f;--color-alert-tint-text:#ff8b8e;--color-success:var(--green-400);--color-success-tint:#0fec8921;--color-success-border:#0fec8959;--color-cal:var(--amber-400);--color-pro:var(--rose-400);--color-fib:var(--lime-400);--color-warm:var(--coral-400);--color-cal-tint:#e8b45a21;--color-pro-tint:#ee8ba021;--color-fib-tint:#a3c97f21;--color-warm-tint:#f0906f21;--color-warn:var(--color-cal);--color-warn-tint:var(--color-cal-tint);--color-data-fill:var(--volt-400);--color-data-track:#a8b3c724;--color-success-band:#0fec8947;--color-scrim:#05070c73;--color-grey-500:var(--mist-500);--color-grey-450:var(--mist-500);--color-grey-400:var(--color-text-muted);--color-grey-300:var(--color-border-strong);--color-grey-200:var(--color-border);--type-title:26px;--type-title-2:20px;--type-headline:17px;--type-body:16px;--type-subheadline:15px;--type-footnote:13px;--radius-xs:4px;--radius-sm:8px;--radius-md:10px;--radius-lg:16px;--radius-surface:16px;--radius-pill:999px;--elevation-1:0 1px 2px #0000004d;--elevation-2:0 2px 6px #00000059;--elevation-3:0 4px 14px #0006;--elevation-4:0 8px 22px #00000059;--elevation-5:0 20px 48px #00000080;--elevation-card:none;--content-max:1160px;--btn-font-size:16px;--control-font-size:16px;--control-min:44px}:root[data-theme=member-light]{color-scheme:light;--ink-950:#f2f6f6;--ink-900:#fff;--ink-880:#f7fafa;--ink-800:#e7efef;--ink-700:#d3e0e0;--ink-600:#b4c7c7;--ink-500:#0b6b64;--ink-400:#0a5d56;--ink-ink:#fff;--mist-050:#10282c;--mist-300:#42606a;--mist-500:#566d73;--red-500:#b42318;--red-400:#912018;--green-400:#046c40;--amber-400:#7f5305;--rose-400:#9d3049;--lime-400:#436614;--volt-400:#6aa30a;--coral-400:#9a411b;--color-accent-tint:#0b6b641a;--color-accent-border:#0b6b6457;--color-danger-on:#fff;--color-alert-tint-border:#b423184d;--color-alert-tint-bg:#b4231814;--color-alert-tint-text:#912018;--color-success-tint:#046c401a;--color-success-border:#046c4052;--color-cal-tint:#7f53051f;--color-pro-tint:#9d30491f;--color-fib-tint:#4366141f;--color-warm-tint:#9a411b1f;--color-data-track:#42606a24;--color-success-band:#046c4047;--color-scrim:#10202466;--elevation-1:0 1px 2px #1020240f;--elevation-2:0 2px 6px #10202414;--elevation-3:0 4px 14px #1020241a;--elevation-4:0 8px 22px #1020241a;--elevation-5:0 20px 48px #1020242e;--elevation-card:0 1px 2px #1020240d}:root[data-theme=funnel]{color-scheme:light;--color-accent:#175cd3;--color-accent-hover:#1449a8;--color-accent-ink:#0b3a8a;--color-accent-tint:#eaf1fd;--color-accent-border:#c7dbf5;--color-accent-on:#fff;--color-danger-on:#fff;--color-text-strong:#101828;--color-text:#1d2939;--color-text-muted:#475467;--color-text-subtle:#667085;--color-app-bg:#f4f6f9;--color-surface:#fff;--color-surface-2:#f2f4f7;--color-surface-3:#eaecf0;--color-surface-4:#f9fafb;--color-border:#e4e7ec;--color-border-strong:#d0d5dd;--color-border-2:#eaecf0;--color-success:#067647;--color-success-tint:#ecfdf3;--color-success-border:#a6f4c5;--color-warn:#b54708;--color-warn-tint:#fffaeb;--color-alert:#b42318;--color-alert-strong:#912018;--color-alert-tint-border:#fecdca;--color-alert-tint-bg:#fef3f2;--color-alert-tint-text:#912018;--color-scrim:#10182873;--color-grey-500:#767676;--color-grey-450:#757575;--color-grey-400:#98a2b3;--color-grey-300:#b8b8b8;--color-grey-200:#e2e2e2;--radius-lg:20px;--elevation-1:0 1px 2px #1018280f;--elevation-2:0 1px 3px #1018281a, 0 1px 2px #1018280f;--elevation-3:0 4px 12px #10182814;--elevation-4:0 12px 28px #1018281f;--elevation-5:0 20px 48px #1018282e;--elevation-card:0 1px 2px #1018280f, 0 1px 3px #1018280a;--content-max:640px;--btn-font-size:15px;--control-font-size:16px}}@layer base{:where(input)::-webkit-datetime-edit,:where(input)::-webkit-datetime-edit-fields-wrapper,:where(input)::-webkit-datetime-edit-year-field,:where(input)::-webkit-datetime-edit-month-field,:where(input)::-webkit-datetime-edit-week-field,:where(input)::-webkit-datetime-edit-day-field,:where(input)::-webkit-datetime-edit-hour-field,:where(input)::-webkit-datetime-edit-minute-field,:where(input)::-webkit-datetime-edit-second-field,:where(input)::-webkit-datetime-edit-millisecond-field,:where(input)::-webkit-datetime-edit-meridiem-field,:where(input)::-webkit-datetime-edit-ampm-field,:where(input)::-webkit-calendar-picker-indicator{margin-block:0;padding-block:0}:where(select:not([multiple],[size])){min-block-size:calc(1lh + 2 * var(--field-padding-block) + 2px)}}@layer layout,components,utilities;:root{--bg:var(--color-app-bg);--sur:var(--color-surface);--sur2:var(--color-surface-2);--txt:var(--color-text);--mut:var(--color-text-muted);--bd:var(--color-border);--bd2:var(--color-border-strong);--acc:var(--color-accent);--acc2:var(--color-accent-hover);--accTxt:var(--color-accent-on);--accSoft:var(--color-accent-tint);--danger:var(--color-danger);--ok:var(--color-success);--cal:var(--color-cal);--pro:var(--color-pro);--fib:var(--color-fib);--warm:var(--color-warm);--calBg:var(--color-cal-tint);--proBg:var(--color-pro-tint);--fibBg:var(--color-fib-tint);--warmBg:var(--color-warm-tint);--accent:var(--color-accent);--accent-hover:var(--color-accent-hover);--accent-ink:var(--color-accent-ink);--accent-tint:var(--color-accent-tint);--accent-border:var(--color-accent-border);--accent-contrast:var(--color-accent-on);--danger-contrast:var(--color-danger-on);--ink:var(--color-text-strong);--text:var(--color-text);--text-secondary:var(--color-text-muted);--muted:var(--color-text-subtle);--app-bg:var(--color-app-bg);--surface:var(--color-surface);--surface-2:var(--color-surface-2);--surface-3:var(--color-surface-3);--surface-4:var(--color-surface-4);--border:var(--color-border);--border-strong:var(--color-border-strong);--border-2:var(--color-border-2);--success:var(--color-success);--success-tint:var(--color-success-tint);--success-border:var(--color-success-border);--warn:var(--color-warn);--warn-tint:var(--color-warn-tint);--alert:var(--color-alert);--alert-strong:var(--color-alert-strong);--alert-tint-border:var(--color-alert-tint-border);--alert-tint-bg:var(--color-alert-tint-bg);--alert-tint-text:var(--color-alert-tint-text);--scrim:var(--color-scrim);--radius:var(--radius-sm);--radius-btn:var(--radius-md);--radius-input:var(--radius-md);--radius-list:var(--radius-md);--radius-card:var(--radius-surface);--shadow-1:var(--elevation-1);--shadow-2:var(--elevation-2);--shadow-3:var(--elevation-3);--shadow-4:var(--elevation-4);--shadow-5:var(--elevation-5);--shadow-card:var(--elevation-card);--grey-500:var(--color-grey-500);--grey-450:var(--color-grey-450);--grey-400:var(--color-grey-400);--grey-300:var(--color-grey-300);--grey-200:var(--color-grey-200);--font-sans:var(--font-figtree,Figtree), system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:var(--font-plex-mono,"IBM Plex Mono"), ui-monospace, SFMono-Regular, Menlo, monospace;--font-mono-nums:var(--font-mono)}@keyframes fadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes toastIn{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html,body{background:var(--app-bg);min-height:100%;margin:0;padding:0}*{box-sizing:border-box}body{color:var(--text);font-family:var(--font-sans);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:16px;line-height:1.5}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover);text-underline-offset:2px;text-decoration:underline}button{cursor:pointer;font-family:inherit}:focus-visible{outline:2px solid var(--accent-hover);outline-offset:2px}@media (width<=1020px){[data-cols]{grid-template-columns:1fr!important}}.home .card,.goals-day .card{padding:var(--space-5)}.page{gap:var(--space-5);flex-direction:column;display:flex}.page-head{margin-bottom:var(--space-1)}.page-head h1{font-size:var(--type-title);letter-spacing:-.02em;color:var(--ink);margin:0;font-weight:800;line-height:1.2}.page-head .sub{margin:var(--space-3) 0 0;font-size:var(--type-subheadline);color:var(--muted)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:var(--space-6)}.eyebrow{font-size:var(--type-headline);color:var(--text);margin:0 0 var(--space-4);font-weight:600}.empty{font-size:var(--type-subheadline);color:var(--muted);margin:0;line-height:1.5}.hint{margin:var(--space-4) 0 0;font-size:var(--type-subheadline);color:var(--muted);line-height:1.5}.bar{border-radius:var(--radius-pill);background:var(--color-data-track);height:8px;overflow:hidden}.bar-fill{background:var(--color-data-fill);border-radius:var(--radius-pill);height:100%;transition:width .4s;display:block}.btn{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-btn);font-size:var(--btn-font-size);white-space:nowrap;border:1px solid #0000;padding:12px 20px;font-weight:700;line-height:1.2;text-decoration:none;transition:background .14s,border-color .14s,color .14s;display:inline-flex}.btn:hover{text-decoration:none}.btn.primary{background:var(--accent);color:var(--accent-contrast)}.btn.primary:hover{background:var(--accent-hover);color:var(--accent-contrast)}.btn.secondary{color:var(--ink);border:1.5px solid var(--border-strong);background:0 0}.btn.secondary:hover{background:var(--surface-2);color:var(--ink)}.btn.danger{background:var(--alert);color:var(--danger-contrast)}.btn.danger:hover{background:var(--alert-strong);color:var(--danger-contrast)}.btn.block{width:100%}.btn[disabled],.btn.is-disabled{background:var(--surface-2);color:var(--muted);box-shadow:none;pointer-events:none;border-color:#0000}.btn.primary[disabled],.btn.primary.is-disabled{background:var(--accent-tint)}input,textarea,select{color:var(--ink);font-family:inherit;font-size:max(16px,1em)}input::placeholder,textarea::placeholder{color:var(--muted)}.control{width:100%;font-size:var(--control-font-size);border:1.5px solid var(--border-strong);border-radius:var(--radius-input);background:var(--surface);color:var(--ink);padding:12px 14px;transition:border-color .14s,box-shadow .14s}.control:focus,.control:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint);outline:none}.pill{align-items:center;gap:var(--space-2);border-radius:var(--radius-pill);background:var(--surface-2);color:var(--muted);white-space:nowrap;padding:3px 10px;font-size:12px;font-weight:700;display:inline-flex}.log-pill{background:var(--accSoft);color:var(--acc);border-radius:var(--radius-btn);min-height:var(--control-min);white-space:nowrap;border:none;justify-content:center;align-items:center;padding:11px 18px;font-size:15px;font-weight:700;line-height:1.2;text-decoration:none;transition:background .14s,color .14s;display:inline-flex}.log-pill:hover:not([disabled]){background:var(--acc);color:var(--accTxt);text-decoration:none}.log-pill[disabled]{opacity:.55;pointer-events:none}.chip{font-weight:700;font-size:var(--type-footnote);white-space:nowrap;background:var(--sur2);color:var(--mut);border-radius:6px;align-items:center;padding:3px 9px;line-height:16px;display:inline-flex}.chip.good{background:var(--fibBg);color:var(--fib)}.chip.warn{background:var(--calBg);color:var(--cal)}.chip.live{background:var(--accSoft);color:var(--acc)}.seg{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(128px,1fr));display:grid}.seg>button{min-height:var(--control-min);border:1.5px solid var(--bd2);color:var(--txt);border-radius:var(--radius-btn);background:0 0;padding:10px 16px;font-family:inherit;font-size:16px;font-weight:600;line-height:1.2}.seg>button[aria-pressed=true]{background:var(--accSoft);border-color:var(--acc);color:var(--acc);font-weight:700}.seg>button:disabled{opacity:.5}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius);border:2px solid var(--app-bg)}html[data-theme=funnel] .btn{border-radius:var(--radius);padding:11px 20px;font-weight:600}html[data-theme=funnel] .btn.primary{box-shadow:var(--shadow-1)}html[data-theme=funnel] .btn.secondary{background:var(--surface);border:1px solid var(--border-strong)}html[data-theme=funnel] .control{border-width:1px;padding:11px 12px}html[data-theme=funnel] .pill{font-weight:600}html[data-theme=funnel] .eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:700}html[data-theme=funnel] .empty{color:var(--text-secondary)}html[data-theme=funnel] .btn[disabled],html[data-theme=funnel] .btn.is-disabled,html[data-theme=funnel] .btn.primary[disabled],html[data-theme=funnel] .btn.primary.is-disabled{background:var(--surface-3);color:var(--text-secondary)}
