:root{--bg:#050615;--panel:#0b1b2b;--accent:#6fb3ff;--muted:#bfcbd6}
html,body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:#e8eef6}
body{display:flex;flex-direction:column;min-height:100vh}
#ui{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;width:720px;max-width:94%;margin:18px auto}
canvas{display:block;border:4px solid #061222;background:linear-gradient(#051020,#071026);width:100%;height:auto}
/* background canvas sits behind the game canvas */
#bg{position:absolute;left:0;top:0;width:100%;height:100%;z-index:0;border-radius:8px;pointer-events:none}
canvas#game{position:relative;z-index:1}
#overlay{position:absolute;left:0;top:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;backdrop-filter:blur(2px);z-index:3}
.hidden{display:none}
.menu h1{font-size:38px;margin:0 0 12px}
#overlay.hidden{display:none}
.menu h1{font-size:38px;margin:0 0 12px}
.buttons{display:flex;flex-direction:column;gap:10px}
button{background:var(--panel);color:var(--muted);padding:12px 20px;border-radius:8px;border:1px solid rgba(255,255,255,0.04);cursor:pointer}
button:hover{background:#123247;color:#fff}
.hidden{display:none}
#shop,#highs{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#081222;padding:16px;border-radius:10px;box-shadow:0 8px 32px rgba(0,0,0,0.6);width:420px}
#shop h2,#highs h2{margin:0 0 12px}
#shop-items{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}
.shop-item{display:flex;justify-content:space-between;align-items:center;padding:8px;background:#071826;border-radius:6px}
.hud{position:absolute;left:10px;top:10px;color:var(--muted);font-size:14px}

/* Footer Styles - Unified Design */
.site-footer {
  padding: 0.6rem 0;
  text-align: center;
  border-top: 1px solid rgba(255, 255, 255, 0.03);
  background: linear-gradient(180deg, rgba(2, 6, 23, 0.28), rgba(2, 6, 23, 0.18));
  backdrop-filter: blur(6px) saturate(120%);
  color: rgba(234, 246, 255, 0.86);
  margin-top: auto;
}
.site-footer a {
  color: rgba(0, 212, 255, 1);
  text-decoration: none;
  font-weight: 600;
}
.footer-inner {
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 0.5rem;
}
.footer-left {
  flex: 0 0 auto;
  color: #99b8d1;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: nowrap;
  white-space: nowrap;
}
.footer-left > a {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
}
.footer-left .powered-logo {
  height: 20px;
  width: auto;
  max-height: 20px;
  max-width: 120px;
  display: inline-block;
  margin-left: 0;
  vertical-align: middle;
  filter: drop-shadow(0 6px 12px rgba(124, 92, 255, 0.06));
  object-fit: contain;
  flex-shrink: 0;
}
.footer-center {
  flex: 1 1 auto;
  display: flex;
  justify-content: center;
  gap: 12px;
}
.footer-center a {
  color: #99b8d1;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  padding-bottom: 2px;
  transition: color 0.18s, border-color 0.18s;
  font-size: 0.95rem;
}
.footer-center a:hover {
  color: rgba(0, 212, 255, 1);
  border-color: rgba(0, 212, 255, 0.25);
}
.footer-right {
  flex: 0 0 auto;
  display: flex;
  gap: 8px;
  align-items: center;
}
.social-icon {
  height: 28px;
  width: 28px;
  display: inline-block;
  object-fit: contain;
  filter: drop-shadow(0 6px 16px rgba(124, 92, 255, 0.1));
}
.logo-footer {
  height: 40px;
  margin-right: 12px;
  filter: drop-shadow(0 8px 22px rgba(124, 92, 255, 0.08));
}
@media (max-width:720px){
  .footer-inner {
    flex-direction: column;
    gap: 8px;
    align-items: center;
    text-align: center;
    padding: 0;
  }
  .footer-center {
    order: 3;
  }
  .footer-left {
    justify-content: center;
  }
  .site-footer {
    padding: 1rem 0;
  }
}
