:root{--bg:#f6f5f2;--surface:#fff;--elevated:#f1efea;--elevated-2:#e8e5de;--border:#e6e3dd;--border-strong:#d4d0c8;--overlay:#1b1a1847;--text:#1b1a18;--text-secondary:#66625b;--text-muted:#87827a;--text-faint:#aba69d;--accent:#2f6b4f;--accent-hover:#255a41;--accent-dim:#2f6b4f1a;--on-accent:#fff;--success:#2f7a4f;--success-dim:#2f7a4f1a;--warning:#a86200;--warning-dim:#a862001a;--danger:#b0452f;--danger-dim:#b0452f1a;--purple:#6e4aa8;--purple-dim:#6e4aa81a;--sec-finance:#2f7a4f;--sec-health:#b8483a;--sec-planner:#6e4aa8;--sec-books:#9a6a1f;--sec-gifts:#b5487a;--sec-travel:#1f7f86;--sec-bucketlist:#66625b;--sec-clipboard:#8a7415;--sec-vehicles:#2c55c9;--sec-recipes:#b4532a;--sec-credentials:#1d7690;--sec-dreamhouse:#8a5f2c;--sec-wardrobe:#4f5fb8;--sec-journal:#6e4aa8;--sec-betting:#b4532a;--r-sm:6px;--r-md:10px;--r-lg:14px;--r-xl:20px;--r-pill:999px;--shadow-sm:0 1px 2px #1b1a180f;--shadow-md:0 4px 16px #1b1a1814;--shadow-lg:0 12px 36px #1b1a1824;--shadow-ring:0 0 0 1px var(--border);--ease:cubic-bezier(.4, 0, .2, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--t-fast:.12s;--t-base:.2s;--t-slow:.32s;--font-sans:"Geist", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-display:"Geist", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--control-h:40px;--control-h-sm:30px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#171716;--surface:#201f1d;--elevated:#2a2926;--elevated-2:#34322f;--border:#302e2b;--border-strong:#45423d;--overlay:#00000080;--text:#ecebe7;--text-secondary:#a8a39b;--text-muted:#857f76;--text-faint:#5d5953;--success:#6cc49a;--success-dim:#6cc49a24;--warning:#e0a458;--warning-dim:#e0a45824;--danger:#e08a7a;--danger-dim:#e08a7a24;--purple:#b9a0f0;--purple-dim:#b9a0f024;--sec-finance:#6cc49a;--sec-health:#e0867a;--sec-planner:#b9a0f0;--sec-books:#e0b068;--sec-gifts:#e889b5;--sec-travel:#5cc6cc;--sec-bucketlist:#a8a39b;--sec-clipboard:#d8c060;--sec-vehicles:#8aa8ff;--sec-recipes:#f0946a;--sec-credentials:#5cc0d8;--sec-dreamhouse:#d0a070;--sec-wardrobe:#a0acff;--sec-journal:#b9a0f0;--sec-betting:#f0946a;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 16px #00000059;--shadow-lg:0 12px 40px #00000073;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-accent=ink]{--accent:#2c55c9;--accent-hover:#2447a8;--accent-dim:#2c55c91a}:root[data-accent=clay]{--accent:#b4532a;--accent-hover:#974522;--accent-dim:#b4532a1a}:root[data-accent=plum]{--accent:#6e4aa8;--accent-hover:#5c3d8d;--accent-dim:#6e4aa81a}:root[data-theme=dark]{--accent:#4a9a72;--accent-hover:#58ab81;--accent-dim:#6cc49a24}:root[data-theme=dark][data-accent=ink]{--accent:#5a7fe6;--accent-hover:#6d8ff0;--accent-dim:#8aa8ff24}:root[data-theme=dark][data-accent=clay]{--accent:#c8683d;--accent-hover:#d67a50;--accent-dim:#f0946a24}:root[data-theme=dark][data-accent=plum]{--accent:#8a66c6;--accent-hover:#9a79d2;--accent-dim:#b9a0f024}@media (width<=760px){:root{--control-h:44px;--control-h-sm:40px}}*{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);margin:0}#root{min-height:100vh}::selection{background:var(--accent-dim);color:var(--text)}*{scrollbar-width:thin;scrollbar-color:var(--elevated-2) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--elevated-2);border-radius:var(--r-pill);background-clip:content-box;border:2px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--border-strong);background-clip:content-box}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button,input,select,textarea{font-family:inherit}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes rise-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.ui-btn{height:var(--control-h);border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;white-space:nowrap;cursor:pointer;transition:background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease);justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:500;line-height:1;text-decoration:none;display:inline-flex}.ui-btn:hover{background:var(--elevated)}.ui-btn:active{background:var(--elevated-2)}.ui-btn:disabled{cursor:default;background:var(--elevated);color:var(--text-muted);border-color:#0000}.ui-btn--primary{background:var(--accent);color:var(--on-accent);border-color:#0000}.ui-btn--primary:hover,.ui-btn--primary:active{background:var(--accent-hover)}.ui-btn--quiet{color:var(--text-secondary);background:0 0;border-color:#0000;padding:0 10px}.ui-btn--quiet:hover{background:var(--elevated);color:var(--text)}.ui-btn--danger{color:var(--danger)}.ui-btn--danger:hover{background:var(--danger-dim)}.ui-btn--sm{height:var(--control-h-sm);border-radius:8px;padding:0 12px;font-size:13px}.ui-btn--icon{width:var(--control-h);color:var(--text-secondary);padding:0}.ui-btn--icon.ui-btn--sm{width:var(--control-h-sm)}.ui-btn--icon.ui-btn--quiet{color:var(--text-muted)}.ui-btn--block{width:100%}.ui-field{flex-direction:column;gap:6px;min-width:0;display:flex}.ui-field__label{color:var(--text-secondary);font-size:13px}.ui-field__hint{color:var(--text-muted);font-size:12px}.ui-field__error{color:var(--danger);font-size:12px}.ui-input{height:var(--control-h);border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface);color:var(--text);min-width:0;transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);align-items:center;gap:8px;padding:0 12px;font-size:15px;display:flex}.ui-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.ui-input--error,.ui-input--error:focus-within{border-color:var(--danger);box-shadow:none}.ui-input input,.ui-input select{min-width:0;height:100%;color:inherit;font:inherit;font-size:inherit;background:0 0;border:none;outline:none;flex:1;padding:0}.ui-input select{appearance:none;cursor:pointer}:is(.ui-input:has(input:focus-visible),.ui-input:has(select:focus-visible)),.ui-input input:focus-visible,.ui-input select:focus-visible{outline:none}.ui-input__affix{color:var(--text-muted);flex-shrink:0;font-size:14px}.ui-input__icon{color:var(--text-muted);flex-shrink:0;display:flex}@media (width<=760px){.ui-input{font-size:16px}}.ui-pills{flex-wrap:wrap;gap:6px;display:flex}.ui-pill{border-radius:var(--r-pill);border:1px solid var(--border);height:32px;color:var(--text-secondary);font:inherit;cursor:pointer;white-space:nowrap;transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);background:0 0;padding:0 14px;font-size:13px}.ui-pill:hover{color:var(--text);border-color:var(--border-strong)}.ui-pill[aria-pressed=true]{background:var(--text);border-color:var(--text);color:var(--bg)}@media (width<=760px){.ui-pill{height:40px;padding:0 16px}}.ui-seg{border-radius:var(--r-md);background:var(--elevated);gap:2px;padding:3px;display:inline-flex}.ui-seg__opt{height:calc(var(--control-h-sm));color:var(--text-secondary);font:inherit;cursor:pointer;white-space:nowrap;transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);background:0 0;border:none;border-radius:8px;padding:0 16px;font-size:13px}.ui-seg__opt:hover{color:var(--text)}.ui-seg__opt[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm), 0 0 0 1px var(--border)}.ui-list-group+.ui-list-group{margin-top:18px}.ui-list-group__title{color:var(--text-muted);margin:0 0 4px;font-size:13px;font-weight:500}.ui-row{border-bottom:1px solid var(--border);min-height:48px;color:inherit;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:8px 0;text-decoration:none;display:grid}.ui-row--link{cursor:pointer;border-radius:0}.ui-row--link:hover .ui-row__title{color:var(--accent)}.ui-row__lead{color:var(--text-secondary);min-width:56px;font-size:13px}.ui-row__lead:empty{display:none}.ui-row__main{flex-wrap:wrap;align-items:baseline;gap:10px;min-width:0;display:flex}.ui-row__title{font-size:15px}.ui-row__detail{color:var(--text-secondary);font-size:13px}.ui-row__trail{align-items:center;gap:10px;display:flex}.ui-row__meta{color:var(--text-muted);font-size:12px}.ui-row__value{font-variant-numeric:tabular-nums;font-size:15px}.ui-row:has(.ui-row__lead:empty){grid-template-columns:minmax(0,1fr) auto}@media (width<=760px){.ui-row{min-height:56px}}.ui-overlay{z-index:400;background:var(--overlay);animation:ui-fade var(--t-base) var(--ease);justify-content:center;align-items:flex-start;padding:12vh 16px 16px;display:flex;position:fixed;inset:0}.ui-dialog{width:100%;max-width:var(--dialog-w,460px);background:var(--surface);max-height:76vh;box-shadow:var(--shadow-lg);animation:ui-rise var(--t-base) var(--ease);border-radius:16px;padding:22px;overflow:auto}.ui-dialog:focus-visible{outline:none}.ui-dialog__head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.ui-dialog__title{letter-spacing:-.2px;margin:0;font-size:18px;font-weight:600}.ui-dialog__foot{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.ui-dialog__grab{display:none}@media (width<=760px){.ui-overlay{align-items:flex-end;padding:0}.ui-dialog{max-width:none;max-height:88vh;padding:10px 20px calc(20px + env(safe-area-inset-bottom));animation:ui-sheet var(--t-slow) var(--ease);border-radius:18px 18px 0 0}.ui-dialog__grab{background:var(--border-strong);border-radius:2px;width:36px;height:4px;margin:0 auto 12px;display:block}.ui-dialog__foot{flex-direction:column-reverse}.ui-dialog__foot .ui-btn{width:100%}}.ui-toasts{z-index:500;pointer-events:none;flex-direction:column;align-items:center;gap:8px;width:max-content;max-width:calc(100vw - 32px);display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.ui-toast{pointer-events:auto;background:var(--text);min-height:46px;color:var(--bg);box-shadow:var(--shadow-lg);animation:ui-rise var(--t-base) var(--ease);border-radius:12px;align-items:center;gap:14px;padding:6px 8px 6px 16px;font-size:14px;display:flex}.ui-toast__detail{opacity:.65;font-size:13px}.ui-toast__action{height:34px;color:inherit;font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:none;border-radius:8px;padding:0 12px;font-size:14px;font-weight:600;text-decoration:underline}.ui-toast__action:hover{background:color-mix(in srgb, var(--bg) 14%, transparent)}.ui-toast__close{width:30px;height:30px;color:inherit;opacity:.6;cursor:pointer;background:0 0;border:none;border-radius:8px;font-size:18px}.ui-toast--error{background:var(--surface);color:var(--text);border:1px solid var(--danger)}.ui-toast--error .ui-toast__msg{color:var(--danger)}.ui-toast--error .ui-toast__detail{color:var(--text-secondary);opacity:1}@media (width<=760px){.ui-toasts{bottom:calc(96px + env(safe-area-inset-bottom))}}.ui-skel{background:var(--elevated);border-radius:5px;height:10px;display:block;position:relative;overflow:hidden}.ui-skel:after{content:"";background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--surface) 60%, transparent), transparent);animation:1.4s infinite ui-shimmer;position:absolute;inset:0}.ui-skel-row{border-bottom:1px solid var(--border);grid-template-columns:48px 1fr 56px;align-items:center;gap:14px;padding:15px 0;display:grid}@media (prefers-reduced-motion:reduce){.ui-skel:after{animation:none}}.ui-empty{border-radius:var(--r-lg);border:1px dashed var(--border-strong);flex-direction:column;align-items:flex-start;gap:6px;padding:22px;display:flex}.ui-empty__title{font-size:15px;font-weight:500}.ui-empty__text{color:var(--text-secondary);font-size:13px;line-height:1.5}.ui-empty .ui-btn{margin-top:6px}.ui-tp-trigger{font-variant-numeric:tabular-nums}.ui-tp-trigger[aria-expanded=true]{border-color:var(--accent)}.ui-tp-panel{z-index:450;border:1px solid var(--border);background:var(--surface);width:300px;max-width:calc(100vw - 16px);box-shadow:var(--shadow-lg);animation:ui-fade var(--t-fast) var(--ease);border-radius:14px;padding:12px;position:fixed}.ui-tp-label{color:var(--text-muted);justify-content:space-between;align-items:center;margin:12px 0 6px;font-size:12px;display:flex}.ui-tp-grid{grid-template-columns:repeat(6,1fr);gap:4px;display:grid}.ui-tp-cell{background:var(--elevated);height:34px;color:var(--text);font:inherit;cursor:pointer;font-variant-numeric:tabular-nums;border:none;border-radius:8px;font-size:14px}.ui-tp-cell:hover{background:var(--elevated-2)}.ui-tp-cell[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.ui-tp-foot{justify-content:space-between;align-items:center;margin-top:12px;display:flex}.ui-tp-typed{width:100%}@media (width<=760px){.ui-tp-cell{height:44px}}@keyframes ui-fade{0%{opacity:0}to{opacity:1}}@keyframes ui-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes ui-sheet{0%{transform:translateY(100%)}to{transform:none}}@keyframes ui-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.ui-overlay,.ui-dialog,.ui-toast,.ui-tp-panel{animation:none}}.ui-sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background:var(--bg);color:var(--text)}main{background:var(--bg);min-height:100vh}.page-header,.health-page-header{background:0 0;border-bottom:none;padding:28px 32px 22px}.page-header h1,.health-page-header h1{font-family:var(--font-display);color:var(--text);letter-spacing:-.4px;margin:0 0 5px;font-size:24px;font-weight:650}.page-header p,.health-page-header p{color:var(--text-muted);margin:0;font-size:13px}.page-body{padding:4px 32px 32px}.app-main{margin-left:248px}@media (width<=760px){.app-sidebar{width:64px!important}.app-sidebar .sidebar-section-label,.app-sidebar .sidebar-label,.app-sidebar .sidebar-collapsible{display:none!important}.app-main{margin-left:64px}}.health-content{background:var(--bg);min-height:100vh}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);transition:border-color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);padding:16px 18px}.stat-card:hover{border-color:var(--border-strong)}
