:root{--bg:#f3f1ec;--panel:#ffffffb8;--surface:#f8f6f1f5;--text:#5d5b66;--text-h:#111018;--text-muted:#7e7a88;--border:#11101814;--accent:#111018;--accent-border:#11101838;--shadow:0 20px 45px #11101814;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:radial-gradient(circle at top,#fffc,#0000 42%),linear-gradient(#f6f4ef 0%,#ece8e0 100%)}:root[data-theme=dark]{--bg:#0e1016;--panel:#12141ccc;--surface:#171a23f2;--text:#a8afbd;--text-h:#f6f7fb;--text-muted:#7f8799;--border:#ffffff14;--accent:#f6f7fb;--accent-border:#ffffff2e;--shadow:0 20px 45px #00000059;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:radial-gradient(circle at top,#ffffff0f,#0000 42%),linear-gradient(#10131a 0%,#0a0c11 100%)}body{background:var(--bg);color:var(--text)}.app-shell{box-sizing:border-box;flex-direction:column;gap:clamp(14px,2vw,18px);min-height:100svh;padding:clamp(14px,2vw,22px);display:flex}.topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.topbar-left{align-items:center;gap:10px;display:inline-flex}.toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;margin-left:auto;display:flex}.date-pill{border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow);color:var(--text-h);white-space:nowrap;border-radius:999px;padding:10px 14px;font-size:13px}.brand-mark,.theme-toggle,.menu-toggle{border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow)}.brand-mark{width:42px;height:42px;color:var(--text-h);border-radius:14px;justify-content:center;align-items:center;padding:0;display:inline-flex}.brand-mark svg{fill:currentColor;width:22px;height:22px}.brand{align-items:center;gap:12px;min-width:0;display:inline-flex}.brand-text{color:var(--text-h);letter-spacing:.01em;font-size:15px;font-weight:700}.theme-toggle{width:42px;height:42px;color:var(--text-h);cursor:pointer;border-radius:14px;place-items:center;transition:transform .16s,border-color .16s,background .16s;display:grid}.theme-toggle svg{fill:currentColor;width:18px;height:18px}.theme-toggle:hover{border-color:var(--accent-border);transform:translateY(-1px)}.theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.menu-toggle{cursor:pointer;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:3px;width:42px;height:42px;transition:transform .16s,border-color .16s,background .16s;display:none}.menu-toggle span{background:currentColor;border-radius:999px;width:16px;height:2px;transition:transform .16s,opacity .16s;display:block}.menu-toggle.is-open span:first-child{transform:translateY(5px)rotate(45deg)}.menu-toggle.is-open span:nth-child(2){opacity:0}.menu-toggle.is-open span:nth-child(3){transform:translateY(-5px)rotate(-45deg)}.nav-pill{border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow);color:var(--text-h);cursor:pointer;border-radius:999px;padding:10px 14px;font-size:14px;transition:transform .16s,border-color .16s,background .16s}.nav-pill:hover{border-color:var(--accent-border);transform:translateY(-1px)}.nav-pill.is-active{background:var(--accent);color:var(--bg);border-color:#0000}.content{flex:1;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:stretch;gap:18px;width:100%;max-width:1200px;margin:0 auto;display:grid}.list-card{border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow);border-radius:28px;flex-direction:column;gap:14px;min-width:0;padding:24px;display:flex}.list-card:nth-of-type(3){grid-column:1/-1}.history-view .hero-card{min-height:320px}.history-view{grid-template-columns:1fr;max-width:1180px}.history-view .content{grid-template-columns:1fr}.history-page-header{grid-column:1/-1;justify-content:space-between;align-items:end;gap:16px;display:flex}.history-page-header h1{margin-top:8px}.history-page-header p{max-width:44ch;color:var(--text)}.history-card{grid-column:1/-1}.history-tabs{border:1px solid var(--border);background:var(--surface);border-radius:999px;gap:8px;width:fit-content;padding:6px;display:inline-flex}.history-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:9px 14px;font-size:13px;font-weight:600}.history-tab.is-active{background:var(--accent);color:var(--bg)}.bill-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-left:auto;display:flex}.bill-amount-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.bill-amount-label{color:var(--text-muted);font-size:13px}.bill-amount-input{border:1px solid var(--border);background:var(--surface);width:min(100%,110px);min-width:92px;color:var(--text-h);border-radius:10px;padding:8px 10px}.undo-toggle,.history-view-button{border:1px solid var(--border);color:var(--text-h);cursor:pointer;background:0 0;border-radius:999px;padding:10px 14px;font-size:14px}.delete-toggle{color:#b91c1c;cursor:pointer;background:#fee2e299;border:1px solid #dc262673;border-radius:999px;padding:10px 14px;font-size:14px;transition:transform .16s,border-color .16s,background .16s}.delete-toggle:hover{background:#fecacad9;border-color:#dc2626;transform:translateY(-1px)}.delete-confirm{color:#fff;background:#dc2626;border-color:#dc2626}.delete-confirm:hover{background:#b91c1c;border-color:#b91c1c}:root[data-theme=dark] .delete-toggle{color:#fecaca;background:#b91c1c2e;border-color:#f8717173}:root[data-theme=dark] .delete-toggle:hover{background:#b91c1c52;border-color:#f87171}.confirm-modal{max-width:420px}.confirm-text{color:var(--text);margin:4px 0 16px;line-height:1.5}.receipt-modal-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.receipt-close-button{border:1px solid var(--border);color:var(--text-h);cursor:pointer;background:0 0;border-radius:999px;flex:none;min-width:76px;padding:6px 10px;font-size:12px;transition:transform .16s,border-color .16s,background .16s}.receipt-close-button:hover{border-color:var(--accent-border);transform:translateY(-1px)}.history-view-button{width:fit-content;padding-inline:14px}.history-bill-button{justify-content:center;width:100%;min-height:44px;font-weight:600}.undo-toggle:hover,.history-view-button:hover{border-color:var(--accent-border)}.history-table{gap:10px;display:grid}.history-table-head,.history-table-row{grid-template-columns:140px minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.history-table-head-single,.history-table-row-single{grid-template-columns:140px minmax(0,1fr)}.history-table-head{z-index:1;background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);color:var(--text-h);border-radius:14px;padding:10px 12px;font-size:13px;font-weight:600;position:sticky;top:0}.history-table-row{align-items:stretch}.history-month-label,.history-cell{border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:12px}.history-month-label{color:var(--text-h);align-items:center;font-weight:600;display:flex}.history-cell{flex-direction:column;gap:10px;min-height:64px;display:flex}.history-grid{gap:10px;display:grid}.history-grid-monthly{grid-template-columns:repeat(3,minmax(0,1fr))}.history-grid-billers{grid-template-columns:repeat(2,minmax(0,1fr))}.biller-add-button{width:fit-content}.biller-modal-fields{gap:12px;margin:14px 0 18px;display:grid}.modal-field{gap:6px;display:grid}.modal-field span{color:var(--text-muted);font-size:13px}.modal-field input{border:1px solid var(--border);background:var(--surface);width:100%;min-width:0;color:var(--text-h);border-radius:12px;padding:10px 12px}.history-item{border-bottom:1px dashed var(--border);gap:3px;padding-bottom:10px;display:grid}.history-item button{margin-top:4px}.history-item:last-child{border-bottom:0;padding-bottom:0}.history-item strong{color:var(--text-h);font-size:14px}.history-item span,.history-empty{color:var(--text-muted);font-size:12px}.history-empty{align-self:center}.section-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.section-head h2{margin:0}.section-head span{color:var(--text-muted);font-size:13px}.bill-row{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;display:flex}.bill-row .bill-meta{gap:4px;min-width:0;display:grid}.bill-row .bill-meta strong{color:var(--text-h);font-size:15px}.bill-row .bill-meta span{color:var(--text-muted);font-size:13px}.due-badge{color:#10212f;border:1px solid #0000;border-radius:999px;align-self:flex-start;width:fit-content;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.due-badge.is-paid{color:#166534;background:#dcfce7;border-color:#86efac}.due-badge.blue{color:#1d4ed8;background:#dbeafe;border-color:#93c5fd}.due-badge.yellow{color:#92400e;background:#fef3c7;border-color:#fcd34d}.due-badge.orange{color:#9a3412;background:#ffedd5;border-color:#fdba74}.due-badge.critical{color:#991b1b;background:#fee2e2;border-color:#fca5a5}.due-badge.overdue{color:#7f1d1d;background:#fecaca;border-color:#f87171}:root[data-theme=dark] .due-badge{color:#f8fafc}:root[data-theme=dark] .due-badge.is-paid{color:#dcfce7;background:#22c55e2e;border-color:#22c55e73}:root[data-theme=dark] .due-badge.blue{color:#dbeafe;background:#3b82f62e;border-color:#3b82f673}:root[data-theme=dark] .due-badge.yellow{color:#fef08a;background:#facc152e;border-color:#facc1573}:root[data-theme=dark] .due-badge.orange{color:#fed7aa;background:#f973162e;border-color:#f9731673}:root[data-theme=dark] .due-badge.critical{color:#fecaca;background:#ef444433;border-color:#ef444473}:root[data-theme=dark] .due-badge.overdue{color:#fecaca;background:#b91c1c38;border-color:#f8717173}.status-toggle{border:1px solid var(--border);background:var(--surface);min-width:88px;color:var(--text-h);cursor:pointer;border-radius:999px;padding:10px 14px;font-size:14px;transition:transform .16s,border-color .16s,background .16s}.status-toggle:hover{border-color:var(--accent-border);transform:translateY(-1px)}.status-toggle.is-paid{background:var(--accent);color:var(--bg);border-color:#0000}.mobile-nav{flex-wrap:wrap;gap:10px;padding:10px 0 2px;display:none}@media (width<=860px){.app-shell{padding:16px}.topbar{align-items:flex-start}.toolbar{justify-content:flex-start;width:100%;margin-left:0}.content{grid-template-columns:1fr}.list-card:nth-of-type(3){grid-column:auto}.hero-card{min-height:unset}.history-table-head,.history-table-row{grid-template-columns:1fr}.history-table-head{display:none}.history-grid-monthly,.history-grid-billers{grid-template-columns:repeat(2,minmax(0,1fr))}.history-table-head-single,.history-table-row-single{grid-template-columns:1fr}.history-page-header{flex-direction:column;align-items:flex-start}}@media (width<=560px){.topbar{flex-direction:column;align-items:stretch}.topbar-left{justify-content:space-between;width:100%}.toolbar{display:none}.menu-toggle{display:inline-flex}.mobile-nav{display:flex}.hero-card,.list-card{border-radius:22px;padding:20px}.brand-text{font-size:14px}.date-pill,.history-view-button{width:100%}.bill-actions{grid-template-columns:1fr 1fr;gap:8px;width:100%;display:grid}.bill-actions>.nav-pill,.bill-actions>.undo-toggle,.bill-actions>.status-toggle,.bill-actions>.delete-toggle{width:100%;min-width:0;padding:10px 12px}.bill-amount-input{width:100%}.stats{grid-template-columns:1fr}.section-head,.bill-row{flex-direction:column;align-items:flex-start}.history-month-label{justify-content:flex-start}.history-grid-monthly,.history-grid-billers{grid-template-columns:1fr}.biller-add-button,.history-tabs{width:100%}.history-tab{flex:1}.receipt-modal-head{gap:8px}.receipt-close-button{border-radius:10px;width:auto;min-width:58px;padding:4px 8px;font-size:11px}.date-pill{width:100%}}.modal-overlay{z-index:1200;background:#06060ab8;place-items:center;display:grid;position:fixed;inset:0}.modal{width:92%;max-width:420px;box-shadow:var(--shadow);border:1px solid var(--border);background:#fffffff5;border-radius:12px;padding:18px}:root[data-theme=dark] .modal{background:#12141cf5}.receipt-modal{max-width:720px}.receipt-image{object-fit:contain;border:1px solid var(--border);background:var(--surface);border-radius:12px;width:100%;max-height:70vh}.modal h3{margin:0 0 8px}.receipt-modal-head h2{margin:0}.modal p{color:var(--text);margin:0 0 16px}.modal-actions{justify-content:flex-end;gap:8px;display:flex}
