:root{--bg: #0f1419;--bg-elevated: #1a222c;--bg-soft: #243040;--border: rgba(232, 236, 241, .12);--text: #e8ecf1;--muted: #9aa7b5;--accent: #2dd4a8;--accent-dim: rgba(45, 212, 168, .16);--danger: #f07178;--warn: #e6c07b;--font-body: "DM Sans", system-ui, sans-serif;--font-display: "Instrument Serif", Georgia, serif;--radius: 12px;--shadow: 0 18px 50px rgba(0, 0, 0, .35)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:var(--font-body);color:var(--text);background:radial-gradient(1200px 600px at 10% -10%,rgba(45,212,168,.18),transparent 55%),radial-gradient(900px 500px at 100% 0%,rgba(94,152,225,.14),transparent 50%),linear-gradient(160deg,#0b1016,#121a22 45%,#0f1419);background-attachment:fixed}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--accent);text-decoration:none}.app-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.sidebar{padding:1.5rem 1rem;border-right:1px solid var(--border);background:#0f1419b8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.brand{font-family:var(--font-display);font-size:2rem;letter-spacing:.02em;margin:0 0 .25rem}.brand-sub{color:var(--muted);font-size:.85rem;margin-bottom:2rem}.nav a{display:block;padding:.7rem .85rem;border-radius:10px;color:var(--muted);margin-bottom:.25rem;transition:background .2s ease,color .2s ease,transform .2s ease}.nav a:hover,.nav a.active{background:var(--accent-dim);color:var(--text);transform:translate(2px)}.main{padding:1.5rem 1.75rem 2.5rem}.page-title{font-family:var(--font-display);font-size:2.4rem;margin:0 0 .35rem}.page-sub{color:var(--muted);margin:0 0 1.5rem}.panel{background:#1a222ce0;border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1.2rem;box-shadow:var(--shadow);animation:rise .35s ease both}.panel+.panel{margin-top:1rem}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.85rem}.field label{font-size:.8rem;color:var(--muted);letter-spacing:.03em;text-transform:uppercase}.field input,.field select,.field textarea{background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:.7rem .8rem;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:#2dd4a88c}.row{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.btn{border:0;border-radius:10px;padding:.65rem 1rem;background:var(--accent);color:#06251c;font-weight:600;cursor:pointer;transition:transform .15s ease,filter .15s ease}.btn:hover{transform:translateY(-1px);filter:brightness(1.05)}.btn.secondary{background:transparent;color:var(--text);border:1px solid var(--border)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.92rem}th,td{text-align:left;padding:.7rem .55rem;border-bottom:1px solid var(--border);white-space:nowrap}th{color:var(--muted);font-weight:500;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.stat{font-size:2rem;font-weight:700}.muted{color:var(--muted)}.error{color:var(--danger);margin:.5rem 0}.success{color:var(--accent);margin:.5rem 0}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:1.5rem}.login-card{width:min(420px,100%);animation:rise .45s ease both}.login-card h1{font-family:var(--font-display);font-size:3rem;margin:0 0 .25rem}.user-chip{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--border);font-size:.85rem;color:var(--muted)}@media (max-width: 900px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--border)}.grid-2{grid-template-columns:1fr}}
