:root{--font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Inter", system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--text-3xl:2.125rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--leading-tight:1.2;--leading-normal:1.45;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--radius-sm:8px;--control-radius:12px;--card-radius:16px;--sheet-radius:20px;--pill-radius:999px;--shadow-card:0 1px 2px #0000000a, 0 4px 16px #0000000d;--shadow-sheet:0 -1px 24px #0000001f;--shadow-popover:0 4px 24px #00000024;--ease-spring:cubic-bezier(.32, .72, 0, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--duration-fast:.14s;--duration-base:.24s;--duration-slow:.36s;--tabbar-height:52px;--bottombar-height:68px;--navbar-height:44px;--sidebar-width:264px;--content-max:720px;--content-wide:960px;--hairline:.5px;--focus-ring:var(--primary);--surface-hover:var(--surface-sunken);--tabbar-bg:var(--surface-base);--navbar-bg:var(--surface-base);--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--success:#4f9d69;--success-soft:#e4f1e8;--warning:#dfa23e;--warning-soft:#f8ecd4;--danger:#d9534f;--danger-soft:#f7dedd;--on-state:#fff;--z-tabbar:100;--z-navbar:90;--z-sheet:200;--z-backdrop:190;--z-popover:300}:root,[data-theme=cream]{--p-base:#fbf7f0;--p-primary:#f2795c;--p-secondary:#c9603f;--p-accent:#e8b45a;--surface-base:#fbf7f0;--surface-raised:#fffdf9;--surface-sunken:#f3ece1;--surface-inset:#f7f1e7;--text-primary:#33251d;--text-secondary:#6d5b4f;--text-tertiary:#a08d7f;--text-on-primary:#fff;--border-hairline:#ebe0d2;--border-strong:#ddcdb8;--primary:#f2795c;--primary-hover:#ec6a4b;--primary-soft:#fbe2da;--secondary:#c9603f;--accent:#e8b45a;--accent-soft:#f9edd4;--backdrop:#33251d52;--theme-color:#fbf7f0}[data-theme=sage]{--p-base:#f4f8f4;--p-primary:#7ba07e;--p-secondary:#4f7355;--p-accent:#d4a373;--surface-base:#f4f8f4;--surface-raised:#fcfefc;--surface-sunken:#e7f0e8;--surface-inset:#eef5ef;--text-primary:#25302a;--text-secondary:#556259;--text-tertiary:#8a988e;--text-on-primary:#fff;--border-hairline:#dce7dd;--border-strong:#c6d6c8;--primary:#7ba07e;--primary-hover:#6b9070;--primary-soft:#e3ede4;--secondary:#4f7355;--accent:#d4a373;--accent-soft:#f0e2d2;--backdrop:#25302a52;--theme-color:#f4f8f4}[data-theme=periwinkle]{--p-base:#f6f7fc;--p-primary:#8b93e8;--p-secondary:#5c6bc0;--p-accent:#8fc5e8;--surface-base:#f6f7fc;--surface-raised:#fff;--surface-sunken:#eceef9;--surface-inset:#f1f2fb;--text-primary:#262a45;--text-secondary:#565c7a;--text-tertiary:#8a90ae;--text-on-primary:#fff;--border-hairline:#e2e4f3;--border-strong:#cdd1ec;--primary:#8b93e8;--primary-hover:#7a83e2;--primary-soft:#e6e8fb;--secondary:#5c6bc0;--accent:#8fc5e8;--accent-soft:#dceef8;--backdrop:#262a4552;--theme-color:#f6f7fc}[data-scheme=dark]{--shadow-card:0 1px 2px #0000004d, 0 4px 16px #0006;--shadow-sheet:0 -1px 28px #00000080;--shadow-popover:0 4px 28px #0000008c;--success:#5cb377;--success-soft:#1e3226;--warning:#e6b05a;--warning-soft:#3a2f1a;--danger:#e5706c;--danger-soft:#3a2020;--backdrop:#0009}[data-scheme=dark][data-theme=cream]{--surface-base:#1c1714;--surface-raised:#262019;--surface-sunken:#17120f;--surface-inset:#211b15;--text-primary:#f3e9df;--text-secondary:#c1b2a4;--text-tertiary:#8a7c70;--text-on-primary:#fff;--border-hairline:#362d25;--border-strong:#4a3f35;--primary:#f2795c;--primary-hover:#f5876b;--primary-soft:#3a241d;--secondary:#e08a6d;--accent:#e8b45a;--accent-soft:#3a2f1a;--theme-color:#1c1714}[data-scheme=dark][data-theme=sage]{--surface-base:#161d18;--surface-raised:#1f2822;--surface-sunken:#121814;--surface-inset:#1b231d;--text-primary:#e5efe7;--text-secondary:#aabaad;--text-tertiary:#798579;--text-on-primary:#fff;--border-hairline:#2a352c;--border-strong:#3b483d;--primary:#7ba07e;--primary-hover:#8bb28e;--primary-soft:#23302a;--secondary:#7fa085;--accent:#d4a373;--accent-soft:#322a1f;--theme-color:#161d18}[data-scheme=dark][data-theme=periwinkle]{--surface-base:#171826;--surface-raised:#202235;--surface-sunken:#121320;--surface-inset:#1b1d2e;--text-primary:#e7e8f3;--text-secondary:#a8abc8;--text-tertiary:#797d9e;--text-on-primary:#fff;--border-hairline:#2a2c42;--border-strong:#3b3e5c;--primary:#8b93e8;--primary-hover:#9ba3f0;--primary-soft:#262a45;--secondary:#7c88d8;--accent:#8fc5e8;--accent-soft:#1f2b38;--theme-color:#171826}[data-scheme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}*{-webkit-tap-highlight-color:transparent;margin:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background:var(--surface-base);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{background:var(--surface-base);min-height:100dvh;color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;touch-action:manipulation;text-rendering:optimizelegibility}h1,h2,h3,h4{font-weight:var(--font-weight-semibold);line-height:var(--leading-tight);color:var(--text-primary)}a{color:var(--primary);text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}input,textarea,select{font:inherit;font-size:max(16px, var(--text-base));color:inherit}img,picture,svg,video{max-width:100%;display:block}::selection{background:var(--accent-soft);color:var(--text-primary)}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}@keyframes vt-fade-in{0%{opacity:0}}@keyframes vt-fade-out{to{opacity:0}}::view-transition-old(root){animation:vt-fade-out var(--duration-fast) var(--ease-out) both}::view-transition-new(root){animation:vt-fade-in var(--duration-base) var(--ease-out) both}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}::view-transition-old(root){animation:none!important}::view-transition-new(root){animation:none!important}}
