/* ============================================================================
 * styles.css — Goldbet clone 1:1 (sportsbook_new)
 * Colori misurati direttamente dal DOM di Goldbet.it
 * Layout: 3 colonne flex (sidebar-sx 230px | center flex | sidebar-dx 331px)
 * ==========================================================================*/
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,400;0,500;0,600;0,700;0,800;1,400&display=swap');

/* ── Palette brand PrimeBet ── */
:root {
  --gb-navy:      #041357;   /* PrimeBet deep blue — testo, header, bordi */
  --gb-navy2:     #0a1f6b;   /* sidebar sinistra bg */
  --gb-navy3:     #06164a;   /* header riga 1-2 */
  --gb-gold:      #FFEA00;   /* PrimeBet yellow — tab attivo, accenti */
  --gb-gold-d:    #e6d200;
  --gb-blue:      #1a4fd6;   /* pulsanti azione (betscanner) */
  --gb-blue2:     #1340b0;
  --gb-blue-soft: #5c8abc;   /* bordo pulsanti quota */
  --gb-body:      #ffffff;   /* sfondo pagina */
  --gb-center-bg: #f0f2f5;   /* sfondo area centrale */
  --gb-right-bg:  #f5f6f8;   /* sidebar destra */
  --gb-line:      #dde0e7;   /* separatori leggeri */
  --gb-line2:     #c8ccd6;
  --gb-text:      #0a1b4e;
  --gb-text2:     #56607a;
  --gb-text3:     #9aa0b4;
  --gb-white:     #ffffff;
  --gb-red:       #e53935;
  --gb-green:     #2e7d32;
  --gb-live:      #ff4d4f;
}

/* ── Reset ── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html, body { height: 100%; }
body.gb-body {
  font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
  font-size: 13px;
  color: var(--gb-text);
  background: var(--gb-center-bg);
  -webkit-font-smoothing: antialiased;
}
button { font-family: inherit; cursor: pointer; }
a { text-decoration: none; color: inherit; }
input, select { font-family: inherit; }
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-thumb { background: var(--gb-line2); border-radius: 4px; }
::-webkit-scrollbar-track { background: transparent; }

/* ═══════════════════════════════════════════════════════════════
   HEADER — 3 righe esatte come Goldbet
══════════════════════════════════════════════════════════════ */
.gb-header { position: sticky; top: 0; z-index: 100; }

