:root { color-scheme: dark; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; background:#07141c; color:#edf6f5; }
* { box-sizing:border-box; } body { margin:0; background:radial-gradient(circle at 12% -10%, #164a59 0, transparent 31rem), #07141c; min-height:100vh; } button,input { font:inherit; } button { border:0; border-radius:12px; padding:.72rem .92rem; background:#32c89a; color:#032019; font-weight:750; cursor:pointer; min-height:44px; } button:active { transform:translateY(1px); } button.quiet { background:#17303a; color:#d9ecea; } button.danger { background:#f06d6d; color:#2a0909; } button.kick { margin-left:auto; padding:.4rem .64rem; min-height:32px; font-size:.76rem; background:#263f47; color:#d9ecea; }.shell { width:min(1100px, 100%); margin:auto; padding:max(1rem, env(safe-area-inset-top)) 1rem max(2rem, env(safe-area-inset-bottom)); }.topbar { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin:1rem 0 1.1rem; }.topbar h1,.login-card h1 { font-size:clamp(1.7rem,6vw,2.5rem); line-height:1; margin:.25rem 0 0; letter-spacing:-.045em; }.eyebrow { font-size:.72rem; color:#73aaaf; font-weight:800; letter-spacing:.13em; margin:0; }.top-actions { display:flex; align-items:center; gap:.6rem; }.pill { white-space:nowrap; border:1px solid #31525a; color:#c4d6d8; background:#132931; padding:.4rem .6rem; border-radius:999px; font-size:.78rem; font-weight:700; }.pill.good { border-color:#27735b; color:#8de7c5; background:#0b3329; }.pill.warn { border-color:#8f6740; color:#ffd09a; background:#392817; }.hero-card,.panel,.metrics article { background:linear-gradient(135deg,rgba(22,50,59,.94),rgba(11,29,37,.94)); border:1px solid #24434c; box-shadow:0 18px 48px rgba(0,0,0,.16); }.hero-card { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1.35rem; border-radius:22px; }.hero-card h2,.panel h2 { margin:.25rem 0 .35rem; font-size:1.23rem; letter-spacing:-.025em; }.hero-card p:not(.eyebrow) { color:#b0cacc; margin:0; }.online-count { text-align:right; white-space:nowrap; }.online-count strong { display:block; color:#7ee9c0; font-size:2.25rem; line-height:1; }.online-count span { font-size:.76rem; color:#92b3b5; }.metrics { display:grid; grid-template-columns:repeat(3,1fr); gap:.7rem; margin:1rem 0; }.metrics article { padding:1rem; border-radius:16px; }.metrics span,.metrics small { display:block; color:#8fabad; font-size:.72rem; }.metrics span { font-weight:800; letter-spacing:.09em; }.metrics strong { display:block; font-size:1.43rem; margin:.38rem 0 .25rem; }.stack { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }.panel { border-radius:19px; padding:1rem; }.panel-head { display:flex; align-items:start; justify-content:space-between; gap:1rem; }.muted { color:#8fabad; font-size:.85rem; }.players ul { list-style:none; padding:0; margin:.8rem 0 0; }.players li { display:flex; align-items:center; gap:.65rem; min-height:45px; border-top:1px solid #21414a; }.players li.empty { color:#91aeb0; }.avatar { display:grid; place-items:center; width:28px; height:28px; border-radius:9px; background:#315762; color:#dffff3; font-size:.8rem; font-weight:800; }.control-grid { display:grid; grid-template-columns:1fr 1fr; gap:.65rem; margin-top:.8rem; }.control-grid button { font-size:.88rem; }.action-result { min-height:1.25rem; color:#a8c5c4; font-size:.83rem; margin:.8rem 0 0; overflow-wrap:anywhere; }.console-panel { margin-top:1rem; } pre { margin:.9rem 0; padding:.9rem; min-height:250px; max-height:440px; overflow:auto; background:#041015; border:1px solid #1c3740; color:#c9dedb; border-radius:13px; font:12px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace; white-space:pre-wrap; overflow-wrap:anywhere; }.command-row { display:flex; gap:.65rem; }.command-row input,.login-card input { min-width:0; flex:1; min-height:46px; border:1px solid #31525a; border-radius:12px; background:#091b22; color:#edf6f5; padding:.7rem .85rem; outline:none; }.command-row input:focus,.login-card input:focus { border-color:#54d6b0; box-shadow:0 0 0 3px rgba(84,214,176,.16); }.footer-note { text-align:center; color:#708d91; font-size:.75rem; margin:1.4rem 0 .25rem; }.login-wrap { min-height:100vh; display:grid; place-items:center; padding:1rem; }.login-card { width:min(430px,100%); border-radius:22px; padding:1.5rem; background:linear-gradient(145deg,#153843,#0b2029); border:1px solid #2a535b; box-shadow:0 25px 70px rgba(0,0,0,.32); }.login-card>p:not(.eyebrow) { color:#aac3c5; margin:.85rem 0 1.3rem; }.login-card form { display:grid; gap:.65rem; }.login-card label { font-size:.87rem; color:#c9dddd; font-weight:700; }.error { min-height:1.25rem; color:#ff9d9d; margin:0; font-size:.86rem; } [hidden] { display:none!important; }
.players > ul > li { border-top:1px solid #21414a; }.players li.player-row { display:block; min-height:0; }.player-row { padding:.55rem 0; }.player-line { display:flex; align-items:center; gap:.65rem; min-height:37px; }.online-chip { margin-left:auto; color:#8de7c5; background:#0b3329; border:1px solid #27735b; padding:.18rem .43rem; border-radius:999px; font-size:.68rem; font-weight:750; }.player-tools { margin:.45rem 0 .1rem 2.35rem; }.player-tools summary { cursor:pointer; color:#a8c5c4; font-size:.8rem; font-weight:750; }.manage-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.5rem; margin-top:.65rem; }.manage-grid button { padding:.52rem .55rem; min-height:38px; font-size:.76rem; }.mode-picker { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:.55rem; color:#b9d0d1; font-size:.78rem; }.mode-picker select { min-width:0; padding:.48rem .55rem; border:1px solid #31525a; border-radius:9px; background:#091b22; color:#edf6f5; }.manage-grid .tool-secondary { background:#263f47; color:#d9ecea; }.manage-grid .tool-danger { background:#6b3135; color:#ffe3e3; }
@media (max-width:650px) { .shell { padding-left:.8rem; padding-right:.8rem; }.topbar { margin-top:.5rem; }.top-actions .quiet { padding:.45rem .55rem; min-height:36px; font-size:.78rem; }.pill { font-size:.7rem; }.hero-card { align-items:flex-start; }.metrics { grid-template-columns:1fr 1fr; }.metrics article:last-child { grid-column:1/-1; }.stack { grid-template-columns:1fr; }.command-row { align-items:stretch; }.command-row button { padding:.7rem; }.online-count strong { font-size:1.85rem; } }

.map-card { display:flex; justify-content:space-between; align-items:center; gap:1rem; margin:0 0 1rem; padding:1rem 1.15rem; border:1px solid #27735b; border-radius:17px; color:#edf6f5; text-decoration:none; background:linear-gradient(110deg,#0d3b32,#123241); }.map-card strong { display:block; margin:.2rem 0; font-size:1.05rem; }.map-card small { color:#aed0c5; font-size:.8rem; }.map-card b { display:grid; place-items:center; width:38px; height:38px; border-radius:12px; background:#32c89a; color:#032019; font-size:1.25rem; }
