@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
    :root{--ink:#19251f;--muted:#758078;--line:#e8ece7;--paper:#fff;--bg:#f7f8f5;--green:#1e694c;--mint:#eaf3ed;--red:#c15d4a;--redbg:#fbefec;--yellow:#f1c96c;--shadow:0 8px 30px #1c33240a;--navy:#0b1023;--navy-side:#11182f;--navy-card:#19213d;--navy-raised:#222b4a;--navy-line:#303a5c;--navy-text:#f5f7ff;--navy-muted:#aab5d1;--income:#35b8d9;--expense:#f04a68;--success:#36c6a2;--warning:#f3ad49}
    *{box-sizing:border-box} [hidden]{display:none!important} body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px} button,input,select{font:inherit} button{cursor:pointer}
    .app{max-width:1320px;margin:auto;min-height:100vh;padding:0 34px 42px}.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
    .brand{appearance:none;border:0;padding:0;background:transparent;text-align:left;cursor:pointer;display:flex;align-items:center;gap:11px;font:800 18px Manrope,sans-serif;letter-spacing:-.6px}.brand:focus-visible{outline:2px solid var(--success);outline-offset:5px;border-radius:8px}.brand-mark{height:34px;width:34px;border-radius:11px;background:var(--green);color:#fff;display:grid;place-items:center;font-size:17px}.brand em{font-style:normal;color:var(--green)}
    .top-right{display:flex;align-items:center;gap:12px;color:var(--muted)}.local-pill{display:flex;align-items:center;gap:7px;font-size:12px}.dot{width:7px;height:7px;border-radius:50%;background:#65a779}.theme-toggle{height:38px;min-width:38px;padding:0 10px;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);font-size:17px;display:grid;place-items:center}.theme-toggle:hover{border-color:#9bb9a3}
    main{padding-top:35px}.heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:25px}.eyebrow{color:var(--green);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:1.4px;margin-bottom:8px}.heading h1{font:700 29px Manrope,sans-serif;letter-spacing:-1px;margin:0}.heading p{margin:7px 0 0;color:var(--muted);font-size:13px}
    .month-nav{display:flex;align-items:center;gap:13px;padding:8px 12px;background:#fff;border:1px solid var(--line);border-radius:11px;font-size:13px;font-weight:600}.month-nav button{border:0;background:transparent;color:#66736a;padding:0 3px;font-size:18px}.grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(290px,1fr);gap:18px}.left-col,.right-col{display:flex;flex-direction:column;gap:18px}
    .cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.card,.panel{background:var(--paper);border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow)}.card{padding:17px 15px;min-height:125px}.card-label{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px;gap:6px}.ico{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:var(--mint);color:var(--green);font-size:15px;flex:0 0 auto}.ico.out{background:var(--redbg);color:var(--red)}.ico.balance{background:#f8f3e8;color:#ae8b39}.ico.future{background:#f8f2e4;color:#a47b2b}.amount{font:700 21px Manrope,sans-serif;letter-spacing:-.8px;margin:14px 0 4px}.footnote{font-size:10px;color:var(--muted)}.amount.negative{color:var(--red)}
    .panel{padding:20px}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.panel-head h2{margin:0;font:700 15px Manrope,sans-serif;letter-spacing:-.2px}.panel-head span{font-size:11px;color:var(--muted)}
    .flow-legend{display:flex;gap:16px;font-size:13px;color:var(--muted)}.flow-legend span{font-size:13px!important}.key{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:7px;background:#397b59}.key.expense{background:#e1a17e}.chart-navigation{display:flex;justify-content:flex-end;align-items:center;gap:9px;margin:-3px 0 5px;color:var(--muted);font-size:11px}.chart-navigation button{width:28px;height:27px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font-size:18px;line-height:1}.chart-navigation button:disabled{opacity:.35;cursor:default}.chart{height:170px;display:flex;align-items:flex-end;gap:0;padding:6px 4px 0;border-bottom:1px solid var(--line);position:relative;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;scroll-snap-type:x mandatory;touch-action:pan-x;cursor:grab;user-select:none}.chart::-webkit-scrollbar{display:none}.chart.dragging{cursor:grabbing;scroll-snap-type:none}.chart:before,.chart:after{content:'';position:absolute;left:0;right:0;border-top:1px dashed #edf0ec;pointer-events:none}.chart:before{top:33%}.chart:after{top:66%}.bar-group{z-index:1;flex:0 0 82px;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:8px;scroll-snap-align:start}.bars{height:calc(100% - 22px);display:flex;align-items:flex-end;gap:4px;width:100%;justify-content:center}.bar{width:min(20px,34%);min-height:3px;border-radius:5px 5px 1px 1px;background:#397b59}.bar.expense{background:#efc0a5}.month-label{font-size:12px;color:var(--muted);padding-bottom:6px;text-align:center}.month-label small{display:block;font-size:9px;line-height:1.1}
    .category-chart-legend{display:flex;gap:14px;font-size:12px;color:var(--muted);margin:-5px 0 11px}.category-chart-list{display:flex;flex-direction:column;gap:6px}.category-chart-row{display:grid;grid-template-columns:minmax(85px,110px) minmax(40px,1fr) auto;align-items:center;gap:10px;min-height:22px}.category-chart-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;color:var(--ink)}.category-chart-track{height:10px;border-radius:8px;background:#e8eee9;overflow:hidden;min-width:0}.category-chart-total{height:100%;border-radius:8px;background:var(--green)}.category-chart-value{font-size:12px;color:var(--muted);text-align:right;white-space:nowrap}.category-chart-empty{font-size:12px;color:var(--muted);padding:12px 0}
    .transaction-list{display:flex;flex-direction:column}.tx{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px 0;border-bottom:1px solid #f0f2ef}.tx:last-child{border-bottom:0;padding-bottom:2px}.tx-icon{width:36px;height:36px;border-radius:11px;background:#f1f4ef;display:grid;place-items:center;font-size:15px}.tx-title{font-weight:600;font-size:12px}.tx-meta{font-size:10px;color:var(--muted);margin-top:4px}.tx-actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:5px}.tx-status{font-size:10px;font-weight:700;color:#9a7528}.tx-status.paid{color:var(--green)}.tx-settle,.tx-edit{border:0;background:none;padding:0;color:var(--green);font-size:10px;font-weight:700;text-decoration:underline;text-underline-offset:2px}.tx-right{text-align:right}.tx-value{font-weight:700;font-size:12px}.tx-value.in{color:var(--green)}.tx-value.out{color:#bd624d}.tx-date{font-size:10px;color:#98a098;margin-top:4px}.empty{text-align:center;padding:25px 10px;color:var(--muted);font-size:12px}.empty b{display:block;color:var(--ink);margin-bottom:5px}
    .view-switch{display:flex;gap:3px;padding:3px;border-radius:9px;background:#f1f4f0}.view-switch button{border:0;border-radius:7px;background:transparent;color:var(--muted);padding:7px 10px;font-size:11px;font-weight:700}.view-switch button[aria-pressed="true"]{background:#fff;color:var(--green);box-shadow:0 1px 4px #1b33200f}.transactions-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:-3px 0 10px}.transaction-caption{font-size:10px;color:var(--muted)}.category-summary{display:flex;flex-direction:column;gap:9px}.category-group{border:1px solid var(--line);border-radius:11px;background:var(--paper);overflow:hidden}.category-group summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px}.category-group summary::-webkit-details-marker{display:none}.category-icon{width:33px;height:33px;display:grid;place-items:center;border-radius:10px;background:#f0f4ef;font-size:15px}.category-name{font-size:12px;font-weight:700}.category-count{font-size:10px;color:var(--muted);font-weight:400;margin-top:3px}.category-total{text-align:right;font:700 13px Manrope,sans-serif}.category-detail{padding:0 12px 12px 56px}.category-split{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:10px;margin:0 0 7px}.category-split b{color:var(--ink);font-weight:600}.category-bar{height:5px;border-radius:9px;background:#edf1ed;overflow:hidden;margin-bottom:6px}.category-bar span{display:block;height:100%;border-radius:9px;background:var(--green)}.category-bar span.has-future{background:linear-gradient(90deg,var(--green) 0 55%,#e2be69 55% 100%)}.grouped-tx{margin-top:4px}.grouped-tx .tx:last-child{border-bottom:0}
    .budget-panel{background:#f0f5ef;border:1px solid #e4ece3;border-radius:15px;padding:19px 20px}.budget-top{display:flex;justify-content:space-between;align-items:center}.budget-top h2{font:700 14px Manrope,sans-serif;margin:0}.budget-top span{font-size:11px;color:var(--muted)}.budget-total{margin:19px 0 8px;font:700 21px Manrope,sans-serif}.budget-total small{font:400 11px 'DM Sans',sans-serif;color:var(--muted)}.progress{height:7px;background:#dce7dd;border-radius:20px;overflow:hidden}.progress span{height:100%;width:0;display:block;background:var(--green);border-radius:20px;transition:width .2s}.budget-hint{font-size:11px;color:#6e7b70;margin-top:10px}.budget-action{border:0;background:none;color:var(--green);font-weight:700;font-size:11px;padding:0;margin-top:13px}
    .quick{padding:20px}.quick .panel-head{margin-bottom:13px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:11px}.field[hidden]{display:none}.field label{font-size:10px;font-weight:700;color:#657168}.field input,.field select{height:38px;width:100%;border:1px solid var(--line);background:#fff;border-radius:9px;padding:0 10px;color:var(--ink);outline:none}.field input:focus,.field select:focus{border-color:#7ca38a;box-shadow:0 0 0 3px #397b5912}.type-switch{display:grid;grid-template-columns:1fr 1fr;background:#f2f4f1;padding:3px;border-radius:9px;margin-bottom:12px}.type-switch button{border:0;border-radius:7px;background:transparent;color:#7b847d;padding:8px;font-size:11px;font-weight:700}.type-switch button.active[data-type="expense"]{background:#fff;color:var(--red);box-shadow:0 1px 4px #12201612}.type-switch button.active[data-type="income"]{background:#fff;color:var(--green);box-shadow:0 1px 4px #12201612}.fields-row{display:grid;grid-template-columns:1fr 1fr;gap:9px}.submit{width:100%;height:41px;background:var(--green);color:#fff;border:0;border-radius:9px;font-weight:700;font-size:12px;margin-top:2px}.submit:hover{background:#18583e}.search{height:31px;max-width:140px;border:1px solid var(--line);border-radius:8px;padding:0 9px;font-size:11px;outline:none}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%,20px);opacity:0;background:#20382a;color:white;padding:11px 16px;border-radius:10px;font-size:12px;transition:.2s;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%,0)}
    @media(max-width:900px){.app{padding:0 20px 32px}.grid{grid-template-columns:1fr}.right-col{display:grid;grid-template-columns:1fr 1fr;align-items:start}.quick{grid-row:span 2}.left-col{display:contents}.grid{display:flex;flex-direction:column}.cards{order:0}.panel.chart-panel{order:1}.right-col{order:2}.panel.transactions{order:3}}
    @media(max-width:600px){.app{padding:0 14px 24px}.topbar{height:62px}.local-pill{display:flex;font-size:0;gap:0}.local-pill #syncStatus{display:none}main{padding-top:22px}.heading{align-items:flex-start;gap:12px;flex-direction:column;margin-bottom:16px}.heading h1{font-size:24px}.heading p{font-size:12px}.month-nav{align-self:stretch;justify-content:space-between;min-height:42px}.month-nav button{width:32px;height:32px}.grid{display:flex;flex-direction:column;gap:12px}.left-col,.right-col{display:contents}.cards{order:0;grid-template-columns:1fr 1fr;gap:9px}.card{padding:13px 12px;min-height:105px;border-radius:12px}.card-label{font-size:10px;gap:4px}.ico{width:24px;height:24px}.amount{font-size:18px;margin:11px 0 3px}.footnote{font-size:9px}.quick{order:1}.transactions{order:2}.budget-panel{order:3}.chart-panel{order:4}.panel{padding:16px;border-radius:13px}.chart{height:145px;gap:6px}.flow-legend{gap:10px}.search{max-width:125px;height:36px}.panel-head h2{font-size:14px}.field{margin-bottom:12px;gap:7px}.field label{font-size:11px}.field input,.field select{height:44px;font-size:16px;padding:0 11px}.type-switch{margin-bottom:14px}.type-switch button{padding:10px}.submit{height:46px;font-size:13px}.tx{padding:13px 0;grid-template-columns:40px minmax(0,1fr) auto;gap:10px}.tx-icon{width:38px;height:38px}.tx-title{font-size:13px}.tx-meta{font-size:11px}.tx-value{font-size:12px}.tx-date{font-size:10px}.brand{font-size:16px;gap:8px}.brand-mark{width:31px;height:31px}.top-right{gap:8px}}
    @media(max-width:600px){.transaction-head{align-items:flex-start;flex-direction:column;gap:12px}.view-switch{width:100%}.view-switch button{flex:1;padding:9px}.transactions-toolbar{margin-top:0}.category-group summary{grid-template-columns:34px minmax(0,1fr) auto;padding:11px}.category-total{font-size:12px}.category-detail{padding-left:55px}.category-split{font-size:9px}}
    body[data-theme="dark"]{--ink:#e8eee9;--muted:#a5b0a7;--line:#2d3a31;--paper:#1a251e;--bg:#111914;--green:#82c69a;--mint:#253a2c;--red:#ed9887;--redbg:#3b2925;--yellow:#e5c16b;--shadow:0 8px 30px #0003;color-scheme:dark}
    body[data-theme="dark"] .topbar{border-color:var(--navy-line)}body[data-theme="dark"] .month-nav,body[data-theme="dark"] .field input,body[data-theme="dark"] .field select,body[data-theme="dark"] .search,body[data-theme="dark"] .theme-toggle{background:var(--navy-side);color:var(--navy-text);border-color:var(--navy-line)}body[data-theme="dark"] .ico{background:#253a2c;color:#9bd5ac}body[data-theme="dark"] .ico.out{background:#3b2925;color:#ed9887}body[data-theme="dark"] .ico.balance,body[data-theme="dark"] .ico.future{background:#3a3424;color:#e5c16b}body[data-theme="dark"] .tx-icon{background:#24342a}body[data-theme="dark"] .tx{border-color:#29362d}body[data-theme="dark"] .tx-status{color:#e5c16b}body[data-theme="dark"] .tx-status.paid{color:#8bd5a3}body[data-theme="dark"] .tx-settle{color:#8bd5a3}body[data-theme="dark"] .chart{border-color:#344238}body[data-theme="dark"] .chart:before,body[data-theme="dark"] .chart:after{border-color:#2d3a31}body[data-theme="dark"] .bar{background:#75b98d}body[data-theme="dark"] .bar.expense{background:#b77b62}body[data-theme="dark"] .budget-panel{background:var(--navy-card);border-color:#2e4434}body[data-theme="dark"] .budget-panel .progress{background:#304534}body[data-theme="dark"] .type-switch{background:var(--navy)}body[data-theme="dark"] .type-switch button.active[data-type="expense"],body[data-theme="dark"] .type-switch button.active[data-type="income"]{background:var(--navy-raised);color:var(--success)}body[data-theme="dark"] .field input::placeholder,body[data-theme="dark"] .search::placeholder{color:#8f9b92}body[data-theme="dark"] .tx-value.in{color:#8bd5a3}body[data-theme="dark"] .tx-value.out{color:#ed9887}
    body[data-theme="dark"] .view-switch{background:#111914}body[data-theme="dark"] .view-switch button[aria-pressed="true"]{background:#2a392f;color:#9bd5ac}body[data-theme="dark"] .category-group{background:var(--paper);border-color:var(--line)}body[data-theme="dark"] .category-icon{background:#24342a}body[data-theme="dark"] .category-bar{background:#2d3a31}body[data-theme="dark"] .category-split b{color:var(--ink)}body[data-theme="dark"] .category-chart-track,body[data-theme="dark"] .category-chart-total{background:#554a2c}body[data-theme="dark"] .category-chart-paid{background:#75b98d}
    body[data-theme="dark"] .category-chart-track{background:#2d3a31}body[data-theme="dark"] .category-chart-total{background:#75b98d}
    body[data-theme="dark"] .chart-navigation button{background:var(--navy-side);color:var(--ink);border-color:var(--line)}
    .new-entry-button{width:100%;min-height:82px;display:flex;align-items:center;gap:13px;padding:16px;border:1px solid #dce8df;border-radius:15px;background:var(--paper);color:var(--ink);text-align:left;box-shadow:var(--shadow);transition:border-color .16s,transform .16s,box-shadow .16s}.new-entry-button:hover{border-color:#91b69d;transform:translateY(-1px);box-shadow:0 12px 32px #1c332411}.new-entry-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:var(--green);color:#fff;font-size:25px;flex:0 0 auto}.new-entry-button strong,.new-entry-button small{display:block}.new-entry-button strong{font:700 14px Manrope,sans-serif}.new-entry-button small{margin-top:4px;color:var(--muted);font-size:11px}.new-entry-arrow{margin-left:auto;color:var(--green);font-size:18px}.transaction-overlay{z-index:90}.transaction-dialog{position:relative;width:min(100%,560px);max-height:min(92vh,900px);overflow:auto;padding:28px;background:var(--paper);border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 80px #0003;animation:edit-in .18s ease-out}.transaction-dialog h2{margin:0;font:700 22px Manrope,sans-serif;letter-spacing:-.5px}.transaction-dialog .edit-context{margin-bottom:20px}.transaction-dialog .type-switch{margin-bottom:15px}.transaction-dialog .field{margin-bottom:13px}.transaction-dialog .field label{font-size:11px}.transaction-dialog .field input,.transaction-dialog .field select{height:44px;font-size:15px}.transaction-dialog .submit{height:48px;font-size:13px}.transaction-dialog #valueHint{font-weight:500;color:var(--muted);font-size:10px}
    body[data-theme="dark"] .new-entry-button{background:var(--paper);border-color:var(--line);color:var(--ink)}body[data-theme="dark"] .new-entry-icon{background:#75b98d;color:#102016}
    @media(max-width:600px){.new-entry-button{min-height:74px;padding:14px;border-radius:13px}.transaction-overlay{align-items:end;padding:0}.transaction-dialog{width:100%;max-height:94dvh;padding:25px 20px max(24px,env(safe-area-inset-bottom));border-radius:20px 20px 0 0;animation:edit-sheet-in .2s ease-out}.transaction-dialog .field{margin-bottom:12px}.transaction-dialog .fields-row{gap:9px}.transaction-dialog .field input,.transaction-dialog .field select{height:46px;font-size:16px}}
    .edit-overlay{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:18px;background:#101a13a8;backdrop-filter:blur(4px)}.edit-dialog{position:relative;width:min(100%,440px);padding:28px;background:var(--paper);border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 80px #0003;animation:edit-in .18s ease-out}.edit-close{position:absolute;top:16px;right:16px;width:34px;height:34px;border:0;border-radius:10px;background:var(--bg);color:var(--muted);font-size:21px;line-height:1}.edit-kicker{margin:0 0 8px;color:var(--green);font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.edit-dialog h2{margin:0;font:700 21px Manrope,sans-serif;letter-spacing:-.5px}.edit-context{margin:8px 38px 22px 0;color:var(--muted);font-size:12px;line-height:1.5}.edit-context strong{color:var(--ink)}.edit-dialog label{display:block;margin-bottom:7px;font-size:11px;font-weight:700}.edit-money{height:56px;display:flex;align-items:center;gap:11px;padding:0 15px;border:1px solid var(--line);border-radius:12px;background:var(--bg);transition:border-color .15s,box-shadow .15s}.edit-money:focus-within{border-color:#78a488;box-shadow:0 0 0 3px #397b5918}.edit-money span{color:var(--muted);font-size:14px;font-weight:600}.edit-money input{width:100%;height:100%;border:0;outline:0;background:transparent;color:var(--ink);font:700 20px Manrope,sans-serif}.edit-money[aria-invalid="true"]{border-color:#c15d4a;box-shadow:0 0 0 3px #c15d4a18}.edit-error{margin:7px 0 0;color:#bd5545;font-size:11px}.edit-note{margin:11px 0 0;color:var(--muted);font-size:10px}.edit-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:24px}.edit-actions button{min-height:42px;padding:0 16px;border-radius:10px;font-size:12px;font-weight:700}.edit-cancel{border:1px solid var(--line);background:var(--paper);color:var(--ink)}.edit-save{border:1px solid var(--green);background:var(--green);color:#fff}.edit-save:hover{filter:brightness(.94)}@keyframes edit-in{from{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:600px){.edit-overlay{align-items:end;padding:0}.edit-dialog{width:100%;padding:26px 20px max(24px,env(safe-area-inset-bottom));border-radius:20px 20px 0 0;animation:edit-sheet-in .2s ease-out}.edit-actions button{flex:1}}@keyframes edit-sheet-in{from{transform:translateY(20px);opacity:.7}to{transform:translateY(0);opacity:1}}
    @media(max-width:900px){.panel.category-chart-panel{order:2}.right-col{order:3}.panel.transactions{order:4}}
    @media(max-width:600px){.panel.transactions{order:2}.budget-panel{order:3}.panel.chart-panel{order:4}.panel.category-chart-panel{order:5}.flow-legend{gap:9px}.flow-legend span{font-size:12px!important}.chart{height:150px}.category-chart-row{grid-template-columns:84px minmax(35px,1fr) auto;gap:7px}.category-chart-value{font-size:12px}}
    @media(max-width:600px){.panel.chart-panel{order:1}.panel.category-chart-panel{order:2}.new-entry-button{order:3}.panel.transactions{order:4}.budget-panel{order:5}}
    body .category-overlay{z-index:110}.category-dialog{position:relative;width:min(100%,560px);max-height:min(90vh,820px);overflow:auto;padding:28px;background:var(--paper);border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 80px #0003;animation:edit-in .18s ease-out}.category-dialog h2{margin:0;font:700 22px Manrope,sans-serif;letter-spacing:-.5px}.category-dialog .edit-context{margin-bottom:17px}.category-type-switch{margin-bottom:18px}.category-type-switch button{flex:1}.new-category-form>label{display:block;margin-bottom:7px;font-size:11px;font-weight:700;color:var(--ink)}.new-category-form>div{display:flex;gap:8px}.new-category-form input,.inline-category-form input{min-width:0;height:44px;flex:1;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);font:inherit;outline:0}.new-category-form input:focus,.inline-category-form input:focus{border-color:#7ca38a;box-shadow:0 0 0 3px #397b5912}.new-category-form button{width:46px;height:44px;border:0;border-radius:10px;background:var(--green);color:#fff;font-size:22px}.category-settings-note{margin:12px 0;color:var(--muted);font-size:11px;line-height:1.5}.managed-category-list{display:flex;flex-direction:column;gap:7px;margin:0;padding:0;list-style:none}.managed-category-row{padding:10px 11px;border:1px solid var(--line);border-radius:11px;background:var(--paper)}.managed-category-main{display:flex;align-items:center;justify-content:space-between;gap:10px}.managed-category-name{min-width:0;font-size:13px;font-weight:700;overflow-wrap:anywhere}.managed-category-name small{display:block;margin-top:3px;color:var(--muted);font-size:10px;font-weight:400}.managed-category-actions{display:flex;gap:7px;flex:0 0 auto}.managed-category-actions button,.inline-category-form button{min-height:34px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--green);font-size:11px;font-weight:700}.managed-category-actions .category-delete{color:var(--red)}.managed-category-actions button:disabled{opacity:.45;cursor:not-allowed}.inline-category-form{display:flex;align-items:center;gap:7px}.inline-category-form input{height:38px}.inline-category-form button[type="submit"]{background:var(--green);color:white;border-color:var(--green)}.category-delete-prompt{margin-top:14px;padding:14px;border:1px solid #ead8b4;border-radius:11px;background:#fbf6e9}.category-delete-prompt p{margin:0 0 12px;color:var(--ink);font-size:12px;line-height:1.5}.category-delete-prompt>div{display:flex;justify-content:flex-end;gap:8px}.delete-confirm{min-height:38px;padding:0 12px;border:0;border-radius:8px;background:#b95345;color:#fff;font-size:11px;font-weight:700}.category-delete-prompt .edit-cancel{min-height:38px;padding:0 12px;font-size:11px}.category-delete-prompt[hidden]{display:none!important}
    body[data-theme="dark"] .new-category-form input,body[data-theme="dark"] .inline-category-form input{background:var(--navy-side);color:var(--ink);border-color:var(--line)}body[data-theme="dark"] .category-delete-prompt{background:#352e1f;border-color:#59482b}
    /* Maior legibilidade para textos auxiliares em toda a interface */
    .eyebrow{font-size:12px}.heading p{font-size:14px}.card-label{font-size:13px}.footnote{font-size:12px}.panel-head span{font-size:13px}
    .flow-legend span{font-size:14px!important}.chart-navigation{font-size:13px}.month-label{font-size:13px}
    .category-chart-legend{font-size:13px}.category-chart-label{font-size:14px}.category-chart-value{font-size:13px}
    .tx-title{font-size:14px}.tx-meta,.tx-status,.tx-settle,.tx-edit,.tx-date,.transaction-caption{font-size:12px}.tx-value{font-size:13px}
    .category-count,.category-split{font-size:12px}.category-name,.category-count{display:block;line-height:1.35}.category-count{margin-top:3px}.budget-top span{font-size:13px}.budget-hint,.budget-action{font-size:13px}
    .field label,.type-switch button,.view-switch button,.search{font-size:13px}.category-name{font-size:14px}
    .category-settings-note{font-size:13px}.edit-kicker{font-size:11px}.edit-context{font-size:14px}.edit-dialog label{font-size:13px}.edit-note,.edit-error{font-size:12px}
    .new-entry-button small{font-size:13px}.transaction-dialog .field label{font-size:13px}.transaction-dialog #valueHint{font-size:12px}
    @media(max-width:600px){.card-label{font-size:12px}.footnote{font-size:11px}.flow-legend span{font-size:13px!important}.chart-navigation{font-size:12px}.month-label{font-size:13px}.category-chart-label{font-size:13px}.tx-title{font-size:14px}.tx-meta{font-size:12px}.tx-date{font-size:12px}.tx-value{font-size:13px}.category-split{font-size:11px}.budget-hint{font-size:12px}}
    .month-nav .month-picker-trigger{width:auto;height:auto;padding:7px 5px;color:var(--ink);font:600 13px 'DM Sans',sans-serif;white-space:nowrap}.month-nav .month-picker-trigger:hover{color:var(--green)}
    .month-picker-dialog{position:relative;width:min(100%,400px);padding:26px;background:var(--paper);border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 80px #0003;animation:edit-in .18s ease-out}.month-picker-dialog h2{margin:0 0 20px;font:700 22px Manrope,sans-serif;letter-spacing:-.5px}.month-picker-year{display:grid;grid-template-columns:auto minmax(110px,1fr);align-items:center;gap:14px;margin-bottom:17px}.month-picker-year label{font-size:14px;font-weight:700}.month-picker-year select{appearance:none;-webkit-appearance:none;height:44px;padding:0 36px 0 12px;border:1px solid var(--line);border-radius:10px;background-color:var(--bg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23758078' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:14px 14px;color:var(--ink);font:600 15px 'DM Sans',sans-serif}.month-picker-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.month-picker-grid button{min-height:46px;border:1px solid var(--line);border-radius:11px;background:var(--paper);color:var(--ink);font:600 14px 'DM Sans',sans-serif;text-transform:capitalize;transition:background .15s,border-color .15s,color .15s}.month-picker-grid button:hover{border-color:#81a990;background:var(--mint)}.month-picker-grid button[aria-pressed="true"]{border-color:var(--green);background:var(--green);color:#fff}
    body[data-theme="dark"] .month-picker-year select{background-color:var(--navy-side);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23a5b0a7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:14px 14px;color:var(--ink);border-color:var(--line)}body[data-theme="dark"] .month-picker-grid button{background:var(--paper);color:var(--ink);border-color:var(--line)}body[data-theme="dark"] .month-picker-grid button:hover{background:#243a2c;border-color:#52775f}body[data-theme="dark"] .month-picker-grid button[aria-pressed="true"]{background:#75b98d;border-color:#75b98d;color:#102016}
    @media(max-width:600px){.month-nav .month-picker-trigger{width:auto;height:auto;padding:7px 4px;font-size:13px}.month-picker-dialog{padding:24px 20px;border-radius:20px}.month-picker-grid{gap:8px}.month-picker-grid button{min-height:48px}}
    .monthly-report-panel .panel-head{align-items:flex-start}.monthly-report-panel .panel-head h2{margin-bottom:4px}.monthly-report-panel .panel-head span{font-size:12px;color:var(--muted)}.report-export{border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--green);padding:8px 11px;font-size:12px;font-weight:700}.monthly-report-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.monthly-report-grid>div{padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--bg)}.monthly-report-grid span,.monthly-report-grid strong{display:block}.monthly-report-grid span{font-size:12px;color:var(--muted)}.monthly-report-grid strong{margin-top:7px;font:700 15px Manrope,sans-serif}.report-comparison{margin:13px 0 0;color:var(--muted);font-size:13px;line-height:1.5}.report-comparison strong{color:var(--ink)}
    .due-panel .panel-head{margin-bottom:12px}.due-panel .panel-head h2{margin-bottom:4px}.due-panel .panel-head span{font-size:12px;color:var(--muted)}.upcoming-due-list{display:flex;flex-direction:column}.due-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line)}.due-item:last-child{border-bottom:0;padding-bottom:0}.due-name{font-size:14px;font-weight:700}.due-meta{margin-top:3px;color:var(--muted);font-size:12px}.due-right{text-align:right}.due-value{font-size:13px;font-weight:700}.due-settle{margin-top:5px;padding:0;border:0;background:none;color:var(--green);font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:2px}.due-empty{padding:10px 0;color:var(--muted);font-size:13px;line-height:1.5}
    .category-budget-settings{margin:0 0 16px;border:1px solid var(--line);border-radius:12px;background:var(--bg);padding:0 12px 12px}.category-budget-settings summary{padding:12px 0;cursor:pointer;color:var(--ink);font-size:14px;font-weight:700}.category-budget-settings>p,.backup-settings>p{margin:0 0 11px;color:var(--muted);font-size:12px;line-height:1.45}.category-budget-list{display:flex;flex-direction:column;gap:8px}.category-budget-setting-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,145px);align-items:center;gap:10px}.category-budget-setting-row label{font-size:13px;font-weight:600}.category-budget-setting-row input{width:100%;height:40px;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink);font:500 14px 'DM Sans',sans-serif}.category-budget-save{margin-top:12px!important;height:42px!important}.backup-settings{margin:4px 0 17px;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--bg)}.backup-settings h3{margin:0 0 6px;font:700 15px Manrope,sans-serif}.backup-actions,.backup-import-review>div{display:flex;gap:8px;flex-wrap:wrap}.backup-actions button,.backup-file-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 12px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--green);font:700 12px 'DM Sans',sans-serif;cursor:pointer}.backup-file-button input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.backup-import-review{margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}.backup-import-review p{margin:0 0 10px;font-size:13px;line-height:1.5}.backup-import-review button{min-height:38px;padding:0 11px;font-size:12px}.tx-note{margin-top:4px;color:var(--muted);font-size:12px;line-height:1.4;overflow-wrap:anywhere}.category-budget-meter{grid-column:1/-1;display:flex;align-items:center;gap:9px;margin-top:-3px;color:var(--muted);font-size:11px}.category-budget-meter span{flex:0 0 auto}.category-budget-track{height:6px;flex:1;overflow:hidden;border-radius:9px;background:#e8eee9}.category-budget-track i{display:block;height:100%;border-radius:9px;background:#397b59}.category-budget-track i.over{background:var(--red)}.category-chart-row{row-gap:4px}
    body[data-theme="dark"] .monthly-report-grid>div,body[data-theme="dark"] .category-budget-settings,body[data-theme="dark"] .backup-settings{background:var(--navy-side);border-color:var(--navy-line);color:var(--navy-text)}body[data-theme="dark"] .report-export,body[data-theme="dark"] .backup-actions button,body[data-theme="dark"] .backup-file-button{background:var(--paper);color:var(--green);border-color:var(--line)}body[data-theme="dark"] .category-budget-setting-row input{background:var(--navy-side);color:var(--ink);border-color:var(--line)}body[data-theme="dark"] .category-budget-track{background:#35415e}
    @media(max-width:900px){.monthly-report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
    @media(max-width:600px){.monthly-report-grid{gap:8px}.monthly-report-grid>div{padding:10px}.monthly-report-grid span{font-size:11px}.monthly-report-grid strong{font-size:14px}.report-export{padding:8px;font-size:11px}.due-item{padding:12px 0}.category-budget-setting-row{grid-template-columns:minmax(0,1fr) 120px}}
    .field select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23758078' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat!important;background-position:right 12px center!important;background-size:14px 14px!important;padding-right:36px!important}
    body[data-theme="dark"] .field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23a5b0a7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat!important;background-position:right 12px center!important;background-size:14px 14px!important}
    @media(max-width:600px){.category-overlay{align-items:end;padding:0}.category-dialog{width:100%;max-height:94dvh;padding:25px 18px max(24px,env(safe-area-inset-bottom));border-radius:20px 20px 0 0;animation:edit-sheet-in .2s ease-out}.managed-category-row{padding:10px}.managed-category-actions{gap:5px}.managed-category-actions button{padding:0 8px}}
    body .transaction-edit-overlay{z-index:120}.transaction-edit-dialog{width:min(100%,560px)}.transaction-edit-dialog .field{margin-bottom:13px}.transaction-edit-dialog .field label{font-size:11px}.transaction-edit-dialog .field input,.transaction-edit-dialog .field select{height:44px;font-size:15px}.transaction-edit-dialog .field input:focus,.transaction-edit-dialog .field select:focus{border-color:#7ca38a;box-shadow:0 0 0 3px #397b5912}.transaction-edit-dialog #editValueHint{color:var(--muted);font-size:10px;font-weight:500}.transaction-edit-dialog .edit-error{margin:6px 0;color:#bd5545;font-size:11px}
    @media(max-width:600px){.transaction-edit-overlay{align-items:end;padding:0}.transaction-edit-dialog{width:100%;max-height:94dvh;padding:25px 20px max(24px,env(safe-area-inset-bottom));border-radius:20px 20px 0 0;animation:edit-sheet-in .2s ease-out}.transaction-edit-dialog .field{margin-bottom:12px}.transaction-edit-dialog .field input,.transaction-edit-dialog .field select{height:46px;font-size:16px}}

.field textarea{width:100%;min-height:66px;resize:vertical;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);font:500 14px 'DM Sans',sans-serif;line-height:1.4;outline:0}.field textarea:focus{border-color:#7ca38a;box-shadow:0 0 0 3px #397b5912}.field textarea::placeholder{color:var(--muted)}body[data-theme='dark'] .field textarea{background:var(--navy-side);color:var(--ink);border-color:var(--line)}

@media(max-width:600px){.monthly-report-panel{order:3}.new-entry-button{order:4}.due-panel{order:5}.transactions{order:6}.budget-panel{order:7}}

@media(max-width:600px){.panel.transactions{order:6}}
    .panel-action{border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--green);padding:7px 10px;font-size:12px;font-weight:700}.account-overview{display:flex;flex-direction:column}.account-summary-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid var(--line)}.account-summary-row:last-child{border-bottom:0}.account-summary-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:var(--mint);color:var(--green)}.account-summary-main{min-width:0}.account-summary-main strong,.account-summary-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-summary-main strong{font-size:13px}.account-summary-main small{margin-top:3px;color:var(--muted);font-size:11px}.account-amount{font:700 13px Manrope,sans-serif;white-space:nowrap}.credit-amount{color:var(--red)}.account-pay{grid-column:2/-1;justify-self:start;padding:0;border:0;background:none;color:var(--green);font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:2px}
    .goals-panel .panel-head{margin-bottom:12px}.goal-form{display:grid;gap:9px;margin-bottom:12px}.goal-form>input,.goal-form select,.goal-form .fields-row>input{min-width:0;width:100%;height:42px;padding:0 11px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink);font:500 13px 'DM Sans',sans-serif}.goal-form .fields-row{gap:8px}.goal-form .submit{height:42px;margin:0}.goals-list{display:flex;flex-direction:column;gap:9px}.goal-card{padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--bg)}.goal-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.goal-card-head strong,.goal-card-head span{display:block}.goal-card-head strong{font-size:13px}.goal-card-head span{margin-top:3px;color:var(--muted);font-size:12px}.goal-delete{width:26px;height:26px;border:0;border-radius:8px;background:var(--paper);color:var(--muted);font-size:18px}.goal-progress{height:7px;margin:10px 0 6px;border-radius:10px;background:#dce7dd;overflow:hidden}.goal-progress span{display:block;height:100%;border-radius:10px;background:var(--green)}.goal-card>small{color:var(--muted);font-size:11px}.goal-contribute-details{margin-top:9px}.goal-contribute-details summary{cursor:pointer;color:var(--green);font-size:12px;font-weight:700}.goal-contribute-details form{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:8px}.goal-contribute-details input,.goal-contribute-details select{min-width:0;height:38px;padding:0 8px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font:500 12px 'DM Sans',sans-serif}.goal-contribute-details button{grid-column:1/-1;height:36px;border:0;border-radius:8px;background:var(--green);color:#fff;font-size:12px;font-weight:700}
    .account-settings{margin:16px 0;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--bg)}.account-settings h3{margin:0 0 11px;font:700 15px Manrope,sans-serif}.account-form{display:grid;grid-template-columns:1fr 1fr;gap:8px}.account-form input,.account-form select,.account-setting-fields input,.account-setting-fields select{min-width:0;width:100%;height:40px;padding:0 9px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font:500 12px 'DM Sans',sans-serif}.account-form .submit{grid-column:1/-1;margin:0;height:40px}.managed-account-list{display:flex;flex-direction:column;gap:9px;margin-top:12px}.managed-account-row{padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}.account-setting-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}.account-setting-fields label{min-width:0;color:var(--muted);font-size:11px;font-weight:600}.account-setting-fields input,.account-setting-fields select{display:block;margin-top:4px;color:var(--ink)}.managed-account-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:8px}.managed-account-actions button{min-height:32px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--green);font-size:11px;font-weight:700}.managed-account-actions .account-delete{color:var(--red)}
    .advanced-filters{position:relative;flex:0 0 auto}.advanced-filters summary{cursor:pointer;list-style:none;height:36px;display:flex;align-items:center;padding:0 10px;border:1px solid var(--line);border-radius:8px;color:var(--green);font-size:12px;font-weight:700}.advanced-filters summary::-webkit-details-marker{display:none}.filter-grid{position:absolute;z-index:15;top:calc(100% + 7px);right:0;width:min(340px,calc(100vw - 60px));display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--paper);box-shadow:0 12px 32px #0002}.filter-grid label{display:grid;gap:4px;color:var(--muted);font-size:11px;font-weight:600}.filter-grid input,.filter-grid select{width:100%;min-width:0;height:36px;padding:0 7px;border:1px solid var(--line);border-radius:7px;background:var(--bg);color:var(--ink);font:500 12px 'DM Sans',sans-serif}.filter-grid button{grid-column:1/-1;min-height:36px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--green);font-size:12px;font-weight:700}.tx-value.transfer{color:var(--muted)}.type-switch.entry-type-switch{grid-template-columns:repeat(3,minmax(0,1fr))}.field textarea{font-family:'DM Sans',sans-serif}
    body[data-theme="dark"] .goal-card,body[data-theme="dark"] .account-settings{background:var(--navy-side)}body[data-theme="dark"] .goal-form>input,body[data-theme="dark"] .goal-form select,body[data-theme="dark"] .goal-form .fields-row>input,body[data-theme="dark"] .goal-contribute-details input,body[data-theme="dark"] .goal-contribute-details select,body[data-theme="dark"] .account-form input,body[data-theme="dark"] .account-form select,body[data-theme="dark"] .account-setting-fields input,body[data-theme="dark"] .account-setting-fields select,body[data-theme="dark"] .filter-grid input,body[data-theme="dark"] .filter-grid select{background:var(--navy-side);color:var(--navy-text);border-color:var(--navy-line)}body[data-theme="dark"] .goal-progress{background:#35415e}body[data-theme="dark"] .goal-delete,body[data-theme="dark"] .filter-grid,body[data-theme="dark"] .filter-grid button{background:var(--navy-card);color:var(--navy-text);border-color:var(--navy-line)}
    @media(max-width:600px){.account-summary-row{gap:7px}.account-summary-main small{font-size:10px}.account-amount{font-size:12px}.advanced-filters summary{height:36px}.filter-grid{position:static;width:100%;margin-top:7px}.transactions-toolbar{flex-wrap:wrap}.transactions-toolbar .transaction-caption{flex:1}.transactions-toolbar .search{flex:1;max-width:none}.transactions-toolbar .advanced-filters{margin-left:auto}.account-setting-fields{grid-template-columns:1fr 1fr}.goal-form .fields-row{grid-template-columns:1fr 1fr}}

/* Atalho de lançamento flutuante no mobile */
@media (max-width: 600px) {
  .new-entry-button {
    position: fixed;
    right: 18px;
    bottom: calc(20px + env(safe-area-inset-bottom, 0px));
    z-index: 70;
    width: 60px;
    min-height: 60px;
    height: 60px;
    padding: 4px;
    justify-content: center;
    border: 0;
    border-radius: 50%;
    box-shadow: 0 8px 24px rgba(14, 40, 27, .28);
  }
  .new-entry-button:hover { transform: translateY(-2px); }
  .new-entry-button > span:nth-child(2),
  .new-entry-button > .new-entry-arrow { display: none; }
  .new-entry-button .new-entry-icon {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    font-size: 30px;
  }
  .app { padding-bottom: calc(100px + env(safe-area-inset-bottom, 0px)); }
}

/* O atalho acompanha a rolagem e fica sempre acessível */
.new-entry-button {
  position: fixed;
  right: 24px;
  bottom: calc(24px + env(safe-area-inset-bottom, 0px));
  z-index: 70;
  width: auto;
  min-width: 220px;
  box-shadow: 0 8px 24px rgba(14, 40, 27, .22);
}
.app { padding-bottom: 120px; }
@media (max-width: 600px) {
  .new-entry-button {
    right: 18px;
    bottom: calc(20px + env(safe-area-inset-bottom, 0px));
    width: 60px;
    min-width: 60px;
    height: 60px;
    min-height: 60px;
    padding: 4px;
    justify-content: center;
    border-radius: 50%;
  }
  .new-entry-button > span:nth-child(2),
  .new-entry-button > .new-entry-arrow { display: none; }
  .new-entry-button .new-entry-icon {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    font-size: 30px;
  }
}

/* O botão flutuante mostra somente o ícone em qualquer tamanho de tela */
.new-entry-button {
  width: 60px;
  min-width: 60px;
  height: 60px;
  min-height: 60px;
  padding: 4px;
  justify-content: center;
  border-radius: 50%;
}
.new-entry-button > span:nth-child(2),
.new-entry-button > .new-entry-arrow { display: none; }
.new-entry-button .new-entry-icon {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  font-size: 30px;
}

.filter-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:8px}.filter-grid .filter-actions button{grid-column:auto;min-height:38px}.filter-grid .apply-filters{border-color:var(--green);background:var(--green);color:#fff}.filter-grid .apply-filters:hover{filter:brightness(.94)}
.advanced-filters:not([open]) .filter-grid{display:none}

.applied-filters{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 2px}.applied-filter-chip{display:inline-flex;align-items:center;min-height:25px;padding:3px 9px;border:1px solid var(--line);border-radius:999px;background:var(--mint);color:var(--green);font-size:11px;font-weight:700}

.clear-applied-filters{min-height:25px;padding:3px 9px;border:0;border-radius:999px;background:transparent;color:var(--muted);font:700 11px 'DM Sans',sans-serif;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.clear-applied-filters:hover{color:var(--red)}

.budget-alerts{display:grid;gap:6px;margin-top:9px}.budget-alert{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:8px 30px 8px 10px;border-radius:9px;font-size:11px;font-weight:700;line-height:1.4}.budget-alert-dismiss{position:absolute;top:3px;right:4px;display:grid;place-items:center;width:22px;height:22px;padding:0;border:0;border-radius:6px;background:transparent;color:inherit;font:700 16px/1 'DM Sans',sans-serif;cursor:pointer;opacity:.75}.budget-alert-dismiss:hover{background:#0000000d;opacity:1}.budget-alert-dismiss:focus-visible{outline:2px solid currentColor;outline-offset:1px}.budget-alert.warning{background:#fff2d8;color:#805b13}.budget-alert.danger{background:#fde8e5;color:#a33e32}body[data-theme="dark"] .budget-alert.warning{background:#3b321f;color:#f0d48e}body[data-theme="dark"] .budget-alert.danger{background:#3b2523;color:#f0a39a}
.due-view-switch{display:flex;gap:4px;padding:3px;border-radius:9px;background:var(--bg)}.due-view-switch button{border:0;border-radius:7px;padding:6px 8px;background:transparent;color:var(--muted);font:700 11px 'DM Sans',sans-serif;cursor:pointer}.due-view-switch button[aria-pressed="true"]{background:var(--paper);color:var(--green);box-shadow:0 1px 3px #0001}.due-calendar-month{margin:2px 0 10px;color:var(--muted);font-size:11px;text-transform:capitalize}.due-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.due-weekday{text-align:center;color:var(--muted);font-size:10px;font-weight:700;padding:4px 0}.due-calendar-day{min-height:54px;padding:5px 4px;border:1px solid var(--line);border-radius:7px;background:var(--paper);overflow:hidden}.due-calendar-day>span{display:block;font-size:11px;font-weight:700}.due-calendar-day.outside{opacity:.42}.due-calendar-day.has-due{background:var(--mint);border-color:#bfd4c3}.due-calendar-day small,.due-calendar-day b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:8px}.due-calendar-day b{margin-top:2px;color:var(--green)}body[data-theme="dark"] .due-calendar-day.has-due{background:var(--navy-side);border-color:#395844}.filtered-export{white-space:nowrap}
@media(max-width:600px){.due-calendar-day{min-height:48px;padding:4px 2px}.due-calendar-day small,.due-calendar-day b{font-size:7px}.transactions-toolbar .filtered-export{flex:1}.due-view-switch button{padding:5px 6px}}

.upcoming-due-list[hidden],.upcoming-due-calendar[hidden]{display:none!important}

.line-icon{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.tx-icon .line-icon{width:19px;height:19px}.category-icon .line-icon,.account-summary-icon .line-icon{width:17px;height:17px}.category-chart-row{grid-template-columns:22px minmax(75px,105px) minmax(40px,1fr) auto}.category-chart-icon{display:grid;place-items:center;color:var(--green)}.category-chart-icon .line-icon{width:15px;height:15px}.tx-icon{color:var(--green)}body[data-theme="dark"] .tx-icon,body[data-theme="dark"] .category-icon{background:var(--navy-side)}

.brand-mark svg,.new-entry-icon svg{width:22px;height:22px;display:block;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.new-entry-icon svg{width:25px;height:25px}

/* Annual overview, user layout preferences and local search */
.annual-year-label{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:11px;font-weight:600}.annual-year-label select{height:34px;padding:0 8px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font:600 12px 'DM Sans',sans-serif}.annual-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0}.annual-totals>div{min-width:0;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--bg)}.annual-totals span,.annual-totals strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.annual-totals span{color:var(--muted);font-size:10px}.annual-totals strong{margin-top:4px;font:700 13px Manrope,sans-serif}.annual-month-list{display:grid;gap:7px}.annual-month-row{display:grid;grid-template-columns:72px minmax(0,1fr);gap:2px 10px;align-items:center;padding:7px 0;border-bottom:1px solid var(--line)}.annual-month-name{text-transform:capitalize;font-size:12px;font-weight:700}.annual-month-data{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:10px}.annual-month-data strong{color:var(--green);font-weight:700}.annual-month-data strong.negative{color:var(--red)}.annual-month-bars{grid-column:2;display:grid;gap:3px}.annual-month-bars i,.annual-month-bars b{display:block;height:4px;border-radius:5px;background:#43805d}.annual-month-bars b{background:#d58b70}body[data-theme="dark"] .annual-totals>div{background:var(--navy-side)}.annual-totals select{background:var(--paper)}
.due-reminder-banner{margin:0 0 9px;padding:9px 11px;border-radius:9px;background:#fff2d8;color:#805b13;font-size:11px;line-height:1.45}body[data-theme="dark"] .due-reminder-banner{background:#3b321f;color:#f0d48e}.due-notification-button{white-space:nowrap}.due-notification-button:disabled{opacity:.7;cursor:default}

.dashboard-settings-dialog{position:relative;width:min(100%,480px);max-height:min(88dvh,760px);overflow:auto;padding:28px;border-radius:20px;background:var(--paper);box-shadow:0 24px 70px #0003}.dashboard-settings-dialog h2{margin:0 0 8px;font:700 22px Manrope,sans-serif}.dashboard-settings-dialog .edit-context{margin:0 0 16px;color:var(--muted);font-size:13px}.dashboard-visibility-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.dashboard-visibility-item{display:flex;align-items:center;gap:9px;min-height:42px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:var(--bg);font-size:12px;font-weight:600}.dashboard-visibility-item input{accent-color:var(--green)}.dashboard-reset{width:100%;height:42px;margin-top:14px!important}.theme-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}[data-dashboard-section][hidden]{display:none!important}
@media(max-width:600px){.annual-totals>div{padding:8px}.annual-totals strong{font-size:11px}.annual-month-row{grid-template-columns:58px minmax(0,1fr)}.annual-month-data{font-size:9px}.dashboard-settings-dialog{width:100%;max-height:92dvh;padding:25px 18px max(24px,env(safe-area-inset-bottom));border-radius:20px 20px 0 0}.dashboard-visibility-list{grid-template-columns:1fr}.due-notification-button{font-size:10px;padding:6px 7px}}

.panel-collapse-trigger{display:flex;align-items:center;gap:9px;min-width:0;padding:0;border:0;background:none;color:var(--ink);text-align:left;cursor:pointer}.panel-collapse-trigger>span{display:grid;gap:4px}.panel-collapse-trigger h2{margin:0;font:700 15px Manrope,sans-serif}.panel-collapse-trigger>span>span{color:var(--muted);font-size:12px}.panel-collapse-trigger>svg{width:17px;height:17px;flex:0 0 auto;fill:none;stroke:var(--muted);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s ease}.panel-collapse-trigger[aria-expanded="true"]>svg{transform:rotate(180deg)}.panel-collapse-trigger:focus-visible{outline:2px solid var(--green);outline-offset:4px;border-radius:4px}.collapsible-report-content{margin-top:14px}

.tx-delete{border:0;background:none;padding:0;color:var(--red);font-size:10px;font-weight:700;text-decoration:underline;text-underline-offset:2px;cursor:pointer}

.delete-confirm-dialog{position:relative;width:min(100%,410px);padding:25px;border:1px solid var(--line);border-radius:18px;background:var(--paper);box-shadow:0 24px 70px #0004;animation:edit-in .18s ease-out}.delete-confirm-icon{width:42px;height:42px;display:grid;place-items:center;margin-bottom:14px;border-radius:13px;background:#fde9e6;color:var(--red)}.delete-confirm-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.delete-confirm-dialog h2{margin:0 0 8px;font:700 19px Manrope,sans-serif;color:var(--ink)}.delete-confirm-dialog p{margin:0;color:var(--muted);font-size:13px;line-height:1.55;overflow-wrap:anywhere}.delete-confirm-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}.delete-confirm-actions button{min-height:40px;padding:0 14px;border-radius:9px;font:700 12px 'DM Sans',sans-serif}.delete-confirm-button{border:0;background:var(--red);color:#fff}.delete-confirm-button:hover{filter:brightness(.94)}.delete-confirm-actions .edit-cancel{border:1px solid var(--line);background:var(--paper);color:var(--ink)}body[data-theme="dark"] .delete-confirm-icon{background:#3b2523;color:#f0a39a}



.category-limits-overview{display:grid;gap:11px}.category-limit-row{padding:10px 0;border-bottom:1px solid var(--line)}.category-limit-row:last-child{border-bottom:0;padding-bottom:0}.category-limit-head{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:8px}.category-limit-icon{display:grid;place-items:center;color:var(--green)}.category-limit-icon .line-icon{width:16px;height:16px}.category-limit-head strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.category-limit-head b{color:var(--green);font:700 12px Manrope,sans-serif}.category-limit-head b.over{color:var(--red)}.category-limit-amount{margin:5px 0 6px 32px;color:var(--muted);font-size:11px}.category-limit-row .category-budget-track{height:7px;margin-left:32px;width:calc(100% - 32px)}.category-limit-row .category-budget-track i{background:var(--green)}.category-limit-row .category-budget-track i.over{background:var(--red)}

/* Ferramentas novas: recorrências, seleção em lote e previsão */
.tx{grid-template-columns:18px 38px minmax(0,1fr) auto}.tx-select{display:grid;place-items:center}.tx-select input,.select-visible-label input{appearance:none;-webkit-appearance:none;width:17px;height:17px;margin:0;border:1.5px solid #cbd5cd;border-radius:5px;background:var(--paper);display:grid;place-content:center;cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .16s ease}.tx-select input::before,.select-visible-label input::before{content:"";width:8px;height:5px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) scale(0);transform-origin:center;transition:transform .12s ease}.tx-select input:checked,.select-visible-label input:checked{background:var(--green);border-color:var(--green)}.tx-select input:checked::before,.select-visible-label input:checked::before{transform:rotate(-45deg) scale(1)}.tx-select input:indeterminate,.select-visible-label input:indeterminate{background:var(--green);border-color:var(--green)}.tx-select input:indeterminate::before,.select-visible-label input:indeterminate::before{width:8px;height:0;border:0;border-top:2px solid #fff;transform:none}.tx-select input:focus-visible,.select-visible-label input:focus-visible{outline:3px solid #1e694c30;outline-offset:2px}.tx-select input:hover,.select-visible-label input:hover{border-color:var(--green);transform:scale(1.06)}.select-visible-label{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:10px;white-space:nowrap;padding:7px 10px;border:1px solid var(--line);border-radius:9px;background:var(--paper);cursor:pointer;transition:background .16s ease,border-color .16s ease}.select-visible-label:has(input:checked),.select-visible-label:has(input:indeterminate){background:#edf5ef;border-color:#d6e6da;color:var(--green);font-weight:700}.tx:has(.tx-select input:checked){background:linear-gradient(90deg,#f4f8f4,transparent 36%)}body[data-theme="dark"] .tx-select input,body[data-theme="dark"] .select-visible-label input{background:#18231c;border-color:#506356}body[data-theme="dark"] .tx-select input:checked,body[data-theme="dark"] .select-visible-label input:checked,body[data-theme="dark"] .tx-select input:indeterminate,body[data-theme="dark"] .select-visible-label input:indeterminate{background:var(--green);border-color:var(--green)}body[data-theme="dark"] .select-visible-label:has(input:checked),body[data-theme="dark"] .select-visible-label:has(input:indeterminate){background:#22372a;border-color:#385a43}.bulk-actions{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:-3px 0 12px;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.bulk-actions[hidden]{display:none}.bulk-actions strong{font-size:11px;margin-right:auto}.bulk-actions button,.bulk-actions select{min-height:32px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);padding:5px 9px;font:inherit;font-size:10px;font-weight:600}.bulk-actions button{cursor:pointer}.bulk-actions #bulkDelete{color:#b84e42}.forecast-start{display:flex;justify-content:space-between;padding:0 0 10px;color:var(--muted);font-size:10px}.forecast-start strong{color:var(--ink);font-size:12px}.forecast-row{display:grid;grid-template-columns:55px minmax(0,1fr) auto;align-items:center;gap:5px;padding:9px 0;border-top:1px solid var(--line)}.forecast-row>span{font-size:10px;font-weight:700;text-transform:capitalize}.forecast-row small{font-size:9px;color:var(--muted)}.forecast-row strong{font-size:10px;color:var(--green)}.forecast-row strong.negative{color:#bd624d}.recurring-summary-row{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid var(--line);font-size:10px}.recurring-summary-row:last-of-type{border-bottom:0}.recurring-summary-row strong{white-space:nowrap}.recurring-summary>small{display:block;color:var(--muted);padding-top:6px}.recurring-overlay{z-index:110}.recurring-dialog{position:relative;width:min(680px,calc(100vw - 32px));max-height:min(85vh,800px);overflow:auto;padding:26px;border:1px solid var(--line);border-radius:18px;background:var(--paper);box-shadow:0 22px 70px #17261d35}.recurring-dialog h2{margin:0 0 7px;font-size:20px}.recurring-dialog .edit-context{margin-bottom:18px}.recurring-list{display:grid;gap:12px}.recurring-rule{padding:14px;border:1px solid var(--line);border-radius:12px}.recurring-rule-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px;font-size:12px}.recurring-rule-state{color:var(--green);font-size:10px;font-weight:700}.recurring-rule-state.paused{color:#a17a2d}.recurring-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.recurring-edit-grid label{display:grid;gap:5px;color:var(--muted);font-size:10px}.recurring-edit-grid input,.recurring-edit-grid select{width:100%;min-height:36px;padding:7px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font:inherit}.recurring-rule-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.recurring-rule-actions button{border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--green);padding:8px 10px;font:inherit;font-size:10px;font-weight:700;cursor:pointer}.recurring-rule-actions .recurring-end{color:#b84e42}.toast{display:flex;align-items:center;gap:12px;pointer-events:none}.toast.show{pointer-events:auto}.toast button{border:0;background:transparent;color:#bde5ce;text-decoration:underline;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.toast button[hidden]{display:none}
@media(max-width:600px){.tx{grid-template-columns:16px 32px minmax(0,1fr) auto;gap:7px}.tx-icon{width:32px;height:32px}.forecast-row{grid-template-columns:48px minmax(0,1fr) auto}.forecast-row small{font-size:8px}.recurring-dialog{padding:20px}.recurring-edit-grid{grid-template-columns:1fr}.bulk-actions{align-items:stretch}.bulk-actions strong{width:100%}}

.category-suggestion{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:7px;padding:8px 10px;border:1px solid #d9e9dd;border-radius:9px;background:#f1f7f2;color:#496451;font-size:10px;line-height:1.4}.category-suggestion[hidden]{display:none}.category-suggestion button{flex:none;border:0;border-radius:7px;padding:6px 9px;background:#1e694c;color:#fff;font:inherit;font-weight:700;cursor:pointer}.category-suggestion button:hover{background:#18583e}body[data-theme="dark"] .category-suggestion{border-color:#385a43;background:#22372a;color:#c6d9cb}

.recurring-list{display:grid;gap:10px}.recurring-accordion{overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.recurring-accordion>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;min-height:53px;padding:12px 15px;font-size:12px;font-weight:700}.recurring-accordion>summary::-webkit-details-marker{display:none}.recurring-accordion>summary::after{content:"";width:8px;height:8px;margin-left:auto;border-right:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);transform:rotate(45deg) translateY(-2px);transition:transform .16s ease}.recurring-accordion[open]>summary::after{transform:rotate(225deg) translate(-2px,-1px)}.recurring-accordion>summary:hover{background:var(--soft)}.recurring-accordion .recurring-rule{margin:0;border:0;border-top:1px solid var(--line);border-radius:0;padding:14px 15px 15px}.recurring-accordion .recurring-rule-state{margin-left:0}body[data-theme="dark"] .recurring-accordion>summary:hover{background:var(--navy-side)}

.category-chart-row{width:100%;border:0;padding:0;background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:7px;transition:background .15s ease,transform .15s ease}.category-chart-row:hover{background:var(--soft);transform:translateX(2px)}.category-chart-row:focus-visible{outline:2px solid var(--green);outline-offset:3px}.category-chart-row .category-chart-track{display:block}.category-chart-row .category-chart-total{display:block}
.category-chart-toggle{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border:1px solid var(--line);border-radius:10px;background:var(--paper);font-size:18px;cursor:pointer}.category-chart-toggle svg{width:19px;height:19px;fill:none;stroke:var(--green);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.category-chart-toggle:hover{background:var(--soft)}.category-chart-toggle:focus-visible{outline:2px solid var(--green);outline-offset:2px}.category-chart-list.is-pie{display:flex;flex-direction:column;align-items:center;gap:18px;padding:8px 0 2px}.category-pie-wrap{position:relative;width:190px;max-width:65vw;aspect-ratio:1}.category-pie{width:100%;height:100%;border-radius:50%;background:var(--pie-slices);-webkit-mask:radial-gradient(circle,transparent 0 54%,#000 55%);mask:radial-gradient(circle,transparent 0 54%,#000 55%);filter:drop-shadow(0 4px 8px #173e2e1c)}.category-pie-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.category-pie-center strong{font-size:15px;font-weight:700;color:var(--ink)}.category-pie-center span{margin-top:3px;color:var(--muted);font-size:11px}.category-pie-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 20px;width:100%}.category-pie-legend button{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:7px 4px;border:0;border-radius:7px;background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.category-pie-legend button:hover{background:var(--soft)}.category-pie-legend button:focus-visible{outline:2px solid var(--green);outline-offset:1px}.category-pie-legend i{width:9px;height:9px;border-radius:50%;background:var(--slice-color)}.category-pie-legend span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.category-pie-legend strong{font-size:11px;font-weight:600;color:var(--muted);white-space:nowrap}
@media(max-width:600px){.category-chart-list.is-pie{gap:13px}.category-pie-wrap{width:160px}.category-pie-legend{gap:2px 8px}.category-pie-legend button{grid-template-columns:9px minmax(0,1fr);gap:6px;padding:6px 2px}.category-pie-legend strong{grid-column:2;font-size:10px;margin-top:-4px}}
.subcategory-section{display:grid;gap:10px;margin:2px 0 4px;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--bg)}.subcategory-section>.field{margin:0}.subcategory-section .field label{display:block;margin:0 0 7px;font-size:12px;font-weight:700}.subcategory-section select,.split-purchase-row input{width:100%;min-height:42px;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink);font:500 13px 'DM Sans',sans-serif}.split-purchase-toggle,.split-add-row{justify-self:start;min-height:36px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--green);font:700 12px 'DM Sans',sans-serif;cursor:pointer}.split-purchase-toggle:hover,.split-add-row:hover{background:var(--soft)}.split-purchase-editor{display:grid;gap:8px}.split-purchase-editor>p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.split-purchase-rows{display:grid;gap:7px}.split-purchase-columns,.recipient-split-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(88px,120px) 34px;gap:7px;padding:0 3px;color:var(--muted);font-size:10px;font-weight:700}.recipient-split-section{display:grid;gap:7px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--bg)}.recipient-split-section h4{margin:2px 0;font-size:13px}.recipient-split-rows{display:grid;gap:7px}.recipient-split-total{display:block}.split-purchase-columns span:nth-child(2),.recipient-split-columns span:nth-child(2){text-align:center}.split-purchase-row,.recipient-split-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(88px,120px) 34px;gap:7px}.split-purchase-row select,.recipient-split-row select{min-width:0;min-height:42px;padding:0 7px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink);font:500 12px 'DM Sans',sans-serif}.split-recipient-summary{display:grid;gap:4px;padding:8px 10px;border-radius:8px;background:var(--paper);font-size:12px}.split-recipient-summary:empty{display:none}.split-recipient-summary>div{display:flex;justify-content:space-between;gap:10px}.split-recipient-summary strong{color:var(--green)}.split-remove-row{border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--muted);font-size:18px;cursor:pointer}.split-remove-row:hover{border-color:var(--red);color:var(--red)}.split-purchase-total{color:var(--red);font-size:12px}.split-purchase-total.is-balanced{color:var(--green)}.subcategory-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px;margin:13px 0;padding:11px 12px;border:1px solid var(--line);border-radius:9px;background:var(--bg)}.subcategory-summary:empty{display:none}.subcategory-summary>div{display:flex;justify-content:space-between;gap:8px;font-size:12px}.subcategory-summary>div span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.subcategory-summary>div strong{white-space:nowrap;color:var(--ink);font-size:11px}
.subcategory-section[hidden],.split-purchase-editor[hidden]{display:none}
.subcategory-report{margin-top:13px;border-top:1px solid var(--line);padding-top:10px}.subcategory-report>summary{color:var(--green);font-size:12px;font-weight:700;cursor:pointer}.subcategory-report-group{margin-top:8px;border:1px solid var(--line);border-radius:9px;background:var(--bg)}.subcategory-report-group>summary{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;color:var(--ink);font-size:12px;font-weight:700;cursor:pointer}.subcategory-report-group>summary strong{white-space:nowrap}.subcategory-report-rows{display:grid;gap:8px;padding:0 12px 12px}.subcategory-report-row{display:grid;grid-template-columns:minmax(75px,115px) minmax(40px,1fr) auto;align-items:center;gap:9px}.subcategory-report-row>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:11px}.subcategory-report-track{height:7px;overflow:hidden;border-radius:8px;background:var(--line)}.subcategory-report-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#3d8d69,#75b78a)}.subcategory-report-row strong{color:var(--ink);font-size:11px;white-space:nowrap}.subcategory-report-empty{margin:10px 0 0;color:var(--muted);font-size:12px;line-height:1.5}
@media(max-width:600px){.subcategory-summary{grid-template-columns:1fr}.split-purchase-row,.recipient-split-row{grid-template-columns:minmax(0,1fr) minmax(82px,105px) 30px}.split-purchase-columns,.recipient-split-columns{grid-template-columns:minmax(0,1fr) minmax(82px,105px) 30px;font-size:9px}.split-purchase-row select,.recipient-split-row select{font-size:11px;padding:0 4px}}
.goal-schedule-status{margin-top:8px;color:var(--muted);font-size:11px}.goal-settings-note{margin:0;color:var(--muted);font-size:11px;line-height:1.45}.goal-monthly-action{width:100%;min-height:36px;margin-top:8px;border:0;border-radius:8px;background:var(--green);color:#fff;font-size:12px;font-weight:700;cursor:pointer}.goal-monthly-action:disabled{opacity:.55;cursor:not-allowed}.goal-settings-details,.goal-withdraw-details,.goal-interest-details,.goal-history-details{margin-top:9px}.goal-settings-details summary,.goal-withdraw-details summary,.goal-interest-details summary,.goal-history-details summary{cursor:pointer;color:var(--green);font-size:12px;font-weight:700}.goal-settings-details form,.goal-withdraw-details form,.goal-interest-details form{display:grid;gap:7px;margin-top:8px}.goal-settings-details label{display:grid;gap:4px;color:var(--muted);font-size:11px}.goal-settings-details input,.goal-settings-details select,.goal-withdraw-details input,.goal-withdraw-details select,.goal-interest-details input,.goal-interest-details select{min-width:0;width:100%;height:38px;padding:0 8px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font:500 12px 'DM Sans',sans-serif}.goal-settings-details button,.goal-withdraw-details button,.goal-interest-details button{height:36px;border:0;border-radius:8px;background:var(--green);color:#fff;font-size:12px;font-weight:700;cursor:pointer}.goal-history-list{display:grid;gap:6px;margin-top:8px}.goal-history-list>p{margin:0;color:var(--muted);font-size:11px}.goal-history-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:7px 8px;border-radius:7px;background:var(--paper)}.goal-history-row>span{min-width:0}.goal-history-row strong,.goal-history-row small{display:block}.goal-history-row strong{font-size:11px}.goal-history-row small{margin-top:2px;overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.goal-history-row>b{font-size:11px;white-space:nowrap;color:var(--green)}.goal-history-row>b.withdrawal{color:var(--red)}
#transactionPanel{scroll-margin-top:18px}

.recurring-summary-toggle{display:inline-flex;align-items:center;margin-top:7px;padding:4px 0;border:0;background:transparent;color:var(--muted);font:inherit;font-size:12px;cursor:pointer}.recurring-summary-toggle:hover{color:var(--green);text-decoration:underline;text-underline-offset:3px}.recurring-summary-toggle:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:4px}

.auth-checking .app{visibility:hidden}
body:has(#authGate){overflow:hidden}
body:has(#authGate)>.app{display:none}
#authGate{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;overflow-y:auto;padding:48px 24px;background:radial-gradient(ellipse at 12% 12%,#e5ecdf 0,transparent 48%),radial-gradient(ellipse at 92% 90%,#e9ecdf 0,transparent 45%),#f4f5ef;color:#20382c;font-family:'DM Sans',sans-serif;color-scheme:light}
#authGate svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#authGate .auth-shell{display:grid;grid-template-columns:1fr 1fr;width:min(100%,1040px);min-height:650px;margin:auto;padding:0;overflow:hidden;border:1px solid #dce3d9;border-radius:28px;background:#fff;box-shadow:0 32px 90px -34px #183e2b38,0 3px 12px #183e2b05}
.auth-welcome{position:relative;display:flex;flex-direction:column;overflow:hidden;padding:42px 44px 30px;background:radial-gradient(ellipse at 100% 100%,#315d42 0,transparent 65%),#173e2e;color:#f4f4e9}
.auth-brand{display:flex;align-items:center;gap:11px;font:800 22px Manrope,sans-serif;letter-spacing:-.8px}
.auth-brand em{font-style:normal;font-weight:500;color:#c0d6b8}
.auth-brand-mark{display:grid;place-items:center;width:38px;height:38px;border:1px solid #ffffff35;border-radius:12px;background:#ffffff08;color:#dbe8cd}
.auth-brand-mark svg{width:23px;height:23px}
.auth-intro{margin-top:58px}
.auth-eyebrow{margin:0 0 15px;font-size:10px;font-weight:700;line-height:1.5;letter-spacing:1.9px}
.auth-intro .auth-eyebrow{color:#b3c8ac}
.auth-intro h2{margin:0;font:600 clamp(30px,3.1vw,40px)/1.25 Manrope,sans-serif;letter-spacing:-1.5px}
.auth-intro h2 span{color:#c5dab9}
.auth-intro>p:last-child{margin:19px 0 0;color:#c1d1c2;font-size:14px;line-height:1.8}
.auth-art{position:relative;width:100%;max-width:400px;margin:12px auto 0}
#authGate .auth-house{display:block;width:100%;height:auto;stroke:none}
.auth-art-note{position:absolute;right:0;bottom:8px;display:flex;align-items:center;gap:7px;padding:10px 14px;border:1px solid #ffffff22;border-radius:10px;background:#345441;box-shadow:0 6px 20px #0a251f22;color:#e5eddc;font-size:11px;transform:rotate(-4deg)}
.auth-art-note svg{width:17px;height:17px;padding:2px;border-radius:50%;background:#c5dab9;color:#173e2e;stroke-width:2.5!important}
.auth-welcome-footer{margin:auto 0 0;padding-top:25px;color:#a9c0ac;font-size:11px}
.auth-card{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:62px 52px 30px;background:#fff}
.auth-form-content{width:100%;margin:auto 0}
.auth-access-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:29px;border:1px solid #e2eadd;border-radius:15px;background:#f2f6ed;color:#426c49}
.auth-access-icon svg{width:23px;height:23px}
.auth-card .auth-eyebrow{margin-bottom:10px;color:#5b785c;font-size:9px;letter-spacing:1.7px}
.auth-card h1{margin:0;color:#20382c;font:700 28px/1.3 Manrope,sans-serif;letter-spacing:-1.1px}
.auth-copy{margin:14px 0 31px;color:#6d796e;font-size:13px;line-height:1.85}
.auth-card form label{display:block;margin:0 0 9px;color:#2d4233;font-size:12px;font-weight:700}
.auth-card input{width:100%;min-height:54px;padding:12px 49px 12px 43px;border:1px solid #dce3d9;border-radius:11px;background:#fcfdfb;color:#20382c;font:400 16px 'DM Sans',sans-serif;outline:none;transition:border-color .15s,box-shadow .15s}
.auth-card input::placeholder{color:#8c968a;font-size:13px}
.auth-card input:hover{border-color:#aebfa8}
.auth-card input:focus{border-color:#507d53;box-shadow:0 0 0 4px #507d5314}
.auth-password-icon{position:absolute;top:17px;left:15px;width:19px;height:19px;color:#7b8c78;pointer-events:none}
.auth-password-hint{margin:9px 0 0;color:#788372;font-size:11px;line-height:1.6}
.auth-submit{display:flex;align-items:center;justify-content:center;gap:18px;width:100%;min-height:52px;margin-top:25px;padding:12px 20px;border:1px solid #214f36;border-radius:11px;background:#24583c;box-shadow:0 4px 10px #24583c14;color:#fff;font:600 13px 'DM Sans',sans-serif;transition:background .15s,box-shadow .15s}
.auth-submit svg{width:18px;height:18px;transition:transform .15s}
.auth-submit:hover:not(:disabled){background:#193f2b;box-shadow:0 6px 18px #24583c25}
.auth-submit:hover:not(:disabled) svg{transform:translateX(3px)}
.auth-submit:focus-visible{outline:3px solid #78a470;outline-offset:4px}
.auth-submit:disabled{opacity:.65;cursor:wait}
.auth-submit[aria-busy="true"] svg{animation:auth-loading 1s ease-in-out infinite}
@keyframes auth-loading{50%{transform:translateX(5px);opacity:.4}}
#authMessage{min-height:20px;margin:12px 0 0;color:#426c49;font-size:12px;line-height:1.6;overflow-wrap:anywhere}
#authMessage:empty{margin-top:0;min-height:0}
#authMessage[data-error="true"]{margin-top:12px;padding:10px 12px;border:1px solid #efd9d1;border-radius:9px;background:#fff6f2;color:#9b4030}
.auth-security{display:flex;align-items:center;justify-content:center;gap:7px;margin:38px 0 0;padding-top:21px;border-top:1px solid #edf0e9;color:#7b8777;font-size:10px}
.auth-security svg{width:15px;height:15px}
.cloud-logout{border:1px solid var(--line);border-radius:9px;background:var(--paper);padding:8px 10px;color:var(--ink);font-size:12px}
@media(max-width:900px){.auth-welcome{padding:35px 30px 27px}.auth-card{padding:48px 30px 27px}.auth-intro h2{font-size:32px}.auth-card h1{font-size:25px}}
@media(max-width:720px){#authGate{display:block;padding:24px 18px}#authGate .auth-shell{display:flex;flex-direction:column;max-width:460px;min-height:0;border-radius:23px}.auth-welcome{padding:25px 28px 28px}.auth-brand{font-size:20px}.auth-brand-mark{width:34px;height:34px;border-radius:10px}.auth-intro{margin-top:29px}.auth-intro .auth-eyebrow{margin-bottom:9px;font-size:8px;letter-spacing:1.5px}.auth-intro h2{font-size:30px;line-height:1.25;letter-spacing:-1px}.auth-intro>p:last-child{margin-top:12px;font-size:12px;line-height:1.7}.auth-intro>p:last-child br{display:none}.auth-art,.auth-welcome-footer{display:none}.auth-card{padding:30px 28px 23px}.auth-access-icon{display:none}.auth-card h1{font-size:25px}.auth-copy{margin:11px 0 24px;font-size:12px}.auth-security{margin-top:29px;padding-top:18px}}
@media(max-width:360px){#authGate{padding:12px}.auth-welcome,.auth-card{padding-left:23px;padding-right:23px}.auth-intro h2{font-size:28px}.auth-card h1{font-size:23px}}
@media(prefers-reduced-motion:reduce){#authGate *,#authGate *::before,#authGate *::after{animation:none!important;transition:none!important}}
.local-pill[data-sync="error"] .dot{background:#c15d4a}.local-pill[data-sync="pending"] .dot{background:#d39d25}
.password-input-wrap{position:relative}.password-toggle{position:absolute;top:50%;right:5px;transform:translateY(-50%);width:44px;height:44px;display:grid;place-items:center;padding:0;border:0;border-radius:8px;background:transparent;color:#68766f;cursor:pointer}.password-toggle:hover{background:#f0f4ed;color:#24583c}.password-toggle:focus-visible{outline:2px solid #24583c;outline-offset:1px}.password-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.password-eye-slash{display:none}.password-toggle[aria-pressed="true"] .password-eye-slash{display:block}

.receivables-panel .panel-head{align-items:flex-start}.receivables-summary{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:12px 0}.receivables-summary>div{display:grid;gap:5px;padding:11px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.receivables-summary span,.receivable-person span,.receivable-item-head>div>span,.receivable-item-meta,.receivables-note{font-size:10px;color:var(--muted)}.receivables-summary strong{font-size:14px}.receivables-people{display:grid;gap:6px;margin-bottom:10px}.receivable-person{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--line)}.receivable-person strong{font-size:11px}.receivable-person span{text-align:right}.receivables-list{display:grid;gap:9px}.receivable-item{padding:11px;border:1px solid var(--line);border-radius:10px}.receivable-item-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.receivable-item-head>div{display:grid;gap:4px;min-width:0}.receivable-item-head>div strong{font-size:11px}.receivable-item-head>div>span{overflow-wrap:anywhere}.receivable-balance{flex:none;color:#b84e42;font-size:10px}.receivable-balance.settled{color:var(--green)}.receivable-progress{height:5px;margin:9px 0 6px;border-radius:99px;background:var(--line);overflow:hidden}.receivable-progress span{display:block;height:100%;border-radius:inherit;background:var(--green)}.receivable-item-meta{display:flex;justify-content:space-between;align-items:center;gap:8px}.receivable-delete{border:0;padding:3px;background:transparent;color:#b84e42;font:inherit;font-size:10px;text-decoration:underline;cursor:pointer}.receivable-payment-details{margin-top:7px}.receivable-payment-details summary,.receivable-form-details summary{color:var(--green);font-size:10px;font-weight:700;cursor:pointer}.receivable-payment-field{display:flex;gap:6px;margin-top:8px}.receivable-payment-field input,.receivable-form-details input{min-width:0;width:100%;min-height:36px;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font:inherit;font-size:11px}.receivable-small-action{flex:none;padding:7px 9px;border:0;border-radius:8px;background:var(--green);color:#fff;font:inherit;font-size:10px;font-weight:700;cursor:pointer}.receivables-empty{margin:12px 0;color:var(--muted);font-size:11px}.receivable-form-details{margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}.receivable-form-details summary{padding:3px 0}.receivable-form-details[open] summary{margin-bottom:10px}.receivable-form-details .field{margin-bottom:10px}.receivable-form-details .field label{display:block;margin-bottom:5px;color:var(--muted);font-size:10px}.receivable-form-details .fields-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.receivable-form-details .submit{width:100%;min-height:38px;font-size:11px}.receivables-note{margin:10px 0 0;line-height:1.45}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}body[data-theme="dark"] .receivables-summary>div{background:var(--navy-side)}
@media(max-width:600px){.receivables-summary>div{padding:9px}.receivable-person{align-items:flex-start}.receivable-person span{font-size:9px}.receivable-form-details .fields-row{grid-template-columns:1fr}}

/* Navegação direta das ferramentas em telas pequenas */
.mobile-tool-nav { display: none; }
@media (max-width: 600px) {
  html { scroll-behavior: smooth; }
  #inicio, #transactionPanel, #budgetPanel, #duePanel, #goalsPanel { scroll-margin-top: 14px; }
  .mobile-tool-nav {
    position: fixed;
    inset: auto 0 0;
    z-index: 80;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    padding: 7px 5px calc(7px + env(safe-area-inset-bottom, 0px));
    border-top: 1px solid var(--line);
    background: color-mix(in srgb, var(--paper) 94%, transparent);
    box-shadow: 0 -5px 20px rgba(20, 40, 28, .09);
    backdrop-filter: blur(14px);
  }
  .mobile-tool-nav a {
    display: grid;
    justify-items: center;
    align-content: center;
    gap: 3px;
    min-width: 0;
    min-height: 48px;
    border-radius: 10px;
    color: var(--muted);
    text-decoration: none;
    -webkit-tap-highlight-color: transparent;
  }
  .mobile-tool-nav a:active,
  .mobile-tool-nav a:focus-visible { background: var(--mint); color: var(--green); outline: none; }
  .mobile-tool-nav a span { font-size: 20px; line-height: 1; }
  .mobile-tool-nav a small { overflow: hidden; max-width: 100%; font-size: 9px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
  .app { padding-bottom: calc(160px + env(safe-area-inset-bottom, 0px)); }
  .new-entry-button { bottom: calc(78px + env(safe-area-inset-bottom, 0px)); }
}
@media (prefers-reduced-motion: reduce) {
  @media (max-width: 600px) { html { scroll-behavior: auto; } }
}

.receivables-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;margin:8px 0;padding:8px 0;border:0;border-top:1px solid var(--line);background:transparent;color:var(--green);font:700 12px 'DM Sans',sans-serif;text-align:left;cursor:pointer}.receivables-toggle span{font-size:15px}.receivables-toggle:focus-visible{outline:2px solid var(--green);outline-offset:2px;border-radius:4px}#receivablesDetails[hidden]{display:none}

.due-list-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:8px;padding:10px 0 2px;border:0;border-top:1px solid var(--line);background:transparent;color:var(--green);font:700 12px 'DM Sans',sans-serif;text-align:left;cursor:pointer}.due-list-toggle span{font-size:15px}.due-list-toggle:focus-visible{outline:2px solid var(--green);outline-offset:2px;border-radius:4px}

.goal-management-details{margin-top:8px;padding-top:7px;border-top:1px solid var(--line)}.goal-management-details>summary{color:var(--green);font-size:12px;font-weight:700;cursor:pointer}.goal-management-content>details:first-child{margin-top:8px}

/* Navegação por áreas do orçamento */
.dashboard-tabs{display:flex;align-items:stretch;gap:clamp(20px,3vw,34px);width:100%;max-width:100%;min-width:0;margin:0 0 16px;padding:0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.dashboard-tabs::-webkit-scrollbar{display:none}
.dashboard-tabs button{position:relative;flex:0 0 auto;min-height:46px;margin:0 0 -1px;padding:0 2px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--muted);font-size:13px;font-weight:500;white-space:nowrap;transition:color .18s ease,border-color .18s ease}
.dashboard-tabs button:hover{color:var(--ink)}
.dashboard-tabs button[aria-selected="true"]{border-bottom-color:var(--green);color:var(--green);font-weight:700}
.dashboard-tabs button:focus-visible{outline:2px solid var(--green);outline-offset:-3px;border-radius:4px}
body[data-theme="dark"] .dashboard-tabs button[aria-selected="true"]{border-bottom-color:#75b98d;color:#9bd5ac}
body[data-dashboard-tab="overview"] [data-dashboard-tab]:not([data-dashboard-tab="overview"]),body[data-dashboard-tab="activity"] [data-dashboard-tab]:not([data-dashboard-tab="activity"]),body[data-dashboard-tab="planning"] [data-dashboard-tab]:not([data-dashboard-tab="planning"]),body[data-dashboard-tab="analysis"] [data-dashboard-tab]:not([data-dashboard-tab="analysis"]),body[data-dashboard-tab="prices"] [data-dashboard-tab]:not([data-dashboard-tab="prices"]){display:none!important}
body[data-dashboard-tab="overview"] [data-dashboard-tab="overview"],body[data-dashboard-tab="activity"] [data-dashboard-tab="activity"],body[data-dashboard-tab="planning"] [data-dashboard-tab="planning"],body[data-dashboard-tab="analysis"] [data-dashboard-tab="analysis"],body[data-dashboard-tab="prices"] [data-dashboard-tab="prices"]{animation:dashboard-pane-enter .16s ease-out}
@keyframes dashboard-pane-enter{from{opacity:.65}to{opacity:1}}
.grid.single-column{grid-template-columns:minmax(0,1fr)}body[data-dashboard-tab="prices"] .grid{grid-template-columns:minmax(0,1fr)}
@media(max-width:900px){.grid,.grid.single-column{display:flex;flex-direction:column}.grid .left-col,.grid .right-col{display:contents}.grid [data-dashboard-tab]{order:0!important}}
@media(max-width:600px){.dashboard-tabs{position:sticky;top:0;z-index:30;width:100%;gap:clamp(18px,5vw,28px);margin:0 0 12px;background:var(--bg)}.dashboard-tabs button{min-height:44px;padding:0 1px;font-size:12px}.grid.single-column{display:flex;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.dashboard-tabs button{transition:none}body[data-dashboard-tab] [data-dashboard-tab]{animation:none}}
@media(max-width:600px){.new-entry-button{bottom:calc(20px + env(safe-area-inset-bottom,0px))}}
@media(max-width:600px){.brand-name{display:none}}


/* Aba Análises: estilos isolados dos painéis existentes */
.analysis-dashboard{width:100%;min-width:0}.analysis-intro{margin:4px 0 18px}.analysis-intro .eyebrow{margin:0 0 5px}.analysis-intro h2{margin:0;font:700 24px Manrope,sans-serif}.analysis-intro p:last-child{margin:5px 0 0;color:var(--muted);font-size:13px}.analysis-filters{display:flex;align-items:end;gap:10px;flex-wrap:wrap;padding:14px;margin-bottom:8px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}.analysis-filters>label{display:grid;gap:5px;color:var(--muted);font-size:11px;font-weight:600}.analysis-filters select,.analysis-filters>label input{height:38px;min-width:130px;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink);font-size:12px}.analysis-filters input[type=month]{min-width:130px}.analysis-category-picker{position:relative}.analysis-category-picker summary,.analysis-clear,.analysis-clear-inline{height:38px;padding:0 12px;display:flex;align-items:center;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink);font-size:12px;cursor:pointer}.analysis-category-picker[open] summary{border-color:var(--green)}#analysisCategoryOptions{position:absolute;z-index:20;top:44px;left:0;display:grid;gap:7px;min-width:200px;max-height:250px;overflow:auto;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--paper);box-shadow:var(--shadow)}#analysisCategoryOptions label{display:flex;align-items:center;gap:8px;font-size:12px}.analysis-clear{color:var(--green)}.analysis-chips{display:flex;align-items:center;gap:7px;flex-wrap:wrap;min-height:0;margin:0 0 12px;color:var(--muted);font-size:11px}.analysis-chip{padding:5px 9px;border:1px solid #b9d5c4;border-radius:99px;background:var(--mint);color:var(--green);font-size:11px}.analysis-chip b{margin-left:4px}.analysis-clear-inline{height:auto;padding:5px 8px;border:0;background:transparent;color:var(--green);font-size:11px}.analysis-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0 22px}.analysis-kpi{min-width:0;padding:14px;border:1px solid var(--line);border-radius:13px;background:var(--paper)}.analysis-kpi span,.analysis-kpi small{display:block;color:var(--muted);font-size:11px}.analysis-kpi strong{display:block;margin:7px 0 4px;font:700 19px Manrope,sans-serif}.analysis-kpi small{min-height:15px;font-size:10px}.analysis-section-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:22px 0 10px}.analysis-section-title h3{margin:0;font:700 17px Manrope,sans-serif}.analysis-section-title p{margin:0;color:var(--muted);font-size:11px}.analysis-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.analysis-panel{min-width:0;padding:16px}.analysis-panel.analysis-wide{grid-column:1/-1}.analysis-panel .panel-head{align-items:flex-start}.analysis-panel .panel-head h3{margin:0;font-size:14px}.analysis-panel .panel-head span{color:var(--muted);font-size:11px}.analysis-chart{min-width:0;margin-top:14px}.analysis-empty,.analysis-muted{margin:8px 0;color:var(--muted);font-size:12px;line-height:1.5}.analysis-legend{display:flex;gap:16px;margin-bottom:10px;color:var(--muted);font-size:11px}.analysis-legend span{display:flex;align-items:center;gap:6px}.analysis-legend i,.analysis-category-key i{width:9px;height:9px;flex:0 0 auto;border-radius:50%;background:var(--series)}.analysis-bar-row{display:grid;grid-template-columns:54px minmax(80px,1fr) minmax(130px,auto);align-items:center;gap:10px;margin:8px 0;color:var(--muted);font-size:10px}.analysis-bar-pair{display:flex;align-items:center;gap:3px;height:12px}.analysis-bar-pair i,.analysis-rank-row>i{display:block;height:7px;max-width:100%;width:calc(var(--value)/var(--bar)*100%);border-radius:99px;background:var(--series)}.analysis-bar-row small{white-space:nowrap;font-size:10px}.analysis-svg-wrap{width:100%;overflow:hidden}.analysis-svg-wrap svg{display:block;width:100%;height:auto}.analysis-grid-line{stroke:var(--line);stroke-width:1;stroke-dasharray:3 4}.analysis-zero-line{stroke:var(--muted);stroke-width:1}.analysis-axis-label{fill:var(--muted);font:10px 'DM Sans',sans-serif}.analysis-donut-layout{display:grid;grid-template-columns:minmax(120px,.8fr) minmax(0,1.2fr);align-items:center;gap:12px}.analysis-donut{width:min(170px,100%);aspect-ratio:1;margin:auto;display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--segments));position:relative}.analysis-donut:before{content:"";position:absolute;inset:23%;border-radius:50%;background:var(--paper)}.analysis-donut>span{z-index:1;text-align:center;font-size:12px;font-weight:700}.analysis-donut>span small{display:block;margin-top:3px;color:var(--muted);font-size:9px;font-weight:500}.analysis-legend-list{display:grid;gap:3px;max-height:230px;overflow:auto}.analysis-category-key{display:grid;grid-template-columns:10px minmax(0,1fr) auto auto;align-items:center;gap:6px;width:100%;padding:6px 5px;border:0;border-radius:7px;background:transparent;color:var(--ink);text-align:left;font-size:10px}.analysis-category-key span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analysis-category-key b{font-size:10px}.analysis-category-key small{min-width:34px;color:var(--muted);text-align:right}.analysis-category-key:hover,.analysis-category-key.is-selected{background:var(--mint)}.analysis-compare-summary{display:grid;gap:4px;margin-top:10px;padding:10px;border-radius:10px;background:var(--bg);font-size:11px}.analysis-compare-summary span{color:var(--muted)}.analysis-rank-row{display:grid;grid-template-columns:minmax(90px,1.2fr) minmax(40px,1fr) auto;align-items:center;gap:9px;margin:10px 0;font-size:11px}.analysis-rank-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analysis-rank-row b{font-size:11px}.analysis-progress{display:block;height:7px;overflow:hidden;border-radius:99px;background:var(--line)}.analysis-progress b{display:block;height:100%;border-radius:inherit;background:var(--series,var(--green))}.analysis-budget-row{margin:12px 0}.analysis-budget-row>div{display:flex;justify-content:space-between;gap:8px;margin-bottom:6px;font-size:10px}.analysis-budget-row span{color:var(--muted);text-align:right}.analysis-pair-total{display:grid;gap:10px}.analysis-pair-total span{display:flex;justify-content:space-between;gap:8px;padding:10px;border-radius:9px;background:var(--bg);font-size:11px}.analysis-pair-total strong{font-size:12px}.analysis-compare-row{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:9px 0;border-bottom:1px solid var(--line);font-size:10px}.analysis-compare-row span{color:var(--muted)}.analysis-toggle{display:flex;gap:4px;margin-top:7px}.analysis-toggle button{padding:4px 7px;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--muted);font-size:10px}.analysis-toggle button[aria-pressed=true]{border-color:var(--green);color:var(--green)}.analysis-insight{margin:0 0 8px;padding:9px 10px;border-left:3px solid var(--green);border-radius:0 8px 8px 0;background:var(--bg);font-size:11px;line-height:1.45}
body[data-theme="dark"] .analysis-chip{background:#22372b;border-color:#345744;color:#9bd5ac}body[data-theme="dark"] .analysis-category-key:hover,body[data-theme="dark"] .analysis-category-key.is-selected{background:#26382e}
@media(max-width:900px){.analysis-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.analysis-intro h2{font-size:21px}}
@media(max-width:600px){.analysis-filters{gap:8px;padding:11px}.analysis-filters>label{flex:1 1 42%}.analysis-filters select,.analysis-filters input{width:100%;min-width:0}.analysis-category-picker,.analysis-clear{flex:1 1 calc(50% - 6px)}.analysis-category-picker summary,.analysis-clear{justify-content:center;width:100%}.analysis-grid{grid-template-columns:minmax(0,1fr);gap:10px}.analysis-panel.analysis-wide{grid-column:auto}.analysis-panel{padding:13px}.analysis-kpi{padding:11px}.analysis-kpi strong{font-size:16px}.analysis-section-title{align-items:flex-start;flex-direction:column}.analysis-donut-layout{grid-template-columns:minmax(110px,.7fr) minmax(0,1.3fr);gap:8px}.analysis-donut{width:min(145px,100%)}.analysis-bar-row{grid-template-columns:44px minmax(55px,1fr);gap:7px}.analysis-bar-row small{grid-column:2;white-space:normal}.analysis-bar-pair{grid-column:2;grid-row:1}.analysis-rank-row{grid-template-columns:minmax(80px,1.2fr) minmax(35px,1fr) auto}}

.analysis-period-note{margin:6px 0 0;color:var(--muted);font-size:11px}

.analysis-series-keys{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.analysis-series-keys button{display:flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid var(--line);border-radius:99px;background:var(--paper);color:var(--ink);font-size:10px}.analysis-series-keys i{width:8px;height:8px;border-radius:50%;background:var(--series)}.analysis-rank-select{padding:2px 3px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--ink);text-align:left}.analysis-rank-select:hover,.analysis-rank-select.is-selected{background:var(--mint)}.analysis-rank-select:focus-visible,.analysis-series-keys button:focus-visible{outline:2px solid var(--green);outline-offset:2px}

/* Correção dos controles do menu de categorias em Análises */
#analysisCategoryOptions{width:min(280px,calc(100vw - 32px));min-width:min(220px,calc(100vw - 32px));max-width:calc(100vw - 32px);overflow-x:hidden;overflow-y:auto}#analysisCategoryOptions label{display:flex;align-items:center;justify-content:flex-start;gap:9px;width:100%;min-width:0;white-space:nowrap}#analysisCategoryOptions input[type="checkbox"]{appearance:auto;-webkit-appearance:checkbox;display:inline-block;flex:0 0 16px;width:16px;min-width:16px;height:16px;margin:0;padding:0;border:0;accent-color:var(--green);cursor:pointer}#analysisCategoryOptions input[type="checkbox"]:focus-visible{outline:2px solid var(--green);outline-offset:2px}

@media(max-width:600px){#analysisCategoryOptions{left:0;right:auto;width:min(280px,calc(100vw - 32px));max-width:calc(100vw - 32px)}}

/* Análises: dashboard BI escuro e isolado das demais abas */
.analysis-dashboard{--ad-bg:#0b1023;--ad-side:#11182f;--ad-card:#19213d;--ad-raised:#222b4a;--ad-line:#303a5c;--ad-text:#f5f7ff;--ad-muted:#aab5d1;--ad-green:#36c6a2;--ad-cyan:#35b8d9;--ad-red:#f04a68;--ad-amber:#f3ad49;display:block;width:100%;min-width:0;margin:0;padding:22px;border:0;border-radius:18px;background:var(--ad-bg);color:var(--ad-text);font-size:14px;line-height:1.45;overflow:visible}
.analysis-dashboard *{box-sizing:border-box}.analysis-dashboard .analysis-intro{margin:0 0 20px}.analysis-dashboard .analysis-eyebrow{margin:0 0 5px;color:#56d3b3;font-size:12px;font-weight:750;letter-spacing:.14em}.analysis-dashboard .analysis-intro h2{margin:0;color:var(--ad-text);font-size:28px;line-height:1.2}.analysis-dashboard .analysis-intro p:not(.analysis-eyebrow):not(.analysis-period-note){margin:7px 0 0;color:var(--ad-muted);font-size:15px}.analysis-dashboard .analysis-period-note{color:#f3c16b;font-size:13px}
.analysis-layout{display:grid;grid-template-columns:minmax(220px,250px) minmax(0,1fr);align-items:start;gap:16px}.analysis-sidebar{position:sticky;top:12px;min-width:0;padding:14px;border:1px solid var(--ad-line);border-radius:14px;background:var(--ad-side)}.analysis-filter-panel{margin:0}.analysis-filter-panel>summary{display:flex;justify-content:space-between;align-items:center;padding:0 0 12px;color:var(--ad-text);font-size:16px;font-weight:700;cursor:pointer;list-style:none}.analysis-filter-panel>summary::-webkit-details-marker{display:none}.analysis-filter-panel[open]>summary .analysis-filter-count{transform:rotate(180deg)}.analysis-filter-count{color:var(--ad-muted);transition:transform .18s}.analysis-filters{display:grid;gap:12px;padding:0;border:0;background:transparent}.analysis-filters>label{display:grid;gap:5px;color:var(--ad-muted);font-size:13px}.analysis-dashboard select,.analysis-dashboard input[type=month]{width:100%;min-width:0;height:40px;padding:0 10px;border:1px solid var(--ad-line);border-radius:8px;background:#0d142a;color:var(--ad-text);font:inherit}.analysis-dashboard select:focus-visible,.analysis-dashboard input:focus-visible,.analysis-dashboard button:focus-visible,.analysis-dashboard summary:focus-visible{outline:2px solid var(--ad-cyan);outline-offset:2px}.analysis-category-picker{position:relative}.analysis-category-picker>summary,.analysis-clear{display:flex;align-items:center;justify-content:center;min-height:40px;padding:8px 12px;border:1px solid var(--ad-line);border-radius:8px;background:transparent;color:var(--ad-text);font:inherit;font-size:14px;cursor:pointer}.analysis-category-picker>summary{justify-content:space-between}.analysis-category-picker>summary:after{content:'⌄';color:var(--ad-muted)}#analysisCategoryOptions{position:relative;z-index:2;width:100%;max-width:none;min-width:0;max-height:220px;margin-top:7px;padding:7px;border:1px solid var(--ad-line);border-radius:9px;background:#0d142a;overflow:auto}#analysisCategoryOptions label{display:flex;gap:9px;align-items:center;padding:7px 5px;color:var(--ad-text);font-size:13px;white-space:normal}#analysisCategoryOptions input[type=checkbox]{accent-color:var(--ad-green)}.analysis-clear{width:100%;color:#79d7c1}.analysis-clear:hover,.analysis-category-picker>summary:hover{background:var(--ad-raised)}
.analysis-chips{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px}.analysis-chips:empty{display:none}.analysis-chips p{width:100%;margin:0;color:var(--ad-muted);font-size:12px}.analysis-chip,.analysis-clear-inline{padding:5px 9px;border:1px solid #356956;border-radius:999px;background:#183c3b;color:#a5f0d8;font:inherit;font-size:12px;cursor:pointer}.analysis-clear-inline{border-color:var(--ad-line);background:transparent;color:var(--ad-muted)}.analysis-account-box{margin-top:18px;padding-top:14px;border-top:1px solid var(--ad-line)}.analysis-account-box h3{margin:0 0 9px;font-size:14px}.analysis-account-box>p{margin:9px 0 0;color:var(--ad-muted);font-size:11px}.analysis-account-row{display:flex;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px solid var(--ad-line);font-size:12px}.analysis-account-row span{color:var(--ad-muted)}.analysis-account-row b{font-variant-numeric:tabular-nums}
.analysis-main{min-width:0}.analysis-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 18px}.analysis-kpi{position:relative;display:flex;min-width:0;min-height:132px;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;padding:15px;border:1px solid var(--ad-line);border-radius:13px;background:var(--ad-card);overflow:hidden}.analysis-kpi:before{position:absolute;inset:0 auto 0 0;width:3px;background:var(--accent);content:''}.analysis-kpi>span{color:var(--ad-muted);font-size:13px}.analysis-kpi strong{color:var(--ad-text);font-size:clamp(19px,2vw,27px);font-variant-numeric:tabular-nums;line-height:1.2}.analysis-kpi small{color:var(--ad-muted);font-size:11px}.analysis-kpi-featured{background:linear-gradient(125deg,#263656,#222b4a)}.analysis-spark{position:absolute;right:9px;bottom:9px;width:85px;height:25px;opacity:.9}
.analysis-dashboard .analysis-section-title{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:20px 0 9px}.analysis-dashboard .analysis-section-title h3{margin:0;color:var(--ad-text);font-size:17px}.analysis-dashboard .analysis-section-title p{margin:0;color:var(--ad-muted);font-size:12px}.analysis-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.analysis-panel.analysis-wide{grid-column:1/-1}.analysis-dashboard .analysis-panel{min-width:0;padding:14px;border:1px solid var(--ad-line);border-radius:13px;background:var(--ad-card);color:var(--ad-text);box-shadow:none}.analysis-dashboard .panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin:0 0 9px}.analysis-dashboard .panel-head h3{margin:0;color:var(--ad-text);font-size:15px}.analysis-dashboard .panel-head span{display:block;margin-top:2px;color:var(--ad-muted);font-size:11px}.analysis-chart{min-width:0;color:var(--ad-text)}.analysis-chart-legend{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 8px;color:var(--ad-muted);font-size:12px}.analysis-chart-legend span{display:flex;align-items:center;gap:6px}.analysis-chart-legend i,.analysis-category-key i{width:9px;height:9px;flex:0 0 auto;border-radius:50%;background:var(--series)}.analysis-svg-wrap{width:100%;overflow:hidden}.analysis-svg-wrap svg{display:block;width:100%;height:auto;overflow:visible}.analysis-grid-line{stroke:var(--ad-line);stroke-width:1;stroke-dasharray:3 5}.analysis-zero-line{stroke:var(--ad-muted);stroke-width:1}.analysis-axis-label{fill:var(--ad-muted);font:11px 'DM Sans',sans-serif}.analysis-empty,.analysis-muted{color:var(--ad-muted);font-size:12px;line-height:1.5}.analysis-rate-value{color:var(--ad-green);font-size:36px;font-weight:750}.analysis-donut-layout{display:grid;grid-template-columns:minmax(145px,.8fr) minmax(0,1.2fr);align-items:center;gap:12px}.analysis-donut{position:relative;display:grid;width:min(200px,100%);aspect-ratio:1;margin:auto;place-items:center;border-radius:50%;background:conic-gradient(var(--segments))}.analysis-donut:before{position:absolute;inset:24%;border-radius:50%;background:var(--ad-card);content:''}.analysis-donut>span{z-index:1;text-align:center;font-size:15px;font-weight:750}.analysis-donut>span small{display:block;margin-top:4px;color:var(--ad-muted);font-size:10px;font-weight:500}.analysis-legend-list{display:grid;max-height:230px;gap:3px;overflow:auto}.analysis-category-key{display:grid;grid-template-columns:10px minmax(0,1fr) auto auto;align-items:center;gap:7px;width:100%;padding:7px 5px;border:0;border-radius:7px;background:transparent;color:var(--ad-text);text-align:left;font:inherit;font-size:12px;cursor:pointer}.analysis-category-key span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analysis-category-key b{font-size:11px}.analysis-category-key small{color:var(--ad-muted);font-size:11px}.analysis-category-key:hover,.analysis-category-key.is-selected,.analysis-category-key[aria-pressed=true]{background:var(--ad-raised)}.analysis-compare-summary{display:grid;gap:5px;margin-top:10px;padding:10px;border-radius:9px;background:var(--ad-raised);font-size:12px}.analysis-compare-summary span{color:var(--ad-muted)}.analysis-rank-row{display:grid;grid-template-columns:minmax(90px,1fr) minmax(45px,1.2fr) auto;align-items:center;gap:9px;margin:9px 0;font-size:12px}.analysis-rank-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analysis-rank-row b{font-size:12px}.analysis-rank-row>i{display:block;width:calc(var(--value)/var(--rank)*100%);height:7px;border-radius:99px;background:var(--series)}.analysis-rank-select{padding:5px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--ad-text);text-align:left;cursor:pointer}.analysis-rank-select:hover,.analysis-rank-select[aria-pressed=true]{background:var(--ad-raised)}.analysis-progress{display:block;height:8px;overflow:hidden;border-radius:99px;background:var(--ad-line)}.analysis-progress b{display:block;height:100%;border-radius:inherit;background:var(--series,var(--ad-green))}.analysis-budget-row{margin:11px 0}.analysis-budget-row>div{display:flex;justify-content:space-between;gap:8px;margin-bottom:6px;font-size:12px}.analysis-budget-row span{color:var(--ad-muted);text-align:right}.analysis-pair-total{display:grid;gap:7px}.analysis-pair-total span{display:flex;justify-content:space-between;gap:8px;padding:9px;border-radius:8px;background:var(--ad-raised);color:var(--ad-muted);font-size:12px}.analysis-pair-total strong{color:var(--ad-text)}.analysis-compare-row{display:grid;grid-template-columns:minmax(75px,.7fr) 1fr 1fr;gap:6px;align-items:center;padding:9px 0;border-bottom:1px solid var(--ad-line);font-size:11px}.analysis-compare-row span{color:var(--ad-muted)}.analysis-toggle{display:flex;gap:4px;margin-top:6px}.analysis-toggle button{padding:5px 8px;border:1px solid var(--ad-line);border-radius:7px;background:transparent;color:var(--ad-muted);font-size:11px}.analysis-toggle button[aria-pressed=true]{border-color:var(--ad-green);color:var(--ad-green)}.analysis-insight{margin:0 0 7px;padding:10px 11px;border-left:3px solid var(--ad-green);border-radius:0 8px 8px 0;background:var(--ad-raised);font-size:12px;line-height:1.5}
.analysis-dashboard button:hover{filter:brightness(1.12)}.analysis-dashboard button:focus-visible,.analysis-dashboard summary:focus-visible{outline-color:var(--ad-cyan)}
@media(max-width:1050px){.analysis-layout{grid-template-columns:210px minmax(0,1fr);gap:11px}.analysis-dashboard{padding:17px}.analysis-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.analysis-kpi{min-height:115px}}
@media(max-width:700px){.analysis-dashboard{padding:13px;border-radius:13px}.analysis-dashboard .analysis-intro{margin-bottom:12px}.analysis-dashboard .analysis-intro h2{font-size:23px}.analysis-layout{grid-template-columns:minmax(0,1fr)}.analysis-sidebar{position:static;padding:11px}.analysis-filter-panel:not([open])>summary{padding:0}.analysis-filters{grid-template-columns:repeat(2,minmax(0,1fr));padding-top:11px}.analysis-filters>label{min-width:0}.analysis-filters .analysis-category-picker,.analysis-filters .analysis-clear{grid-column:span 1}.analysis-account-box{margin-top:10px;padding-top:10px}.analysis-account-box>p{display:none}.analysis-kpis{gap:7px;margin-bottom:12px}.analysis-kpi{min-height:105px;padding:12px}.analysis-kpi strong{font-size:19px}.analysis-kpi small{max-width:90%;font-size:10px}.analysis-grid{grid-template-columns:minmax(0,1fr);gap:8px}.analysis-panel.analysis-wide{grid-column:auto}.analysis-dashboard .analysis-panel{padding:12px}.analysis-dashboard .analysis-section-title{align-items:flex-start;flex-direction:column;margin:15px 0 7px}.analysis-donut-layout{grid-template-columns:minmax(120px,.8fr) minmax(0,1.2fr);gap:8px}.analysis-donut{width:min(155px,100%)}.analysis-category-key{grid-template-columns:10px minmax(0,1fr) auto;gap:5px;font-size:11px}.analysis-category-key small{display:none}.analysis-compare-row{grid-template-columns:1fr 1fr}.analysis-compare-row b{grid-column:1/-1}}
@media(max-width:390px){.analysis-kpi{min-height:100px;padding:9px}.analysis-kpi strong{font-size:17px}.analysis-dashboard .analysis-intro h2{font-size:21px}.analysis-dashboard .analysis-intro p:not(.analysis-eyebrow):not(.analysis-period-note){font-size:13px}.analysis-dashboard .panel-head h3{font-size:14px}.analysis-axis-label{font-size:10px}}
@media(prefers-reduced-motion:no-preference){.analysis-dashboard .analysis-panel,.analysis-dashboard .analysis-kpi{transition:background-color .18s ease,border-color .18s ease}.analysis-dashboard .analysis-category-key,.analysis-dashboard button{transition:background-color .16s ease,color .16s ease}}

/* A aba de análises ocupa a largura toda, embora continue dentro de .left-col. */
@media(min-width:901px){body[data-dashboard-tab="analysis"] #dashboardTabContent{grid-template-columns:minmax(0,1fr)}body[data-dashboard-tab="analysis"] #dashboardTabContent>.right-col{display:none!important}}

/* Integra o espaço externo da aba Análises ao fundo do dashboard. */
body[data-dashboard-tab="analysis"]{background:#0b1023;color:#f5f7ff}
body[data-dashboard-tab="analysis"] .topbar{border-color:#303a5c}
body[data-dashboard-tab="analysis"] .brand{color:#f5f7ff}
body[data-dashboard-tab="analysis"] .brand em{color:#62d3b3}
body[data-dashboard-tab="analysis"] .top-right{color:#aab5d1}
body[data-dashboard-tab="analysis"] .theme-toggle{border-color:#303a5c;background:#19213d;color:#f5f7ff}
body[data-dashboard-tab="analysis"] .heading h1{color:#f5f7ff}
body[data-dashboard-tab="analysis"] .heading .eyebrow{color:#62d3b3}
body[data-dashboard-tab="analysis"] .month-nav{border-color:#303a5c;background:#19213d;color:#f5f7ff}
body[data-dashboard-tab="analysis"] .month-nav button{color:#aab5d1}
body[data-dashboard-tab="analysis"] .dashboard-tabs{border-color:#303a5c}
body[data-dashboard-tab="analysis"] .dashboard-tabs button{color:#aab5d1}
body[data-dashboard-tab="analysis"] .dashboard-tabs button:hover{color:#f5f7ff}
body[data-dashboard-tab="analysis"] .dashboard-tabs button[aria-selected="true"]{border-bottom-color:#62d3b3;color:#62d3b3}
body[data-dashboard-tab="analysis"] .dashboard-tabs button:focus-visible{outline-color:#35b8d9}

/* Tema escuro compartilhado: mesma paleta e componentes para as quatro abas. */
body[data-theme="dark"]{--ink:var(--navy-text);--muted:var(--navy-muted);--line:var(--navy-line);--paper:var(--navy-card);--bg:var(--navy);--green:var(--success);--mint:var(--navy-raised);--red:var(--expense);--redbg:#43243a;--yellow:var(--warning);--shadow:0 10px 32px rgba(0,0,0,.2);background:var(--navy);color:var(--navy-text);color-scheme:dark}
body[data-theme="dark"] .app{background:transparent}
body[data-theme="dark"] .topbar{border-color:var(--navy-line)}
body[data-theme="dark"] .brand{color:var(--navy-text)}
body[data-theme="dark"] .brand em,body[data-theme="dark"] .eyebrow{color:var(--success)}
body[data-theme="dark"] .month-nav,body[data-theme="dark"] .theme-toggle{border-color:var(--navy-line);background:var(--navy-card);color:var(--navy-text)}
body[data-theme="dark"] .month-nav button,body[data-theme="dark"] .month-nav .month-picker-trigger{color:var(--navy-text)}
body[data-theme="dark"] .month-nav .month-picker-trigger:hover{color:var(--success)}
body[data-theme="dark"] .dashboard-tabs{border-color:var(--navy-line)}
body[data-theme="dark"] .dashboard-tabs button{color:var(--navy-muted)}
body[data-theme="dark"] .dashboard-tabs button:hover{color:var(--navy-text)}
body[data-theme="dark"] .dashboard-tabs button[aria-selected="true"]{border-bottom-color:var(--success);color:var(--success)}
body[data-theme="dark"] .card,body[data-theme="dark"] .panel,body[data-theme="dark"] .transaction-dialog,body[data-theme="dark"] .edit-dialog,body[data-theme="dark"] .month-picker-dialog,body[data-theme="dark"] .category-dialog,body[data-theme="dark"] .recurring-dialog,body[data-theme="dark"] .account-dialog,body[data-theme="dark"] .delete-confirm-dialog,body[data-theme="dark"] .dashboard-settings-dialog{border-color:var(--navy-line);background:var(--navy-card);color:var(--navy-text);box-shadow:var(--shadow)}
body[data-theme="dark"] .budget-panel{border-color:var(--navy-line);background:var(--navy-card);color:var(--navy-text)}
body[data-theme="dark"] .budget-panel .progress,body[data-theme="dark"] .goal-progress,body[data-theme="dark"] .category-chart-track,body[data-theme="dark"] .category-bar,body[data-theme="dark"] .analysis-progress{background:#35415e}
body[data-theme="dark"] .budget-panel .progress span,body[data-theme="dark"] .goal-progress span{background:var(--success)}
body[data-theme="dark"] .card-label,body[data-theme="dark"] .footnote,body[data-theme="dark"] .panel-head span,body[data-theme="dark"] .budget-hint,body[data-theme="dark"] .heading p,body[data-theme="dark"] .local-pill,body[data-theme="dark"] .transaction-caption{color:var(--navy-muted)}
body[data-theme="dark"] .amount,body[data-theme="dark"] .heading h1,body[data-theme="dark"] .panel-head h2,body[data-theme="dark"] .panel-head h3,body[data-theme="dark"] .budget-total,body[data-theme="dark"] .tx-title,body[data-theme="dark"] .account-summary-main strong{color:var(--navy-text)}
body[data-theme="dark"] .ico{background:#183b43;color:var(--income)}
body[data-theme="dark"] .ico.out{background:#43243a;color:#ff8795}
body[data-theme="dark"] .ico.balance,body[data-theme="dark"] .ico.future{background:#3d3424;color:var(--warning)}
body[data-theme="dark"] .key{background:var(--income)}body[data-theme="dark"] .key.expense{background:var(--expense)}
body[data-theme="dark"] .chart{border-color:var(--navy-line);background:transparent}
body[data-theme="dark"] .chart:before,body[data-theme="dark"] .chart:after{border-color:#303a5c}
body[data-theme="dark"] .bar{background:var(--income)}body[data-theme="dark"] .bar.expense{background:var(--expense)}
body[data-theme="dark"] .category-group,body[data-theme="dark"] .goal-card,body[data-theme="dark"] .account-settings,body[data-theme="dark"] .managed-account-row{border-color:var(--navy-line);background:var(--navy-side);color:var(--navy-text)}
body[data-theme="dark"] .category-icon,body[data-theme="dark"] .tx-icon,body[data-theme="dark"] .account-summary-icon{background:var(--navy-raised);color:var(--success)}
body[data-theme="dark"] .category-bar{background:#35415e}body[data-theme="dark"] .category-chart-total{background:var(--success)}body[data-theme="dark"] .category-chart-paid{background:var(--success)}
body[data-theme="dark"] .tx,body[data-theme="dark"] .account-summary-row{border-color:var(--navy-line)}
body[data-theme="dark"] .tx-value.in,body[data-theme="dark"] .tx-settle,body[data-theme="dark"] .tx-status.paid{color:var(--success)}
body[data-theme="dark"] .tx-value.out{color:#ff8795}body[data-theme="dark"] .tx-status{color:var(--warning)}
body[data-theme="dark"] .type-switch,body[data-theme="dark"] .view-switch,body[data-theme="dark"] .due-view-switch{background:var(--navy)}
body[data-theme="dark"] .type-switch button,body[data-theme="dark"] .view-switch button,body[data-theme="dark"] .due-view-switch button{color:var(--navy-muted)}
body[data-theme="dark"] .type-switch button.active,body[data-theme="dark"] .view-switch button[aria-pressed="true"],body[data-theme="dark"] .due-view-switch button[aria-pressed="true"]{border-color:var(--navy-line);background:var(--navy-raised);color:var(--success)}
body[data-theme="dark"] input:not([type="checkbox"]):not([type="radio"]),body[data-theme="dark"] select,body[data-theme="dark"] textarea,body[data-theme="dark"] .search,body[data-theme="dark"] .edit-money,body[data-theme="dark"] .filter-grid,body[data-theme="dark"] .category-picker-menu{border-color:var(--navy-line);background:var(--navy-side);color:var(--navy-text);color-scheme:dark}
body[data-theme="dark"] input::placeholder,body[data-theme="dark"] textarea::placeholder,body[data-theme="dark"] .search::placeholder{color:#8996b6}
body[data-theme="dark"] input:focus-visible,body[data-theme="dark"] select:focus-visible,body[data-theme="dark"] textarea:focus-visible,body[data-theme="dark"] button:focus-visible,body[data-theme="dark"] summary:focus-visible{outline:2px solid var(--income);outline-offset:2px}
body[data-theme="dark"] .submit,body[data-theme="dark"] .goal-contribute-details button,body[data-theme="dark"] .new-category-form button,body[data-theme="dark"] .inline-category-form button[type="submit"]{border-color:var(--success);background:#19775f;color:#fff}
body[data-theme="dark"] .new-entry-button{border-color:var(--navy-line);background:var(--navy-card);color:var(--navy-text)}
body[data-theme="dark"] .new-entry-icon{background:#19775f;color:#fff}
body[data-theme="dark"] .new-entry-arrow,body[data-theme="dark"] .budget-action,body[data-theme="dark"] .goal-contribute-details summary,body[data-theme="dark"] .account-pay{color:#71dfc3}
body[data-theme="dark"] .panel-action,body[data-theme="dark"] .chart-navigation button,body[data-theme="dark"] .advanced-filters summary,body[data-theme="dark"] .managed-account-actions button,body[data-theme="dark"] .managed-category-actions button,body[data-theme="dark"] .inline-category-form button,body[data-theme="dark"] .filter-grid button{border-color:var(--navy-line);background:var(--navy-raised);color:var(--navy-text)}
body[data-theme="dark"] .tx-edit,body[data-theme="dark"] .managed-account-actions button,body[data-theme="dark"] .managed-category-actions button{color:var(--success)}
body[data-theme="dark"] .edit-close,body[data-theme="dark"] .goal-delete{background:color-mix(in srgb,var(--paper) 78%,var(--success));color:var(--muted)}
body[data-theme="dark"] .edit-overlay,body[data-theme="dark"] .transaction-overlay{background:rgba(4,8,20,.78)}
body[data-theme="dark"] .category-delete-prompt,body[data-theme="dark"] .budget-alert{border-color:#73542b;background:#332a22;color:#ffd08a}
body[data-theme="dark"] .category-delete-prompt p,body[data-theme="dark"] .budget-alert strong{color:#ffd08a}
body[data-theme="dark"] .category-delete-prompt .edit-cancel{border-color:var(--navy-line);background:var(--navy-raised);color:var(--navy-text)}
body[data-theme="dark"] .month-picker-grid button{border-color:var(--navy-line);background:var(--navy-side);color:var(--navy-text)}
body[data-theme="dark"] .month-picker-grid button[aria-pressed="true"]{border-color:var(--success);background:#19775f;color:#fff}
body[data-theme="dark"] .flow-legend,body[data-theme="dark"] .chart-navigation,body[data-theme="dark"] .month-label,body[data-theme="dark"] .category-chart-label,body[data-theme="dark"] .category-chart-value{color:var(--navy-muted)}

body[data-theme="dark"] .field label{color:var(--navy-muted)}
body[data-theme="dark"] .type-switch button.active[data-type="expense"],body[data-theme="dark"] .type-switch button.active[data-type="income"]{background:var(--navy-raised);color:var(--success)}
body[data-theme="dark"] .field input,body[data-theme="dark"] .field select{background:var(--navy-side);color:var(--navy-text);border-color:var(--navy-line)}

body[data-theme="dark"] .receivables-summary>div,body[data-theme="dark"] .monthly-report-grid>div,body[data-theme="dark"] .annual-totals>div{background:var(--navy-side);border-color:var(--navy-line);color:var(--navy-text)}

body[data-theme="dark"] .transaction-dialog .notes-field textarea,body[data-theme="dark"] .edit-dialog textarea{background:var(--navy-side);border-color:var(--navy-line);color:var(--navy-text)}

/* Barras de rolagem no tema escuro */
body[data-theme="dark"],body[data-theme="dark"] *{scrollbar-color:var(--navy-line) transparent;scrollbar-width:thin}
body[data-theme="dark"]::-webkit-scrollbar,body[data-theme="dark"] *::-webkit-scrollbar{width:10px;height:10px}
body[data-theme="dark"]::-webkit-scrollbar-track,body[data-theme="dark"] *::-webkit-scrollbar-track{background:transparent}
body[data-theme="dark"]::-webkit-scrollbar-thumb,body[data-theme="dark"] *::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background-color:#394564;background-clip:padding-box}
body[data-theme="dark"]::-webkit-scrollbar-thumb:hover,body[data-theme="dark"] *::-webkit-scrollbar-thumb:hover{background-color:#59688d}
body[data-theme="dark"] .chart::-webkit-scrollbar{display:none}

/* Reserva mais espaço para os nomes das categorias */
.category-chart-row{grid-template-columns:22px minmax(135px,155px) minmax(24px,1fr) auto;gap:8px}
.category-chart-label{min-width:0}
@media(max-width:600px){.category-chart-row{grid-template-columns:22px minmax(118px,132px) minmax(18px,1fr) auto;gap:6px}.category-chart-value{font-size:11px}}

/* As abas podem rolar horizontalmente no celular sem exibir uma barra vertical */
body[data-theme="dark"] .dashboard-tabs{scrollbar-width:none}
body[data-theme="dark"] .dashboard-tabs::-webkit-scrollbar{display:none}

/* Destinatários: cadastro, associação histórica e análises */
.recipient-quick-add,.recipient-create-form{display:flex;align-items:center;gap:6px;margin-top:7px}.recipient-quick-add input,.recipient-create-form input{min-width:0;flex:1;height:36px;padding:0 9px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font:inherit;font-size:11px}.recipient-quick-add button,.recipient-create-form button,.recipient-rename-form button,.recipient-legacy-row button{min-height:34px;padding:0 9px;border:1px solid var(--line);border-radius:8px;background:var(--navy-raised);color:var(--navy-text);font:inherit;font-size:10px;font-weight:700;cursor:pointer}.recipient-quick-add button[type=submit],.recipient-create-form button,.recipient-legacy-row button{border-color:var(--success);background:var(--success);color:#0b1023}.recipient-manager{margin:14px 0;padding:0 12px 12px;border:1px solid var(--line);border-radius:11px;background:var(--navy-side)}.recipient-manager>summary{padding:12px 0;color:var(--ink);font-size:12px;font-weight:700;cursor:pointer}.recipient-manager>p{margin:0 0 10px;color:var(--muted);font-size:10px;line-height:1.45}.recipient-managed-list{display:grid;gap:7px;margin-top:10px}.recipient-managed-row{padding:9px;border:1px solid var(--line);border-radius:9px;background:var(--navy-card)}.recipient-managed-main{display:flex;justify-content:space-between;align-items:center;gap:8px}.recipient-managed-main>span{min-width:0;font-size:11px}.recipient-managed-main small{display:block;margin-top:3px;color:var(--muted);font-size:9px}.recipient-managed-main>div{display:flex;gap:5px}.recipient-managed-main button,.recipient-rename-form button{min-height:30px;padding:0 7px}.recipient-rename-form{display:flex;gap:5px;margin-top:7px}.recipient-rename-form input{min-width:0;flex:1;height:32px;padding:0 8px;border:1px solid var(--line);border-radius:7px;background:var(--navy-side);color:var(--ink)}.recipient-legacy-section{margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}.recipient-legacy-section h3{margin:0 0 7px;font-size:10px}.recipient-legacy-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(105px,.8fr) auto;align-items:center;gap:6px;padding:5px 0;font-size:10px}.recipient-legacy-row>span{min-width:0;overflow-wrap:anywhere}.recipient-legacy-row select{min-width:0;height:32px;padding:0 5px;border:1px solid var(--line);border-radius:7px;background:var(--navy-card);color:var(--ink);font:inherit;font-size:10px}.analysis-recipient-picker #analysisRecipientOptions{position:absolute;z-index:20;top:44px;left:0;display:grid;gap:3px;width:min(260px,calc(100vw - 48px));max-height:230px;overflow:auto;margin-top:7px;padding:8px;border:1px solid var(--ad-line);border-radius:9px;background:var(--ad-card);box-shadow:var(--shadow)}.analysis-recipient-picker #analysisRecipientOptions label{display:flex;align-items:center;gap:7px;padding:6px 4px;color:var(--ad-text);font-size:11px}.analysis-recipient-picker #analysisRecipientOptions small{margin-left:auto;color:var(--ad-muted);font-size:10px}.analysis-recipient-row{display:grid;grid-template-columns:minmax(95px,1fr) minmax(55px,1.4fr) auto auto;align-items:center;gap:9px;width:100%;padding:7px 6px;border:0;border-radius:8px;background:transparent;color:var(--ad-text);font:inherit;text-align:left;cursor:pointer}.analysis-recipient-row:hover,.analysis-recipient-row.is-selected{background:var(--ad-raised)}.analysis-recipient-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.analysis-recipient-row>i{height:7px;overflow:hidden;border-radius:99px;background:var(--ad-line)}.analysis-recipient-row>i>b{display:block;height:100%;border-radius:inherit;background:var(--ad-green)}.analysis-recipient-row>strong{font-size:11px;white-space:nowrap}.analysis-recipient-row>small{min-width:38px;color:var(--ad-muted);font-size:10px;text-align:right}@media(max-width:600px){.analysis-recipient-picker #analysisRecipientOptions{left:auto;right:0}.recipient-legacy-row{grid-template-columns:minmax(0,1fr) minmax(95px,.8fr);}.recipient-legacy-row button{grid-column:2;justify-self:end}.analysis-recipient-row{grid-template-columns:minmax(75px,1fr) minmax(30px,1fr) auto}.analysis-recipient-row>small{display:none}.recipient-managed-main{align-items:flex-start}.recipient-managed-main>div{flex-wrap:wrap;justify-content:flex-end}}

.analysis-category-picker input[type=checkbox]{width:16px;height:16px;min-width:16px;min-height:16px;margin:0;padding:0;border-radius:4px;accent-color:var(--ad-green,var(--green));flex:0 0 16px;cursor:pointer}.analysis-category-picker label{cursor:pointer}

/* Planejamento: hierarquia visual e leitura financeira */
body[data-dashboard-tab="planning"] .grid{display:flex;flex-direction:column;gap:18px}
body[data-dashboard-tab="planning"] .grid>.left-col,body[data-dashboard-tab="planning"] .grid>.right-col{display:contents}
body[data-dashboard-tab="planning"] .accounts-panel{order:1}
body[data-dashboard-tab="planning"] .goals-panel{order:2}
body[data-dashboard-tab="planning"] .recurring-panel{order:3}
body[data-dashboard-tab="planning"] .panel-head h2{font-size:21px;letter-spacing:-.35px}
body[data-dashboard-tab="planning"] .panel-head>div>span{font-size:14px;color:var(--muted)}
body[data-dashboard-tab="planning"] .panel-action{min-height:40px;padding:8px 14px;font-size:14px}
body[data-dashboard-tab="planning"] .account-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:22px;align-items:start}
.account-group-title{grid-column:1/-1;margin:12px 0 0;padding-top:12px;border-top:1px solid var(--line);color:var(--muted);font-size:14px;font-weight:700}
.account-group-title:first-child{margin-top:0;padding-top:0;border-top:0}
.account-summary-row{grid-template-columns:42px minmax(0,1fr) auto;gap:12px;padding:14px 0;border-color:var(--line)}
.account-summary-icon{width:40px;height:40px;font-size:18px}
.account-summary-main strong{font-size:16px;white-space:normal;overflow-wrap:anywhere}
.account-summary-main small{font-size:13px;white-space:normal;line-height:1.4}
.account-amount{font-size:19px;white-space:normal;text-align:right;overflow-wrap:anywhere}
.account-amount.negative{color:var(--red)}
.account-pay{grid-column:2/-1;font-size:14px;min-height:32px}
.goals-panel .panel-head{margin-bottom:18px}
.goal-form{padding:18px;margin:0 0 18px;border:1px solid var(--line);border-radius:13px;background:var(--bg);grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.goal-form[hidden]{display:none}
.goal-form>label,.goal-form .fields-row>label{display:grid;gap:6px;color:var(--muted);font-size:13px;font-weight:600}
.goal-form>label:first-child,.goal-form .fields-row,.goal-form-actions{grid-column:1/-1}
.goal-form .fields-row{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.goal-form>label>input,.goal-form label input,.goal-form label select{min-width:0;width:100%;height:46px;padding:0 13px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink);font:500 15px 'DM Sans',sans-serif}
.goal-form-actions{display:flex;gap:10px;flex-wrap:wrap}
.goal-form .submit,.goal-form-cancel{height:44px;min-height:44px;margin:0;padding:0 17px;font-size:15px}
.goal-form-cancel{border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink);font-weight:700}
.goals-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;align-items:start}
.goal-card{min-width:0;padding:19px;border:1px solid var(--navy-line);border-radius:15px;background:var(--navy-card);color:var(--navy-text);box-shadow:0 8px 24px #050a1a20}
.goal-card-head{align-items:center;gap:12px}
.goal-title-wrap{display:flex;align-items:center;gap:12px;min-width:0}
.goal-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:13px;background:#26375d;color:#74d9c1;font-size:26px}
.goal-card-head strong{font-size:17px;line-height:1.3;overflow-wrap:anywhere}
.goal-card-head .goal-current-label{margin-top:3px;color:var(--navy-muted);font-size:13px}
.goal-delete{width:34px;height:34px;flex:0 0 34px;font-size:20px}
.goal-balance-line{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:16px 0 8px}
.goal-balance-line>strong{font:800 25px Manrope,sans-serif;letter-spacing:-.6px;overflow-wrap:anywhere}
.goal-balance-line>span{flex:0 0 auto;padding:5px 9px;border-radius:20px;background:#183e45;color:#79e3ca;font-size:14px;font-weight:800}
.goal-progress{height:11px;margin:0 0 15px;background:#35415e}
.goal-progress span{background:linear-gradient(90deg,#36c6a2,#51d8c0)}
.goal-financial-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:13px 0;border-top:1px solid var(--navy-line);border-bottom:1px solid var(--navy-line)}
.goal-financial-grid>div{min-width:0;display:grid;gap:5px}
.goal-financial-grid small{font-size:13px;color:var(--navy-muted)}
.goal-financial-grid strong{font-size:16px;line-height:1.35;overflow-wrap:anywhere}
.goal-linked-account{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding-top:12px;color:var(--navy-muted);font-size:13px}
.goal-linked-account strong{color:var(--navy-text);text-align:right;overflow-wrap:anywhere}
.goal-schedule-status{margin-top:10px;color:var(--navy-muted);font-size:14px;line-height:1.5}
.goal-monthly-action{min-height:40px;padding:8px 12px;font-size:14px}
.goal-management-details{margin-top:13px;padding-top:12px;border-top:1px solid var(--navy-line)}
.goal-management-details>summary{font-size:14px}
.goal-settings-details>summary,.goal-contribute-details summary,.goal-withdraw-details summary,.goal-interest-details summary{font-size:14px}
.goal-settings-details form,.goal-withdraw-details form,.goal-interest-details form{font-size:14px}
.goal-settings-details input,.goal-settings-details select,.goal-contribute-details input,.goal-contribute-details select,.goal-withdraw-details input,.goal-withdraw-details select,.goal-interest-details input,.goal-interest-details select{min-height:42px;font-size:14px}
.goal-contribute-details button,.goal-settings-details button,.goal-withdraw-details button,.goal-interest-details button{min-height:40px;font-size:14px}
.recurring-summary-row{align-items:center;gap:16px;padding:14px 0;border-color:var(--line)}
.recurring-summary-row>span{display:grid;gap:4px;min-width:0}
.recurring-summary-row>span strong{font-size:16px;line-height:1.4;overflow-wrap:anywhere}
.recurring-summary-row>span small{font-size:13px;color:var(--muted)}
.recurring-summary-row>strong{font-size:17px;white-space:nowrap}
.recurring-summary-toggle{min-height:40px;font-size:14px}
body[data-theme="dark"] .goal-form{background:var(--navy-side);border-color:var(--navy-line)}
body[data-theme="dark"] .goal-form>label,body[data-theme="dark"] .goal-form .fields-row>label{color:var(--navy-muted)}
body[data-theme="dark"] .goal-form>label>input,body[data-theme="dark"] .goal-form label input,body[data-theme="dark"] .goal-form label select{background:var(--navy-card);color:var(--navy-text);border-color:var(--navy-line)}
body[data-theme="dark"] .goal-form-cancel{background:var(--navy-card);color:var(--navy-text);border-color:var(--navy-line)}
body[data-theme="light"] .goal-card{background:var(--navy-card);color:var(--navy-text)}
@media(max-width:850px){body[data-dashboard-tab="planning"] .account-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){body[data-dashboard-tab="planning"] .grid{gap:13px}body[data-dashboard-tab="planning"] .panel{padding:16px}body[data-dashboard-tab="planning"] .panel-head{gap:10px;align-items:flex-start}body[data-dashboard-tab="planning"] .panel-head h2{font-size:20px}.goals-list{grid-template-columns:minmax(0,1fr);gap:12px}.goal-form{grid-template-columns:minmax(0,1fr);padding:14px}.goal-form>label:first-child,.goal-form .fields-row,.goal-form-actions{grid-column:1}.goal-form .fields-row{grid-template-columns:minmax(0,1fr)}body[data-dashboard-tab="planning"] .account-overview{grid-template-columns:minmax(0,1fr)}.account-group-title{grid-column:1}.account-summary-row{grid-template-columns:40px minmax(0,1fr) auto}.account-amount{font-size:17px;max-width:42vw}.goal-balance-line>strong{font-size:23px}.goal-linked-account{flex-direction:column;gap:4px}.goal-linked-account strong{text-align:left}.goal-create-toggle{white-space:nowrap;padding:8px 10px!important;font-size:13px!important}}

/* Category and subcategory creation controls */
.new-subcategory-form{margin:14px 0 18px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.subcategory-create-fields{display:grid!important;grid-template-columns:minmax(130px,1fr) minmax(140px,1.4fr) 46px;gap:8px}.subcategory-create-fields select{min-width:0;height:44px;padding:0 10px;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);font:inherit}.subcategory-create-fields button{width:46px;height:44px;border:0;border-radius:10px;background:var(--green);color:#fff;font-size:22px}body[data-theme="dark"] .subcategory-create-fields select{background:var(--navy-side);color:var(--ink);border-color:var(--line)}@media(max-width:480px){.subcategory-create-fields{grid-template-columns:1fr 46px}.subcategory-create-fields select{grid-column:1/-1}}

/* Recipient manager action buttons */
.recipient-managed-main button{min-height:30px;padding:0 9px;border:1px solid var(--line);border-radius:8px;background:var(--navy-raised);color:var(--navy-text);font:inherit;font-size:10px;font-weight:700;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.recipient-managed-main button:hover{border-color:var(--success);background:var(--navy-side);color:var(--ink)}.recipient-managed-main button:focus-visible{outline:2px solid var(--success);outline-offset:2px}

.managed-category-icon{display:inline-flex;width:19px;height:19px;margin-right:6px;vertical-align:middle;color:var(--green)}.managed-category-icon svg{width:16px;height:16px;vertical-align:middle}
.category-style-fields{display:flex;align-items:flex-end;gap:10px;margin-top:8px}.category-style-fields label{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:10px}.category-style-fields select{height:34px;padding:0 8px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font:inherit}.category-style-fields input[type=color]{width:46px;height:34px;padding:3px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}body[data-theme="dark"] .category-style-fields select,body[data-theme="dark"] .category-style-fields input[type=color]{background:var(--navy-side);color:var(--ink);border-color:var(--line)}
.managed-subcategories{margin-top:10px;border-top:1px solid var(--line);padding-top:8px}.managed-subcategories>summary{font-size:11px;font-weight:700;color:var(--muted);cursor:pointer}.managed-subcategories ul{display:grid;gap:6px;margin:8px 0 0;padding:0;list-style:none}.managed-subcategory-row{display:grid;grid-template-columns:minmax(90px,1fr) minmax(0,2fr);align-items:center;gap:8px;padding:7px;border-radius:8px;background:var(--navy-side)}.managed-subcategory-row>span{font-size:11px;font-weight:600}.managed-subcategory-row>span small{display:block;margin-top:3px;color:var(--muted);font-size:9px;font-weight:400}.managed-subcategory-row>div{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.managed-subcategory-row button,.managed-subcategory-row select{min-height:30px;max-width:150px;padding:0 7px;border:1px solid var(--line);border-radius:7px;background:var(--navy-raised);color:var(--navy-text);font:inherit;font-size:10px}.managed-subcategory-row button{font-weight:700;cursor:pointer}.managed-subcategory-row button:hover{border-color:var(--success)}.managed-subcategory-row form{grid-column:1/-1;display:flex;gap:6px}.managed-subcategory-row form[hidden]{display:none}.managed-subcategory-row form input{min-width:0;flex:1;height:32px;padding:0 8px;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--ink)}.managed-subcategory-row form button{background:var(--success);color:#0b1023}.managed-subcategory-empty{color:var(--muted);font-size:11px;list-style:none}@media(max-width:620px){.managed-subcategory-row{grid-template-columns:1fr}.managed-subcategory-row>div{justify-content:flex-start}.managed-subcategory-row button,.managed-subcategory-row select{max-width:none}.category-style-fields{flex-wrap:wrap}}
.recurrence-chart-panel .panel-head p{margin:4px 0 0;color:var(--muted);font-size:11px}.recurrence-breakdown{display:grid;grid-template-columns:minmax(130px,190px) minmax(0,1fr);align-items:center;gap:18px;min-height:170px}.recurrence-donut{width:min(100%,180px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:var(--recurrence-slices);position:relative;margin:auto}.recurrence-donut:before{content:"";position:absolute;inset:16%;border-radius:50%;background:var(--paper)}.recurrence-donut>div{position:relative;display:grid;justify-items:center;text-align:center;padding:4px}.recurrence-donut strong{font-size:15px}.recurrence-donut span{margin-top:3px;color:var(--muted);font-size:9px}.recurrence-legend{display:grid;gap:8px;list-style:none;padding:0;margin:0}.recurrence-legend li{display:grid;grid-template-columns:10px minmax(75px,1fr) auto 40px;align-items:center;gap:7px;font-size:11px}.recurrence-legend li>i{width:9px;height:9px;border-radius:50%;background:var(--recurrence-color)}.recurrence-legend li strong{font-size:11px}.recurrence-legend li small{color:var(--muted);text-align:right}.recurrence-empty{color:var(--muted);font-size:12px}@media(max-width:520px){.recurrence-breakdown{grid-template-columns:1fr;gap:10px}.recurrence-donut{width:150px}.recurrence-legend li{grid-template-columns:10px minmax(75px,1fr) auto 36px}}

/* Personal price history */
.price-dashboard{grid-column:1/-1;display:grid;gap:14px;min-width:0}.price-heading{padding:6px 2px}.price-heading h2{margin:3px 0 6px;font-size:24px}.price-heading p{margin:0;color:var(--muted);font-size:12px}.price-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.price-kpis article,.price-stat-grid>div{display:grid;gap:5px;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.price-kpis span,.price-stat-grid span{color:var(--muted);font-size:10px}.price-kpis strong{font-size:18px}.price-kpis small,.price-stat-grid small{color:var(--muted);font-size:10px}.price-panel{min-width:0;padding:16px}.price-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:12px 0}.price-filters label,.price-detail-fields label,.price-product-fields label{display:grid;gap:5px;color:var(--muted);font-size:11px}.price-filters input,.price-filters select,.price-detail-fields input,.price-product-form input,.price-product-form select,.price-product-form textarea{min-width:0;min-height:38px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--navy-side);color:var(--ink);font:inherit}.price-method{margin-top:12px;color:var(--muted);font-size:11px}.price-method summary{cursor:pointer;color:var(--ink);font-weight:700}.price-method p{line-height:1.6}.price-chart{min-width:0;overflow:hidden}.price-svg-wrap{width:100%;overflow-x:auto}.price-svg-wrap svg{display:block;width:100%;min-width:420px;height:auto;overflow:visible}.price-svg-wrap text{fill:var(--muted);font-size:10px}.price-base-line{stroke:var(--line);stroke-dasharray:4 4}.price-movers{display:grid;grid-template-columns:1fr 1fr;gap:14px}.price-movers h3{font-size:12px}.price-movers p{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid var(--line);font-size:11px}.price-empty{padding:14px;color:var(--muted);font-size:12px;line-height:1.5}.price-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.price-stat-grid strong{font-size:13px}.price-table-wrap{max-width:100%;overflow:auto}.price-table-wrap table{width:100%;border-collapse:collapse;font-size:11px}.price-table-wrap th,.price-table-wrap td{padding:9px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}.price-table-wrap th{color:var(--muted);font-weight:600}.price-table-wrap small{color:var(--muted)}.price-product-form{margin:12px 0;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--navy-side)}.price-product-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.price-product-fields .price-product-notes{grid-column:span 2}.price-product-fields .price-basket-quantity{align-content:start}.price-monitor-toggle{display:flex!important;align-items:center;gap:7px}.price-monitor-toggle input{min-height:auto}.price-product-actions,.price-detail-controls{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.price-product-actions button,.price-detail-controls button,.price-product-row button,.price-detail-lines button,.price-detail-dialog footer button{min-height:36px;padding:7px 12px;border:1px solid var(--line);border-radius:8px;background:var(--navy-raised);color:var(--ink);font:inherit;font-size:11px;font-weight:700;cursor:pointer}.price-product-actions .submit,.price-detail-dialog footer .submit{background:var(--success);color:#0b1023}.price-form-error{color:var(--danger,#ff8a8a);font-size:11px}.price-product-list{display:grid;gap:7px;margin-top:10px}.price-product-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--navy-side)}.price-product-row>div:first-child{display:grid;gap:4px;min-width:0}.price-product-row span,.price-product-row small{color:var(--muted);font-size:10px}.price-product-row>div:last-child{display:flex;gap:6px}.price-detail-overlay{z-index:1300;align-items:center;justify-content:center;padding:16px}.price-detail-dialog{width:min(850px,100%);max-height:min(92vh,900px);overflow:auto;padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--navy-card,var(--paper));color:var(--ink);box-shadow:0 20px 70px #0008}.price-detail-dialog>header{display:flex;justify-content:space-between;gap:12px}.price-detail-dialog>header h2{margin:0;font-size:19px}.price-detail-dialog>header p{color:var(--muted);font-size:11px}.price-detail-dialog>header button{width:36px;height:36px;border:1px solid var(--line);border-radius:9px;background:var(--navy-side);color:var(--ink);font-size:22px}.price-detail-fields{display:grid;grid-template-columns:1fr 2fr 1fr;gap:9px}.price-detail-lines{display:grid;gap:8px;margin-top:14px}.price-detail-row{display:grid;grid-template-columns:2fr .8fr 1fr 1fr auto;align-items:end;gap:8px;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--navy-side)}.price-detail-row label{display:grid;gap:5px;color:var(--muted);font-size:10px}.price-detail-row select,.price-detail-row input{width:100%;min-width:0;height:36px;padding:6px;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--ink);font:inherit}.price-detail-row small{grid-column:1/-1;color:var(--muted);font-size:10px}.price-detail-totals{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:12px 0}.price-detail-totals>div{display:grid;gap:5px;padding:10px;border:1px solid var(--line);border-radius:8px}.price-detail-totals span{color:var(--muted);font-size:10px}.price-detail-totals strong{font-size:12px}.price-detail-dialog footer{display:flex;justify-content:flex-end;margin-top:12px}
@media(max-width:700px){.price-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.price-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.price-product-fields,.price-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.price-detail-row{grid-template-columns:1fr 1fr}.price-detail-row label:first-child{grid-column:1/-1}.price-detail-row small{grid-column:1/-1}.price-detail-fields{grid-template-columns:1fr 1fr}.price-movers{gap:8px}.price-detail-totals{grid-template-columns:1fr 1fr}}
@media(max-width:420px){.price-panel{padding:12px}.price-filters{grid-template-columns:1fr 1fr}.price-product-fields,.price-stat-grid{grid-template-columns:1fr 1fr}.price-product-fields .price-product-notes{grid-column:1/-1}.price-product-row{align-items:flex-start;flex-direction:column}.price-detail-fields{grid-template-columns:1fr}.price-movers{grid-template-columns:1fr}.price-detail-dialog{padding:13px}}

.edit-overlay[hidden]{display:none!important}.tx-price-detail{border:0;background:none;padding:0;color:var(--green);font-size:10px;font-weight:700;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.tx-price-detail:hover{color:var(--ink)}body[data-theme="dark"] .tx-price-detail{color:var(--success)}@media(max-width:700px){.price-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Compact catalog and separated basket settings */
.price-dashboard{gap:10px}.price-heading{padding:2px 2px}.price-heading h2{margin:2px 0 4px;font-size:22px}.price-heading p{font-size:11px}.price-panel{padding:13px}.price-panel .panel-head{margin-bottom:8px}.price-panel .panel-head h3{font-size:14px}.price-panel .panel-head span{font-size:10px}.price-kpis article{gap:3px;padding:10px 12px}.price-kpis strong{font-size:16px}.price-empty{padding:8px 10px;margin:0}.price-catalog-filters{display:grid;grid-template-columns:minmax(170px,2fr) repeat(2,minmax(120px,1fr));gap:8px;margin:8px 0}.price-catalog-filters label{display:grid;gap:4px;color:var(--muted);font-size:10px}.price-catalog-filters input,.price-catalog-filters select{min-width:0;height:36px;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:var(--navy-side);color:var(--ink);font:inherit;font-size:11px}.price-product-list{gap:6px;margin-top:7px}.price-product-row{padding:7px 9px;gap:8px}.price-product-summary{display:grid;flex:1;min-width:0;gap:3px;padding:0;border:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.price-product-summary strong{font-size:11px}.price-product-summary span,.price-product-summary small{overflow-wrap:anywhere;color:var(--muted);font-size:9px}.price-product-row>div:last-child{flex:0 0 auto}.price-product-form{margin:8px 0;padding:12px}.price-product-section{min-width:0;margin:0;padding:0;border:0}.price-product-section legend{margin-bottom:8px;font-size:13px;font-weight:700;color:var(--ink)}.price-product-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.price-product-fields>label{font-size:10px}.price-product-fields .price-product-notes{grid-column:span 2}.price-basket-section{margin-top:10px;padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:var(--paper)}.price-basket-section>summary{font-size:11px;font-weight:700;cursor:pointer}.price-basket-section>p{max-width:720px;margin:7px 0;color:var(--muted);font-size:10px;line-height:1.45}.price-basket-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.price-basket-fields[hidden]{display:none!important}.price-basket-fields label{display:grid;gap:4px;color:var(--muted);font-size:10px}.price-basket-fields input,.price-basket-fields select{height:36px;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:var(--navy-side);color:var(--ink);font:inherit}.price-monitor-toggle{display:flex!important;align-items:center;gap:7px;margin:6px 0 0;color:var(--ink)!important}.price-monitor-toggle input{min-height:auto}.price-product-actions{margin-top:9px}.price-product-actions button{min-height:34px;padding:6px 11px}.price-product-dialog{width:min(760px,100%)}.price-product-dialog header{margin-bottom:8px}.price-product-dialog header p{margin:5px 0;font-size:10px}.price-product-overlay{z-index:1250}.price-detail-search{display:grid;gap:4px;margin-top:12px;color:var(--muted);font-size:10px}.price-detail-search input{height:36px;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:var(--navy-side);color:var(--ink);font:inherit}.price-stat-grid{gap:6px}.price-stat-grid>div{gap:3px;padding:9px}.price-stat-grid strong{font-size:12px}.price-detail-totals{gap:6px}.price-detail-totals>div{padding:8px}
@media(max-width:700px){.price-catalog-filters{grid-template-columns:1fr 1fr}.price-catalog-filters label:first-child{grid-column:1/-1}.price-product-fields{grid-template-columns:1fr 1fr}.price-product-fields .price-product-notes{grid-column:1/-1}.price-product-row{flex-direction:row;align-items:center}.price-product-row>div:last-child{flex-wrap:wrap}.price-product-row button{min-height:32px;padding:5px 8px}.price-product-dialog{width:100%;max-height:94vh;padding:14px}.price-basket-fields{grid-template-columns:1fr 1fr}}
@media(max-width:430px){.price-panel{padding:10px}.price-product-row{align-items:flex-start}.price-product-row>div:last-child{flex-direction:column}.price-product-row button{font-size:10px}.price-kpis article{padding:9px}.price-kpis strong{font-size:14px}.price-product-fields{grid-template-columns:1fr 1fr}.price-product-fields label:nth-child(1),.price-product-fields label:nth-child(2){grid-column:span 1}.price-basket-fields{grid-template-columns:1fr}.price-detail-search{margin-top:9px}}

.price-history-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:12px 0 5px;padding-top:9px;border-top:1px solid var(--line)}.price-history-heading h4{margin:0;font-size:12px}.price-history-heading span{color:var(--muted);font-size:9px}.price-method-note{display:block;margin:0 10px 8px;color:var(--muted);font-size:9px}

/* Shared readable type scale */
:root{--type-page:clamp(1.75rem,1.55rem + .8vw,1.875rem);--type-section:1.375rem;--type-card:1.125rem;--type-body:1rem;--type-control:.9375rem;--type-label:.875rem;--type-secondary:.875rem;--type-caption:.8125rem;--type-kpi:clamp(1.5rem,1.3rem + .8vw,2rem)}
body{font-size:var(--type-body);line-height:1.5}
.heading{align-items:flex-start;margin-bottom:18px}.heading h1{font-size:var(--type-page);line-height:1.18;letter-spacing:-.7px}.heading .eyebrow{font-size:var(--type-caption);margin-bottom:5px}.heading p{margin:7px 0 0;color:var(--muted);font-size:var(--type-secondary);line-height:1.45}
.panel-head h2,.budget-top h2{font-size:var(--type-section)}.panel-head span,.budget-top span{font-size:var(--type-secondary)}.card-label{font-size:var(--type-label)}.amount{font-size:24px}.footnote,.budget-hint{font-size:var(--type-caption)}
.local-pill{font-size:var(--type-caption)}.month-nav{font-size:var(--type-control)}.eyebrow,.analysis-eyebrow{font-size:var(--type-caption)}
.field{gap:7px}.field label{font-size:var(--type-label)}.field input,.field select,.field textarea{font-size:var(--type-control)}.type-switch button,.view-switch button,.submit{font-size:var(--type-control)}.search{font-size:var(--type-control);max-width:none}.transactions-toolbar,.transaction-caption,.filter-grid label,.filter-grid button{font-size:var(--type-caption)}
.tx-title{font-size:var(--type-control)}.tx-meta,.tx-date{font-size:var(--type-caption)}.tx-actions button,.tx-status,.tx-settle,.tx-edit,.tx-price-detail{font-size:var(--type-caption)}.tx-value{font-size:var(--type-control)}.category-name,.category-total{font-size:var(--type-control)}.category-count,.category-split{font-size:var(--type-caption)}
.price-heading h2{font-size:var(--type-page)}.price-heading p{font-size:var(--type-secondary)}.price-panel .panel-head h3{font-size:1.125rem}.price-panel .panel-head span{font-size:var(--type-secondary)}.price-kpis span,.price-stat-grid span,.price-detail-totals span{font-size:var(--type-caption)}.price-kpis strong{font-size:var(--type-kpi)}.price-kpis small,.price-stat-grid small,.price-method-note{font-size:var(--type-caption)}
.price-filters label,.price-catalog-filters label,.price-detail-fields label,.price-product-fields>label,.price-basket-fields label,.price-detail-search,.price-detail-row label{font-size:var(--type-label)}.price-filters input,.price-filters select,.price-catalog-filters input,.price-catalog-filters select,.price-detail-fields input,.price-product-form input,.price-product-form select,.price-product-form textarea,.price-basket-fields input,.price-basket-fields select,.price-detail-row input,.price-detail-row select{font-size:var(--type-control);min-height:42px}.price-product-row button,.price-detail-controls button,.price-product-actions button,.price-detail-dialog footer button{font-size:var(--type-caption);min-height:40px}.price-product-summary strong{font-size:var(--type-control)}.price-product-summary span,.price-product-summary small,.price-product-row span,.price-product-row small{font-size:var(--type-caption)}.price-method{font-size:var(--type-caption)}.price-method>summary,.price-basket-section>summary{font-size:var(--type-label)}.price-basket-section>p{font-size:var(--type-caption)}.price-empty,.price-movers p,.price-movers h3{font-size:var(--type-secondary)}.price-stat-grid strong{font-size:var(--type-label)}.price-table-wrap table{font-size:var(--type-caption)}.price-table-wrap th,.price-table-wrap td{line-height:1.45}.price-detail-dialog>header p{font-size:var(--type-caption)}.price-detail-dialog>header h2{font-size:var(--type-section)}.price-detail-totals strong{font-size:var(--type-label)}.price-form-error{font-size:var(--type-caption)}.price-history-heading h4{font-size:var(--type-label)}.price-history-heading span{font-size:var(--type-caption)}.price-svg-wrap text{font-size:12px}
body[data-dashboard-tab="prices"] .month-nav{display:none}body[data-dashboard-tab="prices"] .heading{margin-bottom:12px}body[data-dashboard-tab="prices"] .price-dashboard{gap:12px}
@media(max-width:700px){:root{--type-page:1.625rem;--type-section:1.25rem;--type-card:1.0625rem;--type-body:1rem;--type-control:1rem;--type-label:.875rem;--type-secondary:.875rem;--type-caption:.8125rem;--type-kpi:1.5rem}.amount{font-size:21px}.panel-head{gap:10px}.panel-head h2,.budget-top h2{font-size:var(--type-card)}.price-panel{padding:12px}.price-kpis{gap:8px}.price-catalog-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.price-catalog-filters label:first-child{grid-column:1/-1}.price-product-row{gap:8px}.price-product-row>div:last-child{flex-wrap:wrap}.price-product-summary span,.price-product-summary small{overflow-wrap:anywhere}.price-detail-fields{grid-template-columns:1fr 1fr}.price-detail-totals{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:430px){.heading h1{font-size:1.5rem}.price-catalog-filters label:first-child{grid-column:1/-1}.price-product-row{align-items:flex-start}.price-product-row>div:last-child{flex-direction:column}.price-table-wrap table{min-width:650px}.price-movers{grid-template-columns:1fr}.price-detail-row{grid-template-columns:1fr 1fr}.price-detail-row label:first-child{grid-column:1/-1}}

/* Readable text across the existing screens */
.analysis-dashboard .panel-head span,.analysis-filters>label,.analysis-account-box>p,.analysis-period-note,.analysis-chip,.analysis-clear-inline,.analysis-insight,.analysis-legend,.analysis-compare-row,.analysis-compare-summary,.analysis-rank-row,.analysis-section-title p,.analysis-recipient-picker #analysisRecipientOptions label,.analysis-recipient-row,.analysis-kpi span,.analysis-kpi small,.analysis-pair-total span{font-size:var(--type-caption)}
.category-chart-label,.category-chart-value,.category-chart-empty,.category-split,.category-limit-amount,.category-budget-meter,.category-settings-note,.category-suggestion,.category-pie-legend strong{font-size:var(--type-caption)}
.budget-action,.budget-alert,.due-notification-button,.due-reminder-banner,.due-weekday,.due-calendar-day>span,.due-calendar-month,.select-visible-label,.applied-filter-chip,.transaction-caption,.filter-grid label,.category-style-fields label{font-size:var(--type-caption)}
.goal-card>small,.goal-history-list>p,.goal-history-row strong,.goal-history-row>b,.goal-schedule-status,.goal-settings-details label,.goal-settings-note,.recurring-summary-row,.recurring-rule-state,.recurring-edit-grid label,.recurring-rule-actions button,.receivable-form-details .field label,.recipient-manager>p,.recipient-legacy-section h3,.recipient-legacy-row,.recipient-quick-add button,.recipient-create-form button,.recipient-rename-form button{font-size:var(--type-caption)}
.managed-account-actions button,.managed-category-actions button,.inline-category-form button,.managed-category-name small,.managed-subcategory-row>span,.managed-subcategory-row button,.managed-subcategory-row select,.managed-subcategory-empty,.account-setting-fields label,.account-summary-main small,.new-category-form>label{font-size:var(--type-caption)}
.view-switch button,.bulk-actions button,.bulk-actions select,.category-delete-prompt .edit-cancel,.budget-action,.new-entry-button small{font-size:var(--type-caption)}
.category-chart-row,.category-group summary,.recurrence-legend li,.analysis-recipient-row,.account-summary-row,.goal-card,.recipient-managed-row{line-height:1.4}
.form-control:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline-color:var(--success);outline-offset:2px}
.price-method>summary{display:flex;align-items:center;gap:8px}.price-method>summary::marker{color:var(--success)}.price-method>summary::after{content:"＋";margin-left:auto;color:var(--success);font-size:14px}.price-method[open]>summary::after{content:"−"}
@media(max-width:700px){.heading{gap:8px}.heading h1{line-height:1.2}.heading p{max-width:42ch}.app{overflow-x:clip}.price-detail-search input{font-size:16px}.price-table-wrap table{font-size:13px}}

.recurrence-breakdown{display:block;min-height:0}.recurrence-analysis{display:grid;gap:16px}.recurrence-chart-row{display:grid;grid-template-columns:minmax(140px,190px) minmax(0,1fr);align-items:center;gap:12px 20px}.recurrence-donut{width:min(100%,180px);cursor:pointer;transition:transform .16s ease,filter .16s ease}.recurrence-donut:hover,.recurrence-donut:focus-visible{transform:scale(1.035);filter:brightness(1.1);outline:2px solid var(--success);outline-offset:4px}.recurrence-donut>div{width:100%;padding:6px}.recurrence-donut>div strong{max-width:100%;font-size:18px;letter-spacing:-.035em;line-height:1.15;white-space:nowrap}.recurrence-donut>div span{font-size:14px}.recurrence-legend{display:grid;gap:7px;list-style:none;padding:0;margin:0}.recurrence-legend-item{width:100%;display:grid;grid-template-columns:12px minmax(110px,1fr) auto 48px;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);text-align:left;font-size:15px;cursor:pointer}.recurrence-legend-item.selected{border-color:var(--recurrence-color);box-shadow:inset 3px 0 var(--recurrence-color);background:var(--paper)}.recurrence-legend-item i{width:10px;height:10px;border-radius:50%;background:var(--recurrence-color)}.recurrence-legend-item strong{font-size:15px}.recurrence-legend-item small{font-size:14px;color:var(--muted);text-align:right}.recurrence-payment-totals{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.recurrence-payment-totals span{display:grid;gap:3px;padding:9px 12px;border-radius:9px;background:var(--paper);color:var(--muted);font-size:14px}.recurrence-payment-totals strong{color:var(--ink);font-size:15px}.recurrence-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding-bottom:12px;border-bottom:1px solid var(--line)}.recurrence-controls>button,.recurrence-group-toggle,.recurrence-more{min-height:40px;padding:8px 12px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink);font-size:14px;cursor:pointer}.recurrence-controls>button.active{border-color:var(--success);color:var(--success);background:var(--paper)}.recurrence-group-toggle{display:flex;align-items:center;gap:8px;margin-left:auto}.recurrence-group-toggle input{accent-color:var(--success)}.recurrence-details h3{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:0 0 10px;font-size:17px}.recurrence-details h3 span{font-size:14px;color:var(--muted);font-weight:400}.recurrence-detail-row{display:grid;grid-template-columns:minmax(140px,1.5fr) minmax(80px,.7fr) minmax(80px,.7fr) minmax(100px,.9fr) auto auto;align-items:center;gap:8px;padding:10px 4px;border-bottom:1px solid var(--line);font-size:14px}.recurrence-detail-main{display:grid;gap:3px;min-width:0}.recurrence-detail-main strong{overflow-wrap:anywhere;font-size:15px}.recurrence-detail-main span,.recurrence-detail-date,.recurrence-detail-kind{color:var(--muted);font-size:14px}.recurrence-detail-status{font-size:14px}.recurrence-detail-status.paid{color:var(--success)}.recurrence-detail-status.pending{color:var(--warning)}.recurrence-detail-value{white-space:nowrap;font-size:15px}.recurrence-edit,.recurrence-classify button{padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--success);font-size:14px;cursor:pointer}.recurrence-classify{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:7px}.recurrence-category-group{padding:9px 0;border-bottom:1px solid var(--line)}.recurrence-category-group>header{display:flex;justify-content:space-between;margin-bottom:4px;font-size:15px}.recurrence-more{display:block;margin:12px auto 0;color:var(--success)}
@media(max-width:700px){.recurrence-chart-row{grid-template-columns:1fr;justify-items:stretch}.recurrence-donut{width:150px}.recurrence-payment-totals{grid-template-columns:1fr}.recurrence-controls{display:grid;grid-template-columns:1fr 1fr}.recurrence-group-toggle{grid-column:1/-1;margin:0}.recurrence-detail-row{grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;padding:12px 2px}.recurrence-detail-main{grid-column:1/-1}.recurrence-detail-date,.recurrence-detail-status,.recurrence-detail-kind{font-size:14px}.recurrence-detail-value{justify-self:end}.recurrence-edit{justify-self:end}.recurrence-classify{grid-column:1/-1}.recurrence-details h3{align-items:flex-start;flex-direction:column;gap:4px}}

.price-detail-fields>label{min-width:0}.establishment-input-row{display:flex;gap:6px;align-items:stretch}.establishment-input-row input{min-width:0;flex:1}.establishment-input-row button,.establishment-form-actions button,.quick-establishment-panel button{min-height:40px;padding:8px 11px;border:1px solid var(--navy-line);border-radius:9px;background:var(--navy-card);color:var(--navy-text);font-size:14px;cursor:pointer}.establishment-input-row button:first-of-type,.establishment-form-actions .submit,.quick-establishment-panel .submit{border-color:var(--success);color:var(--success)}.establishment-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 14px;padding:14px;border:1px solid var(--navy-line);border-radius:12px;background:var(--navy-side)}.establishment-form label,.quick-establishment-fields label{display:grid;gap:5px;color:var(--navy-muted);font-size:14px}.establishment-form input,.establishment-form select,.establishment-form textarea,.quick-establishment-fields input,.quick-establishment-fields select{width:100%;min-width:0;min-height:40px;padding:8px 10px;border:1px solid var(--navy-line);border-radius:8px;background:#0d142a;color:var(--navy-text);font:inherit}.establishment-form-actions{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}.establishment-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.establishment-row>div:first-child{display:grid;gap:4px}.establishment-row>div:first-child>span,.establishment-row>div:first-child>small{color:var(--navy-muted);font-size:14px}.establishment-comparison{margin-top:14px;padding:14px;border:1px solid var(--navy-line);border-radius:12px;background:var(--navy-side)}.establishment-comparison h4{margin:0;font-size:16px}.establishment-comparison p{margin:4px 0 10px;color:var(--navy-muted);font-size:14px}.establishment-comparison td small{display:block;color:var(--navy-muted);font-size:13px}.quick-establishment-panel{margin:10px 0;padding:14px;border:1px solid var(--navy-line);border-radius:11px;background:var(--navy-side)}.quick-establishment-panel form>strong{display:block;margin-bottom:9px}.quick-establishment-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.price-detail-row{grid-template-columns:minmax(150px,1.2fr) minmax(80px,.6fr) repeat(3,minmax(110px,.8fr)) auto}.price-detail-row [data-price-line-establishment]{min-width:0}
@media(max-width:760px){.establishment-form,.quick-establishment-fields{grid-template-columns:1fr}.establishment-form-actions{grid-column:auto}.establishment-row{align-items:flex-start;flex-direction:column}.establishment-row .price-product-actions{display:flex;flex-wrap:wrap}.establishment-input-row{flex-wrap:wrap}.establishment-input-row input{flex-basis:100%}.establishment-input-row button{flex:1}.price-detail-row{grid-template-columns:repeat(2,minmax(0,1fr))}.price-detail-row label:first-child,.price-detail-row label:nth-last-child(2){grid-column:1/-1}.price-detail-row [data-remove-price-line]{grid-column:1/-1}.establishment-comparison{padding:10px}}

.recurrence-group-toggle{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr) 38px;align-items:center;gap:10px;min-width:min(100%,300px);min-height:58px;margin-left:auto;padding:9px 12px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);cursor:pointer;transition:border-color .16s,background .16s,box-shadow .16s}.recurrence-group-toggle:hover,.recurrence-group-toggle.active{border-color:var(--success);background:var(--paper);box-shadow:0 0 0 1px color-mix(in srgb,var(--success) 16%,transparent)}.recurrence-group-toggle input{position:absolute;width:1px;height:1px;opacity:0}.recurrence-group-toggle:has(input:focus-visible){outline:2px solid var(--success);outline-offset:2px}.recurrence-group-icon{display:grid;width:32px;height:32px;place-items:center;border-radius:9px;background:color-mix(in srgb,var(--paper) 78%,var(--success));color:var(--muted);font-size:20px}.recurrence-group-toggle.active .recurrence-group-icon{background:color-mix(in srgb,var(--paper) 62%,var(--success));color:var(--success)}.recurrence-group-copy{display:grid;gap:2px}.recurrence-group-copy strong{font-size:14px}.recurrence-group-copy small{color:var(--muted);font-size:12px}.recurrence-switch{position:relative;width:36px;height:21px;border-radius:99px;background:var(--line);transition:background .16s}.recurrence-switch:after{position:absolute;top:3px;left:3px;width:15px;height:15px;border-radius:50%;background:var(--paper);box-shadow:0 1px 3px #0003;content:'';transition:transform .16s}.recurrence-group-toggle.active .recurrence-switch{background:var(--success)}.recurrence-group-toggle.active .recurrence-switch:after{transform:translateX(15px)}.recurrence-category-group{margin:10px 0 12px;overflow:hidden;border:1px solid var(--line);border-left:3px solid var(--success);border-radius:12px;background:color-mix(in srgb,var(--paper) 88%,var(--success))}.recurrence-category-group>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;padding:11px 14px;background:color-mix(in srgb,var(--paper) 76%,var(--success))}.recurrence-category-group>header>div{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.recurrence-category-group>header>div strong{font-size:16px}.recurrence-category-group>header>div span{padding:3px 7px;border:1px solid var(--line);border-radius:99px;color:var(--muted);font-size:12px}.recurrence-category-group .recurrence-category-total{font-size:15px;white-space:nowrap}.recurrence-category-items{padding:0 12px 0 18px;border-left:1px solid var(--line);margin-left:14px}.recurrence-category-items .recurrence-detail-row{padding:11px 5px}.recurrence-category-items .recurrence-detail-row:last-child{border-bottom:0}
@media(max-width:700px){.recurrence-group-toggle{min-width:0}.recurrence-controls{align-items:stretch}.recurrence-category-group{margin:9px 0}.recurrence-category-group>header{padding:10px}.recurrence-category-items{padding-right:7px;padding-left:10px;margin-left:10px}}

.edit-kicker{font-size:var(--type-caption)}.edit-context,.edit-note{font-size:var(--type-secondary);line-height:1.5}.edit-dialog label,.edit-actions button{font-size:var(--type-label)}.edit-error{font-size:var(--type-caption)}.price-filters input::placeholder,.price-catalog-filters input::placeholder,.price-product-form input::placeholder{color:var(--navy-muted);opacity:1}

.surplus-card-actions,.monthly-report-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:8px}.surplus-card-actions button,.monthly-report-actions button{min-height:30px;padding:0 9px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--green);font:700 11px 'DM Sans',sans-serif;cursor:pointer}.surplus-card-breakdown{display:block;margin-top:5px;color:var(--muted);font-size:10px}.surplus-history-panel{display:grid;gap:12px}.surplus-history-panel .panel-head label{display:grid;gap:4px;color:var(--muted);font-size:11px}.surplus-history-panel .panel-head select{height:34px;padding:0 8px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink)}.surplus-annual-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.surplus-annual-totals>div{display:grid;gap:4px;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--bg)}.surplus-annual-totals span{color:var(--muted);font-size:11px}.surplus-annual-totals strong{font-size:15px}.surplus-history-list{display:grid;gap:6px}.surplus-history-row{display:grid;grid-template-columns:minmax(0,1fr) repeat(4,auto);align-items:center;gap:12px;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--bg)}.surplus-history-row button{border:0;background:transparent;color:var(--green);font:700 12px 'DM Sans',sans-serif;cursor:pointer}.surplus-history-row small{display:block;color:var(--muted);font-size:10px}.surplus-dialog{max-width:760px}.surplus-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:12px 0}.surplus-summary>div{display:grid;gap:3px;padding:9px;border-radius:8px;background:var(--bg)}.surplus-summary span{color:var(--muted);font-size:10px}.surplus-summary strong{font-size:13px}.surplus-pending-warning,.surplus-modal-note{margin:8px 0;padding:9px;border-radius:8px;background:var(--soft);color:var(--muted);font-size:11px;line-height:1.45}.surplus-destination-head,.surplus-destination-row{display:grid;grid-template-columns:minmax(118px,.9fr) minmax(145px,1.2fr) minmax(86px,.6fr) 32px;align-items:center;gap:7px}.surplus-destination-head{padding:0 3px;color:var(--muted);font-size:10px;font-weight:700}.surplus-destination-list{display:grid;gap:7px;margin:6px 0}.surplus-destination-row select,.surplus-destination-row input{width:100%;min-width:0;height:40px;padding:0 8px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font:500 12px 'DM Sans',sans-serif}.surplus-destination-row .surplus-row-extra{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.surplus-destination-row .surplus-row-extra[hidden]{display:none}.surplus-total{margin:5px 0;color:var(--muted);font-size:12px;font-weight:700}.surplus-total.is-over{color:var(--red)}.surplus-error{margin:0;color:var(--red);font-size:12px}.surplus-destination-row button{height:36px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--red);font-size:17px;cursor:pointer}.surplus-destination-row.is-locked{opacity:.75}.surplus-dialog .edit-actions{flex-wrap:wrap}
@media(max-width:600px){.surplus-annual-totals{grid-template-columns:repeat(2,minmax(0,1fr))}.surplus-history-row{grid-template-columns:1fr 1fr;gap:6px}.surplus-history-row button{grid-column:1/-1;justify-self:start}.surplus-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.surplus-destination-head{display:none}.surplus-destination-row{grid-template-columns:minmax(0,1fr) minmax(78px,.65fr) 30px}.surplus-destination-row select[data-destination-specific]{grid-column:1/-1;grid-row:2}.surplus-destination-row select[data-destination-type]{grid-column:1;grid-row:1}.surplus-destination-row input[data-destination-value]{grid-column:2;grid-row:1}.surplus-destination-row button{grid-column:3;grid-row:1}.surplus-destination-row .surplus-row-extra{grid-column:1/-1;grid-template-columns:1fr}}

/* Recipient allocation rows share one aligned grid in create and edit forms. */
.recipient-split-editor>p{max-width:100%;overflow-wrap:anywhere}
.recipient-split-columns,.recipient-split-row{grid-template-columns:minmax(0,11fr) minmax(0,7fr) 38px;column-gap:10px}
.recipient-split-columns{align-items:end;padding:0 2px;font-size:11px}
.recipient-split-columns span:nth-child(2){text-align:left}
.recipient-split-row{align-items:center}
.recipient-split-row select,.recipient-split-row input{box-sizing:border-box;width:100%;min-width:0;height:42px;min-height:42px;padding:0 10px;font-size:13px}
.recipient-split-row input{text-align:right;font-variant-numeric:tabular-nums}
.recipient-split-row .split-remove-row{width:38px;height:38px;min-height:38px;justify-self:center;line-height:1}
.recipient-split-total{line-height:1.45;overflow-wrap:anywhere}
.recipient-split-editor>.split-add-row{margin-top:3px}
.recipient-split-row :focus-visible{position:relative;z-index:1;outline:2px solid var(--green);outline-offset:1px}
@media(max-width:600px){
 .recipient-split-columns{grid-template-columns:minmax(0,1fr) minmax(92px,120px) 38px;column-gap:8px}
 .recipient-split-row{grid-template-columns:minmax(0,1fr) minmax(92px,120px) 38px;column-gap:8px}
 .recipient-split-row select,.recipient-split-row input{font-size:12px;padding-inline:7px}
}
@media(max-width:380px){
 .recipient-split-columns{display:none}
 .recipient-split-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 36px;gap:7px}
 .recipient-split-row select{grid-column:1 / -1}
 .recipient-split-row input{grid-column:1 / 3}
 .recipient-split-row .split-remove-row{grid-column:3;grid-row:2;width:36px;height:36px}
}
@media(max-width:380px){
 .recipient-split-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 36px;gap:6px}
 .recipient-split-columns span:first-child{grid-column:1 / -1}
 .recipient-split-columns span:nth-child(2){grid-column:1 / 3;text-align:left}
 .recipient-split-row{grid-template-columns:minmax(0,1fr) 36px;gap:7px}
 .recipient-split-row select{grid-column:1 / -1}
 .recipient-split-row input{grid-column:1}
 .recipient-split-row .split-remove-row{grid-column:2;grid-row:2;width:36px;height:36px}
}

/* Compact, aligned month summary cards; scoped to the four overview indicators. */
.cards{align-items:stretch}.cards>.card{display:flex;flex-direction:column;min-width:0}.cards>.card .amount{font-size:clamp(17px,1.55vw,23px);white-space:nowrap}.balance-card-footer{display:grid;gap:7px;margin-top:5px;min-width:0}.balance-card-footer .footnote{min-width:0;line-height:1.25}.surplus-card-actions{display:flex;flex-wrap:nowrap;gap:5px;margin:0}.surplus-card-actions button{min-height:28px;padding:0 8px;font-size:10px;white-space:nowrap}.surplus-card-breakdown[hidden]{display:none!important}
@media(max-width:600px){.cards>.card{padding:12px 10px}.cards>.card .amount{font-size:clamp(16px,5.1vw,19px);letter-spacing:-.6px}.balance-card-footer{gap:6px}.surplus-card-actions{gap:4px}.surplus-card-actions button{flex:1;min-width:0;padding:0 4px;font-size:10px}}
.invoice-import-dialog{width:min(980px,96vw);max-height:92vh;overflow:auto}.invoice-file-options{display:flex;align-items:end;gap:12px;margin:18px 0}.invoice-file-options label{display:grid;gap:6px;font-size:.9rem}.invoice-file-options input{max-width:100%;font-size:.85rem}.invoice-import-status{min-height:1.3em;color:var(--muted);font-size:.9rem}.invoice-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.invoice-fields label,.invoice-items>label{display:grid;gap:5px;font-size:.82rem;color:var(--muted)}.invoice-fields input,.invoice-fields select,.invoice-item-row input,.invoice-items select{width:100%;min-width:0;border:1px solid var(--line);border-radius:9px;padding:9px;background:var(--paper);color:var(--ink)}.invoice-reconciliation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px;margin:12px 0;border-radius:12px;background:var(--surface);font-size:.88rem}.invoice-reconciliation strong{grid-column:1/-1}.invoice-reconciliation small,.invoice-warning{grid-column:1/-1;color:#b45309}.invoice-reconciliation.is-balanced{border:1px solid #2c8a57}.invoice-reconciliation.is-different{border:1px solid #c77a23}.invoice-items{margin:16px 0}.invoice-items h3{margin:0 0 8px}.invoice-item-head,.invoice-item-row{display:grid;grid-template-columns:minmax(220px,3fr) .7fr .8fr 1fr 1fr 1.3fr;gap:6px;align-items:center}.invoice-item-head{font-size:.75rem;color:var(--muted);padding:5px}.invoice-item-row{margin:4px 0}.invoice-item-row input,.invoice-item-row select{padding:7px;font-size:.8rem}.invoice-item-row select{width:100%;min-width:0;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink)}.invoice-items>label{margin-top:14px}.invoice-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.invoice-warning{padding:10px;background:#fff7ed;border-radius:8px}@media(max-width:760px){.invoice-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.invoice-reconciliation{grid-template-columns:repeat(2,minmax(0,1fr))}.invoice-item-head{display:none}.invoice-item-row{grid-template-columns:2fr 1fr 1fr}.invoice-item-row input:first-child{grid-column:span 3}.invoice-item-row input:nth-child(3){display:none}.invoice-file-options{align-items:stretch;flex-direction:column}}

.invoice-possible-duplicate-confirm{display:flex;align-items:flex-start;gap:9px;padding:12px;margin:12px 0;border:1px solid #c77a23;border-radius:9px;background:var(--paper);font-size:.88rem}.invoice-possible-duplicate-confirm input{margin-top:3px;flex:0 0 auto}
