/* style.css — Orb Runner
   Responsive layout, simple modern aesthetic
*/

:root{
  --bg:#0f1724;
  --panel:#0b1220;
  --accent:#7ee3ff;
  --accent-2:#7bff9e;
  --muted:rgba(255,255,255,0.65);
  --glass: rgba(255,255,255,0.03);
  --radius:12px;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
}

*{box-sizing:border-box;margin:0;padding:0}
html,body,#game-wrap{height:100%}
body{
  background: linear-gradient(180deg,#041021 0%, #061829 100%);
  color:#eaf6ff;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
}

/* Game container */
#game-wrap{
  position:relative;
  width: min(1000px, 98vw);
  max-width:1200px;
  aspect-ratio: 16/9;
  border-radius:16px;
  box-shadow: 0 12px 40px rgba(2,8,20,0.6);
  overflow:hidden;
  background: linear-gradient(180deg,#071226 0%, #04202a 100%);
  display:flex;
  align-items:center;
  justify-content:center;
}

/* Canvas */
#game-canvas{
  width:100%;
  height:100%;
  display:block;
  background: linear-gradient(180deg,#0b2435, #05212a 70%, #001318 100%);
}

/* Overlay UI */
#overlay{
  position:absolute;
  inset:0;
  pointer-events:none;
}

.panel{
  pointer-events:auto;
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  width: min(720px, 92%);
  max-width:720px;
  margin-top:36px;
  padding:18px 20px;
  background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
  border-radius:12px;
  border:1px solid rgba(255,255,255,0.03);
  backdrop-filter: blur(4px);
  text-align:center;
}

.panel.hidden{display:none}
.panel.shown{display:block}

h1{font-size:2rem;margin-bottom:6px}
h2{font-size:1.4rem;margin-bottom:6px}
.muted{color:var(--muted); font-size:0.95rem}

.controls{display:flex;gap:12px;justify-content:center;margin:12px 0;color:var(--muted)}
.controls > div{background:var(--glass); padding:10px 12px; border-radius:8px; font-size:0.95rem}

.menu-buttons{display:flex;gap:10px;justify-content:center;margin-top:14px;flex-wrap:wrap}
.btn{
  background:transparent;
  border:1px solid rgba(255,255,255,0.08);
  padding:10px 16px;
  border-radius:10px;
  cursor:pointer;
  color:inherit;
  font-weight:600;
  transition:all .15s ease;
}
.btn.small{padding:6px 10px; font-size:0.9rem}
.btn.primary{
  background:linear-gradient(90deg,var(--accent),var(--accent-2));
  color:#002021;
  border:none;
  box-shadow: 0 6px 18px rgba(20,200,200,0.08);
}
.btn:hover{transform:translateY(-3px)}
.meta{margin-top:12px;color:var(--muted);font-size:0.85rem}

/* HUD at top */
#hud{
  position:absolute;
  top:12px;
  left:12px;
  display:flex;
  gap:8px;
  align-items:center;
  background:transparent;
  width:auto;
}
#hud .panel{position:static;padding:8px 12px;border-radius:10px;background:rgba(0,0,0,0.18);backdrop-filter:blur(2px);}

#score, #meter{font-weight:700}
#pause-btn-wrap{margin-left:8px}

/* Pause & gameover panels */
#pause-screen, #gameover, #instructions, #settings{
  top:50%;
  transform:translate(-50%,-50%);
}

/* Small screens */
@media (max-width:640px){
  .controls{flex-direction:column}
  h1{font-size:1.6rem}
  #game-wrap{padding:12px}
  .panel{margin-top:12px}
}

/* Simple responsive touches */
label{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0;padding:6px 8px;background:rgba(255,255,255,0.02);border-radius:8px}
select,input[type=checkbox]{accent-color:var(--accent)}