:root { color-scheme: dark; --bg:#07111f; --panel:rgba(13,31,54,.82); --line:rgba(106,214,255,.22); --text:#eaf8ff; --muted:#87a9bc; --accent:#54e7ff; --danger:#ff8d8d; --ok:#86f7bd; }
* { box-sizing: border-box; }
body { margin:0; min-height:100vh; font-family: Arial, "Microsoft YaHei", sans-serif; background: radial-gradient(circle at 20% 10%, #12385f, var(--bg) 45%), var(--bg); color:var(--text); }
.admin-shell { width:min(1440px, 96vw); margin:0 auto; padding:28px 0 40px; }
.admin-header { display:flex; justify-content:space-between; gap:24px; align-items:flex-start; padding:22px; border:1px solid var(--line); background:linear-gradient(135deg, rgba(13,31,54,.9), rgba(4,12,26,.72)); border-radius:24px; box-shadow:0 0 60px rgba(84,231,255,.12); }
.eyebrow { color:var(--accent); letter-spacing:.18em; margin:0 0 10px; font-size:12px; }
h1 { margin:.1em 0; font-size:36px; } p { color:var(--muted); }
a, button { color:var(--text); border:1px solid var(--line); background:rgba(84,231,255,.08); border-radius:12px; padding:10px 14px; text-decoration:none; cursor:pointer; }
nav { display:flex; flex-wrap:wrap; gap:10px; justify-content:flex-end; }
.notice { margin:18px 0; padding:14px 18px; border:1px solid rgba(255,216,138,.28); background:rgba(255,216,138,.08); border-radius:16px; color:#ffd88a; }
.cards { display:grid; grid-template-columns:repeat(4, 1fr); gap:14px; margin-bottom:16px; }
.card, .panel { border:1px solid var(--line); border-radius:18px; background:var(--panel); box-shadow:0 12px 40px rgba(0,0,0,.18); }
.card { padding:18px; } .card span, small { color:var(--muted); } .card strong { display:block; margin:8px 0; font-size:28px; }
.grid { display:grid; grid-template-columns: 1.4fr 1fr; gap:16px; margin-top:16px; }
.panel { padding:18px; overflow:hidden; } .panel-head { display:flex; justify-content:space-between; gap:12px; align-items:center; margin-bottom:12px; } h2 { margin:0; }
.filters { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:12px; } select, input { background:#071827; color:var(--text); border:1px solid var(--line); border-radius:10px; padding:10px; }
table { width:100%; border-collapse:collapse; font-size:13px; } th,td { border-bottom:1px solid rgba(106,214,255,.12); padding:10px; text-align:left; vertical-align:top; } th { color:#9fdfff; }
pre { white-space:pre-wrap; word-break:break-word; margin:0; color:#dff5ff; line-height:1.5; }
.audit-list { display:grid; gap:8px; max-height:480px; overflow:auto; }
.audit-item { padding:10px; border:1px solid rgba(106,214,255,.16); border-radius:12px; background:rgba(255,255,255,.03); }
.danger { color:var(--danger); } .ok { color:var(--ok); }
@media (max-width: 980px){ .cards,.grid{grid-template-columns:1fr;} .admin-header{flex-direction:column;} }

/* B14 anonymous security-control panel. It intentionally reuses the existing responsive grid. */
#securityEvents { max-height: 360px; overflow: auto; }
#securityMode { min-width: 150px; }
