:root{--bg:#09121f;--panel:#111d2e;--line:#263449;--muted:#99a9bd;--white:#f5f8fc;--mint:#50e4b0;--purple:#777cfb;color-scheme:dark;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:radial-gradient(circle at 75% -10%,#1b3150 0,transparent 30%),var(--bg);color:var(--white);min-height:100vh}.shell{margin:0 auto;max-width:640px;min-height:100vh;padding:0 18px 108px}.topbar{display:flex;align-items:center;justify-content:space-between;padding:26px 0 25px}.brand{display:flex;align-items:center;gap:12px}.brand-logo{width:41px;height:41px;border-radius:13px;background:linear-gradient(135deg,#56e7c2,#4f8eea);display:flex;align-items:center;justify-content:center;color:#071722;font-size:25px;font-weight:900}.eyebrow{letter-spacing:.16em;color:#8e9fb5;font-weight:800;font-size:9px}.brand-title{font-size:19px;font-weight:820;letter-spacing:-.5px;margin-top:3px}.brand-title span{color:#54dbaf}.chip,.subtle-pill{border-radius:20px;font-size:10px;padding:8px 11px;border:1px solid #385269;background:#152637;color:#b9daed;font-weight:700}.chip.ok{color:#67e1b2;border-color:#285b4d;background:#132e2b}.chip.warning{color:#f6c979;border-color:#765737;background:#362a24}.hidden{display:none!important}.hero{position:relative;overflow:hidden;border-radius:25px;padding:25px;background:linear-gradient(120deg,#164550 0%,#185d65 35%,#28614c 95%);box-shadow:0 17px 38px rgba(0,0,0,.22);margin-bottom:28px}.hero-shine{position:absolute;right:-12%;top:-70%;width:65%;height:260px;background:radial-gradient(circle,#a1fcbd50,transparent 64%);pointer-events:none}.hero-top{display:flex;justify-content:space-between;position:relative;color:#cfebe8;font-size:10px;letter-spacing:.11em;font-weight:750}.hero-amount{position:relative;font-weight:820;font-size:clamp(38px,9vw,56px);letter-spacing:-2px;padding:25px 0 15px}.hero-foot{position:relative;display:flex;justify-content:space-between;font-size:12px;color:#daf6e9}.section-heading{display:flex;align-items:baseline;justify-content:space-between;margin:24px 2px 13px;gap:10px}.section-heading h2{font-size:17px;margin:0;letter-spacing:-.4px}.section-heading>span{font-size:11px;color:var(--muted)}.stats{display:grid;grid-template-columns:1fr 1fr;gap:11px}.tile{border:1px solid #26364b;background:linear-gradient(145deg,#142237,#111c2b);padding:16px;border-radius:19px;min-height:125px;display:flex;flex-direction:column;align-items:flex-start;gap:9px}.tile-icon{width:29px;height:29px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:18px}.sapphire{background:#203d65;color:#8bc3ff}.violet{background:#3a315e;color:#baaaff}.amber{background:#453926;color:#ffe1a3}.emerald{background:#1b493d;color:#8af0c8}.tile span{font-size:11px;color:var(--muted)}.tile strong{font-size:18px;letter-spacing:-.55px}.card-list{display:grid;gap:10px;margin-bottom:19px}.bank-card{border:1px solid #29384b;border-radius:16px;padding:15px;background:#101c2c;display:flex;justify-content:space-between;align-items:center}.bank-name{display:flex;align-items:center;gap:11px}.bank-name div:last-child{display:grid;gap:3px}.bank-name b{font-size:14px}.bank-name small{font-size:11px;color:var(--muted)}.bank-card>strong{font-size:15px}.bank-icon{width:38px;height:38px;border-radius:13px;font-size:16px;font-weight:900;display:flex;justify-content:center;align-items:center}.blue{background:#ffdb24;color:#090b11}.orange{background:#f5663a;color:#fff}.primary,.secondary{border:0;border-radius:14px;padding:16px 18px;font:inherit;cursor:pointer;font-size:14px;font-weight:750;width:100%}.primary{background:linear-gradient(115deg,#59dba9,#32cda7);color:#082d25;display:flex;align-items:center;justify-content:space-between;box-shadow:0 8px 22px #1ac59129}.primary:disabled{cursor:default;opacity:.45;box-shadow:none}.secondary{border:1px solid #3e5165;background:#1c2a3c;color:#d9e5f0;margin-top:9px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:5px 0}.page-heading h1{font-size:26px;letter-spacing:-.8px;margin:7px 0}.lead{font-size:13px;line-height:1.6;color:#9eb2c6;margin:0 0 22px}.field-card{border:1px solid #2d3b4e;border-radius:19px;padding:18px;margin:11px 0;background:#111e30}.field-top{display:flex;gap:12px;align-items:center}.field-top>div{display:grid;gap:4px}.field-top strong{font-size:14px}.field-top small{color:var(--muted);font-size:11px}.money-input{display:flex;align-items:center;margin:19px 0 8px;gap:8px}.money-input input{background:transparent;border:none;color:#fff;font:800 30px/1.2 inherit;letter-spacing:-1px;font-size:30px;font-weight:780;outline:none;width:100%;min-width:0}.money-input span{color:#7c92a9;font-size:21px}.field-hint{font-size:11px;color:#8ca0b5}.forecast{background:linear-gradient(130deg,#17283d,#1a273b);border:1px solid #334357;border-radius:19px;padding:19px;margin:18px 0}.forecast-label{font-size:10px;letter-spacing:.1em;display:flex;justify-content:space-between;color:#97b0c8}.forecast-label span:last-child{color:#70e2b9}.forecast strong{display:block;color:#74eebf;font-size:32px;letter-spacing:-1.3px;margin:18px 0}.forecast-divider{border-top:1px solid #34445a;margin-bottom:10px}.forecast-line{display:flex;justify-content:space-between;color:#a5b6c9;font-size:12px;padding:5px 0}.forecast-line b{color:#f1f5fc}.fineprint{text-align:center;color:#72899e;line-height:1.5;font-size:11px;margin-top:12px}.warning,.notice{padding:11px 14px;color:#ffd3a1;background:#3b2a20;border:1px solid #775137;border-radius:11px;font-size:12px;margin:15px 0}.notice.success{background:#173a31;color:#a3f2d3;border-color:#2a775c}.bottom-nav{position:fixed;z-index:10;bottom:0;left:50%;transform:translateX(-50%);max-width:640px;width:100%;background:rgba(11,20,33,.95);backdrop-filter:blur(16px);border-top:1px solid #26364a;display:flex;justify-content:space-around;padding:12px 12px calc(14px + env(safe-area-inset-bottom))}.nav-item{background:none;border:0;color:#8295ab;display:grid;gap:4px;text-align:center;justify-items:center;min-width:65px;cursor:pointer;font-size:10px}.nav-icon{font-size:23px;line-height:1.15}.nav-item.active{color:#61e6b8}.settings{display:grid;gap:12px}.settings-title{font-size:12px;color:#67ddb4;font-weight:800;margin:16px 0 0;text-transform:uppercase;letter-spacing:.06em}.settings label{display:grid;gap:7px;font-size:12px;color:#a7b8cb}.settings input{background:#122135;border:1px solid #304158;border-radius:12px;padding:13px 14px;color:#fff;font-size:16px;min-width:0}.settings .primary{margin-top:10px}.history-panel{padding:15px;background:#112035;border:1px solid #2c3a4b;border-radius:18px}.history-panel .section-heading{margin:2px 0 12px}.history-chart{min-height:130px;display:grid;place-items:center;color:#71869c;font-size:13px}.history-chart svg{width:100%;height:135px}.history-items{margin-top:14px;display:grid;gap:9px}.history-item{display:flex;align-items:center;justify-content:space-between;border:1px solid #29384d;background:#101d2d;border-radius:13px;padding:13px 15px}.history-item b{font-size:13px}.history-item span{display:block;color:#96acc1;font-size:11px;margin-top:4px}.history-item strong{color:#71e7b5}.overlay{position:fixed;z-index:20;inset:0;background:#02080ee0;display:flex;align-items:end;justify-content:center}.modal{background:#162438;border-radius:26px 26px 0 0;padding:28px 21px 36px;max-width:640px;width:100%;text-align:center}.modal-icon{font-size:28px}.modal h2{font-size:21px;margin:14px 0 10px}.modal p{color:#acc0d2;font-size:13px;line-height:1.55}.modal-balances{text-align:left;background:#0d1a2b;padding:14px 16px;border-radius:13px;margin:20px 0;font-size:13px;line-height:2}@media(min-width:700px){.shell{border-inline:1px solid #253247}.bottom-nav{border-inline:1px solid #26364a}.modal{border-radius:25px;margin-bottom:25px}.overlay{align-items:center}} 
/* v0.2 staging connection diagnostics */
.diag-panel{margin:0 0 18px;padding:18px;border:1px solid #517083;border-radius:18px;background:#172b3c;color:#f5f8fc}
.diag-panel.diag-success{border-color:#28735b;background:#102c28}
.diag-title{font-size:15px;font-weight:800;margin-bottom:7px}
.diag-copy{font-size:12px;line-height:1.55;color:#c5d9e4;margin:0 0 10px}
.diag-code{font:11px monospace;color:#b1c9d7;margin-top:10px}
.diag-retry{border:1px solid #567c84;background:#1f434b;color:#e4fff3;padding:10px 14px;border-radius:12px;font-size:12px;font-weight:700}

/* v0.5 monetary values and bank marks */
.bank-icon img{display:block;width:27px;height:27px;object-fit:contain;border-radius:5px}
.bank-card>strong{white-space:nowrap;font-variant-numeric:tabular-nums;letter-spacing:-.3px;text-align:right}
.bank-card{gap:8px}
.bank-name{min-width:0}
.bank-name div:last-child{min-width:0}
.money-input input,.settings input[data-money]{font-variant-numeric:tabular-nums}
@media(max-width:380px){.bank-card>strong{font-size:13px}.bank-name b{font-size:13px}}

/* v0.6 other cards */
.other-summary{padding:16px;background:#153329;border:1px solid #356357;border-radius:16px;margin-bottom:16px;line-height:1.8;white-space:pre-wrap}.other-card{padding:17px;background:#142336;border:1px solid #324255;border-radius:17px;display:grid;gap:11px}.other-card-head{display:flex;align-items:center;gap:12px}.other-logo{background:#f7fafb;color:#123;width:44px;height:44px;flex:0 0 44px;border-radius:13px;display:grid;place-items:center;overflow:hidden;border:1px solid #3b4c58;box-shadow:0 7px 18px rgba(0,0,0,.18)}.other-logo img{display:block;width:100%;height:100%;object-fit:contain;background:#fff;border-radius:12px}.other-bank-text{display:grid;gap:5px}.other-bank-text small,.other-date{color:#98adc2;font-size:11px}.other-amount{font-size:22px;font-variant-numeric:tabular-nums}.bottom-nav{padding-inline:6px}.nav-item{min-width:0;flex:1;font-size:9px}

/* v0.7 Finance Insights — responsive display-only components */
.insight-tile{font:inherit;color:inherit;text-align:left;cursor:pointer;width:100%}
.insight-tile:focus-visible,.scenario-controls button:focus-visible,.history-controls button:focus-visible{outline:2px solid #83e8bf;outline-offset:2px}
.insight-section{margin:17px 0 22px}
.insight-panel,.util-card{background:#122338;border:1px solid #30485a;border-radius:17px;padding:15px;margin:9px 0}
.util-top,.util-detail,.insight-comparison,.breakdown-info,.budget-total{display:flex;justify-content:space-between;align-items:center;gap:9px}
.util-top strong{font-size:13px}.util-top span,.util-detail{font-size:11px;color:#a9c0ce}
.util-track,.breakdown-track{height:10px;border-radius:99px;background:#23384b;overflow:hidden;margin:12px 0 10px}
.util-fill{height:100%;background:linear-gradient(90deg,#66d6ae,#43aef0);border-radius:99px;transition:width .2s}
.insight-comparison{padding:9px 0;border-bottom:1px solid #29394b;font-size:12px}
.insight-comparison strong{font-size:15px}.favorable{color:#6fe6bb}.unfavorable{color:#f0ad9f}
.insight-caption{font-size:11px;color:#94adbd;margin:10px 0 0;line-height:1.6}
.scenario-controls{background:#122338;border:1px solid #30485a;border-radius:18px;padding:15px}
.scenario-controls label{display:grid;gap:7px;font-size:11px;color:#b5c9d6}
.scenario-controls select{width:100%;border:1px solid #426072;background:#142c3f;color:#fff;border-radius:11px;padding:11px;font:inherit;font-size:13px}
.scenario-chips,.history-controls{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0 7px}
.scenario-chips button,.history-controls button,.scenario-reset{border:1px solid #3a6070;background:#1c3847;color:#dcf8ef;border-radius:12px;padding:10px 11px;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.scenario-reset{width:100%;background:transparent;border:1px dashed #506775}
.history-controls button.active{background:#315e52;color:#a8ffe1;border-color:#58bc9c}
.history-period{margin-top:4px}.history-chart{min-height:145px}.history-detail{background:#152b3a;border:1px solid #355165;border-radius:12px;padding:12px;color:#c6e7e2;font-size:12px;line-height:1.5}
.finance-modal{max-height:87vh;overflow-y:auto;text-align:left}
.finance-modal .modal-icon,.finance-modal h2,.finance-modal>p{text-align:center}
.breakdown-row{margin:12px 0}.breakdown-info span{font-size:12px;color:#b9cbd7}.breakdown-info strong{font-size:12px;font-variant-numeric:tabular-nums}
.breakdown-fill{height:100%;border-radius:99px;background:linear-gradient(90deg,#34896d,#6aeebf)}
.breakdown-fill.out{background:linear-gradient(90deg,#8f5575,#f1a1a8)}
.budget-total{border-top:1px solid #3f5965;padding-top:16px;margin-top:16px;font-size:12px}
.budget-total strong{font-size:18px;color:#85eac2}
@media(max-width:360px){.scenario-chips button{font-size:11px;padding:9px 8px}.insight-comparison{font-size:11px}}

/* v0.7.1 — bank marks consistent with Cards+, compact 2×2 what-if controls */
.main-bank-logo{width:38px;height:38px;flex:0 0 38px;border-radius:12px;font-weight:900;font-size:18px}
.main-bank-logo img{border-radius:11px}
.scenario-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.scenario-chips button{min-width:0;text-align:center;padding:12px 8px}

/* v0.7.2: F13/F14 daily preview, matching Finance Insights cards */
.forecast-values{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:17px 0}
.forecast-value{min-width:0;padding:12px 10px;background:rgba(16,35,47,.60);border:1px solid #335363;border-radius:14px;display:flex;flex-direction:column;gap:10px}
.forecast-value span{font-size:10px;letter-spacing:.055em;color:#aac4ca}
.forecast-value strong{display:block;min-width:0;margin:0;font-size:clamp(17px,4.5vw,25px);letter-spacing:-.7px;color:#e6f5f2;overflow-wrap:anywhere}
.forecast-value-primary strong{color:#74eebf}
@media(max-width:360px){.forecast-values{gap:7px}.forecast-value{padding:11px 7px}.forecast-value span{font-size:9px}}

/* v0.8 Smart Experience */
.experience-panel{margin:20px 0;padding:16px;background:linear-gradient(145deg,#142a3b,#102031);border:1px solid #315064;border-radius:19px}
.experience-panel .section-heading{margin:1px 0 13px}
.calendar-meta{display:flex;align-items:baseline;gap:9px;margin:10px 0 17px}
.calendar-meta strong{font-size:30px;color:#79edc0;letter-spacing:-1.1px}.calendar-meta span{font-size:12px;color:#a0bacc}
.calendar-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}
.calendar-day{display:flex;flex-direction:column;gap:7px;align-items:center;justify-content:center;min-height:74px;padding:8px 2px;background:#1a3344;border:1px solid #284e5c;border-radius:12px}
.calendar-day span{font-size:10px;color:#9bb7c7}.calendar-day strong{font-size:16px;color:#f6f9fc}
.calendar-day small{min-height:12px;font-size:8px;color:#b2c5ca}
.calendar-day.today{background:#215345;border-color:#5ec9a1}.calendar-day.report-date{border-color:#ffcf82;box-shadow:inset 0 0 0 1px #ffcf82}.calendar-day.report-date small{color:#ffd793}
.goal-label{font-size:11px;color:#aac7d3}.goal-entry{display:flex;gap:8px;align-items:center;background:#0f2234;border:1px solid #486377;border-radius:14px;padding:12px 13px;margin:9px 0 12px}
.goal-entry input{min-width:0;width:100%;font:700 20px/1.4 inherit;font-size:20px;font-weight:750;outline:0;border:0;background:none;color:#f4fff9}
.goal-entry span{color:#9fc7b6;font-size:17px}
.goal-result{padding:13px;border-radius:13px;background:#19352f;border:1px solid #376654;line-height:1.6;font-size:12px;color:#d0eee5}
.goal-result strong{font-size:17px;color:#83f3be}.goal-result p{font-size:12px;margin:8px 0 0;color:#a9c9c3}
.highlights-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;font-size:12px;color:#abc9d5}
.highlight-card{padding:14px 12px;border-radius:13px;background:#102a3b;border:1px solid #345367;min-width:0;display:grid;gap:8px}
.highlight-card span{font-size:11px;line-height:1.4}.highlight-card strong{font-size:19px;color:#78ecc0;overflow-wrap:anywhere}.highlight-card small{font-size:10px;color:#91aebd}
.highlight-card:last-child{grid-column:span 2}
@media(max-width:370px){.experience-panel{padding:12px}.calendar-strip{gap:3px}.calendar-day{min-height:66px;border-radius:9px}.calendar-day strong{font-size:14px}.calendar-day span{font-size:9px}.calendar-day small{font-size:7px}.highlight-card strong{font-size:16px}}

/* v0.9 Stage 2: explicit safe day draft */
.draft-area{padding:13px 14px;margin:16px 0 11px;background:#12283b;border:1px solid #34536a;border-radius:16px}
.draft-area .secondary{margin:0;background:#1f4250;color:#d4ffe9;border-color:#427364}
.draft-hint{font-size:11px;line-height:1.6;margin:9px 2px 0;color:#a5becc}

/* v0.9 Daily Intelligence — premium, compact mobile presentation */
.intelligence-panel{margin:20px 0;padding:18px;background:linear-gradient(135deg,#153044,#101d2e);border:1px solid #35576a;border-radius:20px}
.intelligence-panel .section-heading{margin:1px 0 16px}.intelligence-note{font-size:11px;color:#9bb9c7;line-height:1.6;margin:12px 0 0}
.intel-periods{display:flex;gap:8px;margin-bottom:14px}
.intel-periods button{flex:1;font:700 12px inherit;font-size:12px;font-weight:750;color:#b9dfd8;background:#1a3545;border:1px solid #426576;padding:11px;border-radius:12px;cursor:pointer}
.intel-periods button.active{color:#0b3229;background:#74e6bc;border-color:#74e6bc}
.spending-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.spending-stat{min-width:0;display:grid;gap:8px;background:#112638;border:1px solid #2d4e60;border-radius:14px;padding:14px 11px}
.spending-stat span{font-size:10px;color:#a2bdca;line-height:1.4}
.spending-stat strong{font-size:clamp(14px,4vw,19px);color:#b4f2d8;overflow-wrap:anywhere}
.spending-chart{min-height:85px;margin-top:14px;padding:11px 3px;color:#9bb9c7;font-size:12px}
.spending-bars{height:130px;display:flex;justify-content:space-around;align-items:flex-end;gap:6px;overflow-x:auto}
.spending-col{height:100%;min-width:18px;max-width:36px;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px}
.spending-bar{width:78%;min-height:5px;border-radius:7px 7px 3px 3px;background:linear-gradient(#69e3b5,#238f80);flex:0 0 auto;max-height:105px}
.spending-bar.inflow{background:linear-gradient(#e1b47e,#96617c)}
.spending-col small{font-size:9px;color:#8eafc1}
.health-head{display:flex;align-items:center;gap:17px;margin-bottom:14px}
.health-gauge{position:relative;flex:0 0 122px;width:122px;height:122px}
.health-gauge svg{width:100%;height:100%;transform:rotate(-90deg)}
.health-gauge circle{fill:none;stroke-width:10}
.health-track{stroke:#2a4052}
.health-progress{stroke:#5ce6b2;stroke-linecap:round;transition:stroke-dashoffset .3s}
.health-gauge strong{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:34px;color:#e6fff3}
.health-copy{min-width:0}.health-copy strong{font-size:17px;color:#a0f1d0}
.health-copy p{font-size:12px;line-height:1.6;color:#abc1ce;margin:9px 0}
.health-factors{display:grid;gap:12px;font-size:12px;color:#afc9d4}
.health-factor-title{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:7px}
.health-factor-title b{color:#9beecd}
.health-factor-track{height:7px;border-radius:99px;background:#2a4052;overflow:hidden}
.health-factor-track i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#4da6e5,#67e7b6)}
@media(max-width:385px){.intelligence-panel{padding:13px}.health-gauge{flex-basis:100px;width:100px;height:100px}.health-head{gap:11px}.health-copy strong{font-size:14px}.health-copy p{font-size:11px}}

/* v0.10 Smart Financial Assistant */
.control-center-body{display:grid;gap:0}
.control-row{display:flex;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid #2d4957;font-size:12px}
.control-row span{color:#a8c2cc}.control-row strong{text-align:right;color:#adf0d2}
.goal-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:9px 0}
.goal-actions .secondary{margin:0;font-size:12px;padding:12px 8px}
.health-simulator{background:#12293b;border:1px solid #315465;border-radius:13px;padding:12px;margin-top:12px;display:grid;gap:8px;font-size:12px;color:#abc8d6}
.health-simulator input{width:100%;border:1px solid #426273;border-radius:10px;background:#0d2030;color:#d9ffea;padding:12px;font-size:16px}

/* v0.11 Financial Intelligence — native dark glass cards and compact responsive controls */
.fi-plot{padding:12px 5px 1px;min-height:110px}
.fi-plot svg{display:block;width:100%;height:auto;max-height:165px}
.fi-plan-form{display:grid;gap:9px;margin:13px 0 15px}
.fi-plan-form input,.fi-plan-form select{min-width:0;width:100%;border:1px solid #34465e;border-radius:11px;background:#102035;color:#f2f9ff;padding:12px 13px;font:inherit;font-size:13px}
.fi-plan-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:9px}
.fi-plan-form .secondary{margin-top:0}
.fi-plan-row{border-top:1px solid #2b3b4d;padding:12px 2px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;color:#d1dfee;line-height:1.5}
.fi-plan-row button{flex-shrink:0;border:1px solid #46566a;background:#20334b;color:#e8f3ff;border-radius:9px;font-size:19px;min-width:36px;min-height:36px;cursor:pointer}
.fi-heatmap{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin:13px 0}
.fi-heat-cell{aspect-ratio:1;border:1px solid #39495c;background:#1a293b;color:#9fb1c5;border-radius:9px;font-size:11px;cursor:pointer}
.fi-heat-cell.fi-outflow{background:#176b58;color:#e9fff6;border-color:#2b8970}
.fi-heat-cell.fi-inflow{background:#334c86;color:#f3f7ff;border-color:#5073b0}
.fi-heat-cell.fi-flat{background:#59634b;color:white}
#fiWeekly,#fiReliability{display:grid;gap:3px}
#financialForecast,#planningPanel,#reliabilityPanel,#fiHeatmapPanel,#fiWeeklyPanel{margin-bottom:16px}
@media(max-width:370px){.fi-heatmap{gap:4px}.fi-heat-cell{border-radius:6px;font-size:10px}}

/* v0.12 · Decision Studio */
#decisionStudio,#dsActionsPanel,#dsMonthPanel{margin-bottom:16px}
.ds-label{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#adc5d2;font-size:12px;margin:15px 0 10px}
#dsPace{width:100%;accent-color:#61e7bd}
.ds-highlight{background:linear-gradient(110deg,#163d3b,#1a3245);border:1px solid #356258;color:#d5ffed;padding:16px;border-radius:15px;font-size:13px;line-height:1.65;margin:14px 0}
.ds-entry{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.ds-entry input{grid-column:1 / -1;background:#102035;color:white;border:1px solid #375368;border-radius:12px;padding:14px;font:inherit}
.ds-entry .secondary{margin:0;padding:12px 8px}
.ds-action{border-top:1px solid #294256;padding:12px 2px;display:grid;gap:5px}
.ds-action strong{font-size:13px;color:#e6f7f1}
.ds-action span{font-size:11px;color:#a8bfcc;line-height:1.5}
.ds-month-nav{display:flex;align-items:center;justify-content:space-between;gap:13px;margin:14px 0}
.ds-month-nav .secondary{margin:0;width:45px;padding:11px}
.ds-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:10px 0}
.ds-day{aspect-ratio:1;background:#192a3c;border:1px solid #39536a;color:#b6d3df;border-radius:8px;font:inherit;font-size:11px;cursor:pointer}
.ds-day.ds-closed{background:#20504c;border-color:#3b8f7c;color:#dbfff2}
.ds-day.ds-planned{box-shadow:inset 0 -4px #e9b967}
.ds-day.ds-movement{color:#8ff4cb}

/* v0.13 · repayment tracking / quick dashboard / guarded planning */
.repayment-inputs{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:13px 0}
.repayment-inputs label{display:grid;gap:7px;color:#a9becd;font-size:12px}
.repayment-inputs input{width:100%;min-width:0;padding:12px;border-radius:12px;border:1px solid #365367;background:#102237;color:#f5fff9;font-size:17px}
.v13-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.v13-tile{min-width:0;background:#112c32;border:1px solid #2d5956;border-radius:12px;padding:13px;display:grid;gap:8px}
.v13-tile span{color:#a9c1c8;font-size:11px}.v13-tile strong{font-size:17px;color:#b2ffdc;overflow-wrap:anywhere}
.v13-details{border:1px solid #314d5a;background:#112434;border-radius:13px;padding:13px 15px;margin:12px 0}
.v13-details summary{font-size:13px;color:#b2f2d5;cursor:pointer;font-weight:750}
.v13-details p{color:#b0c8d3;font-size:12px}
.v13-risk{padding:11px 13px;background:#19343b;color:#dcebdc;border:1px solid #39605e;border-radius:11px;font-size:12px;line-height:1.5}
.v13-plan-filter{margin:12px 0}.v13-plan-filter label{display:flex;gap:9px;align-items:center;color:#b1c6cc;font-size:12px}
.v13-plan-filter select,.v13-status{background:#142b3c;color:#eefbf5;border:1px solid #345869;border-radius:9px;padding:9px;font-size:12px}
.fi-plan-row{flex-wrap:wrap}.fi-plan-row>span{flex:1 1 100%}.fi-plan-row .v13-status{flex:1 1 120px}
@media(max-width:370px){.repayment-inputs{grid-template-columns:1fr}}

/* v0.14 · personal finance corrections, data freshness, private reports */
.freshness-head{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}
#dataFreshness{color:#a6c9c8;font-size:10px;max-width:128px;text-align:right}
.freshness-button{background:#164039;border:1px solid #386e61;color:#baffdf;border-radius:10px;padding:8px 10px;font-size:11px;cursor:pointer}
.freshness-button:disabled{opacity:.6}
.v14-corrections{margin:14px 0;padding:15px;background:#112d34;border:1px solid #31555a;border-radius:13px}
.v14-corrections summary{cursor:pointer;color:#adf6d9;font-weight:700;font-size:13px}
.v14-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.v14-fields label{display:grid;gap:5px;color:#afced6;font-size:11px}
.v14-fields input{min-width:0;width:100%;color:#e9fff5;background:#102537;border:1px solid #376476;border-radius:10px;padding:11px;font-size:15px}
.v14-report-controls{display:flex;gap:9px;align-items:center;margin:12px 0}
.v14-report-controls select{background:#102f3a;border:1px solid #38636a;border-radius:9px;padding:11px;color:#d8fff1}
.v14-mini-row{display:flex;justify-content:space-between;gap:16px;font-size:12px;border-bottom:1px solid #2e4852;padding:11px 0}
.v14-mini-row span{color:#adbec8}.v14-mini-row strong{color:#b3f5d9;text-align:right}
@media(max-width:420px){.v14-fields{grid-template-columns:1fr}.freshness-head{justify-content:flex-start}#dataFreshness{max-width:none}}

/* Dashboard 2.0 · owner-requested finance KPIs */
#v13Summary .v13-tile:first-child{grid-column:1/-1;background:linear-gradient(130deg,#103d38,#102d36);border-color:#398877}
#v13Summary .v13-tile:first-child strong{font-size:clamp(23px,5.5vw,30px)}
#v13Summary .v13-tile strong{font-variant-numeric:tabular-nums}
#v13Summary .v13-tile span{line-height:1.4}
