:root{
  --bg:#0b0d10;--panel:#12151b;--muted:#232834;--text:#e8ecf1;--sub:#aeb6c2;--brand:#5dd6a0;--accent:#79a8ff;--danger:#ff6b6b;
  --radius:16px;--gap:14px;--shadow:0 10px 30px rgba(0,0,0,.25)
}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:linear-gradient(180deg,#0b0d10,#0e1117);color:var(--text);font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,"Helvetica Neue",Arial}
a{color:var(--accent);text-decoration:none}
a:hover{opacity:.95}

.wrap{max-width:1300px;margin:0 auto;padding:24px}
.header{display:flex;align-items:center;gap:var(--gap);justify-content:space-between;margin-bottom:18px}
.brand{display:flex;align-items:center;gap:10px}
.logo{height:34px;width:34px;border-radius:9px;background:conic-gradient(from 210deg,var(--brand),#38bdf8 40%,#a78bfa 70%,#f472b6);box-shadow:inset 0 0 20px rgba(255,255,255,.15),0 6px 18px rgba(0,0,0,.35)}
.title{font-weight:800;letter-spacing:.2px}

.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.search{flex:1 1 320px;min-width:260px;display:flex;align-items:center;gap:10px;background:var(--panel);border:1px solid #1b202b;border-radius:12px;padding:10px 12px}
.search input{flex:1;background:transparent;border:0;outline:0;color:var(--text)}

.notice{display:flex;gap:10px;align-items:flex-start;background:#0f1420;border:1px dashed #20314a;color:#cbd5e1;padding:10px 12px;border-radius:12px}
.notice svg{flex:0 0 auto;opacity:.8}

/* VNDB-ish: compact primary nav */
.topnav{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:-6px 0 14px 0}
.navlink{color:var(--text);opacity:.85;padding:6px 10px;border-radius:999px;border:1px solid #1b202b;background:#0f1420}
.navlink:hover{opacity:1}
.navsep{opacity:.35}

/* Home dashboard */
.home{margin:14px 0 8px 0}
.home-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:18px}
@media (max-width: 1100px){.home-grid{grid-template-columns:1fr}}

.home-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}

/* Home panel headers */
.panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0 0 10px 0}
.panel-title{margin:0;font-weight:800;letter-spacing:.2px;font-size:16px}

/* Info KPIs: label above number */
.kpi-chip{flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;padding:10px 12px}
.kpi-top{color:var(--sub);font-size:12px;letter-spacing:.08em;text-transform:uppercase;line-height:1.1}
.kpi-num{font-weight:800;font-size:18px;letter-spacing:.2px;line-height:1.1}
.kpi{border:1px solid #1b202b;background:#0f1420;border-radius:14px;padding:10px 12px}
.kpi-label{color:var(--sub);font-size:12px}
.kpi-value{font-weight:800;font-size:18px;letter-spacing:.2px}

.home-section{margin-top:12px}
.home-h{font-weight:700;margin-bottom:8px}
.home-chips{display:flex;flex-wrap:wrap;gap:8px}
.home-chip{background:#0b1220;border:1px solid #1b202b;color:#cbd5e1;padding:6px 10px;border-radius:999px;cursor:pointer}
.home-chip:hover{outline:2px solid rgba(121,168,255,.35)}
.home-chip.active{outline:2px solid var(--accent);color:var(--text)}

.home-actions{display:flex;flex-wrap:wrap;gap:10px}
.home-list{margin:0;padding-left:18px;display:grid;gap:8px}

/* VNDB-ish compact recent list */
.home-recent{display:grid;gap:8px}
.home-recent a{color:var(--text)}
.home-recent a:hover{opacity:1;text-decoration:underline}
.home-recent-item{display:flex;gap:10px;align-items:center;padding:8px 10px;border-radius:12px;border:1px solid #1b202b;background:#0f1420}
.home-recent-thumb{width:34px;height:34px;border-radius:10px;border:1px solid #1b202b;background:#0a0e14;display:flex;align-items:center;justify-content:center;overflow:hidden;flex:0 0 auto}
.home-recent-thumb img{width:100%;height:100%;object-fit:contain}
.home-recent-main{min-width:0;display:grid;gap:2px}
.home-recent-title{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-recent-sub{color:var(--sub);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.filters-bar{display:flex;flex-wrap:wrap;gap:10px}
.chip{background:var(--panel);border:1px solid #1b202b;border-radius:999px;padding:8px 12px;display:inline-flex;gap:8px;align-items:center}
.chip select,.chip input{background:transparent;border:0;color:var(--text);outline:0}

.layout{display:grid;grid-template-columns:300px 1fr;gap:18px;margin-top:18px}
@media (max-width: 1024px){.layout{grid-template-columns:1fr}}

.panel{background:var(--panel);border:1px solid #1b202b;border-radius:var(--radius);box-shadow:var(--shadow)}
.panel h3{margin:0;padding:14px 16px;border-bottom:1px solid #1b202b}
.panel .body{padding:14px 16px}

.sidebar .group{display:grid;gap:10px;margin-bottom:16px}
.sidebar label{font-size:12px;color:var(--sub)}
.sidebar input,.sidebar select{width:100%;background:#0d1117;border:1px solid #1b202b;color:var(--text);padding:10px;border-radius:10px}
.inline{display:flex;gap:10px}

.results-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.view-toggle{display:flex;gap:8px}
.btn{background:#0f1420;border:1px solid #1b202b;color:var(--text);padding:8px 12px;border-radius:10px;cursor:pointer}
.btn.active{outline:2px solid var(--accent)}

.cards.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
@media (max-width: 1200px){.cards.grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width: 860px){.cards.grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width: 520px){.cards.grid{grid-template-columns:1fr}}

.cards.list{display:grid;gap:10px}

.card{background:var(--panel);border:1px solid #1b202b;border-radius:14px;overflow:hidden;display:grid;grid-template-rows:auto 1fr}
.card .img{background:#0a0e14;display:flex;align-items:center;justify-content:center}
.card .img img{width:100%;height:220px;object-fit:contain}
.card .meta{padding:10px 12px;display:grid;gap:6px}
.badge{font-size:11px;color:#d5dbe6;background:#0b1220;border:1px solid #1b202b;padding:4px 8px;border-radius:999px}
.row{display:flex;flex-wrap:wrap;gap:8px}
.name{font-weight:700}
.sub{color:var(--sub);font-size:13px}

.list .card{grid-template-columns:120px 1fr;grid-template-rows:unset}
.list .card .img img{height:120px}

.empty{padding:40px;text-align:center;color:var(--sub)}

.active-filters{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.pill{background:#0b1220;border:1px solid #1b202b;padding:6px 10px;border-radius:999px;color:#cbd5e1;display:flex;gap:8px;align-items:center}
.pill button{all:unset;cursor:pointer;color:#94a3b8}

.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:12px}
.pagination .pages{display:flex;gap:8px;align-items:center}
.page-btn{background:#0f1420;border:1px solid #1b202b;border-radius:10px;padding:8px 10px;cursor:pointer}
.page-btn[disabled]{opacity:.4;cursor:not-allowed}
.count{color:var(--sub);font-size:13px}

.shop-btn{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:10px;border:1px solid #1b202b;background:#0f1420}
.shop-btn svg{opacity:.9}

.disabled{opacity:.5;filter:saturate(0.6)}
.range-wrap{display:grid;gap:10px}
.range-wrap input[type=range]{width:100%}

/* Dark selects */
select, .controls select {
  background: #12151b;
  color: #e8ecf1;
  border: 1px solid #1b202b;
  border-radius: 10px;
  padding: 8px 10px;
}

/* Optional: style the dropdown list */
select option {
  background: #0f131a;
  color: #e8ecf1;
}

/* Games index */
.games-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
@media (max-width:1200px){.games-grid{grid-template-columns:repeat(4,1fr)}}
@media (max-width:860px){.games-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.games-grid{grid-template-columns:1fr}}

.game-tile{display:flex;flex-direction:column;gap:10px;text-decoration:none;background:var(--panel);border:1px solid #1b202b;border-radius:14px;overflow:hidden}
.game-tile:hover{border-color:#2a3242}
.game-art{background:#0a0e14;aspect-ratio:16/9;display:flex;align-items:center;justify-content:center}
.game-art img{width:100%;height:100%;object-fit:cover}
.game-fallback{width:100%;height:100%;background:linear-gradient(135deg,#0b1220,#0a0e14)}
.game-meta{padding:10px 12px;display:grid;gap:4px}
.game-name{font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.kpi-row{
  justify-content: space-between;
}

.kpi-row .kpi-label{
  font-size: 12px;
  color: var(--sub);
  text-transform: uppercase;
  letter-spacing: .08em;
}

.kpi-row .kpi-value{
  font-weight: 800;
  font-size: 18px;
}

.kpi-row{
  flex-direction: column;   /* stack label above number */
  align-items: center;      /* center like stats */
  text-align: center;
  gap: 4px;                 /* tighter vertical spacing */
}

.tabs button {
  border-radius: 6px;          /* rectangular, subtle rounding */
  padding: 8px 14px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.15);
  font-size: 14px;
  cursor: pointer;
}

.tabs button.active {
  background: rgba(255,255,255,0.12);
  border-color: rgba(255,255,255,0.35);
}


/* Toolbar now sits UNDER notice */
.toolbar{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  margin: 0 0 14px 0;
  margin-top: 14px;
}

.search{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(153, 115, 115, 0.03);
  min-width: min(520px, 100%);
  flex: 1 1 420px;
}

.search svg{ opacity:.85; flex: 0 0 auto; }
.search input{
  width:100%;
  border:0;
  outline:0;
  background:transparent;
  color:inherit;
  font-size:14px;
}

.site-wrap{max-width:1300px;margin:0 auto;padding:24px;{margin:0;background:linear-gradient(180deg,#0b0d10,#0e1117);color:var(--text);font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,"Helvetica Neue",Arial}
.site-header{display:flex;align-items:center;gap:var(--gap);justify-content:space-between;margin-bottom:18px}
.site-brand{display:flex;align-items:center;gap:10px}
.site-logo{height:34px;width:34px;border-radius:9px;background:conic-gradient(from 210deg,var(--brand),#38bdf8 40%,#a78bfa 70%,#f472b6);box-shadow:inset 0 0 20px rgba(255,255,255,.15),0 6px 18px rgba(0,0,0,.35)}
.site-title{font-weight:800;letter-spacing:.2px;font-size:24px;}
.site-topnav{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:-6px 0 14px 0}
.site-navlink{color:var(--text);opacity:.85;padding:6px 10px;border-radius:999px;border:1px solid #1b202b;background:#0f1420}
.site-navlink:hover{opacity:1}
.site-navsep{opacity:.35}