@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');

:root{
  --bg:#070a0f;--bg-2:#0b1017;--card:rgba(17,23,31,.82);--card-strong:#101720;
  --text:#f4f7f5;--muted:#87928d;--line:rgba(255,255,255,.08);
  --green:#76e2a8;--green-2:#35b978;--green-soft:rgba(118,226,168,.11);
  --red:#ff7f86;--gold:#f4cf72;--shadow:0 24px 80px rgba(0,0,0,.28);
  --radius:24px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-height:100vh;color:var(--text);background:
radial-gradient(circle at 12% -8%,rgba(53,185,120,.16),transparent 30%),
radial-gradient(circle at 92% 10%,rgba(118,226,168,.08),transparent 24%),
linear-gradient(180deg,#070a0f 0%,#090d13 55%,#070a0f 100%);
font-family:"DM Sans",system-ui,sans-serif}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.25;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,black,transparent 80%);z-index:-1}
button,input{font:inherit}
button{transition:transform .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease}
button:active{transform:scale(.98)}
.topbar{height:78px;position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,5vw);border-bottom:1px solid var(--line);background:rgba(7,10,15,.72);backdrop-filter:blur(22px)}
.brand{display:flex;gap:12px;align-items:center}.brand-mark{width:40px;height:40px;border:1px solid rgba(118,226,168,.25);border-radius:13px;background:linear-gradient(145deg,#14231c,#0c1210);color:var(--green);display:grid;place-items:center;font-weight:800;box-shadow:0 0 30px rgba(53,185,120,.08)}
.brand strong,.brand span{display:block}.brand strong{font-family:Manrope,sans-serif;font-size:14px}.brand span{font-size:10px;color:var(--muted);margin-top:2px}
nav{display:flex;gap:5px}.nav-btn{border:1px solid transparent;background:transparent;color:#7f8a87;padding:9px 13px;border-radius:11px;cursor:pointer;font-size:12px}.nav-btn:hover{color:var(--text);background:rgba(255,255,255,.04)}.nav-btn.active{color:var(--text);background:rgba(255,255,255,.07);border-color:var(--line);box-shadow:inset 0 1px rgba(255,255,255,.05)}
.container{max-width:1240px;margin:auto;padding:54px 24px 90px}.section{display:none;animation:fadeUp .45s ease both}.section.active{display:block}@keyframes fadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.hero{display:grid;grid-template-columns:1fr 330px;gap:22px;align-items:stretch;margin-bottom:20px}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:10px;font-weight:800;color:#68736f;margin:0 0 10px}.hero h1,.section-title h1{font-family:Manrope,sans-serif;font-size:clamp(40px,6vw,72px);line-height:.98;letter-spacing:-.055em;margin:0;max-width:820px}.hero h1 em{font-style:normal;color:var(--green)}.hero-copy{font-size:16px;color:#89948f;max-width:650px;line-height:1.65;margin:18px 0 0}
.streak-card{position:relative;overflow:hidden;border:1px solid rgba(118,226,168,.16);border-radius:var(--radius);padding:28px;background:linear-gradient(145deg,rgba(24,42,34,.95),rgba(11,17,15,.96));box-shadow:var(--shadow)}.streak-card:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-80px;bottom:-100px;background:rgba(118,226,168,.14);filter:blur(15px)}.streak-card span,.streak-card small{color:#80908a;font-size:12px}.streak-card strong{font-family:Manrope,sans-serif;font-size:76px;line-height:.95;display:block;margin:10px 0;color:#f4faf7;letter-spacing:-.06em}.streak-card small{display:block}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.stat-card,.goal-card{position:relative;overflow:hidden;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:21px;box-shadow:0 10px 35px rgba(0,0,0,.14);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.stat-card:before,.panel:before,.goal-card:before,.milestone-list div:before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:radial-gradient(260px circle at var(--mx,-100px) var(--my,-100px),rgba(118,226,168,.08),transparent 60%);opacity:.9;transition:opacity .25s}.stat-card:hover,.goal-card:hover,.panel:hover{transform:translateY(-3px);border-color:rgba(118,226,168,.17);box-shadow:0 18px 50px rgba(0,0,0,.2)}.stat-card span,.stat-card small,.goal-card span,.goal-card small{display:block;color:#7f8b87;font-size:11px}.stat-card strong,.goal-card strong{display:block;font-family:Manrope,sans-serif;font-size:27px;letter-spacing:-.035em;margin:11px 0 5px}.stat-card.dark{background:linear-gradient(145deg,#121c18,#0d1411);border-color:rgba(118,226,168,.12)}.stat-card.dark strong{color:var(--green)}.stat-card.dark span,.stat-card.dark small{color:#78877f}
.two-col{display:grid;grid-template-columns:1.45fr .85fr;gap:14px}.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:25px;box-shadow:var(--shadow);margin-bottom:14px;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.panel h2{font-family:Manrope,sans-serif;margin:2px 0 8px;font-size:20px;letter-spacing:-.03em}.badge{background:var(--green-soft);color:var(--green);padding:6px 9px;border-radius:99px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.chart-wrap{height:300px;position:relative}.chart-wrap.tall{height:370px}.muted{color:#68736f;font-size:12px;line-height:1.55}
.action-panel{background:linear-gradient(145deg,rgba(20,35,29,.9),rgba(12,17,15,.88));border-color:rgba(118,226,168,.13)}.action-panel p:not(.eyebrow){color:#9ba7a2;line-height:1.6;font-size:13px}.urge-row{display:flex;gap:8px;margin-top:20px}.urge-row input,.settings input{border:1px solid var(--line);border-radius:12px;padding:13px 14px;font:inherit;width:100%;background:#0b1016;color:var(--text);outline:none;transition:border-color .2s,box-shadow .2s}.urge-row input:focus,.settings input:focus{border-color:rgba(118,226,168,.45);box-shadow:0 0 0 4px rgba(118,226,168,.07)}.primary,.file-btn{border:1px solid rgba(118,226,168,.18);border-radius:12px;background:linear-gradient(145deg,#193b2b,#10251b);color:#dff8ea;padding:13px 16px;font-weight:700;cursor:pointer;white-space:nowrap}.primary:hover,.file-btn:hover{box-shadow:0 10px 28px rgba(53,185,120,.16);border-color:rgba(118,226,168,.35);transform:translateY(-1px)}.file-btn{display:inline-flex;align-items:center}.urge-result{margin-top:14px;padding:15px;border-radius:13px;background:rgba(118,226,168,.07);border:1px solid rgba(118,226,168,.16);color:#b9c9c1;font-size:13px;line-height:1.6}.urge-result strong{color:var(--green)}.hidden{display:none!important}
.motivation{display:flex;align-items:center;gap:18px;padding:17px 19px;border:1px solid rgba(118,226,168,.13);background:rgba(118,226,168,.055);border-radius:16px}.motivation span{font-size:9px;color:var(--green);font-weight:800;text-transform:uppercase;letter-spacing:.12em}.motivation strong{flex:1;font-family:Manrope;font-size:13px}.motivation button{border:0;background:transparent;color:var(--green);font-weight:700;font-size:12px;cursor:pointer}
.section-title{margin-bottom:25px}.section-title p:last-child{color:#77827e;font-size:13px}.section-title h1{font-size:clamp(38px,5vw,60px)}
.upload{display:flex;align-items:center;gap:18px}.upload-icon{width:54px;height:54px;border-radius:15px;background:#101720;border:1px solid var(--line);color:var(--green);display:grid;place-items:center;font-weight:800;font-size:10px}.upload>div:nth-child(2){flex:1}.upload h2{margin:0 0 5px;font-family:Manrope;font-size:18px}.upload p{margin:0;color:#77827e;font-size:12px}
.recovery-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:12px}.goal-card.featured{background:linear-gradient(145deg,#14261d,#0d1511);border-color:rgba(118,226,168,.15)}.goal-card.featured span,.goal-card.featured small{color:#789087}.goal-card.featured strong{color:#eefaf4}.progress{height:8px;background:#202c27;border-radius:99px;overflow:hidden;margin:18px 0 8px}.progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#35b978,#9ae9bf);border-radius:99px;box-shadow:0 0 15px rgba(118,226,168,.25);transition:width .7s ease}.milestones{margin-top:26px}.milestones h2{font-family:Manrope;font-size:20px}.milestone-list{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.milestone-list div{background:rgba(255,255,255,.025);border:1px solid var(--line);padding:17px;border-radius:15px;transition:.25s}.milestone-list div:hover{background:rgba(118,226,168,.05);border-color:rgba(118,226,168,.18);transform:translateY(-3px)}.milestone-list span{display:block;color:#65716d;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.milestone-list b{display:block;margin-top:7px;font-family:Manrope;font-size:13px}
.settings{display:grid;grid-template-columns:1fr 1fr;gap:17px}.settings label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:700;color:#9aa59f}.settings button{grid-column:1/-1;width:max-content}.privacy-note{padding:18px;border-radius:16px;background:rgba(244,207,114,.05);border:1px solid rgba(244,207,114,.12);color:#b4a47a}.privacy-note strong{font-family:Manrope;font-size:13px}.privacy-note p{margin:7px 0 0;line-height:1.5;font-size:12px;color:#8f8568}
table{width:100%;border-collapse:collapse;font-size:12px}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line)}th{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#65716d}td{color:#aab4af}.table-scroll{overflow:auto}
footer{border-top:1px solid var(--line);padding:25px max(24px,5vw);display:flex;justify-content:space-between;color:#5e6965;font-size:10px}
.theme-switch{display:flex;gap:3px;padding:3px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.025);margin-left:10px}.theme-btn{width:30px;height:30px;border:0;border-radius:9px;background:transparent;color:#75817c;cursor:pointer;font-size:13px}.theme-btn:hover{color:var(--text)}.theme-btn.active{background:var(--green-soft);color:var(--green);box-shadow:inset 0 0 0 1px rgba(118,226,168,.08)}@media(max-width:850px){.theme-switch{margin-left:auto}.topbar{gap:8px}}\n@media(max-width:850px){nav{display:none}.hero,.two-col,.recovery-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr 1fr}.milestone-list,.settings{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.container{padding:32px 14px 60px}.stats-grid,.milestone-list,.settings{grid-template-columns:1fr}.settings button{grid-column:auto}.hero h1,.section-title h1{font-size:40px}.streak-card strong{font-size:64px}.urge-row{flex-direction:column}.upload{align-items:flex-start;flex-direction:column}.motivation{align-items:flex-start;flex-direction:column}footer{flex-direction:column;gap:8px}}
\nbody[data-theme="light"]{
  --bg:#f4f7f5;--bg-2:#edf2ef;--card:rgba(255,255,255,.86);--card-strong:#fff;
  --text:#15201b;--muted:#66736d;--line:rgba(20,45,34,.10);--green:#147a4d;--green-2:#219b64;
  --green-soft:rgba(20,122,77,.09);--red:#c84650;--gold:#a67a16;--shadow:0 20px 55px rgba(26,50,40,.09)
}
body[data-theme="light"]{background:radial-gradient(circle at 10% -8%,rgba(53,185,120,.14),transparent 30%),radial-gradient(circle at 92% 10%,rgba(118,226,168,.12),transparent 24%),linear-gradient(180deg,#f7faf8,#eef3f0 55%,#f5f8f6)}
body[data-theme="light"]:before{opacity:.38;background-image:linear-gradient(rgba(20,60,40,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(20,60,40,.035) 1px,transparent 1px)}
body[data-theme="light"] .topbar{background:rgba(247,250,248,.78)}
body[data-theme="light"] .brand-mark{background:linear-gradient(145deg,#e9f6ef,#fff);color:var(--green)}
body[data-theme="light"] .nav-btn{color:#69756f}body[data-theme="light"] .nav-btn.active{color:#17231d;background:rgba(20,80,50,.07)}
body[data-theme="light"] .hero-copy,body[data-theme="light"] .section-title p:last-child{color:#68766f}
body[data-theme="light"] .streak-card{background:linear-gradient(145deg,#e4f3ea,#d8ecdf);border-color:rgba(20,122,77,.14);color:#17231d}
body[data-theme="light"] .streak-card span,body[data-theme="light"] .streak-card small{color:#5d7067}
body[data-theme="light"] .stat-card.dark{background:linear-gradient(145deg,#e8f5ed,#dcefe4);color:#17231d}
body[data-theme="light"] .stat-card.dark span,body[data-theme="light"] .stat-card.dark small{color:#60736a}
body[data-theme="light"] .stat-card.dark strong{color:#147a4d}
body[data-theme="light"] .action-panel{background:linear-gradient(145deg,#edf8f2,#e7f3ec)}
body[data-theme="light"] .action-panel p:not(.eyebrow){color:#617069}
body[data-theme="light"] .urge-row input,body[data-theme="light"] .settings input{background:#fff;color:#17231d}
body[data-theme="light"] .primary,body[data-theme="light"] .file-btn{background:linear-gradient(145deg,#176b47,#0e5b3a);color:#fff}
body[data-theme="light"] .goal-card.featured{background:linear-gradient(145deg,#e3f3e9,#d7ece0);color:#17231d}
body[data-theme="light"] .goal-card.featured span,body[data-theme="light"] .goal-card.featured small{color:#60736a}
body[data-theme="light"] .goal-card.featured strong{color:#17231d}
body[data-theme="light"] .progress{background:#cfe0d7}
body[data-theme="light"] .milestone-list div{background:rgba(255,255,255,.7)}
body[data-theme="light"] td{color:#53615a}
body[data-theme="light"] .privacy-note{background:rgba(244,207,114,.10);color:#755b1d}
body[data-theme="light"] .privacy-note p{color:#77683e}

.hero-actions{display:flex;gap:9px;margin-top:22px}.ghost{border:1px solid var(--line);background:rgba(255,255,255,.035);color:var(--text);padding:13px 16px;border-radius:12px;font-weight:700;cursor:pointer}.ghost:hover{background:rgba(255,255,255,.07)}
.stat-card.danger{background:linear-gradient(145deg,rgba(48,25,29,.9),rgba(22,15,18,.9));border-color:rgba(255,127,134,.15)}.stat-card.danger strong{color:var(--red)}.stat-card.accent{background:linear-gradient(145deg,rgba(20,42,32,.95),rgba(12,20,16,.95));border-color:rgba(118,226,168,.15)}.stat-card.accent strong{color:var(--green)}
.legend-note{display:flex;gap:18px;color:#697570;font-size:10px}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px}.dot.red{background:var(--red)}.dot.green{background:var(--green)}
.snapshot h2{font-size:38px;color:var(--green);margin:8px 0}.snapshot>p:not(.eyebrow){color:#89958f;font-size:13px;line-height:1.6}.money-split{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:22px 0}.money-split div{padding:13px;border-radius:13px;background:rgba(255,255,255,.025);border:1px solid var(--line)}.money-split span{display:block;color:#68736f;font-size:10px}.money-split b{display:block;margin-top:5px;font-family:Manrope;font-size:14px}.callout{padding:12px 13px;border-left:2px solid var(--gold);background:rgba(244,207,114,.045);color:#8f8568;font-size:11px;line-height:1.55}.callout strong{color:#b4a47a}
.notes-panel textarea{width:100%;height:145px;resize:vertical;margin:12px 0;border:1px solid var(--line);border-radius:14px;padding:14px;background:rgba(0,0,0,.12);color:var(--text);outline:none;line-height:1.6}.notes-panel textarea:focus{border-color:rgba(118,226,168,.35);box-shadow:0 0 0 4px rgba(118,226,168,.06)}.saved-label{font-size:10px;color:var(--green)}
.broker-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:14px}.broker-balance{background:linear-gradient(145deg,#14261d,#0c1511);border-color:rgba(118,226,168,.14)}.broker-balance>span,.broker-balance>small{color:#789087;font-size:11px}.broker-balance>strong{display:block;font-family:Manrope;font-size:52px;letter-spacing:-.05em;color:#f1faf5;margin:8px 0}.broker-goal{margin-top:22px}.broker-goal>div:first-child{display:flex;justify-content:space-between;color:#77847e;font-size:10px}.broker-goal b{color:var(--green)}.deposit-row{display:flex;gap:8px;margin-top:18px}.deposit-row input{border:1px solid var(--line);border-radius:12px;padding:13px 14px;background:#0b1016;color:var(--text);outline:none;width:100%}.deposit-panel h2{margin:0}.empty{text-align:center;color:#68736f!important;padding:28px!important}
body[data-theme="light"] .ghost{background:rgba(20,60,40,.04);color:#17231d}body[data-theme="light"] .stat-card.danger{background:linear-gradient(145deg,#fae8ea,#f7edef)}body[data-theme="light"] .stat-card.accent{background:linear-gradient(145deg,#e5f4eb,#dcefe4)}body[data-theme="light"] .notes-panel textarea,body[data-theme="light"] .deposit-row input{background:#fff;color:#17231d}body[data-theme="light"] .broker-balance{background:linear-gradient(145deg,#e3f3e9,#d8ece0)}body[data-theme="light"] .broker-balance>strong{color:#17231d}
@media(max-width:850px){.broker-grid{grid-template-columns:1fr}.hero-actions{flex-wrap:wrap}}
@media(max-width:560px){.hero-actions,.deposit-row{flex-direction:column}.money-split{grid-template-columns:1fr}.legend-note{flex-direction:column;gap:6px}}

.back-btn{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:rgba(255,255,255,.035);color:var(--text);padding:9px 13px;border-radius:11px;font-size:12px;font-weight:700;cursor:pointer;margin-bottom:18px}.back-btn:hover{transform:translateX(-2px);background:rgba(255,255,255,.07)}
.stat-card.gold{background:linear-gradient(145deg,rgba(65,54,25,.65),rgba(24,20,12,.8));border-color:rgba(244,207,114,.15)}.stat-card.gold strong{color:var(--gold)}
.chart-insight{display:flex;align-items:baseline;gap:10px;margin:-4px 0 12px}.chart-insight span,.chart-insight small{font-size:10px;color:#697570}.chart-insight strong{font-family:Manrope;color:var(--red);font-size:15px}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:14px 0}.calculator h2,.streak-info h2{margin:5px 0 7px}.calculator p,.streak-info p{font-size:12px;color:#78837e;line-height:1.55}.calc-row{display:flex;align-items:center;gap:12px;margin-top:15px}.calc-row input{width:150px;padding:11px 12px;border-radius:11px;border:1px solid var(--line);background:rgba(0,0,0,.12);color:var(--text)}.calc-row strong{color:var(--green);font-family:Manrope}.streak-info>strong{display:block;color:var(--green);font-family:Manrope;margin-top:14px}.investment-note{margin-top:12px;padding:12px 14px;border-radius:11px;background:rgba(118,226,168,.04);color:#728079;font-size:11px;line-height:1.5}.investment-note b{color:#a6b7ae}
@media(max-width:700px){.info-grid{grid-template-columns:1fr}.chart-insight{flex-wrap:wrap}}
body[data-theme="light"] .back-btn{background:rgba(20,60,40,.04);color:#17231d}body[data-theme="light"] .stat-card.gold{background:linear-gradient(145deg,#fbf3d9,#f8f1dc)}body[data-theme="light"] .calc-row input{background:#fff;color:#17231d}

.three-col{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:14px;margin:14px 0}
.daily-save-panel{background:linear-gradient(145deg,rgba(20,42,32,.88),rgba(12,20,16,.9));border-color:rgba(118,226,168,.14)}
.daily-save-panel p:not(.eyebrow),.forecast-panel small{color:#78847f;font-size:11px;line-height:1.55}
.save-today-row{display:flex;gap:8px;margin-top:16px}
.save-today-row input{width:100%;border:1px solid var(--line);border-radius:12px;padding:12px 13px;background:#0b1016;color:var(--text);outline:none}
.save-meta{display:flex;gap:14px;margin-top:12px;color:#6f7c76;font-size:10px}
.save-meta b{color:var(--green)}
.equiv-list,.forecast-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.equiv-list div,.forecast-list div{padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.025)}
.equiv-list b{display:block;color:var(--green);font-family:Manrope;font-size:18px}.equiv-list span,.forecast-list span{display:block;color:#697570;font-size:9px;margin-top:3px}
.forecast-list div{display:flex;align-items:center;justify-content:space-between;gap:8px}.forecast-list b{font-family:Manrope;color:var(--green);font-size:13px}
.freedom-calendar{display:grid;grid-template-columns:repeat(10,1fr);gap:6px;margin-top:18px}
.day-cell{min-height:45px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.025);color:#697570;cursor:default;padding:6px 4px;text-align:center}
.day-cell span{display:block;font-size:9px}.day-cell b{display:block;margin-top:3px;font-size:8px;font-family:Manrope}
.day-cell.done{background:rgba(118,226,168,.08);border-color:rgba(118,226,168,.2);color:var(--green)}
.day-cell.over{box-shadow:inset 0 0 0 1px rgba(244,207,114,.25);background:rgba(244,207,114,.07)}
.journal-list{max-height:250px;overflow:auto;margin-top:8px}.journal-list article{padding:11px 0;border-bottom:1px solid var(--line)}.journal-list time{font-size:9px;color:#68736f}.journal-list p{margin:5px 0 0;color:#aab4af;font-size:12px;line-height:1.5}
.capital-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px}.capital-metrics .stat-card{margin:0}
.investment-note label{display:block;margin-top:12px;font-size:10px;color:#77847e}.investment-note input{display:block;margin-top:7px;max-width:320px;border:1px solid var(--line);border-radius:12px;padding:11px 13px;background:#0b1016;color:var(--text);width:100%}
body[data-theme="light"] .daily-save-panel{background:linear-gradient(145deg,#e5f4eb,#dcefe4)}body[data-theme="light"] .save-today-row input,body[data-theme="light"] .investment-note input{background:#fff;color:#17231d}
@media(max-width:950px){.three-col{grid-template-columns:1fr}.capital-metrics{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.capital-metrics{grid-template-columns:1fr}.save-today-row{flex-direction:column}.freedom-calendar{grid-template-columns:repeat(6,1fr)}}

/* Light theme refinement */
body[data-theme="light"] .panel,body[data-theme="light"] .stat-card,body[data-theme="light"] .goal-card{background:rgba(255,255,255,.96);border-color:rgba(20,55,40,.12);box-shadow:0 12px 35px rgba(35,70,55,.07)}
body[data-theme="light"] .panel:hover,body[data-theme="light"] .stat-card:hover,body[data-theme="light"] .goal-card:hover{border-color:rgba(20,122,77,.22);box-shadow:0 18px 45px rgba(35,70,55,.10)}
body[data-theme="light"] .panel h2,body[data-theme="light"] .stat-card strong,body[data-theme="light"] .goal-card strong,body[data-theme="light"] .section-title h1,body[data-theme="light"] .hero h1{color:#16231d}
body[data-theme="light"] .eyebrow,body[data-theme="light"] .stat-card span,body[data-theme="light"] .stat-card small,body[data-theme="light"] .goal-card span,body[data-theme="light"] .goal-card small{color:#586960}
body[data-theme="light"] .muted,body[data-theme="light"] .upload p,body[data-theme="light"] .calculator p,body[data-theme="light"] .streak-info p,body[data-theme="light"] .daily-save-panel p:not(.eyebrow),body[data-theme="light"] .forecast-panel small{color:#53645c}
body[data-theme="light"] .money-split div,body[data-theme="light"] .equiv-list div,body[data-theme="light"] .forecast-list div,body[data-theme="light"] .milestone-list div,body[data-theme="light"] .day-cell{background:#f8fbf9;border-color:rgba(20,55,40,.10)}
body[data-theme="light"] .money-split span,body[data-theme="light"] .equiv-list span,body[data-theme="light"] .forecast-list span,body[data-theme="light"] .milestone-list span{color:#5d6d65}
body[data-theme="light"] .notes-panel textarea,body[data-theme="light"] .deposit-row input,body[data-theme="light"] .save-today-row input,body[data-theme="light"] .investment-note input,body[data-theme="light"] .calc-row input,body[data-theme="light"] .urge-row input,body[data-theme="light"] .settings input{background:#fff;border-color:rgba(20,55,40,.16);box-shadow:inset 0 1px 2px rgba(20,55,40,.03);color:#17231d}
body[data-theme="light"] .notes-panel textarea::placeholder,body[data-theme="light"] input::placeholder{color:#8a9891}
body[data-theme="light"] .back-btn{background:#fff;border-color:rgba(20,55,40,.13);box-shadow:0 5px 16px rgba(35,70,55,.06);color:#263a31}
body[data-theme="light"] .back-btn:hover{background:#f4faf6;border-color:rgba(20,122,77,.25)}
body[data-theme="light"] .ghost{background:#fff;border-color:rgba(20,55,40,.13);box-shadow:0 5px 16px rgba(35,70,55,.05)}
body[data-theme="light"] .chart-panel .legend-note,body[data-theme="light"] .chart-insight span,body[data-theme="light"] .chart-insight small{color:#586960}
body[data-theme="light"] th{color:#53645c}body[data-theme="light"] td{color:#34483f}body[data-theme="light"] .journal-list p{color:#40544b}
body[data-theme="light"] .investment-note{background:#f1f8f4;border-color:rgba(20,122,77,.10);color:#53645c}body[data-theme="light"] .investment-note b{color:#245b43}
body[data-theme="light"] .callout{background:#fff8df;border-color:rgba(166,122,22,.18);color:#685722}body[data-theme="light"] .callout strong{color:#8a6715}
body[data-theme="light"] .upload-icon{background:#f2f8f5;border-color:rgba(20,55,40,.10)}

.capital-milestones{margin-top:28px}.capital-milestones h2{font-family:Manrope;font-size:20px;margin:0 0 6px}.capital-milestones>p{margin:0;color:#77827e;font-size:11px;line-height:1.5}.capital-milestone-list{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px}.capital-milestone-list div{padding:15px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.025);transition:.25s}.capital-milestone-list span{display:block;color:#68736f;font-size:10px}.capital-milestone-list b{display:block;margin-top:6px;font-family:Manrope;font-size:12px}.capital-milestone-list div.reached{background:rgba(118,226,168,.08);border-color:rgba(118,226,168,.25);box-shadow:inset 0 0 0 1px rgba(118,226,168,.06)}.capital-milestone-list div.reached span{color:var(--green)}
body[data-theme="light"] .capital-milestone-list div{background:#f8fbf9;border-color:rgba(20,55,40,.10)}body[data-theme="light"] .capital-milestones>p{color:#53645c}body[data-theme="light"] .capital-milestone-list div.reached{background:#edf8f2;border-color:rgba(20,122,77,.22)}
@media(max-width:850px){.capital-milestone-list{grid-template-columns:1fr 1fr}}@media(max-width:560px){.capital-milestone-list{grid-template-columns:1fr}}
