.tg-stats{
  --tg-ground:#1C1C1C;
  --tg-panel:#262626;
  --tg-border:#383838;
  --tg-text:#F5F5F5;
  --tg-muted:#9A9A9A;
  --tg-faint:#8A8A8A;
  --tg-orange:#FF7F00;
  --tg-cyan:#05EDF9;
  --tg-display:"Nunito",system-ui,-apple-system,"Segoe UI",sans-serif;
  --tg-body:"Nunito Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --tg-mono:"DM Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;
  background:var(--tg-ground);
  color:var(--tg-text);
  font-family:var(--tg-body);
  border:1px solid var(--tg-border);
  border-radius:14px;
  overflow:hidden;
  max-width:100%;
  margin:28px 0;
  -webkit-font-smoothing:antialiased;
}
.tg-stats *{box-sizing:border-box}
.tg-stats button{font-family:inherit;cursor:pointer;border:0;background:none;color:inherit}

/* ---------- header ---------- */
.tg-stats__head{padding:20px 20px 16px;border-bottom:1px solid var(--tg-border);background:var(--tg-panel)}
.tg-stats__eyebrow{font-family:var(--tg-body);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--tg-faint);margin:0 0 6px}
.tg-stats .tg-stats__fixture{font-family:var(--tg-display);font-weight:900;font-size:22px;line-height:1.15;margin:0 0 12px;letter-spacing:-.01em;color:var(--tg-text)}
.tg-stats__meta{display:flex;flex-wrap:wrap;gap:8px}
.tg-chip{display:inline-flex;align-items:center;gap:6px;background:var(--tg-ground);border:1px solid var(--tg-border);border-radius:999px;padding:5px 11px;font-size:12px;color:var(--tg-muted);font-weight:600}
.tg-chip b{font-family:var(--tg-mono);font-weight:500;color:var(--tg-text)}
.tg-chip--ref b{color:var(--tg-orange)}
.tg-chip--comp{border-color:var(--tg-cyan);color:var(--tg-cyan);font-weight:700}

.tg-out{margin:12px 0 0;font-size:12.5px;line-height:1.5;color:var(--tg-muted);
  padding:9px 12px;background:var(--tg-ground);border:1px solid var(--tg-border);
  border-left:3px solid var(--tg-orange);border-radius:0 7px 7px 0}
.tg-out b{color:var(--tg-orange);font-weight:800}
.tg-out span{color:var(--tg-faint)}
.tg-out--doubt{border-left-color:var(--tg-cyan)}
.tg-out--doubt b{color:var(--tg-cyan)}
.tg-warn--bench{color:var(--tg-faint);border-color:var(--tg-border);font-family:var(--tg-body);
  font-weight:800;letter-spacing:.06em;text-transform:uppercase;font-size:9px}
.tg-warn--doubt{color:var(--tg-cyan);border-color:var(--tg-cyan);font-family:var(--tg-body);
  font-weight:800;letter-spacing:.06em;text-transform:uppercase;font-size:9px}

/* ---------- tabs ---------- */
.tg-tabs{display:flex;gap:2px;overflow-x:auto;background:var(--tg-panel);border-bottom:1px solid var(--tg-border);scrollbar-width:none;-ms-overflow-style:none}
.tg-tabs::-webkit-scrollbar{display:none}
.tg-tab{white-space:nowrap;padding:13px 16px;font-size:13px;font-weight:700;color:var(--tg-muted);border-bottom:2px solid transparent;transition:color .16s ease,border-color .16s ease}
.tg-tab:hover{color:var(--tg-text)}
.tg-tab[aria-selected="true"]{color:var(--tg-cyan);border-bottom-color:var(--tg-cyan)}
.tg-tab:focus-visible{outline:2px solid var(--tg-cyan);outline-offset:-2px}

