
:root{--bg:#0b1020;--card:#121a33;--text:#e5ecff;--muted:#a9b3cf;--accent:#4ea1ff;--danger:#ff6b6b;}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial,sans-serif;background:var(--bg);color:var(--text)}
a{color:var(--accent);text-decoration:none}
.container{max-width:1000px;margin:2rem auto;padding:0 1rem}
.topbar{display:flex;justify-content:space-between;align-items:center;background:#0e1530;padding:0.75rem 1rem;border-bottom:1px solid #243058;position:sticky;top:0}
.topbar .brand{display:flex;gap:.5rem;align-items:center;font-weight:700}
.topbar nav a{margin-left:1rem}
.topbar nav a.danger{color:var(--danger)}
.grid{display:grid;gap:1rem}
.grid.two{grid-template-columns:repeat(2,1fr)}
.card{background:var(--card);padding:1rem;border:1px solid #223058;border-radius:14px;box-shadow:0 6px 24px rgba(0,0,0,.25)}
.card.auth{max-width:420px;margin:3rem auto}
label{display:flex;flex-direction:column;gap:.35rem;margin:.5rem 0;font-size:.95rem}
input,select,button{padding:.6rem;border-radius:10px;border:1px solid #30406b;background:#0f1630;color:var(--text)}
button{background:linear-gradient(180deg,#1b59ff,#1134a5);border:0;font-weight:700;cursor:pointer}
button.danger{background:linear-gradient(180deg,#ff3e62,#a51029)}
.inline-form{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;margin:.5rem 0}
table{width:100%;border-collapse:collapse;margin-top:.75rem}
th,td{border-bottom:1px solid #223058;padding:.6rem;text-align:left}
.alert{padding:.6rem;border-radius:10px;margin:.5rem 0}
.alert-error{background:#3a1020;border:1px solid #7a1c3a}
details summary{cursor:pointer;color:var(--muted)}
.footer{padding:1rem;text-align:center;color:var(--muted)}
canvas{max-width:100%;}
img{height:22px}
@media (max-width:640px){.grid.two{grid-template-columns:1fr}}
