*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:#0b1020;color:#e7e9ee}
a{color:#93c5fd;text-decoration:none}a:hover{text-decoration:underline}
.topbar{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:#111827;border-bottom:1px solid #1f2937}
.brand{font-weight:700}
.menu a,.menu span{margin-left:12px}
.container{padding:20px;max-width:1200px;margin:0 auto}
h1,h2{margin:10px 0 14px}
.card{background:#111827;border:1px solid #1f2937;padding:16px;border-radius:12px;margin:10px 0}
label{display:block;margin:8px 0 4px}
input,select,button{width:100%;padding:10px;border-radius:10px;border:1px solid #374151;background:#0b1020;color:#e7e9ee}
button{cursor:pointer;background:#2563eb;border:1px solid #1d4ed8}button:hover{filter:brightness(1.05)}
button.danger{background:#b91c1c;border-color:#991b1b}
.btn{display:inline-block;padding:10px 12px;border:1px solid #1d4ed8;border-radius:10px;background:#1f2937;margin-left:10px}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.grid .wide{grid-column: span 2;}
.table{width:100%;border-collapse:collapse;margin-top:10px;border-radius:12px;overflow:hidden}
.table th,.table td{border-bottom:1px solid #1f2937;padding:10px;text-align:left}
.table td.num{text-align:right}
.flash .alert{padding:10px;border-radius:8px;margin:6px 0}
.alert.success{background:#064e3b}.alert.info{background:#1f2937}.alert.warning{background:#78350f}.alert.danger{background:#7f1d1d}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:1000px){.grid{grid-template-columns:1fr 1fr}.grid2{grid-template-columns:1fr}}
@media(max-width:640px){.grid{grid-template-columns:1fr}}
