:root{--primary:#153b2f;--accent:#17a673;--danger:#e74c3c;--warning:#f39c12;--bg:#eef4f1;--card:#fff;--text:#17211d;--muted:#6b7280;--shadow:0 12px 35px rgba(0,0,0,.08);--radius:18px}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:linear-gradient(135deg,#ecfdf5,#e8eef7);color:var(--text)}a{text-decoration:none;color:inherit}.layout{display:flex;min-height:100vh}.sidebar{width:270px;background:#0f2f26;color:#fff;padding:22px;position:sticky;top:0;height:100vh}.brand{display:flex;gap:12px;align-items:center;margin-bottom:28px}.brand span{display:block;color:#b8d7ce;font-size:13px}.logo{width:48px;height:48px;border-radius:16px;background:linear-gradient(135deg,#19c37d,#d6f7e7);display:grid;place-items:center;font-weight:900;color:#073b2c}.sidebar nav{display:grid;gap:8px}.sidebar a{padding:13px 14px;border-radius:12px;color:#e8fff6}.sidebar a:hover{background:rgba(255,255,255,.12)}.main{flex:1;padding:28px}.topbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:22px}.topbar h1{margin:0;font-size:28px}.topbar p{margin:4px 0 0;color:var(--muted)}.profile,.card{background:rgba(255,255,255,.82);backdrop-filter:blur(12px);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.6);border-radius:var(--radius)}.profile{padding:13px 16px}.card{padding:22px;margin-bottom:20px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.stat h3{font-size:14px;color:var(--muted);margin:0 0 10px}.stat .num{font-size:30px;font-weight:900}.income{color:#0c8b5c}.expense{color:#c0392b}.balance{color:#1452a5}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.field label{font-weight:800;font-size:13px;display:block;margin-bottom:7px;color:#32413c}.field input,.field select,.field textarea{width:100%;padding:12px 13px;border:1px solid #dce8e3;border-radius:12px;background:#fff;font-size:15px}.btn{display:inline-flex;align-items:center;gap:7px;border:0;border-radius:12px;padding:12px 16px;background:var(--primary);color:#fff;font-weight:800;cursor:pointer}.btn:hover{filter:brightness(1.08);transform:translateY(-1px)}.btn.green{background:var(--accent)}.btn.red{background:var(--danger)}.btn.yellow{background:var(--warning);color:#111}.actions{display:flex;gap:8px;flex-wrap:wrap}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;background:#fff;border-radius:16px;overflow:hidden}.table th{background:#13362b;color:#fff;text-align:left;padding:14px;font-size:13px;text-transform:uppercase}.table td{padding:13px;border-bottom:1px solid #eef2f0}.badge{padding:5px 10px;border-radius:999px;font-weight:800;font-size:12px}.badge.income{background:#ddf8ec}.badge.expense{background:#fde7e3}.alert{padding:13px 16px;border-radius:12px;margin-bottom:16px;font-weight:700}.alert.success{background:#dcfce7}.alert.error{background:#fee2e2}.filters{display:flex;gap:10px;flex-wrap:wrap;align-items:end}.login{max-width:430px;margin:8vh auto}.login .brand{color:#0f2f26}.footer-note{color:var(--muted);font-size:13px;margin-top:12px}@media(max-width:900px){.layout{display:block}.sidebar{position:relative;width:100%;height:auto}.sidebar nav{grid-template-columns:repeat(2,1fr)}.main{padding:16px}.grid,.form-grid{grid-template-columns:1fr}.topbar{display:block}.profile{margin-top:12px}}@media print{.sidebar,.topbar,.actions,.filters,.btn{display:none!important}.main{padding:0}.card{box-shadow:none;border:0}.table th{background:#000!important;color:#fff!important}}