/* ---------- controls ---------- */
.tg-controls{display:flex;flex-wrap:wrap;gap:14px;align-items:center;padding:14px 20px;border-bottom:1px solid var(--tg-border)}
.tg-seg{display:inline-flex;background:var(--tg-panel);border:1px solid var(--tg-border);border-radius:9px;padding:3px}
.tg-seg button{padding:7px 13px;font-size:12px;font-weight:700;color:var(--tg-muted);border-radius:6px;transition:background .16s ease,color .16s ease}
.tg-seg button:hover{color:var(--tg-text)}
.tg-seg button[aria-pressed="true"]{background:var(--tg-cyan);color:#0A0A0A}
.tg-seg button:focus-visible{outline:2px solid var(--tg-cyan);outline-offset:2px}
.tg-seg--team button[aria-pressed="true"]{background:var(--tg-border);color:var(--tg-text)}
/* Team buttons carry the same colours as the silks in the table, so the
   filter doubles as a legend for which side each player belongs to. */
.tg-seg--team button[data-team="home"]:before,
.tg-seg--team button[data-team="away"]:before{
  content:"";display:inline-block;width:4px;height:11px;border-radius:2px;
  margin-right:7px;vertical-align:-1px}
.tg-seg--team button[data-team="home"]:before{background:var(--tg-orange)}
.tg-seg--team button[data-team="away"]:before{background:var(--tg-cyan)}
.tg-seg--team button[data-team="home"][aria-pressed="true"]{background:var(--tg-orange);color:#0A0A0A}
.tg-seg--team button[data-team="away"][aria-pressed="true"]{background:var(--tg-cyan);color:#0A0A0A}
.tg-seg--team button[data-team][aria-pressed="true"]:before{background:#0A0A0A;opacity:.55}
.tg-check{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--tg-muted);cursor:pointer;user-select:none}
.tg-check input{appearance:none;width:16px;height:16px;border:1px solid var(--tg-border);border-radius:4px;background:var(--tg-panel);position:relative;cursor:pointer;flex:none}
.tg-check input:checked{background:var(--tg-cyan);border-color:var(--tg-cyan)}
.tg-check input:checked::after{content:"";position:absolute;left:5px;top:1px;width:4px;height:9px;border:solid #0A0A0A;border-width:0 2px 2px 0;transform:rotate(42deg)}
.tg-check input:focus-visible{outline:2px solid var(--tg-cyan);outline-offset:2px}
.tg-check:hover{color:var(--tg-text)}

/* ---------- insight ---------- */
.tg-insight{padding:12px 20px;font-size:13px;line-height:1.5;color:var(--tg-muted);border-bottom:1px solid var(--tg-border);background:rgba(255,127,0,.05)}
.tg-insight b{color:var(--tg-orange);font-weight:700}
.tg-insight--hidden{display:none}

/* ---------- table ---------- */
.tg-tablewrap{overflow-x:auto}
.tg-table{width:100%;border-collapse:collapse;font-size:14px}
.tg-table th{
  text-align:left;font-size:10px;letter-spacing:.11em;text-transform:uppercase;font-weight:800;
  color:var(--tg-faint);padding:11px 12px;border-bottom:1px solid var(--tg-border);white-space:nowrap;
}
.tg-table th[data-sort]{cursor:pointer;transition:color .16s ease}
.tg-table th[data-sort]:hover{color:var(--tg-text)}
.tg-table th[aria-sort]{color:var(--tg-cyan)}
.tg-table th .tg-arrow{opacity:0;margin-left:4px}
.tg-table th[aria-sort] .tg-arrow{opacity:1}
.tg-table td{padding:11px 12px;border-bottom:1px solid rgba(56,56,56,.55);vertical-align:middle}
.tg-table tbody tr{transition:background .16s ease}
.tg-table tbody tr:hover{background:rgba(5,237,249,.05)}
.tg-table tbody tr:last-child td{border-bottom:0}
.tg-rank{font-family:var(--tg-mono);font-size:12px;color:var(--tg-faint);width:38px}
.tg-row--top .tg-rank{color:var(--tg-orange)}
.tg-player{font-weight:700;display:flex;align-items:center;gap:9px;min-width:130px}
.tg-silk{width:4px;height:20px;border-radius:2px;flex:none;background:var(--tg-orange)}
.tg-row--away .tg-silk{background:var(--tg-cyan)}
.tg-warn{font-family:var(--tg-mono);font-size:10px;color:var(--tg-faint);border:1px solid var(--tg-border);border-radius:4px;padding:1px 5px;font-weight:400;white-space:nowrap}
.tg-num{font-family:var(--tg-mono);font-size:14px;text-align:center;width:18%;white-space:nowrap}
.tg-num--mins{color:var(--tg-faint);font-size:12px}
.tg-num--lead{color:var(--tg-orange);font-weight:500}
.tg-empty{padding:30px 20px;text-align:center;color:var(--tg-muted);font-size:14px}

/* ---------- pointers ---------- */
.tg-pointers{border-top:1px solid var(--tg-border);padding:20px}
.tg-stats .tg-pointers__title{font-family:var(--tg-display);font-weight:900;font-size:19px;margin:0 0 14px;color:var(--tg-text);letter-spacing:-.01em}
.tg-pointers__list{list-style:none;margin:0 0 4px;padding:0;display:flex;flex-direction:column;gap:10px}
.tg-stats .tg-pointers__group{font-family:var(--tg-body);font-size:13px;font-weight:800;letter-spacing:.12em;
  text-transform:uppercase;color:var(--tg-cyan);margin:20px 0 11px;padding-bottom:8px;
  border-bottom:1px solid var(--tg-border)}
.tg-stats .tg-pointers__group:first-of-type{margin-top:0}
.tg-pointer{display:flex;gap:12px;align-items:flex-start;background:var(--tg-panel);
  border:1px solid var(--tg-border);border-radius:9px;padding:13px 15px}
.tg-pointer__n{font-family:var(--tg-mono);font-size:12px;color:var(--tg-faint);padding-top:3px;flex:none;font-weight:400}
.tg-pointer__bet{display:block;font-family:var(--tg-display);font-weight:800;font-size:14px;
  color:var(--tg-orange);margin-bottom:4px;letter-spacing:-.005em}
.tg-pointer__why{display:block;font-size:14.5px;line-height:1.6;color:#ECECEC;font-weight:400}

/* ---------- heading resets (guard against theme h2 styles) ---------- */
.tg-stats h2,.tg-stats h5{margin:0;padding:0;border:0;font-weight:inherit;line-height:inherit;
  color:inherit;text-transform:none;letter-spacing:normal}
.tg-stats h2:before,.tg-stats h2:after{content:none;display:none}

/* ---------- bet builder ---------- */
.tg-builder{border-top:1px solid var(--tg-border);padding:20px}
.tg-stats .tg-builder__title{font-family:var(--tg-display);font-weight:900;font-size:19px;
  color:var(--tg-text);letter-spacing:-.01em;margin:0 0 3px}
.tg-builder__sub{font-size:13px;color:var(--tg-muted);margin:0 0 14px}
.tg-btable{width:100%;border-collapse:collapse;background:var(--tg-panel);
  border:1px solid var(--tg-border);border-radius:10px;overflow:hidden;font-size:14px}
.tg-btable th{text-align:left;font-family:var(--tg-body);font-size:10px;letter-spacing:.11em;
  text-transform:uppercase;font-weight:800;color:var(--tg-faint);padding:11px 14px;
  border-bottom:1px solid var(--tg-border);white-space:nowrap}
.tg-btable td{padding:13px 14px;border-bottom:1px dashed var(--tg-border);vertical-align:top}
.tg-btable tr:last-child td{border-bottom:0}
.tg-btable__sel{font-family:var(--tg-display);font-weight:800;font-size:14.5px;
  color:var(--tg-text);width:38%}
.tg-btable__n{font-family:var(--tg-mono);font-size:11px;color:#0A0A0A;background:var(--tg-orange);
  width:19px;height:19px;border-radius:50%;display:inline-flex;align-items:center;
  justify-content:center;font-weight:500;margin-right:9px;vertical-align:1px}
.tg-btable__why{font-size:13px;line-height:1.5;color:#ECECEC}
.tg-btable__conf{width:96px;white-space:nowrap}
.tg-btable__conf b{font-family:var(--tg-mono);font-size:15px;color:var(--tg-orange);font-weight:500}
.tg-btable__conf b>span{font-size:11px;color:var(--tg-faint)}
.tg-meter{display:block;height:5px;border-radius:3px;background:var(--tg-border);
  margin-top:5px;overflow:hidden}
.tg-meter>span{display:block;height:100%;background:var(--tg-orange);border-radius:3px}
/* inline-block + margin rather than flex gap: the spacing must not depend on
   flex layout surviving whatever the theme does to spans. */
.tg-stats /* price line under a pointer, or inline in the builder table */
.tg-pl{display:inline-flex;align-items:center;gap:6px;margin-top:7px;font-family:var(--tg-body);
  font-size:12.5px;font-weight:700;color:var(--tg-muted);text-decoration:none}
.tg-pl>b{font-family:var(--tg-mono);font-size:14px;font-weight:500;color:var(--tg-orange)}
.tg-pl>i{font-style:normal;font-size:9px;font-weight:800;letter-spacing:.1em;color:var(--tg-faint);
  border:1px solid var(--tg-border);border-radius:3px;padding:1px 4px}
.tg-pl--link{color:var(--tg-cyan)}
.tg-pl--link:hover{color:var(--tg-cyan);text-decoration:underline;text-underline-offset:3px}
.tg-pl--link:focus-visible{outline:2px solid var(--tg-cyan);outline-offset:3px;border-radius:3px}
.tg-btable__sel .tg-pl{margin-top:5px}
.tg-stats .tg-conf{display:inline-block;font-family:var(--tg-mono);font-size:11px;
  font-weight:500;color:var(--tg-cyan);border:1px solid var(--tg-border);
  border-radius:4px;padding:2px 8px;margin-left:8px;vertical-align:1px;white-space:nowrap}
/* The word matters: 9/10 on a betting page reads as a fractional price. */
.tg-stats .tg-conf>i{display:inline-block;margin-right:6px;font-family:var(--tg-body);
  font-style:normal;font-size:9px;font-weight:800;letter-spacing:.1em;
  text-transform:uppercase;color:var(--tg-faint)}
.tg-offer{margin-top:12px;padding:16px;background:var(--tg-panel);
  border:1px solid var(--tg-orange);border-radius:10px;text-align:center}
.tg-offer__head{font-family:var(--tg-display);font-weight:800;font-size:16px;
  color:var(--tg-text);line-height:1.35;margin-bottom:13px;letter-spacing:-.005em}
.tg-offer__cta{display:inline-block;background:var(--tg-orange);color:#0A0A0A;
  font-family:var(--tg-display);font-weight:900;font-size:15px;letter-spacing:.05em;
  padding:13px 34px;border-radius:8px;text-decoration:none;
  transition:filter .16s ease,transform .16s ease}
.tg-offer__cta:hover{filter:brightness(1.1);transform:translateY(-1px);color:#0A0A0A;text-decoration:none}
.tg-offer__cta:focus-visible{outline:2px solid var(--tg-cyan);outline-offset:3px}
.tg-offer__terms{font-size:10.5px;line-height:1.5;color:var(--tg-faint);margin:13px 0 0;text-align:left}
.tg-offer__rg{font-size:10.5px;line-height:1.5;color:var(--tg-faint);margin:6px 0 0;
  text-align:left;font-weight:700}

/* ---------- hub aggregator table ---------- */
.tg-hub{border:1px solid var(--tg-border);border-radius:14px;padding:16px;background:var(--tg-ground)}
.tg-hubtable__when{font-family:var(--tg-mono);font-size:12.5px;color:var(--tg-muted);white-space:nowrap}
.tg-hubtable__ref{font-family:var(--tg-mono);font-size:13px;color:var(--tg-text);white-space:nowrap}
.tg-hubtable__ref span{font-family:var(--tg-body);font-size:10px;color:var(--tg-faint);
  text-transform:uppercase;letter-spacing:.1em}
.tg-hub .tg-btable__sel a{color:var(--tg-cyan);text-decoration:none}
.tg-hub .tg-btable__sel a:hover{text-decoration:underline}
/* Scoped to beat the generic `.tg-hub .tg-btable__sel a` rule above, which
   otherwise wins on specificity and leaves cyan text on a cyan background. */
.tg-hub .tg-btable__sel a.tg-hubcta{display:inline-flex;align-items:center;gap:5px;
  margin-top:7px;font-family:var(--tg-body);font-size:11px;font-weight:800;
  letter-spacing:.06em;text-transform:uppercase;color:var(--tg-cyan);
  text-decoration:none;border:1px solid var(--tg-border);border-radius:6px;
  padding:5px 10px;transition:background .16s ease,color .16s ease,border-color .16s ease}
.tg-hub .tg-btable__sel a.tg-hubcta:hover,
.tg-hub .tg-btable__sel a.tg-hubcta:focus{background:var(--tg-cyan);color:#0A0A0A;
  border-color:var(--tg-cyan);text-decoration:none}
.tg-hub .tg-btable__sel a.tg-hubcta:hover span,
.tg-hub .tg-btable__sel a.tg-hubcta:focus span{color:#0A0A0A}
.tg-hub .tg-btable__sel a.tg-hubcta:focus-visible{outline:2px solid var(--tg-cyan);outline-offset:2px}
.tg-hub .tg-btable__sel a.tg-hubcta span{font-size:12px;line-height:1}
.tg-hublegs{list-style:none;margin:0;padding:0;counter-reset:leg}
.tg-hublegs li{position:relative;padding-left:19px;font-size:13px;line-height:1.45;
  color:#ECECEC;margin:0 0 5px}
.tg-hublegs li:last-child{margin-bottom:0}
.tg-hublegs li:before{counter-increment:leg;content:counter(leg);position:absolute;left:0;top:1px;
  font-family:var(--tg-mono);font-size:10px;color:var(--tg-orange)}
.tg-stats .tg-hub .tg-conf{margin-left:6px;font-size:10px;padding:1px 6px}
.tg-hub__note{font-size:11px;line-height:1.55;color:var(--tg-faint);margin:11px 0 0}

/* ---------- pointers list (hub) ---------- */
.tg-plist{padding:0;border:0;background:transparent}
.tg-plist__match{background:var(--tg-panel);border:1px solid var(--tg-border);
  border-radius:12px;padding:18px 20px;margin-bottom:16px}
.tg-plist__match:last-of-type{margin-bottom:0}
.tg-stats .tg-plist__fixture{font-family:var(--tg-display);font-weight:900;font-size:19px;
  line-height:1.25;margin:0 0 4px;letter-spacing:-.01em}
.tg-stats .tg-plist__fixture a{color:var(--tg-cyan);text-decoration:none}
.tg-stats .tg-plist__fixture a:hover{text-decoration:underline}
.tg-plist__meta{font-family:var(--tg-mono);font-size:12px;color:var(--tg-muted);margin:0 0 14px}
.tg-plist .tg-pointers__group{margin-top:16px}
.tg-plist .tg-pointers__group:first-of-type{margin-top:0}
.tg-plist .tg-hubcta{margin-top:16px;display:inline-flex;align-items:center;gap:5px;
  font-family:var(--tg-body);font-size:11px;font-weight:800;letter-spacing:.06em;
  text-transform:uppercase;color:var(--tg-cyan);text-decoration:none;
  border:1px solid var(--tg-border);border-radius:6px;padding:7px 12px;
  transition:background .16s ease,color .16s ease,border-color .16s ease}
.tg-plist .tg-hubcta:hover{background:var(--tg-cyan);color:#0A0A0A;border-color:var(--tg-cyan)}
.tg-plist .tg-hubcta:hover span{color:#0A0A0A}
@media (max-width:620px){
  .tg-plist__match{padding:16px 14px;margin-bottom:14px}
  .tg-stats .tg-plist__fixture{font-size:17px}
  .tg-plist .tg-hubcta{width:100%;justify-content:center;padding:12px 14px;font-size:12px}
}

/* ---------- reasoning disclosure ---------- */
.tg-why{margin-top:6px}
.tg-why>summary{display:inline-flex;align-items:center;gap:5px;cursor:pointer;
  list-style:none;font-family:var(--tg-body);font-size:11.5px;font-weight:800;
  letter-spacing:.05em;text-transform:uppercase;color:var(--tg-cyan);
  padding:3px 0;transition:opacity .16s ease}
.tg-why>summary::-webkit-details-marker{display:none}
.tg-why>summary::marker{content:""}
.tg-why>summary:after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;transform:rotate(45deg) translate(-1px,-1px);
  transition:transform .18s ease}
.tg-why[open]>summary:after{transform:rotate(-135deg) translate(-2px,-2px)}
.tg-why>summary:hover{opacity:.75}
.tg-why>summary:focus-visible{outline:2px solid var(--tg-cyan);outline-offset:3px;border-radius:3px}
.tg-why .tg-pointer__why{margin-top:6px;padding-left:11px;
  border-left:2px solid var(--tg-border)}

/* ---------- today panel (homepage) ---------- */
.tg-today{padding:18px 20px}
.tg-stats .tg-today__title{font-family:var(--tg-display);font-weight:900;font-size:19px;
  color:var(--tg-text);letter-spacing:-.01em;margin:0 0 3px}
.tg-today__sub{font-size:12.5px;color:var(--tg-muted);margin:0 0 12px}
.tg-today__list{list-style:none;margin:12px 0 0;padding:0;border-top:1px solid var(--tg-border)}
/* second and later day sections need clear air above the heading */
.tg-stats .tg-today__list + .tg-today__title{margin-top:26px;padding-top:20px;border-top:1px solid var(--tg-border)}
.tg-today__row{border-bottom:1px solid var(--tg-border)}
.tg-today__row>a{display:flex;align-items:center;gap:13px;padding:12px 4px;
  text-decoration:none;color:inherit;transition:background .16s ease}
.tg-today__row>a:hover{background:rgba(5,237,249,.05);text-decoration:none}
.tg-today__ko{font-family:var(--tg-mono);font-size:12.5px;color:var(--tg-faint);
  flex:none;min-width:44px}
.tg-today__fix{font-family:var(--tg-display);font-weight:800;font-size:14.5px;
  color:var(--tg-cyan);flex:none;max-width:44%}
.tg-today__pick{font-size:13.5px;color:#ECECEC;flex:1;min-width:0}
.tg-today__go{display:inline-flex;align-items:center;gap:6px;color:var(--tg-orange);
  font-family:var(--tg-body);font-size:10.5px;font-weight:800;letter-spacing:.09em;
  text-transform:uppercase;white-space:nowrap;flex:none}
.tg-today__go b{font-size:14px;font-weight:400;line-height:1}
.tg-today__row>a:hover .tg-today__go{text-decoration:underline;text-underline-offset:3px}
.tg-today__more{display:inline-flex;align-items:center;gap:6px;margin-top:14px;
  font-family:var(--tg-body);font-size:11.5px;font-weight:800;letter-spacing:.06em;
  text-transform:uppercase;color:var(--tg-cyan);text-decoration:none;
  border:1px solid var(--tg-border);border-radius:7px;padding:9px 14px;
  transition:background .16s ease,color .16s ease,border-color .16s ease}
.tg-today__more:hover{background:var(--tg-cyan);color:#0A0A0A;border-color:var(--tg-cyan);text-decoration:none}
.tg-today__more:hover span{color:#0A0A0A}
@media (max-width:620px){
  .tg-today{padding:16px 14px}
  .tg-today__row>a{flex-wrap:wrap;gap:6px 10px;padding:13px 2px}
  .tg-today__ko{order:1;min-width:0}
  .tg-today__fix{order:2;max-width:none;flex:1;font-size:15px}
  .tg-today__go{order:3;margin-left:auto;font-size:10px}
  .tg-today__pick{order:4;flex:0 0 100%;font-size:13.5px}
  .tg-today__more{width:100%;justify-content:center;padding:12px 14px}
}

/* ---------- card tips page ---------- */
.tg-refbar{display:flex;align-items:baseline;gap:9px;margin:0 0 14px;padding:9px 13px;
  background:var(--tg-ground);border:1px solid var(--tg-border);
  border-left:3px solid var(--tg-orange);border-radius:0 8px 8px 0}
.tg-refbar>span{font-size:12.5px;color:var(--tg-muted);font-weight:700}
.tg-refbar>b{font-family:var(--tg-mono);font-size:17px;color:var(--tg-orange);font-weight:500}
.tg-refbar__unit{font-size:10px!important;letter-spacing:.11em;text-transform:uppercase;
  color:var(--tg-faint)!important;font-weight:800!important}
.tg-mtable{margin-top:4px;font-size:13px}
.tg-mtable th{font-size:9.5px}
.tg-mtable td{padding:10px 12px;font-size:13px;color:#ECECEC}
.tg-mtable__ch{font-family:var(--tg-body);font-weight:800;font-size:10px;letter-spacing:.11em;
  text-transform:uppercase;color:var(--tg-cyan);white-space:nowrap;width:16%}
@media (max-width:620px){
  .tg-refbar{flex-wrap:wrap;gap:6px 9px}
  .tg-cardtips .tg-mtable .tg-mtable__ch{width:100%;margin-bottom:2px}
}

/* ---------- build price ---------- */
.tg-odds{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 11px;margin-top:12px;
  padding:13px 16px;background:var(--tg-panel);border:1px solid var(--tg-orange);border-radius:10px}
.tg-odds>span:first-child{font-family:var(--tg-body);font-size:10px;font-weight:800;
  letter-spacing:.13em;text-transform:uppercase;color:var(--tg-muted)}
.tg-odds>b{font-family:var(--tg-mono);font-size:21px;color:var(--tg-orange);font-weight:500;line-height:1}
.tg-odds__at{font-size:13px;color:var(--tg-text);font-weight:700}
.tg-odds__note{flex:0 0 100%;font-size:10.5px;color:var(--tg-faint);line-height:1.4}

/* ---------- last six sparkline ---------- */
.tg-th--seq{font-family:var(--tg-body);font-size:9.5px;font-weight:800;letter-spacing:.1em;
  text-transform:uppercase;color:var(--tg-muted);padding:9px 10px;white-space:nowrap}
.tg-td--seq{padding:6px 10px;text-align:center;white-space:nowrap}
.tg-seq{display:inline-flex;align-items:flex-end;gap:7px}
.tg-seq__bars{display:inline-flex;align-items:flex-end;gap:2px;height:16px}
.tg-seq__bars i{display:block;width:4px;border-radius:1px;background:var(--tg-cyan);opacity:.75}
.tg-row--top .tg-seq__bars i{background:var(--tg-orange);opacity:.9}
.tg-seq__hit{font-family:var(--tg-mono);font-size:11px;font-weight:500;color:var(--tg-muted);
  line-height:16px}
.tg-seq__hit--all{color:var(--tg-orange)}
.tg-seq__hit--low{color:var(--tg-faint)}
.tg-seq--none{color:var(--tg-faint);font-size:11px}

/* ---------- best bets, singles ---------- */
.tg-singles{margin-top:26px;padding:20px;background:var(--tg-panel);border:1px solid var(--tg-border);border-radius:14px}
.tg-singles__title{font-family:var(--tg-display);font-weight:900;font-size:19px;margin:0 0 4px;color:var(--tg-text)}
.tg-singles__sub{margin:0 0 14px;font-size:12.5px;color:var(--tg-muted)}
.tg-singles__note{margin:12px 0 0;font-size:10.5px;color:var(--tg-faint);line-height:1.45}
.tg-stable{width:100%;border-collapse:collapse}
.tg-stable thead th{font-family:var(--tg-body);font-size:9.5px;font-weight:800;letter-spacing:.1em;
  text-transform:uppercase;color:var(--tg-muted);text-align:left;padding:0 10px 8px;
  border-bottom:1px solid var(--tg-border)}
.tg-stable td{padding:11px 10px;border-bottom:1px solid var(--tg-border);vertical-align:middle;font-size:13.5px}
.tg-stable tr:last-child td{border-bottom:0}
.tg-stable__n{width:26px;font-family:var(--tg-mono);font-size:12px;color:var(--tg-faint)}
.tg-stable__sel{font-weight:800;color:var(--tg-text);line-height:1.3}
.tg-stable__why{color:var(--tg-muted);font-size:12.5px;line-height:1.45}
.tg-stable__odds{width:112px;text-align:right;white-space:nowrap}
.tg-odds-btn{display:inline-flex;flex-direction:column;align-items:center;gap:1px;
  min-width:74px;padding:6px 10px;border-radius:8px;background:var(--tg-orange);color:#0A0A0A;
  font-family:var(--tg-mono);font-size:14px;font-weight:500;text-decoration:none;line-height:1.1}
.tg-odds-btn span{font-family:var(--tg-body);font-size:8.5px;font-weight:800;letter-spacing:.08em;
  text-transform:uppercase;opacity:.72}
.tg-odds-btn:hover{filter:brightness(1.08)}
.tg-odds-btn:focus-visible{outline:2px solid var(--tg-cyan);outline-offset:2px}
.tg-odds-btn--flat{background:transparent;color:var(--tg-orange);border:1px solid var(--tg-orange)}
.tg-odds-btn--get{font-family:var(--tg-body);font-size:11px;font-weight:800;letter-spacing:.04em;
  text-transform:uppercase;padding:7px 10px}
.tg-odds-btn--get span{font-size:8px;opacity:.7}
.tg-odds-btn--flat span{color:var(--tg-muted);opacity:1}
.tg-odds-tbc{display:inline-block;padding:6px 10px;border:1px dashed var(--tg-border);border-radius:8px;
  font-family:var(--tg-body);font-size:10px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--tg-faint)}

/* ---------- team comparison ---------- */
.tg-tcompare{padding:0}
.tg-tpanel{display:none;padding:4px 22px 18px}
.tg-tpanel.is-on{display:block}
.tg-tpanel__h{font-family:var(--tg-display);font-weight:900;font-size:15px;line-height:1.25;
  margin:14px 0 2px;color:var(--tg-text)}
.tg-tpanel__h .tg-acc{font:inherit;color:inherit;padding:0;background:none;border:0}
@media(max-width:560px){.tg-tpanel__h{font-size:13.5px}}
.tg-tcompare__names{display:grid;grid-template-columns:1fr auto 1fr;align-items:baseline;gap:12px;
  padding:16px 0 12px;border-bottom:1px solid var(--tg-border);margin-bottom:2px}
.tg-tcompare__names>span{font-family:var(--tg-display);font-weight:900;font-size:15px;
  color:var(--tg-text);line-height:1.2;min-width:0;overflow-wrap:anywhere}
.tg-tcompare__names>span:last-child{text-align:right}
.tg-tcompare__vs{font-family:var(--tg-body);font-size:10px;font-weight:800;letter-spacing:.14em;
  text-transform:uppercase;color:var(--tg-faint)}
.tg-trow{display:grid;grid-template-columns:60px minmax(0,1fr) 60px;align-items:center;
  gap:14px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.05)}
.tg-trow:last-child{border-bottom:0}
.tg-trow__v{font-family:var(--tg-mono);font-size:13.5px;font-weight:500;color:var(--tg-muted);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* Form rows carry six pips a side, which will not fit a 60px column. Give them
   auto-width columns and let the label take what is left. */
.tg-trow--form{grid-template-columns:minmax(0,auto) minmax(50px,1fr) minmax(0,auto);gap:8px}
.tg-trow--form .tg-trow__v{overflow:visible;font-size:inherit;min-width:0}
.tg-pips{flex-wrap:wrap}
.tg-trow__v--a{text-align:right}
.tg-trow__v.is-lead{color:var(--tg-orange)}
.tg-trow__mid{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0;width:100%}
.tg-trow__label{font-family:var(--tg-body);font-size:11.5px;font-weight:700;color:var(--tg-muted);
  text-align:center;line-height:1.3}
.tg-tbar{display:flex;width:100%;max-width:240px;height:4px;border-radius:2px;overflow:hidden;
  background:var(--tg-border)}
.tg-tbar__h{background:var(--tg-orange);opacity:.85}
.tg-tbar__a{background:var(--tg-cyan);opacity:.85}
.tg-pips{display:inline-flex;gap:3px}
.tg-pip{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;
  border-radius:4px;font-family:var(--tg-body);font-size:9px;font-weight:800;font-style:normal;color:#0A0A0A}
.tg-pip--w{background:#39D98A}
.tg-pip--d{background:var(--tg-faint)}
.tg-pip--l{background:#FF6B6B}
@media(max-width:620px){.tg-pip--drop{display:none}}
@media(max-width:620px){
  .tg-tpanel{padding:4px 15px 16px}
  /* Stack on narrow screens: the label sits above its own row so both values
     get the full width. Six pips and "12 of 20" will not fit a 46px column,
     and shaving the font further just makes it unreadable. */
  .tg-trow,.tg-trow--form{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    grid-template-areas:"label label" "home away";
    gap:4px 10px;padding:10px 0}
  .tg-trow__mid{grid-area:label;align-items:center;width:100%}
  .tg-trow__v--h{grid-area:home;text-align:left}
  .tg-trow__v--a{grid-area:away;text-align:right}
  .tg-trow__v{overflow:visible;white-space:normal;font-size:13px}
  .tg-trow__label{font-size:11px}
  .tg-tbar{max-width:100%;height:3px}
  .tg-pips{flex-wrap:wrap;gap:3px}
  .tg-pip{width:15px;height:15px;font-size:8.5px}
  .tg-trow__v--a .tg-pips{justify-content:flex-end}
  .tg-tcompare__names>span{font-size:13px}
}
@media(max-width:380px){
  .tg-tpanel{padding:4px 12px 14px}
  .tg-trow__v{font-size:12px}
  .tg-pip{width:13px;height:13px;font-size:7.5px}
}

/* ---------- accordion, mobile only ---------- */
.tg-acc{display:none}
@media(max-width:620px){
  /* Tabs off, every section becomes a labelled row. Nothing is hidden from
     a crawler and nothing needs a sideways swipe to find. */
  .tg-tabs--team{display:none}
  .tg-tpanel{display:block!important;padding:0}
  .tg-tpanel__h{margin:0;font-size:13px}
  .tg-tpanel__h .tg-acc{display:flex;align-items:center;justify-content:space-between;
    gap:10px;width:100%;padding:14px 15px;border-top:1px solid var(--tg-border);
    font-family:var(--tg-body);font-size:13px;font-weight:800;letter-spacing:.02em;
    color:var(--tg-text);text-align:left;cursor:pointer}
  .tg-tpanel:first-of-type .tg-tpanel__h .tg-acc{border-top:0}
  .tg-acc__i{width:9px;height:9px;flex:none;border-right:2px solid var(--tg-muted);
    border-bottom:2px solid var(--tg-muted);transform:rotate(45deg) translate(-2px,-2px);
    transition:transform .18s ease}
  .tg-tpanel__h .tg-acc.is-open{color:var(--tg-cyan)}
  .tg-acc.is-open .tg-acc__i{border-color:var(--tg-cyan);
    transform:rotate(-135deg) translate(-3px,-3px)}
  .tg-acc__body{display:none;padding:0 15px 14px}
  .tg-tpanel__h:has(.tg-acc.is-open) + .tg-acc__body{display:block}

}

/* ---------- team tabs and hit rates ---------- */
.tg-tabs--team{padding:0 22px;overflow-x:auto;-webkit-overflow-scrolling:touch;
  scrollbar-width:none;flex-wrap:nowrap}
.tg-tabs--team::-webkit-scrollbar{display:none}
.tg-tabs--team>button{flex:none;white-space:nowrap}
@media(max-width:620px){.tg-tabs--team{padding:0 15px}}
@media(max-width:380px){.tg-tabs--team{padding:0 12px}}
.tg-tpanel{display:none}
.tg-tpanel.is-on{display:block}
.tg-tpanel.is-on{display:block}
.tg-hits{margin-bottom:4px}
.tg-hits__note{margin:14px 0 14px;font-size:11.5px;color:var(--tg-muted);line-height:1.5}
.tg-hits{width:100%;border-collapse:collapse;table-layout:fixed}
.tg-hits thead th{font-family:var(--tg-body);font-size:9.5px;font-weight:800;letter-spacing:.1em;
  text-transform:uppercase;color:var(--tg-muted);text-align:left;padding:0 8px 8px;
  border-bottom:1px solid var(--tg-border)}
.tg-hits td{padding:10px 8px;border-bottom:1px solid var(--tg-border);vertical-align:middle}
.tg-hits tr:last-child td{border-bottom:0}
.tg-hits__cat{display:block;font-family:var(--tg-body);font-size:9px;font-weight:800;
  letter-spacing:.09em;text-transform:uppercase;color:var(--tg-faint);margin-bottom:2px}
.tg-hits__bet{min-width:0}
.tg-hits__bet b{display:block;font-size:13.5px;font-weight:800;color:var(--tg-text);line-height:1.25;overflow-wrap:anywhere}
.tg-hits__rate{width:84px;text-align:center}
.tg-hitpill{display:inline-block;min-width:46px;padding:4px 8px;border-radius:999px;
  font-family:var(--tg-mono);font-size:12px;font-weight:500;
  background:var(--tg-panel);border:1px solid var(--tg-border);color:var(--tg-muted)}
.tg-hitpill.is-max{background:var(--tg-orange);border-color:var(--tg-orange);color:#0A0A0A}
.tg-hitpill.is-high{border-color:var(--tg-cyan);color:var(--tg-cyan)}
.tg-hitpill.is-low{color:var(--tg-faint)}
.tg-hits__of{display:block;margin-top:3px;font-size:9.5px;color:var(--tg-faint);letter-spacing:.04em}
.tg-hits__odds{width:92px;text-align:right;white-space:nowrap}
@media(max-width:520px){
  .tg-hits__rate{width:70px}
  .tg-hits__odds{width:78px}
  .tg-hits__bet b{font-size:12.5px}
}

/* ---------- upcoming fixtures list ---------- */
.tg-up{padding:6px 0 8px}
.tg-up__head{font-family:var(--tg-display);font-weight:900;font-size:20px;margin:0 0 10px;color:var(--tg-text)}
.tg-up__day{font-family:var(--tg-body);font-size:9.5px;font-weight:800;letter-spacing:.13em;
  text-transform:uppercase;color:var(--tg-muted);margin:14px 20px 6px;padding-top:10px;
  border-top:1px solid var(--tg-border)}
.tg-up__day:first-child{margin-top:6px;padding-top:0;border-top:0}
.tg-up__row{display:grid;grid-template-columns:50px minmax(0,1fr) auto;align-items:center;gap:12px;
  padding:11px 20px;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.05);
  transition:background .12s ease}
.tg-up__row:last-child{border-bottom:0}
.tg-up__row:hover{background:var(--tg-panel)}
.tg-up__row:focus-visible{outline:2px solid var(--tg-cyan);outline-offset:-2px}
.tg-up__time{font-family:var(--tg-mono);font-size:13px;color:var(--tg-muted)}
.tg-up__mid{min-width:0}
.tg-up__fix{display:block;font-family:var(--tg-body);font-size:14px;font-weight:800;
  color:var(--tg-text);line-height:1.25;overflow-wrap:anywhere}
.tg-up__comp{display:block;margin-top:2px;font-size:10px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--tg-faint)}
.tg-up__badge{flex:none;padding:5px 10px;border-radius:999px;background:var(--tg-orange);
  color:#0A0A0A;font-family:var(--tg-body);font-size:10.5px;font-weight:800;
  letter-spacing:.04em;white-space:nowrap}
.tg-up__badge--stats{background:transparent;color:var(--tg-cyan);border:1px solid var(--tg-cyan)}
.tg-up__empty{margin:0;font-size:13px;color:var(--tg-muted)}
@media(max-width:520px){
  .tg-up__row{grid-template-columns:44px minmax(0,1fr) auto;gap:9px;padding:10px 14px}
  .tg-up__day{margin:12px 14px 6px}
  .tg-up__fix{font-size:13px}
  .tg-up__time{font-size:12px}
  .tg-up__badge{font-size:9.5px;padding:4px 8px}
}

/* ---------- footer ---------- */
.tg-stats__foot{padding:13px 20px;border-top:1px solid var(--tg-border);background:var(--tg-panel);font-size:11px;color:var(--tg-faint);line-height:1.55}
.tg-stats__foot a{color:var(--tg-muted);text-decoration:underline;text-underline-offset:2px}
.tg-stats__foot a:hover{color:var(--tg-cyan)}
.tg-legend{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:7px}
.tg-legend span{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:var(--tg-muted)}
.tg-legend i{width:4px;height:12px;border-radius:2px;display:inline-block}

@media (max-width:620px){
  .tg-pointers,.tg-builder{padding-left:14px;padding-right:14px}
  .tg-btable th,.tg-btable td{padding:10px 9px}
  .tg-btable__sel{width:auto;font-size:13.5px}
  .tg-btable__why{font-size:12.5px}
  .tg-btable__conf{width:64px}
  .tg-stats .tg-stats__fixture{font-size:19px}
  .tg-stats .tg-stats__fixture{font-size:19px}
  .tg-stats__head,.tg-controls,.tg-insight,.tg-stats__foot{padding-left:14px;padding-right:14px}
  .tg-table th,.tg-table td{padding:10px 8px}
  .tg-table .tg-hide-sm{display:none}
  .tg-num{width:22%}
  .tg-player{min-width:0;font-size:13px}
}

/* ---------- mobile: stack the builder/hub tables into cards ---------- */
@media (max-width:620px){
  /* The table frame gives way to one card per fixture, with real space
     between them rather than a hairline border. */
  .tg-stats .tg-btable{display:block;background:transparent;border:0;border-radius:0}
  .tg-stats .tg-btable thead{display:none}
  .tg-stats .tg-btable tbody{display:block}
  .tg-stats .tg-btable tr{display:flex;flex-wrap:wrap;align-items:baseline;
    background:var(--tg-panel);border:1px solid var(--tg-border);border-radius:11px;
    padding:17px 16px;margin-bottom:14px}
  .tg-stats .tg-btable tr:last-child{margin-bottom:0;border-bottom:1px solid var(--tg-border)}
  .tg-stats .tg-btable td{display:block;border:0;padding:0;width:100%}
  .tg-stats .tg-btable td:empty{display:none}

  /* display:contents lets the fixture name and the CTA inside this cell be
     ordered independently, so the button can drop to the foot of the card. */
  .tg-hub .tg-btable__sel{display:contents}
  .tg-hub .tg-btable__sel>a:not(.tg-hubcta){order:1;width:100%;display:block;
    font-size:17px;line-height:1.3;margin-bottom:13px}
  .tg-hub .tg-btable__sel a.tg-hubcta{order:6;width:100%;justify-content:center;
    margin-top:16px;padding:12px 14px;font-size:12px;letter-spacing:.07em}

  .tg-stats .tg-btable .tg-btable__sel{order:1;font-size:15.5px;margin-bottom:11px}
  .tg-stats .tg-btable .tg-hubtable__when{order:2;margin-bottom:7px;font-size:13.5px}
  .tg-stats .tg-btable .tg-hubtable__ref{order:3;margin-bottom:15px;font-size:13.5px}
  .tg-stats .tg-btable .tg-btable__why{order:4}
  .tg-stats .tg-btable .tg-btable__conf{order:5;margin-top:13px}
  .tg-stats .tg-btable .tg-btable__conf .tg-meter{max-width:150px}

  .tg-stats .tg-btable td[data-label]:before{content:attr(data-label);display:block;
    font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;
    color:var(--tg-faint);margin-bottom:7px}
  .tg-stats .tg-btable .tg-hubtable__when:before{display:inline;margin-right:7px;margin-bottom:0}
  .tg-stats .tg-btable .tg-hubtable__ref:before{content:"Ref cards";display:inline;
    font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;
    color:var(--tg-faint);margin-right:7px}

  .tg-stats .tg-hublegs li{font-size:14.5px;line-height:1.45;padding-left:22px;margin-bottom:10px}
  .tg-stats .tg-hublegs li:before{font-size:11px;top:2px}
  .tg-stats .tg-hub .tg-conf{font-size:10.5px;padding:2px 7px;margin-left:7px}
  .tg-stats .tg-hub .tg-conf>i{margin-right:5px;font-size:8.5px}
  .tg-stats .tg-btable__why{font-size:14px;line-height:1.5}
  .tg-hub{padding:14px}
  .tg-hub__note{font-size:11.5px;margin-top:14px}
}
@media (max-width:400px){
  .tg-table .tg-hide-xs{display:none}
  .tg-num{width:30%}
}
@media (prefers-reduced-motion:reduce){
  .tg-stats *{transition:none!important;animation:none!important}
}
/* ---------- market page listing ---------- */
.tg-mk{padding:6px 0 8px}
.tg-mk__head{font-family:var(--tg-display);font-weight:900;font-size:20px;margin:0 0 10px;color:var(--tg-text)}
.tg-mk__row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;
  padding:13px 20px;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.05);
  transition:background .12s ease}
.tg-mk__row:last-child{border-bottom:0}
.tg-mk__row:hover{background:var(--tg-panel)}
.tg-mk__row:focus-visible{outline:2px solid var(--tg-cyan);outline-offset:-2px}
.tg-mk__mid{min-width:0}
.tg-mk__sel{display:block;font-family:var(--tg-body);font-size:14.5px;font-weight:800;
  color:var(--tg-text);line-height:1.25;overflow-wrap:anywhere}
.tg-mk__fix{display:block;margin-top:3px;font-size:11px;font-weight:600;color:var(--tg-faint);
  letter-spacing:.02em}
.tg-mk__conf,.tg-mk__rate{flex:none;display:inline-flex;flex-direction:column;align-items:center;
  gap:1px;min-width:58px;padding:6px 10px;border-radius:8px;background:var(--tg-orange);
  color:#0A0A0A;font-family:var(--tg-mono);font-size:15px;font-weight:500;line-height:1.1;
  white-space:nowrap}
.tg-mk__rate{background:transparent;color:var(--tg-cyan);border:1px solid var(--tg-cyan)}
.tg-mk__conf i,.tg-mk__rate i{font-family:var(--tg-body);font-size:8.5px;font-weight:800;
  font-style:normal;letter-spacing:.06em;text-transform:uppercase;opacity:.75}
.tg-mk__empty{margin:0;font-size:13px;color:var(--tg-muted)}
@media(max-width:520px){
  .tg-mk__row{padding:11px 14px;gap:10px}
  .tg-mk__sel{font-size:13px}
  .tg-mk__conf,.tg-mk__rate{min-width:50px;font-size:13.5px;padding:5px 8px}
}

/* Theme link colours were bleeding into the market rows. */
.tg-stats .tg-mk__row,
.tg-stats .tg-mk__row:link,
.tg-stats .tg-mk__row:visited{color:inherit;text-decoration:none;box-shadow:none}
.tg-stats .tg-mk__row .tg-mk__sel{color:var(--tg-text)}
.tg-stats .tg-mk__row .tg-mk__fix{color:var(--tg-faint)}
.tg-stats .tg-mk__row:hover .tg-mk__sel{color:var(--tg-cyan)}
.tg-mk__rate--model{border-style:dashed}

/* Accumulator listing - no badge, so the row is a single column. */
.tg-mk__row--plain{grid-template-columns:minmax(0,1fr)}
.tg-mk__row--plain .tg-mk__sel{font-size:15px}

/* ---------- hub grid, links to the market pages ---------- */
/* Auto-fit: as many columns as fit at 250px minimum, so a full-width page
   gets four and a narrow one gets fewer, with no breakpoint guessing.
   cols="2" etc pins it where you want a fixed count. */
.tg-hgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px;
  padding:2px 0 8px;background:none}
.tg-hgrid--one{grid-template-columns:1fr}
.tg-hgrid--two{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.tg-hgrid--three{grid-template-columns:repeat(auto-fit,minmax(270px,1fr))}
.tg-hgrid--four{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.tg-hgrid__head{font-family:var(--tg-display);font-weight:900;font-size:20px;margin:0 0 12px;color:var(--tg-text)}
.tg-hgrid__card{display:flex;align-items:center;gap:14px;padding:14px 16px;text-decoration:none;
  background:var(--tg-ground);border:1px solid var(--tg-border);border-radius:12px;
  transition:border-color .14s ease,background .14s ease}
.tg-hgrid__card:hover{border-color:var(--tg-cyan);background:var(--tg-panel)}
.tg-hgrid__card:focus-visible{outline:2px solid var(--tg-cyan);outline-offset:2px}
.tg-hgrid__count{flex:none;display:grid;place-items:center;min-width:54px;height:44px;border-radius:9px;
  background:var(--tg-orange);color:#0A0A0A;font-family:var(--tg-mono);font-size:19px;font-weight:500}
.tg-hgrid__count.is-empty{background:transparent;color:var(--tg-faint);border:1px solid var(--tg-border)}
.tg-hgrid__mid{min-width:0}
.tg-hgrid__label{display:block;font-family:var(--tg-body);font-size:9.5px;font-weight:800;
  letter-spacing:.1em;text-transform:uppercase;color:var(--tg-faint)}
.tg-hgrid__title{display:block;margin-top:2px;font-family:var(--tg-body);font-size:13.5px;font-weight:800;
  color:var(--tg-text);line-height:1.25;overflow-wrap:anywhere}
.tg-hgrid__card:hover .tg-hgrid__title{color:var(--tg-cyan)}
@media(max-width:560px){
  .tg-hgrid,.tg-hgrid--two,.tg-hgrid--three,.tg-hgrid--four{grid-template-columns:1fr;gap:8px}
  .tg-hgrid__card{padding:12px 14px;gap:11px}
  .tg-hgrid__count{min-width:46px;height:38px;font-size:17px}
  .tg-hgrid__title{font-size:13px}
}

/* The theme styles links as white cards with pale text and wins on
   specificity, so the hub cards need their values forcing inside the
   wrapper. Same treatment the market rows needed. */
.tg-stats.tg-hgrid .tg-hgrid__card,
.tg-stats.tg-hgrid .tg-hgrid__card:link,
.tg-stats.tg-hgrid .tg-hgrid__card:visited{
  background:var(--tg-ground)!important;border:1px solid var(--tg-border)!important;
  color:var(--tg-text)!important;text-decoration:none!important;box-shadow:none!important}
.tg-stats.tg-hgrid .tg-hgrid__card:hover{
  background:var(--tg-panel)!important;border-color:var(--tg-cyan)!important}
.tg-stats.tg-hgrid .tg-hgrid__title{color:var(--tg-text)!important;opacity:1!important}
.tg-stats.tg-hgrid .tg-hgrid__card:hover .tg-hgrid__title{color:var(--tg-cyan)!important}
.tg-stats.tg-hgrid .tg-hgrid__label{color:var(--tg-faint)!important;opacity:1!important}
.tg-stats.tg-hgrid .tg-hgrid__count{background:var(--tg-orange)!important;color:#0A0A0A!important}
.tg-stats.tg-hgrid .tg-hgrid__count.is-empty{
  background:transparent!important;color:var(--tg-faint)!important;
  border:1px solid var(--tg-border)!important}

/* ---------- team bet builder ---------- */
.tg-tb__note{margin:2px 0 12px;font-size:12.5px;line-height:1.5;color:var(--tg-muted)}
.tg-tb{list-style:none;margin:0;padding:0;counter-reset:none}
.tg-tb__leg{display:flex;align-items:flex-start;gap:12px;padding:12px 0;
  border-bottom:1px dashed var(--tg-border)}
.tg-tb__leg:last-child{border-bottom:0}
.tg-tb__n{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;
  background:var(--tg-orange);color:#0A0A0A;font-family:var(--tg-mono);font-size:12px;font-weight:500}
.tg-tb__mid{min-width:0}
.tg-tb__sel{display:block;font-family:var(--tg-display);font-weight:800;font-size:15px;
  color:var(--tg-text);line-height:1.3;overflow-wrap:anywhere}
.tg-tb__why{display:block;margin-top:2px;font-family:var(--tg-mono);font-size:12px;color:var(--tg-cyan)}
.tg-tb__price{display:flex;align-items:center;gap:12px;margin-top:14px;padding:13px 15px;
  border:1px solid var(--tg-cyan);border-radius:10px}
.tg-tb__odds{font-family:var(--tg-mono);font-size:22px;font-weight:500;color:var(--tg-cyan)}
.tg-tb__lbl{font-family:var(--tg-body);font-size:10px;font-weight:800;letter-spacing:.1em;
  text-transform:uppercase;color:var(--tg-faint)}
@media(max-width:620px){
  .tg-tb__sel{font-size:14px}
  .tg-tb__leg{gap:10px;padding:11px 0}
  .tg-tb__odds{font-size:19px}
}

/* Marks a team-stats build in the aggregated builder table. */
.tg-btable__tag{display:inline-block;margin-left:8px;padding:2px 7px;border-radius:5px;
  border:1px solid var(--tg-cyan);color:var(--tg-cyan);font-family:var(--tg-body);
  font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;vertical-align:middle}
