:root{--base:oklch(0.985 0.004 250);--surface:oklch(1 0 0);--surface-sunk:oklch(0.965 0.006 250);--ink:oklch(0.28 0.03 268);--ink-muted:oklch(0.5 0.02 268);--border:oklch(0.905 0.008 255);--border-strong:oklch(0.82 0.01 255);--amber:oklch(0.78 0.15 68);--amber-fill:oklch(0.83 0.13 72);--amber-tint:oklch(0.955 0.045 78);--amber-ink:oklch(0.52 0.13 58);--warn:oklch(0.55 0.17 40);--warn-tint:oklch(0.945 0.06 45);--warn-ink:oklch(0.44 0.16 38);--teal:oklch(0.52 0.1 224);--teal-bright:oklch(0.62 0.12 222);--teal-tint:oklch(0.955 0.02 224);--danger:oklch(0.55 0.19 25);--danger-ink:oklch(0.52 0.19 25);--success:oklch(0.56 0.12 156);--success-tint:oklch(0.955 0.03 156);--success-ink:oklch(0.42 0.11 156);--on-accent:oklch(0.99 0.005 250);--on-amber:oklch(0.26 0.04 66);--font-sans:var(--font-hanken),-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-display:var(--font-bricolage),var(--font-sans);--font-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace;--text-xs:0.8125rem;--text-sm:0.9375rem;--text-base:1.0625rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-2xl:1.9rem;--text-3xl:2.4rem;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-pill:999px;--shadow-sm:0 1px 2px oklch(0.28 0.03 268/0.06),0 2px 6px oklch(0.28 0.03 268/0.06);--shadow-md:0 4px 12px oklch(0.28 0.03 268/0.1),0 2px 4px oklch(0.28 0.03 268/0.06);--glow-amber:0 0 0 6px var(--amber-tint),0 6px 18px oklch(0.78 0.15 68/0.35);--glow-pulse:oklch(0.78 0.15 68/0.35);--glow-pulse-transparent:oklch(0.78 0.15 68/0);--ease:cubic-bezier(0.22,1,0.36,1);--dur-fast:140ms;--dur:220ms;--z-nav:100;--z-sticky:200;--z-overlay:300;--z-toast:400;--nav-height:64px;--day-bar-height:64px;--dark-base:oklch(0.2 0.02 268);--dark-surface:oklch(0.245 0.02 268);--dark-surface-sunk:oklch(0.285 0.02 268);--dark-ink:oklch(0.95 0.008 255);--dark-ink-muted:oklch(0.72 0.015 255);--dark-border:oklch(0.35 0.018 268);--dark-border-strong:oklch(0.45 0.02 268);--dark-amber:oklch(0.82 0.14 72);--dark-amber-fill:oklch(0.75 0.13 70);--dark-amber-tint:oklch(0.32 0.05 66);--dark-amber-ink:oklch(0.82 0.14 72);--dark-warn:oklch(0.78 0.14 45);--dark-warn-tint:oklch(0.32 0.06 45);--dark-warn-ink:oklch(0.85 0.14 55);--dark-teal:oklch(0.75 0.1 220);--dark-teal-bright:oklch(0.7 0.12 220);--dark-teal-tint:oklch(0.32 0.04 224);--dark-danger:oklch(0.55 0.19 25);--dark-danger-ink:oklch(0.72 0.17 25);--dark-success:oklch(0.7 0.13 156);--dark-success-tint:oklch(0.3 0.04 156);--dark-success-ink:oklch(0.75 0.12 156);--dark-on-accent:oklch(0.98 0.005 250);--dark-on-amber:oklch(0.2 0.03 66);--dark-shadow-sm:0 1px 2px oklch(0 0 0/0.3),0 2px 6px oklch(0 0 0/0.25);--dark-shadow-md:0 4px 12px oklch(0 0 0/0.4),0 2px 4px oklch(0 0 0/0.3);--dark-glow-amber:0 0 0 6px var(--dark-amber-tint),0 6px 18px oklch(0.82 0.14 72/0.4);--dark-glow-pulse:oklch(0.82 0.14 72/0.4);--dark-glow-pulse-transparent:oklch(0.82 0.14 72/0)}@media (prefers-color-scheme:dark){:root{--base:var(--dark-base);--surface:var(--dark-surface);--surface-sunk:var(--dark-surface-sunk);--ink:var(--dark-ink);--ink-muted:var(--dark-ink-muted);--border:var(--dark-border);--border-strong:var(--dark-border-strong);--amber:var(--dark-amber);--amber-fill:var(--dark-amber-fill);--amber-tint:var(--dark-amber-tint);--amber-ink:var(--dark-amber-ink);--warn:var(--dark-warn);--warn-tint:var(--dark-warn-tint);--warn-ink:var(--dark-warn-ink);--teal:var(--dark-teal);--teal-bright:var(--dark-teal-bright);--teal-tint:var(--dark-teal-tint);--danger:var(--dark-danger);--danger-ink:var(--dark-danger-ink);--success:var(--dark-success);--success-tint:var(--dark-success-tint);--success-ink:var(--dark-success-ink);--on-accent:var(--dark-on-accent);--on-amber:var(--dark-on-amber);--shadow-sm:var(--dark-shadow-sm);--shadow-md:var(--dark-shadow-md);--glow-amber:var(--dark-glow-amber);--glow-pulse:var(--dark-glow-pulse);--glow-pulse-transparent:var(--dark-glow-pulse-transparent)}html{color-scheme:dark}}[data-scheme=dark]{--base:var(--dark-base);--surface:var(--dark-surface);--surface-sunk:var(--dark-surface-sunk);--ink:var(--dark-ink);--ink-muted:var(--dark-ink-muted);--border:var(--dark-border);--border-strong:var(--dark-border-strong);--amber:var(--dark-amber);--amber-fill:var(--dark-amber-fill);--amber-tint:var(--dark-amber-tint);--amber-ink:var(--dark-amber-ink);--teal:var(--dark-teal);--teal-bright:var(--dark-teal-bright);--teal-tint:var(--dark-teal-tint);--danger:var(--dark-danger);--danger-ink:var(--dark-danger-ink);--success:var(--dark-success);--success-tint:var(--dark-success-tint);--success-ink:var(--dark-success-ink);--on-accent:var(--dark-on-accent);--on-amber:var(--dark-on-amber);--shadow-sm:var(--dark-shadow-sm);--shadow-md:var(--dark-shadow-md);--glow-amber:var(--dark-glow-amber);--glow-pulse:var(--dark-glow-pulse);--glow-pulse-transparent:var(--dark-glow-pulse-transparent);color-scheme:dark}*{box-sizing:border-box}html{height:100%}body,html{max-width:100vw;overflow-x:hidden}body{min-height:100%;margin:0;color:var(--ink);background:var(--base);font-family:var(--font-sans);font-size:var(--text-base);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;text-rendering:optimizeLegibility}main{max-width:34rem;margin:0 auto;padding:var(--space-5) var(--space-4);padding-bottom:calc(var(--nav-height) + env(safe-area-inset-bottom) + var(--space-5))}h1{font-size:var(--text-2xl);font-weight:800;line-height:1.08;letter-spacing:-.02em;margin:0 0 var(--space-4)}h1,h2{font-family:var(--font-display);text-wrap:balance}h2{font-size:var(--text-lg);line-height:1.2;letter-spacing:-.01em;margin:0 0 var(--space-3)}h2,h3{font-weight:700}h3{font-family:var(--font-display);font-size:var(--text-base);margin:0 0 var(--space-2)}p{margin:0 0 var(--space-3);text-wrap:pretty}p:last-child{margin-bottom:0}a{display:inline-flex;align-items:center;min-height:44px;color:var(--teal);text-decoration:none;font-weight:600}p a{display:inline;min-height:0}a:hover{text-decoration:underline}button{font-family:inherit;font-size:inherit;-webkit-tap-highlight-color:transparent}summary{display:inline-flex;align-items:center;min-height:44px;cursor:pointer}summary:after{width:.55em;height:.55em;margin-left:auto;border-right:2px solid var(--ink-muted);border-bottom:2px solid var(--ink-muted);content:"";transform:rotate(45deg);transition:transform .2s ease;flex-shrink:0}details[open]>summary:after{border-color:var(--teal);transform:rotate(-135deg)}a,button{cursor:pointer;touch-action:manipulation}:focus-visible{outline:3px solid var(--teal-bright);outline-offset:2px;border-radius:var(--radius-sm)}.stack{display:flex;flex-direction:column;gap:var(--space-4)}.skeleton{position:relative;overflow:hidden;background:var(--surface-sunk);border-radius:var(--radius-md)}.skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,oklch(1 0 0/.35),transparent);animation:skeleton-shimmer 1.6s ease-in-out infinite}@keyframes skeleton-shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-5);box-shadow:var(--shadow-sm)}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:3px var(--space-2);border-radius:var(--radius-pill);background:var(--teal-tint);color:var(--teal);font-size:var(--text-xs);font-weight:700;letter-spacing:.01em}.badge-amber{background:var(--amber-tint);color:var(--amber-ink)}.badge-good{background:var(--success-tint);color:var(--success-ink)}.badge-alert{background:var(--amber-fill);color:var(--on-amber)}.muted{color:var(--ink-muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.btn{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;min-height:52px;padding:var(--space-3) var(--space-4);border:none;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-base);font-weight:700;transition:transform var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.btn,.btn:hover{text-decoration:none}.btn:hover{filter:brightness(1.06)}.btn:active{transform:scale(.985)}.btn:disabled{opacity:.5;cursor:default;filter:none;transform:none}.iconButton{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);color:var(--ink);cursor:pointer}.iconButton:hover{background:var(--surface-sunk)}.iconButton:disabled{opacity:.5;cursor:default}.btn-primary{background:var(--amber);color:var(--on-amber);box-shadow:var(--shadow-sm)}.btn-ghost,.note{background:var(--surface-sunk);color:var(--ink);border:1px solid var(--border)}.note{border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);margin:var(--space-3) 0;font-size:var(--text-sm);line-height:1.55}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.BottomNav_nav__QVZ7x{position:fixed;left:0;right:0;bottom:0;z-index:var(--z-nav);display:flex;height:calc(var(--nav-height) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:color-mix(in oklab,var(--surface) 88%,transparent);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-top:1px solid var(--border)}.BottomNav_items__hL8Vu{display:flex;width:100%;max-width:34rem;margin:0 auto}.BottomNav_item__M1F6z{position:relative;display:flex;flex:1 1;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-1);color:var(--ink-muted);font-weight:600;transition:color var(--dur-fast) var(--ease)}.BottomNav_item__M1F6z.BottomNav_active__r1Zfa{color:var(--ink)}.BottomNav_item__M1F6z.BottomNav_active__r1Zfa:before{content:"";position:absolute;top:0;width:28px;height:3px;border-radius:var(--radius-pill);background:var(--amber)}.BottomNav_icon__oFILT{width:24px;height:24px}.BottomNav_label__g47ee{font-size:var(--text-xs);font-weight:600;letter-spacing:.01em}