:root{--bg-base:#0c0e16;--bg-surface:#13151f;--bg-raised:#1c2132;--bg-card:#1a1c28;--border:#2a2d3e;--border-light:#3a3d52;--accent:#4f8ef7;--accent-hover:#6ba3ff;--accent-glow:#4f8ef72e;--purple:#8b6ef5;--text-primary:#e8eaf2;--text-muted:#8890a8;--text-faint:#4a5568;--success:#34d399;--danger:#f28b82;--font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", system-ui, sans-serif;--font-mono:"SF Mono", "Fira Code", "Cascadia Code", monospace;--radius-sm:8px;--radius-md:12px;--radius-lg:18px}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-base:#f4f5fa;--bg-surface:#fff;--bg-raised:#fff;--bg-card:#fff;--border:#dde0ec;--border-light:#c7cbdc;--accent:#3f7de0;--accent-hover:#2f68c9;--accent-glow:#3f7de01f;--purple:#7358d6;--text-primary:#171a2b;--text-muted:#5b6178;--text-faint:#9198ae;--success:#1f9d70;--danger:#d1453d}@media (prefers-color-scheme:light){:root:not([data-theme]){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-base:#f4f5fa;--bg-surface:#fff;--bg-raised:#fff;--bg-card:#fff;--border:#dde0ec;--border-light:#c7cbdc;--accent:#3f7de0;--accent-hover:#2f68c9;--accent-glow:#3f7de01f;--purple:#7358d6;--text-primary:#171a2b;--text-muted:#5b6178;--text-faint:#9198ae;--success:#1f9d70;--danger:#d1453d}}*{box-sizing:border-box;margin:0;padding:0}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;height:100%}html,body{max-width:100vw;overflow-x:hidden}body{min-height:100%;color:var(--text-primary);background:var(--bg-base);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;font-size:16px;line-height:1.6;display:flex}a{color:var(--accent);text-decoration:none;transition:color .2s}a:hover{color:var(--accent-hover)}h1,h2,h3,h4{letter-spacing:-.02em;font-weight:700;line-height:1.2}.page{flex-direction:column;flex:1;align-items:center;display:flex}.main{flex-direction:column;gap:24px;width:100%;max-width:640px;padding:32px 20px;display:flex}.main h1{font-size:clamp(1.75rem,4vw,2.25rem)}.main h2{font-size:1.25rem}.main h3{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:1rem;font-weight:600}.main>section{flex-direction:column;gap:14px;display:flex}.main>section+section{border-top:1px solid var(--border);margin-top:12px;padding-top:36px}.muted{color:var(--text-muted);font-size:14px}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-size:.72rem;font-weight:700;display:inline-block}form{flex-direction:column;gap:12px;max-width:360px;display:flex}input[type=text],input[type=email],input[type=number],input[type=datetime-local],textarea,select{border:1px solid var(--border-light);border-radius:var(--radius-sm);background:var(--bg-raised);color:var(--text-primary);padding:10px 12px;font-family:inherit;font-size:16px}input:focus,textarea:focus,select:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}form label{color:var(--text-muted);flex-direction:column;gap:4px;font-size:14px;display:flex}fieldset{border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;gap:8px;padding:12px 16px;display:flex}fieldset legend{color:var(--text-muted);padding:0 4px;font-size:13px}.checkbox-row{color:var(--text-primary);align-items:center;gap:8px;font-size:15px;display:flex;flex-direction:row!important}button{border-radius:var(--radius-md);cursor:pointer;background:var(--accent);color:#fff;border:none;align-items:center;gap:8px;width:fit-content;padding:10px 20px;font-family:inherit;font-size:.92rem;font-weight:600;transition:background .2s,color .2s,border-color .2s,transform .2s;display:inline-flex}button:hover{background:var(--accent-hover)}button:disabled{opacity:.4;cursor:not-allowed}button:disabled:hover{background:var(--accent)}a.btn-outline,button.btn-outline{color:var(--accent);border:1px solid var(--accent);background:0 0;align-items:center;display:inline-flex}a.btn-outline:hover,button.btn-outline:hover{background:var(--accent-glow);color:var(--accent-hover)}a.btn-sm,button.btn-sm{padding:5px 12px;font-size:.8rem}.card-list{flex-direction:column;gap:8px;display:flex}.card{border:1px solid var(--border);background:var(--bg-card);border-radius:var(--radius-md);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.card--stacked{flex-direction:column;align-items:stretch;gap:4px}.card--stacked .card__row{justify-content:space-between;align-items:center;display:flex}.item-claim{align-items:center;gap:12px;display:flex}.item-claim form{margin:0}.item-claim button{padding:4px 12px;font-size:13px}.shopping-row{border:1px solid var(--border);background:var(--bg-card);border-radius:var(--radius-md);align-items:center;gap:12px;margin:0;padding:10px 16px;flex-direction:row!important;display:flex!important}.shopping-row--done{opacity:.55;text-decoration:line-through}.checkbox-btn{border:1px solid var(--border-light);background:0 0;border-radius:4px;flex-shrink:0;width:20px;height:20px;padding:0}.checkbox-btn--checked{background:var(--accent);border-color:var(--accent)}.balance-positive{color:var(--success);font-size:14px}.balance-negative{color:var(--danger);font-size:14px}.site-header{--header-text:#e8eaf2;--header-text-muted:#8890a8;-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);z-index:100;background:#0c0e16d9;justify-content:space-between;align-items:center;padding:14px 20px;display:flex;position:sticky;top:0}.site-header nav{align-items:center;gap:16px;display:flex}.site-header nav a{color:var(--header-text-muted);font-size:.9rem;font-weight:500}.site-header nav a:hover{color:var(--header-text)}.wordmark{flex-direction:column;align-items:flex-start;gap:1px;line-height:1;display:flex}.wordmark__name{letter-spacing:.06em;text-transform:uppercase;color:var(--header-text);font-size:.88rem;font-weight:800}.wordmark__sub{letter-spacing:.28em;text-transform:uppercase;color:var(--accent);font-size:.58rem;font-weight:600}@media print{.no-print,.site-header,form button:not(.checkbox-btn){display:none!important}body,.card,.shopping-row{color:#000!important;background:#fff!important}}button[aria-busy=true]{opacity:.7;cursor:progress}
