:root{
  --bg:#0b1220;
  --card:#0f1724;
  --accent:#00e5a8;
  --muted:#9aa7b2;
  --glass: rgba(255,255,255,0.04);
  --glow: 0 8px 30px rgba(0,229,168,0.12), 0 2px 8px rgba(0,229,168,0.06);
  --panel-pad: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,#board{height:100%}
body{
  min-height:100vh;
  background: linear-gradient(180deg,#051021 0%, #081827 40%, #071a2a 100%);
  color:#dfe9ef;
  display:flex;
  align-items:stretch;
}

.app{
  max-width:1200px;
  margin:auto;
  width:100%;
  background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(0,0,0,0.02));
  border-radius:12px;
  padding:14px;
  box-shadow: 0 12px 40px rgba(2,6,23,0.7);
  display:flex;
  flex-direction:column;
  gap:12px;
  width:96%;
}

/* Top bar */
.topbar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:10px;
}
.title{display:flex;gap:12px;align-items:center}
.title .icon{font-size:32px}
.title h1{font-size:20px;margin-bottom:2px}
.title small{display:block;color:var(--muted);font-size:12px}
.controls{display:flex;gap:8px;align-items:center}
.control-btn{background:var(--glass);border:1px solid rgba(255,255,255,0.04);color:var(--muted);padding:8px 10px;border-radius:8px;cursor:pointer}
.control-btn:hover{color:var(--accent);box-shadow:var(--glow);border-color:rgba(0,229,168,0.12)}
.control-select{padding:8px;border-radius:8px;background:transparent;border:1px solid rgba(255,255,255,0.04);color:var(--muted)}

/* Main area */
.game-area{
  display:flex;
  gap:12px;
  align-items:flex-start;
}
canvas#board{
  background-image: radial-gradient(circle at 10% 10%, rgba(0,229,168,0.03), transparent 40%), linear-gradient(0deg, rgba(255,255,255,0.01), transparent);
  border-radius:10px;
  flex:1 1 0;
  width:720px;
  height:640px;
  box-shadow: 0 12px 30px rgba(0,0,0,0.7);
  border:1px solid rgba(255,255,255,0.03);
  display:block;
}

/* Sidebar */
.sidebar{
  width:260px;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.panel{
  background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
  padding:var(--panel-pad);
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.03);
  box-shadow: 0 8px 20px rgba(0,0,0,0.45);
}
.stat{display:flex;flex-direction:column;gap:6px}
.stat div:first-child{color:var(--muted);font-size:12px}
.stat div:last-child{font-size:18px;color:#fff}

.info ul{margin-top:8px;list-style:disc;padding-left:18px;color:var(--muted);font-size:13px}
.actions{display:flex;flex-direction:column;gap:8px}
.actions button{padding:10px;border-radius:8px;background:linear-gradient(90deg,var(--accent),#00bfa5);color:#002219;border:none;cursor:pointer}
.actions .open-new{display:block;text-align:center;padding:8px;border-radius:8px;background:transparent;border:1px solid rgba(255,255,255,0.04);color:var(--muted);text-decoration:none}

/* small screens */
@media (max-width:1000px){
  .game-area{flex-direction:column}
  canvas#board{width:100%;height:420px}
  .sidebar{width:100%}
}
