body{color:#1f2933;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.layout{color:#1f2933;min-height:100vh;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;display:flex}.sidebar{color:#e2e8f0;background:#0f172a;flex-direction:column;flex-shrink:0;width:230px;padding:18px 12px;display:flex}.brand{letter-spacing:.3px;padding:8px 8px 18px;font-size:20px;font-weight:700}.sidebar nav{flex-direction:column;gap:4px;display:flex}.nav-item{text-align:left;color:#cbd5e1;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;width:100%;padding:10px 12px;font-size:14px;transition:background .15s,color .15s;display:flex}.nav-item:hover{color:#fff;background:#1e293b}.nav-item.active{color:#fff;background:#2563eb}.nav-icon{text-align:center;width:18px;font-size:15px}.sidebar-footer{color:#64748b;margin-top:auto;padding:12px 8px 0;font-size:11px}.main{background:#f1f5f9;flex-direction:column;flex:1;display:flex}.topbar{background:#fff;border-bottom:1px solid #e2e8f0;align-items:baseline;gap:12px;padding:16px 24px;display:flex}.topbar h1{margin:0;font-size:18px}.topbar-sub{color:#94a3b8;font-size:12px}.content{flex:1;padding:24px}.placeholder-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;box-shadow:0 1px 2px #0f172a0a}.placeholder-note{color:#64748b;background:#f8fafc;border-left:3px solid #cbd5e1;border-radius:4px;margin:0 0 18px;padding:8px 12px;font-size:13px}.txn-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:640px;display:grid}.txn-form label{color:#334155;flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.txn-form input,.txn-form select{border:1px solid #cbd5e1;border-radius:8px;padding:9px 10px;font-size:14px;font-weight:400}.primary-btn{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;grid-column:1/-1;justify-self:start;padding:10px 18px;font-size:14px;font-weight:600}.primary-btn:hover{background:#1d4ed8}.ledger-table{border-collapse:collapse;width:100%;font-size:13px}.ledger-table th,.ledger-table td{text-align:left;border-bottom:1px solid #eef2f7;padding:10px 12px}.ledger-table th{color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.ledger-table .num{text-align:right}.empty-row{text-align:center;color:#94a3b8;padding:24px 0}.report-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.report-list li{border:1px solid #eef2f7;border-radius:8px;justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.report-name{color:#334155;font-weight:600}.report-status{color:#94a3b8;font-size:12px}.sidebar-footer{color:#94a3b8;border-top:1px solid #ffffff1f;flex-direction:column;gap:4px;margin-top:auto;padding-top:12px;font-size:11px;display:flex}.sidebar-footer .ok{color:#86efac}.sidebar-footer .bad{color:#fca5a5;font-weight:600}.txn-form .row,.placeholder-card .row{flex-wrap:wrap;align-items:flex-end;gap:14px;width:100%;display:flex}.row label{flex:1}.txn-form .full{grid-column:1/-1}.line-table{border-collapse:collapse;grid-column:1/-1;width:100%;margin:4px 0;font-size:13px}.line-table th,.line-table td{text-align:left;border-bottom:1px solid #eef2f7;padding:6px 8px}.line-table input,.line-table select{border:1px solid #cbd5e1;border-radius:6px;width:100%;padding:6px 8px;font-size:13px}.totals{color:#334155;grid-column:1/-1;gap:18px;font-size:13px;font-weight:600;display:flex}.actions{grid-column:1/-1;align-items:center;gap:12px;display:flex}.link-btn{color:#2563eb;cursor:pointer;background:0 0;border:none;padding:4px 6px;font-size:13px}.link-btn:disabled{color:#94a3b8;cursor:not-allowed}.alert{border-radius:8px;grid-column:1/-1;margin-top:8px;padding:10px 14px;font-size:13px}.alert.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.alert.warn{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.alert.ok{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0}.ok{color:#047857}.bad{color:#b91c1c}.reports{flex-direction:column;gap:16px;display:flex}.reports h3{color:#1e293b;margin:0 0 8px;font-size:15px}.total-row td{border-top:2px solid #cbd5e1;font-weight:700}.hint{color:#94a3b8;font-size:12px}.period-actions{align-items:center;gap:6px;display:flex}.placeholder-card h3{color:#1e293b;margin:18px 0 8px;font-size:15px}.placeholder-card ul{color:#334155;font-size:13px}.placeholder-card code{background:#f1f5f9;border-radius:4px;padding:1px 5px}:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}
