:root{--text:#1f2937;--heading:#111827;--muted:#6b7280;--bg:#f7f5ef;--border:#e6e1d5;--accent:#1e5a9e;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{background:radial-gradient(circle at 15% 20%, #ffffffa6, transparent 35%), radial-gradient(circle at 80% 10%, #f1e8d1b3, transparent 28%), var(--bg);min-height:100vh;margin:0}#root{min-height:100vh}h1,h2{color:var(--heading);margin:0}.app-shell{box-sizing:border-box;width:100%;max-width:980px;margin:0 auto;padding:24px 16px 48px}.topbar{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;margin-bottom:18px;display:flex}.kicker{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:12px}.nav-tabs{flex-wrap:wrap;gap:8px;display:flex}.nav-tabs a{color:var(--text);border:1px solid var(--border);background:#fff;border-radius:10px;padding:8px 12px;text-decoration:none}.nav-tabs a.active{background:var(--accent);color:#fff;border-color:var(--accent)}.page-wrap{gap:14px;display:grid}.status{color:var(--muted);margin:0}.error-banner{color:#991b1b;background-color:#fee2e2;border:1px solid #f87171;border-radius:10px;margin:0;padding:12px 16px;font-weight:500}.card{border:1px solid var(--border);text-align:left;background:#fff;border-radius:14px;padding:14px;box-shadow:0 6px 30px #00000008}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.form-grid input,.form-grid textarea,.form-grid select,.form-grid button,.card button{font:inherit;border:1px solid var(--border);border-radius:10px;padding:10px}.form-grid textarea{resize:vertical;grid-column:1/-1;min-height:90px}.form-grid button,.card button{background:var(--accent);border-color:var(--accent);color:#fff;cursor:pointer}.form-grid .btn-secondary{color:var(--text);border-color:var(--border);background:#fff}.summary-row{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.expense-list{margin:0;padding:0;list-style:none}.expense-list li{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.expense-list li:first-child{border-top:0}.expense-list span{color:var(--muted);font-size:14px;display:block}.right{text-align:right}@media (width<=700px){.form-grid{grid-template-columns:1fr}.summary-row,.expense-list li{flex-direction:column;align-items:flex-start}.right{text-align:left}}
