
:root{
  --bg:#07111f;--panel:#0d1b2a;--panel2:#10253b;--line:#20384f;
  --text:#eef6ff;--muted:#9eb2c7;--accent:#ffcf5c;--good:#40d39c;
  --warn:#ffb34f;--bad:#ff6b78;--blue:#64a8ff;--shadow:0 18px 45px rgba(0,0,0,.24);
  --radius:22px;
}
*{box-sizing:border-box}
html{background:var(--bg);color-scheme:dark}
body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:
radial-gradient(circle at 10% 0%,rgba(100,168,255,.14),transparent 35%),
radial-gradient(circle at 100% 20%,rgba(255,207,92,.09),transparent 30%),var(--bg);color:var(--text);min-height:100vh}
button,input,select{font:inherit}
button{cursor:pointer}
.app{max-width:1180px;margin:auto;padding:20px 16px 72px}
.topbar{display:flex;gap:14px;justify-content:space-between;align-items:center;margin-bottom:18px}
.brand{display:flex;align-items:center;gap:12px}.logo{width:46px;height:46px;border-radius:15px;background:linear-gradient(135deg,#ffd970,#ff8f5a);display:grid;place-items:center;color:#08111c;font-weight:900;box-shadow:var(--shadow)}
.brand h1{font-size:18px;margin:0}.brand p{font-size:12px;color:var(--muted);margin:3px 0 0}
.status-pill{border:1px solid var(--line);background:rgba(16,37,59,.72);padding:9px 12px;border-radius:999px;font-size:12px;color:var(--muted)}
.grid{display:grid;grid-template-columns:1.3fr .7fr;gap:16px}
.card{background:linear-gradient(180deg,rgba(16,37,59,.96),rgba(10,26,41,.96));border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}
.hero{min-height:310px;position:relative;overflow:hidden}
.hero:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;background:rgba(255,207,92,.08);right:-60px;top:-80px}
.kicker{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:800}
.hero h2{font-size:30px;margin:10px 0 6px;line-height:1.05}.hero .date{color:var(--accent);font-weight:800}
.meta{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 18px}.chip{padding:7px 10px;border-radius:999px;background:#0a1a2a;border:1px solid var(--line);font-size:12px}.tier-a{color:var(--good)}.tier-b{color:var(--warn)}.tier-c{color:var(--bad)}
.numbers{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}
.num{background:#071421;border:1px solid var(--line);border-radius:18px;padding:16px}.num small{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.1em}.num strong{font-size:48px;line-height:1;letter-spacing:.02em}.num span{display:block;margin-top:8px;color:var(--muted);font-size:12px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:10px}.metric{background:#0a1a2a;border:1px solid var(--line);border-radius:16px;padding:14px}.metric b{display:block;font-size:20px}.metric small{color:var(--muted)}
.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.btn{border:1px solid var(--line);background:#142c45;color:var(--text);padding:11px 14px;border-radius:13px;font-weight:700}.btn.primary{background:var(--accent);color:#07111f;border-color:transparent}.btn.ghost{background:transparent}.btn.danger{background:#3a1720;color:#ffd7dd}
.section-title{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:24px 0 12px}.section-title h3{margin:0;font-size:18px}.section-title p{margin:0;color:var(--muted);font-size:12px}
.budget-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;margin:12px 0}.money{width:100%;background:#071421;border:1px solid var(--line);border-radius:13px;padding:12px;color:var(--text)}
.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px}.calendar-toolbar h3{margin:0;font-size:17px}.icon-btn{width:38px;height:38px;border-radius:12px;border:1px solid var(--line);background:#0a1a2a;color:var(--text)}
.week,.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.week{margin:16px 0 7px}.week div{text-align:center;color:var(--muted);font-size:11px;font-weight:700}.day{aspect-ratio:1;min-height:42px;border-radius:12px;background:#081726;border:1px solid transparent;display:flex;align-items:center;justify-content:center;position:relative;font-size:13px}.day.muted{opacity:.25}.day.pick{border-color:#385c78;background:#10273c;font-weight:800}.day.a{box-shadow:inset 0 0 0 1px rgba(64,211,156,.6)}.day.b{box-shadow:inset 0 0 0 1px rgba(255,179,79,.55)}.day.c{box-shadow:inset 0 0 0 1px rgba(255,107,120,.35);opacity:.65}.day.today:before{content:"";position:absolute;width:5px;height:5px;border-radius:50%;background:var(--blue);top:5px;right:5px}.day.pick:after{content:"";position:absolute;width:5px;height:5px;border-radius:50%;background:var(--accent);bottom:5px}
.upcoming{display:grid;gap:10px}.row{display:grid;grid-template-columns:70px 1fr auto;gap:12px;align-items:center;background:#091827;border:1px solid var(--line);border-radius:16px;padding:12px}.row-date{text-align:center}.row-date b{font-size:21px}.row-date small{display:block;color:var(--muted)}.row-main b{display:block}.row-main span{color:var(--muted);font-size:12px}.row-nums{font-weight:900;color:var(--accent)}
.notice{padding:13px 14px;border-radius:15px;background:#261f0c;border:1px solid #55461c;color:#f7d984;font-size:12px;line-height:1.5}
.tabs{position:fixed;left:50%;bottom:12px;transform:translateX(-50%);z-index:8;background:rgba(8,20,33,.88);backdrop-filter:blur(18px);border:1px solid var(--line);border-radius:20px;padding:6px;display:flex;gap:4px;box-shadow:var(--shadow)}.tab{border:0;background:transparent;color:var(--muted);padding:10px 13px;border-radius:15px;font-size:12px;font-weight:750}.tab.active{background:#18354f;color:white}
.panel{display:none}.panel.active{display:block}
.table{width:100%;border-collapse:collapse;font-size:12px}.table th,.table td{padding:10px 9px;border-bottom:1px solid var(--line);text-align:left}.table th{color:var(--muted)}
.switch{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.switch p{margin:2px 0;color:var(--muted);font-size:12px}
.toggle{width:48px;height:28px;background:#24384a;border:none;border-radius:99px;padding:3px;position:relative}.toggle:after{content:"";width:22px;height:22px;border-radius:50%;background:#fff;position:absolute;left:3px;top:3px;transition:.2s}.toggle.on{background:var(--good)}.toggle.on:after{left:23px}
.footer{margin:34px 0 0;color:var(--muted);font-size:11px;line-height:1.5;text-align:center}
@media(max-width:760px){.grid{grid-template-columns:1fr}.hero h2{font-size:26px}.hero{min-height:auto}.num strong{font-size:42px}.app{padding-top:14px}.status-pill{display:none}.row{grid-template-columns:62px 1fr}.row-nums{grid-column:2}.tabs{width:calc(100% - 20px);justify-content:space-around}.tab{flex:1;padding:10px 6px}.topbar{margin-bottom:12px}}
