/* STAKR V57 — icon + avatar polish. One visual language, no oversized glyphs. */
:root{
  --v57-icon:16px;
  --v57-icon-btn:36px;
  --v57-icon-color:#a6bac3;
  --v57-icon-active:#e7f0f4;
  --v57-icon-surface:#102936;
  --v57-icon-line:#234655;
}

/* Stable icon geometry: the icon is never the content. */
.ui-icon,
.v50-action-icon,
.v52-icon,
.v56-icon,
.v57-icon,
.game-topbar .gt-icon,
.game-topbar .gt-fav,
.game-topbar .gt-fair{
  box-sizing:border-box!important;
  width:var(--v57-icon)!important;
  min-width:var(--v57-icon)!important;
  max-width:var(--v57-icon)!important;
  height:var(--v57-icon)!important;
  min-height:var(--v57-icon)!important;
  max-height:var(--v57-icon)!important;
  display:inline-grid!important;
  place-items:center!important;
  flex:0 0 var(--v57-icon)!important;
  line-height:1!important;
  overflow:hidden!important;
  color:var(--v57-icon-color)!important;
}
.ui-icon svg,
.v50-action-icon svg,
.v52-icon svg,
.v56-icon svg,
.v57-icon svg,
.game-topbar .gt-icon svg,
.game-topbar .gt-fav svg,
.game-topbar .gt-fair svg{
  width:16px!important;height:16px!important;min-width:16px!important;max-width:16px!important;min-height:16px!important;max-height:16px!important;
  display:block!important;margin:0!important;transform:none!important;
}

/* Never let generic shell selectors size game artwork/icons. */
body.on-game .game-topbar .gt-icon,
body.on-game .game-topbar .gt-fav,
body.on-game .game-topbar .gt-fair{
  width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;max-width:18px!important;max-height:18px!important;
  border-radius:6px!important;
}
body.on-game .game-topbar .gt-fav svg,
body.on-game .game-topbar .gt-fair svg,
body.on-game .game-topbar .gt-icon svg{width:15px!important;height:15px!important;max-width:15px!important;max-height:15px!important}

/* Buttons: icon left, label right, with predictable vertical centering. */
.stakr-side-item,
.stakr-side-profile,
.dp-menu button,
.ref-wallet-actions button,
.wallet-tab,
.settings-tab-v45,
.ref-category,
.ref-mode-card{
  align-items:center!important;
}
.stakr-side-item .ui-icon,
.stakr-side-profile .ui-icon,
.dp-menu button .v57-icon,
.ref-wallet-actions button .v57-icon,
.wallet-tab .v57-icon,
.settings-tab-v45 .v57-icon,
.ref-category .ui-icon,
.ref-mode-card .ui-icon{margin:0!important;transform:none!important}

/* Sidebar / profile controls get a subtle icon well instead of a giant glyph. */
.dp-menu button .v57-icon,
.wallet-tab .v57-icon,
.settings-tab-v45 .v57-icon{
  width:28px!important;height:28px!important;min-width:28px!important;flex-basis:28px!important;
  border-radius:8px!important;border:1px solid var(--v57-icon-line)!important;background:var(--v57-icon-surface)!important;
}
.dp-menu button .v57-icon svg,
.wallet-tab .v57-icon svg,
.settings-tab-v45 .v57-icon svg{width:14px!important;height:14px!important;max-width:14px!important;max-height:14px!important;color:var(--v57-icon-color)!important}
.dp-menu button:hover .v57-icon,
.wallet-tab:hover .v57-icon,
.settings-tab-v45:hover .v57-icon{color:var(--v57-icon-active)!important;border-color:#31586a!important;background:#132f3d!important}

/* Profile/game avatar. Use artwork, not an anonymous letter. */
.stakr-game-avatar{
  width:28px!important;height:28px!important;min-width:28px!important;max-width:28px!important;
  border-radius:8px!important;object-fit:cover!important;display:block!important;
  border:1px solid #2b4c5a!important;background:#0d2430!important;
  box-shadow:none!important;
}
.ref-live-thumb img,.ref-bet-avatar img{width:100%!important;height:100%!important;object-fit:cover!important;border-radius:inherit!important;display:block!important}
.ref-live-thumb,.ref-bet-avatar{overflow:hidden!important}

/* Game-card artwork should always fill the media box. */
.ref-gcard-art img,.gcard img,.game-card img,.ref-gcard img{
  width:100%!important;height:100%!important;display:block!important;object-fit:cover!important;object-position:center!important;
}
.ref-gcard-art,.gcard-art,.game-card-art{overflow:hidden!important}

/* Replace oversized decorative SVG fallback states with a compact action block. */
.v57-render-state{display:grid!important;place-items:center!important;gap:8px!important;min-height:140px!important;text-align:center!important;color:#94aab4!important;padding:24px!important}
.v57-render-state .v57-render-icon{width:40px!important;height:40px!important;border-radius:12px!important;display:grid!important;place-items:center!important;background:#102936!important;border:1px solid #274a5a!important}
.v57-render-state .v57-render-icon svg{width:20px!important;height:20px!important;max-width:20px!important;max-height:20px!important}
.v57-render-state button{min-height:38px!important;padding:0 16px!important;border-radius:9px!important}

/* No neon: icons inherit quiet neutral color; active is blue/green, never glow. */
.ui-icon,.v50-action-icon,.v52-icon,.v56-icon,.v57-icon{filter:none!important;text-shadow:none!important;box-shadow:none!important}

@media(max-width:920px){
  .dp-menu button .v57-icon{width:30px!important;height:30px!important;min-width:30px!important;flex-basis:30px!important}
}
