:root{--bg:#f3f1ec;--surface:#fbfaf7;--surface-2:#eeece6;--ink:#171b1a;--muted:#747875;--line:#deddd7;--green:#b8df64;--green-dark:#315d3e;--orange:#ef8b59;--shadow:0 12px 40px rgba(28,34,31,.07)}
[hidden]{display:none!important}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:"DM Sans",sans-serif;transition:.2s;background-image:radial-gradient(circle at 80% 0,rgba(184,223,100,.14),transparent 25%)}
body.dark{--bg:#111514;--surface:#1a201e;--surface-2:#252c29;--ink:#f4f3ed;--muted:#9ca39f;--line:#323a37;--shadow:0 12px 40px rgba(0,0,0,.25);background-image:radial-gradient(circle at 80% 0,rgba(184,223,100,.09),transparent 25%)}
button,input,select{font:inherit}.app-shell{max-width:1280px;margin:auto;padding:0 32px}.topbar{height:84px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font:800 21px Manrope}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--ink);color:var(--bg);font-size:21px}.top-actions{display:flex;gap:10px}.icon-button,.primary-button,.month-control button{border:0;cursor:pointer}.icon-button{width:43px;border-radius:12px;background:var(--surface);color:var(--ink);border:1px solid var(--line)}.primary-button{background:var(--ink);color:var(--bg);padding:0 18px;border-radius:12px;font-weight:700}.primary-button span{color:var(--green);font-size:18px}.hero{padding:48px 0 30px;display:flex;align-items:end;justify-content:space-between}.eyebrow,.section-kicker{font-size:11px;letter-spacing:.14em;font-weight:700;color:var(--muted);margin:0 0 8px}.hero h1{font:800 clamp(32px,4vw,48px) Manrope;margin:0;letter-spacing:-.04em}.hero-copy{color:var(--muted);margin:8px 0 0}.month-control{display:flex;align-items:center;gap:16px;background:var(--surface);border:1px solid var(--line);padding:6px;border-radius:13px;font-weight:700}.month-control button{background:transparent;color:var(--ink);width:32px;height:30px;font-size:24px;border-radius:8px}.month-control button:hover{background:var(--surface-2)}
.summary-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr;gap:16px;margin-bottom:16px}.balance-card,.metric-card,.panel{background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.balance-card{padding:24px;background:var(--ink);color:var(--bg)}.dark .balance-card{background:#e8e9e2;color:#171b1a}.card-heading{display:flex;justify-content:space-between;color:#acb0ad;font-size:13px}.soft-icon{font-size:20px}.balance-card strong{font:800 34px Manrope;display:block;margin:14px 0}.balance-track{height:5px;background:#3b413e;border-radius:9px;overflow:hidden}.balance-track span{height:100%;display:block;width:0;background:var(--green);border-radius:9px;transition:.5s}.balance-card p{font-size:12px;color:#acb0ad;margin:10px 0 0}.metric-card{display:flex;align-items:center;gap:18px;padding:24px}.metric-icon{display:grid;place-items:center;width:45px;height:45px;border-radius:14px;font-size:22px}.income-card .metric-icon{background:#e3f2c1;color:#315d3e}.expense-card .metric-icon{background:#fee1d3;color:#9b4321}.metric-card span,.metric-card small{display:block;color:var(--muted);font-size:12px}.metric-card strong{display:block;font:800 25px Manrope;margin:4px 0}.content-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:16px;margin-bottom:16px}.panel{padding:24px}.panel-header{display:flex;align-items:center;justify-content:space-between}.panel h2{font:700 19px Manrope;margin:0}.legend{display:flex;gap:14px;font-size:11px;color:var(--muted)}.legend span{display:flex;align-items:center;gap:5px}.legend i{width:8px;height:8px;border-radius:2px}.income-dot{background:var(--green)}.expense-dot{background:var(--orange)}.chart{height:220px;margin-top:18px;display:flex;gap:12px;align-items:stretch;border-bottom:1px solid var(--line);position:relative;background:repeating-linear-gradient(to bottom,transparent 0,transparent 54px,var(--line) 55px)}.chart-col{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;position:relative}.bars{height:180px;width:100%;display:flex;align-items:end;justify-content:center;gap:5px}.bar{width:min(22px,32%);border-radius:6px 6px 2px 2px;min-height:2px;transition:.4s}.bar.income{background:var(--green)}.bar.expense{background:var(--orange)}.chart-label{height:28px;font-size:10px;color:var(--muted);padding-top:8px}.category-list{margin-top:18px;display:grid;gap:16px}.category-row{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center}.category-icon,.transaction-icon{display:grid;place-items:center;border-radius:11px;background:var(--surface-2)}.category-icon{width:34px;height:34px}.category-info{min-width:0}.category-meta{display:flex;justify-content:space-between;font-size:12px;margin-bottom:7px}.category-meta span:last-child{color:var(--muted)}.category-bar{height:5px;background:var(--surface-2);border-radius:5px;overflow:hidden}.category-bar span{display:block;height:100%;border-radius:5px}.category-amount{font-size:12px;font-weight:700}.empty-state{display:grid;place-items:center;text-align:center;min-height:170px;color:var(--muted)}.empty-state span{font-size:30px}.empty-state p{margin:6px 0;font-size:13px}
.transactions-panel{margin-bottom:24px}.transaction-heading{gap:20px}.filters{display:flex;gap:8px}.search{display:flex;align-items:center;background:var(--surface-2);border-radius:10px;padding:0 10px;color:var(--muted)}.search input{width:145px;border:0;outline:0;background:transparent;color:var(--ink);padding:9px 5px}.filters select{border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);padding:0 10px}.transaction-list{margin-top:16px}.transaction{display:grid;grid-template-columns:42px 1fr auto 32px;align-items:center;gap:12px;padding:13px 4px;border-top:1px solid var(--line)}.transaction-icon{width:42px;height:42px;font-size:18px}.transaction-name{font-weight:600;font-size:14px}.transaction-detail{font-size:11px;color:var(--muted);margin-top:3px}.transaction-amount{text-align:right;font-weight:700;font-size:14px}.transaction-amount.income{color:var(--green-dark)}.dark .transaction-amount.income{color:var(--green)}.delete-button{border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:18px;opacity:.5}.delete-button:hover{opacity:1;color:var(--orange)}footer{display:flex;justify-content:space-between;padding:16px 0 30px;font-size:11px;color:var(--muted)}
dialog{width:min(500px,calc(100% - 28px));border:1px solid var(--line);border-radius:22px;background:var(--surface);color:var(--ink);padding:0;box-shadow:0 30px 90px rgba(0,0,0,.3)}dialog::backdrop{background:rgba(10,14,12,.65);backdrop-filter:blur(5px)}dialog form{padding:26px}.modal-header{display:flex;justify-content:space-between;align-items:start}.modal-header h2{font:700 23px Manrope;margin:0}.close-button{border:0;background:var(--surface-2);color:var(--ink);width:34px;height:34px;border-radius:10px;font-size:22px;cursor:pointer}.type-switch{display:grid;grid-template-columns:1fr 1fr;background:var(--surface-2);padding:4px;border-radius:12px;margin:24px 0 18px}.type-switch button{border:0;padding:10px;border-radius:9px;background:transparent;color:var(--muted);cursor:pointer;font-weight:700}.type-switch button.active{background:var(--surface);color:var(--ink);box-shadow:0 2px 10px rgba(0,0,0,.08)}form label{display:grid;gap:7px;font-size:12px;font-weight:600;margin-top:14px}form input,form select{width:100%;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--ink);padding:12px;outline:0}form input:focus,form select:focus{border-color:var(--green-dark);box-shadow:0 0 0 3px rgba(184,223,100,.2)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.save-button{width:100%;border:0;border-radius:12px;background:var(--ink);color:var(--bg);padding:13px;margin-top:22px;font-weight:700;cursor:pointer}#toast{position:fixed;right:24px;bottom:24px;padding:12px 18px;background:var(--ink);color:var(--bg);border-radius:12px;font-size:13px;transform:translateY(100px);opacity:0;transition:.3s;z-index:10}#toast.show{transform:translateY(0);opacity:1}
@media(max-width:850px){.summary-grid{grid-template-columns:1fr 1fr}.balance-card{grid-column:1/-1}.content-grid{grid-template-columns:1fr}.hero{padding-top:32px}.chart-panel{order:2}.categories-panel{order:1}}
@media(max-width:580px){.app-shell{padding:0 16px}.topbar{height:70px}.hero{align-items:start;gap:24px;flex-direction:column}.summary-grid{grid-template-columns:1fr}.balance-card{grid-column:auto}.metric-card{padding:18px}.panel{padding:18px}.transaction-heading{align-items:start;flex-direction:column}.filters{width:100%}.search{flex:1}.search input{width:100%}.transaction{grid-template-columns:38px 1fr auto 24px}.transaction-icon{width:38px;height:38px}.form-row{grid-template-columns:1fr}.primary-button{font-size:0}.primary-button span{font-size:20px}footer{gap:10px;flex-direction:column}}

/* Savings */
.summary-grid{grid-template-columns:1.35fr repeat(3,1fr)}
.month-flow-panel{margin-bottom:16px}.month-flow-panel .panel-header strong{font:800 24px Manrope}.month-flow-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;margin-top:16px}.month-flow-row{background:var(--surface-2);border-radius:14px;padding:13px;display:flex;flex-direction:column;gap:7px;min-height:78px}.month-flow-row span{font-size:10px;color:var(--muted);font-weight:800;letter-spacing:.02em}.month-flow-row strong{font:800 18px Manrope}.month-flow-row.income strong{color:var(--green-dark)}.month-flow-row.fixed strong,.month-flow-row.variable strong,.month-flow-row.committed strong{color:var(--orange)}.month-flow-row.total{border:1px solid var(--line);background:var(--surface)}.month-flow-row.total strong{color:var(--ink)}.month-flow-row.savings strong{color:#4b7fae}.month-flow-row.result{background:var(--ink);color:var(--bg)}.month-flow-row.result span{color:#aeb2ae}.month-flow-row.result strong{color:inherit}.month-flow-hint{font-size:12px;color:var(--muted);margin:12px 0 0;line-height:1.45}
@media(max-width:980px){.month-flow-list{grid-template-columns:1fr 1fr}.month-flow-row.result{grid-column:1/-1}}
@media(max-width:580px){.month-flow-list{grid-template-columns:1fr}.month-flow-row.result{grid-column:auto}}
.savings-card .metric-icon,.vault-card .metric-icon{background:#dce9fa;color:#35648f}
.transaction-amount.savings{color:#4b7fae}
.type-switch{grid-template-columns:repeat(3,1fr)}
@media(max-width:1000px){.summary-grid{grid-template-columns:1fr 1fr}.balance-card{grid-column:1/-1}}
@media(max-width:580px){.summary-grid{grid-template-columns:1fr}.balance-card{grid-column:auto}.type-switch{grid-template-columns:1fr 1fr 1.25fr}.type-switch button{font-size:11px;padding:10px 5px}}

/* Receipt scanner */
.receipt-button{border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:0 16px;border-radius:12px;font-weight:700;cursor:pointer}.receipt-button span{color:#4b7fae;font-size:17px}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.receipt-modal{width:min(560px,calc(100% - 28px))}.receipt-scan-content{padding:26px}.receipt-preview-wrap{height:250px;margin-top:22px;border-radius:14px;background:var(--surface-2);overflow:hidden;display:grid;place-items:center}.receipt-preview-wrap img{width:100%;height:100%;object-fit:contain}.scan-status{margin-top:18px}.scan-status-row{display:flex;justify-content:space-between;font-size:13px;font-weight:700}.scan-progress{height:7px;background:var(--surface-2);border-radius:10px;overflow:hidden;margin-top:10px}.scan-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,#82b84b,var(--green));border-radius:10px;transition:width .25s}.scan-status p{font-size:11px;color:var(--muted);margin:10px 0 0}.receipt-modal.scanning .receipt-preview-wrap{position:relative}.receipt-modal.scanning .receipt-preview-wrap:after{content:"";position:absolute;left:8%;right:8%;height:2px;background:var(--green);box-shadow:0 0 12px var(--green);animation:scanline 2s ease-in-out infinite}@keyframes scanline{0%,100%{top:12%}50%{top:88%}}
@media(max-width:720px){.receipt-button{font-size:0;width:43px;padding:0}.receipt-button span{font-size:18px}}

/* Recurring monthly expenses */
.fixed-panel{margin-bottom:16px}.fixed-heading{gap:20px}.panel-copy{font-size:12px;color:var(--muted);margin:5px 0 0}.outline-button{border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:10px 14px;border-radius:11px;font-weight:700;cursor:pointer}.outline-button span{color:var(--orange)}.fixed-expense-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:12px;margin-top:18px}.fixed-expense-item{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;background:var(--surface-2);border-radius:13px;padding:12px;min-width:0;overflow:hidden}.fixed-expense-icon{width:38px;height:38px;display:grid;place-items:center;background:var(--surface);border-radius:11px}.fixed-expense-name{font-size:13px;font-weight:700}.fixed-expense-detail{font-size:10px;color:var(--muted);margin-top:3px}.fixed-expense-side{grid-column:2/-1;display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0;text-align:right;flex-wrap:wrap}.fixed-expense-amount{display:block;font-size:12px;font-weight:700}.remove-fixed{border:0;background:transparent;color:var(--muted);font-size:11px;padding:4px 0 0;cursor:pointer}.remove-fixed:hover{color:var(--orange)}.recurring-badge{display:grid;place-items:center;color:var(--muted);font-size:15px}.fixed-empty{grid-column:1/-1;min-height:85px;display:grid;place-items:center;color:var(--muted);font-size:12px;border:1px dashed var(--line);border-radius:13px}
@media(max-width:1100px){.fixed-expense-list{grid-template-columns:repeat(auto-fit,minmax(290px,1fr))}}
@media(max-width:580px){.fixed-heading{align-items:start;flex-direction:column}.outline-button{width:100%}.fixed-expense-list{grid-template-columns:1fr}}
.fixed-income-panel{border-color:color-mix(in srgb,var(--green) 45%,var(--line))}.income-outline span{color:var(--green-dark)}.dark .income-outline span{color:var(--green)}

/* Purchase advisor */
.advisor-panel{display:grid;grid-template-columns:52px 1fr auto;gap:16px;align-items:center;margin-bottom:16px;background:linear-gradient(120deg,var(--surface),color-mix(in srgb,var(--green) 11%,var(--surface)))}.advisor-symbol{width:52px;height:52px;display:grid;place-items:center;border-radius:16px;background:var(--ink);color:var(--green);font-size:23px}.advisor-copy h2{margin:0}.advisor-copy p:last-child{font-size:13px;color:var(--muted);margin:5px 0 0;max-width:720px}.advisor-button{border:0;background:var(--ink);color:var(--bg);border-radius:12px;padding:12px 16px;font-weight:700;cursor:pointer;white-space:nowrap}.advisor-button span{color:var(--green);margin-left:5px}.modal-copy{font-size:13px;color:var(--muted);line-height:1.5;margin:10px 0 18px}.advisor-result{margin-top:18px;padding:18px;border-radius:14px;background:var(--surface-2);border-left:4px solid var(--muted)}.advisor-result.positive{border-color:#82b84b}.advisor-result.caution{border-color:#d2b94d}.advisor-result.negative{border-color:var(--orange)}.advisor-verdict{display:inline-block;font-size:10px;font-weight:800;letter-spacing:.1em;padding:5px 8px;border-radius:6px;background:var(--surface)}.advisor-result h3{font:700 18px Manrope;margin:10px 0 5px}.advisor-result p{font-size:12px;line-height:1.5;color:var(--muted);margin:0}.advisor-numbers{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.advisor-number{background:var(--surface);border-radius:9px;padding:9px}.advisor-number span{display:block;font-size:9px;color:var(--muted)}.advisor-number strong{display:block;font-size:13px;margin-top:3px}.result-action{width:100%;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:10px;padding:10px;margin-top:12px;font-weight:700;cursor:pointer}
.top-advisor-button{height:43px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:0 13px;border-radius:12px;font-size:11px;font-weight:800;cursor:pointer;box-shadow:0 3px 12px rgba(0,0,0,.04);transition:transform .18s ease,box-shadow .18s ease}.top-advisor-button span{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;background:var(--ink);color:var(--green);font-size:12px}.top-advisor-button:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(0,0,0,.08)}.top-advisor-button:active{transform:scale(.97)}
.advisor-month-plan{background:var(--surface-2);border-radius:18px;padding:16px;margin:12px 0 14px}.advisor-plan-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.advisor-plan-head h3{font:800 18px Manrope;margin:0}.advisor-plan-head span{background:var(--ink);color:var(--bg);border-radius:999px;padding:6px 9px;font-size:10px;font-weight:800;white-space:nowrap}.advisor-month-plan>p{font-size:12px;color:var(--muted);margin:8px 0 12px;line-height:1.45}.advisor-plan-list{display:grid;gap:8px}.advisor-plan-item{background:var(--surface);border-left:4px solid var(--line);border-radius:12px;padding:11px}.advisor-plan-item strong{display:block;font-size:12px;margin-bottom:4px}.advisor-plan-item span{display:block;font-size:11px;color:var(--muted);line-height:1.45}.advisor-plan-item.danger{border-color:var(--orange)}.advisor-plan-item.save,.advisor-plan-item.good,.advisor-plan-item.move{border-color:var(--green)}.advisor-plan-item.cut,.advisor-plan-item.limit{border-color:#d2b94d}.advisor-divider{height:1px;background:var(--line);margin:16px 0}.compact-modal-header{margin-top:0}
.advisor-chat{background:var(--surface-2);border-radius:18px;padding:16px;margin:14px 0}.advisor-chat-log{display:grid;gap:8px;max-height:300px;overflow:auto;padding:4px 2px 10px}.advisor-message{max-width:88%;border-radius:14px;padding:11px 13px;font-size:12px;line-height:1.55;white-space:pre-line}.advisor-bot{justify-self:start;background:var(--surface);color:var(--ink);border:1px solid var(--line)}.advisor-user{justify-self:end;background:var(--ink);color:var(--bg)}.advisor-quick-prompts{display:flex;gap:7px;flex-wrap:wrap;margin:3px 0 10px}.advisor-quick-prompts button{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:7px 10px;font-size:10px;font-weight:800;cursor:pointer}.advisor-quick-prompts button:hover{border-color:var(--ink)}.advisor-chat-input{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:8px}.advisor-chat-input input{height:42px}.advisor-chat-input button{border:0;background:var(--ink);color:var(--bg);border-radius:10px;padding:0 14px;font-weight:800;cursor:pointer}
@media(max-width:700px){.advisor-panel{grid-template-columns:46px 1fr}.advisor-symbol{width:46px;height:46px}.advisor-button{grid-column:1/-1;width:100%}}
@media(max-width:520px){.advisor-chat-input{grid-template-columns:1fr}.advisor-chat-input button{height:42px}.advisor-message{max-width:100%}}
.advisor-disclaimer{font-size:10px;color:var(--muted);text-align:center;margin:12px 0 0}
.smart-overview-grid,.smart-management-grid,.savings-intelligence-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.smart-spend-card,.comparison-card{padding:22px}.smart-spend-card h2,.comparison-card h2,.savings-rule-panel h2,.emergency-fund-panel h2{margin:3px 0 14px}.smart-spend-values{display:grid;grid-template-columns:1fr 1fr;gap:10px}.smart-spend-values>div{background:var(--surface-2);border-radius:14px;padding:14px}.smart-spend-values span{display:block;font-size:11px;color:var(--muted)}.smart-spend-values strong{display:block;font:800 24px Manrope;margin-top:4px}.smart-spend-card>p:last-child,.comparison-card p:last-child,.savings-rule-panel>p,.emergency-fund-panel>p{font-size:11px;color:var(--muted);line-height:1.5;margin:12px 0 0}.comparison-card>strong{display:block;font:800 30px Manrope;margin-top:10px}.comparison-card>strong.positive{color:#4f7b4a}.comparison-card>strong.negative{color:var(--orange)}
.payment-calendar-panel,.smart-alerts-panel{min-width:0}.status-pill{font-size:10px;background:var(--surface-2);border-radius:999px;padding:7px 10px;white-space:nowrap}.payment-calendar{display:grid;gap:7px;max-height:360px;overflow:auto}.calendar-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto auto;gap:10px;align-items:center;background:var(--surface-2);border-radius:12px;padding:9px}.calendar-row.paid{opacity:.62}.calendar-date{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--surface);font-weight:800}.calendar-row div{min-width:0}.calendar-row strong,.calendar-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-row strong{font-size:11px}.calendar-row small{font-size:9px;color:var(--muted);margin-top:2px}.calendar-row b{font-size:11px;white-space:nowrap}.calendar-pay{border:0;background:var(--ink);color:var(--bg);border-radius:9px;padding:8px 9px;font-size:9px;font-weight:800;cursor:pointer}.smart-alerts-list{display:grid;gap:8px}.smart-alert{border-left:4px solid var(--line);background:var(--surface-2);border-radius:11px;padding:11px}.smart-alert strong,.smart-alert span{display:block}.smart-alert strong{font-size:11px}.smart-alert span{font-size:10px;color:var(--muted);margin-top:3px}.smart-alert.warn{border-color:#d2b94d}.smart-alert.danger{border-color:var(--orange)}.smart-alert.good{border-color:#82b84b}.smart-alert.info{border-color:#6ba1c9}
.savings-intelligence-grid{margin-top:16px}.savings-rule-panel,.emergency-fund-panel{padding:22px}.inline-rule-control{display:flex;gap:10px;align-items:center;margin-top:16px}.inline-rule-control label{display:flex;align-items:center;gap:5px;font-weight:800}.inline-rule-control input{width:78px;height:42px;margin:0}.inline-rule-control button{height:42px}.active-rule{background:var(--orange)!important}.emergency-fund-panel>strong{display:block;font:800 28px Manrope}.emergency-fund-panel .tool-progress{margin:14px 0}.month-close-panel{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:16px 0}.month-close-panel h2{margin:2px 0 6px}.month-close-panel p:last-child{font-size:11px;color:var(--muted);margin:0}.month-close-panel button{white-space:nowrap}
@media(max-width:760px){.smart-overview-grid,.smart-management-grid,.savings-intelligence-grid{grid-template-columns:1fr}.calendar-row{grid-template-columns:36px minmax(0,1fr) auto}.calendar-pay{grid-column:2/-1}.month-close-panel{align-items:stretch;flex-direction:column}.month-close-panel button{width:100%}}
.variable-ledger-sections{display:grid;gap:18px;margin-top:8px}.variable-ledger-block{border:1px solid var(--line);border-radius:18px;padding:14px;background:var(--surface-2)}.variable-ledger-block.actual-block{background:var(--surface)}.variable-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;padding:2px 4px 12px}.variable-section-heading h3{font:800 17px Manrope;margin:2px 0 0}.variable-section-heading>span{font-size:10px;color:var(--muted);text-align:right}.variable-ledger-block .transaction{background:var(--surface)}.variable-ledger-block.actual-block .transaction{background:var(--surface-2)}.compact-empty{min-height:120px}
@media(max-width:620px){.variable-section-heading{align-items:flex-start;flex-direction:column}.variable-section-heading>span{text-align:left}.variable-ledger-block{padding:10px}}
.month-flow-row.subscriptions strong{color:var(--orange)}
.single-management-grid{grid-template-columns:1fr}

/* DMAN Finance brand */
.brand{gap:12px}.brand-mark{position:relative;overflow:hidden;background:linear-gradient(145deg,var(--ink) 0 58%,var(--green) 59% 100%);color:var(--surface);font-family:Manrope}.brand-mark i,.brand-mark b{font-style:normal;position:absolute;line-height:1}.brand-mark i{font-size:20px;left:7px;top:6px}.brand-mark b{font-size:11px;right:5px;bottom:5px;color:#171b1a}.brand-words{display:flex;flex-direction:column;line-height:1}.brand-words strong{font:800 19px Manrope;letter-spacing:.08em}.brand-words small{font:700 7px Manrope;letter-spacing:.2em;color:var(--muted);margin-top:4px}
.brand-image-frame{display:block;width:190px;height:56px;overflow:hidden;background:transparent}.brand-image-frame img{width:100%;height:100%;object-fit:cover;object-position:center 51%;transform:scale(1.02)}.lock-brand-image{width:230px;height:90px;overflow:hidden;margin:0 auto 20px;background:transparent}.lock-brand-image img{width:100%;height:100%;object-fit:cover;object-position:center 51%}.dark .brand-image-frame img,.dark .lock-brand-image img{filter:invert(1)}
@media(max-width:580px){.brand-image-frame{width:126px;height:44px}}

/* Backup and export */
.data-tools-modal{width:min(520px,calc(100% - 28px))}.data-tools-content{padding:26px}.data-action-list{display:grid;gap:9px}.data-action{width:100%;display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:11px;border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:11px;border-radius:12px;text-align:left;cursor:pointer}.data-action:hover{background:var(--surface-2)}.data-action-icon{width:40px;height:40px;display:grid;place-items:center;background:var(--surface-2);border-radius:10px;font-size:19px;color:var(--green-dark)}.dark .data-action-icon{color:var(--green)}.data-action strong,.data-action small{display:block}.data-action strong{font-size:13px}.data-action small{font-size:10px;color:var(--muted);margin-top:3px}.data-action b{font-size:20px;color:var(--muted)}.import-action{font-weight:400}.restore-preview{background:var(--surface-2);padding:14px;border-radius:12px;margin-top:12px}.restore-preview p{font-size:12px;line-height:1.5;margin:0}.restore-preview .save-button{margin-top:12px}.data-note{font-size:10px;line-height:1.4;color:var(--muted);margin:14px 0 0}

/* Budgets, goals, subscriptions, reminders */
.money-tools-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:16px}.tool-panel{min-width:0}.mini-add{width:34px;height:34px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:10px;font-size:18px;cursor:pointer}.tool-list{display:grid;gap:10px;margin-top:16px}.tool-empty{min-height:90px;display:grid;place-items:center;text-align:center;color:var(--muted);font-size:11px;border:1px dashed var(--line);border-radius:12px;padding:12px}.budget-item,.goal-item,.subscription-item{background:var(--surface-2);border-radius:12px;padding:11px}.tool-row{display:flex;justify-content:space-between;gap:8px;align-items:center}.tool-row strong{font-size:12px}.tool-row span{font-size:10px;color:var(--muted)}.tool-progress{height:6px;background:var(--surface);border-radius:6px;overflow:hidden;margin:8px 0 5px}.tool-progress span{display:block;height:100%;background:var(--green);border-radius:6px}.tool-progress span.warn{background:#d2b94d}.tool-progress span.over{background:var(--orange)}.tool-actions{display:flex;justify-content:space-between;align-items:center;margin-top:7px}.tool-actions button{border:0;background:transparent;color:var(--muted);font-size:10px;cursor:pointer;padding:0}.tool-actions button:hover{color:var(--orange)}.tool-actions .goal-add{background:var(--surface);color:var(--ink);padding:5px 8px;border-radius:7px;font-weight:700}.subscription-total{font-size:11px;color:var(--muted);margin-bottom:2px}.reminder-banner{display:grid;grid-template-columns:40px 1fr 28px;gap:12px;align-items:center;background:#fff2cd;color:#5e4a0f;border:1px solid #e7d38f;border-radius:15px;padding:13px 16px;margin-bottom:16px}.dark .reminder-banner{background:#3b321b;color:#f1daa0;border-color:#5c4d27}.reminder-icon{width:40px;height:40px;display:grid;place-items:center;background:rgba(255,255,255,.55);border-radius:11px;font-size:20px}.reminder-banner strong{font-size:13px}.reminder-banner p{font-size:11px;margin:3px 0 0}.reminder-banner button{border:0;background:transparent;color:inherit;font-size:18px;cursor:pointer}.form-error{min-height:16px;color:var(--orange);font-size:11px;margin:8px 0 0}.danger-button{width:100%;border:1px solid var(--orange);background:transparent;color:var(--orange);padding:11px;border-radius:11px;margin-top:10px;font-weight:700;cursor:pointer}

/* Access gate */
body.auth-pending{overflow:hidden}.auth-pending>.app-shell,.auth-pending>dialog,.auth-pending>#toast,.auth-pending>.daily-brief-sheet,.auth-pending>.daily-brief-widget,.auth-pending>.lock-screen{display:none!important}.access-screen{position:fixed;inset:0;z-index:5000;display:grid;place-items:center;overflow:hidden;padding:24px;background:#f2f3ef;color:#101312}.auth-ready>.access-screen{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility .22s ease}.access-ambient{position:absolute;border-radius:50%;filter:blur(1px);pointer-events:none}.access-ambient-one{width:560px;height:560px;left:-240px;top:-260px;background:radial-gradient(circle,rgba(174,222,79,.2),transparent 68%)}.access-ambient-two{width:520px;height:520px;right:-250px;bottom:-280px;background:radial-gradient(circle,rgba(198,186,133,.2),transparent 68%)}.access-card{position:relative;width:min(430px,100%);padding:42px;border:1px solid rgba(20,24,21,.1);border-radius:30px;background:rgba(255,255,255,.9);box-shadow:0 28px 90px rgba(25,30,26,.12);backdrop-filter:blur(22px);transition:opacity .2s ease,transform .2s ease}.access-card.success{opacity:0;transform:translateY(-8px) scale(.985)}.access-logo{width:220px;height:66px;margin:0 0 26px;overflow:hidden}.access-logo img{width:100%;height:100%;object-fit:cover;object-position:center 52%}.access-card .section-kicker{margin-bottom:9px;color:#747a76}.access-card h1{margin:0;font:800 32px/1.12 Manrope,sans-serif;letter-spacing:-.035em}.access-card>p:not(.section-kicker):not(.access-error){margin:10px 0 28px;color:#747a76;font-size:13px;line-height:1.55}.access-card>label{display:block;margin:0 0 8px;font-size:11px;font-weight:800}.access-card>label:not(:first-of-type){margin-top:14px}.access-password-wrap{display:grid;grid-template-columns:1fr 44px;border:1px solid #d9ddd8;border-radius:14px;background:#f7f8f5;overflow:hidden;transition:border-color .2s,box-shadow .2s}.access-password-wrap:focus-within{border-color:#93bd40;box-shadow:0 0 0 4px rgba(159,207,64,.14)}.access-password-wrap input{min-width:0;border:0;background:transparent;padding:14px 15px;color:#101312;font:600 14px DM Sans,sans-serif;outline:0}.access-password-wrap button{border:0;background:transparent;color:#858b87;cursor:pointer;font-size:16px}.access-password-wrap button.visible{color:#6f9429}.access-error{min-height:19px;margin:10px 0 0!important;color:#b75431;font-size:11px!important}.access-submit{width:100%;border:0;border-radius:14px;margin-top:5px;padding:14px;background:#0c0e0d;color:#fff;font:800 13px Manrope,sans-serif;cursor:pointer;transition:transform .15s,opacity .15s}.access-submit:hover{transform:translateY(-1px)}.access-submit:active{transform:scale(.985)}.access-submit:disabled{opacity:.55}.access-privacy{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;margin-top:22px;padding-top:20px;border-top:1px solid #e7e9e5}.access-privacy>span{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#e8f2d7;color:#678b2d}.access-privacy p{margin:0}.access-privacy strong,.access-privacy small{display:block}.access-privacy strong{font-size:10px}.access-privacy small{margin-top:3px;color:#858b87;font-size:9px;line-height:1.4}.logout-action .data-action-icon{color:#b75431;background:#f8e8e1}@media(max-width:560px){.access-screen{padding:16px;place-items:end center}.access-card{padding:30px 24px 26px;border-radius:28px}.access-logo{width:185px;height:54px;margin-bottom:22px}.access-card h1{font-size:27px}.access-ambient-one{left:-330px}.access-ambient-two{right:-320px}}

.cloud-warning{padding:11px 13px;border-radius:12px;background:#fff1ce;color:#705510;font-size:11px;line-height:1.45;margin:14px 0}.dark .cloud-warning{background:#3c321b;color:#f1d98e}.cloud-auth-form{margin-top:16px}.cloud-auth-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.cloud-auth-actions .save-button,.cloud-auth-actions .outline-button{margin-top:16px}.cloud-account{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border-radius:14px;background:var(--surface-2);margin-top:16px}.cloud-account span,.cloud-account strong{display:block}.cloud-account span{font-size:9px;color:var(--muted)}.cloud-account strong{font-size:12px;margin-top:3px}.cloud-account button{border:0;background:transparent;color:var(--orange);font-size:10px;font-weight:800;cursor:pointer}.cloud-migration-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:14px}.cloud-migration-actions .save-button{margin:0}.cloud-migration-actions button:disabled{opacity:.42;cursor:not-allowed}.cloud-migration-progress{margin-top:15px;padding:13px;border:1px solid var(--line);border-radius:13px}.cloud-migration-progress>span{display:block;font-size:10px;font-weight:700;margin-bottom:8px}.cloud-migration-progress>div{height:6px;border-radius:99px;background:var(--surface-2);overflow:hidden}.cloud-migration-progress i{display:block;width:0;height:100%;background:var(--green);border-radius:inherit;transition:width .3s}.cloud-validation-report{margin-top:14px;padding:15px;border-radius:14px;background:var(--surface-2)}.cloud-validation-report h3{font:800 15px Manrope;margin:0 0 10px}.cloud-validation-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.cloud-validation-grid div{padding:9px;border-radius:9px;background:var(--surface)}.cloud-validation-grid span,.cloud-validation-grid strong{display:block}.cloud-validation-grid span{font-size:9px;color:var(--muted)}.cloud-validation-grid strong{font-size:11px;margin-top:3px}.cloud-validation-report>p{font-size:10px;line-height:1.5;color:var(--muted);margin:10px 0 0}.cloud-validation-report.success{border:1px solid color-mix(in srgb,var(--green) 60%,var(--line))}.cloud-validation-report.error{border:1px solid var(--orange)}@media(max-width:560px){.cloud-auth-actions,.cloud-migration-actions{grid-template-columns:1fr}.cloud-auth-actions .outline-button{margin-top:0}}
.cloud-reset-link{display:block;margin:11px auto 0;border:0;background:transparent;color:var(--muted);font-size:10px;font-weight:700;cursor:pointer}.cloud-reset-link:hover{color:var(--ink)}

/* Legacy lock */
.lock-screen{position:fixed;inset:0;z-index:1000;background:var(--bg);display:grid;place-items:center;padding:20px;background-image:radial-gradient(circle at 50% 15%,rgba(184,223,100,.18),transparent 34%)}.lock-screen[hidden]{display:none}.lock-card{width:min(360px,100%);text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:34px;box-shadow:var(--shadow)}.lock-logo{width:58px;height:58px;display:grid;place-items:center;margin:0 auto 18px;border-radius:18px;background:var(--ink);color:var(--green);font:800 21px Manrope}.lock-card h1{font:800 28px Manrope;margin:0}.lock-card>p:not(.section-kicker){font-size:12px;color:var(--muted);margin:8px 0 20px}.lock-card input{width:100%;text-align:center;letter-spacing:.5em;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);color:var(--ink);padding:13px;font-size:18px;outline:0}.lock-card button{width:100%;border:0;background:var(--ink);color:var(--bg);padding:12px;border-radius:12px;margin-top:10px;font-weight:700;cursor:pointer}.lock-card small{display:block;min-height:16px;color:var(--orange);margin-top:8px}

@media(max-width:980px){.money-tools-grid{grid-template-columns:1fr 1fr}.money-tools-grid .tool-panel:last-child{grid-column:1/-1}}
@media(max-width:620px){.money-tools-grid{grid-template-columns:1fr}.money-tools-grid .tool-panel:last-child{grid-column:auto}}

@media print{body{background:#fff!important;color:#111!important;background-image:none!important}.top-actions,.month-control button,.fixed-panel,.advisor-panel,.reminder-banner,.money-tools-grid,.filters,.delete-button,.recurring-badge,footer{display:none!important}.app-shell{max-width:none;padding:0}.topbar{height:60px}.hero{padding:24px 0 18px}.summary-grid{grid-template-columns:repeat(4,1fr)!important}.balance-card{grid-column:auto!important;background:#171b1a!important;color:#fff!important}.content-grid{grid-template-columns:1.5fr 1fr}.panel,.metric-card{box-shadow:none!important;border-color:#ccc!important;background:#fff!important}.transactions-panel{break-before:page}.transaction{break-inside:avoid}dialog,.lock-screen,#toast{display:none!important}}

/* Investments */
.app-tabs{display:flex;gap:4px;padding:10px 0;border-bottom:1px solid var(--line)}.app-tabs button{border:0;background:transparent;color:var(--muted);padding:8px 13px;border-radius:9px;font-size:12px;font-weight:700;cursor:pointer}.app-tabs button.active{background:var(--surface);color:var(--ink);box-shadow:0 2px 8px rgba(0,0,0,.05)}.app-view{display:none}.app-view.active{display:block}.investments-hero{padding-bottom:34px}.investment-add{height:44px}.investment-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:16px}.investment-metric{display:flex;flex-direction:column;gap:8px}.investment-metric>span{font-size:11px;color:var(--muted)}.investment-metric strong{font:800 27px Manrope}.investment-metric small{font-size:11px;font-weight:700}.investment-metric.performance.positive strong,.investment-metric.performance.positive small,.holding-gain.positive{color:#4f8a48}.investment-metric.performance.negative strong,.investment-metric.performance.negative small,.holding-gain.negative{color:var(--orange)}.holdings-panel{margin-bottom:16px}.price-note{font-size:10px;color:var(--muted)}.holdings-list{margin-top:16px}.holding{display:grid;grid-template-columns:46px minmax(130px,1.4fr) repeat(4,minmax(80px,1fr)) 70px;gap:12px;align-items:center;border-top:1px solid var(--line);padding:14px 4px}.holding:first-child{border-top:0}.ticker-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:var(--ink);color:var(--green);font:800 11px Manrope;letter-spacing:.03em}.holding-name strong,.holding-stat strong{display:block;font-size:12px}.holding-name span,.holding-stat span{display:block;font-size:9px;color:var(--muted);margin-top:3px}.holding-actions{display:flex;gap:4px;justify-content:flex-end}.holding-actions button{border:0;background:var(--surface-2);color:var(--muted);width:30px;height:30px;border-radius:8px;cursor:pointer}.holding-actions button:hover{color:var(--ink)}.holdings-empty{min-height:220px;display:grid;place-items:center;text-align:center;color:var(--muted)}.holdings-empty span{display:block;font-size:35px;margin-bottom:7px}.holdings-empty p{font-size:12px;margin:0}.investment-note{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:10px;padding:2px 4px 28px}.investment-note span{width:20px;height:20px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font-weight:700}.investment-note p{margin:0}
.ledger-hero{padding-bottom:30px}.ledger-add{height:44px}.ledger-panel{margin-bottom:24px}.ledger-total{font:800 20px Manrope}.ledger-view .fixed-panel{margin-bottom:16px}.ledger-view .transaction-list{min-height:120px}
@media(max-width:900px){.holding{grid-template-columns:42px 1.3fr repeat(2,1fr) 64px}.holding .desktop-stat{display:none}}
@media(max-width:620px){.investment-summary{grid-template-columns:1fr}.investments-hero{align-items:stretch}.investment-add{width:100%}.holding{grid-template-columns:38px 1fr auto}.holding .holding-stat{display:none}.ticker-mark{width:38px;height:38px}.holding-gain{display:block!important;text-align:right}.price-note{display:none}}
@media(max-width:620px){.app-tabs{overflow-x:auto;scrollbar-width:none}.app-tabs::-webkit-scrollbar{display:none}.app-tabs button{white-space:nowrap}.ledger-hero{align-items:stretch}.ledger-add{width:100%}}
.money-tools-grid{grid-template-columns:repeat(2,1fr)}.money-tools-grid .tool-panel:last-child{grid-column:auto!important}#expenseSubscriptionSlot .tool-panel{margin-bottom:16px}#expenseSubscriptionSlot .tool-list{grid-template-columns:repeat(2,1fr)}
@media(max-width:620px){.money-tools-grid{grid-template-columns:1fr}#expenseSubscriptionSlot .tool-list{grid-template-columns:1fr}}
.savings-hero{padding-bottom:34px}.savings-summary{margin-bottom:16px}.savings-content-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;margin-bottom:24px}.savings-goals-panel .tool-list,.fixed-savings-panel .tool-list{margin-top:12px}.savings-view .goal-item,.savings-view .fixed-expense-item{background:var(--surface-2);border-radius:16px;padding:16px}
@media(max-width:820px){.savings-content-grid{grid-template-columns:1fr}}
@media(max-width:620px){.savings-hero{align-items:stretch}.savings-hero .investment-add{width:100%}}
.forecast-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.forecast-card{display:flex;flex-direction:column;gap:7px;padding:18px}.forecast-card span{font-size:10px;color:var(--muted)}.forecast-card strong{font:800 20px Manrope}.forecast-balance{background:var(--ink);color:var(--bg)}.forecast-balance span{color:#aeb2ae}.variable-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.variable-actions .outline-button,.variable-actions .primary-button{white-space:nowrap}.compact-action{height:38px;padding:0 14px!important;font-size:11px!important}.planned-badge{display:inline-block;font-size:8px;font-weight:800;letter-spacing:.08em;background:color-mix(in srgb,var(--green) 28%,var(--surface-2));color:var(--green-dark);padding:3px 5px;border-radius:5px;margin-left:5px}
.remaining-card .metric-icon{background:#e8e5d6;color:#75642f}
.goal-interest{margin-top:10px;padding:10px 12px;background:var(--surface);border-radius:10px}.goal-interest strong{font-size:11px;color:var(--green-dark)}
.advisor-intelligence-center{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin-bottom:16px}.advisor-daily-card{grid-row:span 2}.advisor-section-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.advisor-section-head>span{font-size:10px;color:var(--muted);font-weight:800}.advisor-daily-card>p,.health-score-card p,.advisor-forecast-card>p{color:var(--muted);font-size:12px;line-height:1.55}.advisor-change-list,.advisor-action-list,.advisor-analysis-list,.health-factor-list{display:grid;gap:8px;margin-top:14px}.advisor-change,.advisor-action,.advisor-analysis-row,.health-factor{background:var(--surface-2);border-radius:12px;padding:11px 12px}.advisor-change strong,.advisor-action strong,.advisor-analysis-row strong{display:block;font-size:12px}.advisor-change span,.advisor-action span,.advisor-analysis-row span,.health-factor span{display:block;font-size:10px;color:var(--muted);line-height:1.45;margin-top:3px}.advisor-action{display:grid;grid-template-columns:26px 1fr;gap:9px;align-items:start}.advisor-action>i{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:var(--ink);color:var(--green);font-style:normal;font-size:10px;font-weight:800}.advisor-actions-kicker{margin-top:18px}.health-score-card{display:grid;grid-template-columns:112px 1fr;gap:16px;align-items:center}.health-score-ring{width:106px;height:106px;border-radius:50%;display:grid;place-content:center;text-align:center;background:conic-gradient(var(--green) 0%,var(--surface-2) 0);border:8px solid var(--surface-2)}.health-score-ring strong{font:800 29px Manrope}.health-score-ring span{font-size:9px;color:var(--muted)}.health-factor-list{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.health-factor{padding:9px}.health-factor b{font-size:10px}.health-factor span{margin-top:2px}.forecast-horizon-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.forecast-horizon-grid>div{background:var(--surface-2);padding:12px;border-radius:12px}.forecast-horizon-grid span{display:block;font-size:9px;color:var(--muted)}.forecast-horizon-grid strong{display:block;font-size:15px;margin-top:4px}.advisor-forecast-card,.advisor-analysis-card{min-width:0}.advisor-analysis-row{display:flex;justify-content:space-between;gap:12px;align-items:center}.advisor-analysis-row>div{min-width:0}.advisor-analysis-row>strong{text-align:right;white-space:nowrap}.advisor-analysis-row.alert{border-left:4px solid var(--orange)}.advisor-analysis-row.good{border-left:4px solid var(--green)}.advisor-analysis-row.warn{border-left:4px solid #d2b94d}.proactive-card{grid-column:1/-1}.proactive-card .advisor-analysis-list{grid-template-columns:repeat(2,1fr)}
@media(max-width:900px){.advisor-intelligence-center{grid-template-columns:1fr}.advisor-daily-card{grid-row:auto}.proactive-card{grid-column:auto}}
@media(max-width:620px){.health-score-card{grid-template-columns:86px 1fr}.health-score-ring{width:78px;height:78px;border-width:6px}.health-score-ring strong{font-size:23px}.health-factor-list{grid-template-columns:1fr 1fr}.forecast-horizon-grid{grid-template-columns:1fr}.proactive-card .advisor-analysis-list{grid-template-columns:1fr}.advisor-analysis-row{align-items:flex-start;flex-direction:column}.advisor-analysis-row>strong{text-align:left}}
.copilot-hero{padding-bottom:30px}.copilot-hero h1{max-width:760px}.copilot-brief-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:16px}.copilot-brief-grid>div{background:var(--surface-2);border-radius:12px;padding:11px}.copilot-brief-grid span{display:block;font-size:9px;color:var(--muted)}.copilot-brief-grid strong{display:block;font-size:14px;margin-top:4px}.copilot-view .advisor-panel{position:sticky;bottom:12px;z-index:4;box-shadow:0 14px 40px rgba(0,0,0,.14)}
@media(max-width:900px){.copilot-brief-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.copilot-brief-grid{grid-template-columns:1fr}.copilot-hero .advisor-button{width:auto;align-self:flex-start}}
.purchase-recommendation{grid-column:1/-1}.purchase-recommendation strong{line-height:1.45}
.daily-brief-sheet{position:fixed;z-index:80;left:50%;bottom:18px;transform:translateX(-50%);width:min(720px,calc(100% - 28px));background:color-mix(in srgb,var(--surface) 96%,transparent);border:1px solid var(--line);border-radius:24px;padding:12px 20px 18px;box-shadow:0 24px 70px rgba(0,0,0,.28);backdrop-filter:blur(18px);animation:briefSlideUp .35s ease-out}.daily-brief-sheet[hidden]{display:none}.daily-brief-handle{width:42px;height:4px;border-radius:5px;background:var(--line);margin:0 auto 13px}.daily-brief-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.daily-brief-heading h2{font:800 20px Manrope;margin:2px 0 0}.daily-brief-heading>span{font-size:9px;font-weight:800;background:var(--surface-2);padding:6px 8px;border-radius:999px}.daily-brief-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:13px}.daily-brief-mini-grid>div{background:var(--surface-2);border-radius:12px;padding:11px}.daily-brief-mini-grid span{display:block;font-size:9px;color:var(--muted)}.daily-brief-mini-grid strong{display:block;font-size:13px;margin-top:4px}.daily-brief-advice{display:grid;grid-template-columns:28px 1fr;gap:9px;align-items:center;margin-top:10px;padding:10px 12px;background:color-mix(in srgb,var(--green) 12%,var(--surface-2));border-radius:12px}.daily-brief-advice>span{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:var(--ink);color:var(--green)}.daily-brief-advice p{font-size:11px;line-height:1.45;margin:0}.daily-brief-buttons{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}.daily-brief-buttons button{border:1px solid var(--line);border-radius:10px;padding:10px 14px;background:var(--surface);color:var(--ink);font-weight:800;cursor:pointer}.daily-brief-buttons button:first-child{background:var(--ink);color:var(--bg);border-color:var(--ink)}.daily-brief-sheet.warning{border-color:var(--orange);box-shadow:0 24px 70px rgba(224,110,65,.28)}.daily-brief-sheet.warning .daily-brief-heading>span{background:#fee1d3;color:#943f20}.daily-brief-sheet.warning .daily-brief-advice{background:color-mix(in srgb,var(--orange) 16%,var(--surface-2))}@keyframes briefSlideUp{from{opacity:0;transform:translate(-50%,28px)}to{opacity:1;transform:translate(-50%,0)}}
@media(max-width:620px){.daily-brief-sheet{bottom:10px;padding:10px 14px 14px;border-radius:20px}.daily-brief-mini-grid{grid-template-columns:1fr 1fr}.daily-brief-mini-grid>div:last-child{grid-column:1/-1}.daily-brief-buttons{display:grid;grid-template-columns:1fr 1fr}.daily-brief-buttons button{padding:11px 8px}}
.daily-brief-widget{position:fixed;right:18px;bottom:18px;z-index:70;display:grid;grid-template-columns:42px 1fr 14px;align-items:center;gap:10px;width:210px;padding:10px 12px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:linear-gradient(145deg,#090a0a,#242725);color:#fff;box-shadow:0 14px 38px rgba(0,0,0,.3);text-align:left;cursor:pointer;animation:briefSlideUp .3s ease-out}.daily-brief-widget[hidden]{display:none}.daily-brief-widget-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:linear-gradient(145deg,#dbe9c0,#8eb753);color:#172115;font:800 20px Manrope}.daily-brief-widget small,.daily-brief-widget strong,.daily-brief-widget em{display:block}.daily-brief-widget small{font-size:8px;letter-spacing:.14em;color:#aeb4af}.daily-brief-widget strong{font:800 13px Manrope;margin-top:1px}.daily-brief-widget em{font-size:8px;color:#aeb4af;font-style:normal;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.daily-brief-widget>b{font-size:20px;color:#b8d985}.daily-brief-widget.warning{background:linear-gradient(145deg,#2a1008,#6c2c16);border-color:rgba(238,135,87,.55)}.daily-brief-widget.warning .daily-brief-widget-icon{background:#f1a178;color:#4a1708}
@media(max-width:520px){.daily-brief-widget{right:12px;bottom:12px;width:190px}}
.daily-brief-brand{display:flex;align-items:center;gap:10px}.daily-brief-brand>img{width:42px;height:42px;object-fit:contain;filter:drop-shadow(0 0 8px rgba(184,225,126,.2))}.daily-brief-widget{will-change:transform,opacity;transform:translateZ(0);transition:transform .18s cubic-bezier(.2,.8,.2,1),opacity .18s ease}.daily-brief-widget:hover{transform:translateZ(0) scale(1.05);box-shadow:0 16px 44px rgba(157,205,95,.24)}.daily-brief-widget:active{transform:translateZ(0) scale(.96);transition-duration:.08s}.daily-brief-widget.opening{transform:translateZ(0) scale(1.04);opacity:.88}.daily-brief-widget-icon{position:relative;overflow:visible;background:transparent;animation:helenBreath 5.2s ease-in-out infinite;will-change:transform}.daily-brief-widget-icon::after{content:"";position:absolute;inset:5px;border-radius:12px;background:#b8df78;filter:blur(9px);opacity:.12;z-index:-1;animation:helenGlow 5.2s ease-in-out infinite;will-change:opacity,transform}.daily-brief-widget-icon img{width:100%;height:100%;object-fit:contain;display:block}.daily-brief-notification{position:absolute;top:8px;right:9px;width:8px;height:8px;border-radius:50%;background:#a8d86d;box-shadow:0 0 0 3px rgba(168,216,109,.14);opacity:0;transform:scale(.5);will-change:transform,opacity}.daily-brief-widget.new-insight .daily-brief-notification{opacity:1;transform:scale(1);animation:helenInsightPulse .75s cubic-bezier(.2,.8,.2,1) 1}.daily-brief-widget.warning{animation:helenWarningPulse 12s ease-in-out infinite;will-change:transform}.daily-brief-widget.critical{background:linear-gradient(145deg,#260a0a,#641c1c);border:1px solid #c84a4a;box-shadow:0 14px 38px rgba(170,34,34,.2);animation:helenCriticalShake .42s ease-out 1}.daily-brief-widget.critical .daily-brief-widget-icon{animation:none}.daily-brief-widget.critical .daily-brief-notification{background:#ef6969;box-shadow:0 0 0 3px rgba(239,105,105,.13)}.daily-brief-sheet{animation:helenSheetSpring .28s cubic-bezier(.22,1.15,.35,1) both;will-change:transform,opacity}.daily-brief-sheet.closing{animation:helenSheetClose .18s ease-in both}.daily-brief-sheet.critical{border-color:#c84a4a;box-shadow:0 24px 70px rgba(170,34,34,.28)}.daily-brief-sheet.critical .daily-brief-heading>span{background:#f5d2d2;color:#8c2020}
@keyframes helenBreath{0%,100%{transform:translateZ(0) scale(1)}50%{transform:translateZ(0) scale(1.02)}}@keyframes helenGlow{0%,100%{opacity:.08;transform:scale(.98)}50%{opacity:.17;transform:scale(1.03)}}@keyframes helenInsightPulse{0%{opacity:0;transform:scale(.4)}45%{opacity:1;transform:scale(1.35)}100%{opacity:1;transform:scale(1)}}@keyframes helenWarningPulse{0%,92%,100%{transform:translateZ(0) scale(1)}96%{transform:translateZ(0) scale(1.018)}}@keyframes helenCriticalShake{0%,100%{transform:translate3d(0,0,0)}20%{transform:translate3d(-3px,0,0)}40%{transform:translate3d(3px,0,0)}60%{transform:translate3d(-2px,0,0)}80%{transform:translate3d(1px,0,0)}}@keyframes helenSheetSpring{0%{opacity:0;transform:translate3d(-50%,24px,0) scale(.97)}100%{opacity:1;transform:translate3d(-50%,0,0) scale(1)}}@keyframes helenSheetClose{0%{opacity:1;transform:translate3d(-50%,0,0) scale(1)}100%{opacity:0;transform:translate3d(-50%,14px,0) scale(.97)}}
@media(prefers-reduced-motion:reduce){.daily-brief-widget,.daily-brief-widget-icon,.daily-brief-widget-icon::after,.daily-brief-notification,.daily-brief-sheet{animation:none!important;transition:none!important}}
.daily-brief-brand>img{width:38px;height:38px;filter:drop-shadow(0 0 5px rgba(184,225,126,.1))}.daily-brief-widget-icon::after{opacity:.06;filter:blur(7px)}
@keyframes helenBreath{0%,100%{transform:translateZ(0) scale(1)}50%{transform:translateZ(0) scale(1.015)}}
@keyframes helenGlow{0%,100%{opacity:.04;transform:scale(.98)}50%{opacity:.09;transform:scale(1.02)}}
.copilot-hero-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.copilot-hero-actions .outline-button{height:42px;padding:0 14px;font-size:11px}.copilot-hero-actions #openAdvisorHero{padding:9px 14px;border-radius:10px;font-size:12px;min-width:0;width:auto}.daily-brief-widget.demo-idle{border-color:rgba(184,223,120,.28)}
@media(max-width:620px){.copilot-hero-actions{width:100%;display:flex;align-items:center}.copilot-hero-actions .outline-button,.copilot-hero-actions #openAdvisorHero{width:auto}}
.copilot-view .advisor-panel{display:none}
@media(max-width:760px){.copilot-view .advisor-panel{left:12px;right:12px;bottom:88px;width:auto;grid-template-columns:38px 1fr auto}.copilot-view .advisor-panel .advisor-copy p:last-child{display:none}.copilot-view .advisor-panel .advisor-button{font-size:0;padding:9px 12px}.copilot-view .advisor-panel .advisor-button span{font-size:16px;margin:0}}
@media(max-width:700px){.top-advisor-button{width:43px;padding:0;justify-content:center}.top-advisor-button b{display:none}.top-advisor-button span{background:transparent;color:var(--ink);font-size:17px}}
.copilot-view{padding-bottom:92px}@media(max-width:760px){.copilot-view{padding-bottom:160px}}
.report-page{margin-bottom:22px}.report-page-heading{display:flex;align-items:end;justify-content:space-between;margin:8px 2px 14px}.report-page-heading h2{font:800 24px Manrope;margin:3px 0 0}.report-page-heading>span{font-size:10px;color:var(--muted);font-weight:800}.premium-report-summary{grid-template-columns:repeat(4,1fr)}.premium-report-summary .report-result{grid-column:span 2}.report-helen-brief{display:grid;grid-template-columns:54px 1fr;gap:16px;align-items:start;margin-bottom:16px;background:linear-gradient(145deg,var(--ink),#232725);color:#fff}.report-helen-brief .section-kicker{color:#b8d985}.report-helen-brief p:last-child{font-size:13px;line-height:1.7;color:#d6dad6;margin:5px 0 0}.report-helen-mark{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:#b8d985;color:#172115;font:800 24px Manrope}.report-insight-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-top:14px}.report-insight-card{padding:12px;border-radius:13px;background:var(--surface-2);border-left:3px solid var(--green)}.report-insight-card.warn{border-color:#d2b94d}.report-insight-card strong{display:block;font-size:11px}.report-insight-card span{display:block;font-size:9px;color:var(--muted);line-height:1.4;margin-top:4px}.report-health-explanation{display:grid;grid-template-columns:180px 1fr;gap:20px;align-items:center;margin-top:16px}.report-health-explanation>div:first-child strong{display:block;font:800 34px Manrope;margin-top:5px}.report-health-reasons{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.report-health-reason{background:var(--surface-2);border-radius:11px;padding:10px;font-size:10px}.premium-report-grid{grid-template-columns:1.15fr .85fr}.premium-category-analysis,.spending-timeline,.report-goals,.report-recommendations>div{display:grid;gap:9px;margin-top:14px}.premium-category-row{display:grid;grid-template-columns:1fr auto;gap:5px;padding:11px;border-radius:12px;background:var(--surface-2)}.premium-category-row strong{font-size:11px}.premium-category-row>span{font-size:11px;font-weight:800}.premium-category-row small{grid-column:1/-1;color:var(--muted);font-size:9px}.premium-category-bar{grid-column:1/-1;height:4px;border-radius:4px;background:var(--surface);overflow:hidden}.premium-category-bar span{display:block;height:100%;background:var(--green)}.timeline-item{display:grid;grid-template-columns:52px 1fr auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}.timeline-item:first-child{border-top:0}.timeline-item>span{font-size:9px;color:var(--muted)}.timeline-item strong{font-size:11px}.timeline-item small{display:block;color:var(--muted);font-size:9px;margin-top:2px}.timeline-item>b{font-size:11px}.report-goal{padding:12px;border-radius:13px;background:var(--surface-2)}.report-goal-head{display:flex;justify-content:space-between;font-size:11px;font-weight:800}.report-goal p{font-size:9px;color:var(--muted);margin:7px 0}.report-goal .tool-progress{margin-top:8px}.report-recommendation{display:grid;grid-template-columns:25px 1fr;gap:9px;padding:11px;border-radius:12px;background:var(--surface-2)}.report-recommendation>span{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:var(--ink);color:var(--green);font-size:10px;font-weight:800}.report-recommendation strong{display:block;font-size:11px}.report-recommendation small{display:block;font-size:9px;color:var(--muted);line-height:1.4;margin-top:3px}
@media(max-width:950px){.premium-report-summary{grid-template-columns:repeat(2,1fr)}.report-insight-cards{grid-template-columns:1fr 1fr}.premium-report-grid{grid-template-columns:1fr}.report-health-reasons{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.premium-report-summary{grid-template-columns:1fr}.premium-report-summary .report-result{grid-column:auto}.report-insight-cards{grid-template-columns:1fr}.report-health-explanation{grid-template-columns:1fr}.report-health-reasons{grid-template-columns:1fr}.report-page-heading{align-items:start;flex-direction:column;gap:5px}.timeline-item{grid-template-columns:45px 1fr}.timeline-item>b{grid-column:2}}
.helen-monthly-letter{margin-top:14px;padding:17px 18px;border-radius:16px;background:linear-gradient(145deg,color-mix(in srgb,var(--green) 10%,var(--surface-2)),var(--surface-2));border:1px solid color-mix(in srgb,var(--green) 20%,var(--line));font-size:12px;line-height:1.65;color:var(--ink)}.helen-monthly-letter p{margin:0 0 9px;color:inherit}.helen-monthly-letter p:last-child{margin-bottom:0}.helen-monthly-letter .helen-signature{font-weight:800;color:var(--green-dark);margin-top:13px}
@media(max-width:900px){.forecast-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.forecast-grid{grid-template-columns:1fr}.variable-heading{align-items:flex-start;flex-direction:column}.variable-actions{width:100%;justify-content:space-between}.variable-actions .outline-button,.variable-actions .primary-button{width:auto}}
.transaction-actions{display:flex;gap:3px}.transaction-actions button{border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:16px;opacity:.65}.transaction-actions button:hover{opacity:1;color:var(--ink)}.text-action-transaction{grid-template-columns:42px minmax(0,1fr) auto}.text-actions{grid-column:2/-1;justify-content:flex-end;align-items:center;gap:8px 12px;flex-wrap:wrap;min-width:0}.transaction-actions .transaction-text-button{font-size:12px;font-weight:800;opacity:1;padding:5px 0;white-space:nowrap}.transaction-actions .delete-button.transaction-text-button{color:var(--muted)}.transaction-actions .delete-button.transaction-text-button:hover{color:var(--orange)}.fixed-item-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:0;flex-wrap:wrap;min-width:0}.fixed-item-actions button{border:0;background:transparent;color:var(--muted);font-size:11px;font-weight:800;padding:4px 0;cursor:pointer;white-space:nowrap}.fixed-item-actions button:hover{color:var(--orange)}
.convertible-transaction{background:linear-gradient(90deg,color-mix(in srgb,var(--green) 10%,transparent),transparent 70%);border-radius:12px;padding-left:8px;padding-right:8px;cursor:pointer}.convertible-transaction:active{background:color-mix(in srgb,var(--green) 18%,var(--surface))}.scheduled-badge{background:#eee8dc;color:#6f6443}.recurring-actions{align-items:center}
.pay-fixed,.pay-planned-transaction{background:var(--ink)!important;color:var(--bg)!important;padding:6px 12px!important;border-radius:999px!important;font-weight:900!important;opacity:1!important;font-size:12px!important;letter-spacing:.01em!important;white-space:nowrap}.pay-fixed:hover,.pay-planned-transaction:hover{background:var(--green-dark)!important;color:#fff!important}.dark .pay-fixed:hover,.dark .pay-planned-transaction:hover{background:var(--green)!important;color:#171b1a!important}
@media(max-width:620px){.text-action-transaction{grid-template-columns:38px minmax(0,1fr);gap:10px}.text-action-transaction .transaction-amount{grid-column:2;text-align:left}.text-action-transaction .text-actions{grid-column:2;justify-content:flex-start}.transaction-actions .transaction-text-button{font-size:11px}.pay-fixed,.pay-planned-transaction{font-size:11px!important;padding:6px 10px!important}}
@media(max-width:580px){.fixed-expense-item{grid-template-columns:38px minmax(0,1fr)}.fixed-expense-side{justify-content:flex-start;text-align:left}.fixed-item-actions{justify-content:flex-start}}

/* Monthly reports */
.report-hero{align-items:center}.report-controls{display:flex;gap:8px;align-items:center}.report-pdf{height:40px}.report-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:16px}.report-metric{display:flex;flex-direction:column;gap:8px;padding:18px}.report-metric span{font-size:10px;color:var(--muted)}.report-metric strong{font:800 20px Manrope}.report-result{background:var(--ink);color:var(--bg)}.report-result span{color:#aeb2ae}.report-content-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:16px;margin-bottom:16px}.report-insights{display:grid;gap:10px;margin-top:16px}.report-insight{display:flex;justify-content:space-between;align-items:center;background:var(--surface-2);padding:11px;border-radius:10px}.report-insight span{font-size:11px;color:var(--muted)}.report-insight strong{font-size:12px}.report-transactions{margin-bottom:24px}.report-table{margin-top:14px}.report-row{display:grid;grid-template-columns:90px 1fr 130px 110px;gap:12px;padding:11px 4px;border-top:1px solid var(--line);align-items:center;font-size:11px}.report-row:first-child{border-top:0}.report-row span{color:var(--muted)}.report-row strong{text-align:right}.report-row .positive{color:var(--green-dark)}.report-row .negative{color:var(--orange)}
@media(max-width:950px){.report-summary{grid-template-columns:repeat(3,1fr)}.report-content-grid{grid-template-columns:1fr}.report-controls{align-items:stretch;flex-wrap:wrap}}
@media(max-width:620px){.report-summary{grid-template-columns:1fr 1fr}.report-result{grid-column:1/-1}.report-controls{width:100%}.report-controls .month-control{width:100%;justify-content:space-between}.report-row{grid-template-columns:70px 1fr auto}.report-row .report-category{display:none}}
@media print{.report-controls{display:none!important}.reports-view .report-summary{grid-template-columns:repeat(6,1fr)!important}.reports-view .report-content-grid{grid-template-columns:1.3fr 1fr!important}.report-transactions{break-before:page}}

/* Monochrome premium theme matched to the DMAN logo */
:root{--bg:#f0f0ed;--surface:#fbfbf9;--surface-2:#e9e9e5;--ink:#080909;--muted:#6e716f;--line:#d7d8d4;--green:#cfc39d;--green-dark:#746334;--orange:#d9784a;--shadow:0 14px 42px rgba(8,9,9,.075)}
body{background-color:var(--bg);background-image:radial-gradient(circle at 82% -8%,rgba(8,9,9,.13),transparent 31%),linear-gradient(180deg,#e3e4e0 0,var(--bg) 280px);background-attachment:fixed}
body.dark{--bg:#090a0a;--surface:#141515;--surface-2:#202221;--ink:#f4f4f0;--muted:#989c99;--line:#303330;--green:#d2c69f;--green-dark:#dfd5b5;--orange:#ec8b5c;--shadow:0 16px 48px rgba(0,0,0,.38);background-image:radial-gradient(circle at 82% -8%,rgba(255,255,255,.09),transparent 30%),linear-gradient(180deg,#050606 0,var(--bg) 300px)}
.topbar{background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(14px)}.app-tabs{background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:blur(14px)}
.balance-card{background:linear-gradient(145deg,#050606,#1b1d1c)}.dark .balance-card{background:linear-gradient(145deg,#f3f3ef,#d9dad5)}
.income-card .metric-icon{background:#e7eee3;color:#425b46}.expense-card .metric-icon{background:#f7e2d8;color:#8d4327}.advisor-symbol{background:#050606}.advisor-panel{background:linear-gradient(120deg,var(--surface),color-mix(in srgb,var(--green) 16%,var(--surface)))}
.panel,.metric-card{border-color:color-mix(in srgb,var(--line) 86%,#fff)}.dark .panel,.dark .metric-card{border-color:var(--line)}
@media print{.app-tabs{display:none}.app-view{display:none!important}.app-view.active{display:block!important}.investment-note{display:none}.holdings-panel{break-before:auto}.holding{break-inside:avoid}}
.finance-os-card{background:var(--ink);color:var(--bg);border-radius:24px;padding:24px;margin-bottom:16px;box-shadow:0 18px 48px rgba(0,0,0,.13)}.finance-os-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.finance-os-head h2{font:800 25px Manrope;margin:0}.finance-os-head p:last-child{color:#b8bdb8;font-size:12px;line-height:1.5;margin:7px 0 0}.finance-os-score{background:var(--green);color:#172115;padding:9px 12px;border-radius:12px;font:800 13px Manrope;white-space:nowrap}.finance-os-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:20px}.finance-os-kpis>div{background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.08);border-radius:15px;padding:14px}.finance-os-kpis span,.finance-os-kpis small{display:block;color:#aeb5ae;font-size:9px}.finance-os-kpis strong{display:block;font:800 17px Manrope;margin-top:6px}.finance-os-kpis small{margin-top:4px}.helen-smart-insights{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.helen-smart-insight{background:rgba(255,255,255,.05);border-radius:12px;padding:11px;font-size:10px;line-height:1.45;color:#dce1dc}.prediction-timeline-panel{margin-bottom:16px}.timeline-badge{font-size:9px;font-weight:800;background:var(--ink);color:var(--green);padding:7px 9px;border-radius:9px}.prediction-timeline{display:grid;gap:0;margin-top:15px}.prediction-event{display:grid;grid-template-columns:80px 1fr auto;gap:12px;align-items:center;padding:11px 3px;border-top:1px solid var(--line)}.prediction-event:first-child{border-top:0}.prediction-event time{font-size:10px;color:var(--muted)}.prediction-event strong{font-size:11px}.prediction-event span{font-size:11px;font-weight:800}.prediction-empty{color:var(--muted);font-size:12px;padding:18px 0}
@media(max-width:700px){.finance-os-kpis{grid-template-columns:1fr 1fr}.helen-smart-insights{grid-template-columns:1fr}.prediction-event{grid-template-columns:64px 1fr}.prediction-event span{grid-column:2}}
.prediction-opening{background:var(--surface-2);border-radius:12px;padding:13px 12px;border-top:0}.prediction-opening span{color:var(--green-dark)}
.forecast-simple-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.forecast-simple-grid>div{background:var(--surface-2);border-radius:14px;padding:15px}.forecast-simple-grid span{display:block;font-size:10px;color:var(--muted)}.forecast-simple-grid strong{display:block;font:800 18px Manrope;margin-top:7px}.forecast-simple-grid .positive strong{color:var(--green-dark)}.forecast-simple-grid .negative strong{color:var(--orange)}.forecast-simple-grid .result{background:var(--ink);color:var(--bg)}.forecast-simple-grid .result span{color:#b3b8b3}.forecast-equation{text-align:center;margin:14px 0 0;color:var(--muted);font-size:12px}.forecast-equation b{color:var(--ink)}
@media(max-width:700px){.forecast-simple-grid{grid-template-columns:1fr 1fr}}
/* UX focus pass: clearer hierarchy without new features or data. */
#financeView>.hero{padding:30px 0 20px;align-items:center}#financeView>.hero h1{font-size:clamp(28px,3.5vw,42px)}#financeView>.hero .hero-copy{font-size:13px}.finance-os-card{padding:22px;border-radius:22px}.finance-os-head h2{font-size:22px}.finance-os-head p:last-child{max-width:680px}.finance-os-kpis>div{min-height:72px}.summary-grid{gap:12px;margin-bottom:16px}.summary-grid .metric-card,.summary-grid .balance-card{box-shadow:0 8px 26px rgba(27,31,28,.06)}.prediction-timeline-panel{padding:22px}.smart-overview-grid{opacity:.92}.month-flow-panel{margin-top:26px}.month-flow-panel>.panel-header h2{font-size:20px}.month-flow-list{grid-template-columns:repeat(4,1fr)}.month-flow-row{min-height:72px}.reminder-banner{position:relative;background:color-mix(in srgb,#f3c75f 15%,var(--surface));border-color:color-mix(in srgb,#d2a83b 45%,var(--line));box-shadow:none}.reminder-icon{width:34px;height:34px;font-size:16px}.daily-brief-sheet{width:min(650px,calc(100% - 28px));border-radius:22px;box-shadow:0 20px 60px rgba(0,0,0,.22)}.daily-brief-heading h2{font-size:19px}.daily-brief-advice{padding:9px 11px}.report-page{max-width:1120px;margin-left:auto;margin-right:auto}.report-page .panel{box-shadow:0 8px 28px rgba(26,30,27,.055)}.report-page-heading{margin-top:18px}.report-page-heading h2{font-size:22px}.report-helen-brief{padding:22px}.report-insight-cards{gap:8px}.report-insight-card{min-height:68px}.app-tabs{position:sticky;top:0;z-index:45;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(16px)}
@media(max-width:760px){#financeView>.hero{padding-top:22px;gap:16px}.finance-os-card{padding:18px}.finance-os-head{gap:12px}.finance-os-head h2{font-size:20px}.finance-os-score{padding:7px 9px}.finance-os-kpis{margin-top:15px}.month-flow-list{grid-template-columns:1fr 1fr}.daily-brief-sheet{max-height:82vh;overflow:auto}.summary-grid{gap:10px}.prediction-timeline-panel{padding:18px}}
.net-worth-breakdown{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.net-worth-breakdown span{background:rgba(255,255,255,.055);color:#aeb5ae;border-radius:9px;padding:7px 9px;font-size:9px}.net-worth-breakdown b{color:#fff;margin-left:4px}.health-factor-list{grid-template-columns:1fr 1fr}.health-factor span{font-size:10px;line-height:1.45;margin:0}.timeline-badge{white-space:nowrap}
@media(max-width:700px){.net-worth-breakdown{display:grid;grid-template-columns:1fr 1fr}.health-factor-list{grid-template-columns:1fr}}
.top-actions .icon-button,.top-actions .receipt-button{height:44px}.top-actions svg{width:19px;height:19px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.icon-button{display:grid;place-items:center}.icon-button>span{display:grid;place-items:center}.receipt-button{display:flex;align-items:center;justify-content:center;gap:8px}.receipt-button span{color:inherit;display:grid;place-items:center}.top-actions button{transition:transform .16s ease,background .16s ease,border-color .16s ease}.top-actions button:hover{background:var(--surface-2);border-color:color-mix(in srgb,var(--ink) 18%,var(--line));transform:translateY(-1px)}.top-actions button:active{transform:scale(.96)}
.copilot-hero-actions{display:none!important}.copilot-view .helen-hub-panel{display:block;margin:18px 0 28px;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:22px;box-shadow:0 12px 38px rgba(25,30,26,.07)}.helen-hub-panel>.modal-header:first-child .close-button{display:none}.helen-hub-panel .advisor-month-plan{margin-top:0}.helen-hub-panel .advisor-chat{margin:22px 0 0;position:sticky;bottom:10px;z-index:6;box-shadow:0 10px 32px rgba(0,0,0,.09);backdrop-filter:blur(14px)}.helen-hub-panel .advisor-chat-input input{height:48px;border-radius:12px}.helen-hub-panel .advisor-chat-input button{padding:0 18px}.helen-hub-panel .advisor-divider{margin-top:22px}
@media(max-width:620px){.copilot-view .helen-hub-panel{padding:16px;border-radius:18px}.helen-hub-panel .advisor-chat{position:relative;bottom:auto;margin-top:18px}.helen-hub-panel .advisor-quick-prompts{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.helen-hub-panel .advisor-quick-prompts button{white-space:nowrap}}
.daily-brief-widget-icon{position:relative;width:44px;height:44px;border-radius:14px;overflow:hidden;background:#050706;border:1px solid rgba(197,231,151,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 5px 15px rgba(108,153,70,.22)}.daily-brief-widget-icon img{position:absolute!important;width:102px!important;height:102px!important;max-width:none!important;object-fit:contain!important;transform:translate(-30px,-14px);filter:none!important}.daily-brief-widget-icon:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(145deg,rgba(255,255,255,.16),transparent 42%);z-index:2;pointer-events:none}.daily-brief-widget-icon::after{inset:7px!important;border-radius:50%!important;opacity:.1!important}
#dailyBriefWidget .daily-brief-widget-icon{position:relative;width:44px;height:44px;border-radius:14px;overflow:hidden;background:#050706;border:1px solid rgba(197,231,151,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 5px 15px rgba(108,153,70,.22)}#dailyBriefWidget .daily-brief-widget-icon img{position:absolute;left:0;top:0;width:102px!important;height:102px!important;max-width:none!important;object-fit:contain!important;transform:translate(-29px,-14px)!important;filter:none!important}#dailyBriefWidget .daily-brief-widget-icon:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(145deg,rgba(255,255,255,.14),transparent 42%);z-index:3;pointer-events:none}
.advisor-number.payment-comparison-row{grid-column:1/-1;display:grid;grid-template-columns:130px 1fr;gap:5px 12px;align-items:center;padding:12px}.payment-comparison-row span{font-weight:800;color:var(--ink)}.payment-comparison-row strong{margin:0}.payment-comparison-row small{grid-column:2;color:var(--muted);font-size:9px;line-height:1.4}
@media(max-width:620px){.advisor-number.payment-comparison-row{grid-template-columns:1fr}.payment-comparison-row small{grid-column:1}}
#dailyBriefWidget .daily-brief-widget-icon img{position:static!important;width:100%!important;height:100%!important;max-width:100%!important;object-fit:cover!important;transform:none!important}.daily-brief-brand>img{border-radius:50%;object-fit:cover;border:1px solid rgba(180,218,130,.45)}
#dailyBriefWidget .daily-brief-widget-icon img{transform:scale(1.28)!important;transform-origin:center 44%!important}.daily-brief-brand>img{border-radius:11px!important;border:1px solid rgba(180,218,130,.35);transform:scale(1.16);clip-path:inset(7% round 10px)}
#dailyBriefWidget .daily-brief-widget-icon img{transform:scale(1.62)!important;transform-origin:center 42%!important}.helen-avatar-frame{width:42px;height:42px;flex:0 0 42px;display:block;overflow:hidden;border-radius:12px;background:#080a09;border:1px solid rgba(180,218,130,.35)}.daily-brief-brand>.helen-avatar-frame>img{width:100%!important;height:100%!important;display:block;object-fit:cover!important;border:0!important;border-radius:0!important;clip-path:none!important;transform:scale(1.62)!important;transform-origin:center 42%!important}
#dailyBriefWidget .daily-brief-widget-icon img{transform:scale(1.08)!important;transform-origin:center 40%!important}.daily-brief-brand>.helen-avatar-frame>img{transform:scale(1.08)!important;transform-origin:center 40%!important}
#investmentsView{--invest-green:#b7d98a;--invest-dark:#121514}.investment-summary-premium{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.investment-summary-premium .investment-metric{min-height:142px;justify-content:space-between;padding:24px;background:linear-gradient(145deg,var(--panel),var(--surface-2));border:1px solid var(--line)}.investment-summary-premium .investment-metric>span{font-size:12px;font-weight:700}.investment-summary-premium .investment-metric strong{font-size:clamp(23px,2.4vw,34px);letter-spacing:-.045em}.investment-summary-premium .investment-metric small{color:var(--muted);font-weight:600}.investment-dashboard-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;margin-bottom:16px}.allocation-panel,.investment-timeline-panel{min-height:360px}.portfolio-allocation{display:grid;grid-template-columns:minmax(180px,.8fr) 1.2fr;align-items:center;gap:30px;min-height:260px}.allocation-chart{width:min(210px,100%);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;margin:auto;position:relative}.allocation-chart:after{content:"";position:absolute;inset:20%;border-radius:50%;background:var(--panel)}.allocation-chart>div{position:relative;z-index:1;text-align:center}.allocation-chart strong,.allocation-chart span{display:block}.allocation-chart strong{font:800 16px Manrope}.allocation-chart span{font-size:9px;color:var(--muted);margin-top:3px}.allocation-legend{display:grid;gap:12px}.allocation-legend>div{display:grid;grid-template-columns:10px 1fr auto;gap:9px;align-items:center}.allocation-legend i{width:9px;height:9px;border-radius:50%}.allocation-legend span,.allocation-legend strong{font-size:11px}.allocation-legend small{grid-column:2/4;color:var(--muted);font-size:9px;margin-top:-7px}.investment-timeline{margin-top:10px}.investment-timeline-item{display:grid;grid-template-columns:12px 1fr auto;gap:10px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.investment-timeline-item:last-child{border:0}.timeline-dot{width:8px;height:8px;border-radius:50%;background:var(--invest-green);box-shadow:0 0 0 4px color-mix(in srgb,var(--invest-green) 18%,transparent)}.investment-timeline-item strong,.investment-timeline-item small{display:block}.investment-timeline-item strong{font-size:11px}.investment-timeline-item small{font-size:9px;color:var(--muted);margin-top:3px}.investment-timeline-item b{font-size:11px}.premium-holdings-panel{padding:28px}.premium-holdings-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}.investment-holding-card{display:block;padding:20px;border:1px solid var(--line);border-radius:20px;background:var(--surface-2)}.holding-card-head{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center}.holding-card-head .holding-actions{align-self:start}.holding-card-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:20px 0;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.holding-card-metrics span,.holding-card-metrics strong{display:block}.holding-card-metrics span{font-size:9px;color:var(--muted);margin-bottom:5px}.holding-card-metrics strong{font-size:13px}.holding-card-foot{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:9px;line-height:1.45}.investment-empty{min-height:230px;display:grid;place-items:center;align-content:center;text-align:center;color:var(--muted);padding:20px}.investment-empty span{font-size:30px;margin-bottom:8px}.investment-empty strong{color:var(--ink);font-size:12px}.investment-empty p{font-size:10px;max-width:260px;margin:6px auto 0}.investment-empty.compact{min-height:240px}.holding-actions .add-investment-activity{background:var(--ink);color:var(--invest-green)}#investmentModal textarea{resize:vertical;min-height:76px}
@media(max-width:900px){.investment-summary-premium{grid-template-columns:repeat(2,1fr)}.investment-dashboard-grid{grid-template-columns:1fr}.premium-holdings-list{grid-template-columns:1fr}}
@media(max-width:620px){.investment-summary-premium{grid-template-columns:1fr 1fr;gap:10px}.investment-summary-premium .investment-metric{min-height:125px;padding:18px}.investment-summary-premium .investment-metric strong{font-size:22px}.investment-dashboard-grid{gap:12px}.portfolio-allocation{grid-template-columns:1fr;gap:20px}.allocation-chart{width:180px}.allocation-panel,.investment-timeline-panel{min-height:auto}.premium-holdings-panel{padding:20px}.premium-holdings-list{display:block}.investment-holding-card{margin-bottom:12px}.holding-card-metrics{grid-template-columns:1fr 1fr}.holding-card-foot{flex-direction:column}.holding-card-head .ticker-mark{width:42px;height:42px}.investment-holding-card.holding{display:block}}
.portfolio-performance-panel{margin:0 0 16px;padding:28px;overflow:hidden}.performance-ranges{display:flex;gap:5px;padding:4px;background:var(--surface-2);border-radius:12px}.performance-ranges button{border:0;background:transparent;color:var(--muted);font:700 9px Manrope;padding:7px 10px;border-radius:8px;cursor:pointer;transition:.2s transform,.2s background,.2s color}.performance-ranges button:hover{transform:translateY(-1px);color:var(--ink)}.performance-ranges button.active{background:var(--ink);color:var(--green)}.portfolio-performance-chart{height:300px;position:relative;margin-top:18px}.portfolio-performance-chart svg{width:100%;height:230px;overflow:visible}.portfolio-performance-chart>small{position:absolute;bottom:0;left:0;color:var(--muted);font-size:9px}.performance-chart-summary{display:flex;align-items:baseline;gap:10px;margin-bottom:4px}.performance-chart-summary strong{font:800 25px Manrope}.performance-chart-summary span{font-size:10px;font-weight:800}.performance-chart-summary .positive{color:#5e914f}.performance-chart-summary .negative{color:var(--orange)}.investment-snapshot-grid,.investment-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.investment-snapshot,.investment-cashflow,.investment-bottom-grid>.panel{padding:28px}.snapshot-list,.investment-cashflow-list{display:grid;gap:10px;margin-top:18px}.snapshot-list>div,.investment-cashflow-list>div{display:grid;grid-template-columns:1fr auto;gap:4px;padding:14px 16px;border-radius:14px;background:var(--surface-2)}.snapshot-list span,.investment-cashflow-list span{font-size:10px;color:var(--muted)}.snapshot-list strong,.investment-cashflow-list strong{font-size:12px}.snapshot-list small{grid-column:2;font-size:9px;color:var(--muted)}.investment-cashflow-list .cashflow-net{background:var(--ink);color:white}.investment-cashflow-list .cashflow-net span{color:#b9bdbb}.holdings-header{align-items:flex-start}.investment-filters{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.investment-filters select{width:auto;min-width:120px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--ink);padding:8px 26px 8px 10px;font:700 9px Manrope}.holding-card-metrics.detailed{grid-template-columns:repeat(3,1fr)}.investment-journal{margin-top:14px;padding:12px 14px;border-radius:12px;background:var(--panel)}.investment-journal summary{cursor:pointer;font-size:10px;font-weight:800}.investment-journal p{font-size:10px;color:var(--muted);line-height:1.5;margin:10px 0 0}.investment-journal p b{display:block;color:var(--ink);margin-bottom:3px}.investment-journal-fields{display:grid;gap:10px;padding:16px;border:1px solid var(--line);border-radius:16px;margin:4px 0 12px}.mini-add-button{border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:10px;padding:9px 12px;font:800 10px Manrope;cursor:pointer}.investment-goals-list,.investment-watchlist{display:grid;gap:10px;margin-top:18px}.investment-goal{display:grid;grid-template-columns:1fr auto;gap:10px;padding:16px;border-radius:16px;background:var(--surface-2)}.investment-goal strong,.investment-goal span{display:block}.investment-goal strong{font-size:12px}.investment-goal span{color:var(--muted);font-size:9px;margin-top:4px}.investment-goal>b{font-size:12px}.investment-goal-bar{grid-column:1/3;height:7px;background:var(--line);border-radius:10px;overflow:hidden}.investment-goal-bar i{display:block;height:100%;background:var(--invest-green);border-radius:inherit}.investment-goal button{grid-column:1/3;justify-self:start;border:0;background:transparent;color:var(--muted);font-size:9px;cursor:pointer}.watchlist-item{display:grid;grid-template-columns:40px 1fr auto;gap:11px;align-items:center;padding:12px;border-radius:15px;background:var(--surface-2)}.watchlist-item .ticker-mark{width:40px;height:40px}.watchlist-item strong,.watchlist-item small{display:block}.watchlist-item strong{font-size:11px}.watchlist-item small{font-size:9px;color:var(--muted);margin-top:3px}.watchlist-item button{border:0;background:transparent;color:var(--muted);font-size:18px;cursor:pointer}
@media(max-width:900px){.investment-snapshot-grid,.investment-bottom-grid{grid-template-columns:1fr}.holdings-header{display:block}.investment-filters{justify-content:flex-start;margin-top:14px}}
@media(max-width:620px){.portfolio-performance-panel{padding:20px}.portfolio-performance-chart{height:245px}.portfolio-performance-chart svg{height:180px}.performance-ranges{width:100%;overflow-x:auto}.performance-ranges button{flex:1}.investment-snapshot,.investment-cashflow,.investment-bottom-grid>.panel{padding:20px}.investment-filters{display:grid;grid-template-columns:1fr 1fr}.investment-filters select{width:100%;min-width:0}.holding-card-metrics.detailed{grid-template-columns:1fr 1fr}}
.watchlist-online-bar{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end;margin:16px 0 4px;padding:14px;border:1px solid var(--line);border-radius:15px;background:var(--surface-2)}.watchlist-online-bar label{font-size:9px;color:var(--muted);font-weight:700}.watchlist-online-bar input{display:block;width:100%;margin-top:5px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--ink);padding:9px 10px;font:600 10px Manrope}.watchlist-online-bar button{border:0;border-radius:10px;background:var(--ink);color:var(--green);padding:10px 12px;font:800 9px Manrope;cursor:pointer}.watchlist-online-bar button:disabled{opacity:.55;cursor:wait}.watchlist-online-bar>small{grid-column:1/3;color:var(--muted);font-size:8px}.watchlist-item{grid-template-columns:40px 1fr auto auto}.watchlist-quote{text-align:right}.watchlist-quote strong,.watchlist-quote small{display:block}.watchlist-quote small.positive{color:#5e914f}.watchlist-quote small.negative{color:var(--orange)}
@media(max-width:620px){.watchlist-online-bar{grid-template-columns:1fr}.watchlist-online-bar>small{grid-column:auto}.watchlist-online-bar button{width:100%}.watchlist-item{grid-template-columns:40px 1fr auto}.watchlist-quote{grid-column:2;text-align:left}.watchlist-item>button{grid-column:3;grid-row:1}}
#reportsView{--report-gap:14px}.report-page{max-width:1120px;margin:0 auto 30px}.report-page-heading{padding:0 4px;margin:22px 0 16px}.premium-report-summary{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:var(--report-gap)!important}.premium-report-summary .report-metric{min-width:0;min-height:126px;padding:22px;border-radius:20px;justify-content:space-between;overflow:hidden}.premium-report-summary .report-metric span{font-size:10px;font-weight:750;line-height:1.35}.premium-report-summary .report-metric strong{font-size:clamp(20px,2.3vw,30px);line-height:1.05;letter-spacing:-.045em;white-space:nowrap}.premium-report-summary .report-result{grid-column:span 2!important}.report-helen-brief{grid-template-columns:54px minmax(0,1fr);border-radius:22px;padding:24px}.report-helen-brief p:last-child{max-width:900px;overflow-wrap:anywhere}.report-page>.panel{margin-bottom:16px;padding:26px;border-radius:22px}.report-insight-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.report-insight-card{min-width:0;min-height:88px;padding:15px;border-left:0;border-top:3px solid var(--green);overflow:hidden}.report-insight-card strong,.report-insight-card span{overflow-wrap:anywhere}.report-health-explanation{grid-template-columns:200px minmax(0,1fr);gap:28px}.report-health-reasons{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.report-health-reason{line-height:1.45;overflow-wrap:anywhere}.premium-report-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:16px}.premium-report-grid>.panel{min-width:0;padding:24px;border-radius:22px;overflow:hidden}.premium-category-row,.timeline-item,.report-goal,.report-recommendation{min-width:0}.premium-category-row small,.timeline-item strong,.timeline-item small,.report-goal p,.report-recommendation small{overflow-wrap:anywhere}.premium-category-row>span{white-space:nowrap}.timeline-item{grid-template-columns:52px minmax(0,1fr) auto}.timeline-item>b{white-space:nowrap}.report-goal-head{gap:10px}.report-goal-head span{overflow-wrap:anywhere}.month-close-panel{max-width:1120px;margin:0 auto 30px}
@media(max-width:950px){.premium-report-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}.report-insight-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.premium-report-grid{grid-template-columns:1fr}.report-health-explanation{grid-template-columns:160px minmax(0,1fr)}}
@media(max-width:620px){#reportsView .report-hero{align-items:stretch}.premium-report-summary{grid-template-columns:1fr!important}.premium-report-summary .report-result{grid-column:auto!important}.premium-report-summary .report-metric{min-height:105px}.premium-report-summary .report-metric strong{font-size:25px}.report-helen-brief{grid-template-columns:42px minmax(0,1fr);padding:18px;gap:12px}.report-helen-mark{width:42px;height:42px;border-radius:13px;font-size:19px}.report-insight-cards,.report-health-reasons{grid-template-columns:1fr}.report-health-explanation{grid-template-columns:1fr;gap:16px}.report-page>.panel,.premium-report-grid>.panel{padding:18px}.timeline-item{grid-template-columns:42px minmax(0,1fr)}.timeline-item>b{grid-column:2}.report-controls .outline-button,.report-controls .report-pdf{flex:1}}
@media print{@page{size:A4;margin:10mm}body{print-color-adjust:exact;-webkit-print-color-adjust:exact}#reportsView .report-hero,.month-close-panel{display:none!important}#reportsView{display:block!important}#reportsView .report-page{width:100%;max-width:none;margin:0;break-after:page;page-break-after:always}#reportsView .report-page:last-of-type{break-after:auto;page-break-after:auto}.premium-report-summary{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:7px!important}.premium-report-summary .report-metric{min-height:82px;padding:12px;border-radius:10px}.premium-report-summary .report-metric strong{font-size:17px}.report-page>.panel,.premium-report-grid>.panel{box-shadow:none!important;border:1px solid #d9ddd7!important;padding:14px;border-radius:12px;break-inside:avoid}.report-helen-brief{background:#111312!important;border:0!important}.report-insight-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.report-insight-card{min-height:58px;padding:9px}.report-health-explanation{grid-template-columns:130px minmax(0,1fr);gap:12px}.report-health-reasons{grid-template-columns:repeat(2,minmax(0,1fr))}.premium-report-grid{grid-template-columns:1fr 1fr!important;gap:8px}.report-page-heading h2{font-size:17px}.report-page-heading{margin:4px 0 8px}}
.personal-spend-wallet{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px;padding:15px 16px;border-radius:15px;background:var(--ink);color:var(--bg)}.personal-spend-wallet span,.personal-spend-wallet strong,.personal-spend-wallet small{display:block}.personal-spend-wallet span{font-size:10px;color:#bfc3bf}.personal-spend-wallet strong{font:800 24px Manrope;margin-top:3px}.personal-spend-wallet small{font-size:9px;color:#9da39f;margin-top:3px}.personal-spend-wallet button{flex:0 0 auto;border:0;border-radius:11px;background:var(--green);color:#172115;padding:10px 14px;font:800 11px Manrope;cursor:pointer}.personal-spend-wallet button:hover{transform:translateY(-1px)}.personal-spend-wallet button:active{transform:scale(.97)}
@media(max-width:520px){.personal-spend-wallet{align-items:stretch;flex-direction:column}.personal-spend-wallet button{width:100%}}
.brand-image-frame.brand-money-assistant{width:210px;height:58px;background:transparent}.brand-money-assistant img{object-fit:cover;object-position:center 52%;transform:scale(1)!important;filter:none!important}.dark .brand-money-assistant img{filter:invert(1) hue-rotate(180deg)!important}
@media(max-width:580px){.brand-image-frame.brand-money-assistant{width:145px;height:46px}}

/* Private Supabase Auth */
.access-screen{grid-template-columns:minmax(360px,620px) minmax(390px,460px);gap:clamp(44px,7vw,110px);padding:clamp(28px,6vw,90px);background:linear-gradient(135deg,#eef4e9 0%,#f8faf5 42%,#e6efdc 100%)}
.access-screen:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(86,112,61,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(86,112,61,.035) 1px,transparent 1px);background-size:46px 46px;mask-image:linear-gradient(to right,#000,transparent 70%)}
.access-ambient-one{width:720px;height:720px;left:-260px;top:-360px;background:radial-gradient(circle,rgba(155,210,73,.28),transparent 67%)}
.access-ambient-two{width:680px;height:680px;right:-250px;bottom:-390px;background:radial-gradient(circle,rgba(116,154,70,.2),transparent 68%)}
.access-visual{position:relative;z-index:1;min-height:570px;align-self:center;display:flex;flex-direction:column;justify-content:center;color:#172015}
.access-visual-brand{display:flex;align-items:baseline;gap:10px;margin:0 0 42px;font-family:Manrope,sans-serif}.access-visual-brand span{font-size:14px;font-weight:800;letter-spacing:.22em}.access-visual-brand strong{font-size:14px;color:#6e9437}.access-visual-brand small{display:block;margin-left:4px;color:#7e897a;font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.access-dashboard-art{position:relative;width:min(100%,540px);height:300px;padding:38px;border:1px solid rgba(68,91,52,.13);border-radius:38px;background:linear-gradient(145deg,rgba(21,27,20,.97),rgba(42,53,38,.94));box-shadow:0 40px 100px rgba(49,67,37,.2);overflow:hidden;transform:perspective(900px) rotateY(5deg) rotateX(2deg)}
.access-dashboard-art:before{content:"";position:absolute;width:230px;height:230px;right:-55px;top:-80px;border-radius:50%;background:radial-gradient(circle,rgba(173,224,94,.25),transparent 68%)}
.access-chart{height:165px;display:flex;align-items:flex-end;gap:18px;padding:18px 12px 0;border-bottom:1px solid rgba(255,255,255,.1)}.access-chart i{display:block;flex:1;border-radius:12px 12px 3px 3px;background:linear-gradient(to top,#6e9539,#b5df73);box-shadow:0 0 24px rgba(163,218,82,.14)}.access-chart i:nth-child(1){height:35%}.access-chart i:nth-child(2){height:56%}.access-chart i:nth-child(3){height:48%}.access-chart i:nth-child(4){height:78%}.access-chart i:nth-child(5){height:94%}
.access-art-copy{display:flex;justify-content:space-between;align-items:end;margin-top:25px;color:#fff}.access-art-copy small,.access-art-copy strong{display:block}.access-art-copy small{color:#aeb8aa;font-size:10px}.access-art-copy strong{font:700 17px Manrope,sans-serif}
.access-float-card{position:absolute;z-index:2;min-width:152px;padding:17px 18px;border:1px solid rgba(255,255,255,.7);border-radius:20px;background:rgba(255,255,255,.84);box-shadow:0 18px 46px rgba(41,58,31,.13);backdrop-filter:blur(18px);animation:accessFloat 7s ease-in-out infinite}.access-float-card span,.access-float-card strong{display:block}.access-float-card span{color:#7b8677;font-size:9px;text-transform:uppercase;letter-spacing:.12em}.access-float-card strong{margin-top:5px;font:800 13px Manrope,sans-serif}.access-float-card i{position:absolute;right:16px;top:16px;color:#78a538;font-style:normal;font-weight:800}.access-float-budget{left:-36px;top:245px}.access-float-savings{right:10px;top:118px;animation-delay:-2.5s}.access-float-helen{right:-24px;bottom:60px;animation-delay:-4.5s}
@keyframes accessFloat{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-8px,0)}}
.access-card{z-index:2;width:min(440px,100%);padding:44px;border-color:rgba(43,60,33,.11);border-radius:32px;background:rgba(255,255,255,.92);box-shadow:0 34px 100px rgba(41,57,31,.16)}
.access-card .access-logo{width:172px;height:48px;margin-bottom:28px}.access-card .access-logo img{object-fit:cover;object-position:center 52%}.access-card h1{max-width:340px;font-size:29px}.access-card>p:not(.section-kicker){margin-bottom:27px}.access-card form label{display:block;margin:15px 0 8px;color:#30362e;font-size:11px;font-weight:800}.access-card form label:first-child{margin-top:0}
.access-input-wrap,.access-password-wrap{display:grid;border:1px solid #d8ded4;border-radius:14px;background:#f7f9f5;overflow:hidden;transition:border-color .2s,box-shadow .2s,background .2s}.access-input-wrap:focus-within,.access-password-wrap:focus-within{border-color:#86ad4c;background:#fff;box-shadow:0 0 0 4px rgba(141,184,77,.13)}.access-input-wrap input,.access-password-wrap input{width:100%;min-width:0;border:0;background:transparent;padding:14px 15px;color:#101312;font:600 14px DM Sans,sans-serif;outline:0}.access-password-wrap{grid-template-columns:1fr 44px}
.access-forgot{display:block;margin:12px 0 2px auto;padding:0;border:0;background:transparent;color:#638c2c;font:700 11px DM Sans,sans-serif;cursor:pointer}.access-forgot:hover{text-decoration:underline}.access-forgot:disabled{opacity:.55}.access-error.success-message{color:#557b27}.access-submit{margin-top:6px;padding:15px;background:linear-gradient(135deg,#111510,#1f291b);box-shadow:0 10px 24px rgba(24,33,20,.14)}.access-privacy span{background:#e7f1dc;color:#638b2e}.access-recovery-form[hidden]{display:none}
@media(prefers-reduced-motion:reduce){.access-float-card{animation:none}}
@media(max-width:960px){.access-screen{grid-template-columns:1fr;padding:24px}.access-visual{display:none}.access-card{justify-self:center}}
@media(max-width:560px){.access-screen{place-items:center;padding:16px;background:linear-gradient(155deg,#edf4e7,#f8faf5 52%,#e4eed9)}.access-card{padding:30px 24px 26px;border-radius:27px}.access-card .access-logo{width:154px;height:44px;margin-bottom:22px}.access-card h1{font-size:26px}.access-card>p:not(.section-kicker){font-size:12px}.access-privacy{margin-top:18px;padding-top:17px}}

/* Premium auth refinement */
.access-screen{background:linear-gradient(125deg,#e6f0dd,#f9fbf7,#edf4e7,#dcebd0);background-size:280% 280%;animation:accessGradient 18s ease infinite}
.access-screen:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 20% 22%,rgba(183,225,114,.25),transparent 26%),radial-gradient(circle at 82% 72%,rgba(102,145,63,.14),transparent 30%)}
@keyframes accessGradient{0%,100%{background-position:0% 45%}50%{background-position:100% 56%}}
.access-dashboard-art{height:340px;padding:30px 34px;background:linear-gradient(145deg,rgba(13,17,13,.98),rgba(39,51,34,.96));box-shadow:0 42px 110px rgba(38,56,28,.25),0 0 70px rgba(158,211,82,.11)}
.access-art-top{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto;gap:3px;color:#fff}.access-art-top span,.access-art-top strong{display:block}.access-art-top span{color:#aeb9aa;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.access-art-top strong{font:750 15px Manrope,sans-serif}.access-art-top i{grid-column:2;grid-row:1/3;align-self:center;padding:5px 7px;border:1px solid rgba(190,226,136,.25);border-radius:7px;color:#b8df7a;background:rgba(168,211,101,.08);font:700 7px Manrope,sans-serif;letter-spacing:.12em}
.access-chart{height:132px;gap:15px;padding:19px 10px 0}.access-chart i{border-radius:9px 9px 2px 2px}
.access-mini-widgets{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:18px}.access-mini-widgets>div{min-width:0;padding:10px;border:1px solid rgba(255,255,255,.07);border-radius:11px;background:rgba(255,255,255,.045)}.access-mini-widgets span,.access-mini-widgets strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.access-mini-widgets span{color:#9ea99a;font-size:7px}.access-mini-widgets strong{margin-top:5px;color:#f1f5ee;font:700 9px Manrope,sans-serif}.access-mini-widgets>div:first-child strong,.access-mini-widgets>div:nth-child(3) strong{color:#b8df7a}
.access-float-card{background:rgba(255,255,255,.7);border-color:rgba(255,255,255,.78);box-shadow:0 18px 48px rgba(42,61,29,.14),inset 0 1px 0 rgba(255,255,255,.8);backdrop-filter:blur(22px) saturate(135%)}
.access-float-budget{top:275px}.access-float-savings{top:105px}.access-float-helen{bottom:22px}
.access-card{position:relative;overflow:hidden;padding:46px;background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(255,255,255,.64));border:1px solid rgba(255,255,255,.82);box-shadow:0 34px 100px rgba(41,57,31,.17),inset 0 1px 0 rgba(255,255,255,.95);backdrop-filter:blur(34px) saturate(145%)}
.access-card:before{content:"";position:absolute;width:240px;height:240px;right:-110px;top:-130px;border-radius:50%;background:radial-gradient(circle,rgba(171,222,96,.2),transparent 68%);pointer-events:none}
.access-card .access-logo{position:relative;width:218px;height:62px;margin-bottom:24px}.access-card .section-kicker{position:relative;letter-spacing:.17em}.access-card h1{position:relative;font-size:31px;letter-spacing:-.045em}.access-card>p:not(.section-kicker){position:relative;font-size:13px;line-height:1.65}
.access-input-wrap,.access-password-wrap{box-sizing:border-box;height:52px;min-height:52px;border-radius:15px;background:rgba(247,249,245,.82)}
.access-input-wrap input,.access-password-wrap input{box-sizing:border-box;height:50px;padding:0 15px;line-height:50px}
.access-password-wrap{grid-template-columns:minmax(0,1fr) 50px;align-items:center}.access-password-wrap .access-eye{box-sizing:border-box;width:50px;height:50px;padding:0;display:grid;place-items:center;border:0;background:transparent;color:#788074;cursor:pointer;outline:0}.access-password-wrap .access-eye svg{width:18px;height:18px;display:block;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s ease,color .18s ease}.access-password-wrap .access-eye:hover svg{color:#608e2d;transform:scale(1.06)}.access-password-wrap .access-eye.visible svg{color:#608e2d}.access-password-wrap .access-eye:focus-visible{box-shadow:inset 0 0 0 2px #8bb84d;border-radius:11px}
.access-submit{height:50px;border-radius:15px;font-size:13px;letter-spacing:.01em;box-shadow:0 12px 28px rgba(28,40,21,.18),0 0 28px rgba(134,183,72,.08)}
@media(prefers-reduced-motion:reduce){.access-screen{animation:none}}
@media(max-width:560px){.access-screen{animation-duration:24s}.access-card{padding:31px 24px 27px;background:rgba(255,255,255,.78)}.access-card .access-logo{width:188px;height:53px;margin-bottom:20px}.access-card h1{font-size:27px}.access-input-wrap,.access-password-wrap{height:50px;min-height:50px}.access-input-wrap input,.access-password-wrap input,.access-password-wrap .access-eye{height:48px}.access-password-wrap .access-eye{width:48px}}
