:root{color:#172033;background:#eef2f6;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,#ffffffd1,#eef2f600 220px),#eef2f6}button,input,select,textarea{font:inherit}button{border:0;border-radius:8px;background:#d94727;color:#fff;font-weight:750;padding:12px 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:transform .15s ease,background .15s ease,box-shadow .15s ease;white-space:nowrap}button:disabled{opacity:.55;cursor:wait}button:not(:disabled):hover{background:#c83d20;box-shadow:0 10px 22px #d947272e}button:not(:disabled):active{transform:translateY(1px)}.center-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.setup-panel{width:min(420px,100%);background:#fff;border:1px solid #dfe4ec;border-radius:8px;padding:28px;box-shadow:0 20px 60px #17203314}.setup-panel h1,.setup-panel p{margin-top:0}.setup-panel input,.setup-panel button{width:100%;margin-top:12px}.ghost-light{border:1px solid #cbd5e1;background:#fff;color:#172033}.app-shell{min-height:100dvh;display:grid;grid-template-columns:220px minmax(0,1fr)}.sidebar{background:#111827;color:#fff;min-height:100dvh;padding:28px 18px;display:flex;flex-direction:column;gap:26px;position:sticky;top:0}.sidebar h1{font-size:1.22rem;margin:0;letter-spacing:0}.sidebar nav{display:grid;gap:6px}.sidebar a,.ghost{color:#dbe4ef;text-decoration:none;border-radius:8px;padding:11px 12px;background:transparent;justify-content:flex-start;font-weight:650}.sidebar a:hover,.sidebar a.active,.ghost:hover{background:#ffffff14}.sidebar a.active{color:#fff;box-shadow:inset 3px 0 #d94727}.ghost{margin-top:auto;width:100%}.content{padding:30px clamp(24px,3vw,42px) 42px;display:grid;gap:16px;align-content:start;min-width:0}.topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:4px}.topbar-actions{display:flex;align-items:center;gap:10px}.secondary-action{border:1px solid #cbd5e1;border-radius:8px;color:#172033;background:#fff;font-weight:750;padding:11px 14px;text-decoration:none;box-shadow:0 8px 18px #1720330d;white-space:nowrap}.eyebrow{margin:0 0 6px;color:#d94727;text-transform:uppercase;font-weight:800;font-size:.78rem;letter-spacing:.02em}.topbar h2{margin:0;max-width:620px;font-size:clamp(1.9rem,2.9vw,2.75rem);line-height:1;text-wrap:balance}.topbar-note{margin:6px 0 0;max-width:66ch;color:#64748b;font-size:1rem;line-height:1.45}.notice{background:#fff7ed;border:1px solid #fed7aa;color:#7c2d12;border-radius:8px;padding:12px 14px}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.summary-grid article,.panel{background:#fff;border:1px solid #dfe4ec;border-radius:8px;box-shadow:0 16px 42px #1720330e}.summary-grid article{padding:14px 16px;min-height:96px;display:grid;align-content:start;border-left:4px solid #d94727}.summary-grid span{display:block;color:#64748b;font-size:.88rem}.summary-grid strong{display:block;margin-top:6px;font-size:1.55rem;line-height:1.1;font-variant-numeric:tabular-nums}.summary-grid small{display:block;margin-top:6px;color:#7a8798;font-size:.78rem;line-height:1.25}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(390px,.96fr);gap:18px;align-items:start;min-width:0}.dashboard-grid .panel-title{display:block}.dashboard-grid .panel-title p{margin-top:8px;max-width:none}.panel{padding:20px;overflow-x:auto;min-width:0}.panel-title{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.panel-title h3,.panel-title p{margin:0}.panel-title p{color:#64748b;max-width:52ch;line-height:1.35}.entry-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}#manual .entry-form{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 12px}#manual .entry-form button{grid-column:span 2;justify-self:start;min-width:220px}#manual .entry-form .secondary-form-action{border:1px solid #cbd5e1;background:#fff;color:#172033;box-shadow:none}#manual .entry-form .secondary-form-action:hover{background:#f8fafc;box-shadow:none}#manual textarea{min-height:58px}#profit-loss .filters-grid,#profit-loss .mini-summary{grid-template-columns:repeat(4,minmax(0,1fr))}#profit-loss table{min-width:440px}.filters-grid,.mini-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.mini-summary article{border:1px solid #e5eaf1;border-radius:8px;padding:13px;background:#f8fafc}.mini-summary span{display:block;color:#64748b;font-size:.82rem}.mini-summary strong{display:block;margin-top:6px;font-size:1.22rem}label{display:grid;gap:6px;color:#334155;font-weight:700;font-size:.9rem}input,select,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-width:0;width:100%;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#172033;padding:11px 12px;transition:border-color .15s ease,box-shadow .15s ease}input:focus,select:focus,textarea:focus{border-color:#d94727;box-shadow:0 0 0 3px #d947271f;outline:none}textarea{min-height:84px;resize:vertical}.wide{grid-column:span 2}.entry-form button{align-self:end;min-height:44px}table{width:100%;border-collapse:collapse;min-width:780px}th,td{padding:12px 10px;border-bottom:1px solid #e5eaf1;text-align:left}th{color:#64748b;font-size:.78rem;text-transform:uppercase;letter-spacing:.02em}tbody tr:hover{background:#f8fafc}tfoot th{border-top:2px solid #cbd5e1;border-bottom:0;color:#172033;background:#f8fafc;font-size:.82rem}.amount{text-align:right;font-variant-numeric:tabular-nums}.action-column{text-align:right;white-space:nowrap}.table-action{min-height:34px;border:1px solid #cbd5e1;background:#fff;color:#172033;padding:7px 10px;box-shadow:none}.table-action:hover{background:#f8fafc;box-shadow:none}.empty-state{color:#64748b;text-align:center}.quick-shell{min-height:100dvh;display:grid;align-content:start;gap:14px;padding:18px;background:#f6f7f9}.quick-header{display:flex;align-items:center;justify-content:space-between;gap:14px}.quick-header h1{margin:0;font-size:1.6rem;line-height:1.05}.quick-card{display:grid;gap:14px;background:#fff;border:1px solid #dfe4ec;border-radius:8px;padding:16px;box-shadow:0 14px 40px #1720330f}.quick-card label,.quick-card input,.quick-card select,.quick-card textarea{max-width:100%}.quick-amount input{min-height:70px;font-size:2rem;font-weight:800;letter-spacing:0}.quick-segment{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.quick-segment button{min-height:48px;padding:10px 8px;border:1px solid #cbd5e1;background:#fff;color:#172033}.quick-segment button.active{border-color:#d94727;background:#d94727;color:#fff}.quick-save{min-height:54px;font-size:1.05rem}.type-label{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 9px;background:#eef2f7;color:#334155;font-size:.82rem;font-weight:750}.type-label.income{background:#dcfce7;color:#166534}.type-label.expense,.type-label.fee,.type-label.refund{background:#fee2e2;color:#991b1b}@media(max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;min-height:auto}.dashboard-grid,.summary-grid,.entry-form,.filters-grid,.mini-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}}@media(max-width:640px){.sidebar{padding:18px;gap:16px}.sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sidebar a,.ghost{padding:10px;font-size:.92rem}.ghost{margin-top:0}.content{padding:18px}.topbar,.panel-title,.topbar-actions{align-items:stretch;flex-direction:column}.summary-grid,.entry-form,.filters-grid,.mini-summary,#manual .entry-form,#profit-loss .filters-grid,#profit-loss .mini-summary{grid-template-columns:1fr}.wide{grid-column:span 1}#manual .entry-form button{grid-column:span 1;width:100%;min-width:0}}
