:root{
  --bg:#0b1020; --panel:#11182a; --soft:#1a2236;
  --txt:#dbe6ff; --muted:#94a3b8; --brand:#5b9aff;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--txt);font:14px/1.45 system-ui,Segoe UI,Roboto,Arial}
a{color:inherit;text-decoration:none}
.layout{display:grid;grid-template-columns:260px 1fr;min-height:100vh}
.sidebar{background:var(--panel);padding:18px 16px;display:flex;flex-direction:column;gap:12px}
.brand{font-weight:700;color:#fff;font-size:20px;letter-spacing:.4px}
.navlink{display:block;padding:10px 12px;border-radius:10px;background:var(--soft);margin-bottom:8px}
.navlink:hover{background:#22304d}
.footnote{margin-top:auto;font-size:12px;color:var(--muted)}
.content{padding:22px 28px}
h1{margin:0 0 16px 0;font-size:26px}
h2{margin:26px 0 10px 0;font-size:18px;color:#e5edff}
.muted{color:var(--muted)}

.flashwrap{margin-bottom:12px}
.flash{padding:10px;border-radius:10px;background:#17325b}
.flash.success{background:#144a2a}
.flash.error{background:#5b1b1b}

.teams .tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.tile{display:block;padding:14px 16px;border-radius:14px;font-weight:600;box-shadow:0 6px 16px rgba(0,0,0,.2)}
.bg-blue-600{background:#2563eb}.bg-sky-500{background:#0ea5e9}
.bg-green-600{background:#16a34a}.bg-green-400{background:#4ade80}
.bg-violet-400{background:#a78bfa}
.text-white{color:#fff}.text-black{color:#111}

.dropzone{position:relative;border:2px dashed #486aa7;border-radius:14px;padding:28px;text-align:center;color:#9fb5d8;background:#0f172a}
.dropzone.over{background:#121c36}
.dropzone input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}
.btn{margin-top:10px;background:#2563eb;color:#fff;border:0;padding:10px 16px;border-radius:10px;font-weight:600;cursor:pointer}
.btn:hover{background:#1e4fc7}

.table{width:100%;border-collapse:collapse;background:#0f172a;border-radius:12px;overflow:hidden}
.table th,.table td{padding:10px 12px;border-bottom:1px solid #1f2a44}
.table thead th{background:#132040;text-align:left}
.list{list-style:none;padding:0;margin:0}
.list li{padding:6px 0;border-bottom:1px solid #1f2a44}
