*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#111827;color:#e5e7eb}a{color:inherit}header{height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;background:#0b1220;border-bottom:1px solid #263244;position:sticky;top:0;z-index:10}nav{display:flex;gap:10px;flex-wrap:wrap}nav a,.button,button{background:#1f2937;border:1px solid #374151;color:#fff;border-radius:10px;padding:9px 13px;text-decoration:none;cursor:pointer}button:hover,nav a:hover,.button:hover{background:#374151}.home,.panel{padding:28px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.card{display:block;background:#172033;border:1px solid #303b50;border-radius:18px;padding:22px;text-decoration:none;box-shadow:0 12px 28px #0005}.card h2{margin-top:0}.login-body{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at top,#334155,#0f172a)}.login-card{width:360px;background:#111827;border:1px solid #374151;border-radius:22px;padding:28px;box-shadow:0 20px 50px #0008}.login-card input,.toolbar input,.inline input{width:100%;padding:12px;margin:8px 0;background:#0b1220;color:#fff;border:1px solid #374151;border-radius:10px}.login-card button{width:100%;margin-top:10px}.alert{background:#7f1d1d;padding:10px;border-radius:8px;margin:10px 0}.inline{display:flex;gap:10px;max-width:520px}.player-grid{margin-top:20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.player-row{display:flex;justify-content:space-between;align-items:center;background:#172033;padding:10px;border-radius:10px}.editor-layout{display:grid;grid-template-columns:280px 1fr;gap:16px;padding:16px}aside{background:#0b1220;border:1px solid #263244;border-radius:16px;padding:14px;height:calc(100vh - 90px);overflow:auto}.list{min-height:70vh}.chip{display:inline-flex;align-items:center;gap:5px;background:#0ea5e9;color:#00111b;font-weight:800;border-radius:999px;padding:7px 11px;margin:5px;cursor:grab;box-shadow:0 6px 18px #0007}.chip.assigned{background:#fff;color:#111;text-shadow:none}.chip span{font-size:10px;background:#111;color:#fff;border-radius:99px;padding:2px 4px}.map-wrap{min-width:0}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:12px;background:#0b1220;border:1px solid #263244;border-radius:16px;padding:10px}.toolbar label{display:flex;align-items:center;gap:6px}.toolbar input{width:150px;margin:0}.map{position:relative;width:100%;max-width:1500px;margin:auto}.map img{width:100%;display:block;border-radius:10px}.slot{position:absolute;transform:translate(-50%,-110%);min-width:150px;min-height:40px;border:2px dashed rgba(255,255,255,.25);border-radius:14px;padding:4px;text-align:center}.slot:hover,.subs:hover,#available:hover{border-color:#38bdf8}.subs{position:absolute;left:1%;bottom:2%;width:250px;min-height:88px;border:2px dashed rgba(14,165,233,.45);border-radius:14px;padding:8px}.subs:before{content:'SUBSTITUTES';display:block;color:#38bdf8;font-weight:900;letter-spacing:2px;margin:0 0 6px 4px}#status{color:#22c55e;font-weight:bold}@media(max-width:900px){.editor-layout{grid-template-columns:1fr}aside{height:auto}.slot{min-width:110px}.chip{font-size:12px;padding:5px 8px}}

.search{width:100%;box-sizing:border-box;margin:0 0 12px 0;padding:10px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.18);background:#111;color:#fff;outline:none}
.search:focus{border-color:#28bfff}
button.danger{background:#7f1d1d;color:#fff;border:1px solid #ef4444}
button.danger:hover{background:#991b1b}
