html,body{
  margin:0;height:100%;width:100%;
  background:#0c0c0e;overflow:hidden;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif
}
#app{position:relative;width:100%;height:100%}
#game {
  display:block;
  width:100%;
  height:auto;
}
#game {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
}


:root{
  --panel:rgba(18,18,22,.92);
  --text:#f0f0f0;
  --muted:#b7b7b7;
  --border:rgba(255,255,255,.14);
  --btn:rgba(58,58,70,.92);
  --btnHover:rgba(78,78,96,.92);
  --primary:rgba(80,120,250,.92)
}
.panel{
  position:absolute;left:50%;top:18px;transform:translateX(-50%);
  background:var(--panel);color:var(--text);
  border:1px solid var(--border);border-radius:16px;
  padding:16px;max-width:780px;width:min(780px,calc(100% - 24px));
  box-shadow:0 10px 30px rgba(0,0,0,.4)
}
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.row.small{margin-top:10px}
.btn{
  cursor:pointer;border:1px solid var(--border);
  background:var(--btn);color:var(--text);
  padding:10px 12px;border-radius:12px;font-weight:600
}
.btn:hover{background:var(--btnHover)}
.btn.primary{background:var(--primary)}
.btn.primary:hover{filter:brightness(1.05)}
.input{
  flex:1;min-width:180px;max-width:320px;
  padding:10px 12px;border-radius:12px;border:1px solid var(--border);
  background:rgba(0,0,0,.35);color:var(--text)
}
.chip{border:1px solid var(--border);border-radius:999px;padding:6px 10px;color:var(--muted);font-size:12px}
.muted{color:var(--muted)}
.small{font-size:12px}
.hidden{display:none}

.hud{
  position:absolute;left:12px;right:12px;top:4px;
  display:flex;justify-content:space-between;gap:10px;align-items:flex-start
}
.hud-left{
  background:var(--panel);border:1px solid var(--border);border-radius:14px;
  padding:10px 12px;min-width:260px;color:var(--text)
}
.hud-right{display:flex;gap:8px;flex-wrap:wrap}


/* =========================
   SPLASH SCREEN
========================= */

#splash{
    position:fixed;
    inset:0;
    background:#000;
    display:flex;
    justify-content:center;
    align-items:center;
    z-index:999999;
    pointer-events:none;
    animation:fadeOut 4s forwards;
}

#logo{
    width:min(500px,70vw);
    opacity:0;
    animation:logoFade 3s ease forwards;
}

@keyframes logoFade{
    0%{opacity:0;transform:scale(0.9);}
    30%{opacity:1;transform:scale(1);}
    70%{opacity:1;}
    100%{opacity:0;}
}

@keyframes fadeOut{
    0%{opacity:1;}
    85%{opacity:1;}
    100%{opacity:0;visibility:hidden;}
}
