:root{--bg:#f7f9fb;--panel:#fff;--ink:#111827;--muted:#64748b;--line:#dbe3ec;--primary:#0f766e;--primary-dark:#115e59;--danger:#b91c1c;--warning:#b45309}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.app-shell{grid-template-columns:248px 1fr;min-height:100vh;display:grid}.sidebar{color:#fff;background:#0b1220;padding:24px 16px}.brand{margin-bottom:28px;font-size:18px;font-weight:700}.nav{gap:8px;display:grid}.nav a{color:#d9e2ec;border-radius:8px;padding:10px 12px}.nav a:hover{background:#ffffff1a}.main{padding:28px}.topbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.grid{gap:16px;display:grid}.metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:18px}.metric{margin-top:8px;font-size:32px;font-weight:700}.muted{color:var(--muted)}.table{border-collapse:collapse;background:var(--panel);border:1px solid var(--line);border-radius:8px;width:100%;overflow:hidden}.table th,.table td{text-align:left;border-bottom:1px solid var(--line);padding:12px}.toolbar{justify-content:space-between;gap:12px;margin-bottom:16px;display:flex}.input{border:1px solid var(--line);border-radius:8px;min-width:260px;padding:10px 12px}.button{background:var(--primary);color:#fff;cursor:pointer;border:0;border-radius:8px;padding:10px 14px}.button:hover{background:var(--primary-dark)}.button.secondary{color:var(--ink);background:#e2e8f0}.button.secondary:hover{background:#cbd5e1}.button.danger{background:var(--danger)}.crud-form{margin-bottom:16px}.form-header,.form-actions,.row-actions{align-items:center;gap:10px;display:flex}.form-header{justify-content:space-between;margin-bottom:14px}.form-header h2{margin:0}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.field{color:var(--muted);gap:6px;font-size:14px;display:grid}.field input[type=checkbox]{justify-self:start;width:18px;height:18px}.form-actions{margin-top:14px}.row-actions .button{padding:7px 10px}.login-page{place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{width:min(420px,100%)}.form{gap:12px;display:grid}@media (max-width:800px){.app-shell{grid-template-columns:1fr}.sidebar{position:static}.metrics{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.main{padding:18px}}
