@import "https://fonts.googleapis.com/css2?family=Noto+Sans+Thai:wght@400;500;600;700&display=swap";.cloud-account{margin-bottom:20px}.cloud-account p{overflow-wrap:anywhere;font-size:14px;line-height:1.7}.cloud-login{gap:14px;max-width:440px;display:grid}.cloud-login label{gap:6px;display:grid}.cloud-login input{width:100%;font:inherit;border:1px solid var(--ui-input-border);background:var(--ui-input-bg);color:var(--ui-input-text);border-radius:8px;min-height:44px;padding:12px;font-size:16px}.cloud-status{border:1px solid var(--ui-border);background:var(--ui-card);border-radius:10px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:18px;padding:12px 14px;font-size:13px;display:flex}.cloud-status span{overflow-wrap:anywhere;flex:1}.cloud-status button{min-height:44px}.cloud-account button:disabled{opacity:.55;cursor:wait}.dashboard.dashboard-redesign{--dash-muted:#64748b;--dash-surface:#fff;--dash-border:#dce5f2;max-width:1180px}.dashboard-redesign .dashboard-header{align-items:center;gap:18px;margin-bottom:26px}.dashboard-redesign .dashboard-header h1{letter-spacing:-.7px;font-size:32px}.greeting-wave{font-size:27px}.dashboard-redesign .dashboard-header p{margin-top:5px;font-size:14px}.dashboard-header-right{align-items:center;gap:22px;display:flex}.dashboard-today{color:#526685;white-space:nowrap;align-items:center;gap:10px;display:flex}.dashboard-today span,.dashboard-today small{display:block}.dashboard-today small{margin-top:3px;font-size:12px}.dashboard-redesign .header-actions{gap:9px;display:flex}.dashboard-redesign .header-actions button{white-space:nowrap;justify-content:center;align-items:center;gap:7px;min-height:46px;font-size:13px;display:inline-flex}.dashboard-money-hero{isolation:isolate;color:#112342;background:linear-gradient(110deg,#edf5ff,#f4f8ff);border:1px solid #bfd8ff;border-radius:14px;align-items:flex-start;gap:20px;min-height:185px;margin-bottom:20px;padding:28px 24px;display:flex;position:relative;overflow:hidden}.hero-wave{z-index:-1;color:#d8e7ff;opacity:.85;width:65%;height:145px;position:absolute;bottom:0;right:0}.hero-money-icon{color:#2357e7;background:#d9eaff;border-radius:50%;flex:none;place-items:center;width:62px;height:62px;display:grid}.hero-money-copy h2{margin:0 0 5px;font-size:20px}.hero-money-copy>strong{letter-spacing:-1px;color:#2451e4;font-size:46px;line-height:1.35}.hero-money-copy p{color:#586b89;max-width:450px;margin:6px 0 0;font-size:13px}.hero-money-message{background:#ffffffed;border:1px solid #d7e4ff;border-radius:12px;align-items:flex-start;gap:8px;min-width:185px;margin-left:auto;padding:15px;display:flex;box-shadow:0 4px 15px #3979d00a}.hero-money-message svg{color:#f3b82e;flex:none}.hero-money-message b{font-size:14px}.hero-money-message small{color:#71809c;margin-top:3px;font-size:11px;display:block}.dashboard-redesign .dashboard-mock-summaries{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.dashboard-redesign .dashboard-mock-summaries .summary-card{border:1px solid var(--dash-border);background:var(--dash-surface);border-radius:14px;grid-template-columns:44px minmax(0,1fr);align-items:start;gap:12px;min-height:100px;padding:16px;display:grid;position:relative;box-shadow:0 3px 9px #163e7406}.dashboard-redesign .dashboard-mock-summaries .summary-icon{width:44px;height:44px}.dashboard-redesign .dashboard-mock-summaries .summary-card p{color:inherit;white-space:normal;margin:0 0 6px;font-size:13px;line-height:1.6}.dashboard-redesign .dashboard-mock-summaries .summary-card strong{letter-spacing:-.4px;white-space:nowrap;font-size:27px}.dashboard-redesign .panel{border-color:var(--dash-border);background:var(--dash-surface);border-radius:14px;box-shadow:0 3px 12px #163e7405}.dashboard-distribution{margin-bottom:22px;padding:22px}.dashboard-distribution h2{align-items:center;gap:10px;margin:0;font-size:19px;display:flex}.distribution-cycle{color:var(--dash-muted);margin:5px 0 20px 31px;font-size:11px}.distribution-bar{background:#edf1f7;border-radius:999px;height:27px;display:flex;overflow:hidden}.distribution-bar span{height:100%}.distribution-legend{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:22px;display:grid}.distribution-legend>div{align-items:flex-start;gap:11px;display:flex}.distribution-legend i{border-radius:50%;flex:none;width:12px;height:12px;margin-top:5px}.distribution-legend span{color:var(--dash-muted);font-size:12px}.distribution-legend strong,.distribution-legend small{display:block}.distribution-legend strong{margin-top:5px;font-size:19px}.distribution-legend small{color:var(--dash-muted);margin-top:1px;font-size:12px}.distribution-note{margin-bottom:0;font-size:12px}.dashboard-redesign .dashboard-content{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:20px;margin-bottom:22px}.dashboard-redesign .dashboard-content .panel{min-width:0;padding:20px}.dashboard-redesign .dashboard-section-heading h2{font-size:18px}.dashboard-redesign .dashboard-section-heading p{font-size:11px}.dashboard-redesign .upcoming-panel{border-color:#f0d7db}.dashboard-redesign .upcoming-panel .dashboard-section-heading h2 svg{color:#e25962}.dashboard-redesign .upcoming-table{table-layout:fixed;border:0;min-width:0}.dashboard-redesign .upcoming-table th:first-child{width:22%}.dashboard-redesign .upcoming-table th:nth-child(2){width:32%}.dashboard-redesign .upcoming-table th:nth-child(3){width:25%}.dashboard-redesign .upcoming-table th:nth-child(4){width:21%}.dashboard-redesign .upcoming-table td,.dashboard-redesign .upcoming-table th{padding:14px 7px;font-size:12px}.dashboard-redesign .upcoming-table td:last-child,.dashboard-redesign .upcoming-table th:last-child{text-align:right}.dashboard-redesign .upcoming-table .badge{white-space:nowrap;padding:4px 7px;font-size:10px;display:inline-block}.dashboard-redesign .upcoming-overdue td:first-child{color:#c94b52}.dashboard-redesign .table-icon{margin-right:5px}.dashboard-redesign .table-icon svg{width:15px}.dashboard-redesign .allocation-panel .bucket-row{gap:12px;padding:18px 0}.dashboard-redesign .bucket-icon{width:48px;height:48px}.dashboard-bucket-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.dashboard-bucket-heading>b{font-size:14px}.dashboard-bucket-heading>span{color:var(--dash-muted);white-space:nowrap;font-size:11px}.dashboard-redesign .dashboard-bucket-heading strong{color:inherit;font-size:12px}.dashboard-bucket-progress{align-items:center;gap:12px;margin-top:6px;display:flex}.dashboard-redesign .dashboard-bucket-progress .bar{flex:1;height:6px;margin:0}.dashboard-redesign .dashboard-bucket-progress small{text-align:right;width:34px;color:var(--dash-muted);margin:0;font-size:12px}.dashboard-redesign .dashboard-close-card{background:linear-gradient(110deg,#edf9f3,#fcfffd);border-color:#bce8d4;border-radius:14px;margin:0;padding:20px 22px}.dashboard-close-card>svg{color:#009b69}.dashboard-redesign .dashboard-close-card p{color:#37745c}.dashboard-redesign .dashboard-close-card small{margin-top:3px;display:block}.dashboard-redesign .dashboard-close-card .secondary{color:#fff;background:#009b69;border-color:#009b69}.dashboard-redesign .dashboard-close-card .secondary:disabled{opacity:.5}:root[data-theme=dark] .dashboard-redesign{--dash-surface:#182235;--dash-border:#32415b;--dash-muted:#b4c0d3}:root[data-theme=dark] .dashboard-money-hero{color:#edf3ff;background:linear-gradient(110deg,#1b304f,#18273f);border-color:#385a87}:root[data-theme=dark] .hero-wave{color:#294773}:root[data-theme=dark] .hero-money-icon{color:#aacaff;background:#294773}:root[data-theme=dark] .hero-money-copy>strong{color:#91b9ff}:root[data-theme=dark] .hero-money-copy p,:root[data-theme=dark] .hero-money-message small,:root[data-theme=dark] .dashboard-today{color:#b4c0d3}:root[data-theme=dark] .hero-money-message{background:#202d43;border-color:#40516d}:root[data-theme=dark] .dashboard-close-card{background:#183226;border-color:#3a7051}:root[data-theme=dark] .dashboard-close-card p{color:#b9e6c5}:root[data-theme=dark] .dashboard-redesign .upcoming-panel{border-color:#644047}@media (width<=1200px){.dashboard-header-right{gap:12px}.dashboard-today{display:none}.dashboard-redesign .dashboard-mock-summaries .summary-card{grid-template-columns:1fr}.dashboard-redesign .dashboard-mock-summaries .summary-card strong{font-size:25px}}@media (width<=1000px){.dashboard-redesign .dashboard-content{grid-template-columns:1fr}.dashboard-redesign .dashboard-mock-summaries{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-redesign .dashboard-mock-summaries .summary-card{grid-template-columns:44px minmax(0,1fr)}.hero-money-message{min-width:150px}.hero-money-copy p{max-width:330px}}@media (width<=650px){.dashboard-redesign .dashboard-header{flex-direction:column;align-items:flex-start;gap:14px}.dashboard-redesign .dashboard-header h1{font-size:26px}.dashboard-header-right,.dashboard-redesign .header-actions{width:100%}.dashboard-redesign .header-actions button{flex:1;font-size:12px}.dashboard-money-hero{flex-wrap:wrap;gap:12px;padding:20px 16px}.hero-money-icon{width:46px;height:46px}.hero-money-copy{flex:1;min-width:0}.hero-money-copy h2{font-size:17px}.hero-money-copy>strong{font-size:37px}.hero-money-copy p{font-size:11px}.hero-money-message{min-width:0;margin:4px 0 0 58px;padding:10px}.hero-wave{width:100%;height:120px}.dashboard-redesign .dashboard-mock-summaries{gap:12px}.dashboard-redesign .dashboard-mock-summaries .summary-card{grid-template-columns:1fr;gap:9px;padding:16px 12px}.dashboard-redesign .dashboard-mock-summaries .summary-card strong{font-size:23px}.dashboard-redesign .dashboard-mock-summaries .summary-card p{margin-bottom:5px;font-size:12px}.distribution-legend{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.dashboard-distribution{padding:18px}.distribution-cycle{margin-left:0}.dashboard-redesign .dashboard-content .panel{padding:16px}.dashboard-redesign .dashboard-section-heading h2{font-size:16px}.dashboard-redesign .upcoming-table td,.dashboard-redesign .upcoming-table th{padding:13px 3px;font-size:10px}.dashboard-redesign .upcoming-table .badge{padding:4px;font-size:9px}.dashboard-redesign .upcoming-table .table-icon{display:none}.dashboard-redesign .dashboard-close-card{flex-wrap:wrap}.dashboard-redesign .dashboard-close-card .cycle-close-action{width:100%;margin-left:0}.dashboard-redesign .dashboard-close-card .secondary{width:100%}}@media (prefers-color-scheme:dark){:root[data-theme=system] .dashboard-redesign{--dash-surface:#182235;--dash-border:#32415b;--dash-muted:#b4c0d3}:root[data-theme=system] .dashboard-money-hero{color:#edf3ff;background:#1b304f;border-color:#385a87}:root[data-theme=system] .hero-wave{color:#294773}:root[data-theme=system] .hero-money-message{background:#202d43;border-color:#40516d}:root[data-theme=system] .hero-money-copy>strong{color:#91b9ff}:root[data-theme=system] .hero-money-copy p,:root[data-theme=system] .hero-money-message small{color:#b4c0d3}:root[data-theme=system] .dashboard-close-card{background:#183226;border-color:#3a7051}}.dashboard-redesign .hero-money-copy>strong{color:#2451e4}.dashboard-redesign .hero-money-copy>strong.negative-text{color:#c94b52}.dashboard-redesign .distribution-bar{margin-top:20px}:root{--status-pending:#f97316;--status-pending-bg:#fff1df;--status-pending-text:#9a4b00;--status-danger:#dc2626;--status-danger-bg:#fef2f2;--status-danger-text:#b42318;--status-success:#16a34a;--status-success-bg:#ecfdf3;--status-success-text:#157a3d;--status-neutral:#64748b;--status-neutral-bg:#f1f5f9;--status-neutral-text:#475569;--action-primary:#2563eb;--action-primary-bg:#eff6ff;--category-spending:#f97316;--category-rollover:#8b5cf6;--category-savings:#10b981;--category-unassigned:#cbd5e1;color:#15203a;font-synthesis:none;background:#f8fafc;font-family:Noto Sans Thai,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}.app{min-height:100vh;display:flex}.sidebar{background:#fff;border-right:1px solid #e6ebf3;flex-direction:column;flex-shrink:0;width:282px;padding:36px 14px 28px;display:flex}.brand{align-items:center;gap:14px;padding:0 10px 40px;display:flex}.brand>b{color:#fff;background:#0962d7;border-radius:9px;place-items:center;width:50px;height:50px;font-size:28px;display:grid}.brand strong{font-size:23px;display:block}.brand small,.page-title p,.panel-heading p{color:#738097;margin:2px 0 0}.sidebar nav{gap:8px;display:grid}.sidebar nav button{color:#526079;text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;padding:15px;font-size:17px}.sidebar nav i{vertical-align:middle;width:42px;font-size:26px;font-style:normal;display:inline-block}.sidebar nav .active{color:#075fd1;background:#eef5ff;font-weight:600}.tip{color:#23304a;border:1px solid #e3e8f0;border-radius:12px;margin-top:auto;padding:17px}.tip p{color:#738097;font-size:13px;line-height:1.6}main{width:100%;max-width:1400px;margin:0 auto;padding:35px 42px}.page-title{justify-content:space-between;align-items:flex-start;margin-bottom:28px;display:flex}.page-title h1{letter-spacing:-1px;margin:0;font-size:36px}.cycle-banner,.remaining-banner{color:#21314b;background:#fbfdff;border:1px solid #b9d3fb;border-radius:11px;align-items:center;gap:14px;margin-bottom:28px;padding:15px 20px;font-size:17px;display:flex}.remaining-banner{background:#fbfefb;border-color:#cce5d1;justify-content:space-between}.remaining-banner b{color:#268143;font-size:26px}.summary-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:25px;display:grid}.summary-card,.metric{background:#fff;border:1px solid #d8e0ec;border-radius:12px;align-items:center;gap:21px;min-height:165px;padding:25px;display:flex;box-shadow:0 1px 2px #d6e0ee22}.summary-card p{margin:0 0 5px;font-size:16px}.summary-card strong{font-size:34px}.summary-icon{border-radius:50%;place-items:center;width:72px;height:72px;font-size:31px;display:grid}.blue{border-bottom:6px solid #3780e9}.blue .summary-icon{color:#1260ca;background:#e9f1ff}.blue strong,.blue-text b{color:#1260ca}.orange{border-bottom:6px solid #fb9325}.orange .summary-icon{color:#ea7900;background:#fff1dd}.orange strong{color:#df6e00}.green{border-bottom:6px solid #78bd73}.green .summary-icon{color:#238143;background:#eaf8e9}.green strong{color:#258141}.purple-text b{color:#7b42b3}.two-col{grid-template-columns:1fr 1fr;gap:25px;display:grid}.panel{background:#fff;border:1px solid #dce3ee;border-radius:13px;padding:19px;overflow:auto}.panel h2{margin:0 0 15px;font-size:19px}.panel-heading{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.panel-heading h2{margin-bottom:0}table{border-collapse:separate;border-spacing:0;border:1px solid #e2e8f0;border-radius:10px;width:100%;overflow:hidden}th{text-align:left;color:#647187;background:#f8fafc;padding:13px;font-size:13px}td{border-top:1px solid #e6ebf2;padding:13px;font-size:14px}td small{color:#8390a3}.badge{border-radius:999px;padding:4px 10px;font-size:12px}.pending{color:#df6e00;background:#fff1df;border:1px solid #ffd9af}.paid{color:#218344;background:#edfaef;border:1px solid #b5dfbf}.bucket-row,.bucket-card{border:1px solid #e1e7ef;border-radius:10px;align-items:center;gap:14px;margin:8px 0;padding:13px;display:flex}.bucket-row>i,.bucket-card>i{background:#eee;border-radius:50%;place-items:center;width:48px;height:48px;font-size:23px;font-style:normal;display:grid}.bucket-row>div,.bucket-card>div{flex:1}.bucket-row b,.bucket-card b{display:block}.bucket-row small,.bucket-card small{color:#697991;margin-top:2px;display:block}.bucket-row strong{text-align:right;font-size:18px}.bucket-row strong small{font-size:12px}.bar{background:#edf0f4;border-radius:999px;height:5px;margin-top:10px;overflow:hidden}.bar span{border-radius:999px;height:100%;display:block}.allocation-total{background:#f6f8fa;border-radius:8px;justify-content:space-between;margin-top:14px;padding:10px;display:flex}.empty{text-align:center;color:#627087;padding:45px 10px;line-height:1.7}.empty small{color:#98a2b3}.primary,.secondary,.danger,.text,.icon-btn{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:8px;padding:10px 15px}.primary{color:#fff;background:#0864d8}.primary:disabled{cursor:not-allowed;background:#9abbe6}.secondary{color:#26344c;background:#fff;border-color:#cbd5e1}.danger{color:#fff;background:#db3b35}.text{color:#0965d9;background:0 0;padding:4px 6px}.danger-text{color:#d5463e}.table-actions{white-space:nowrap}.metric{min-height:115px;display:block}.metric span{color:#58677d;margin-bottom:9px;display:block}.metric b{font-size:29px}.short .summary-card{min-height:135px}.allocation{grid-template-columns:1.25fr .75fr}.bucket-card strong{font-size:18px}.donut{border-radius:50%;width:170px;height:170px;margin:20px auto;position:relative}.donut:after{content:"";background:#fff;border-radius:50%;position:absolute;inset:37px}.legend p{margin:9px 0;font-size:14px}.legend i{border-radius:50%;width:10px;height:10px;display:inline-block}.legend span{float:right}.overlay{z-index:10;background:#17203377;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:13px;width:min(560px,100%);max-height:90vh;padding:22px;overflow:auto;box-shadow:0 20px 50px #0004}.modal header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal h2{margin:0}.icon-btn{background:0 0;font-size:25px}.form-grid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.modal label,.settings label{color:#334155;gap:6px;font-size:14px;display:grid}.modal input,.modal select,.settings input,.settings select,.add-line input{width:100%;font:inherit;border:1px solid #cdd7e5;border-radius:7px;padding:10px}.actions{justify-content:flex-end;gap:9px;margin-top:22px;display:flex}.actions.left{justify-content:flex-start}.full{width:100%}.income-list{margin-top:12px}.income-list>div{border-bottom:1px solid #e8edf3;align-items:center;gap:10px;padding:11px 0;display:flex}.income-list span{flex:1}.income-list small{color:#8090a4;display:block}.inner-form{border-top:1px solid #e6ebf3;margin-top:15px;padding-top:15px}.inner-form label{margin-top:10px}.add-line{gap:8px;display:flex}.settings{max-width:720px}.settings h2{margin-top:25px}.settings label{margin:15px 0}.settings small{color:#738097}.theme-options{gap:10px;display:flex}.theme-options button{font:inherit;cursor:pointer;background:#fff;border:1px solid #d4dce8;border-radius:8px;padding:13px}.theme-options .selected{color:#0965d9;background:#eef5ff;border-color:#0965d9}@media (width<=900px){.sidebar{width:210px}main{padding:28px 22px}.summary-grid,.two-col,.allocation{grid-template-columns:1fr}.page-title h1{font-size:29px}}@media (width<=650px){.app{display:block}.sidebar{width:auto;padding:15px}.brand{padding-bottom:12px}.sidebar nav{grid-template-columns:repeat(2,1fr)}.sidebar nav button{padding:10px;font-size:13px}.sidebar nav i{width:auto;margin-right:8px}.tip{display:none}main{padding:22px 15px}.page-title{gap:12px}.page-title p{font-size:14px}.summary-grid{gap:12px}.summary-card strong{font-size:28px}.form-grid{grid-template-columns:1fr}.page-title .secondary{padding:8px;font-size:13px}}:root[data-theme=dark]{color:#e7eefb;background:#111827}:root[data-theme=dark] .sidebar,:root[data-theme=dark] .panel,:root[data-theme=dark] .summary-card,:root[data-theme=dark] .metric,:root[data-theme=dark] .modal{background:#182235;border-color:#32415b}:root[data-theme=dark] .sidebar nav button,:root[data-theme=dark] .tip,:root[data-theme=dark] .panel-heading p,:root[data-theme=dark] .page-title p,:root[data-theme=dark] .summary-card p,:root[data-theme=dark] .metric span{color:#bdc9da}:root[data-theme=dark] .cycle-banner,:root[data-theme=dark] .remaining-banner,:root[data-theme=dark] th,:root[data-theme=dark] .allocation-total{background:#202d43}:root[data-theme=dark] td,:root[data-theme=dark] .income-list>div{border-color:#32415b}:root[data-theme=dark] .secondary,:root[data-theme=dark] .theme-options button{color:#e7eefb;background:#202d43;border-color:#40506b}@media (prefers-color-scheme:dark){:root[data-theme=system]{color:#e7eefb;background:#111827}:root[data-theme=system] .sidebar,:root[data-theme=system] .panel,:root[data-theme=system] .summary-card,:root[data-theme=system] .metric,:root[data-theme=system] .modal{background:#182235;border-color:#32415b}}.dashboard{max-width:1180px}.dashboard-header{margin-bottom:24px}.dashboard-header h1{letter-spacing:-.6px;font-size:32px}.income-action{align-items:center;gap:8px;padding:11px 17px;font-weight:600;display:inline-flex}.cycle-card{background:#f5f9ff;border:1px solid #cfe0fb;border-radius:12px;align-items:center;gap:14px;margin-bottom:24px;padding:16px 18px;display:flex}.cycle-icon{color:#1764cf;background:#e2efff;border-radius:10px;place-items:center;width:44px;height:44px;display:grid}.cycle-card p{color:#5a6b85;margin:0 0 3px;font-size:13px}.cycle-card strong{color:#26344b;font-size:16px}.cycle-card strong span{color:#8ea0bc;padding:0 8px}.dashboard-summaries{gap:16px;margin-bottom:24px}.dashboard-summaries .summary-card{border-radius:12px;min-height:156px;padding:24px}.dashboard-summaries .summary-card strong{letter-spacing:-.8px;font-size:34px}.dashboard-summaries .summary-card p{color:#506078;font-size:14px;font-weight:600}.dashboard-summaries .summary-icon{width:54px;height:54px}.dashboard-content{grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);align-items:start;gap:20px;display:grid}.dashboard-content .panel{padding:20px}.dashboard-content .panel h2{align-items:center;gap:9px;margin-bottom:16px;font-size:19px;display:flex}.dashboard-content .panel h2 svg{color:#52627a}.upcoming-table .amount{text-align:right;white-space:nowrap;font-weight:700}.upcoming-table th:nth-child(3){text-align:right}.table-icon{vertical-align:middle;color:#6f7f97;margin-right:7px;display:inline-flex}.allocation-panel .bucket-row{border:0;border-bottom:1px solid #e9edf3;border-radius:0;gap:12px;margin:0;padding:13px 0}.allocation-panel .bucket-row:last-of-type{border-bottom:0}.bucket-icon{border-radius:50%;flex-shrink:0;place-items:center;width:42px;height:42px;display:grid}.allocation-panel .bucket-row strong{color:#26344c;font-size:16px}.allocation-panel .bucket-row strong small{color:#7b8798;margin-top:3px;font-weight:500}.allocation-panel .bar{height:5px;margin-top:8px}.dashboard-cta{color:#1764cf;cursor:pointer;background:#fff;border:1px solid #dbe5f2;border-radius:8px;justify-content:center;align-items:center;gap:5px;width:100%;margin-top:16px;padding:10px;font:600 14px inherit;display:flex}.dashboard-cta:hover{background:#f6f9fe}.sidebar{padding-top:30px}.sidebar nav button{align-items:center;gap:12px;height:46px;padding:12px 14px;font-size:15px;display:flex}.sidebar nav i{width:20px;font-size:inherit;display:inline-flex}.tip{display:none}@media (width<=1000px){.dashboard-content{grid-template-columns:1fr}.dashboard-summaries{grid-template-columns:repeat(2,1fr)}.dashboard-summaries .summary-card:last-child{grid-column:span 2}}@media (width<=650px){.dashboard-summaries{grid-template-columns:1fr}.dashboard-summaries .summary-card:last-child{grid-column:auto}.dashboard-header{align-items:center}.dashboard-header h1{font-size:28px}.income-action{padding:9px 11px;font-size:13px}.cycle-card strong{font-size:14px}.cycle-card strong span{padding:0 3px}.upcoming-table{min-width:500px}}.dashboard-content{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.dashboard-section-heading{margin-bottom:12px}.dashboard-content .dashboard-section-heading h2{margin:0}.dashboard-section-heading p{color:#7b8798;margin:3px 0 0 29px;font-size:12px}.allocation-panel .bucket-row>div>small{margin-top:5px;font-size:11px}.allocation-panel .bar{height:6px}:root[data-theme=dark] .dashboard-section-heading p{color:#b4c0d3}.expenses-page{max-width:1180px}.expenses-header{margin-bottom:20px}.expenses-header h1{letter-spacing:-.6px;font-size:32px}.expense-add,.expense-empty .primary{align-items:center;gap:8px;padding:11px 17px;font-weight:600;display:inline-flex}.expenses-page div.expense-tabs{background:#eef3f9;border:1px solid #dce5f1;border-radius:10px;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;width:100%;margin:0 0 20px;padding:4px;display:grid}.expenses-page .expense-tabs button{color:#627087;min-width:0;min-height:50px;font:inherit;text-align:center;cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;gap:9px;padding:10px 12px;transition:background .16s,color .16s;display:flex;position:relative}.expenses-page .expense-tabs button>svg{flex:none}.expenses-page .expense-tabs button b{white-space:nowrap;font-size:14px}.expenses-page .expense-tabs button:hover{color:#255cae;background:#f8fbff}.expenses-page .expense-tabs button.active{color:#1764cf;background:#fff}.expenses-page .expense-tabs button.active:after{content:"";background:#2f67d6;border-radius:999px;height:3px;position:absolute;bottom:3px;left:12px;right:12px}.expenses-page .expense-tabs button:focus-visible{outline-offset:-2px;outline:2px solid #2f67d6}.expenses-list{padding:20px;container:expense-list/inline-size}.expenses-list .panel-heading{margin-bottom:16px}.expenses-list .panel-heading h2{margin:0;font-size:19px}.expense-table-wrap{overflow-x:auto}.expenses-page .expense-table{table-layout:fixed;border:0;border-radius:0;min-width:820px}.expense-table th:nth-child(6){width:19%}.expense-table td{vertical-align:middle;font-size:14px}.expense-date b{font-weight:600}.expense-date small{color:#7c899b;margin-top:2px}.expense-meta-label{display:none}.expense-name{min-width:0}.expense-name-copy b,.expense-name-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.expense-name-copy b{font-size:14px}.expense-name-copy small{margin-top:2px}.expense-amount{text-align:right;white-space:nowrap;font-weight:700}.expense-table th:nth-child(3){text-align:right}.expense-status .badge{white-space:nowrap;display:inline-flex}.expense-payment-action{white-space:nowrap}.expense-actions{white-space:nowrap;align-items:center;gap:6px;display:flex}.expense-manage-action{cursor:pointer;background:#fff;border:1px solid;border-radius:7px;justify-content:center;align-items:center;gap:5px;padding:7px 9px;font:600 12px inherit;display:inline-flex}.expense-manage-action.edit{color:#2365bf;background:#f7faff;border-color:#c9dcf6}.expense-manage-action.edit:hover{background:#edf5ff}.expense-manage-action.delete{color:#c8433d;background:#fff8f7;border-color:#f0c8c5}.expense-manage-action.delete:hover{background:#fff0ef}.expense-empty{text-align:center;color:#627087;flex-direction:column;align-items:center;padding:42px 20px;display:flex}.expense-empty>svg{color:#2f67d6;box-sizing:content-box;background:#edf3ff;border-radius:50%;padding:13px}.expense-empty h3{color:#26344b;margin:14px 0 5px;font-size:17px}.expense-empty .primary,.expense-empty .primary svg{margin:0}@media (width<=1120px){.expenses-page .expense-table{min-width:820px}.expense-table th,.expense-table td{padding-left:9px;padding-right:9px}.expense-manage-action{padding-inline:7px}}@media (width<=650px){.expenses-header{align-items:center}.expenses-header h1{font-size:28px}.expense-add{padding:9px 11px;font-size:13px}.expenses-page div.expense-tabs{scrollbar-width:thin;width:100%;display:flex;overflow-x:auto}.expenses-page .expense-tabs button{flex:none;min-height:48px;padding-inline:16px}.expenses-list{padding:15px}}@container expense-list (width<=760px){.expenses-page .expense-table-wrap{overflow:visible}.expenses-page .expense-table{background:0 0;border:0;width:100%;min-width:0;display:block;overflow:visible}.expense-table thead{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.expense-table tbody{gap:12px;display:grid}.expense-table tr{background:#fff;border:1px solid #e1e7ef;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name amount""date date""status status""manage manage";gap:12px 14px;padding:15px;display:grid;box-shadow:0 1px 2px #d6e0ee22}.expense-table td{min-width:0;display:block;border:0!important;padding:0!important}.expense-table .expense-name{grid-area:name;align-items:center;display:flex}.expenses-page .expense-table .table-icon{flex:none;display:inline-flex}.expense-name-copy{max-width:calc(100% - 31px)}.expense-table .expense-amount{grid-area:amount;align-self:center;font-size:16px}.expense-table .expense-date{color:#5c6b80;grid-area:date;align-items:center;display:flex}.expense-date b{font-size:13px}.expense-table .expense-status{grid-area:status;justify-content:space-between;align-items:center;gap:8px;display:flex}.expenses-page .expense-status .payment-status-button{white-space:normal;min-height:40px;font-size:12px}.expenses-page .expense-status .payment-status-button svg{flex:none;display:block}.expense-table .expense-manage{grid-area:manage}.expense-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.expense-manage-action{width:100%;min-height:38px}.expense-empty{padding-block:34px}}:root[data-theme=dark] .expense-table tr{border-color:#34435d}@container expense-list (width<=760px){:root[data-theme=dark] .expense-table tr{background:#182235}}@media (prefers-color-scheme:dark){@container expense-list (width<=760px){:root[data-theme=system] .expense-table tr{background:#182235;border-color:#34435d}}}:root[data-theme=dark] .expenses-page .expense-tabs{background:#111b2a;border-color:#32415b}:root[data-theme=dark] .expenses-page .expense-tabs button{color:#bdc9da}:root[data-theme=dark] .expenses-page .expense-tabs button:hover{color:#dce8fb;background:#202d43}:root[data-theme=dark] .expenses-page .expense-tabs button.active{color:#8fc0ff;background:#243550}:root[data-theme=dark] .expenses-page .expense-tabs button.active:after{background:#6ca8ff}:root[data-theme=dark] .expense-manage-action.edit{color:#a9ccff;background:#1d304c;border-color:#385a87}:root[data-theme=dark] .expense-manage-action.delete{color:#ffaaa6;background:#352020;border-color:#724644}@media (prefers-color-scheme:dark){:root[data-theme=system] .expenses-page .expense-tabs{background:#111b2a;border-color:#32415b}:root[data-theme=system] .expenses-page .expense-tabs button{color:#bdc9da}:root[data-theme=system] .expenses-page .expense-tabs button:hover{color:#dce8fb;background:#202d43}:root[data-theme=system] .expenses-page .expense-tabs button.active{color:#8fc0ff;background:#243550}:root[data-theme=system] .expenses-page .expense-tabs button.active:after{background:#6ca8ff}:root[data-theme=system] .expense-manage-action.edit{color:#a9ccff;background:#1d304c;border-color:#385a87}:root[data-theme=system] .expense-manage-action.delete{color:#ffaaa6;background:#352020;border-color:#724644}}.allocation-page{max-width:1180px}.allocation-header{margin-bottom:24px}.allocation-header h1{letter-spacing:-.6px;font-size:32px}.allocation-hero{background:#f5fcf6;border:1px solid #c9e5d0;border-radius:12px;align-items:center;gap:14px;margin-bottom:24px;padding:16px 18px;display:flex}.allocation-hero-icon{color:#288046;background:#e3f5e6;border-radius:11px;place-items:center;width:46px;height:46px;display:grid}.allocation-hero p{color:#365847;margin:0;font-size:14px;font-weight:600}.allocation-hero>div{flex:1}.allocation-hero strong{color:#07853d;letter-spacing:-.6px;font-size:28px}.allocation-summaries{gap:16px;margin-bottom:24px}.allocation-summaries .summary-card{border-radius:12px;min-height:156px;padding:24px}.allocation-summaries .summary-icon{width:54px;height:54px}.allocation-summaries .summary-card p{color:#506078;font-size:14px;font-weight:600}.allocation-summaries .summary-card strong{letter-spacing:-.8px;font-size:34px}.allocation-summaries .summary-card small{color:#728096;margin-top:5px;font-size:13px;display:block}.summary-card.purple{border-bottom:5px solid #8057c7}.allocation-layout{grid-template-columns:minmax(0,1.35fr) minmax(300px,.75fr);align-items:start;gap:20px;display:grid}.money-pools,.allocation-overview{padding:20px}.money-pools .panel-heading{margin-bottom:16px}.money-pools .panel-heading h2,.allocation-overview h2{margin:0;font-size:19px}.money-pools .panel-heading p{font-size:13px}.pool-add,.pool-empty .primary{align-items:center;gap:7px;padding:10px 14px;font-weight:600;display:inline-flex}.money-pool{border-bottom:1px solid #e8edf3;align-items:center;gap:13px;padding:14px 0;display:flex}.money-pool:last-of-type{border-bottom:0}.pool-icon{border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.pool-detail{flex:1;min-width:0}.pool-detail b{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:15px;display:block;overflow:hidden}.pool-detail small{color:#718097;margin-top:2px;font-size:12px;display:block}.pool-detail .bar{height:5px;margin-top:9px}.pool-amount{text-align:right;white-space:nowrap;min-width:95px;font-size:16px}.pool-actions{gap:6px;display:flex}.allocation-overview .donut{width:166px;height:166px;margin:22px auto 20px}.allocation-overview .donut:after{inset:37px}.legend{gap:2px;display:grid}.legend p{border-bottom:1px solid #edf0f4;align-items:center;gap:8px;margin:0;padding:8px 0;font-size:13px;display:flex}.legend p:last-child{border-bottom:0}.legend i{flex:0 0 9px;width:9px;height:9px}.legend-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.legend strong{color:#314056;white-space:nowrap;margin-left:auto;font-size:13px}.allocation-total{margin-top:14px;padding:12px}.allocation-total span{font-weight:600}.pool-empty,.allocation-chart-empty{text-align:center;color:#627087;flex-direction:column;align-items:center;padding:42px 18px;display:flex}.pool-empty>svg,.allocation-chart-empty>svg{color:#7443b8;box-sizing:content-box;background:#f0e9fc;border-radius:50%;padding:13px}.pool-empty h3{color:#26344b;margin:14px 0 5px;font-size:17px}.pool-empty p,.allocation-chart-empty p{margin:0 0 18px;font-size:14px}.allocation-chart-empty p{margin:12px 0 0}.pool-empty .primary,.pool-empty .primary svg{margin:0}@media (width<=1000px){.allocation-layout{grid-template-columns:1fr}.allocation-summaries{grid-template-columns:repeat(2,1fr)}.allocation-summaries .summary-card:last-child{grid-column:span 2}}@media (width<=650px){.allocation-summaries{grid-template-columns:1fr}.allocation-summaries .summary-card:last-child{grid-column:auto}.allocation-header h1{font-size:28px}.allocation-hero strong{font-size:23px}.money-pools,.allocation-overview{padding:15px}.pool-amount{min-width:auto;font-size:14px}.pool-actions{align-self:flex-start}.pool-add{padding:9px;font-size:0}.pool-add svg{width:18px;height:18px}.money-pool{align-items:flex-start}}.settings-page{max-width:780px}.settings-header{margin-bottom:24px}.settings-header h1{letter-spacing:-.6px;font-size:32px}.settings-card{margin-bottom:18px;padding:22px 24px}.settings-card-header{align-items:center;gap:12px;margin-bottom:20px;display:flex}.settings-section-icon{border-radius:10px;place-items:center;width:40px;height:40px;display:grid}.settings-section-icon.blue{color:#1764cf;background:#e9f2ff}.settings-section-icon.purple{color:#7443b8;background:#f0e9fc}.settings-section-icon.green{color:#258044;background:#e8f7eb}.settings-card-header h2{margin:0;font-size:19px}.settings-card-header p{color:#718097;margin:2px 0 0;font-size:13px}.settings-field{color:#334155;gap:7px;max-width:220px;font-size:14px;font-weight:600;display:grid}.settings-field input,.settings-field select{color:#1f2e46;height:42px;font:inherit;background:#fff;border:1px solid #cdd9e8;border-radius:8px;padding:9px 11px}.settings-field input:focus,.settings-field select:focus{border-color:#216bd2;outline:3px solid #dceaff}.settings-field small{color:#7a879a;font-size:12px;font-weight:400;line-height:1.45}.currency-field{max-width:360px}.cycle-preview{color:#1764cf;background:#f5f9ff;border:1px solid #cfe0fb;border-radius:10px;align-items:center;gap:10px;margin-top:20px;padding:13px 14px;display:flex}.cycle-preview>div{gap:2px;display:grid}.cycle-preview span{color:#647896;font-size:12px}.cycle-preview strong{color:#263c63;font-size:14px}.settings-label{color:#334155;align-items:center;gap:7px;margin:21px 0 9px;font-size:14px;font-weight:600;display:flex}.settings-label svg{color:#1764cf}.theme-options{flex-wrap:wrap;gap:9px;display:flex}.theme-options button{color:#34445d;cursor:pointer;background:#fff;border:1px solid #d4dfea;border-radius:8px;align-items:center;gap:8px;min-height:42px;padding:10px 14px;font:600 14px inherit;display:inline-flex}.theme-options button:hover{background:#f6f9fe}.theme-options .selected{color:#0d61d3;background:#edf5ff;border-color:#1b6ddd;box-shadow:0 0 0 1px #1b6ddd}.data-action{justify-content:space-between;align-items:center;gap:18px;padding:4px 0 20px;display:flex}.data-action b{font-size:15px}.data-action p{color:#718097;margin:3px 0 0;font-size:13px}.data-action .secondary,.danger-zone .danger{white-space:nowrap;align-items:center;gap:7px;display:inline-flex}.danger-zone{background:snow;border:1px solid #f3c9c7;border-radius:10px;justify-content:space-between;align-items:center;gap:18px;padding:17px;display:flex}.danger-zone span{color:#b83b36;align-items:center;gap:7px;font-size:14px;font-weight:700;display:flex}.danger-zone p{color:#8d6260;margin:4px 0 0;font-size:12px}.danger-zone .danger{padding:10px 13px}@media (width<=650px){.settings-card{padding:18px}.settings-header h1{font-size:28px}.data-action,.danger-zone{flex-direction:column;align-items:flex-start}.data-action .secondary,.danger-zone .danger{justify-content:center;width:100%}.settings-field,.currency-field{max-width:100%}}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #cfe2ff}.primary:focus-visible{outline-color:#8bb9ff}.modal input:focus,.modal select:focus,.add-line input:focus{border-color:#216bd2;outline:3px solid #dceaff}.modal{overscroll-behavior:contain}.modal h2{font-size:20px}.modal label{font-weight:600}.modal label small,.empty small,.settings-field small{font-size:12px}.upcoming-table{table-layout:fixed}.upcoming-table th:nth-child(3){width:20%}.upcoming-table td:nth-child(2){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.upcoming-table td:nth-child(2) .table-icon{flex:none}.bucket-row>div{min-width:0}.bucket-row b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cycle-card p,.dashboard-summaries .summary-card p,.expense-summaries .summary-card p,.allocation-summaries .summary-card p{font-size:14px}.page-title p{font-size:15px}.panel-heading p,.settings-card-header p,.money-pools .panel-heading p{font-size:13px}main{flex:auto;width:auto;min-width:0}.expenses-page,.expenses-list,.expense-table-wrap{min-width:0}.expenses-list{overflow:visible}.expense-table-wrap{max-width:100%;overflow:auto hidden}.modal-add{justify-content:center;align-items:center;gap:7px;display:inline-flex}:root[data-theme=dark] body,:root[data-theme=dark] .app{background:#111827}:root[data-theme=dark] .page-title h1,:root[data-theme=dark] .panel h2,:root[data-theme=dark] .summary-card strong,:root[data-theme=dark] .cycle-card strong,:root[data-theme=dark] .settings-card-header h2,:root[data-theme=dark] .settings-field,:root[data-theme=dark] .settings-label,:root[data-theme=dark] .pool-detail b,:root[data-theme=dark] .legend strong,:root[data-theme=dark] .allocation-panel .bucket-row strong,:root[data-theme=dark] .expense-name b,:root[data-theme=dark] .expense-table td:nth-child(4) b{color:#edf3ff}:root[data-theme=dark] .cycle-card,:root[data-theme=dark] .cycle-preview{background:#1d304c;border-color:#385a87}:root[data-theme=dark] .cycle-card strong,:root[data-theme=dark] .cycle-preview strong{color:#edf3ff}:root[data-theme=dark] .allocation-hero{background:#183226;border-color:#3a7051}:root[data-theme=dark] .allocation-hero p{color:#b9e6c5}:root[data-theme=dark] .settings-field input,:root[data-theme=dark] .settings-field select,:root[data-theme=dark] .modal input,:root[data-theme=dark] .modal select,:root[data-theme=dark] .add-line input{color:#edf3ff;background:#101b2b;border-color:#40516d}:root[data-theme=dark] table,:root[data-theme=dark] .expense-table-wrap{border-color:#34435d}:root[data-theme=dark] th,:root[data-theme=dark] .allocation-total,:root[data-theme=dark] .dashboard-cta{color:#dce8fb;background:#202d43;border-color:#40516d}:root[data-theme=dark] td,:root[data-theme=dark] .money-pool,:root[data-theme=dark] .legend p,:root[data-theme=dark] .expense-table td{border-color:#34435d}:root[data-theme=dark] .expense-category,:root[data-theme=dark] .pool-detail small,:root[data-theme=dark] .settings-card-header p,:root[data-theme=dark] .data-action p,:root[data-theme=dark] .settings-field small{color:#b4c0d3}:root[data-theme=dark] .bar{background:#34435d}:root[data-theme=dark] .payment-action,:root[data-theme=dark] .row-icon-button,:root[data-theme=dark] .more-popover,:root[data-theme=dark] .more-popover button{color:#dce8fb;background:#202d43;border-color:#40516d}:root[data-theme=dark] .payment-action.mark-paid{color:#c8f0d2;background:#1e402c;border-color:#497d5d}:root[data-theme=dark] .more-popover button{color:#ffaaa6}:root[data-theme=dark] .danger-zone{background:#352020;border-color:#724644}:root[data-theme=dark] .danger-zone p{color:#f0b9b5}:root[data-theme=dark] .donut:after{background:#182235}@media (prefers-color-scheme:dark){:root[data-theme=system] body,:root[data-theme=system] .app{background:#111827}:root[data-theme=system] .page-title h1,:root[data-theme=system] .panel h2,:root[data-theme=system] .summary-card strong,:root[data-theme=system] .cycle-card strong,:root[data-theme=system] .settings-card-header h2,:root[data-theme=system] .settings-field,:root[data-theme=system] .settings-label,:root[data-theme=system] .pool-detail b,:root[data-theme=system] .legend strong,:root[data-theme=system] .allocation-panel .bucket-row strong,:root[data-theme=system] .expense-name b,:root[data-theme=system] .expense-table td:nth-child(4) b{color:#edf3ff}:root[data-theme=system] .cycle-card,:root[data-theme=system] .cycle-preview{background:#1d304c;border-color:#385a87}:root[data-theme=system] .cycle-card strong,:root[data-theme=system] .cycle-preview strong{color:#edf3ff}:root[data-theme=system] .allocation-hero{background:#183226;border-color:#3a7051}:root[data-theme=system] .allocation-hero p{color:#b9e6c5}:root[data-theme=system] .settings-field input,:root[data-theme=system] .settings-field select,:root[data-theme=system] .modal input,:root[data-theme=system] .modal select,:root[data-theme=system] .add-line input{color:#edf3ff;background:#101b2b;border-color:#40516d}:root[data-theme=system] table,:root[data-theme=system] .expense-table-wrap{border-color:#34435d}:root[data-theme=system] th,:root[data-theme=system] .allocation-total,:root[data-theme=system] .dashboard-cta{color:#dce8fb;background:#202d43;border-color:#40516d}:root[data-theme=system] td,:root[data-theme=system] .money-pool,:root[data-theme=system] .legend p,:root[data-theme=system] .expense-table td{border-color:#34435d}:root[data-theme=system] .expense-category,:root[data-theme=system] .pool-detail small,:root[data-theme=system] .settings-card-header p,:root[data-theme=system] .data-action p,:root[data-theme=system] .settings-field small{color:#b4c0d3}:root[data-theme=system] .bar{background:#34435d}:root[data-theme=system] .payment-action,:root[data-theme=system] .row-icon-button,:root[data-theme=system] .more-popover,:root[data-theme=system] .more-popover button{color:#dce8fb;background:#202d43;border-color:#40516d}:root[data-theme=system] .payment-action.mark-paid{color:#c8f0d2;background:#1e402c;border-color:#497d5d}:root[data-theme=system] .more-popover button{color:#ffaaa6}:root[data-theme=system] .danger-zone{background:#352020;border-color:#724644}:root[data-theme=system] .danger-zone p{color:#f0b9b5}:root[data-theme=system] .donut:after{background:#182235}}.v2-dashboard-summaries{grid-template-columns:repeat(4,minmax(0,1fr))}.event-type{color:var(--muted);font-weight:400;display:block}.expense-tabs{gap:8px;margin:-6px 0 18px;display:flex}.expense-tabs button{border:1px solid var(--border);background:var(--card);color:var(--muted);border-radius:8px;padding:9px 15px;font-weight:700}.expense-tabs button.active{color:var(--primary);border-color:var(--primary);background:var(--primary-soft)}.month-switch{justify-content:center;align-items:center;gap:16px;margin:0 0 20px;display:flex}.month-switch button{border:1px solid var(--border);background:var(--card);width:36px;height:36px;color:var(--primary);border-radius:8px;place-items:center;display:grid}.calendar-page{max-width:1120px}.calendar-grid{padding:0;overflow:hidden}.calendar-week{background:var(--surface);border-bottom:1px solid var(--border)}.calendar-day{text-align:left;background:var(--card);border:0;border-right:1px solid var(--border);border-bottom:1px solid var(--border);min-height:116px;color:var(--text);flex-direction:column;gap:4px;padding:8px;display:flex}.calendar-day:nth-child(7n){border-right:0}.calendar-day>span{font-weight:700}.calendar-day.outside{background:var(--surface);color:var(--muted)}.calendar-day i{text-overflow:ellipsis;white-space:nowrap;color:#c95f00;background:#fff2e6;border-radius:4px;padding:3px 5px;font-size:.72rem;font-style:normal;line-height:1.25;overflow:hidden}.calendar-day i.planned{color:#6941c6;background:#f1ebff}.calendar-day small{color:var(--muted)}.calendar-detail{border-bottom:1px solid var(--border);justify-content:space-between;gap:12px;padding:12px 0;display:flex}.calendar-detail span{gap:3px;display:grid}.calendar-detail small{color:var(--muted)}@media (width<=1100px){.v2-dashboard-summaries{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.v2-dashboard-summaries{grid-template-columns:1fr}.calendar-grid{overflow-x:auto}.calendar-week,.calendar-days{min-width:700px}.calendar-day{min-height:100px}.expense-tabs{overflow-x:auto}.expense-tabs button{white-space:nowrap}}html,body,.app{max-width:100%;overflow-x:hidden}.badge.overdue{color:#b93631;background:#fff0ef;border:1px solid #f3c1be}.savings-strip{color:#334155;background:#fff;border:1px solid #dbe4ef;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;margin:-8px 0 24px;padding:12px 16px;display:flex}.savings-strip>span{align-items:center;gap:8px;min-width:0;display:flex}.savings-strip svg{color:#6540b8}.savings-strip small{color:#7b8798;font-size:12px}.savings-strip strong{color:#6540b8;white-space:nowrap;font-size:18px}.month-close-summary{gap:14px;display:grid}.month-close-summary>span{color:#526079;background:#f6f8fb;border-radius:9px;grid-template-columns:1fr auto;align-items:center;gap:3px 14px;padding:13px 14px;display:grid}.month-close-summary>span strong{color:#1f2e46;font-size:22px}.month-close-summary>span small{color:#7b8798;grid-column:2}.month-close-summary>.month-close-pending{background:#fff8ef;border:1px solid #ffe0b8}.month-close-summary>.month-close-pending strong{color:#c86808}.month-close-summary p{color:#647187;margin:0;font-size:14px;line-height:1.6}.expense-name-copy{vertical-align:middle;flex-direction:column;max-width:calc(100% - 48px);display:inline-flex}.expense-name-copy b,.expense-category{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.expense-inline-category{display:none}.expense-date b,.expense-date small{display:block}.calendar-legend{color:#69778c;flex-wrap:wrap;justify-content:flex-end;gap:8px 16px;margin:-8px 0 12px;font-size:12px;display:flex}.calendar-legend span{align-items:center;gap:6px;display:inline-flex}.calendar-legend i{background:#ed870e;border-radius:50%;width:8px;height:8px}.calendar-legend i.planned{background:#7850bd}.calendar-legend i.paid{background:#2b914d}.calendar-legend i.overdue{background:#cf4a43}.calendar-day{min-width:0;min-height:104px}.calendar-day i{border:1px solid #0000;justify-content:space-between;align-items:center;gap:5px;max-width:100%;display:flex}.calendar-day i span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.calendar-day i b{font-size:inherit;white-space:nowrap}.calendar-day i.overdue{color:#b93631;background:#fff0ef;border-color:#f6d0cd}.calendar-day i.paid{color:#188346;background:#e8f7ec}.calendar-detail>span{flex:1;min-width:0}.calendar-detail>strong{white-space:nowrap;align-self:center}.calendar-detail>.payment-action{align-self:center}@media (width<=1120px){.v2-dashboard-summaries{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-summaries .summary-card:last-child{grid-column:auto}.expense-table{min-width:580px}.expense-table .category-column{display:none}.expense-inline-category{text-overflow:ellipsis;white-space:nowrap;max-width:190px;margin-top:2px;display:block;overflow:hidden}.expense-table th,.expense-table td{padding-left:9px;padding-right:9px}.expense-name{min-width:145px;max-width:210px}.expense-actions{gap:4px}.payment-action{padding-inline:7px}.expense-actions .danger-text{padding-inline:2px}.upcoming-table .badge{padding-inline:6px}}@media (width<=760px){.expense-table{min-width:720px}.calendar-day{min-height:96px}}@media (width<=800px){.v2-dashboard-summaries{grid-template-columns:1fr}}@media (width<=650px){.savings-strip{align-items:flex-start}.savings-strip>span{flex-wrap:wrap;align-items:flex-start}.savings-strip small{flex-basis:100%;padding-left:26px}.calendar-legend{justify-content:flex-start}.calendar-detail{flex-wrap:wrap}.calendar-detail>.payment-action{flex-basis:100%}}:root[data-theme=dark] .savings-strip{color:#dce8fb;background:#182235;border-color:#32415b}:root[data-theme=dark] .savings-strip small,:root[data-theme=dark] .month-close-summary p{color:#b4c0d3}:root[data-theme=dark] .month-close-summary>span{color:#bdc9da;background:#202d43}:root[data-theme=dark] .month-close-summary>span strong{color:#edf3ff}:root[data-theme=dark] .month-close-summary>.month-close-pending{background:#342719;border-color:#684a28}:root[data-theme=dark] .calendar-day i.overdue,:root[data-theme=dark] .badge.overdue{color:#ffaaa6;background:#3c2022;border-color:#744144}@media (prefers-color-scheme:dark){:root[data-theme=system] .savings-strip{color:#dce8fb;background:#182235;border-color:#32415b}:root[data-theme=system] .savings-strip small,:root[data-theme=system] .month-close-summary p{color:#b4c0d3}:root[data-theme=system] .month-close-summary>span{color:#bdc9da;background:#202d43}:root[data-theme=system] .month-close-summary>span strong{color:#edf3ff}:root[data-theme=system] .month-close-summary>.month-close-pending{background:#342719;border-color:#684a28}:root[data-theme=system] .calendar-day i.overdue,:root[data-theme=system] .badge.overdue{color:#ffaaa6;background:#3c2022;border-color:#744144}}.upcoming-table{table-layout:fixed;min-width:610px}.upcoming-table th:first-child{width:20%}.upcoming-table th:nth-child(2){width:27%}.upcoming-table th:nth-child(3){text-align:right;width:18%}.upcoming-table th:nth-child(4){width:19%}.upcoming-table td,.upcoming-table th{padding:14px 10px}.upcoming-table td{font-size:13px}.upcoming-table .upcoming-paid{white-space:nowrap;padding:5px 7px}.upcoming-action{cursor:pointer;border-radius:7px;justify-content:center;align-items:center;gap:5px;width:100%;min-height:32px;padding:6px 8px;font:700 12px inherit;transition:background .15s,border-color .15s,transform .15s;display:inline-flex}.upcoming-action:hover{transform:translateY(-1px)}.upcoming-action.confirm-payment{color:#fff;background:#0864d8;border:1px solid #075fd1;box-shadow:0 2px 5px #0864d82b}.upcoming-action.confirm-payment:hover{background:#0756bb}.upcoming-action.undo-payment{color:#64748b;background:#fff;border:1px solid #cbd5e1}.savings-strip{background:linear-gradient(105deg,#fffdf4 0%,#fff8dc 55%,#f7f1ff 100%);border-color:#ead58c;padding:14px 18px;position:relative;overflow:hidden;box-shadow:0 4px 14px #d8b94c1f}.savings-strip:after{content:"";opacity:.75;background:#fff7c4;border-radius:50%;width:92px;height:92px;position:absolute;top:-34px;right:92px}.savings-strip .savings-treasure{z-index:1;align-items:center;gap:11px;display:flex;position:relative}.savings-treasure-icon{color:#835d00;background:linear-gradient(145deg,#fff8c9,#f3c451);border:1px solid #efd47c;border-radius:12px;place-items:center;width:42px;height:42px;display:grid;position:relative;box-shadow:inset 0 1px #fff,0 3px 8px #d5a51f33}.savings-treasure-icon svg:last-child{color:#8b5cc7;position:static}.savings-copy{gap:1px;display:grid}.savings-copy b{color:#493b18;font-size:15px}.savings-strip .savings-copy small{color:#857348;font-size:11px}.savings-strip>strong{z-index:1;text-align:right;color:#76520a;font-size:21px;display:grid;position:relative}.savings-strip>strong small{color:#9a824e;font-size:10px;font-weight:600}.income-direct-form{gap:13px;display:grid}.income-direct-form h3{margin:2px 0 4px;font-size:18px}.income-page{max-width:1180px}.income-page-header h1{font-size:32px}.income-page-add{align-items:center;gap:7px;display:inline-flex}.income-summary{grid-template-columns:minmax(280px,380px)}.income-summary .summary-card{min-height:140px}.income-summary small{color:#718097;margin-top:4px;font-size:12px;display:block}.income-table{border:0;border-radius:0;min-width:720px}.income-table .amount{text-align:right;white-space:nowrap;font-weight:700}.income-table th:nth-child(3){text-align:right}.income-name{align-items:center;gap:8px;display:flex}.income-name span{color:#2f67d6;background:#edf3ff;border-radius:8px;place-items:center;width:31px;height:31px;display:grid}@media (width>=1301px){.dashboard-content{grid-template-columns:minmax(620px,1.25fr) minmax(330px,.75fr)}}@media (width<=1300px){.dashboard-content{grid-template-columns:1fr}}@media (width<=1000px){.upcoming-table{min-width:0}.upcoming-table td,.upcoming-table th{padding:11px 6px;font-size:11px}.upcoming-table .table-icon{display:none}.upcoming-action{white-space:normal;padding:5px 4px;font-size:11px;line-height:1.2}.upcoming-action svg{display:none}}@media (width<=650px){.savings-strip .savings-copy small{display:none}.income-summary{grid-template-columns:1fr}.income-page-header{align-items:center}.income-page-add{padding:9px 10px;font-size:13px}}:root[data-theme=dark] .savings-strip{background:linear-gradient(105deg,#302a18,#332d1d 55%,#29233a);border-color:#66572d}:root[data-theme=dark] .savings-copy b,:root[data-theme=dark] .savings-strip>strong{color:#ffe29a}:root[data-theme=dark] .savings-strip .savings-copy small,:root[data-theme=dark] .savings-strip>strong small{color:#cfbd91}.calendar-page{--primary:#2f67d6;--primary-soft:#eef5ff;--border:#dce3ee;--card:#fff;--surface:#f8fafc;--text:#15203a;--muted:#738097;max-width:1220px}.calendar-header{align-items:center;margin-bottom:28px}.calendar-header h1{font-size:34px}.calendar-toolbar,.month-switch,.calendar-stat,.calendar-controls,.calendar-filters,.calendar-legend,.calendar-panel-heading,.calendar-panel-heading h2,.calendar-panel-legend,.calendar-panel-legend span,.agenda-main,.agenda-actions,.agenda-status .badge{align-items:center;display:flex}.calendar-toolbar{border:1px solid var(--border);background:var(--card);border-radius:12px;justify-content:center;gap:4px;width:max-content;margin:0 auto 24px;padding:4px;box-shadow:0 2px 7px #2033540a}.calendar-toolbar .month-switch{background:var(--card);border:0;border-radius:9px;gap:0;margin:0;overflow:hidden}.calendar-toolbar .month-switch button{background:var(--card);border:0;border-radius:0;width:46px;height:46px}.calendar-toolbar .month-switch strong{text-align:center;min-width:180px;padding:0 18px;font-size:17px}.today-button{border:0;border-left:1px solid var(--border);background:var(--primary-soft);min-height:40px;color:var(--primary);cursor:pointer;border-radius:0 8px 8px 0;justify-content:center;align-items:center;gap:7px;padding:7px 14px;font:700 13px inherit;display:inline-flex}.today-button:hover{background:#e4efff}.calendar-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px;display:grid}.calendar-stat{border:1px solid var(--border);background:var(--card);border-radius:11px;gap:13px;min-height:108px;padding:19px 18px;box-shadow:0 2px 7px #2033540a}.calendar-stat-icon{color:#fb7a17;border:2px solid #fb7a17;border-radius:50%;flex:0 0 44px;place-items:center;width:44px;height:44px;display:grid}.calendar-stat-copy{min-width:0;display:grid}.calendar-stat-copy>span{color:var(--muted);font-size:13px;font-weight:700}.calendar-stat-copy>strong{color:var(--text);white-space:nowrap;margin-top:1px;font-size:20px;line-height:1.2}.calendar-stat-copy>small{color:var(--muted);margin-top:4px;font-size:11px}.calendar-stat.overdue .calendar-stat-icon{color:#ef3f48;border-color:#ef3f48}.calendar-stat.paid .calendar-stat-icon{color:#18a457;border-color:#18a457}.calendar-stat.total .calendar-stat-icon{color:#6f829d;border-color:#8696ad}.calendar-controls{display:none}.calendar-workspace{grid-template-columns:minmax(0,1.9fr) minmax(270px,.95fr);align-items:stretch;gap:16px;display:grid}.calendar-grid{min-width:0;padding:10px 10px 14px;overflow:hidden}.calendar-panel-heading{justify-content:space-between;gap:18px;min-height:58px;padding:5px 8px 11px}.calendar-panel-heading h2{gap:10px;margin:0;font-size:18px}.calendar-panel-heading h2 svg{color:var(--primary)}.calendar-panel-legend{color:var(--muted);justify-content:flex-end;gap:12px;font-size:11px}.calendar-panel-legend span{white-space:nowrap;gap:5px}.calendar-panel-legend i{background:#fb8a20;border-radius:50%;width:10px;height:10px}.calendar-panel-legend i.planned{background:#9852df}.calendar-week,.calendar-days{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-week{border:1px solid var(--border);background:var(--card);border-bottom:0;border-radius:8px 8px 0 0}.calendar-week b{text-align:center;color:var(--text);padding:12px 4px;font-size:12px}.calendar-days{border-top:1px solid var(--border);border-left:1px solid var(--border)}.calendar-day{text-align:left;background:var(--card);border:0;border-right:1px solid var(--border);border-bottom:1px solid var(--border);min-width:0;min-height:128px;color:var(--text);cursor:pointer;flex-direction:column;gap:5px;padding:10px 7px;transition:background .15s,box-shadow .15s;display:flex;position:relative}.calendar-day:nth-child(7n+1),.calendar-day:nth-child(7n){background:var(--card)}.calendar-day:hover{background:#f7faff}.calendar-day.outside{background:var(--surface);color:var(--muted);opacity:.8}.calendar-day:nth-last-child(-n+7):first-child,.calendar-day:nth-last-child(-n+7):first-child~.calendar-day{border-bottom-color:var(--border)}.calendar-day:nth-last-child(-n+7):nth-child(7n+1){border-radius:0 0 0 7px}.calendar-day:last-child{border-radius:0 0 7px}.calendar-day.selected{z-index:1;background:#f3f7ff;box-shadow:inset 0 0 0 2px #5b91f6}.calendar-date-number{border-radius:50%;place-items:center;width:25px;height:25px;font-weight:700;display:grid}.calendar-day.today .calendar-date-number{background:var(--primary);color:#fff}.calendar-event{border-radius:8px;grid-template-rows:auto auto;grid-template-columns:8px minmax(0,1fr);column-gap:4px;width:max-content;min-width:58px;max-width:100%;min-height:42px;font-size:10px;font-style:normal;line-height:1.15;position:relative;color:#8f4300!important;box-shadow:none!important;background:#fff0df!important;border:0!important;padding:6px 7px!important;display:grid!important}.calendar-event:before{content:"";background:#ff8519;border-radius:50%;grid-row:1;width:8px;height:8px;margin-top:1px}.calendar-event-name{text-overflow:ellipsis;white-space:nowrap;grid-column:2;min-width:0;max-width:72px;font-weight:700;overflow:hidden}.calendar-event b{white-space:nowrap;grid-column:2;font-size:10px}.calendar-event.planned{color:#6630a4!important;background:#f2e5ff!important}.calendar-event.planned:before{background:#9852df}.calendar-event[data-status=paid]{opacity:.78;color:#11763c!important;background:#e5f7eb!important}.calendar-event[data-status=paid] .calendar-event-name{text-decoration:line-through}.calendar-event[data-status=overdue]{color:#ac272e!important;background:#ffeded!important}.calendar-event em{display:none;position:absolute;top:4px;right:4px}.calendar-day>small{color:var(--muted);font-size:10px}.calendar-agenda{flex-direction:column;min-height:734px;padding:18px;display:flex;overflow:hidden}.calendar-agenda>header{border-bottom:0;align-items:flex-start;gap:10px;padding-bottom:15px;display:flex}.calendar-agenda>header>svg{color:var(--primary);flex:none;margin-top:1px}.calendar-agenda>header>div{flex:1;min-width:0}.calendar-agenda>header small{color:var(--text);font-size:15px;font-weight:700}.calendar-agenda>header h2{margin:4px 0 0;font-size:20px;line-height:1.35}.calendar-agenda>header>span{display:none}.agenda-list{flex:1;gap:10px;margin:8px 0 18px;display:grid}.agenda-item{border:1px solid var(--border);background:var(--card);border-left:4px solid #ed870e;border-radius:8px;padding:12px}.agenda-item.planned{border-left-color:#9852df}.agenda-main{justify-content:space-between;gap:10px}.agenda-main>span{min-width:0}.agenda-main b,.agenda-main small{display:block}.agenda-main b{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.agenda-main small{color:var(--muted);margin-top:2px;font-size:11px}.agenda-main strong{white-space:nowrap;font-size:14px}.agenda-status .badge{gap:4px;width:max-content;font-size:10px}.agenda-actions{gap:6px;margin-top:9px}.agenda-actions .payment-action{flex:1;justify-content:center;padding:7px 8px;font-size:11px}.agenda-actions .row-icon-button{width:32px;height:32px;padding:0}.danger-icon{color:#c8433d!important}.agenda-manage{margin-left:auto;font-size:11px}.agenda-empty{text-align:center;min-height:0;color:var(--muted);flex-direction:column;justify-content:center;align-self:stretch;align-items:center;padding:20px;display:flex}.agenda-empty-icon{color:#7388a8;background:#f1f6ff;border-radius:50%;place-items:center;width:108px;height:108px;margin-bottom:20px;display:grid}.agenda-empty b{color:var(--text);font-size:17px}.agenda-empty p{max-width:210px;margin:8px 0 0;font-size:14px;line-height:1.55}@media (width<=1180px){.calendar-day{min-height:112px}.calendar-agenda{min-height:654px}.calendar-panel-heading{flex-direction:column;align-items:flex-start;gap:7px}.calendar-panel-legend{flex-wrap:wrap;justify-content:flex-start}}@media (width<=1000px){.calendar-workspace{grid-template-columns:1fr}.calendar-agenda{min-height:360px}.agenda-list:has(.agenda-item){grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.calendar-header{align-items:flex-start}.calendar-header h1{font-size:29px}.calendar-toolbar{justify-content:space-between}.calendar-toolbar .month-switch{flex:1}.calendar-toolbar .month-switch strong{flex:1;min-width:0;padding-inline:8px}.calendar-day{min-height:86px;padding:6px 4px}.calendar-week b{padding:9px 2px}.calendar-panel-heading{padding-inline:4px}.calendar-event{grid-template-columns:6px minmax(0,1fr);width:100%;min-width:0;padding:4px!important}.calendar-event:before{width:6px;height:6px}.calendar-event-name{display:none}.agenda-list:has(.agenda-item){grid-template-columns:1fr}}@media (width<=520px){.calendar-header{display:grid}.calendar-summary{gap:8px}.calendar-stat{gap:9px;min-height:88px;padding:12px}.calendar-stat-icon{flex-basis:36px;width:36px;height:36px}.calendar-stat-icon svg{width:20px}.calendar-stat-copy>strong{font-size:16px}.today-button{padding-inline:12px}.calendar-panel-legend{gap:7px;font-size:10px}.calendar-day{min-height:64px}.calendar-date-number{width:22px;height:22px;font-size:12px}.calendar-event{border-radius:50%;width:9px;height:9px;min-height:9px;font-size:0;background:#ff8519!important;padding:0!important;display:block!important}.calendar-event.planned{background:#9852df!important}.calendar-event[data-status=paid]{background:#17a65a!important}.calendar-event[data-status=overdue]{background:#eb4d54!important}.calendar-event>*{display:none!important}.calendar-agenda{min-height:330px}}:root[data-theme=dark] .calendar-page{--primary:#72a3ff;--primary-soft:#1d304c;--border:#32415b;--card:#182235;--surface:#111827;--text:#edf3ff;--muted:#b4c0d3}:root[data-theme=dark] .calendar-day:hover{background:#1a2639}:root[data-theme=dark] .calendar-day.selected{background:#1d304c}:root[data-theme=dark] .calendar-event{color:#ffc483!important;background:#352719!important}:root[data-theme=dark] .calendar-event.planned{color:#d5c0ff!important;background:#2b2440!important}:root[data-theme=dark] .agenda-empty-icon{color:#9db0cc;background:#202d43}@media (prefers-color-scheme:dark){:root[data-theme=system] .calendar-page{--primary:#72a3ff;--primary-soft:#1d304c;--border:#32415b;--card:#182235;--surface:#111827;--text:#edf3ff;--muted:#b4c0d3}:root[data-theme=system] .calendar-day:hover{background:#1a2639}:root[data-theme=system] .calendar-day.selected{background:#1d304c}:root[data-theme=system] .calendar-event{color:#ffc483!important;background:#352719!important}:root[data-theme=system] .calendar-event.planned{color:#d5c0ff!important;background:#2b2440!important}:root[data-theme=system] .agenda-empty-icon{color:#9db0cc;background:#202d43}}.header-actions,.pool-toolbar,.backup-actions{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.header-actions button,.pool-toolbar button,.backup-actions button{justify-content:center;align-items:center;gap:7px;display:inline-flex}.cycle-card{align-items:center;gap:13px;display:flex}.cycle-card>svg{color:#1764cf;flex:none}.cycle-card>div{flex:1;gap:2px;display:grid}.cycle-card>div p,.cycle-card>div small{color:#718097;margin:0}.cycle-card>div small{font-size:12px}.cycle-card>button{white-space:nowrap}.cycle-overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-bottom:20px;padding:0;display:grid;overflow:hidden}.cycle-overview>div{border-right:1px solid #e6ebf2;gap:5px;padding:18px 20px;display:grid}.cycle-overview>div:last-child{border-right:0}.cycle-overview span{color:#718097;font-size:12px}.cycle-overview strong{font-size:22px}.cycle-overview .negative strong,.negative-text{color:#c43f39!important}.pool-toolbar{justify-content:flex-end}.pool-detail small:last-child{margin-top:5px}.kind-summary{border-bottom:1px solid #edf0f4;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:14px 0;display:grid}.kind-summary svg{color:#2f67d6}.kind-summary span{color:#526079;font-size:13px}.kind-summary strong{font-size:14px}.quick-spend-form{gap:13px;display:grid}.form-warning{color:#9b570d;background:#fff8ed;border:1px solid #f3cf9c;border-radius:8px;margin:0;padding:11px 13px;font-size:13px;line-height:1.5}.recent-spending{margin-top:20px}.activity-list{display:grid}.activity-list article{border-bottom:1px solid #e8edf3;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:10px;padding:12px 2px;display:grid}.activity-list article:last-child{border-bottom:0}.activity-list article>div{min-width:0}.activity-list b,.activity-list small{display:block}.activity-list b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.activity-list small{color:#7b8798;margin-top:2px}.activity-list strong{white-space:nowrap}.expenses-page .expense-tabs{grid-template-columns:repeat(4,minmax(0,230px))}.payday-fields{grid-template-columns:150px 150px auto;align-items:end;gap:12px;display:grid}.payday-fields label{gap:6px;font-size:13px;font-weight:600;display:grid}.payday-fields input{height:42px;font:inherit;border:1px solid #cdd9e8;border-radius:8px;padding:9px 11px}.settings-help{color:#718097;margin:12px 0 0;font-size:12px}.backup-actions{padding-bottom:20px}.visually-hidden{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.recovery-notice{color:#74530b;background:#fff9e7;border:1px solid #efcf83;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;padding:12px 15px;font-size:13px;display:flex}.recovery-notice button{color:#0965d9;cursor:pointer;background:0 0;border:0;font:600 13px inherit}.calendar-event.bucket{color:#1d5cad!important;background:#e9f2ff!important}.calendar-legend i.bucket{background:#2f67d6}.agenda-item.bucket{border-left-color:#2f67d6}@media (width<=1000px){.cycle-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.cycle-overview>div:nth-child(2){border-right:0}.cycle-overview>div:nth-child(-n+2){border-bottom:1px solid #e6ebf2}}@media (width<=650px){body{padding-bottom:76px}.app{display:block}.sidebar{border-bottom:1px solid #e6ebf3;border-right:0;width:auto;padding:12px 15px 10px}.brand{padding:0}.brand>b{width:40px;height:40px}.brand strong{font-size:19px}.brand small{font-size:11px}.sidebar nav{z-index:20;padding:6px max(5px,env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(5px,env(safe-area-inset-left));background:#fff;border-top:1px solid #dce3ee;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 18px #13213d14}.sidebar nav button{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:2px;height:58px;display:flex;border-radius:8px!important;padding:4px 1px!important;font-size:9px!important}.sidebar nav i{width:auto!important;margin:0!important}.sidebar nav i svg{width:19px;height:19px}main{padding:20px 15px 28px}.page-title{align-items:flex-start}.page-title h1{font-size:27px}.header-actions{justify-content:flex-end}.header-actions .secondary{padding-inline:9px;font-size:0}.header-actions .secondary svg{margin:0}.cycle-card{flex-wrap:wrap;align-items:flex-start}.cycle-card>button{width:100%}.cycle-overview{grid-template-columns:1fr 1fr}.cycle-overview>div{padding:14px}.cycle-overview strong{font-size:18px}.pool-toolbar{grid-template-columns:1fr auto;width:100%;display:grid}.pool-toolbar .secondary{width:100%}.pool-add{font-size:0}.money-pool{grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.pool-detail{grid-column:2}.pool-amount{grid-column:2;text-align:left!important}.pool-actions{grid-column:2}.activity-list article{grid-template-columns:minmax(0,1fr) auto}.activity-list article>button{font-size:12px}.payday-fields{grid-template-columns:1fr 1fr}.payday-fields button{grid-column:1/-1}.backup-actions{grid-template-columns:1fr;display:grid}.backup-actions button{width:100%}.income-table-wrap{border:0;overflow:visible}.income-table{min-width:0;display:block}.income-table thead{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.income-table tbody{gap:10px;display:grid}.income-table tr{border:1px solid #e1e7ef;border-radius:10px;grid-template-columns:1fr auto;gap:8px;padding:14px;display:grid}.income-table td{border:0;padding:0;display:block}.income-table td:first-child{color:#718097;grid-column:1/-1;font-size:12px}.income-table td:nth-child(2){grid-column:1}.income-table td:nth-child(3){grid-column:2}.income-table td:nth-child(4){color:#718097;grid-column:1/-1}.income-table td:nth-child(5){grid-column:1/-1;justify-content:flex-start}.upcoming-panel{overflow:visible}.upcoming-panel .upcoming-table{border:0;min-width:0;display:block}.upcoming-panel .upcoming-table thead{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.upcoming-panel .upcoming-table tbody{gap:10px;display:grid}.upcoming-panel .upcoming-table tr{border:1px solid #e1e7ef;border-radius:10px;grid-template-columns:1fr auto;gap:8px;padding:13px;display:grid}.upcoming-panel .upcoming-table td{border:0;display:block;padding:0!important}.upcoming-panel .upcoming-table td:first-child,.upcoming-panel .upcoming-table td:nth-child(2){grid-column:1}.upcoming-panel .upcoming-table td:nth-child(3){grid-area:1/2/3}.upcoming-panel .upcoming-table td:nth-child(4),.upcoming-panel .upcoming-table td:nth-child(5){grid-column:1/-1}.upcoming-action{min-height:40px}.calendar-grid{padding-inline:4px;overflow:hidden!important}.calendar-week,.calendar-days{min-width:0!important}.calendar-day{min-width:0!important;padding:4px 2px!important}.calendar-panel-heading{padding-inline:7px}.calendar-event.bucket{background:#2f67d6!important}}:root[data-theme=dark] .cycle-overview>div,:root[data-theme=dark] .kind-summary,:root[data-theme=dark] .activity-list article{border-color:#34435d}:root[data-theme=dark] .cycle-overview span,:root[data-theme=dark] .kind-summary span,:root[data-theme=dark] .activity-list small{color:#b4c0d3}:root[data-theme=dark] .form-warning{color:#ffd39a;background:#342719;border-color:#684a28}:root[data-theme=dark] .sidebar nav{background:#182235;border-color:#32415b}.badge.pending{color:var(--status-pending-text);background:var(--status-pending-bg);border-color:color-mix(in srgb,var(--status-pending) 32%,white)}.badge.overdue{color:var(--status-danger-text);background:var(--status-danger-bg);border-color:color-mix(in srgb,var(--status-danger) 26%,white)}.badge.paid{color:var(--status-success-text);background:var(--status-success-bg);border-color:color-mix(in srgb,var(--status-success) 28%,white)}.negative-text,.cycle-overview .negative strong{color:var(--status-danger-text)!important}.money-pool.overspent{background:var(--status-danger-bg)}.summary-card.blue{border-bottom-color:var(--action-primary)}.summary-card.blue .summary-icon{background:var(--action-primary-bg);color:var(--action-primary)}.summary-card.blue strong{color:var(--action-primary)}.summary-card.orange{border-bottom-color:var(--status-pending)}.summary-card.orange .summary-icon{background:var(--status-pending-bg);color:var(--status-pending)}.summary-card.orange strong{color:var(--status-pending-text)}.summary-card.green{border-bottom-color:var(--status-success)}.summary-card.green .summary-icon{background:var(--status-success-bg);color:var(--status-success)}.summary-card.green strong{color:var(--status-success-text)}.summary-card.purple{border-bottom-color:var(--category-rollover)}.summary-card.purple .summary-icon{color:var(--category-rollover);background:#f3efff}.summary-card.purple strong{color:#6d3fc0}.calendar-stat-icon{border-color:var(--status-pending);color:var(--status-pending)}.calendar-stat.overdue .calendar-stat-icon{border-color:var(--status-danger);color:var(--status-danger)}.calendar-stat.overdue strong{color:var(--status-danger-text)}.calendar-stat.paid .calendar-stat-icon{border-color:var(--status-success);color:var(--status-success)}.calendar-stat.paid strong{color:var(--status-success-text)}.calendar-stat.total .calendar-stat-icon{border-color:var(--status-neutral);color:var(--status-neutral)}.calendar-panel-legend i,.calendar-panel-legend i.pending{background:var(--status-pending)}.calendar-panel-legend i.paid{background:var(--status-success)}.calendar-panel-legend i.overdue{background:var(--status-danger)}.calendar-event,.calendar-event.planned,.calendar-event.bucket{background:var(--status-pending-bg)!important;color:var(--status-pending-text)!important}.calendar-event:before,.calendar-event.planned:before,.calendar-event.bucket:before{background:var(--status-pending)}.calendar-event[data-status=paid]{opacity:1;background:var(--status-success-bg)!important;color:var(--status-success-text)!important}.calendar-event[data-status=paid]:before{background:var(--status-success)}.calendar-event[data-status=overdue]{background:var(--status-danger-bg)!important;color:var(--status-danger-text)!important}.calendar-event[data-status=overdue]:before{background:var(--status-danger)}.calendar-agenda>header{border-bottom:1px solid var(--border);align-items:center}.calendar-agenda>header>span{white-space:nowrap;background:var(--status-neutral-bg);color:var(--status-neutral-text);border-radius:999px;justify-content:center;align-items:center;padding:4px 9px;font-size:11px;font-weight:700;display:inline-flex}.agenda-list{min-height:0;padding-right:2px;overflow-y:auto}.agenda-item,.agenda-item.planned,.agenda-item.bucket{border-left-color:var(--status-pending)}.agenda-item[data-status=overdue]{border-left-color:var(--status-danger);background:var(--status-danger-bg)}.agenda-item[data-status=paid]{border-left-color:var(--status-success);background:var(--status-success-bg)}.agenda-item[data-status=paid] .agenda-main b{text-decoration:line-through;text-decoration-thickness:1px}:root[data-theme=dark]{--status-pending-bg:#352719;--status-pending-text:#ffc483;--status-danger-bg:#3c2022;--status-danger-text:#ffaaa6;--status-success-bg:#1e402c;--status-success-text:#c8f0d2;--status-neutral-bg:#202d43;--status-neutral-text:#bdc9da;--action-primary:#72a3ff;--action-primary-bg:#1d304c}@media (prefers-color-scheme:dark){:root[data-theme=system]{--status-pending-bg:#352719;--status-pending-text:#ffc483;--status-danger-bg:#3c2022;--status-danger-text:#ffaaa6;--status-success-bg:#1e402c;--status-success-text:#c8f0d2;--status-neutral-bg:#202d43;--status-neutral-text:#bdc9da;--action-primary:#72a3ff;--action-primary-bg:#1d304c}}@media (width<=650px){.calendar-event,.calendar-event.planned,.calendar-event.bucket{background:var(--status-pending)!important}.calendar-event[data-status=paid]{background:var(--status-success)!important}.calendar-event[data-status=overdue]{background:var(--status-danger)!important}}.calendar-summary{gap:12px;margin-bottom:18px}.calendar-stat{min-height:88px;padding:15px 16px}.calendar-stat-icon{flex-basis:40px;width:40px;height:40px}.calendar-stat-copy>strong{margin-top:3px;font-size:19px}.calendar-agenda{min-height:0}.agenda-list{grid-auto-rows:max-content;align-content:start;margin-bottom:0}.agenda-item{align-self:start;padding:13px 12px}.agenda-main b{font-size:14px}.agenda-main strong{font-size:15px}.agenda-status{margin-top:8px}.table-icon-action{color:#2765ba;cursor:pointer;background:#fff;border:1px solid #cbd8e8;border-radius:8px;place-items:center;width:34px;height:34px;padding:0;transition:background .15s,border-color .15s,color .15s;display:inline-grid}.table-icon-action:hover{background:#edf5ff;border-color:#9fbee8}.table-icon-action.danger{color:#c7443e;background:snow;border-color:#efcfcc}.table-icon-action.danger:hover{background:#fff0ef;border-color:#e6aaa5}.income-page-header{margin-bottom:20px}.income-history{padding:20px}.income-history .panel-heading>div,.expenses-list .panel-heading>div{gap:2px;display:grid}.income-history .panel-heading p,.expenses-list .panel-heading p{color:#8491a3;margin:0;font-size:12px}.income-table-wrap{border:1px solid #e0e7f0;border-radius:10px;overflow:visible}.income-table{table-layout:fixed;border:0;border-radius:0;width:100%;min-width:0}.income-table th:first-child{width:20%}.income-table th:nth-child(2){width:48%}.income-table th:nth-child(3){text-align:right;width:20%}.income-table th:nth-child(4){width:12%}.income-table th,.income-table td{vertical-align:middle;padding:13px 12px}.income-row-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.expenses-page .expense-table{table-layout:fixed;width:100%;min-width:0}.expense-table th:first-child{width:18%}.expense-table th:nth-child(2){width:32%}.expense-table th:nth-child(3){width:16%}.expense-table th:nth-child(4){width:24%}.expense-table th:nth-child(5){width:10%}.expense-table th,.expense-table td{padding:13px 8px}.expense-actions{justify-content:flex-end}.expense-manage-action{display:none}.expense-status{align-items:center;gap:8px;display:flex}.expense-status .payment-status-button{width:auto;margin-left:auto;padding:7px 8px;font-size:12px}.bucket-activity-table{table-layout:fixed;border:0;border-radius:0;width:100%}.bucket-activity-table th:first-child{width:20%}.bucket-activity-table th:nth-child(2){width:48%}.bucket-activity-table th:nth-child(3){text-align:right;width:20%}.bucket-activity-table th:nth-child(4){width:12%}.bucket-activity-table th,.bucket-activity-table td{vertical-align:middle;padding:13px 10px}.bucket-activity-table .expense-amount{text-align:right}.bucket-entry-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (width<=1050px) and (width>=651px){.expenses-page .expense-table .table-icon{display:none}.expense-name-copy{max-width:100%}.expense-table th,.expense-table td{padding-inline:6px}.expense-status .payment-status-button svg{display:none}.expense-actions{gap:4px}.table-icon-action{width:32px;height:32px}.income-table th,.income-table td,.bucket-activity-table th,.bucket-activity-table td{padding-inline:8px}}@media (width<=650px){.income-history{padding:15px}.income-table-wrap{border:0}.income-table{display:block}.income-table thead{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.income-table tbody{gap:10px;display:grid}.income-table tr{border:1px solid #e1e7ef;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name amount""date actions";gap:8px 12px;padding:14px;display:grid}.income-table td{border:0;padding:0;display:block}.income-table td:first-child{color:#718097;grid-area:date;font-size:12px}.income-table td:nth-child(2){grid-area:name}.income-table td:nth-child(3){grid-area:amount}.income-table td:nth-child(4){grid-area:actions}.expenses-page .expense-table .expense-actions{justify-content:flex-end;gap:6px;display:flex}.expenses-page .expense-table .expense-status{grid-area:status;justify-content:space-between;align-items:center;gap:8px;display:flex}.expenses-page .expense-status .payment-status-button{margin-left:auto}.bucket-activity-table{display:block}.bucket-activity-table thead{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.bucket-activity-table tbody{gap:10px;display:grid}.bucket-activity-table tr{border:1px solid #e1e7ef;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name amount""date actions";gap:8px 12px;padding:14px;display:grid}.bucket-activity-table td{border:0;padding:0;display:block}.bucket-activity-table td:first-child{color:#718097;grid-area:date;font-size:12px}.bucket-activity-table td:nth-child(2){grid-area:name}.bucket-activity-table td:nth-child(3){grid-area:amount}.bucket-activity-table td:nth-child(4){grid-area:actions}.bucket-activity-table .expense-actions{justify-content:flex-end;gap:6px;display:flex}}:root[data-theme=dark] .table-icon-action{color:#a9ccff;background:#202d43;border-color:#40516d}:root[data-theme=dark] .table-icon-action.danger{color:#ffaaa6;background:#352020;border-color:#724644}:root[data-theme=dark] .income-table-wrap{border-color:#34435d}.pool-actions,.activity-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.activity-list article{grid-template-columns:minmax(0,1fr) auto auto}.activity-actions{min-width:74px}@media (width<=650px){.activity-list article{grid-template-columns:minmax(0,1fr) auto}.activity-actions{grid-column:1/-1}}.payment-status-button{appearance:none;white-space:nowrap;cursor:pointer;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:7px;width:100%;min-height:38px;padding:6px 11px;font-family:inherit;font-size:12px;font-weight:600;line-height:1.25;transition:background-color .15s,border-color .15s,box-shadow .15s,transform 80ms;display:inline-flex}.payment-status-button.is-pending{color:#fff;background:#1769dc;border-color:#1264cf;box-shadow:0 2px 5px #1769dc2e}.payment-status-button.is-pending:hover{background:#0d5fcf;border-color:#0755b9;box-shadow:0 4px 10px #1769dc38}.payment-status-button.is-paid{color:#52627a;background:#fff;border-color:#cbd6e4;box-shadow:0 1px 2px #1d355714}.payment-status-button.is-paid:hover{color:#33445d;background:#f5f8fc;border-color:#9fb2ca}.payment-status-button:active{box-shadow:none;transform:translateY(1px)}.payment-status-button:focus-visible{outline-offset:2px;outline:3px solid #bcd8ff}.payment-button-icon{border-radius:7px;flex:0 0 23px;place-items:center;width:23px;height:23px;display:grid}.is-pending .payment-button-icon{background:#ffffff26}.is-paid .payment-button-icon{color:#64748b;background:#edf2f7}.agenda-actions .payment-status-button{flex:1;font-size:11px}:root[data-theme=dark] .payment-status-button.is-paid{color:#dce8fb;box-shadow:none;background:#202d43;border-color:#465772}:root[data-theme=dark] .payment-status-button.is-paid:hover{background:#263650;border-color:#607391}:root[data-theme=dark] .payment-status-button.is-paid .payment-button-icon{color:#c2cee0;background:#2d3c54}@media (prefers-color-scheme:dark){:root[data-theme=system] .payment-status-button.is-paid{color:#dce8fb;box-shadow:none;background:#202d43;border-color:#465772}:root[data-theme=system] .payment-status-button.is-paid:hover{background:#263650;border-color:#607391}:root[data-theme=system] .payment-status-button.is-paid .payment-button-icon{color:#c2cee0;background:#2d3c54}}@media (width<=650px){.payment-status-button{min-height:42px;font-size:12px}}.cycle-close-action{flex:none;justify-items:end;gap:6px;max-width:270px;display:grid}.cycle-close-action>button{white-space:nowrap}.cycle-close-warning{color:#b42318;text-align:right;background:#fff0ef;border-radius:6px;padding:5px 8px;font-size:13px;font-weight:700;line-height:1.4;animation:.42s ease-in-out cycle-close-shake}@keyframes cycle-close-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-4px)}40%,80%{transform:translate(4px)}}@media (width<=650px){.cycle-close-action{justify-items:stretch;width:100%;max-width:none}.cycle-close-action>button{width:100%}.cycle-close-warning{text-align:center}}@media (prefers-reduced-motion:reduce){.cycle-close-warning{animation:none}}:root[data-theme=dark] .cycle-close-warning{color:#ffaaa6;background:#3b2022}@media (prefers-color-scheme:dark){:root[data-theme=system] .cycle-close-warning{color:#ffaaa6;background:#3b2022}}.allocation-overview{overflow:visible}.allocation-overview>h2{margin-bottom:18px}.allocation-donut{aspect-ratio:1;border-radius:50%;place-items:center;width:168px;margin:4px auto 22px;display:grid;position:relative;box-shadow:inset 0 0 0 1px #00000008}.allocation-donut:after{content:"";background:var(--card,#fff);border-radius:50%;position:absolute;inset:34px;box-shadow:0 0 0 1px #e8edf3}.allocation-donut>span{z-index:1;text-align:center;display:grid;position:relative}.allocation-donut small{color:#718097;font-size:12px;font-weight:600}.allocation-donut strong{color:#26344b;letter-spacing:-.3px;font-size:20px;line-height:1.25}.allocation-kind-list{display:grid}.allocation-kind-list .kind-summary{grid-template-columns:auto minmax(0,1fr) 34px minmax(64px,auto);gap:8px}.allocation-kind-list .kind-summary:last-child{border-bottom:0}.allocation-legend-swatch{background:var(--kind-color);width:11px;height:11px;box-shadow:0 0 0 2px #fff,0 0 0 3px color-mix(in srgb,var(--kind-color) 28%,transparent);border-radius:50%;flex:0 0 11px;display:inline-block}.allocation-kind-list .kind-summary span{color:#526079;text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.allocation-kind-list .kind-summary small{color:#8793a5;text-align:right;font-size:11px;font-weight:600}.allocation-kind-list .kind-summary strong{text-align:right}.allocation-unassigned{color:#334155;background:#f4f7fa;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding:12px;display:flex}.allocation-unassigned span{align-items:center;gap:7px;font-size:13px;font-weight:700;display:flex}.allocation-unassigned span small{color:#8793a5;font-size:11px}.allocation-unassigned b{white-space:nowrap}.allocation-unassigned.negative{color:#b42318;background:#fff0ef}.money-pools .pool-detail small{color:#627087;font-size:13px;line-height:1.45}.money-pools .panel-heading{align-items:center}.money-pools .panel-heading h2{font-size:21px}.pool-name-line{align-items:center;gap:8px;min-width:0;display:flex}.pool-name-line>b{min-width:0}.pool-kind-badge{color:#2f67d6;background:#eaf2ff;border-radius:999px;flex:none;padding:2px 7px;font-size:10px;font-weight:700;line-height:1.5}.pool-kind-badge.savings{color:#16825b;background:#e7f7ef}.pool-usage{margin-top:5px!important}.pool-detail .pool-usage+.bar{margin-top:7px}:root[data-theme=dark] .allocation-donut:after{background:#182235;border-color:#34435d}:root[data-theme=dark] .allocation-donut strong{color:#edf3ff}:root[data-theme=dark] .allocation-legend-swatch{box-shadow:0 0 0 2px #182235,0 0 0 3px color-mix(in srgb,var(--kind-color,#dce3ee) 45%,transparent)}:root[data-theme=dark] .allocation-unassigned{color:#edf3ff;background:#202d43}:root[data-theme=dark] .allocation-unassigned.negative{color:#ffaaa6;background:#3b2022}@media (prefers-color-scheme:dark){:root[data-theme=system] .allocation-donut:after{background:#182235;border-color:#34435d}:root[data-theme=system] .allocation-donut strong{color:#edf3ff}:root[data-theme=system] .allocation-legend-swatch{box-shadow:0 0 0 2px #182235,0 0 0 3px color-mix(in srgb,var(--kind-color,#dce3ee) 45%,transparent)}:root[data-theme=system] .allocation-unassigned{color:#edf3ff;background:#202d43}:root[data-theme=system] .allocation-unassigned.negative{color:#ffaaa6;background:#3b2022}}:root{--ui-active-bg:#eef5ff;--ui-active-text:#075fd1;--ui-form-text:#334155;--ui-input-bg:#fff;--ui-input-text:#15203a;--ui-input-border:#cdd9e8;--ui-control-scheme:light;--category-spending:#8b5cf6;--category-rollover:#6366f1;--category-savings:#16a34a;--category-unassigned:#0284c7;--ui-card:#fff;--ui-border:#dce3ee;--ui-muted:#64748b;--ui-text:#15203a}.app .summary-card.ui-summary{--summary-color:var(--action-primary);--summary-bg:var(--action-primary-bg);border:1px solid var(--ui-border);background:var(--ui-card);border-radius:14px;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:12px;min-height:112px;padding:16px;display:grid;box-shadow:0 2px 8px #163e7406}.app .summary-card.ui-summary.orange{--summary-color:var(--status-pending-text);--summary-bg:var(--status-pending-bg)}.app .summary-card.ui-summary.green{--summary-color:var(--status-success-text);--summary-bg:var(--status-success-bg)}.app .summary-card.ui-summary.purple{--summary-color:#7c3aed;--summary-bg:#f3efff}.app .summary-card.ui-summary.cyan{--summary-color:var(--category-unassigned);--summary-bg:#e0f2fe}.app .summary-card.ui-summary.red{--summary-color:var(--status-danger-text);--summary-bg:var(--status-danger-bg)}.app .summary-card.ui-summary.neutral{--summary-color:var(--status-neutral-text);--summary-bg:var(--status-neutral-bg)}.app .summary-card.ui-summary .summary-icon{background:var(--summary-bg);width:40px;height:40px;color:var(--summary-color)}.app .summary-card.ui-summary p{color:var(--ui-muted);white-space:normal;margin:0 0 6px;font-size:13px;font-weight:600;line-height:1.5}.app .summary-card.ui-summary strong{color:var(--summary-color);letter-spacing:-.4px;overflow-wrap:anywhere;white-space:normal;font-size:clamp(20px,2.1vw,27px);line-height:1.3;display:block}:is(.dashboard-summaries:has(.ui-summary),.calendar-summary){grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.dashboard-summaries .ui-summary:last-child{grid-column:auto}.dashboard-redesign .hero-money-copy>strong,.hero-money-icon{color:var(--category-unassigned)}.currency-value{border:1px solid var(--ui-border);background:var(--status-neutral-bg);color:var(--ui-text);border-radius:8px;padding:10px 12px;font-size:14px;display:block}.modal .icon-btn{place-items:center;min-width:44px;min-height:44px;display:grid}.modal .actions button{min-height:44px}.modal label small{color:var(--ui-muted)}.allocation-kind-list .kind-summary span{white-space:normal;overflow:visible}.pool-kind-badge.spending{color:#7c3aed;background:#f3efff}.pool-kind-badge.rollover{color:#4f46e5;background:#eef2ff}@media (width<=1100px){:is(.dashboard-summaries:has(.ui-summary),.calendar-summary){grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1180px){.allocation-page .allocation-layout{grid-template-columns:minmax(0,1fr)}}@media (width<=900px){.expenses-page div.expense-tabs{grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:visible}.expenses-page .expense-tabs button b{white-space:normal}}@media (width<=650px){.dashboard-money-hero{grid-template-columns:46px minmax(0,1fr);display:grid}.hero-money-message{grid-column:1/-1;min-width:0;margin:4px 0 0 58px}body{padding-bottom:calc(84px + env(safe-area-inset-bottom))}.sidebar nav button{min-height:60px;line-height:1.4;font-size:11px!important}.sidebar nav i svg{width:21px;height:21px}.expenses-page div.expense-tabs{grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:visible}.expenses-page .expense-tabs button{gap:6px;min-height:48px;padding:9px 6px}.expenses-page .expense-tabs button b{white-space:normal;font-size:12px}.app .summary-card.ui-summary{grid-template-columns:1fr;gap:10px;min-height:138px;padding:14px 12px}.app .summary-card.ui-summary strong{font-size:23px}.app .summary-card.ui-summary p{font-size:12px}:is(.dashboard-summaries:has(.ui-summary),.calendar-summary){gap:10px}.table-icon-action{width:44px;height:44px}.pool-toolbar .pool-add{padding:10px 12px;font-size:13px}.money-pools .panel-heading{flex-wrap:wrap;gap:12px}.pool-name-line{flex-wrap:wrap;gap:5px}.dashboard-bucket-heading{flex-direction:column;align-items:flex-start;gap:4px}.dashboard-bucket-heading>span{white-space:normal}.agenda-main b{white-space:normal;overflow-wrap:anywhere}.calendar-agenda{scroll-margin-top:16px}.calendar-toolbar{max-width:100%}.overlay{z-index:30;padding:12px}.modal{max-height:calc(100dvh - 24px);padding:18px}.modal input,.modal select{min-height:44px;font-size:16px}.backup-actions button,.theme-options button{min-height:44px}}:root[data-theme=dark]{--ui-card:#182235;--ui-border:#32415b;--ui-muted:#b4c0d3;--ui-text:#edf3ff;--category-unassigned:#38bdf8}:root[data-theme=dark] .app .summary-card.ui-summary.purple{--summary-color:#c4b5fd;--summary-bg:#2b2440}:root[data-theme=dark] .app .summary-card.ui-summary.cyan{--summary-bg:#16364b}:root[data-theme=dark]{--ui-active-bg:#1d304c;--ui-active-text:#aacaff;--ui-form-text:#edf3ff;--ui-input-bg:#101b2b;--ui-input-text:#edf3ff;--ui-input-border:#40516d;--ui-control-scheme:dark}:root[data-theme=dark] .allocation-page .pool-amount{color:var(--ui-text)!important}:root[data-theme=dark] .allocation-page .money-pool.overspent .pool-amount{color:var(--status-danger-text)!important}@media (prefers-color-scheme:dark){:root[data-theme=system]{--ui-card:#182235;--ui-border:#32415b;--ui-muted:#b4c0d3;--ui-text:#edf3ff;--category-unassigned:#38bdf8}:root[data-theme=system] .app .summary-card.ui-summary.purple{--summary-color:#c4b5fd;--summary-bg:#2b2440}:root[data-theme=system] .app .summary-card.ui-summary.cyan{--summary-bg:#16364b}:root[data-theme=system]{--ui-active-bg:#1d304c;--ui-active-text:#aacaff;--ui-form-text:#edf3ff;--ui-input-bg:#101b2b;--ui-input-text:#edf3ff;--ui-input-border:#40516d;--ui-control-scheme:dark}:root[data-theme=system] .allocation-page .pool-amount{color:var(--ui-text)!important}:root[data-theme=system] .allocation-page .money-pool.overspent .pool-amount{color:var(--status-danger-text)!important}}:root .app .sidebar nav button.active{background:var(--ui-active-bg);color:var(--ui-active-text)}:root .modal label{color:var(--ui-form-text)}:root .modal .icon-btn{color:var(--ui-text)}:root .payday-fields input{background:var(--ui-input-bg);color:var(--ui-input-text);border-color:var(--ui-input-border)}:root .modal input,:root .modal select,:root .payday-fields input{color-scheme:var(--ui-control-scheme)}:root .calendar-page .calendar-event[data-status=pending]{background:var(--status-pending-bg)!important;color:var(--status-pending-text)!important}:root .calendar-page .calendar-event[data-status=paid]{background:var(--status-success-bg)!important;color:var(--status-success-text)!important}:root .calendar-page .calendar-event[data-status=overdue]{background:var(--status-danger-bg)!important;color:var(--status-danger-text)!important}@media (width<=650px){:root .calendar-page .calendar-event[data-status=pending]{background:var(--status-pending)!important}:root .calendar-page .calendar-event[data-status=paid]{background:var(--status-success)!important}:root .calendar-page .calendar-event[data-status=overdue]{background:var(--status-danger)!important}}
