:root{--blue:#5f7f72;--dark:#25312d;--muted:#748078;--bg:#f7f3ed;--white:#fff;--green:#6f9b83;--red:#b86b5f;--amber:#c9a65a}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--dark)}.sidebar{position:fixed;inset:0 auto 0 0;width:230px;background:linear-gradient(180deg,#6f9b83,#9fb8a9);color:white;padding:28px 20px}.brand{font-size:28px;font-weight:800;line-height:1}.brand span{color:#f7f3ed}.sidebar nav{display:flex;flex-direction:column;gap:10px;margin-top:38px}.sidebar a{color:white;text-decoration:none;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.08)}.sidebar a:hover{background:rgba(255,255,255,.18)}.main{margin-left:230px;padding:28px}.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.top h1{margin:0;font-size:34px}.top p{margin:4px 0;color:var(--muted)}.pill{background:white;color:var(--blue);border:1px solid #d8e2d8;text-decoration:none;padding:10px 14px;border-radius:999px;font-weight:700}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.card,.panel{background:white;border:1px solid #e2e8f0;border-radius:22px;box-shadow:0 12px 28px rgba(55,70,60,.06)}.card{padding:22px}.card span{color:var(--muted);font-weight:700}.card strong{display:block;margin-top:10px;font-size:30px}.income strong{color:var(--green)}.expense strong{color:var(--red)}.balance strong{color:var(--blue)}.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.panel{padding:20px;margin-top:16px}.panel h2{margin:0 0 14px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px;border-bottom:1px solid #e2e8f0;font-size:14px}th{color:var(--muted);font-size:12px;text-transform:uppercase}.status{padding:5px 9px;border-radius:999px;background:#e2e8f0;font-size:12px}.status.confirmed{background:#dcfce7;color:#166534}.status.pending_review{background:#fef3c7;color:#92400e}.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.form-grid input,.form-grid select,.login-card input{border:1px solid #cbd5e1;border-radius:12px;padding:12px;font-size:15px}.form-grid button,.login-card button{border:0;background:var(--blue);color:white;border-radius:12px;padding:12px 16px;font-weight:800;cursor:pointer}pre{white-space:pre-wrap;background:#f8fafc;border-radius:14px;padding:14px;color:#334155;max-height:260px;overflow:auto}.login-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top,#dbeafe,#f8fafc)}.login-card{width:min(420px,92vw);background:white;padding:32px;border-radius:28px;box-shadow:0 30px 80px rgba(37,99,235,.20)}.login-card h1{margin:0 0 8px;font-size:32px}.login-card p{color:var(--muted)}.login-card form{display:flex;flex-direction:column;gap:10px}.alert{background:#fee2e2;color:#991b1b;border-radius:12px;padding:10px;margin:12px 0}@media(max-width:860px){.sidebar{position:static;width:auto;border-radius:0 0 24px 24px}.sidebar nav{flex-direction:row;overflow:auto;margin-top:18px}.main{margin-left:0;padding:18px}.cards,.grid,.form-grid{grid-template-columns:1fr}.top{align-items:flex-start;gap:12px;flex-direction:column}.top h1{font-size:28px}}.transfer strong{color:#7c3aed}.card small{display:block;color:var(--muted);margin-top:6px}.hint{color:var(--muted);font-size:14px}.compact{grid-template-columns:2fr 1fr 1fr}.chips{display:flex;flex-wrap:wrap;gap:10px}.chip{display:inline-flex;align-items:center;gap:8px;background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;border-radius:999px;padding:8px 10px}.chip button{border:0;background:#dbeafe;color:#1d4ed8;border-radius:999px;width:24px;height:24px;cursor:pointer;font-weight:900}.status.transfer{background:#ede9fe;color:#5b21b6}@media(max-width:1200px){.cards{grid-template-columns:repeat(2,1fr)}}.inline-convert{display:grid;grid-template-columns:90px 140px 180px 150px 110px 90px;gap:6px;min-width:760px;margin-bottom:6px}.inline-convert input,.inline-convert select{border:1px solid #cbd5e1;border-radius:10px;padding:8px}.inline-convert button,td form button{border:0;background:#2563eb;color:#fff;border-radius:10px;padding:8px 10px;font-weight:700;cursor:pointer}.status.review{background:#fef3c7;color:#92400e}.status.converted{background:#dcfce7;color:#166534}.status.ignored{background:#e2e8f0;color:#475569}
.status.done{background:#dcfce7;color:#166534}.status.open{background:#fef3c7;color:#92400e}.status.cancelled{background:#fee2e2;color:#991b1b}.compact{grid-template-columns:repeat(3,minmax(160px,1fr))}.table-wrap small{display:block;color:var(--muted);margin-top:4px}
@media(max-width:900px){.sidebar{position:static;width:auto}.main{margin-left:0}.cards,.grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}}
