:root{color:#111827;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#eef4ff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}#root{min-height:100vh}:root{--bg:#07080a;--bg-soft:#0b0d12;--panel:#ffffff0b;--panel-strong:#ffffff12;--panel-muted:#ffffff06;--text:#f7f8f8;--text-soft:#d0d6e0;--muted:#8a8f98;--subtle:#62666d;--border:#ffffff14;--border-soft:#ffffff0d;--accent:#7170ff;--accent-strong:#5e6ad2;--green:#10b981;--red:#f87171;--amber:#f59e0b;--shadow:0 24px 80px #00000059;color:var(--text);font-feature-settings:"cv01", "ss03";font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:radial-gradient(circle at 18% -8%,#7170ff33,#0000 34rem),radial-gradient(circle at 88% 8%,#10b9811a,#0000 26rem),linear-gradient(#07080a 0%,#0a0c10 44%,#07080a 100%);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--bg);min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{width:min(1240px,100% - 32px);margin:0 auto;padding:28px 0 56px}.panel{background:linear-gradient(180deg, var(--panel-strong), var(--panel));border:1px solid var(--border);box-shadow:var(--shadow), inset 0 1px 0 #ffffff0a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:22px}.gradient-panel{background:linear-gradient(135deg,#ffffff13,#ffffff09),radial-gradient(circle at 76% 24%,#7170ff38,#0000 22rem)}.hero{grid-template-columns:minmax(0,1fr) 360px;align-items:stretch;gap:20px;margin-bottom:14px;padding:24px;display:grid;position:relative;overflow:hidden}.hero:after{content:"";pointer-events:none;background-image:linear-gradient(#ffffff09 1px,#0000 1px),linear-gradient(90deg,#ffffff09 1px,#0000 1px);background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000,#0000 68%);mask-image:linear-gradient(90deg,#000,#0000 68%)}.hero-copy{z-index:1;position:relative}.eyebrow,.section-kicker{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:8px;margin:0 0 12px;font-size:12px;font-weight:650;display:inline-flex}h1{letter-spacing:-.065em;max-width:720px;color:var(--text);margin:0;font-size:clamp(36px,5vw,58px);font-weight:610;line-height:.96}h2{letter-spacing:-.04em;color:var(--text);margin:0;font-weight:610}.subtitle{color:var(--muted);max-width:680px;margin:16px 0 0;font-size:17px;line-height:1.65}.hero-actions{flex-wrap:wrap;gap:8px;margin-top:26px;display:flex}.hero-stats{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.hero-stats span{width:fit-content;color:var(--text-soft);border:1px solid var(--border-soft);background:#ffffff09;border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:12px;font-weight:650;display:inline-flex}.hero-stats b{color:var(--text);font-weight:750}.hero-card{z-index:1;color:#fff;background:radial-gradient(circle at 88% 8%,#fff3,#0000 10rem),linear-gradient(135deg,#5e6ad2,#191a1b 66%);border:1px solid #ffffff1f;border-radius:18px;flex-direction:column;justify-content:flex-end;min-height:214px;padding:24px;display:flex;position:relative;box-shadow:0 24px 70px #5e6ad233}.hero-card span{opacity:.72;font-size:13px;font-weight:680}.hero-card strong{letter-spacing:-.055em;margin-top:8px;font-size:clamp(30px,4vw,42px);font-weight:650}.hero-card small{opacity:.72;margin-top:8px;line-height:1.5}.focus-panel{box-shadow:none;background:linear-gradient(#ffffff0e,#ffffff08),radial-gradient(circle at 12% 0,#7170ff29,#0000 22rem);grid-template-columns:minmax(280px,.9fr) minmax(0,1.4fr);align-items:stretch;gap:16px;margin-bottom:14px;padding:18px;display:grid}.focus-main{align-content:center;gap:8px;min-width:0;display:grid}.focus-main h2{letter-spacing:-.055em;font-size:clamp(22px,2.6vw,34px);line-height:1.05}.focus-main p{color:var(--text-soft);margin:0;font-size:14px;line-height:1.58}.focus-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.focus-grid div{border:1px solid var(--border-soft);background:#ffffff08;border-radius:16px;align-content:center;gap:5px;min-width:0;padding:13px;display:grid}.focus-grid span{color:var(--muted);font-size:12px;font-weight:750}.focus-grid strong{color:var(--text);letter-spacing:-.04em;text-overflow:ellipsis;white-space:nowrap;font-size:18px;font-weight:760;overflow:hidden}.focus-grid small{color:var(--subtle);font-weight:650;line-height:1.35}.toolbar{box-shadow:none;grid-template-columns:160px 180px 160px minmax(220px,1fr) auto;align-items:end;gap:10px;margin-bottom:14px;padding:12px;display:grid}label{color:var(--text-soft);gap:7px;font-size:12px;font-weight:650;display:grid}label svg{vertical-align:middle;margin-right:4px}input,select,textarea{border:1px solid var(--border);width:100%;color:var(--text);background:#ffffff0b;border-radius:12px;outline:none;padding:11px 12px;transition:border-color .18s,box-shadow .18s,background .18s}input::placeholder,textarea::placeholder{color:var(--subtle)}input:focus,select:focus,textarea:focus{background:#ffffff12;border-color:#7170ffb3;box-shadow:0 0 0 4px #7170ff21}select option{color:var(--text);background:#111318}textarea{resize:vertical;min-height:92px}button{color:var(--text);background:#ffffff0f;border:1px solid #ffffff1a;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:11px 14px;font-weight:650;transition:transform .18s,background .18s,border-color .18s,opacity .18s;display:inline-flex}button:hover:not(:disabled){background:#ffffff17;border-color:#ffffff29;transform:translateY(-1px)}button:disabled{opacity:.55;cursor:wait}button.soft{color:#dfe2ff;background:#7170ff21;border-color:#7170ff3d}button.ghost{color:var(--muted);background:#ffffff0a;padding:7px 9px;font-size:12px}button.full{width:100%}.form button[type=submit]{background:var(--accent-strong);border-color:#ffffff1f}.alert{border-radius:14px;margin-bottom:14px;padding:12px 16px;font-weight:650}.error{color:#fecaca;background:#f8717124;border:1px solid #f8717147}.success{color:#bbf7d0;background:#10b98124;border:1px solid #10b98147}.cards{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px;display:grid}.metric{box-shadow:none;gap:7px;padding:18px;display:grid;position:relative;overflow:hidden}.metric:after{content:"";background:#7170ff1a;border-radius:999px;width:120px;height:120px;position:absolute;top:-34px;right:-34px}.metric svg{color:var(--accent)}.income-metric svg{color:var(--green)}.metric span{color:var(--muted);font-size:13px;font-weight:680}.metric strong{letter-spacing:-.05em;font-size:24px;font-weight:650}.metric small{color:var(--muted)}.trend-rail{box-shadow:none;grid-template-columns:220px minmax(0,1fr);align-items:center;gap:14px;margin-bottom:14px;padding:16px 18px;display:grid}.trend-rail h2{font-size:19px}.pulse-items{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.pulse-items span{border:1px solid var(--border-soft);min-width:0;color:var(--muted);background:#ffffff07;border-radius:14px;gap:4px;padding:10px 12px;font-size:12px;font-weight:650;display:grid}.pulse-items b{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:750;overflow:hidden}.dashboard-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:14px;display:grid}.primary-column,.side-column{gap:14px;display:grid}.side-column{position:sticky;top:16px}.form,.quick-parser,.budget-card,.chart-panel,.insight-panel,.table-panel,.calendar-panel{padding:18px}.form{gap:10px;display:grid}.quick-amounts{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.quick-amounts button{color:var(--text-soft);padding:8px 6px}.section-title{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.section-title>div{gap:5px;display:grid}.section-title h2{align-items:center;gap:8px;font-size:20px;display:inline-flex}.section-title span:not(.section-kicker),.section-title p{color:var(--text-soft);margin:0;font-size:12px;font-weight:650}.section-kicker{color:var(--subtle);margin:0}.table-title{align-items:flex-start}.bars{gap:12px;display:grid}.bar-label{justify-content:space-between;gap:12px;margin-bottom:7px;font-size:13px;display:flex}.bar-label span{font-weight:680}.bar-label em{color:var(--muted);font-style:normal}.bar-track,.budget-track{background:#ffffff12;border-radius:999px;height:10px;overflow:hidden}.bar-fill,.budget-fill{background:linear-gradient(90deg, var(--accent), #9b8cff);border-radius:999px;height:100%}.budget-card p{color:var(--muted);margin:10px 0 0;font-size:13px;font-weight:600}.insight-panel ul{color:var(--text-soft);gap:9px;margin:0;padding-left:18px;font-size:13px;line-height:1.55;display:grid}.calendar-summary{color:var(--text-soft);border:1px solid var(--border-soft);white-space:nowrap;background:#ffffff0d;border-radius:999px;padding:7px 10px;font-weight:680}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;display:grid}.weekday{color:var(--text-soft);text-align:center;padding:0 0 4px;font-size:11px;font-weight:750}.calendar-day{text-align:left;border:1px solid var(--border-soft);min-height:104px;color:var(--text);box-shadow:none;background:#ffffff06;border-radius:14px;place-content:start flex-start;align-items:flex-start;gap:5px;padding:9px;display:grid}.calendar-day:hover:not(:disabled){box-shadow:none;background:#ffffff0e}.calendar-day.muted-day{opacity:.34;background:#ffffff04}.calendar-day.today{border-color:#7170ff94}.calendar-day.selected{border-color:var(--accent);background:#7170ff1a;outline:3px solid #7170ff24}.day-number{background:#ffffff0f;border-radius:999px;justify-content:center;align-items:center;width:26px;height:26px;font-weight:750;display:inline-flex}.calendar-day.today .day-number{background:var(--accent-strong);color:#fff}.calendar-day strong{letter-spacing:-.03em;font-size:13px}.calendar-day em{color:var(--muted);font-size:11px;font-style:normal;font-weight:700}.mini-expenses{gap:3px;min-width:0;display:grid}.mini-expenses small{text-overflow:ellipsis;white-space:nowrap;color:var(--text-soft);background:#ffffff0b;border-radius:999px;padding:2px 7px;overflow:hidden}.panel-lite{border:1px solid var(--border-soft);background:#ffffff08;border-radius:14px;margin-top:10px;padding:11px}.selected-day{justify-content:space-between;align-items:center;gap:12px;display:flex}.selected-day strong,.selected-day span{display:block}.selected-day span{color:var(--muted);margin-top:2px;font-size:13px}.day-transactions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.day-transactions span,.day-transactions em{border:1px solid var(--border-soft);min-width:0;color:var(--text-soft);background:#ffffff06;border-radius:12px;justify-content:space-between;gap:8px;padding:9px 10px;font-size:12px;font-style:normal;font-weight:650;display:flex}.day-transactions span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.day-transactions b{color:var(--text);white-space:nowrap;font-weight:750}.day-transactions em{color:var(--muted);grid-column:1/-1}.expense-list{gap:8px;max-height:780px;padding-right:2px;display:grid;overflow:auto}.expense{border:1px solid var(--border-soft);background:#ffffff08;border-radius:16px;justify-content:space-between;gap:16px;padding:13px;display:flex}.expense-main{min-width:0}.expense strong{margin:6px 0 4px;font-size:16px;font-weight:650;display:block}.expense span,.expense small{color:var(--muted);font-size:12px;line-height:1.45;display:block}.chip{background:#7170ff24;border-radius:999px;width:fit-content;padding:3px 8px;font-weight:700;color:#c7cbff!important;display:inline-flex!important}.income-row{background:#10b9810f;border-color:#10b98142}.income-row .chip{background:#10b98129;color:#86efac!important}.income-row .expense-amount b{color:var(--green)}.expense:not(.income-row) .expense-amount b{color:var(--red)}.expense-amount{text-align:right;align-content:center;justify-items:end;gap:8px;min-width:110px;display:grid}.expense-amount b{letter-spacing:-.035em;font-size:17px}.empty{color:var(--muted);margin:12px 0 0}@media (width<=1040px){.app-shell{width:min(100% - 20px,1180px);padding-top:18px}.hero,.focus-panel,.toolbar,.cards,.dashboard-grid,.trend-rail,.pulse-items{grid-template-columns:1fr}.focus-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{padding:20px}.hero-card{min-height:176px}.toolbar{align-items:stretch}.side-column{position:static}.calendar-grid{gap:5px}.calendar-day{border-radius:12px;min-height:90px;padding:7px}.calendar-day strong{font-size:12px}.mini-expenses{display:none}.expense-list{max-height:none}}@media (width<=560px){.app-shell{width:min(100% - 14px,1180px)}.cards{gap:10px}.hero-actions,.hero-stats{display:grid}.hero-stats span{justify-content:space-between;width:100%}.focus-grid,.quick-amounts,.day-transactions{grid-template-columns:1fr 1fr}h1{font-size:38px}.subtitle{font-size:15px}.section-title{flex-direction:column;align-items:flex-start}.calendar-panel,.table-panel,.form,.quick-parser,.budget-card,.chart-panel,.insight-panel{padding:14px}.weekday{font-size:10px}.calendar-day{gap:3px;min-height:68px;padding:6px}.day-number{width:23px;height:23px;font-size:12px}.calendar-day em{font-size:10px}.selected-day,.expense{flex-direction:column;align-items:stretch}.expense-amount{text-align:left;justify-items:start}}