/* Riga 1: logo + accedi/registrati */
.gb-hrow1 {
  background: #041357;
  display: flex; align-items: center; justify-content: space-between;
  padding: 0 20px; height: 72px;
}
.gb-logo {
  display: flex; align-items: center; gap: 8px;
  cursor: pointer; flex-shrink: 0;
}
/* PrimeBet24 dark variant — viewBox 2046×460 (~4.45:1). Altezza 58px → larghezza ~258px */
.gb-logo-img {
  height: 58px;
  width: auto;
  display: block;
  max-width: 280px;
  object-fit: contain;
}
/* legacy fallback (non più usato) */
.gb-logo-icon {
  width: 36px; height: 36px; background: var(--gb-gold);
  border-radius: 6px; display: flex; align-items: center;
  justify-content: center; color: var(--gb-navy); font-size: 18px; font-weight: 900;
}
.gb-logo-txt { color: var(--gb-white); }
.gb-logo-txt span { color: var(--gb-gold); }
.gb-hrow1-auth { display: flex; align-items: center; gap: 10px; }
.gb-btn-accedi {
  background: #0160ae; color: #fff; border: none;
  border-radius: 0; padding: 0 24px; height: 35px;
  font-weight: 700; font-size: 14px; text-transform: uppercase;
  letter-spacing: .3px; white-space: nowrap;
}
.gb-btn-accedi:hover { background: #0150a0; }
.gb-btn-registrati {
  background: var(--gb-gold); color: var(--gb-navy); border: none;
  border-radius: 0; padding: 0 24px; height: 35px;
  font-weight: 800; font-size: 14px; text-transform: uppercase;
  letter-spacing: .3px; white-space: nowrap;
}
.gb-btn-registrati:hover { background: var(--gb-gold-d); }
.gb-balance-area { display: flex; align-items: center; gap: 10px; }
.gb-balance-btn {
  background: var(--gb-gold); color: var(--gb-navy); border: none;
  border-radius: 3px; padding: 9px 20px; font-weight: 800; font-size: 13px;
}
.gb-balance-val {
  background: rgba(255,255,255,.12); color: #fff; border-radius: 3px;
  padding: 8px 14px; font-weight: 700; font-size: 13px;
}
.gb-user-icon { color: var(--gb-gold); font-size: 22px; cursor: pointer; }

/* Riga 2: nav prodotti (SCOMMESSE, SLOT, CASINO LIVE...) */
.gb-hrow2 {
  background: var(--gb-navy);
  display: flex; align-items: center;
  padding: 0 6px; height: 46px; overflow-x: auto;
}
.gb-hrow2::-webkit-scrollbar { display: none; }
.gb-nav2-item {
  display: flex; align-items: center; gap: 6px;
  padding: 0 16px; height: 100%; color: rgba(255,255,255,.85);
  font-weight: 600; font-size: 13px; white-space: nowrap;
  cursor: pointer; position: relative; letter-spacing: .3px;
  text-transform: uppercase;
}
.gb-nav2-item:hover { color: #fff; }
.gb-nav2-item.active { color: var(--gb-gold); }
.gb-nav2-item.active::after {
  content: ''; position: absolute; left: 12px; right: 12px;
  bottom: 0; height: 3px; background: var(--gb-gold);
}
.gb-nav2-item i { font-size: 12px; }

/* Pulsante Home (inizio riga prodotti, come Goldbet) */
.gb-nav2-home {
  display: flex; align-items: center; justify-content: center;
  width: 48px; height: 100%; flex-shrink: 0;
  color: #fff; font-size: 17px; cursor: pointer;
}
.gb-nav2-home:hover { color: var(--gb-gold); }

/* Riga 3: sport sub-nav (SPORT, LIVE, VILLAGGIO...) — allineata sotto SLOT (come Goldbet) */
.gb-hrow3 {
  background: var(--gb-blue);
  display: flex; align-items: center;
  padding: 0 6px 0 173px; height: 40px; overflow-x: auto;
}
.gb-hrow3::-webkit-scrollbar { display: none; }
.gb-nav3-item {
  padding: 0 18px; height: 100%; display: flex; align-items: center;
  color: rgba(255,255,255,.9); font-weight: 700; font-size: 13px;
  white-space: nowrap; cursor: pointer; position: relative;
  text-transform: uppercase; letter-spacing: .3px;
}
.gb-nav3-item:hover { color: #fff; }
.gb-nav3-item.active { color: var(--gb-gold); }
.gb-nav3-item.active::after {
  content: ''; position: absolute; left: 10px; right: 10px;
  bottom: 0; height: 3px; background: var(--gb-gold);
}

/* Riga 4: link supplementari (MONDIALI 2026, Risultati, Regole Sport...) */
.gb-hrow4 {
  background: var(--gb-navy);
  display: flex; align-items: center;
  padding: 0 8px; height: 38px; overflow-x: auto; gap: 0;
}
.gb-hrow4::-webkit-scrollbar { display: none; }
.gb-hrow4-item {
  padding: 0 14px; color: rgba(255,255,255,.75); font-size: 12px;
  font-weight: 600; white-space: nowrap; cursor: pointer;
  height: 100%; display: flex; align-items: center;
}
.gb-hrow4-item:hover { color: #fff; }
.gb-hrow4-item.highlight { color: var(--gb-gold); font-weight: 800; }

/* ═══════════════════════════════════════════════════════════════
   LAYOUT PRINCIPALE — 3 colonne
══════════════════════════════════════════════════════════════ */
.gb-layout {
  display: grid;
  grid-template-columns: 230px minmax(0, 1fr) 331px;
  align-items: start;
  max-width: 1480px;
  margin: 0 auto;
  min-height: calc(100vh - 180px);
}

/* ═══════════════════════════════════════════════════════════════
   SIDEBAR SINISTRA (230px, navy #36436e)
══════════════════════════════════════════════════════════════ */
.gb-sidebar-left {
  width: 230px;
  background: var(--gb-navy2);
  min-height: calc(100vh - 180px);
  position: sticky;
  top: 180px;
  max-height: calc(100vh - 180px);
  overflow-y: auto;
}

/* "Scelti per te" — box bianco */
.gb-scelti-box {
  background: var(--gb-white);
  padding: 13px 8px;
}
.gb-scelti-title {
  color: var(--gb-text3); font-size: 12px; font-weight: 600;
  margin-bottom: 8px; padding-left: 4px;
}
.gb-scelti-list { display: flex; flex-direction: column; gap: 4px; }
.gb-scelti-item {
  display: flex; align-items: center; gap: 9px;
  padding: 8px 10px; background: var(--gb-white);
  border: 1px solid var(--gb-line); border-radius: 3px;
  color: var(--gb-navy); font-size: 12px; font-weight: 700;
  text-transform: uppercase; letter-spacing: .3px; cursor: pointer;
  transition: background .1s;
}
.gb-scelti-item:hover { background: #f0f2f8; }
.gb-scelti-item img, .gb-scelti-item .gb-si-icon { width: 20px; height: 20px; flex-shrink: 0; }

/* Campionati: filtri + albero competizioni */
.gb-campionati-box { background: var(--gb-white); }
.gb-camp-header {
  padding: 10px 12px 4px;
  color: var(--gb-text2); font-size: 12px; font-weight: 700;
}
.gb-camp-tabs { display: flex; border-bottom: 1px solid var(--gb-line); }
.gb-camp-tab {
  flex: 1; text-align: center; padding: 10px 4px;
  color: var(--gb-text3); font-size: 11.5px; font-weight: 700;
  cursor: pointer; position: relative;
}
.gb-camp-tab.active { color: var(--gb-navy); }
.gb-camp-tab.active::after {
  content: ''; position: absolute; left: 4px; right: 4px;
  bottom: 0; height: 2.5px; background: var(--gb-navy);
}
.gb-camp-tab:hover:not(.active) { color: var(--gb-navy); }

/* ─────────────────────────────────────────────────────────────
   SPORT TREE — sfondo NAVY #36436e, testo BIANCO (come Goldbet)
   Misurato dal DOM: tournament-menu-wrapper bg = rgb(54,67,110) = #36436e
───────────────────────────────────────────────────────────── */
.gb-sport-tree { background: #ffffff; }

.gb-sport-item {
  border-bottom: 1px solid #e6e8ee;
}

/* Riga sport chiusa/aperta: tema chiaro (stile Goldbet) */
.gb-sport-row {
  display: flex; align-items: center; gap: 10px;
  padding: 12px 14px; cursor: pointer;
  color: #0a1b4e; font-size: 13px; font-weight: 700;
  background: #fff; text-transform: uppercase;
  letter-spacing: .2px; min-height: 48px;
  transition: background .1s;
}
.gb-sport-row:hover { background: #f3f5f9; }
.gb-sport-row.active { background: #eef1f7; }

/* Icone sport — colori approssimativi delle icone Goldbet */
.gb-sport-icon {
  width: 24px; height: 24px; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  font-size: 16px;
}
/* Colori icone per sport (da Goldbet) */
.gb-sport-item[data-sport="calcio"]       .gb-sport-icon i { color: #4caf50; }
.gb-sport-item[data-sport="tennis"]       .gb-sport-icon i { color: #b5c900; font-size: 18px; }
.gb-sport-item[data-sport="basket"]       .gb-sport-icon i { color: #ff7043; }
.gb-sport-item[data-sport="volley"]       .gb-sport-icon i { color: #42a5f5; }
.gb-sport-item[data-sport="hockey"]       .gb-sport-icon i { color: #90a4ae; }
.gb-sport-item[data-sport="baseball"]     .gb-sport-icon i { color: #a1887f; }
.gb-sport-item[data-sport="rugby"]        .gb-sport-icon i { color: #8bc34a; }
.gb-sport-item[data-sport="pallamano"]    .gb-sport-icon i { color: #ef5350; }
.gb-sport-item[data-sport="nfl"]          .gb-sport-icon i { color: #8d6e63; }
.gb-sport-item[data-sport="tennistavolo"] .gb-sport-icon i { color: #26c6da; }
.gb-sport-item[data-sport="motori"]       .gb-sport-icon i { color: #ef5350; }
.gb-sport-item[data-sport="boxe"]         .gb-sport-icon i { color: #ec407a; }
.gb-sport-item[data-sport="mma"]          .gb-sport-icon i { color: #ab47bc; }
.gb-sport-item[data-sport="esports"]      .gb-sport-icon i { color: #7e57c2; }
.gb-sport-item[data-sport="virtual"]      .gb-sport-icon i { color: #26a69a; }
/* Default: grigio scuro su tema chiaro */
.gb-sport-icon i { color: #5a6478; }

.gb-sport-name {
  flex: 1; white-space: normal; line-height: 1.3;
  word-break: break-word; color: #0a1b4e;
}

/* Badge count — pill chiaro (stile Goldbet) */
.gb-sport-count {
  background: #eef1f7;
  color: #0a1b4e; font-size: 11px; font-weight: 700;
  border-radius: 14px; padding: 3px 9px;
  min-width: 28px; text-align: center; flex-shrink: 0;
  border: 1px solid #dfe3ec;
}

.gb-sport-chevron {
  color: #9aa0b4; font-size: 11px;
  transition: transform .15s; flex-shrink: 0;
}
.gb-sport-item.open .gb-sport-chevron { transform: none; }
.gb-sport-comps { display: none; background: #fff; }
.gb-sport-item.open .gb-sport-comps { display: block; }

/* ── Paesi (stile Goldbet, tema chiaro) ── */
.gb-cty { border-top: 1px solid #eceef3; }
.gb-cty-row {
  display: flex; align-items: center; gap: 9px;
  padding: 10px 14px 10px 16px; cursor: pointer;
  color: #1c2742; font-size: 13px; font-weight: 600;
  background: #fff; transition: background .1s;
}
.gb-cty-row:hover { background: #f3f5f9; }
.gb-cty.open > .gb-cty-row { background: #eef1f7; }
.gb-cty-flag { line-height: 1; flex-shrink: 0; width: 22px; text-align: center; display:flex; align-items:center; justify-content:center; }
.gb-cty-flag img { display:block; border-radius:2px; }
.gb-cty-name { flex: 1; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.gb-cty-count {
  background: #fff; color: #1c2742; font-size: 11px; font-weight: 700;
  border-radius: 12px; padding: 2px 8px; min-width: 24px; text-align: center;
  flex-shrink: 0; border: 1px solid #dfe3ec;
}
.gb-cty-chev { color: #9aa0b4; font-size: 11px; flex-shrink: 0; }

/* ── Leghe sotto un paese ── */
.gb-cty-leagues { background: #f7f8fb; }
.gb-league-row {
  display: flex; align-items: center; gap: 8px;
  padding: 9px 14px 9px 40px; cursor: pointer;
  color: #46506a; font-size: 12.5px; font-weight: 500;
  border-top: 1px solid #eceef3; transition: background .1s;
}
.gb-league-row:hover { background: #eef1f7; color: #0a1b4e; }
.gb-league-row.active { color: var(--gb-blue); font-weight: 700; }
.gb-league-name { flex: 1; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.gb-league-count {
  background: #eef1f7; color: #1c2742; font-size: 11px; font-weight: 700;
  border-radius: 10px; padding: 1px 7px; min-width: 22px; text-align: center; flex-shrink: 0;
}

/* PREFERITI */
.gb-preferiti {
  background: var(--gb-navy2);
  border-top: 1px solid rgba(255,255,255,.08);
}
.gb-pref-header {
  display: flex; align-items: center; justify-content: space-between;
  padding: 12px; cursor: pointer;
  color: rgba(255,255,255,.9); font-weight: 800; font-size: 13px;
  text-transform: uppercase; letter-spacing: .4px;
}
.gb-pref-header:hover { background: rgba(255,255,255,.05); }
.gb-pref-header i { color: var(--gb-gold); margin-right: 6px; }
.gb-pref-header .gb-pref-arrow { color: rgba(255,255,255,.5); font-size: 13px; }
.gb-pref-body {
  padding: 12px;
  color: rgba(255,255,255,.55); font-size: 11.5px; line-height: 1.5;
}
.gb-pref-body a { color: var(--gb-gold); text-decoration: underline; }

/* ═══════════════════════════════════════════════════════════════
   AREA CENTRALE
══════════════════════════════════════════════════════════════ */
.gb-center {
  min-width: 0;
  overflow-x: hidden;
  background: var(--gb-center-bg);
}

/* Banner placeholder */
.gb-banner {
  background: linear-gradient(135deg, var(--gb-navy) 0%, #1a3a6b 100%);
  height: 90px; display: flex; align-items: center; justify-content: center;
  color: rgba(255,255,255,.3); font-size: 12px; letter-spacing: 1px;
  text-transform: uppercase; margin-bottom: 0;
}

/* Barra PROPOSTE SUPERCOMBO | MAXIQUOTE | PROPOSTE DA GOLDBET */
.gb-proposte-bar {
  display: flex; align-items: center; gap: 0;
  background: var(--gb-white); border-bottom: 1px solid var(--gb-line);
  overflow-x: auto;
}
.gb-proposte-bar::-webkit-scrollbar { display: none; }
.gb-prop-tab {
  display: flex; align-items: center; gap: 8px;
  padding: 12px 18px; font-size: 13px; font-weight: 700;
  color: var(--gb-navy); cursor: pointer; white-space: nowrap;
  border-right: 1px solid var(--gb-line); position: relative;
}
.gb-prop-tab:hover { background: #f6f8fc; }
.gb-prop-tab.active { background: var(--gb-gold); }
.gb-prop-tab .gb-pt-link { color: var(--gb-blue); font-weight: 700; margin-left: 4px; font-size: 12px; }
.gb-prop-tab i { font-size: 14px; }

/* Cards Proposte Supercombo */
.gb-proposte-cards {
  background: var(--gb-white); padding: 10px 12px;
  display: flex; gap: 10px; overflow-x: auto; border-bottom: 1px solid var(--gb-line);
}
.gb-proposte-cards::-webkit-scrollbar { display: none; }
.gb-prop-card {
  min-width: 220px; background: var(--gb-navy); border-radius: 4px;
  padding: 10px 12px; color: #fff; flex-shrink: 0;
}
.gb-prop-card-comp { font-size: 10px; color: rgba(255,255,255,.6); margin-bottom: 4px; }
.gb-prop-card-match { font-size: 12px; font-weight: 800; margin-bottom: 8px; text-transform: uppercase; }
.gb-prop-card-sel { font-size: 11px; color: rgba(255,255,255,.8); margin-bottom: 2px; }
.gb-prop-card-sel strong { color: var(--gb-gold); }
.gb-prop-card-quota {
  display: flex; align-items: center; justify-content: space-between;
  margin-top: 8px; padding-top: 8px; border-top: 1px solid rgba(255,255,255,.15);
}
.gb-prop-card-qlbl { font-size: 11px; color: rgba(255,255,255,.55); }
.gb-prop-card-qval {
  background: var(--gb-white); color: var(--gb-navy); border-radius: 3px;
  padding: 5px 16px; font-weight: 800; font-size: 14px; min-width: 80px; text-align: center;
}

/* Barra TOP LIVE | PROSSIMI EVENTI | TOP PREMATCH */
.gb-event-tabs {
  display: flex; align-items: stretch; background: var(--gb-white);
  border-bottom: 1px solid var(--gb-line);
}
.gb-ev-tab {
  display: flex; align-items: center; gap: 7px;
  padding: 12px 16px; font-size: 13px; font-weight: 700;
  color: var(--gb-navy); cursor: pointer; white-space: nowrap;
  min-height: 45px; letter-spacing: .3px; text-transform: uppercase;
}
.gb-ev-tab i { font-size: 13px; }
.gb-ev-tab:hover { background: #f6f8fc; }
.gb-ev-tab.active { background: var(--gb-gold); color: var(--gb-navy); }
.gb-ev-tab .gb-live-dot {
  width: 8px; height: 8px; border-radius: 50%; background: var(--gb-live);
  animation: gb-pulse 1.5s infinite;
}
@keyframes gb-pulse {
  0%,100% { opacity:1; } 50% { opacity:.4; }
}

/* Sport tabs (CALCIO, Tennis, Basket...) */
.gb-sport-tabs {
  display: flex; align-items: center; background: var(--gb-white);
  border-bottom: 2px solid var(--gb-line); overflow-x: auto;
  padding: 0 4px;
}
.gb-sport-tabs::-webkit-scrollbar { display: none; }
.gb-sport-tab {
  display: flex; align-items: center; gap: 6px;
  padding: 11px 14px; font-size: 13px; font-weight: 700;
  color: var(--gb-text2); cursor: pointer; white-space: nowrap;
  position: relative; text-transform: uppercase; letter-spacing: .2px;
  flex-shrink: 0;
}
.gb-sport-tab:hover { color: var(--gb-navy); }
.gb-sport-tab.active { color: var(--gb-navy); }
.gb-sport-tab.active::after {
  content: ''; position: absolute; left: 8px; right: 8px;
  bottom: -2px; height: 3px; background: var(--gb-gold); z-index: 1;
}
.gb-sport-tab img { width: 18px; height: 18px; }
.gb-sport-tab i { font-size: 14px; }
.gb-st-more {
  width: 32px; height: 38px; background: var(--gb-navy);
  display: flex; align-items: center; justify-content: center;
  color: #fff; cursor: pointer; flex-shrink: 0; font-size: 13px;
  margin-left: auto;
}

/* Intestazione colonne mercati */
.gb-mkt-header {
  display: flex; align-items: center;
  background: var(--gb-white); border-bottom: 0.8px solid var(--gb-navy);
  min-height: 32px;
}
.gb-mh-event { flex: 1; min-width: 0; padding: 6px 10px; }
.gb-mh-group {
  display: flex; align-items: center;
  border-left: 0.8px solid var(--gb-navy);
}
.gb-mh-label {
  text-align: center; padding: 6px 10px;
  font-size: 11px; font-weight: 800; color: var(--gb-navy);
  text-transform: uppercase; letter-spacing: .4px; white-space: nowrap;
}
.gb-mh-arrow {
  width: 32px; height: 32px; background: var(--gb-navy);
  display: flex; align-items: center; justify-content: center;
  color: #fff; cursor: pointer; flex-shrink: 0; font-size: 12px;
  border-left: 0.8px solid var(--gb-navy);
}

/* Blocco competizione */
.gb-comp-block { margin-bottom: 0; }
.gb-comp-header-row {
  display: flex; align-items: center; gap: 8px;
  padding: 7px 10px; background: #e8ecf4;
  border-bottom: 1px solid var(--gb-line);
  border-top: 1px solid var(--gb-line);
  cursor: pointer;
}
.gb-comp-header-row:hover { background: #dde2ef; }
.gb-ch-flag { font-size: 14px; }
.gb-ch-name {
  font-size: 12px; font-weight: 800; color: var(--gb-navy);
  text-transform: uppercase; letter-spacing: .3px; flex: 1;
}
.gb-ch-count { font-size: 11px; color: var(--gb-text3); }
.gb-ch-chevron { color: var(--gb-text3); font-size: 11px; transition: transform .15s; }
.gb-comp-block.collapsed .gb-ch-chevron { transform: rotate(-90deg); }
.gb-comp-events { }
.gb-comp-block.collapsed .gb-comp-events { display: none; }

/* Riga evento */
.gb-ev-row {
  display: flex; align-items: stretch;
  background: var(--gb-white); border-bottom: 0.8px solid var(--gb-line);
  min-height: 52px; transition: background .1s;
}
.gb-ev-row:hover { background: #f8f9fc; }

.gb-ev-info {
  flex: 1; min-width: 0; display: flex; align-items: center;
  gap: 8px; padding: 6px 10px; cursor: pointer; border-right: 0.8px solid var(--gb-line);
}
.gb-ev-time {
  flex-shrink: 0; width: 44px; text-align: center;
  font-size: 11px; font-weight: 600; color: var(--gb-text2); line-height: 1.4;
}
.gb-ev-time .gb-ev-live { color: var(--gb-live); font-weight: 800; font-size: 12px; display: block; }
.gb-ev-score-badge {
  flex-shrink: 0; min-width: 28px; height: 28px;
  background: var(--gb-navy); color: var(--gb-gold);
  border-radius: 3px; display: flex; align-items: center;
  justify-content: center; font-weight: 900; font-size: 13px; padding: 0 4px;
}
.gb-ev-teams { flex: 1; min-width: 0; }
.gb-ev-team-name {
  font-size: 13px; font-weight: 600; color: var(--gb-navy);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  line-height: 1.45;
}
.gb-ev-icons {
  flex-shrink: 0; display: flex; align-items: center; gap: 8px;
  color: var(--gb-text3); font-size: 13px;
}
.gb-ev-icons .gb-ic-live { color: var(--gb-live); }
.gb-ev-icons .gb-ic-stream { color: var(--gb-blue); }
.gb-ev-icons i { cursor: pointer; }
.gb-ev-icons i:hover { color: var(--gb-navy); }
.gb-ev-add { font-size: 10px; color: var(--gb-text3); }

/* Gruppi quote per riga evento */
.gb-ev-mkt-group {
  display: flex; align-items: center; flex-shrink: 0;
  border-left: 0.8px solid var(--gb-line);
}
.gb-ev-odds { display: flex; align-items: center; gap: 3px; padding: 0 5px; }
.gb-ev-more-btn {
  width: 32px; border-left: 0.8px solid var(--gb-line); display: flex;
  align-items: center; justify-content: center;
  color: var(--gb-blue); font-size: 12px; font-weight: 700;
  cursor: pointer; background: transparent; border: none;
  border-left: 0.8px solid var(--gb-line);
  padding: 0 4px; height: 100%;
}
.gb-ev-more-btn:hover { background: #f0f4ff; }

/* Pulsante quota — MISURE ESATTE DA GOLDBET */
.gb-odd-btn {
  display: flex; flex-direction: column; align-items: center;
  justify-content: center; gap: 1px;
  min-width: 52px; height: 38px; padding: 0 4px;
  background: var(--gb-white);
  border: 0.8px solid var(--gb-blue-soft); border-radius: 2px;
  color: var(--gb-navy); cursor: pointer;
  transition: background .1s, border-color .1s;
  flex-shrink: 0;
}
.gb-odd-btn:hover { background: #f0f4ff; border-color: var(--gb-blue); }
.gb-odd-btn.sel { background: var(--gb-gold); border-color: var(--gb-gold); }
.gb-odd-btn.sel .gb-ob-label, .gb-odd-btn.sel .gb-ob-val { color: var(--gb-navy); }
.gb-odd-btn.locked { background: #f5f5f5; border-color: var(--gb-line2); cursor: not-allowed; }
.gb-odd-btn.locked .gb-ob-val { color: var(--gb-text3); font-size: 10px; }
.gb-ob-label { font-size: 9px; color: var(--gb-text3); font-weight: 600; text-transform: uppercase; }
.gb-ob-val { font-size: 13px; font-weight: 700; color: var(--gb-navy); }
/* trend su/giù */
.gb-odd-btn.up .gb-ob-val::after { content: ' ↑'; color: var(--gb-green); font-size: 9px; }
.gb-odd-btn.down .gb-ob-val::after { content: ' ↓'; color: var(--gb-red); font-size: 9px; }
.gb-odd-btn.flash { animation: gb-flash .5s ease; }
@keyframes gb-flash { 0%,100%{background:var(--gb-white)} 50%{background:#fffde7} }
.gb-odd-empty {
  width: 52px; height: 38px; display: flex; align-items: center;
  justify-content: center; color: var(--gb-line2); font-size: 16px;
  border: 0.8px solid var(--gb-line); border-radius: 2px;
  flex-shrink: 0; background: #fafafa;
}

/* Sotto-tabella prossimo gol (dropdowns numerici) */
.gb-pgol {
  display: flex; align-items: center; gap: 3px; padding: 0 4px;
}
.gb-pgol-item {
  display: flex; flex-direction: column; align-items: center;
  min-width: 52px; height: 38px; border: 0.8px solid var(--gb-blue-soft);
  border-radius: 2px; background: var(--gb-white); cursor: pointer;
  justify-content: center; gap: 1px;
}
.gb-pgol-item:hover { background: #f0f4ff; }
.gb-pgol-item.sel { background: var(--gb-gold); border-color: var(--gb-gold); }
.gb-pgol-label { font-size: 9px; color: var(--gb-text3); font-weight: 600; white-space: nowrap; }
.gb-pgol-val { font-size: 12px; font-weight: 700; color: var(--gb-navy); }
.gb-pgol-item .gb-uo-sel {
  font-size: 8px; color: var(--gb-blue); font-weight: 700;
  display: flex; align-items: center; gap: 2px;
}
.gb-pgol-item .gb-uo-sel select {
  background: none; border: none; color: var(--gb-blue);
  font-size: 8px; font-weight: 700; cursor: pointer; outline: none;
  padding: 0; -webkit-appearance: none;
}

/* Riga loading skeleton */
.gb-skel { overflow: hidden; }
.gb-skel-inner {
  background: linear-gradient(90deg,#f0f2f5 25%,#e8eaf0 50%,#f0f2f5 75%);
  background-size: 400% 100%; animation: gb-shimmer 1.3s infinite;
}
@keyframes gb-shimmer {
  0%{background-position:100% 0} 100%{background-position:-100% 0}
}
.gb-skel-row {
  display: flex; align-items: center; gap: 8px; padding: 10px 12px;
  border-bottom: 1px solid var(--gb-line); background: var(--gb-white);
}
.gb-skel-row .gb-skel-inner { border-radius: 3px; }

/* Empty state */
.gb-empty {
  padding: 50px 20px; text-align: center; background: var(--gb-white);
  color: var(--gb-text3);
}
.gb-empty i { font-size: 36px; margin-bottom: 12px; display: block; color: var(--gb-line2); }
.gb-empty-t { font-weight: 700; color: var(--gb-navy); margin-bottom: 4px; font-size: 15px; }

/* ═══════════════════════════════════════════════════════════════
   SIDEBAR DESTRA — BETSLIP (331px, #f5f6f8)
══════════════════════════════════════════════════════════════ */
.gb-sidebar-right {
  width: 331px;
  background: var(--gb-right-bg);
  padding: 5px;
  position: sticky;
  top: 180px;
  max-height: calc(100vh - 180px);
  overflow-y: auto;
}

/* Random Bet */
.gb-randombet {
  background: var(--gb-white); border: 1px solid var(--gb-line);
  border-radius: 3px; margin-bottom: 5px; overflow: hidden;
}
.gb-rb-header {
  display: flex; align-items: center; justify-content: space-between;
  padding: 11px 14px; cursor: pointer; font-weight: 700; font-size: 13px;
  color: var(--gb-navy);
}
.gb-rb-header i { color: var(--gb-gold); margin-right: 6px; }
.gb-rb-header:hover { background: #f8f9fc; }

/* Giocata Rapida */
.gb-giocata-rapida {
  background: var(--gb-navy); display: flex; align-items: center;
  padding: 10px 14px; gap: 10px; border-radius: 3px;
  margin-bottom: 5px;
}
.gb-gr-toggle { display: flex; align-items: center; gap: 0; }
.gb-gr-toggle-track {
  width: 38px; height: 20px; background: #2c3e6b; border-radius: 20px;
  position: relative; cursor: pointer; transition: background .2s;
}
.gb-gr-toggle-track.on { background: var(--gb-gold); }
.gb-gr-toggle-thumb {
  position: absolute; width: 14px; height: 14px; background: #fff;
  border-radius: 50%; top: 3px; left: 3px; transition: left .2s;
}
.gb-gr-toggle-track.on .gb-gr-toggle-thumb { left: 21px; }
.gb-gr-label { color: #fff; font-weight: 700; font-size: 13px; flex: 1; }
.gb-gr-amount {
  background: #2c3e6b; color: #fff; border-radius: 3px;
  padding: 7px 12px; font-weight: 700; font-size: 13px;
  display: flex; align-items: center; gap: 6px; cursor: pointer;
}
.gb-gr-amount i { font-size: 10px; opacity: .7; }

/* SCHEDINA / STORICO / PRENOTATE */
.gb-schedina-wrap {
  background: var(--gb-white); border: 1px solid var(--gb-line);
  border-radius: 3px; overflow: hidden;
}
.gb-sched-tabs { display: flex; border-bottom: 1px solid var(--gb-line); }
.gb-sched-tab {
  flex: 1; text-align: center; padding: 12px 6px;
  font-size: 12.5px; font-weight: 700; color: var(--gb-text2);
  cursor: pointer; text-transform: uppercase; letter-spacing: .3px;
  border-right: 1px solid var(--gb-line); position: relative;
}
.gb-sched-tab:last-child { border-right: none; }
.gb-sched-tab:hover { color: var(--gb-navy); background: #fafafa; }
.gb-sched-tab.active { color: var(--gb-navy); }

/* SINGOLA / SISTEMA + icone */
.gb-bet-type-row {
  display: flex; align-items: center; padding: 8px 14px 6px;
  border-bottom: 1px solid var(--gb-line); gap: 16px;
}
.gb-bet-type {
  font-size: 13px; font-weight: 800; color: var(--gb-text2);
  cursor: pointer; padding-bottom: 6px; position: relative;
  text-transform: uppercase; letter-spacing: .3px;
}
.gb-bet-type.active { color: var(--gb-navy); }
.gb-bet-type.active::after {
  content: ''; position: absolute; left: 0; right: 0; bottom: 0;
  height: 3px; background: var(--gb-gold); border-radius: 2px;
}
.gb-bet-icons { margin-left: auto; display: flex; gap: 12px; color: var(--gb-blue); }
.gb-bet-icons i { cursor: pointer; font-size: 14px; }
.gb-bet-icons i:hover { color: var(--gb-navy); }

/* Area scommesse (vuota o con selezioni) */
.gb-slip-body { min-height: 120px; }
.gb-slip-empty {
  padding: 40px 14px; text-align: center;
  font-size: 13px; font-weight: 700; color: var(--gb-navy);
  text-transform: uppercase; letter-spacing: .3px;
}

/* Selezione nel betslip */
.gb-slip-item {
  padding: 10px 14px; border-bottom: 1px solid var(--gb-line);
  position: relative;
}
.gb-si-header { display: flex; justify-content: space-between; margin-bottom: 3px; }
.gb-si-sel { font-weight: 700; font-size: 13px; color: var(--gb-navy); }
.gb-si-odd { font-weight: 800; font-size: 14px; color: var(--gb-navy); }
.gb-si-mkt { font-size: 11px; color: var(--gb-text3); }
.gb-si-ev { font-size: 11px; color: var(--gb-text2); margin-top: 2px; }
.gb-si-rm { position: absolute; top: 9px; right: 12px; color: var(--gb-text3); cursor: pointer; display: none; }
.gb-slip-item:hover .gb-si-rm { display: block; }
.gb-si-rm:hover { color: var(--gb-red); }

/* Footer betslip */
.gb-slip-foot { padding: 12px 14px; background: var(--gb-white); border-top: 1px solid var(--gb-line); }
.gb-sf-row { display: flex; justify-content: space-between; align-items: center; padding: 3px 0; font-size: 13px; }
.gb-sf-label { color: var(--gb-text2); font-weight: 500; }
.gb-sf-val { font-weight: 700; color: var(--gb-navy); }
.gb-sf-total .gb-sf-val { color: var(--gb-green); font-size: 15px; font-weight: 800; }
.gb-stake-row { display: flex; align-items: center; gap: 8px; margin: 8px 0; }
.gb-stake-row label { color: var(--gb-text2); font-size: 12px; font-weight: 600; }
.gb-stake-input {
  flex: 1; height: 38px; border: 1px solid var(--gb-line2);
  border-radius: 3px; text-align: right; padding: 0 10px;
  font-size: 15px; font-weight: 700; color: var(--gb-navy);
  background: var(--gb-white); outline: none;
}
.gb-stake-cur { color: var(--gb-text2); font-weight: 700; font-size: 14px; }
.gb-quick-stakes { display: flex; gap: 5px; margin-bottom: 10px; }
.gb-qs { flex: 1; text-align: center; padding: 7px 4px; background: #f0f2f5; border: 1px solid var(--gb-line); border-radius: 3px; font-size: 12px; font-weight: 700; color: var(--gb-navy); cursor: pointer; }
.gb-qs:hover { border-color: var(--gb-blue); background: #e8f0fb; }
.gb-accept-chg { display: flex; align-items: center; gap: 8px; margin: 8px 0; font-size: 12px; color: var(--gb-text2); cursor: pointer; }
.gb-acc-chk { width: 16px; height: 16px; border: 1.5px solid var(--gb-line2); border-radius: 3px; display: flex; align-items: center; justify-content: center; font-size: 10px; color: transparent; }
.gb-accept-chg.on .gb-acc-chk { background: var(--gb-gold); border-color: var(--gb-gold); color: var(--gb-navy); }
/* Pulsanti schedina: PRENOTA + SCOMMETTI affiancati (stile Goldbet) */
.gb-slip-btns { display: flex; gap: 8px; margin-top: 10px; }
.gb-slip-btns > button {
  flex: 1 1 0; min-width: 0; border: none; border-radius: 3px; padding: 13px 8px;
  font-weight: 800; font-size: 14px; letter-spacing: .5px; text-transform: uppercase;
  cursor: pointer; transition: background .12s;
}
.gb-prenota { background: var(--gb-navy); color: #fff; }
.gb-prenota:hover { background: var(--gb-navy2); }
.gb-scommetti { background: var(--gb-gold); color: var(--gb-navy); }
.gb-scommetti:hover { background: var(--gb-gold-d); }
.gb-scommetti.dis { background: var(--gb-line2); cursor: not-allowed; color: var(--gb-text3); }

/* BETSCANNER */
.gb-betscanner {
  width: 100%; border: none; background: var(--gb-blue);
  color: #fff; padding: 14px; font-weight: 800; font-size: 14px;
  letter-spacing: .8px; text-transform: uppercase;
  display: flex; align-items: center; justify-content: center;
  gap: 9px; cursor: pointer; border-radius: 3px; margin-top: 5px;
}
.gb-betscanner:hover { background: var(--gb-blue2); }
.gb-betscanner i { font-size: 16px; }

/* ═══════════════════════════════════════════════════════════════
   MOBILE FAB + DRAWER
══════════════════════════════════════════════════════════════ */
.gb-fab {
  display: none; position: fixed; right: 14px; bottom: 14px;
  z-index: 80; background: var(--gb-navy); color: #fff;
  border: none; border-radius: 28px; height: 50px; padding: 0 18px;
  font-weight: 800; font-size: 13px; align-items: center; gap: 8px;
  box-shadow: 0 4px 16px rgba(0,0,0,.3); cursor: pointer;
}
.gb-fab-ct {
  background: var(--gb-gold); color: var(--gb-navy); border-radius: 10px;
  min-width: 20px; height: 20px; display: flex; align-items: center;
  justify-content: center; font-size: 12px; font-weight: 800; padding: 0 5px;
}
.gb-ov {
  display: none; position: fixed; inset: 0;
  background: rgba(0,0,0,.5); z-index: 90;
}
.gb-ov.show { display: block; }
.gb-drawer {
  position: fixed; top: 0; bottom: 0; z-index: 95;
  overflow-y: auto; transition: transform .25s ease;
  background: var(--gb-white);
}
.gb-drawer.left { left: 0; width: 80%; max-width: 300px; transform: translateX(-100%); }
.gb-drawer.right { right: 0; width: 100%; max-width: 360px; transform: translateX(100%); background: var(--gb-right-bg); }
.gb-drawer.show { transform: translateX(0); }
.gb-drawer-hd {
  display: flex; align-items: center; justify-content: space-between;
  padding: 13px 14px; border-bottom: 1px solid var(--gb-line);
  font-weight: 800; font-size: 14px; color: var(--gb-navy);
  text-transform: uppercase;
}
.gb-drawer-close { font-size: 20px; color: var(--gb-text3); cursor: pointer; background: none; border: none; }

/* ═══════════════════════════════════════════════════════════════
   DETTAGLIO EVENTO — Layout Goldbet 1:1
══════════════════════════════════════════════════════════════ */
.gbd-center { background: #f0f2f5; }
.gbd-topnav { display:flex;align-items:center;justify-content:space-between;background:var(--gb-navy);padding:10px 14px;gap:12px; }
.gbd-topnav-left { display:flex;align-items:center;gap:8px;flex:1;min-width:0; }
.gbd-topnav-right { display:flex;align-items:center;gap:8px;flex-shrink:0; }
.gbd-back { background:none;border:none;color:rgba(255,255,255,.8);font-size:15px;cursor:pointer;padding:4px 8px;flex-shrink:0; }
.gbd-back:hover { color:#fff; }
.gbd-tn-ic { color:rgba(255,255,255,.6);font-size:14px;flex-shrink:0; }
.gbd-tn-comp { color:rgba(255,255,255,.85);font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.gbd-tn-btn { background:none;border:none;color:rgba(255,255,255,.75);font-size:13px;font-weight:600;cursor:pointer;padding:5px 8px;display:flex;align-items:center;gap:6px;white-space:nowrap; }
.gbd-tn-btn:hover { color:#fff; }
.gbd-evhead { background:var(--gb-white);padding:12px 16px;display:flex;align-items:center;justify-content:center;gap:8px;border-bottom:1px solid var(--gb-line);position:relative;flex-wrap:wrap; }
.gbd-evh-date { font-size:13px;color:var(--gb-text2);font-weight:600; }
.gbd-evh-match { font-size:14px;font-weight:800;color:var(--gb-navy); }
.gbd-evh-live { color:var(--gb-live);font-size:12px;font-weight:700; }
.gbd-evh-x { position:absolute;right:14px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--gb-text3);font-size:16px;cursor:pointer; }
.gbd-evh-x:hover { color:var(--gb-navy); }
.gbd-maintabs { display:flex;background:var(--gb-white);border-bottom:1px solid var(--gb-line); }
.gbd-mtab { padding:12px 20px;font-size:13px;font-weight:800;color:var(--gb-text2);cursor:pointer;text-transform:uppercase;letter-spacing:.4px;position:relative;display:flex;align-items:center;gap:8px; }
.gbd-mtab.active { color:var(--gb-navy); }
.gbd-mtab.active::after { content:'';position:absolute;left:14px;right:14px;bottom:0;height:3px;background:var(--gb-gold); }
.gbd-mtab:hover:not(.active) { color:var(--gb-navy);background:#fafafa; }
.gbd-new { background:var(--gb-gold);color:var(--gb-navy);font-size:9px;font-weight:900;padding:2px 6px;border-radius:3px;letter-spacing:.3px; }
/* ─────────────────────────────────────────────────────────────
   MARKET CATEGORY GRID — identico Goldbet (grid-container max-7)
   bg container: #f5f6f8
   grid-item inactive: bg #e0e2e8, color #0a1b4e, 11px fw400, h40px
   grid-item active:   bg #ffffff,  color #0a1b4e, 11px fw700, gold underline
   celle vuote: bg #f5f6f8 (stessa del container)
───────────────────────────────────────────────────────────── */
.gbd-catnav {
  background: #f5f6f8;
  border-bottom: 1px solid #dde0e7;
}
.gbd-catrow {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
}
.gbd-catitem {
  height: 40px;
  font-size: 11px; font-weight: 400; color: #0a1b4e;
  background: #e0e2e8; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  text-align: center; padding: 4px 8px; position: relative;
  border: 0.5px solid #f5f6f8; line-height: 1.3;
  font-family: 'Montserrat', sans-serif;
  white-space: normal; word-break: break-word;
}
.gbd-catitem-empty {
  background: #f5f6f8 !important;
  border-color: #f5f6f8 !important;
  cursor: default !important;
}
.gbd-catitem:not(.gbd-catitem-empty):hover { background: #cdd0d9; }
.gbd-catitem.active {
  background: #ffffff !important; font-weight: 700; color: #0a1b4e;
}
.gbd-catitem.active::after {
  content: ''; position: absolute; left: 0; right: 0; bottom: 0;
  height: 3px; background: #ffcc00;
}

/* ─────────────────────────────────────────────────────────────
   2-COLONNE MERCATI
───────────────────────────────────────────────────────────── */
.gbd-twocol { display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px; }
@media(max-width:700px){.gbd-twocol{grid-template-columns:1fr}}
.gbd-col-left,.gbd-col-right { display:flex;flex-direction:column;gap:6px; }

/* ─────────────────────────────────────────────────────────────
   MARKET BLOCK (slot-container + slot-header Goldbet)
   header: bg #0a1b4e, white, 13px fw700, padding 5px, h27px
   container: bg white, padding 5px 5px 0
───────────────────────────────────────────────────────────── */
.gbd-mblock { background:#fff; border:1px solid #dde0e7; border-radius:0; overflow:hidden; }
.gbd-mblock-head {
  display:flex; align-items:center; justify-content:space-between;
  background:#0a1b4e; color:#fff;
  padding:5px 8px; font-size:13px; font-weight:700;
  text-transform:uppercase; letter-spacing:.3px; min-height:27px;
}
.gbd-mblock-head i { color:rgba(255,255,255,.5); cursor:pointer; font-size:13px; }
.gbd-mblock-head i:hover { color:#ffcc00; }

/* Grid pulsanti dentro il blocco */
.gbd-mb-grid { display:grid; gap:1px; padding:5px 5px 0; background:#e0e2e8; }

/* ─────────────────────────────────────────────────────────────
   QUOTA BUTTON (valori esatti Goldbet):
   container: white bg, border sottile #e0e2e8, no border-radius
   label: #0a1b4e, 11px, fw400
   value: #020b26, 13px, fw500
───────────────────────────────────────────────────────────── */
.gbd-mb-btn {
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:4px; padding:8px 4px; background:#ffffff;
  border:none; cursor:pointer; min-height:54px;
  transition:background .1s;
}
.gbd-mb-btn:hover { background:#eef1f6; }
.gbd-mb-btn.sel { background:#ffcc00; }
.gbd-mb-btn.sel .gbd-mbb-l,.gbd-mb-btn.sel .gbd-mbb-v { color:#0a1b4e; }
.gbd-mb-locked { background:#f0f1f4; cursor:not-allowed; }
.gbd-mb-locked:hover { background:#f0f1f4; }
.gbd-mb-locked .gbd-mbb-l { color:#9aa0b4; }

/* ─────────────────────────────────────────────────────────────
   Testi quota (valori ESATTI Goldbet DOM):
   label: #0a1b4e, 11px, fw400
   value: #020b26, 13px, fw500
───────────────────────────────────────────────────────────── */
.gbd-mbb-l { font-size:11px; color:#0a1b4e; font-weight:400; text-align:center; font-family:'Montserrat',sans-serif; }
.gbd-mbb-v { font-size:13px; font-weight:500; color:#020b26; text-align:center; font-family:'Montserrat',sans-serif; }

/* ─────────────────────────────────────────────────────────────
   U/O CON LINEE (colonna destra)
───────────────────────────────────────────────────────────── */
.gbd-uo-lines { padding:5px 5px 0; display:flex; flex-direction:column; gap:1px; background:#e0e2e8; }
.gbd-uoline { display:flex; flex-direction:column; gap:1px; margin-bottom:3px; }
.gbd-uol-lbl {
  text-align:center; font-size:11px; font-weight:700; color:#56607a;
  padding:4px 0 2px; background:#fff;
}
.gbd-uol-btns { display:flex; gap:1px; }
.gbd-uol-btns .gbd-mb-btn {
  flex:1; min-height:50px; border:none; border-radius:0;
  background:#fff;
}
.gbd-uol-btns .gbd-mb-btn:hover { background:#eef1f6; }

/* ═══════════════════════════════════════════════════════════════
   PAGINA LIVE — clone Goldbet
══════════════════════════════════════════════════════════════ */
.gb-layout-live { grid-template-columns: minmax(0,1fr) 331px; }
.gbl-center { background: #f0f2f5; min-width: 0; overflow-x: hidden; }
.gb-live-right { width: 331px; background: var(--gb-right-bg); padding: 5px;
  position: sticky; top: 180px; max-height: calc(100vh - 180px); overflow-y: auto; }

/* ── Barra filtro sport orizzontale (navy) ── */
.gbl-sportbar-wrap {
  display: flex; align-items: stretch; background: var(--gb-navy);
  border-bottom: 2px solid var(--gb-gold); position: relative;
}
.gbl-sportbar {
  display: flex; align-items: stretch; overflow-x: auto; flex: 1; min-width: 0;
}
.gbl-sportbar::-webkit-scrollbar { height: 0; }
.gbl-sb-item {
  display: flex; flex-direction: column; align-items: center; justify-content: flex-end;
  gap: 7px; padding: 10px 14px 8px; cursor: pointer; min-width: 74px;
  color: rgba(255,255,255,.85); position: relative; flex-shrink: 0;
}
.gbl-sb-item:hover { background: rgba(255,255,255,.05); color: #fff; }
.gbl-sb-item.active { background: #06133a; color: #fff; }
.gbl-sb-item.active::after {
  content: ''; position: absolute; left: 0; right: 0; bottom: -2px;
  height: 3px; background: var(--gb-gold);
}
.gbl-sb-iconwrap { position: relative; font-size: 15px; line-height: 1; }
.gbl-sb-badge {
  position: absolute; top: -7px; right: -10px;
  background: var(--gb-gold); color: var(--gb-navy);
  font-size: 9px; font-weight: 800; border-radius: 8px;
  min-width: 15px; height: 15px; display: flex; align-items: center;
  justify-content: center; padding: 0 3px; border: 1.5px solid var(--gb-navy);
}
.gbl-sb-name {
  font-size: 11px; font-weight: 700; text-transform: uppercase;
  letter-spacing: .2px; white-space: nowrap;
}
/* Frecce scroll sport bar (sinistra/destra) */
.gbl-sb-arrow {
  width: 34px; flex-shrink: 0; display: flex; align-items: center;
  justify-content: center; color: #fff; cursor: pointer; border: none;
  background: var(--gb-navy); padding: 0;
}
.gbl-sb-arrow-l { border-right: 1px solid rgba(255,255,255,.1); }
.gbl-sb-arrow-r { border-left: 1px solid rgba(255,255,255,.1); }
.gbl-sb-arrow:hover { color: var(--gb-gold); }

/* ── Tabella live scorrevole orizzontalmente (mercati) ── */
.gbl-livetable-wrap { position: relative; }
.gbl-livetable { overflow-x: auto; overflow-y: visible; }
.gbl-livetable::-webkit-scrollbar { height: 0; }
/* Frecce scroll mercati: sulla striscia intestazione, sopra il contenuto */
.gbl-mkt-arrow {
  position: absolute; top: 0; height: 32px; width: 26px; z-index: 6;
  display: flex; align-items: center; justify-content: center; padding: 0;
  background: var(--gb-white); color: var(--gb-navy); cursor: pointer;
  border: none; box-shadow: 0 0 8px rgba(0,0,0,.18);
}
.gbl-mkt-arrow:hover { color: var(--gb-blue); }
.gbl-mkt-arrow-l { left: 0; border-right: 1px solid var(--gb-line); }
.gbl-mkt-arrow-r { right: 0; border-left: 1px solid var(--gb-line); }

/* ── Intestazione colonne mercati ── */
.gbl-colhead {
  display: flex; align-items: stretch; background: var(--gb-white);
  border-bottom: 1px solid var(--gb-line); min-height: 32px;
  width: max-content; min-width: 100%;
}
.gbl-ch-ev {
  flex: 0 0 280px; width: 280px;
  position: sticky; left: 0; z-index: 3; background: var(--gb-white);
}
.gbl-ch-grp {
  width: 200px; flex-shrink: 0; text-align: center;
  display: flex; align-items: center; justify-content: center;
  font-size: 12px; font-weight: 700; color: var(--gb-navy);
  text-transform: uppercase; letter-spacing: .3px;
  border-left: 1px solid var(--gb-line);
}

/* ── Competizione live ── */
.gbl-comp { margin-bottom: 0; }
.gbl-comp-name {
  background: #e8ecf4; color: var(--gb-navy);
  font-size: 11px; font-weight: 800; text-transform: uppercase;
  letter-spacing: .3px; padding: 6px 12px;
  border-top: 1px solid var(--gb-line); border-bottom: 1px solid var(--gb-line);
}

/* ── Riga evento live ── */
.gbl-ev-row {
  display: flex; align-items: stretch; background: var(--gb-white);
  border-bottom: 1px solid var(--gb-line); min-height: 56px;
  width: max-content; min-width: 100%;
}
.gbl-ev-row:hover { background: #f8f9fc; }
.gbl-ev-info {
  flex: 0 0 280px; width: 280px; display: flex; align-items: center; gap: 8px;
  padding: 6px 10px; border-right: 1px solid var(--gb-line);
  position: sticky; left: 0; z-index: 3; background: inherit;
}
.gbl-ev-left { display: flex; flex-direction: column; align-items: center; gap: 3px; width: 30px; flex-shrink: 0; }
.gbl-ev-min { font-size: 11px; color: var(--gb-blue); font-weight: 600; white-space: nowrap; }
.gbl-ev-fav { color: var(--gb-text3); cursor: pointer; font-size: 11px; }
.gbl-ev-fav.on, .gbl-ev-fav:hover { color: var(--gb-gold); }
.gbl-ev-teams { flex: 1; min-width: 0; cursor: pointer; }
.gbl-ev-tn {
  font-size: 13px; font-weight: 700; color: var(--gb-navy);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: 1.5;
}
.gbl-ev-mid { display: flex; flex-direction: column; align-items: flex-end; gap: 3px; flex-shrink: 0; }
.gbl-ev-stream { color: var(--gb-blue); font-size: 13px; cursor: pointer; }
.gbl-ev-more { font-size: 10px; color: var(--gb-green); font-weight: 700; }
.gbl-ev-score {
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  background: var(--gb-navy); color: #fff; border-radius: 3px;
  min-width: 26px; padding: 4px 5px; flex-shrink: 0; font-weight: 800; font-size: 13px;
  line-height: 1.3;
}

/* ── Gruppi quote live ── */
.gbl-grp {
  width: 200px; flex-shrink: 0; display: flex; align-items: center;
  gap: 4px; padding: 5px 6px; border-left: 1px solid var(--gb-line);
}
.gbl-grp-pgol { gap: 3px; }
.gbl-odd {
  flex: 1; display: flex; flex-direction: column; align-items: center;
  justify-content: center; gap: 1px; min-height: 42px; padding: 4px 2px;
  border: 0.8px solid var(--gb-blue-soft); border-radius: 2px;
  background: var(--gb-white); cursor: pointer; transition: background .1s;
}
.gbl-odd:hover { background: #f0f4ff; border-color: var(--gb-blue); }
.gbl-odd.sel { background: var(--gb-gold); border-color: var(--gb-gold); }
.gbl-odd.sel .gbl-odd-l, .gbl-odd.sel .gbl-odd-v { color: var(--gb-navy); }
.gbl-odd-l { font-size: 9px; color: var(--gb-text3); font-weight: 600; white-space: nowrap; }
.gbl-odd-v { font-size: 12.5px; font-weight: 700; color: var(--gb-navy); }
.gbl-odd-locked {
  background: #f0f1f4; border-color: var(--gb-line2); cursor: not-allowed;
}
.gbl-odd-locked:hover { background: #f0f1f4; }
.gbl-odd-locked .gbl-odd-l { color: #b0b5c4; }
.gbl-odd-locked i { color: #b0b5c4; font-size: 11px; }
.gbl-pgol .gbl-odd-l { font-size: 8px; }
.gbl-uo-sel {
  display: flex; align-items: center; gap: 5px; flex: 0 0 56px;
  justify-content: center; font-size: 13px; font-weight: 700; color: var(--gb-navy);
  cursor: pointer; min-height: 42px; border: 0.8px solid var(--gb-blue-soft);
  border-radius: 2px; background: var(--gb-white); position: relative;
}
.gbl-uo-sel:hover { background: #f0f4ff; }
.gbl-uo-sel i { font-size: 8px; }
/* trigger evidenziato quando il dropdown è aperto (navy, come Goldbet) */
.gbl-uo-sel.gbl-uo-open { background: var(--gb-navy); color: #fff; border-color: var(--gb-navy); }
.gbl-uo-sel.gbl-uo-open i { color: #fff; }
/* dropdown linea U/O live — sfondo navy/blu, testo bianco, leggermente più largo */
.gbl-line-dd {
  position: absolute; top: 44px; left: 50%; transform: translateX(-50%);
  z-index: 300; background: var(--gb-navy); border: none;
  border-radius: 0 0 3px 3px; box-shadow: 0 6px 14px rgba(0,0,0,.3);
  min-width: 64px; overflow: hidden; animation: gblDrop .12s ease;
}
@keyframes gblDrop { from{opacity:0;transform:translate(-50%,-4px)} to{opacity:1;transform:translate(-50%,0)} }
.gbl-line-opt {
  padding: 11px 14px; font-size: 13px; font-weight: 700; color: #fff;
  cursor: pointer; text-align: center; border-bottom: 1px solid rgba(255,255,255,.12);
}
.gbl-line-opt:last-child { border-bottom: none; }
.gbl-line-opt:hover { background: #16284f; }
.gbl-line-opt.selected { background: #16284f; color: var(--gb-gold); }

/* ── Pannello LIVE STREAMING ── */
.gbl-stream-panel {
  background: var(--gb-white); border: 1px solid var(--gb-line);
  border-radius: 3px; margin-bottom: 5px; overflow: hidden;
}
.gbl-stream-head {
  display: flex; align-items: center; justify-content: space-between;
  background: var(--gb-navy); color: #fff; padding: 11px 14px;
  font-size: 13px; font-weight: 800; letter-spacing: .3px;
}
.gbl-stream-icons { display: flex; gap: 10px; color: rgba(255,255,255,.7); font-size: 13px; cursor: pointer; }
.gbl-stream-body { padding: 14px; font-size: 12px; color: var(--gb-text2); line-height: 1.5; }
.gbl-stream-body a { color: var(--gb-blue); font-weight: 700; text-decoration: underline; cursor: pointer; }

/* Responsive live */
@media (max-width: 900px) {
  .gb-layout-live { grid-template-columns: minmax(0,1fr); }
  .gb-live-right { display: none; }
  /* I mercati scorrono orizzontalmente: niente colonne nascoste su mobile */
}

/* ── Custom dropdown "Prossimo Gol" line selector (stile Goldbet) ── */
.gb-line-sel {
  display: flex; align-items: center; gap: 3px;
  background: var(--gb-white); border: 0.8px solid var(--gb-blue-soft);
  border-radius: 2px; height: 38px; padding: 0 7px;
  cursor: pointer; color: var(--gb-blue); font-size: 11px; font-weight: 700;
  white-space: nowrap; position: relative; user-select: none;
}
.gb-line-sel:hover { border-color: var(--gb-blue); background: #f0f4ff; }
.gb-line-sel i { font-size: 8px; margin-left: 2px; }

.gb-line-dropdown {
  position: absolute; z-index: 200; background: var(--gb-white);
  border: 1px solid var(--gb-line2); border-radius: 3px;
  box-shadow: 0 4px 12px rgba(0,0,0,.15); min-width: 80px;
  overflow: hidden;
  animation: gbDropIn .12s ease;
}
@keyframes gbDropIn {
  from { opacity:0; transform:translateY(-4px); }
  to   { opacity:1; transform:translateY(0); }
}
.gb-line-opt {
  padding: 9px 14px; font-size: 13px; font-weight: 700;
  color: var(--gb-navy); cursor: pointer; white-space: nowrap;
  border-bottom: 1px solid var(--gb-line);
}
.gb-line-opt:last-child { border-bottom: none; }
.gb-line-opt:hover { background: #f0f4ff; color: var(--gb-blue); }
.gb-line-opt.selected { color: var(--gb-blue); background: #e8f0fb; }

/* Responsive */
@media (max-width: 1200px) {
  .gb-layout { grid-template-columns: minmax(0,1fr) 300px; }
  .gb-sidebar-left { display: none; }
  .gb-fab { display: flex; }
}
@media (max-width: 900px) {
  .gb-layout { grid-template-columns: minmax(0,1fr); }
  .gb-sidebar-right { display: none; }
  .gb-fab { display: flex; }
}
@media (max-width: 600px) {
  .gb-hrow4 { display: none; }
  .gb-hrow1 { height: 48px; }
  .gb-proposte-cards { display: none; }
  .gb-ev-mkt-group:nth-child(n+3) { display: none; }
}

/* ============================================================================
 * Area account header + Menu giocatore (dropdown) + Viste sezione
 * ==========================================================================*/
.gb-acct-area { display: flex; align-items: center; gap: 12px; position: relative; }
.gb-acct-msg { position: relative; background: transparent; border: none; color: #fff; font-size: 17px; cursor: pointer; padding: 4px; }
.gb-acct-badge { position: absolute; top: -3px; right: -4px; background: var(--gb-gold); color: var(--gb-navy); font-size: 9px; font-weight: 800; min-width: 15px; height: 15px; border-radius: 8px; display: flex; align-items: center; justify-content: center; padding: 0 3px; }
.gb-acct-info { display: flex; flex-direction: column; align-items: flex-end; line-height: 1.25; cursor: pointer; }
.gb-acct-name { color: #fff; font-size: 12px; font-weight: 700; }
.gb-acct-bal { display: flex; gap: 10px; font-size: 11px; color: rgba(255,255,255,.8); }
.gb-acct-bal b { color: #fff; }
.gb-acct-bonus b { color: var(--gb-gold); }
.gb-acct-avatar { width: 36px; height: 36px; border-radius: 50%; border: 1.5px solid rgba(255,255,255,.35); background: rgba(255,255,255,.08); color: #fff; cursor: pointer; font-size: 15px; }
.gb-acct-avatar.open, .gb-acct-avatar:hover { background: rgba(255,255,255,.2); }
.gb-ricarica { background: var(--gb-gold); color: var(--gb-navy); border: none; border-radius: 4px; padding: 9px 18px; font-weight: 800; font-size: 13px; text-transform: uppercase; letter-spacing: .3px; cursor: pointer; }
.gb-ricarica:hover { background: var(--gb-gold-d); }

/* ── Dropdown menu giocatore ── */
.gb-player-menu { position: absolute; top: calc(100% + 10px); right: 0; width: 340px; max-height: 82vh; overflow-y: auto; background: #fff; border-radius: 6px; box-shadow: 0 14px 44px rgba(0,0,0,.4); z-index: 2000; }
.gb-pm-head { background: var(--gb-navy); color: #fff; padding: 14px 16px; display: flex; justify-content: space-between; align-items: flex-start; }
.gb-pm-hl { display: flex; flex-direction: column; gap: 2px; }
.gb-pm-logout { color: var(--gb-gold); font-weight: 800; font-size: 13px; text-decoration: underline; cursor: pointer; }
.gb-pm-user { font-size: 13px; color: rgba(255,255,255,.85); }
.gb-pm-hr { display: flex; align-items: flex-start; gap: 12px; }
.gb-pm-conto { font-size: 12px; color: rgba(255,255,255,.85); text-align: right; line-height: 1.35; }
.gb-pm-conto b { color: var(--gb-gold); font-size: 14px; }
.gb-pm-refresh { color: var(--gb-gold); cursor: pointer; font-size: 16px; margin-top: 2px; }
.gb-pm-bals { background: var(--gb-navy); color: #fff; padding: 0 16px 14px; }
.gb-pm-balrow { display: flex; justify-content: space-between; padding: 4px 0; font-size: 14px; }
.gb-pm-balrow span { color: rgba(255,255,255,.8); }
.gb-pm-balrow b { font-weight: 800; }
.gb-pm-balrow b.gold { color: var(--gb-gold); }
.gb-pm-chat { margin: 12px 16px; width: calc(100% - 32px); border: 1px solid var(--gb-navy); background: #fff; color: var(--gb-navy); border-radius: 4px; padding: 9px; font-weight: 700; font-size: 13px; cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 8px; }
.gb-pm-chat:hover { background: #f0f3fa; }
.gb-pm-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--gb-line); border-top: 1px solid var(--gb-line); border-bottom: 1px solid var(--gb-line); }
.gb-pm-cell { background: #fff; display: flex; flex-direction: column; align-items: center; gap: 7px; padding: 16px 6px; cursor: pointer; }
.gb-pm-cell:hover { background: #f5f7fb; }
.gb-pm-ic { position: relative; width: 40px; height: 40px; border-radius: 50%; background: var(--gb-navy); color: #fff; display: flex; align-items: center; justify-content: center; font-size: 17px; }
.gb-pm-badge { position: absolute; top: -3px; right: -3px; background: var(--gb-gold); color: var(--gb-navy); font-size: 9px; font-weight: 800; min-width: 15px; height: 15px; border-radius: 8px; display: flex; align-items: center; justify-content: center; padding: 0 3px; }
.gb-pm-cl { font-size: 12px; font-weight: 700; color: var(--gb-navy); }
.gb-pm-list { padding: 0; }
.gb-pm-grow { display: flex; justify-content: space-between; align-items: center; padding: 14px 16px; font-size: 13px; font-weight: 800; color: var(--gb-navy); letter-spacing: .3px; cursor: pointer; border-bottom: 1px solid var(--gb-line); }
.gb-pm-grow:hover { background: #f5f7fb; }
.gb-pm-grow i { color: #9aa0b4; font-size: 12px; }
.gb-pm-sub { background: #f7f9fc; border-bottom: 1px solid var(--gb-line); }
.gb-pm-subrow { padding: 11px 28px; font-size: 13px; color: var(--gb-text2); cursor: pointer; }
.gb-pm-subrow:hover { color: var(--gb-navy); background: #eef2f8; }
.gb-pm-foot { background: var(--gb-gold); color: var(--gb-navy); text-align: center; font-size: 12px; font-weight: 700; padding: 9px; }

/* ── Vista sezione account ── */
.gb-acc-center { background: #f5f6f8; min-height: 70vh; }
.gb-acc-head { display: flex; align-items: center; gap: 10px; background: var(--gb-navy); color: #fff; padding: 14px 16px; }
.gb-acc-head h1 { font-size: 18px; font-weight: 800; margin: 0; }
.gb-acc-head .gbd-back { background: transparent; border: none; color: #fff; font-size: 16px; cursor: pointer; }
.gb-acc-body { padding: 18px; }
.gb-acc-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-bottom: 18px; }
.gb-acc-card { background: #fff; border: 1px solid var(--gb-line); border-radius: 6px; padding: 16px; display: flex; flex-direction: column; gap: 6px; }
.gb-acc-k { font-size: 12px; color: var(--gb-text2); font-weight: 600; }
.gb-acc-v { font-size: 20px; font-weight: 800; color: var(--gb-navy); }
.gb-acc-v.gold { color: #c79a00; }
.gb-acc-quick { display: flex; flex-wrap: wrap; gap: 10px; }
.gb-acc-qbtn { display: flex; align-items: center; gap: 8px; background: #fff; border: 1px solid var(--gb-line); border-radius: 6px; padding: 12px 16px; font-weight: 700; font-size: 13px; color: var(--gb-navy); cursor: pointer; }
.gb-acc-qbtn:hover { border-color: var(--gb-blue); }
.gb-acc-qbtn i { color: var(--gb-blue); }
.gb-acc-cassa { display: flex; flex-direction: column; gap: 12px; max-width: 360px; }
.gb-acc-big { display: flex; align-items: center; justify-content: center; gap: 8px; background: var(--gb-gold); color: var(--gb-navy); border: none; border-radius: 5px; padding: 14px; font-weight: 800; font-size: 14px; cursor: pointer; }
.gb-acc-big.ghost { background: #fff; color: var(--gb-navy); border: 1px solid var(--gb-navy); }
.gb-acc-note { font-size: 13px; color: var(--gb-text2); }
.gb-acc-empty { text-align: center; color: #9aa0b4; padding: 50px 20px; }
.gb-acc-empty i { font-size: 34px; display: block; margin-bottom: 12px; }

/* ============================================================================
 * Risultati — stile Goldbet
 * ==========================================================================*/
.gb-ris-page { background: #f5f6f8; min-height: 70vh; }
.gb-ris-head { display:flex; align-items:center; gap:12px; background:var(--gb-navy); color:#fff; padding:14px 16px; }
.gb-ris-title { font-size:18px; font-weight:800; margin:0; }
.gb-ris-days { display:flex; gap:0; background:#fff; border-bottom:1px solid var(--gb-line); overflow-x:auto; }
.gb-ris-days::-webkit-scrollbar{height:0}
.gb-ris-day { padding:11px 18px; font-size:13px; font-weight:600; color:#46506a; cursor:pointer; white-space:nowrap; border-bottom:3px solid transparent; }
.gb-ris-day:hover { color:var(--gb-navy); background:#f3f5f9; }
.gb-ris-day.active { color:var(--gb-navy); font-weight:800; border-bottom-color:var(--gb-gold); }
.gb-ris-sports { display:flex; gap:4px; padding:12px 16px; background:#fff; border-bottom:1px solid var(--gb-line); overflow-x:auto; }
.gb-ris-sport { padding:7px 16px; border-radius:20px; font-size:13px; font-weight:700; color:#46506a; cursor:pointer; white-space:nowrap; background:#f0f2f5; }
.gb-ris-sport:hover { background:#e4e7ef; }
.gb-ris-sport.active { background:var(--gb-navy); color:#fff; }
.gb-ris-content { padding:0; }
.gb-ris-league { margin-bottom:0; }
.gb-ris-league-head { display:flex; align-items:center; gap:8px; background:#e8ecf4; padding:8px 16px; font-size:12px; font-weight:800; color:var(--gb-navy); text-transform:uppercase; letter-spacing:.3px; border-top:1px solid var(--gb-line); }
.gb-ris-lf { font-size:15px; }
.gb-ris-ln { flex:1; }
.gb-ris-row { display:flex; align-items:center; background:#fff; border-bottom:1px solid var(--gb-line); padding:10px 16px; gap:12px; min-height:48px; }
.gb-ris-row:hover { background:#f8f9fc; }
.gb-ris-time { font-size:11px; color:#9aa0b4; width:40px; flex-shrink:0; font-weight:600; }
.gb-ris-teams { flex:1; display:flex; flex-direction:column; gap:3px; font-size:13px; font-weight:600; color:var(--gb-navy); }
.gb-ris-score { display:flex; flex-direction:column; align-items:center; gap:2px; min-width:36px; }
.gb-ris-score span { font-size:14px; font-weight:800; color:var(--gb-navy); line-height:1.3; }
.gb-ris-score.live span { color:var(--gb-red, #e53935); }
.gb-ris-loading, .gb-ris-empty { text-align:center; color:#9aa0b4; padding:50px 20px; }
.gb-ris-loading i, .gb-ris-empty i { font-size:32px; display:block; margin-bottom:12px; }
