@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap";
:root{--bg:#f4f3ef;--card:#fffdfa;--ink:#19201d;--muted:#778079;--line:#dedfd8;--deep:#183c31;--lime:#d8ee77;--violet:#7561c9;--orange:#df915b;--blue:#5d9ac4;--shadow:0 18px 50px #193c3110}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:Manrope,system-ui,sans-serif}button,input,select{font:inherit}button{cursor:pointer}.app{grid-template-columns:240px 1fr;min-height:100vh;display:grid}.rail{background:var(--deep);color:#edf4e7;flex-direction:column;min-height:100vh;padding:30px 18px 20px;display:flex}.brand{align-items:center;gap:11px;padding:0 10px 34px;display:flex}.brand-mark{background:var(--lime);width:34px;height:34px;color:var(--deep);border-radius:10px;place-items:center;font-size:21px;font-weight:800;display:grid}.brand b{letter-spacing:-.04em;font-size:16px;display:block}.brand small{color:#99b3a7;margin-top:2px;font-size:10px;display:block}.rail-label,.eyebrow{letter-spacing:.13em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:800}.rail-label{color:#77988b;padding:0 10px 10px}.rail nav{gap:4px;display:grid}.rail nav button{color:#a8c0b4;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:11px;height:43px;padding:0 11px;display:flex}.rail nav button:hover,.rail nav button.active{color:#fff;background:#285548}.rail nav svg,.top-actions svg,.panel svg,.empty svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.rail nav em{color:#fff;background:#e48783;border-radius:20px;margin-left:auto;padding:2px 7px;font-size:10px;font-style:normal}.rail-bottom{margin-top:auto}.secure{border-top:1px solid #2f5b4c;align-items:center;gap:9px;padding:17px 9px;display:flex}.secure span{background:var(--lime);border-radius:50%;width:8px;height:8px}.secure b,.secure small,.profile b,.profile small{display:block}.secure b{font-size:10px}.secure small{color:#82a396;margin-top:3px;font-size:9px}.profile{color:#fff;text-align:left;background:0 0;border:0;border-top:1px solid #2f5b4c;grid-template-columns:34px 1fr auto;align-items:center;gap:9px;padding:17px 7px 0;display:grid}.profile>span:first-child,.avatar{width:32px;height:32px;color:var(--deep);background:#d7eb8a;border-radius:50%;place-items:center;font-size:10px;font-weight:800;display:grid}.profile b{font-size:10px}.profile small{color:#83a499;margin-top:3px;font-size:9px}.profile>span:last-child{color:#83a499}.content{width:100%;max-width:1480px;margin:auto;padding:0 44px 70px}.topbar{justify-content:space-between;align-items:center;padding:35px 0 26px;display:flex}.topbar h1{letter-spacing:-.055em;margin:3px 0 0;font-size:32px}.top-actions{align-items:center;gap:9px;display:flex}.ghost,.primary,.icon-btn{border:1px solid var(--line);background:var(--card);height:42px;color:var(--ink);border-radius:9px;padding:0 14px;font-size:11px;font-weight:700}.primary{border-color:var(--deep);background:var(--deep);color:#fff;align-items:center;gap:8px;display:flex}.primary:hover{transform:translateY(-1px);box-shadow:0 7px 15px #183c3120}.avatar{border:0}.hero-card{background:var(--deep);color:#edf4e7;box-shadow:var(--shadow);border-radius:16px;justify-content:space-between;gap:30px;padding:31px 34px;display:flex}.hero-card h2{letter-spacing:-.06em;margin:14px 0 8px;font-size:29px}.hero-card p{color:#a9c0b5;max-width:480px;margin:0;font-size:13px;line-height:1.6}.status-dot{background:var(--lime);border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}.live{color:var(--lime);letter-spacing:.09em;font-family:DM Mono,monospace;font-size:10px}.hero-side{flex-direction:column;gap:8px;min-width:210px;display:flex}.hero-side>span{color:#89a99b;text-transform:uppercase;letter-spacing:.12em;font-size:10px}.hero-side select{color:#fff;background:#285548;border:1px solid #4b7464;border-radius:8px;padding:10px}.hero-link{color:var(--lime);text-align:left;background:0 0;border:0;align-items:center;gap:7px;padding:8px 0;font-size:11px;font-weight:700;display:flex}.metric-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin:14px 0;display:grid}.metric{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);border-radius:13px;padding:18px 20px;position:relative;overflow:hidden}.metric:after{content:"";background:var(--tone);opacity:.14;border-radius:50%;width:90px;height:90px;position:absolute;bottom:-38px;right:-28px}.metric.green{--tone:#79b28b}.metric.orange{--tone:var(--orange)}.metric.blue{--tone:var(--blue)}.metric.violet{--tone:var(--violet)}.metric>span{color:var(--muted);font-size:10px;font-weight:700}.metric strong{letter-spacing:-.06em;margin:14px 0 7px;font-size:28px;display:block}.metric small{color:var(--muted);font-size:10px}.section-grid{grid-template-columns:1.4fr 1fr;gap:14px;margin-top:14px;display:grid}.panel{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);border-radius:14px;min-width:0;padding:22px}.panel-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:15px;display:flex}.panel h3{letter-spacing:-.04em;margin:4px 0 0;font-size:16px}.text-btn{color:#5f8f69;background:0 0;border:0;align-items:center;gap:6px;font-size:10px;font-weight:800;display:flex}.icon-btn{place-items:center;width:35px;height:35px;padding:0;display:grid}.empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:190px;padding:20px;display:flex}.empty-icon{color:#9aa39b;background:#f0f1e9;border-radius:12px;place-items:center;width:38px;height:38px;margin-bottom:12px;display:grid}.empty b{font-size:13px}.empty p{color:var(--muted);max-width:270px;margin:8px 0 13px;font-size:11px;line-height:1.5}.empty button{color:#5f8f69;background:0 0;border:0;align-items:center;gap:6px;font-size:10px;font-weight:800;display:flex}.empty button svg{width:14px}.empty-chart{grid-template-rows:1fr 22px;grid-template-columns:35px 1fr;height:235px;display:grid;position:relative}.chart-axis{color:#a2aaa2;flex-direction:column;justify-content:space-between;padding:6px 0 4px;font:9px DM Mono,monospace;display:flex}.chart-lines{background:repeating-linear-gradient(to bottom,transparent 0,transparent calc(33.33% - 1px),var(--line) calc(33.33% - 1px),var(--line) 33.33%);border-bottom:1px solid var(--line);position:relative}.chart-lines p{color:#959e96;place-items:center;font-size:11px;display:grid;position:absolute;inset:0}.chart-months{color:#a2aaa2;grid-column:2;justify-content:space-around;padding-top:8px;font:9px DM Mono,monospace;display:flex}.upcoming-list>div{border-top:1px solid var(--line);grid-template-columns:44px 1fr auto;align-items:center;gap:10px;padding:13px 0;display:grid}.upcoming-list b,.upcoming-list small{display:block}.upcoming-list b{font-size:11px}.upcoming-list small{color:var(--muted);margin-top:3px;font-size:9px}.upcoming-list strong{font-size:11px}.date-pill{color:#527e62;text-align:center;background:#edf4e7;border-radius:7px;padding:7px 4px;font:9px DM Mono,monospace}.count-badge{color:#cf716e;background:#f5e9e7;border-radius:50%;place-items:center;width:28px;height:28px;font:11px DM Mono,monospace;display:grid}.page-body{gap:14px;display:grid}.intro-panel{background:linear-gradient(135deg,#eaf1dc,#fffdfa);min-height:220px}.intro-panel h2{letter-spacing:-.07em;margin:10px 0;font-size:34px}.intro-panel>p:not(.eyebrow){color:var(--muted);max-width:510px;font-size:13px;line-height:1.6}.feature-row{justify-content:space-between;align-items:end;margin-top:32px;display:flex}.feature-row b{letter-spacing:-.06em;font-size:34px;display:block}.feature-row span{color:var(--muted);font-size:10px}.table-panel{min-height:450px}.table{border-top:1px solid var(--line)}.row{border-bottom:1px solid var(--line);grid-template-columns:100px 1.4fr 1.2fr 90px 120px;align-items:center;gap:10px;padding:14px 0;font-size:10px;display:grid}.row>span{color:var(--muted)}.row strong{text-align:right}.row .expense{color:#bd6b56}.row .income{color:#4b8d63}.review-tag{color:#ae8144;text-align:center;background:#f5efe3;border-radius:20px;padding:4px 7px;font-size:9px}.modal-backdrop{z-index:20;background:#14251e80;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:var(--card);border-radius:16px;width:min(460px,100%);padding:25px;box-shadow:0 25px 80px #0004}.modal-head{justify-content:space-between;display:flex}.modal h2{letter-spacing:-.06em;margin:4px 0 22px;font-size:24px}.close{color:var(--muted);background:0 0;border:0;height:30px;font-size:26px}.modal label{color:var(--muted);margin:15px 0;font-size:10px;font-weight:800;display:block}.modal input,.modal select{border:1px solid var(--line);width:100%;height:44px;color:var(--ink);background:#fff;border-radius:8px;margin-top:6px;padding:0 11px;font-size:12px;display:block}.form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.wide{justify-content:center;width:100%;margin-top:14px}.toast{background:var(--deep);color:#fff;z-index:30;border-radius:9px;padding:13px 16px;font-size:11px;position:fixed;bottom:24px;right:24px;box-shadow:0 12px 30px #0003}@media (max-width:900px){.app{grid-template-columns:1fr}.rail{min-height:auto;padding:14px 16px}.brand{padding:0 4px 14px}.rail-label{display:none}.rail nav{gap:5px;display:flex;overflow:auto}.rail nav button{min-width:max-content;height:38px;padding:0 10px}.rail-bottom{display:none}.content{padding:0 18px 50px}.topbar{padding-top:24px}.metric-grid{grid-template-columns:1fr 1fr}.section-grid{grid-template-columns:1fr}.hero-card{flex-direction:column}.hero-side{min-width:0}.row{grid-template-columns:80px 1fr 90px}.row>span:nth-child(3){display:none}.row strong{grid-area:1/3}.row .review-tag{grid-column:3}}@media (max-width:560px){.topbar{flex-direction:column;align-items:flex-start;gap:14px}.top-actions{width:100%}.top-actions .ghost,.top-actions .primary{flex:1}.metric-grid{grid-template-columns:1fr}.hero-card{padding:24px}.hero-card h2{font-size:25px}.panel{padding:18px}.form-grid{grid-template-columns:1fr}.row{grid-template-columns:72px 1fr 82px;gap:7px}.row b,.row strong{font-size:10px}}.sync-strip{background:#f0f5e9;border:1px solid #d5dfc8;border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:14px;padding:12px 15px;display:flex}.sync-strip>div{align-items:center;gap:9px;display:flex}.sync-strip .status-dot{background:#75ad75;margin:0}.sync-strip b,.sync-strip small{display:block}.sync-strip b{font-size:11px}.sync-strip small{color:var(--muted);margin-top:3px;font-size:9px}.review-hero{align-items:end}.checklist{padding-bottom:8px}.check-row{text-align:left;border:0;border-top:1px solid var(--line);width:100%;color:var(--ink);background:0 0;grid-template-columns:30px 1fr 20px;align-items:center;gap:12px;padding:16px 2px;display:grid}.check-row>span{width:26px;height:26px;color:var(--muted);border:1px solid #c9cec6;border-radius:50%;place-items:center;font:11px DM Mono,monospace;display:grid}.check-row.done>span{background:var(--deep);border-color:var(--deep);color:var(--lime)}.check-row b,.check-row small{display:block}.check-row b{font-size:11px}.check-row small{color:var(--muted);margin-top:3px;font-size:10px}.check-row svg{color:#6c9b78;width:15px}.check-row.done b{color:#5c8e67}.error-banner{color:#813f32;background:#fff0ed;border:1px solid #e8b9af;border-radius:10px;align-items:center;gap:12px;margin-bottom:14px;padding:13px 15px;display:flex}.error-banner b{font-size:11px}.error-banner span{flex:1;font-size:10px}.error-banner button{color:#fff;background:#813f32;border:0;border-radius:7px;padding:7px 10px;font-size:10px}.hero-side strong{color:#fff;font-size:12px}.pipeline{display:grid}.pipeline p{border-top:1px solid var(--line);grid-template-columns:90px 1fr;gap:14px;margin:0;padding:14px 0;font-size:11px;display:grid}.pipeline p b{color:#47745c}.pipeline p span{color:var(--muted)}.pipeline p.current b{color:#c2703f}.plain-copy{color:var(--muted);margin:20px 0;font-size:11px;line-height:1.7}.document-list{display:grid}.document-list article{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:14px 0;display:flex}.document-list b,.document-list small{display:block}.document-list b{font-size:11px}.document-list small{color:var(--muted);text-transform:capitalize;margin-top:4px;font-size:9px}.doc-status{text-transform:capitalize;color:#9c723c;background:#f3eee4;border-radius:20px;padding:5px 8px;font-size:9px}.doc-status.parsed{color:#4d7b58;background:#e7f2e8}.form-error{color:#a34438;background:#fff0ed;border-radius:7px;padding:9px;font-size:10px}.table-note{color:var(--muted);text-align:right;max-width:190px;font-size:9px;line-height:1.45}.transaction-row{border-bottom:1px solid var(--line);grid-template-columns:74px minmax(260px,1fr) minmax(120px,.35fr) 138px 82px;align-items:center;gap:18px;padding:17px 0;display:grid}.transaction-row time b,.transaction-row time small,.transaction-amount small{display:block}.transaction-row time b{color:var(--ink);font:500 12px DM Mono,monospace}.transaction-row time small{color:var(--muted);margin-top:4px;font-size:9px}.transaction-title{grid-template-columns:34px 1fr;align-items:start;gap:11px;display:grid}.merchant-mark{color:#4f7860;background:#e8efe7;border-radius:10px;place-items:center;width:34px;height:34px;font-size:12px;font-weight:800;display:grid}.merchant-mark.income{color:#3f8257;background:#e3f1e7}.merchant-mark.expense{color:#af674f;background:#f7e9e1}.transaction-title h4{letter-spacing:-.025em;margin:0 0 4px;font-size:12px;line-height:1.35}.transaction-title p{color:var(--muted);margin:0;font-size:9px;line-height:1.5}.transaction-understanding summary{color:#789087;cursor:pointer;width:max-content;font-size:8px;list-style:none}.transaction-understanding summary:after{content:" +";color:#9ca9a2}.transaction-understanding details[open] summary:after{content:" −"}.transaction-understanding details>p{color:#8b938d;background:#f6f6f2;border-left:2px solid #dce1db;margin:6px 0 0;padding:8px 10px;font:9px/1.5 DM Mono,monospace}.transaction-tags{flex-wrap:wrap;gap:5px;display:flex}.transaction-tags span{color:#5d7168;text-transform:capitalize;background:#eef1eb;border-radius:20px;padding:5px 7px;font-size:8px}.transaction-amount strong{font-size:12px;display:block}.transaction-amount .expense{color:#ad5f49}.transaction-amount .income{color:#3f8257}.transaction-amount small{color:var(--muted);margin-top:5px;font-size:8px;line-height:1.35}.confidence{text-align:center;color:#976c34;background:#f4eadb;border-radius:20px;padding:5px 7px;font-size:8px}.confidence.matched{color:#4b7d58;background:#e5f1e6}@media (max-width:1100px){.transaction-row{grid-template-columns:65px minmax(230px,1fr) 120px 76px}.transaction-tags{display:none}}@media (max-width:700px){.table-note{display:none}.transaction-row{grid-template-columns:54px 1fr 92px;align-items:start;gap:10px}.transaction-amount{grid-area:1/3}.confidence{grid-area:2/3}.transaction-title{grid-template-columns:28px 1fr;gap:8px}.merchant-mark{border-radius:8px;width:28px;height:28px}.transaction-understanding details{margin-left:36px}.transaction-amount small{max-width:90px;margin-left:auto}}.transaction-amount small b{color:#52675e;font-weight:700}.transaction-filters{border:1px solid var(--line);background:#f7f7f2;border-radius:11px;grid-template-columns:minmax(150px,1fr) 132px 132px minmax(170px,1fr) 150px auto;align-items:end;gap:9px;margin-bottom:12px;padding:13px;display:grid}.transaction-filters label span{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 5px;font-size:8px;font-weight:800;display:block}.transaction-filters select,.transaction-filters input{width:100%;height:37px;color:var(--ink);background:#fff;border:1px solid #d8dad3;border-radius:8px;padding:0 9px;font-size:10px}.filter-reset{border:1px solid var(--line);background:var(--card);color:#52675e;border-radius:8px;height:37px;padding:0 12px;font-size:9px;font-weight:800}.filter-reset:disabled{opacity:.42;cursor:default}@media (max-width:1050px){.transaction-filters{grid-template-columns:repeat(3,1fr)}}@media (max-width:620px){.transaction-filters{grid-template-columns:1fr 1fr}.transaction-filters label:first-child,.transaction-filters label:nth-child(4),.transaction-filters label:nth-child(5),.filter-reset{grid-column:span 2}}.dashboard-grid{grid-template-columns:1.15fr .85fr;gap:14px;margin-top:14px;display:grid}.lower-grid{align-items:stretch}.month-bars i{border-radius:4px 4px 0 0;width:9px;min-height:0;transition:height .5s}.signal-0,.signal-1,.signal-2{animation:.45s both signalIn}.signal-1{animation-delay:60ms}.signal-2{animation-delay:.12s}@keyframes signalIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.signal-0,.signal-1,.signal-2{animation:none}.month-bars i{transition:none}}.transaction-scroll{overflow-x:auto}.transaction-columns,.transaction-row{grid-template-columns:76px 72px 145px 115px 145px minmax(220px,1fr) 110px 125px 80px;align-items:center;gap:12px;min-width:1120px;display:grid}.transaction-columns{border-top:1px solid var(--line);border-bottom:1px solid var(--line);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:9px 0;font-size:8px;font-weight:800}.transaction-table{border-top:0}.transaction-row{padding:15px 0}.transaction-time,.payment-type,.account-name{color:#5e6d66;font-size:9px;line-height:1.45}.transaction-merchant{align-items:center;gap:8px;min-width:0;display:flex}.transaction-merchant b{text-overflow:ellipsis;font-size:10px;overflow:hidden}.transaction-merchant .merchant-mark{border-radius:8px;flex:none;width:28px;height:28px}.transaction-understanding h4{margin:0 0 3px;font-size:10px;line-height:1.35}.transaction-understanding>p{color:var(--muted);margin:0;font-size:8px;line-height:1.4}.transaction-understanding details{margin:5px 0 0}.transaction-tags{align-content:center}.transaction-amount{text-align:right}@media (max-width:1100px){.transaction-row{grid-template-columns:76px 72px 145px 115px 145px minmax(220px,1fr) 110px 125px 80px}.transaction-tags{display:flex}}@media (max-width:700px){.transaction-row{grid-template-columns:76px 72px 145px 115px 145px minmax(220px,1fr) 110px 125px 80px}.transaction-amount,.confidence{grid-area:auto}.transaction-understanding details{margin-left:0}}.dashboard-grid{grid-template-columns:1.15fr .85fr}.dashboard-grid .panel{min-height:316px}.hero-chips{flex-wrap:wrap;gap:7px;margin-top:20px;display:flex}.hero-chips span{color:#d0dfd1;background:#ffffff08;border:1px solid #76988666;border-radius:20px;padding:6px 9px;font-size:9px}.dashboard-hero{background:radial-gradient(circle at 80% 10%,#326451 0,#183c31 48%);position:relative;overflow:hidden}.dashboard-hero:after{content:"";border:1px solid #b8d98b30;border-radius:50%;width:310px;height:310px;position:absolute;bottom:-100px;right:-60px;box-shadow:0 0 0 24px #b8d98b08,0 0 0 48px #b8d98b06}.signal-badge{color:#789c82;background:#edf4e7;border-radius:20px;padding:6px 9px;font:10px DM Mono,monospace}.signal-list{gap:7px;display:grid}.signal{border:1px solid var(--line);background:#fff;border-radius:10px;grid-template-columns:32px 1fr auto;align-items:center;gap:10px;padding:13px 12px;display:grid}.signal-icon{color:#568064;background:#eaf2e5;border-radius:8px;place-items:center;width:29px;height:29px;font:15px DM Mono,monospace;display:grid}.signal-1 .signal-icon{color:#ad7e40;background:#f8efe1}.signal-2 .signal-icon{color:#5e789b;background:#e9edf4}.signal b{font-size:10px;display:block}.signal p{color:var(--muted);margin:3px 0 0;font-size:9px;line-height:1.4}.signal>strong{color:#4f7e5c;font-size:11px}.category-bars{gap:16px;padding-top:5px;display:grid}.category-row>div:first-child{justify-content:space-between;align-items:center;display:flex}.category-row span{font-size:10px}.category-row b{color:#4f6b5b;font:10px DM Mono,monospace}.category-row small{color:var(--muted);margin-top:5px;font-size:8px;display:block}.bar-track{background:#edf0ea;border-radius:20px;height:7px;margin-top:8px;overflow:hidden}.bar-track i{background:linear-gradient(90deg,#82ad75,#d5e879);border-radius:20px;height:100%;display:block}.mini-chart{grid-template-columns:52px 1fr;min-height:206px;padding-top:8px;display:grid}.mini-chart-axis{color:var(--muted);flex-direction:column;justify-content:space-between;padding:10px 0 26px;font-size:8px;display:flex}.mini-chart-body{border-bottom:1px solid var(--line);background:repeating-linear-gradient(to bottom,transparent 0,transparent calc(33.33% - 1px),var(--line) calc(33.33% - 1px),var(--line) 33.33%);justify-content:space-around;align-items:end;gap:7px;padding:0 8px;display:flex;position:relative}.mini-chart-body>p{color:var(--muted);text-align:center;align-self:center;font-size:10px}.month-column{flex-direction:column;justify-content:end;align-items:center;gap:7px;min-width:30px;height:100%;display:flex}.month-bars{align-items:end;gap:4px;height:170px;display:flex}.month-bars i{border-radius:4px 4px 0 0;width:9px}.income-bar{background:#77a86e}.expense-bar{background:#db9368}.month-column small{color:var(--muted);padding-bottom:7px;font:8px DM Mono,monospace}.chart-legend{color:var(--muted);gap:16px;margin:10px 0 0 52px;font-size:9px;display:flex}.chart-legend span{align-items:center;gap:5px;display:flex}.chart-legend i{border-radius:50%;width:7px;height:7px;display:inline-block}.legend-income{background:#77a86e}.legend-expense{background:#db9368}.attention-list{gap:9px;display:grid}.attention-list>button{border:1px solid var(--line);text-align:left;color:var(--ink);background:#fff;border-radius:10px;grid-template-columns:30px 1fr 15px;align-items:center;gap:9px;padding:12px;display:grid}.attention-list>button:hover{background:#f9fbf6;border-color:#abc49c}.attention-count{color:#a7743a;background:#f6eee5;border-radius:50%;place-items:center;width:28px;height:28px;font:11px DM Mono,monospace;display:grid}.attention-list b,.attention-list small{display:block}.attention-list b{font-size:10px}.attention-list small{color:var(--muted);margin-top:3px;font-size:9px}.attention-list>button>span:last-child{color:#71937a}.attention-note{color:#7b9385;align-items:flex-start;gap:9px;padding:10px 2px;display:flex}.attention-note>span{font-size:16px}.attention-note p{margin:0;font-size:9px;line-height:1.5}@media (max-width:900px){.dashboard-grid{grid-template-columns:1fr}.dashboard-grid .panel{min-height:0}}@media (max-width:560px){.hero-chips{gap:5px}.hero-chips span{font-size:8px}.signal{grid-template-columns:29px 1fr auto;padding:11px 9px}.signal p{font-size:8px}.month-bars{height:145px}.chart-legend{margin-left:0}.mini-chart{grid-template-columns:42px 1fr}}.login-page{background:radial-gradient(circle at 20% 0,#e8f0dd 0,#f4f3ef 44%,#eef0eb 100%);place-items:center;min-height:100vh;padding:22px;display:grid}.login-card{border:1px solid var(--line);background:#fffdfa;border-radius:18px;width:min(420px,100%);padding:34px;box-shadow:0 24px 70px #183c3118}.login-brand{padding:0 0 54px}.login-card h1{letter-spacing:-.07em;margin:10px 0 8px;font-size:36px}.login-copy{color:var(--muted);margin:0 0 25px;font-size:12px;line-height:1.6}.login-card label{color:var(--muted);font-size:10px;font-weight:800;display:block}.login-card input{border:1px solid var(--line);width:100%;height:46px;color:var(--ink);background:#fff;border-radius:9px;margin-top:7px;padding:0 12px;font-size:13px;display:block}.login-foot{color:#9aa49c;text-align:center;margin-top:20px;font-size:9px;display:block}.deep-grid{grid-template-columns:1fr 1fr;gap:14px;margin-top:14px;display:grid}.deep-grid .panel{min-height:300px}.purpose-list,.merchant-list,.account-list{gap:4px;display:grid}.purpose-row{border-bottom:1px solid var(--line);grid-template-columns:30px 1fr auto;align-items:center;gap:9px;padding:10px 0;display:grid}.purpose-avatar,.account-orb{color:#527a5d;background:#edf3e9;border-radius:9px;place-items:center;width:28px;height:28px;font:11px DM Mono,monospace;display:grid}.purpose-copy b,.purpose-copy small,.merchant-row b,.merchant-row small,.account-row b,.account-row small{display:block}.purpose-copy b,.merchant-row b,.account-row b{font-size:10px}.purpose-copy small,.merchant-row small,.account-row small{color:var(--muted);margin-top:3px;font-size:8px}.purpose-row>strong,.merchant-row>strong{color:#4e715b;font:10px DM Mono,monospace}.purpose-track{background:#edf0ea;border-radius:20px;grid-column:2/4;height:5px;overflow:hidden}.purpose-track i{background:#8caf75;border-radius:20px;height:100%;display:block}.merchant-row{border-bottom:1px solid var(--line);grid-template-columns:30px 1fr auto;align-items:center;gap:9px;padding:13px 0;display:grid}.merchant-rank{color:#9ca69e;font:10px DM Mono,monospace}.account-row{border-bottom:1px solid var(--line);grid-template-columns:30px 1fr auto;align-items:center;gap:10px;padding:12px 0;display:grid}.account-numbers{text-align:right}.account-numbers strong,.account-numbers small{display:block}.account-numbers strong{color:#4d7659;font:10px DM Mono,monospace}.account-numbers small{color:var(--muted);margin-top:3px;font-size:8px}.estimate-badge{color:#a77a3a;background:#f5ead9;border-radius:20px;padding:6px 8px;font:9px DM Mono,monospace}.outlook-number{color:#315b45;letter-spacing:-.08em;margin:20px 0 16px;font:31px DM Mono,monospace}.outlook-number small{color:var(--muted);letter-spacing:0;margin-top:4px;font:9px Manrope,sans-serif;display:block}.outlook-grid{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.outlook-grid div{border-bottom:1px solid var(--line);padding:12px 8px 8px 0}.outlook-grid div:nth-child(2n){border-left:1px solid var(--line);padding-left:10px}.outlook-grid span,.outlook-grid b{display:block}.outlook-grid span{color:var(--muted);font-size:8px}.outlook-grid b{color:#4b7456;margin-top:5px;font:11px DM Mono,monospace}.outlook-note{color:var(--muted);margin:15px 0 0;font-size:9px;line-height:1.5}@media (max-width:900px){.deep-grid{grid-template-columns:1fr}.deep-grid .panel{min-height:0}}@media (max-width:560px){.purpose-row{grid-template-columns:28px 1fr auto}.outlook-number{font-size:26px}}.settings-page{background:var(--canvas);min-height:100vh;padding:48px 24px}.settings-card{background:var(--surface);border:1px solid var(--line);max-width:860px;box-shadow:var(--shadow);border-radius:24px;margin:0 auto;padding:34px}.back-link{color:var(--muted);font-size:13px;text-decoration:none}.settings-copy{max-width:640px;color:var(--muted);line-height:1.6}.connection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:28px;display:grid}.connection-tile{border:1px solid var(--line);background:var(--surface-soft);border-radius:16px;gap:16px;padding:22px;display:flex}.connection-icon{background:var(--ink);color:#fff;border-radius:12px;flex:none;place-items:center;width:38px;height:38px;display:grid}.connection-tile h2{margin:0 0 7px;font-size:17px}.connection-tile p{color:var(--muted);margin:0 0 18px;font-size:13px;line-height:1.5}.button-primary{background:var(--accent);color:#fff;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:700;text-decoration:none;display:inline-block}.connection-success{color:#176b38;background:#e9f6ed;border-radius:10px;padding:12px 14px;font-size:13px}.connection-error{color:#9c3827;background:#fff0ed;border-radius:10px;padding:12px 14px;font-size:13px}.settings-note{color:var(--muted);margin:26px 0 0;font-size:12px}@media (max-width:700px){.connection-grid{grid-template-columns:1fr}.settings-card{padding:24px}}
