
:root { --bg:#0f172a; --panel:#111827; --text:#e5e7eb; --muted:#94a3b8; --accent:#22c55e; --danger:#ef4444; --link:#93c5fd; }
* { box-sizing: border-box; }
body { margin:0; padding:2rem; background:var(--bg); color:var(--text); font-family:-apple-system, BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Fira Sans','Droid Sans','Helvetica Neue',Arial,sans-serif; }
.container { max-width: 1100px; margin: 0 auto; }
header { display:flex; align-items:center; justify-content:space-between; margin-bottom:1rem; }
header h1 { font-size:1.4rem; margin:0; }
.panel { background:var(--panel); border:1px solid #1f2937; border-radius:10px; padding:1rem; }
.table { width:100%; border-collapse:collapse; }
.table th, .table td { padding:0.6rem 0.5rem; border-bottom:1px solid #1f2937; }
.table th { text-align:left; color:var(--muted); font-weight:600; font-size:0.9rem; }
.table td a { color:var(--link); text-decoration:none; }
.table td a:hover { text-decoration:underline; }
.small { color:var(--muted); font-size:0.9rem; }
.badge { display:inline-block; padding:0.15rem 0.4rem; border-radius:6px; background:#374151; font-size:0.75rem; color:#94a3b8; }
.controls { display:flex; gap:0.5rem; align-items:center; }
input, button, select { background:#0b1220; color:var(--text); border:1px solid #263449; border-radius:8px; padding:0.5rem 0.6rem; }
button.accent { background:#16351f; border-color:#1f6b3a; color:#8befa9; }
button.danger { background:#3b0d0d; border-color:#771b1b; color:#fca5a5; }
button.warn { background:#3b1a0d; border-color:#7a3d1b; color:#fbbf24; }
.form-row { display:flex; gap:0.5rem; flex-wrap:wrap; }
.msg { padding:0.6rem 0.8rem; border-radius:8px; margin-bottom:0.5rem; }
.msg.ok { background:#0b1e12; border:1px solid #1c3e2a; color:#a7f3d0; }
.msg.err { background:#1f0b0b; border:1px solid #5c1b1b; color:#fecaca; }
footer { margin-top:1rem; color:var(--muted); font-size:0.85rem; }
.action-cell { display:flex; gap:0.4rem; align-items:center; }
@media (max-width:640px){ .hide-sm { display:none; } }
