:root{color-scheme:dark;--bg:#101416;--surface:#1a2023;--line:#30393d;--muted:#a7b3b6;--green:#b7e59c;--ink:#eaf0ee}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Segoe UI,Arial,sans-serif;font-size:14px}button,input,select,a{font:inherit}button,.button{border:0;border-radius:8px;padding:12px 18px;background:var(--green);color:#20301c;font-weight:700;cursor:pointer;text-decoration:none;display:inline-block;text-align:center}button:hover,.button:hover{filter:brightness(1.08)}button:disabled{opacity:.5;cursor:wait}.secondary{background:#2b363a;color:var(--ink)}.ghost{background:transparent;color:var(--muted);padding:8px 12px;border:1px solid var(--line)}input,select{display:block;width:100%;padding:12px;border-radius:7px;background:#12191c;border:1px solid #3b484e;color:var(--ink);outline:none}input:focus,select:focus{border-color:var(--green)}label{display:grid;gap:8px;font-size:12px;color:#c6d0d0}form{display:grid;gap:16px}p{line-height:1.6;color:var(--muted)}h1,h2,h3,p{margin-top:0}h1{font-size:36px;font-weight:650;letter-spacing:-1.2px;line-height:1.15}h2{font-size:22px;letter-spacing:-.5px}h3{font-size:17px}.brand{display:flex;gap:12px;align-items:center;font-size:12px;letter-spacing:1.6px;font-weight:700}.brand i{font-style:normal;color:var(--green);font-size:28px}.brand small{font-size:9px;border:1px solid var(--line);padding:5px 7px;color:var(--muted)}.top{height:84px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 5vw}.identity{display:flex;align-items:center;gap:18px;font-size:12px}.eyebrow{color:var(--green);letter-spacing:2px;font-size:10px;font-weight:700;margin-bottom:12px}main{max-width:1280px;margin:auto;padding:40px 5vw}.welcome{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.welcome p{margin-bottom:0}.metrics{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:12px;margin:24px 0 36px;background:#182023}.metrics article{padding:22px 26px;border-right:1px solid var(--line)}.metrics article:last-child{border:0}.metrics small{font-size:10px;color:var(--muted);letter-spacing:1.5px}.metrics strong{display:block;font-size:32px;font-weight:600;margin:9px 0 2px;letter-spacing:-1px}.metrics span{font-size:11px;color:var(--muted)}.status-pill{display:inline-block;padding:8px 12px;border:1px solid #b7e59c45;border-radius:30px;color:var(--green);background:#b7e59c0b;font-size:11px;white-space:nowrap}.status-pill.blocked{color:#f4b7a9;border-color:#f4b7a940;background:#f4b7a909}.status-pill.grace{color:#f0d39c;border-color:#f0d39c40}nav{display:flex;gap:25px;border-bottom:1px solid var(--line);margin-bottom:30px;overflow:auto}nav button{border-radius:0;background:none;color:var(--muted);padding:12px 0 16px;font-size:12px;white-space:nowrap;border-bottom:2px solid transparent}nav button.selected{color:var(--green);border-bottom-color:var(--green)}.section-head{display:flex;justify-content:space-between;align-items:start;gap:20px;margin-bottom:22px}.section-head p{font-size:12px;margin-bottom:0}.section-head label{width:190px}.game-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.game{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}.game-cover{height:118px;padding:20px;display:flex;align-items:end;justify-content:space-between;background:#24382f}.game-cover span{font-size:48px;line-height:1;color:#b7e59c}.game:nth-child(2) .game-cover{background:#253743}.game:nth-child(2) .game-cover span{color:#9dcbe5}.game:nth-child(3) .game-cover{background:#3a3029}.game:nth-child(3) .game-cover span{color:#e2bc96}.game-cover small{font-size:9px;letter-spacing:1.5px;background:#0003;padding:6px 8px;border-radius:4px;color:#dce5df}.game-body{padding:22px;display:flex;flex-direction:column;flex:1}.game-body h3{margin-bottom:9px}.game-body p{font-size:12px;min-height:55px}.game-body button{width:100%;margin-top:auto}.game-state{font-size:10px;color:var(--muted);margin:6px 0 16px}.surface{padding:24px;border:1px solid var(--line);background:var(--surface);border-radius:12px}.surface p{font-size:12px}.admin-columns{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:28px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:10px}table{border-collapse:collapse;width:100%;text-align:left}th{font-size:10px;letter-spacing:1px;color:var(--muted);background:#192024;padding:14px 18px}td{border-top:1px solid var(--line);padding:16px 18px;font-size:12px}td small{display:block;color:var(--muted);margin-top:5px}td .ghost{font-size:11px}.connection{padding:25px;background:#1c2b25;border:1px solid #b7e59c40;border-radius:12px;margin-top:24px}.connection-actions,.row-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.connection p{font-size:12px}#connectionDetails{margin-top:18px;display:grid;gap:12px}.game-form{grid-template-columns:1fr 1fr}.wide{grid-column:1/-1}#gamesList>div{display:flex;align-items:center;justify-content:space-between;padding:20px 0;border-bottom:1px solid var(--line);gap:20px}.muted{color:var(--muted);font-size:11px}.message{color:var(--green);font-size:12px;min-height:0}.message:empty{display:none}.message.error{color:#ffb7a9}.footnote{font-size:10px;color:#7e8c90;border-top:1px solid var(--line);padding-top:22px;margin-top:45px;line-height:1.7}.auth{min-height:100vh;display:grid;grid-template-columns:1.15fr 1fr}.intro{padding:9vh 7vw;background:#1c2b24;display:flex;flex-direction:column;justify-content:center;min-height:100vh}.intro .brand{margin-bottom:95px}.intro h1{font-size:54px;line-height:1.13;max-width:600px;margin-bottom:26px}.intro p{max-width:430px;color:#bdcbc1}.intro-foot{font-size:10px;color:#9fb7a5;letter-spacing:2px;margin-top:90px}.intro-foot span{display:block;letter-spacing:0;margin-top:10px;color:#a6b4aa}.login{padding:12vh 7vw;align-self:center}.login h2{font-size:30px;margin-bottom:12px}.login p{font-size:12px}.login form{margin:26px 0}.notice{border-top:1px solid var(--line);padding-top:20px;color:#89999d}.play-page{padding:36px;max-width:850px;margin:auto}.arena{height:320px;position:relative;overflow:hidden;background:#1d3027;border:1px solid var(--line);border-radius:15px;display:grid;place-items:center}.arena strong{font-size:60px;color:var(--green);position:relative}.pulse{position:absolute;border:2px solid #b7e59c;border-radius:50%;width:20px;height:20px;animation:pulse 1.8s ease-out forwards}@keyframes pulse{to{width:680px;height:680px;opacity:0}}.event-log{font-size:12px;line-height:1.8;max-height:190px;overflow:auto}.play-tools{display:flex;gap:10px;margin:20px 0}.play-tools input{width:120px}[hidden]{display:none!important}@media(max-width:850px){.auth{grid-template-columns:1fr}.intro{min-height:auto;padding:40px}.intro .brand{margin-bottom:35px}.intro h1{font-size:38px}.intro-foot{margin-top:25px}.login{padding:40px}.game-grid{grid-template-columns:1fr}.admin-columns{grid-template-columns:1fr}.welcome{align-items:start;gap:20px}.top{padding:0 20px}.brand small{display:none}.metrics article{padding:18px 12px}.metrics strong{font-size:25px}.game-form{grid-template-columns:1fr}.section-head{flex-wrap:wrap}}

.field-hint{font-size:11px;color:var(--muted);line-height:1.5}#authError{color:#ffb7a9;font-size:13px;line-height:1.6}

:root{--bg:#090e1c;--surface:#131d32;--line:#29364e;--muted:#a4b4cf;--green:#8ee8d2;--ink:#f0f5ff}body{background:radial-gradient(ellipse at 80% 0%,#1c2949 0,transparent 55%),var(--bg)}.top{background:#0a1020cc}.intro{background:linear-gradient(0deg,#080e20f5,#080e2060),url('/batalla-ki.png') center/cover}.intro h1{text-shadow:0 4px 30px #000}.intro .brand{color:white}.game-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.game{box-shadow:0 18px 45px #0003;transition:transform .2s,border-color .2s}.game:hover{transform:translateY(-4px);border-color:#6386ac}.game-cover{height:250px;position:relative}.game .game-cover.ki-cover{background:linear-gradient(0deg,#080e1caa,transparent 70%),url('/batalla-ki.png') center/cover}.ki-cover span{visibility:hidden}.game .game-cover.world-cover{background:radial-gradient(ellipse at 55% 65%,#3a978180,transparent 50%),linear-gradient(135deg,#183d51,#132537 65%,#354938)}.world-cover:before{content:'◎';position:absolute;inset:0;display:grid;place-items:center;font-size:210px;line-height:1;color:#89d8c54a;text-shadow:20px 10px 60px #60cbbf55}.world-cover small{z-index:1}.game-cover small{background:#071325cc;border:1px solid #a4b4cf44;padding:8px 12px;letter-spacing:2px}.game-body{padding:28px}.game-body h3{font-size:24px}.metrics{background:#121d30}.metrics strong{font-size:25px;overflow-wrap:anywhere}.connection{background:#142a32}.status-pill.trial{color:#a9d0ff;border-color:#a9d0ff55}button,.button{box-shadow:0 4px 18px #0002}.welcome h1{font-size:40px}@media(max-width:850px){.game-grid{grid-template-columns:1fr}.game-cover{height:220px}.metrics{grid-template-columns:1fr}.metrics article{border-right:0;border-bottom:1px solid var(--line)}.welcome{flex-wrap:wrap}}

.game .game-cover.world-cover{background:linear-gradient(0deg,#080e1c99,transparent 70%),url('/conquista-territorial.png') center/cover}.world-cover:before{content:none}.world-cover span{visibility:hidden}

#robloxAccount{margin-bottom:24px}#robloxAccount label{max-width:420px}#robloxLaunch{margin-top:18px}

a.download-link{color:var(--green);text-underline-offset:4px}
