@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap');

:root {
  --bg:          #0b0b16;
  --bg2:         #111127;
  --surface:     #18182e;
  --surface2:    #1f1f3a;
  --border:      rgba(139,92,246,.18);
  --border2:     rgba(255,255,255,.06);
  --purple:      #8b5cf6;
  --purple-d:    #6d28d9;
  --purple-l:    #a78bfa;
  --purple-soft: rgba(139,92,246,.13);
  --teal:        #2dd4bf;
  --teal-l:      #5eead4;
  --teal-soft:   rgba(45,212,191,.11);
  --text:        #e2e8f0;
  --text-bright: #f8fafc;
  --muted:       #64748b;
  --muted2:      #475569;
  --green:       #34d399;
  --red:         #f87171;
  --orange:      #fb923c;
}

*{margin:0;padding:0;box-sizing:border-box;}

body{
  background:var(--bg);
  background-image:
    radial-gradient(ellipse 90% 55% at 50% -10%, rgba(139,92,246,.28) 0%, transparent 60%),
    radial-gradient(ellipse 55% 40% at 85% 85%, rgba(45,212,191,.08) 0%, transparent 55%);
  color:var(--text);
  font-family:'Inter',sans-serif;
  min-height:100vh;
}

/* ── LOADING ─────────────────────────────────────── */
#loadingOverlay{
  background:rgba(11,11,22,.96);
}

/* ── HEADER ──────────────────────────────────────── */
.header{
  background:linear-gradient(125deg,rgba(139,92,246,.45) 0%,rgba(24,24,46,.97) 45%,rgba(13,148,136,.18) 100%);
  backdrop-filter:blur(24px);
  -webkit-backdrop-filter:blur(24px);
  border-bottom:1px solid var(--border);
  padding:18px 40px;
  display:flex;align-items:stretch;justify-content:space-between;
  position:relative;z-index:10;
  box-shadow:0 4px 32px rgba(0,0,0,.5),0 1px 0 rgba(139,92,246,.25);
}
.header::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(90deg,transparent 40%,rgba(45,212,191,.04) 100%);
  pointer-events:none;
}
.header-left{display:flex;align-items:center;gap:16px;}
.ball-icon{
  width:90px;height:90px;
  background:linear-gradient(135deg,var(--purple-d),var(--purple));
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:25px;
  box-shadow:0 4px 20px rgba(139,92,246,.55),0 0 0 1px rgba(139,92,246,.35);
  position:relative;z-index:1;
  overflow:hidden;
}
.title{font-size:1.25rem;font-weight:800;color:#fff;letter-spacing:-.4px;line-height:1.1;}
.title span{color:var(--purple-l);}
.subtitle{font-size:.7rem;color:var(--muted);margin-top:4px;letter-spacing:.35px;}
.header-badges{display:flex;gap:8px;position:relative;z-index:1;}
.badge{font-size:.67rem;font-weight:700;padding:5px 13px;border-radius:20px;letter-spacing:.4px;}
.badge-p{background:rgba(139,92,246,.18);color:var(--purple-l);border:1px solid rgba(139,92,246,.32);}
.badge-t{background:rgba(45,212,191,.13);color:var(--teal-l);border:1px solid rgba(45,212,191,.28);}

/* ── MAIN TABS ───────────────────────────────────── */
.main-tabs{
  background:var(--surface);
  border-bottom:1px solid var(--border2);
  padding:0 40px;
  position:relative;z-index:10;
  display:flex;gap:0;
  box-shadow:0 1px 0 var(--border2);
}
.main-tab{
  flex:1;
  justify-content:center;
  padding:14px 22px;
  font-size:.8rem;font-weight:600;
  cursor:pointer;border:none;
  background:transparent;color:var(--muted);
  border-bottom:2px solid transparent;
  transition:all .2s;
  font-family:inherit;
  display:flex;align-items:center;gap:7px;
  letter-spacing:.2px;
}
.main-tab:hover{color:var(--text);background:rgba(139,92,246,.06);}
.main-tab.active{color:var(--purple-l);border-bottom-color:var(--purple);background:rgba(139,92,246,.09);}
.main-tab .tab-cat{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;opacity:.45;margin-right:2px;}

/* ── SUB TABS ─────────────────────────────────────── */
.sub-tabs{
  background:linear-gradient(180deg,rgba(45,212,191,.13) 0%,rgba(45,212,191,.07) 100%),var(--surface);
  border-top:1px solid rgba(45,212,191,.18);
  border-bottom:1px solid rgba(45,212,191,.22);
  padding:0 40px;
  display:flex;gap:0;
}
.sub-tabs-spacer{flex:6;}
.sub-tab{
  flex:1;
  justify-content:center;
  padding:10px 12px;
  font-size:.76rem;font-weight:600;
  cursor:pointer;border:none;
  background:transparent;color:var(--muted);
  border-bottom:2px solid transparent;
  transition:all .2s;
  font-family:inherit;letter-spacing:.2px;
  display:flex;align-items:center;gap:6px;
  white-space:nowrap;
}
.sub-tab:hover{color:var(--text);background:rgba(45,212,191,.08);}
.sub-tab.active{color:var(--teal-l);border-bottom-color:var(--teal);background:rgba(45,212,191,.13);}
.main-tab.grp-active{color:var(--purple-l);border-bottom-color:var(--purple);background:rgba(139,92,246,.09);}

/* ── SECTION ─────────────────────────────────────── */
.section{display:none;}
.section.active{display:block;}

/* ── CONTROLS ────────────────────────────────────── */
.controls{
  padding:0 40px;
  background:var(--surface);
  border-bottom:1px solid var(--border2);
  position:relative;z-index:10;
}

/* ── SIDEBAR LAYOUT ──────────────────────────────── */
.sidebar-layout{display:flex;align-items:stretch;}
.ctrl-sidebar{
  width:224px;min-width:224px;flex-shrink:0;
  background:var(--surface);
  padding:14px 14px 16px;
  display:flex;flex-direction:column;gap:16px;
}
.sidebar-main{flex:1;min-width:0;overflow:hidden;border-left:1px solid var(--border2);}
.fsb-group{display:flex;flex-direction:column;gap:5px;}
.fsb-lbl{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:var(--muted2);}
.fsb-sep{display:none;}
.fsb-pills{display:flex;flex-direction:column;gap:2px;background:rgba(0,0,0,.22);border:1px solid var(--border2);border-radius:9px;padding:3px;}
.fcs-trigger{display:flex;align-items:center;justify-content:space-between;padding:7px 10px;background:var(--surface2);border:1px solid var(--border2);border-radius:8px;cursor:pointer;transition:border-color .15s;gap:8px;width:100%;box-sizing:border-box;}
.fcs-trigger:hover,.fcs-trigger.open{border-color:var(--purple);}
.fcs-selected{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1;}
.fcs-name{font-size:.78rem;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.fcs-sub{font-size:.64rem;color:var(--teal-l);opacity:.8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.fcs-chevron{flex-shrink:0;color:var(--muted2);transition:transform .2s;}
.fcs-trigger.open .fcs-chevron{transform:rotate(180deg);}
.fcs-dropdown{display:none;position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--surface2);border:1px solid var(--border);border-radius:8px;z-index:300;max-height:260px;overflow-y:auto;box-shadow:0 8px 24px rgba(0,0,0,.55);}
.fcs-dropdown.open{display:block;}
.fcs-option{padding:7px 10px;cursor:pointer;transition:background .12s;}
.fcs-option:hover{background:rgba(139,92,246,.1);}
.fcs-option.selected{background:rgba(139,92,246,.14);}
.fcs-option .fcs-name{display:block;}
.fcs-option .fcs-sub{display:block;margin-top:1px;}
.fsb-custom-select{position:relative;width:100%;}
.fsb-group .fsb-custom-select{margin-top:4px;}
.fsb-pills button{border:none;background:transparent;padding:6px 10px;border-radius:6px;font-size:.76rem;font-weight:600;cursor:pointer;color:var(--muted);font-family:inherit;transition:all .15s;text-align:left;}
.fsb-pills button:hover:not(.active){background:rgba(139,92,246,.1);color:var(--text);}
.fsb-pills button.active{background:linear-gradient(135deg,var(--purple-d),var(--purple));color:#fff;box-shadow:0 1px 8px rgba(139,92,246,.35);}
.ctrl-sidebar select{width:100%;min-width:0;}
.ctrl-sidebar .search-wrap{width:100%;}
.ctrl-sidebar input[type=text]{width:100%;padding-left:34px;}
.ctrl-sidebar .filter-row{display:grid;grid-template-columns:20px 1fr;gap:3px 6px;align-items:center;}
.ctrl-sidebar .filter-row .ctrl-filter-badge{grid-column:1;grid-row:1;align-self:center;}
.ctrl-sidebar .filter-row>select{grid-column:2;grid-row:1;width:100%!important;min-width:0!important;}
.ctrl-sidebar .filter-row>.fsb-custom-select{grid-column:2;grid-row:1;}
.fcs-trigger .fcs-sub:empty{display:none;}
.ctrl-sidebar .filter-row input[type=number]{width:100%!important;min-width:0!important;}
.ctrl-sidebar .filter-row .fsb-op-row{grid-column:1/3;grid-row:2;overflow:hidden;}
.fsb-op-row{display:flex;gap:5px;}
.fsb-op-row .op-select{flex:2;min-width:0;padding-left:6px;padding-right:4px;}
.fsb-op-row input{flex:3;min-width:0;}
.fsb-op-row input[type=number]::-webkit-outer-spin-button,
.fsb-op-row input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.fsb-op-row input[type=number]{-moz-appearance:textfield;}
.fsb-footer{margin-top:6px;padding-top:10px;border-top:1px solid var(--border2);display:flex;flex-direction:column;gap:7px;}
.fsb-footer .stat-count{font-size:.77rem;}
.fsb-footer .clear-btn{justify-content:center;width:100%;}
/* Mobile collapse toggle */
.ctrl-collapse-toggle{
  display:none;align-items:center;gap:7px;padding:9px 16px;
  cursor:pointer;font-size:.71rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.5px;
  background:var(--surface);border-bottom:1px solid var(--border2);
  color:var(--muted2);transition:color .15s;user-select:none;
}
.ctrl-collapse-toggle:hover{color:var(--text);}
.ctrl-collapse-toggle.cct-open{color:var(--muted);}
.ctrl-collapse-toggle .cct-chevron{margin-left:auto;transition:transform .2s;}
.ctrl-collapse-toggle.cct-open .cct-chevron{transform:rotate(180deg);}
/* legacy layout classes kept for team section */
.controls-left{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.controls-right{display:flex;flex-direction:column;gap:7px;}
.controls-footer{display:flex;align-items:center;gap:10px;padding-bottom:12px;}

/* ── NEW CTRL BAR ────────────────────────────────── */
.ctrl-bar{display:flex;align-items:center;gap:8px;padding:11px 0;flex-wrap:wrap;}
.ctrl-filters{display:flex;flex-direction:column;gap:6px;padding-bottom:11px;}
.ctrl-sep{width:1px;height:22px;background:var(--border2);flex-shrink:0;margin:0 2px;}
.ctrl-spacer{flex:1;}
.ctrl-filter-badge{
  display:inline-flex;align-items:center;justify-content:center;
  width:16px;height:16px;border-radius:50%;
  background:rgba(139,92,246,.25);color:var(--purple-l);
  font-size:.6rem;font-weight:800;flex-shrink:0;
}

.search-wrap{position:relative;width:210px;flex-shrink:0;}
.search-wrap svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none;}

input[type=text],select,input[type=number]{
  background:rgba(255,255,255,.04);
  border:1.5px solid var(--border2);
  color:var(--text);border-radius:9px;
  padding:7px 12px;font-size:.83rem;
  outline:none;font-family:inherit;
  transition:border-color .18s,box-shadow .18s;
}
input[type=text]{padding-left:34px;width:100%;}
input[type=number]{width:80px;}
input:focus,select:focus{
  border-color:var(--purple);
  box-shadow:0 0 0 3px rgba(139,92,246,.14);
  background:rgba(139,92,246,.05);
}
select option{background:var(--surface2);color:var(--text);}

.fg{display:flex;align-items:center;gap:7px;flex-shrink:0;}
.fg label{font-size:.71rem;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.4px;white-space:nowrap;}
.sep{width:1px;height:22px;background:var(--border2);align-self:center;}

.stat-count{
  font-size:.81rem;color:var(--muted);
  background:rgba(255,255,255,.04);
  border:1px solid var(--border2);
  border-radius:20px;padding:4px 11px;white-space:nowrap;
}
.stat-count span{color:var(--purple-l);font-weight:700;}

.filter-row{display:flex;align-items:center;gap:7px;}
.filter-row .flbl{font-size:.69rem;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;width:46px;}
.filter-row select{min-width:140px;}
.filter-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 18px;}
.op-select{min-width:58px;}
.filter-row input[type=number]{width:78px;}

.clear-btn{
  display:flex;align-items:center;gap:5px;
  background:transparent;border:1.5px solid var(--border2);
  color:var(--muted);border-radius:8px;padding:6px 12px;
  font-size:.76rem;cursor:pointer;font-family:inherit;transition:all .15s;font-weight:500;
  white-space:nowrap;
}
.clear-btn:hover{border-color:rgba(239,68,68,.5);color:#f87171;background:rgba(239,68,68,.06);}
.filter2-row{display:flex;align-items:center;gap:6px;}

/* ── TABLE TOGGLE ────────────────────────────────── */
.tbl-toggle-wrap{padding:10px 40px;background:var(--surface);border-bottom:1px solid var(--border2);display:flex;align-items:stretch;justify-content:space-between;}
.tbl-toggle{
  display:inline-flex;
  background:rgba(0,0,0,.3);
  border:1px solid var(--border2);border-radius:30px;
  padding:3px;gap:2px;
}
.tbl-toggle button{
  border:none;background:transparent;
  padding:6px 18px;border-radius:24px;
  font-size:.78rem;font-weight:600;
  cursor:pointer;color:var(--muted);
  font-family:inherit;transition:all .18s;
}
.tbl-toggle button.active{
  background:linear-gradient(135deg,var(--purple-d),var(--purple));
  color:#fff;box-shadow:0 2px 14px rgba(139,92,246,.45);
}

/* ── TABLE ───────────────────────────────────────── */
.table-wrap{padding:16px 40px 8px;position:relative;z-index:1;}
.table-card{
  background:var(--bg);border-radius:14px;
  overflow-x:auto;overflow-y:visible;
  box-shadow:0 4px 28px rgba(0,0,0,.35),0 0 0 1px var(--border);
  border:1px solid var(--border);
  transform:scaleY(-1);
}
.table-card>table{transform:scaleY(-1);}
.scroll-bar-outer{
  display:none;
  overflow-x:scroll;overflow-y:hidden;
  height:10px;margin:0 40px 0;
  background:rgba(255,255,255,.02);
  border-radius:0 0 8px 8px;
}
.scroll-bar-outer::-webkit-scrollbar{height:8px;}
.scroll-bar-outer::-webkit-scrollbar-track{background:rgba(255,255,255,.04);border-radius:4px;}
.scroll-bar-outer::-webkit-scrollbar-thumb{background:rgba(139,92,246,.45);border-radius:4px;}
.scroll-bar-outer::-webkit-scrollbar-thumb:hover{background:var(--purple);}
.scroll-bar-inner{display:block;height:1px;}

table{width:100%;border-collapse:collapse;font-size:.8rem;}
thead th{
  position:sticky;top:0;z-index:10;
  background:var(--bg2);
  color:var(--muted);text-transform:uppercase;
  font-size:.63rem;letter-spacing:.8px;font-weight:700;
  padding:12px 10px;text-align:right;
  cursor:pointer;white-space:nowrap;
  border-bottom:1px solid var(--border);
  transition:color .15s;user-select:none;
}
thead th:first-child,thead th:nth-child(2){text-align:left;}
thead th:hover{color:var(--purple-l);}
thead th.sd::after{content:' ▼';color:var(--purple-l);font-size:.55rem;}
thead th.sa::after{content:' ▲';color:var(--purple-l);font-size:.55rem;}
thead .rank-th{text-align:center!important;background:var(--bg2);color:var(--muted);min-width:32px;width:32px;}

tbody tr{border-bottom:1px solid rgba(255,255,255,.04);transition:background .12s;}
tbody tr:hover{background:rgba(139,92,246,.08);}
tbody td{padding:12px 10px;text-align:right;white-space:nowrap;}
tbody td:first-child{text-align:left;font-weight:600;color:var(--text-bright);}
tbody td:nth-child(2){text-align:left;color:var(--muted);font-size:.76rem;}

.rank-cell{color:var(--muted2);font-size:.72rem;font-weight:700;text-align:center!important;min-width:32px;width:32px;background:rgba(255,255,255,.02);}
/* Sticky columns #, Jugador, Equipo for player tables */
#jCardBasic td:nth-child(1),#jCardAdv td:nth-child(1){position:sticky;left:0;z-index:1;background:var(--bg);}
#jCardBasic td:nth-child(2),#jCardAdv td:nth-child(2){position:sticky;left:32px;z-index:1;background:var(--bg);min-width:120px;box-shadow:4px 0 8px rgba(0,0,0,.4);}
#jCardBasic td:nth-child(3),#jCardAdv td:nth-child(3){min-width:150px;}
#jCardBasic thead th:nth-child(1),#jCardAdv thead th:nth-child(1){left:0;z-index:20;}
#jCardBasic thead th:nth-child(2),#jCardAdv thead th:nth-child(2){left:32px;min-width:120px;box-shadow:4px 0 8px rgba(0,0,0,.4);z-index:20;}
#jCardBasic thead th:nth-child(3),#jCardAdv thead th:nth-child(3){min-width:150px;}
#jCardBasic tr:hover td:nth-child(-n+3),#jCardAdv tr:hover td:nth-child(-n+3){background:rgba(139,92,246,.08);}
.pts-cell{color:var(--purple-l);font-weight:700;}
.val-pos{color:var(--green);font-weight:600;}
.val-neg{color:var(--red);font-weight:600;}
.pct-hi{color:var(--teal-l);font-weight:600;}
.top1 td:first-child::before{content:'🥇 ';}
.top2 td:first-child::before{content:'🥈 ';}
.top3 td:first-child::before{content:'🥉 ';}
.win-rate-high{color:var(--green);font-weight:700;}
.win-rate-mid{color:var(--orange);font-weight:600;}
.win-rate-low{color:var(--red);font-weight:600;}
/* ── Tooltip de encabezado ── */
#thTip{position:fixed;z-index:9999;background:var(--surface2);border:1px solid var(--border2);color:var(--text);
  padding:7px 11px;border-radius:7px;font-size:.76rem;font-weight:400;line-height:1.5;max-width:250px;
  pointer-events:none;box-shadow:0 4px 18px rgba(0,0,0,.55);display:none;white-space:normal;}
/* ── Posiciones ── */
.pos-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.pos-outer{padding:24px 20px;max-width:900px;margin:0 auto;}
.pos-conf-block{margin-bottom:36px;}
.pos-conf-title{font-size:.75rem;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;
  color:var(--purple-l);border-bottom:2px solid var(--purple);padding-bottom:6px;margin-bottom:12px;}
.pos-table{width:100%;border-collapse:collapse;font-size:.88rem;}
.pos-table th{background:var(--surface2);color:var(--muted);font-size:.68rem;font-weight:700;
  letter-spacing:.5px;text-transform:uppercase;padding:10px 12px;text-align:right;border-bottom:1px solid var(--border2);}
.pos-table th:nth-child(2){text-align:left;}
.pos-table td{padding:13px 12px;text-align:right;border-bottom:1px solid rgba(255,255,255,.04);}
.pos-table td:first-child{text-align:center;color:var(--muted2);font-size:.76rem;font-weight:700;width:30px;}
.pos-table td:nth-child(2){text-align:left;font-weight:600;color:var(--text);display:flex;align-items:center;gap:10px;}
.pos-logo{width:32px;height:32px;object-fit:contain;flex-shrink:0;}
.pos-logo-ph{display:inline-block;width:32px;height:32px;flex-shrink:0;}
.pos-table tbody tr{cursor:pointer;}.pos-table tbody tr:hover{background:rgba(139,92,246,.08);}.pos-table .pos-row-chevron{color:var(--muted2);font-size:.9rem;text-align:center;width:18px;opacity:.5;transition:opacity .15s;}.pos-table tbody tr:hover .pos-row-chevron{opacity:1;color:var(--purple-l);}
.pos-table .pos-top8{border-left:2px solid var(--purple);}
.pos-pts-f{color:var(--purple-l);font-weight:700;}
.pos-pts-a{color:var(--muted);}
.pos-diff-pos{color:var(--green);font-weight:700;}
.pos-diff-neg{color:var(--red);font-weight:700;}
.ortg-hi{color:var(--purple-l);font-weight:700;}
.drtg-lo{color:var(--teal-l);font-weight:700;}
.netrtg-pos{color:var(--green);font-weight:700;}
.netrtg-neg{color:var(--red);font-weight:700;}
.tc-group{background:rgba(139,92,246,.06);}
.adv-hi{color:var(--green);font-weight:700;}
.adv-lo{color:var(--red);}

/* ── CHART ───────────────────────────────────────── */
.chart-outer{padding:22px 40px 40px;position:relative;z-index:1;}
.chart-controls{
  display:flex;gap:16px;flex-wrap:wrap;align-items:flex-end;
  padding:16px 20px;
  background:var(--surface);border:1px solid var(--border);
  border-radius:12px;margin-bottom:18px;
  box-shadow:0 2px 16px rgba(0,0,0,.25);
}
.axis-group{display:flex;flex-direction:column;gap:5px;min-width:148px;}
.axis-group label{font-size:.68rem;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);font-weight:700;}
.ax-x{color:var(--teal-l)!important;}
.ax-y{color:var(--purple-l)!important;}
.axis-group select{padding:7px 11px;}
.chart-card{
  background:var(--surface);border:1px solid var(--border);
  border-radius:12px;padding:20px;
  box-shadow:0 4px 28px rgba(0,0,0,.3);
}
canvas{display:block;width:100%;cursor:crosshair;}
.chart-legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:12px;font-size:.72rem;color:var(--muted);}
.ldot{width:9px;height:9px;border-radius:50%;display:inline-block;margin-right:4px;}

/* ── TOOLTIP ─────────────────────────────────────── */
.tt{
  position:fixed;pointer-events:none;z-index:1000;
  background:var(--surface2);
  border:1.5px solid var(--purple);border-radius:12px;
  padding:12px 16px;font-size:.79rem;min-width:180px;
  box-shadow:0 12px 48px rgba(0,0,0,.6),0 0 0 1px rgba(139,92,246,.2);
  display:none;color:var(--text);
}
.tt .tn{font-weight:700;margin-bottom:3px;color:#fff;}
.tt .ts{color:var(--muted);font-size:.71rem;margin-bottom:7px;}
.tt .tr{display:flex;justify-content:space-between;gap:16px;color:var(--muted);margin-bottom:2px;}
.tt .tr span:last-child{color:var(--text-bright);font-weight:600;}
.tt .tx span:first-child{color:var(--teal-l);}
.tt .ty span:first-child{color:var(--purple-l);}

/* ── SCROLLBARS ──────────────────────────────────── */
::-webkit-scrollbar{height:6px;width:6px;}
::-webkit-scrollbar-track{background:rgba(255,255,255,.03);border-radius:4px;}
::-webkit-scrollbar-thumb{background:rgba(139,92,246,.3);border-radius:4px;}
::-webkit-scrollbar-thumb:hover{background:var(--purple);}
.table-card::-webkit-scrollbar{height:8px;}
.table-card::-webkit-scrollbar-track{background:rgba(255,255,255,.02);}
.table-card::-webkit-scrollbar-thumb{background:rgba(139,92,246,.35);border-radius:5px;}
.table-card::-webkit-scrollbar-thumb:hover{background:var(--purple);}

/* ── LEADERS ─────────────────────────────────────── */
.leaders-outer{padding:28px 40px 48px;min-height:calc(100vh - 120px);}
.leaders-header{margin-bottom:28px;padding-bottom:18px;border-bottom:1px solid var(--border2);}
.leaders-header h2{font-size:1.05rem;font-weight:700;color:var(--text-bright);letter-spacing:.5px;text-transform:uppercase;}
.leaders-header h2 span{color:var(--purple-l);}
.leaders-header p{font-size:.72rem;color:var(--muted);margin-top:5px;}
.leaders-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(274px,1fr));gap:16px;}
.leader-card{
  background:var(--surface);border-radius:14px;overflow:hidden;
  border:1px solid var(--border);
  box-shadow:0 4px 18px rgba(0,0,0,.25);
  transition:box-shadow .2s,border-color .2s,transform .2s;
}
.leader-card:hover{
  box-shadow:0 8px 36px rgba(139,92,246,.22);
  border-color:rgba(139,92,246,.45);
  transform:translateY(-2px);
}
.leader-card-header{
  padding:13px 16px 11px;
  border-bottom:1px solid var(--border2);
  display:flex;align-items:stretch;justify-content:space-between;
  background:var(--surface2);
}
.leader-card-header h3{font-size:.68rem;font-weight:700;color:var(--purple-l);letter-spacing:1.5px;text-transform:uppercase;}
.lc-bar{width:24px;height:2px;background:linear-gradient(90deg,var(--purple),var(--teal));border-radius:2px;}
.leader-card-body{padding:0;}
.leader-row{
  display:flex;align-items:center;gap:11px;padding:10px 16px;
  border-bottom:1px solid rgba(255,255,255,.04);
  position:relative;transition:background .12s;
}
.leader-row:last-child{border-bottom:none;}
.leader-row:hover{background:rgba(139,92,246,.08);}
.leader-row.rank-1{background:linear-gradient(90deg,rgba(139,92,246,.1),transparent);}
.leader-row.rank-1::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:linear-gradient(180deg,var(--purple),var(--teal));}
.leader-rank{font-size:.68rem;font-weight:800;width:14px;text-align:center;flex-shrink:0;color:var(--muted2);}
.leader-rank.r1{color:var(--purple-l);font-size:.78rem;}
.leader-rank.r2{color:var(--teal-l);}
.leader-rank.r3{color:var(--orange);}
.leader-avatar{
  width:30px;height:30px;border-radius:8px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  font-size:.62rem;font-weight:800;letter-spacing:.3px;
  background:var(--surface2);border:1px solid var(--border);color:var(--muted);
}
.leader-avatar.av1{background:var(--purple-soft);border-color:rgba(139,92,246,.3);color:var(--purple-l);}
.leader-info{flex:1;min-width:0;}
.leader-name{font-size:.76rem;font-weight:600;color:var(--text-bright);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.leader-row.rank-1 .leader-name{font-weight:700;}
.leader-team{font-size:.62rem;font-weight:500;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;margin-top:2px;}
.leader-row.rank-1 .leader-team{color:var(--teal-l);}
.leader-val-wrap{flex-shrink:0;text-align:right;}
.leader-val{font-size:1.05rem;font-weight:800;color:var(--muted);font-variant-numeric:tabular-nums;}
.leader-row.rank-1 .leader-val{color:var(--purple-l);font-size:1.18rem;}
.leader-gp{font-size:.58rem;color:var(--muted);text-align:right;margin-top:2px;opacity:.6;}

/* ── TEAM COMPARISON ─────────────────────────────── */
.cmp-toggle-btn{
  display:inline-flex;align-items:center;gap:6px;
  background:rgba(139,92,246,.1);border:1.5px solid rgba(139,92,246,.45);
  border-radius:8px;padding:7px 16px;
  font-size:.82rem;font-weight:600;color:var(--purple-l);
  cursor:pointer;transition:all .18s;margin-left:auto;
  box-shadow:0 0 14px rgba(139,92,246,.18);
}
.cmp-toggle-btn:hover,.cmp-toggle-btn.cmp-active{
  background:rgba(139,92,246,.22);border-color:var(--purple);color:#d8b4fe;
  box-shadow:0 0 20px rgba(139,92,246,.35);
}
.cmp-panel{
  background:var(--surface);border:1.5px solid rgba(139,92,246,.3);
  border-radius:14px;padding:20px 24px 16px;margin:12px 40px;
  box-shadow:0 4px 28px rgba(139,92,246,.1);
}
.cmp-panel-title{font-size:.85rem;font-weight:700;color:var(--purple-l);margin-bottom:14px;display:flex;align-items:center;gap:8px;}
.cmp-chips-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:16px;min-height:32px;}
.cmp-chips-empty{font-size:.78rem;color:var(--muted);font-style:italic;}
.cmp-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:20px;font-size:.78rem;font-weight:700;color:#fff;cursor:pointer;transition:opacity .15s;}
.cmp-chip:hover{opacity:.8;}
.cmp-chip-x{font-size:.9rem;line-height:1;opacity:.75;}
.team-row-selectable{cursor:pointer;transition:background .12s;}
.team-row-selectable:hover{background:rgba(139,92,246,.08)!important;}
.team-sel-0{border-left:3px solid #8b5cf6!important;}
.team-sel-1{border-left:3px solid #2dd4bf!important;}
.team-sel-2{border-left:3px solid #fb923c!important;}
.team-sel-3{border-left:3px solid #f87171!important;}
.team-sel-indicator{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;font-size:.64rem;font-weight:800;color:#fff;margin-right:4px;vertical-align:middle;flex-shrink:0;}
.cmp-selectors{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;margin-bottom:18px;}
.cmp-sel-wrap{display:flex;flex-direction:column;gap:4px;}
.cmp-sel-wrap label{font-size:.7rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;}
.cmp-sel-wrap select{min-width:150px;border-radius:8px;border:1.5px solid var(--border);padding:6px 10px;font-size:.82rem;color:var(--text);background:var(--surface2);}
.cmp-clear-btn{background:none;border:1px solid var(--border);border-radius:6px;padding:6px 14px;font-size:.78rem;color:var(--muted);cursor:pointer;align-self:flex-end;}
.cmp-clear-btn:hover{border-color:var(--purple);color:var(--purple-l);}
.cmp-content{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.cmp-cards{display:flex;gap:10px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;}
.cmp-card{min-width:200px;background:var(--surface2);border:1px solid var(--border);border-radius:12px;overflow:hidden;flex:1;}
.cmp-card-header{padding:9px 14px;font-size:.8rem;font-weight:800;color:#fff;letter-spacing:.01em;}
.cmp-stat-list{padding:6px 0;}
.cmp-stat-row{display:flex;justify-content:space-between;align-items:center;padding:4px 14px;font-size:.77rem;}
.cmp-stat-row:nth-child(even){background:rgba(255,255,255,.03);}
.cmp-stat-label{color:var(--muted);font-weight:500;}
.cmp-stat-val{font-weight:700;color:var(--text);}
.cmp-stat-val.best{color:var(--green);font-size:.82rem;}
.cmp-chart-wrap{background:var(--surface2);border:1px solid var(--border);border-radius:12px;padding:16px;}
.cmp-chart-title{font-size:.75rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:12px;}
.cmp-bar-group{margin-bottom:10px;}
.cmp-bar-lbl{font-size:.7rem;font-weight:600;color:var(--text);margin-bottom:4px;}
.cmp-bar-track{height:8px;background:rgba(255,255,255,.08);border-radius:999px;position:relative;overflow:hidden;}
.cmp-bar-fill{height:8px;border-radius:999px;position:absolute;left:0;transition:width .4s ease;}
.cmp-bar-vals{display:flex;gap:8px;margin-top:3px;flex-wrap:wrap;}
.cmp-bar-chip{font-size:.66rem;font-weight:700;padding:1px 6px;border-radius:4px;color:#fff;}
.cmp-empty-msg{color:var(--muted);font-size:.83rem;font-style:italic;}

@keyframes spin{to{transform:rotate(360deg)}}

/* ── TEAM GAMES MODAL ────────────────────────────── */
#teamGamesBackdrop{
  display:none;position:fixed;inset:0;z-index:5000;
  background:rgba(0,0,0,.72);backdrop-filter:blur(4px);
  align-items:center;justify-content:center;
}
#teamGamesBackdrop.open{display:flex;}
#teamGamesModal{
  background:var(--surface);border:1px solid var(--border);
  border-radius:16px;width:90%;max-width:860px;
  max-height:82vh;display:flex;flex-direction:column;
  box-shadow:0 24px 80px rgba(0,0,0,.7),0 0 0 1px rgba(139,92,246,.25);
  overflow:hidden;
}
#teamGamesModal .tgm-header{
  padding:16px 20px;display:flex;align-items:center;gap:12px;
  background:var(--bg2);border-bottom:1px solid var(--border2);flex-shrink:0;
}
#teamGamesModal .tgm-logo{width:36px;height:36px;object-fit:contain;}
#teamGamesModal .tgm-title{font-size:.95rem;font-weight:800;color:#fff;flex:1;}
#teamGamesModal .tgm-record{font-size:.78rem;color:var(--muted);margin-left:4px;}
#teamGamesModal .tgm-close{
  background:none;border:1px solid var(--border2);border-radius:8px;
  color:var(--muted);font-size:1rem;width:30px;height:30px;cursor:pointer;
  display:flex;align-items:center;justify-content:center;transition:all .15s;
}
#teamGamesModal .tgm-close:hover{border-color:var(--purple);color:var(--purple-l);}
#teamGamesModal .tgm-body{overflow-y:auto;overflow-x:auto;flex:1;}
#teamGamesModal table{width:100%;border-collapse:collapse;font-size:.8rem;}
#teamGamesModal thead th{
  background:var(--bg);color:var(--muted);font-size:.62rem;font-weight:700;
  letter-spacing:.6px;text-transform:uppercase;padding:9px 12px;text-align:right;
  border-bottom:1px solid var(--border2);position:sticky;top:0;
}
#teamGamesModal table{table-layout:fixed;width:100%;}
#teamGamesModal thead th:first-child{text-align:left;width:17%;}
#teamGamesModal thead th:nth-child(2){text-align:center;width:13%;}
#teamGamesModal thead th:nth-child(3){text-align:left;width:24%;}
#teamGamesModal thead th:nth-child(4){text-align:center;width:20%;}
#teamGamesModal thead th:nth-child(5){text-align:center;width:14%;}
#teamGamesModal thead th:nth-child(6){width:12%;}
#teamGamesModal tbody td{padding:9px 12px;text-align:center;border-bottom:1px solid rgba(255,255,255,.04);}
#teamGamesModal tbody td:first-child{text-align:left;color:var(--muted);font-size:.74rem;}
#teamGamesModal tbody td:nth-child(2){text-align:center;}
#teamGamesModal tbody td:nth-child(3){text-align:left;}
#teamGamesModal tbody td:nth-child(6){color:var(--muted2);opacity:.4;transition:opacity .15s;}
#teamGamesModal .tgm-box-table tbody td:nth-child(6){color:var(--text);opacity:1;transition:none;}
#teamGamesModal .tgm-box-table tbody tr:hover td:nth-child(6){color:var(--text);}
#teamGamesModal tbody tr:hover td:nth-child(6){opacity:1;color:var(--purple-l);}
#teamGamesModal tbody tr:hover{background:rgba(139,92,246,.06);}
.tgm-win{color:var(--green);font-weight:700;}
.tgm-loss{color:var(--red);font-weight:700;}
.tgm-cond{font-size:.68rem;font-weight:700;padding:2px 7px;border-radius:4px;}
.tgm-cond-l{background:rgba(139,92,246,.18);color:var(--purple-l);}
.tgm-cond-v{background:rgba(45,212,191,.12);color:var(--teal-l);}
#teamGamesModal tbody tr.tgm-clickable{cursor:pointer;}
/* ── GAME DETAIL ── */
#tgmDetail{display:none;flex-direction:column;flex:1;overflow:hidden;}
#tgmDetail.visible{display:flex;}
.tgm-back{
  background:none;border:none;color:var(--purple-l);font-size:.8rem;font-weight:700;
  cursor:pointer;padding:10px 18px;text-align:left;display:flex;align-items:center;gap:6px;
  border-bottom:1px solid var(--border2);flex-shrink:0;font-family:inherit;
}
.tgm-back:hover{color:#fff;}
.tgm-scoreboard{
  display:flex;align-items:center;justify-content:space-around;
  padding:20px 24px 16px;background:var(--bg);flex-shrink:0;
  border-bottom:1px solid var(--border2);
}
.tgm-sb-team{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;}
.tgm-sb-logo{width:52px;height:52px;object-fit:contain;background:var(--bg);border-radius:8px;padding:5px;}
.tgm-sb-name{font-size:.7rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;text-align:center;}
.tgm-sb-score{font-size:2.4rem;font-weight:900;color:#fff;line-height:1;}
.tgm-sb-score.winner{color:var(--purple-l);}
.tgm-sb-divider{display:flex;flex-direction:column;align-items:center;gap:4px;flex-shrink:0;padding:0 12px;}
.tgm-sb-date{font-size:.68rem;color:var(--muted);letter-spacing:.3px;}
.tgm-sb-cond{font-size:.62rem;font-weight:700;padding:2px 8px;border-radius:4px;margin-top:2px;}
.tgm-detail-body{overflow-y:auto;flex:1;}
.tgm-stat-section{padding:8px 0;}
.tgm-stat-group-title{
  font-size:.58rem;font-weight:800;letter-spacing:1px;text-transform:uppercase;
  color:var(--muted);padding:6px 18px 4px;opacity:.6;
}
.tgm-stat-row{
  display:grid;grid-template-columns:1fr 160px 1fr;
  align-items:center;padding:11px 28px;
  border-bottom:1px solid rgba(255,255,255,.03);
}
.tgm-stat-row:hover{background:rgba(139,92,246,.05);}
.tgm-stat-label{font-size:.72rem;color:var(--muted);text-align:center;white-space:nowrap;}
.tgm-val-l{text-align:right;font-size:1.1rem;font-weight:800;color:var(--text);}
.tgm-val-r{text-align:left;font-size:1.1rem;font-weight:800;color:var(--text);}
.tgm-val-winner{color:var(--purple-l);}

/* Progressive filter reveal */
.filter-row{transition:opacity .22s ease,transform .22s ease;}
.filter-row[style*="display:none"]{opacity:0;transform:translateY(-4px);}

/* ── GAME DETAIL TABS ──────────────────────────────── */
.tgm-detail-tabs{
  display:flex;border-bottom:1px solid var(--border2);
  padding:0 18px;flex-shrink:0;background:var(--bg);
}
.tgm-tab{
  padding:10px 16px;font-size:.77rem;font-weight:600;
  border:none;background:transparent;color:var(--muted);
  cursor:pointer;border-bottom:2px solid transparent;
  transition:all .18s;font-family:inherit;letter-spacing:.2px;
}
.tgm-tab:hover{color:var(--text);}
.tgm-tab.active{color:var(--purple-l);border-bottom-color:var(--purple);}

/* ── SHOT MAP ──────────────────────────────────────── */
.tgm-map-panel{overflow-y:auto;flex:1;padding:10px 16px 8px;display:flex;flex-direction:column;gap:10px;}
.sm-controls{display:flex;gap:6px;flex-wrap:wrap;align-items:center;flex-shrink:0;}
.sm-toggle{
  display:inline-flex;background:rgba(0,0,0,.3);
  border:1px solid var(--border2);border-radius:20px;padding:2px;
}
.sm-toggle button{
  border:none;background:transparent;color:var(--muted);
  padding:3px 10px;border-radius:16px;font-size:.67rem;font-weight:600;
  cursor:pointer;transition:all .15s;font-family:inherit;white-space:nowrap;
}
.sm-toggle button.active{background:rgba(139,92,246,.2);color:var(--purple-l);}
.sm-court-wrap{width:72%;margin:0 auto;}
#shotMapCanvas{display:block;width:100%;border-radius:8px;}
.sm-legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:6px;font-size:.67rem;color:var(--muted);align-items:center;justify-content:center;flex-shrink:0;}
.sm-ld{display:flex;align-items:center;gap:5px;}
.sm-ld-dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0;}
.sm-ld-x{width:9px;height:9px;display:inline-block;flex-shrink:0;position:relative;}
.sm-ld-x::before,.sm-ld-x::after{content:'';position:absolute;width:100%;height:1.5px;top:50%;left:0;border-radius:1px;}
.sm-ld-x::before{transform:translateY(-50%) rotate(45deg);}
.sm-ld-x::after{transform:translateY(-50%) rotate(-45deg);}

/* ── PARTIDOS SECTION ───────────────────────────── */
#pGameList{padding:20px 40px 48px;max-width:80%;margin:0 auto;}
.pday-group{margin-bottom:28px;}
.pday-label{
  font-size:.62rem;font-weight:800;color:var(--muted);
  text-transform:uppercase;letter-spacing:.9px;
  padding-bottom:8px;border-bottom:1px solid var(--border2);margin-bottom:8px;
}
.pday-games{display:flex;flex-direction:column;gap:6px;}
.partido-card{
  background:var(--surface);border:1px solid var(--border2);
  border-radius:12px;padding:12px 16px;cursor:pointer;
  transition:border-color .18s,background .18s,box-shadow .18s;
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;
}
.partido-card:hover{
  border-color:rgba(139,92,246,.4);background:rgba(139,92,246,.06);
  box-shadow:0 4px 20px rgba(139,92,246,.1);
}
.pcard-side{display:flex;align-items:center;gap:8px;}
.pcard-side.visit{flex-direction:row-reverse;text-align:right;}
.pcard-logo{width:28px;height:28px;object-fit:contain;flex-shrink:0;}
.pcard-name{font-size:.82rem;font-weight:600;color:var(--muted);
  white-space:normal;overflow:hidden;text-overflow:ellipsis;}
.pcard-name.winner{color:var(--text-bright);font-weight:700;}
.pcard-center{display:flex;flex-direction:column;align-items:center;gap:2px;flex-shrink:0;}
.pcard-scores{display:flex;align-items:center;gap:6px;}
.pcard-score{font-size:1.3rem;font-weight:900;color:var(--muted);
  min-width:32px;text-align:center;font-variant-numeric:tabular-nums;}
.pcard-score.winner{color:var(--text-bright);}
.pcard-dash{font-size:.9rem;font-weight:700;color:var(--muted2);}
.pcard-badges{display:flex;gap:4px;align-items:center;}
.pcard-badge-l{font-size:.55rem;font-weight:800;padding:1px 5px;border-radius:3px;
  background:rgba(139,92,246,.18);color:var(--purple-l);letter-spacing:.3px;}
.pcard-badge-v{font-size:.55rem;font-weight:800;padding:1px 5px;border-radius:3px;
  background:rgba(45,212,191,.12);color:var(--teal-l);letter-spacing:.3px;}
.partido-card.upcoming{cursor:default;}
.partido-card.upcoming:hover{border-color:var(--border2);background:var(--surface);box-shadow:none;}
.pcard-hora{font-size:1.05rem;font-weight:800;color:var(--muted);letter-spacing:.5px;}
.pcard-estadio{font-size:.56rem;color:var(--muted2);text-align:center;max-width:96px;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}

/* ── BOX SCORE PANEL ─────────────────────────────── */
.tgm-box-panel{overflow-y:auto;flex:1;padding:0 0 12px;}
.tgm-box-team{margin-bottom:4px;}
.tgm-box-team-header{
  font-size:.7rem;font-weight:800;color:var(--purple-l);
  text-transform:uppercase;letter-spacing:.6px;
  padding:10px 16px 8px;display:flex;align-items:center;gap:8px;
  background:var(--bg);border-bottom:1px solid var(--border2);
  position:sticky;top:0;z-index:2;
}
.tgm-box-table-wrap{overflow-x:auto;}
.tgm-box-table{width:100%;border-collapse:collapse;font-size:.75rem;}
#teamGamesModal .tgm-box-table{table-layout:auto;}
.tgm-box-table thead th{
  padding:7px 10px;text-align:right;font-size:.6rem;font-weight:700;
  color:var(--muted);text-transform:uppercase;letter-spacing:.5px;
  background:var(--surface);border-bottom:1px solid var(--border2);
  white-space:nowrap;position:sticky;top:0;
}
.tgm-box-table thead th:first-child{text-align:left;min-width:140px;padding-left:14px;}
.tgm-box-table thead th:nth-child(2){text-align:center;}
.tgm-box-table tbody td{
  padding:7px 10px;text-align:right;border-bottom:1px solid rgba(255,255,255,.03);
  color:var(--text);white-space:nowrap;
}
.tgm-box-table tbody td:first-child{text-align:left;padding-left:14px;color:var(--text-bright);}
.tgm-box-table tbody td:nth-child(2){text-align:center;}
.tgm-box-table tbody tr:hover{background:rgba(139,92,246,.05);}
.tgm-box-table tbody tr.box-dnp td{opacity:.45;}
.box-dorsal{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:20px;font-size:.6rem;font-weight:800;color:var(--muted);
  margin-right:6px;
}
.box-starter-dot{color:var(--purple-l);font-size:.5rem;margin-right:4px;vertical-align:middle;}

/* ── EVOLUCIÓN PANEL ─────────────────────────────── */
.tgm-evol-panel{overflow-y:auto;flex:1;padding:0;}
.evol-wrap{padding:20px 18px 14px;}
.evol-title{
  font-size:.6rem;font-weight:800;color:var(--muted);
  text-transform:uppercase;letter-spacing:.9px;
  text-align:center;margin-bottom:16px;
}
.evol-svg-wrap{position:relative;width:100%;}
.evol-svg{display:block;width:100%;height:auto;}
.evol-legend{
  display:flex;justify-content:center;align-items:center;
  gap:18px;margin-top:10px;
}
.evol-leg-item{display:flex;align-items:center;gap:5px;font-size:.63rem;color:var(--muted);}
.evol-leg-dot{width:10px;height:10px;border-radius:2px;flex-shrink:0;}
.evol-empty{
  padding:36px;text-align:center;color:var(--muted);font-size:.82rem;
}
#evolTip{
  position:fixed;z-index:9999;
  background:var(--surface2);border:1px solid var(--border);
  border-radius:8px;padding:8px 12px;
  font-size:.72rem;color:var(--text);
  pointer-events:none;display:none;
  box-shadow:0 8px 24px rgba(0,0,0,.55);
  line-height:1.6;
}

/* ── SHOT ZONE CHART ─────────────────────────────── */
.szc-outer{padding:24px 40px 48px;max-width:1000px;margin:0 auto;}
.szc-header{margin-bottom:20px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;}
.szc-search-wrap{position:relative;width:280px;}
.szc-search-wrap svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none;}
.szc-search-wrap input{padding-left:34px;width:100%;}
.szc-autocomplete{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:200;
  background:var(--surface2);border:1px solid var(--border);border-radius:10px;
  box-shadow:0 8px 32px rgba(0,0,0,.55);max-height:240px;overflow-y:auto;}
.szc-ac-item{padding:9px 14px;cursor:pointer;border-bottom:1px solid rgba(255,255,255,.04);}
.szc-ac-item:last-child{border-bottom:none;}
.szc-ac-item:hover{background:rgba(139,92,246,.12);}
.szc-ac-name{color:var(--text-bright);font-size:.83rem;font-weight:600;}
.szc-ac-team{color:var(--muted);font-size:.7rem;margin-top:1px;}
/* Player header */
.szc-player-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;gap:12px;}
.szc-player-name{font-size:1.05rem;font-weight:800;color:#fff;text-transform:uppercase;letter-spacing:.2px;}
.szc-player-team{font-size:.72rem;color:var(--purple-l);margin-top:3px;text-transform:uppercase;letter-spacing:.4px;font-weight:600;}
.szc-player-shots{display:flex;gap:10px;flex-shrink:0;padding-top:2px;}
.szc-pstat{font-size:.68rem;color:var(--muted);white-space:nowrap;background:var(--surface);border:1px solid var(--border2);border-radius:6px;padding:3px 8px;}
.szc-pstat b{color:var(--text-bright);font-weight:700;}
/* Main body */
.szc-body{display:flex;gap:24px;align-items:stretch;flex-wrap:wrap;}
.szc-canvas-wrap{flex:0 0 auto;width:min(420px,100%);position:relative;}
#szcCanvas{display:block;width:100%;border-radius:12px;box-shadow:0 6px 30px rgba(0,0,0,.55);}
#szcSvg{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;border-radius:12px;overflow:hidden;}
#tzcCanvas{display:block;width:100%;border-radius:12px;box-shadow:0 6px 30px rgba(0,0,0,.55);}
#tzcSvg{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;border-radius:12px;overflow:hidden;}
/* Right panel */
.szc-right-panel{flex:1;min-width:150px;display:flex;flex-direction:column;gap:0;padding-top:0;}
.szc-legend{display:flex;flex-direction:column;gap:6px;font-size:.73rem;color:var(--muted);}
.szc-legend-title{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);margin-bottom:2px;}
.szc-legend-grad-wrap{display:flex;gap:8px;align-items:stretch;}
.szc-legend-grad{width:14px;min-height:120px;border-radius:6px;flex-shrink:0;
  background:linear-gradient(to bottom,
    rgb(220,38,38) 0%,
    rgb(251,146,60) 30%,
    rgb(203,213,225) 50%,
    rgb(96,165,250) 70%,
    rgb(29,78,216) 100%);}
.szc-legend-grad-labels{display:flex;flex-direction:column;justify-content:space-between;font-size:.63rem;color:var(--muted);padding:1px 0;}
/* Zone cards */
.szc-zone-cards{flex:1;display:flex;flex-direction:column;}
#szcZoneCards{flex:1;display:flex;flex-direction:column;gap:4px;}
.szc-zone-cards-title{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);margin-bottom:6px;}
.szc-zone-card{background:var(--surface);border:1px solid var(--border2);border-radius:8px;padding:6px 10px;
  display:flex;align-items:center;gap:8px;border-left:3px solid #334155;flex:1;transition:border-left-color .15s;}
.szc-zone-card.szc-no-data{opacity:.35;}
.szc-zone-card-info{flex:1;min-width:0;}
.szc-zone-card-name{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px;color:var(--muted);}
.szc-zone-card-att{font-size:.6rem;color:var(--muted2);margin-top:1px;}
.szc-zone-card-right{text-align:right;}
.szc-zone-card-pct{font-size:.9rem;font-weight:800;color:var(--text-bright);line-height:1.1;}
.szc-zone-card-diff{font-size:.58rem;font-weight:700;display:block;margin-top:1px;}
.szc-zone-card-diff.pos{color:#fb923c;}
.szc-zone-card-diff.neg{color:#93c5fd;}
.szc-zone-card-diff.neu{color:var(--muted2);}
.szc-empty{color:var(--muted);font-size:.88rem;text-align:center;padding:64px 20px;font-style:italic;}
.szc-loading{color:var(--muted);font-size:.82rem;text-align:center;padding:32px 20px;}

/* ── QUINTETOS ───────────────────────────────────── */
.qnt-outer{padding:24px 40px 48px;max-width:1200px;margin:0 auto;}
.qnt-header{display:flex;align-items:center;gap:14px;margin-bottom:20px;flex-wrap:wrap;}
.qnt-title{font-size:1rem;font-weight:800;color:var(--text-bright);letter-spacing:-.2px;}
.qnt-filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.qnt-table-wrap{overflow-x:auto;}
.qnt-table{width:100%;border-collapse:collapse;font-size:.82rem;}
.qnt-table th{
  padding:9px 10px;font-size:.67rem;font-weight:700;text-transform:uppercase;
  letter-spacing:.6px;color:var(--muted);border-bottom:1px solid var(--border2);
  cursor:pointer;white-space:nowrap;text-align:right;user-select:none;
}
.qnt-table th:first-child{text-align:left;}
.qnt-table th:hover{color:var(--text);}
.qnt-table th.qnt-sorted{color:var(--purple-l);}
.qnt-table td{padding:10px 10px;border-bottom:1px solid rgba(45,212,191,.12);color:var(--text);text-align:right;white-space:nowrap;}
.qnt-table td:first-child{text-align:left;white-space:normal;min-width:200px;}
.qnt-table tr:hover td{background:rgba(139,92,246,.05);}
.qnt-players{display:flex;flex-wrap:wrap;gap:3px 8px;}
.qnt-player{font-size:.73rem;color:var(--text);background:var(--surface);border:1px solid var(--border2);border-radius:5px;padding:2px 7px;}
.qnt-stat-pos{color:var(--green);font-weight:700;}
.qnt-stat-neg{color:var(--red);font-weight:700;}
.qnt-empty{color:var(--muted);font-size:.88rem;text-align:center;padding:60px 20px;font-style:italic;}
.qnt-loading{color:var(--muted);font-size:.82rem;text-align:center;padding:32px 20px;}
.qnt-count{font-size:.72rem;color:var(--muted);margin-left:auto;}

/* ── CONEXIONES ──────────────────────────────────── */
.cnx-outer{padding:24px 40px 48px;max-width:1100px;margin:0 auto;}
.cnx-header{display:flex;align-items:center;gap:14px;margin-bottom:20px;flex-wrap:wrap;}
.cnx-title{font-size:1rem;font-weight:800;color:var(--text-bright);letter-spacing:-.2px;}
.cnx-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.cnx-empty{color:var(--muted);font-size:.88rem;text-align:center;padding:60px 20px;font-style:italic;}
.cnx-loading{color:var(--muted);font-size:.82rem;text-align:center;padding:32px 20px;}
.cnx-canvas-wrap{position:relative;display:flex;justify-content:center;}
.cnx-canvas-wrap svg{border-radius:16px;background:var(--surface);display:block;}
.cnx-tooltip{
  position:absolute;pointer-events:none;
  background:var(--surface2);border:1px solid var(--border);border-radius:10px;
  padding:10px 14px;font-size:.78rem;color:var(--text);
  box-shadow:0 4px 20px rgba(0,0,0,.5);min-width:170px;z-index:10;
}
.cnx-tooltip-name{font-weight:700;color:var(--text-bright);margin-bottom:6px;font-size:.82rem;}
.cnx-tooltip-row{display:flex;justify-content:space-between;gap:12px;margin-bottom:2px;}
.cnx-tooltip-label{color:var(--muted);}
.cnx-tooltip-val{font-weight:600;color:var(--purple-l);}
.cnx-legend{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:16px;padding:12px 16px;background:var(--surface);border-radius:10px;border:1px solid var(--border2);}
.cnx-legend-item{display:flex;align-items:center;gap:8px;font-size:.72rem;color:var(--muted);}
.cnx-legend-line{border-radius:4px;background:var(--purple-l);}
.cnx-legend-line.thin{width:24px;height:2px;}
.cnx-legend-line.thick{width:24px;height:6px;}
.cnx-legend-dot{width:12px;height:12px;border-radius:50%;}
.cnx-legend-dot.low{background:#8b5cf6;}
.cnx-legend-dot.high{background:#2dd4bf;}

/* ── PREDICCIONES ────────────────────────────────── */
.pcard-pred{grid-column:1/-1;display:flex;align-items:center;gap:8px;padding-top:6px;border-top:1px solid var(--border2);margin-top:2px;}
.pcard-pred-label{font-size:.55rem;font-weight:600;color:var(--muted2);text-transform:uppercase;letter-spacing:.6px;white-space:nowrap;margin-right:2px;}
.pcard-pred-pct{font-size:.68rem;font-weight:800;min-width:34px;letter-spacing:.3px;}
.pcard-pred-pct.local{color:var(--purple-l);text-align:left;}
.pcard-pred-pct.visit{color:var(--teal-l);text-align:right;}
.pcard-pred-bar{flex:1;height:12px;border-radius:6px;background:rgba(45,212,191,.2);overflow:hidden;position:relative;}
.pcard-pred-fill{height:100%;border-radius:6px;background:linear-gradient(90deg,rgba(139,92,246,.9),rgba(139,92,246,.6));}

/* ── POS TABS ────────────────────────────────────── */
.pos-tab-bar{display:flex;gap:8px;padding:16px 20px 0;max-width:900px;margin:0 auto;}
.pos-tab{padding:7px 18px;border-radius:20px;font-size:.76rem;font-weight:700;border:1px solid var(--border2);background:transparent;color:var(--muted);cursor:pointer;font-family:inherit;transition:all .15s;}
.pos-tab.active{background:rgba(139,92,246,.18);border-color:rgba(139,92,246,.6);color:var(--purple-l);}
.pos-tab:hover:not(.active){background:rgba(139,92,246,.08);}

/* ── POST TEMPORADA ──────────────────────────────── */
.playoff-outer{padding:20px;max-width:900px;margin:0 auto;}
.playoff-phase-block{padding:20px;max-width:900px;margin:0 auto;}
.playoff-phase-title{font-size:1.1rem;font-weight:900;letter-spacing:.5px;color:var(--text-bright);margin-bottom:18px;padding-bottom:10px;border-bottom:2px solid var(--border);}
.playoff-conf-title{font-size:.75rem;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--purple-l);border-bottom:2px solid var(--purple);padding-bottom:6px;margin-bottom:16px;}
.playoff-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:32px;}
.series-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;}
.series-card-top{padding:14px 16px 10px;}
.series-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;}
.series-team{display:flex;flex-direction:column;align-items:center;gap:5px;width:80px;}
.series-team img{width:38px;height:38px;object-fit:contain;}
.series-team-name{font-size:.6rem;font-weight:700;color:var(--muted);text-align:center;line-height:1.2;}
.series-team-name.lead{color:var(--text-bright);font-weight:800;}
.series-score-wrap{text-align:center;flex:1;}
.series-score{font-size:1.9rem;font-weight:900;color:var(--text-bright);line-height:1;letter-spacing:2px;}
.series-score-vs{font-size:.75rem;font-weight:700;color:var(--muted2);letter-spacing:2px;margin-top:2px;}
.series-status{text-align:center;font-size:.58rem;font-weight:700;letter-spacing:.4px;color:var(--muted2);text-transform:uppercase;margin-top:4px;padding-bottom:2px;}
.series-status .lead-name{color:var(--purple-l);}
.series-games{display:flex;flex-direction:column;border-top:1px solid var(--border2);}
.series-game{display:flex;align-items:center;gap:6px;padding:7px 14px;border-bottom:1px solid var(--border2);}
.series-game:last-child{border-bottom:none;}
.series-game.sg-played{background:transparent;}
.series-game.sg-next{background:rgba(139,92,246,.04);}
.sg-label{color:var(--muted2);font-size:.58rem;font-weight:700;letter-spacing:.3px;width:18px;flex-shrink:0;}
.sg-scores{display:flex;align-items:center;gap:5px;min-width:72px;}
.sg-pts{font-size:.78rem;font-weight:600;color:var(--muted);width:26px;text-align:center;}
.sg-pts.w{color:var(--text-bright);font-weight:800;}
.sg-sep{color:var(--border);font-size:.65rem;}
.sg-date{color:var(--muted2);font-size:.58rem;flex:1;}
.sg-hora{color:var(--muted);font-size:.7rem;font-weight:700;flex:1;}
.sg-next-pill{font-size:.52rem;font-weight:800;letter-spacing:.4px;padding:2px 6px;border-radius:4px;color:#fbbf24;border:1px solid rgba(251,191,36,.3);background:rgba(251,191,36,.08);white-space:nowrap;}
.sg-stats-btn{margin-left:auto;background:rgba(139,92,246,.1);border:1px solid rgba(139,92,246,.25);color:var(--purple-l);font-size:.57rem;font-weight:700;padding:2px 8px;border-radius:10px;cursor:pointer;font-family:inherit;letter-spacing:.3px;transition:all .15s;white-space:nowrap;}
.sg-stats-btn:hover{background:rgba(139,92,246,.22);border-color:rgba(139,92,246,.55);}

/* ── RADAR CHART ─────────────────────────────────── */
.radar-outer{padding:24px 40px 48px;max-width:1100px;margin:0 auto;}
.radar-controls{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:28px;}
.radar-search-group{display:flex;flex-direction:column;gap:6px;min-width:240px;}
.radar-search-group label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);}
.radar-search-wrap{position:relative;}
.radar-search-input{width:100%;background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:9px 14px;color:var(--text);font-size:.85rem;font-family:'Inter',sans-serif;outline:none;transition:border-color .2s;}
.radar-search-input:focus{border-color:var(--purple);}
.radar-autocomplete{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--surface2);border:1px solid var(--border);border-radius:8px;z-index:100;max-height:220px;overflow-y:auto;display:none;box-shadow:0 8px 32px rgba(0,0,0,.5);}
.radar-autocomplete.open{display:block;}
.radar-ac-item{padding:9px 14px;cursor:pointer;font-size:.82rem;border-bottom:1px solid var(--border2);display:flex;justify-content:space-between;align-items:center;}
.radar-ac-item:last-child{border-bottom:none;}
.radar-ac-item:hover,.radar-ac-item.focused{background:rgba(139,92,246,.15);}
.radar-ac-name{color:var(--text);font-weight:600;}
.radar-ac-team{color:var(--muted);font-size:.75rem;}
.radar-cmp-toggle{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.8rem;color:var(--muted);padding:10px 0;user-select:none;white-space:nowrap;}
.radar-cmp-toggle input{accent-color:var(--purple);}
.radar-min-note{font-size:.7rem;color:var(--muted2);margin-top:4px;font-style:italic;}
.radar-chart-area{display:flex;gap:32px;align-items:flex-start;justify-content:center;flex-wrap:wrap;}
.radar-svg-wrap{position:relative;flex-shrink:0;}
.radar-svg-wrap svg{display:block;}
.radar-legend-block{display:flex;flex-direction:column;gap:10px;min-width:180px;padding-top:16px;}
.radar-legend-title{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);margin-bottom:4px;}
.radar-legend-row{display:flex;align-items:center;gap:10px;font-size:.8rem;}
.radar-legend-swatch{width:14px;height:14px;border-radius:3px;flex-shrink:0;}
.radar-legend-label{color:var(--text);}
.radar-legend-val{color:var(--muted);margin-left:auto;font-variant-numeric:tabular-nums;}
.radar-empty{text-align:center;padding:60px 0;color:var(--muted);font-size:.9rem;}
.radar-axis-defs{margin-top:24px;}
.radar-axis-defs-title{font-size:.68rem;font-weight:700;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;}
.radar-axis-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.radar-axis-card{background:var(--surface);border-radius:10px;padding:10px 12px;border:1px solid rgba(139,92,246,.15);display:flex;flex-direction:column;gap:5px;}
.radar-axis-card-header{display:flex;align-items:center;justify-content:space-between;gap:6px;}
.radar-axis-card-label{font-size:.68rem;font-weight:800;color:var(--purple-l);letter-spacing:.06em;text-transform:uppercase;flex:1;}
.radar-axis-card-score{font-size:1.1rem;font-weight:800;color:var(--text-bright);line-height:1;}
.radar-axis-card-bar-wrap{width:100%;height:3px;background:rgba(255,255,255,.08);border-radius:2px;overflow:hidden;}
.radar-axis-card-bar{height:100%;border-radius:2px;background:var(--purple);}
.radar-axis-card-metrics{display:flex;flex-wrap:wrap;gap:3px 6px;}
.radar-axis-metric{font-size:.6rem;color:var(--muted);background:rgba(255,255,255,.05);border-radius:4px;padding:2px 5px;white-space:nowrap;}
.radar-main-row{display:flex;gap:28px;align-items:flex-start;flex-wrap:wrap;}
.radar-chart-col{flex:0 0 auto;max-width:100%;}
.radar-similar-col{flex:1 1 190px;min-width:180px;}
.radar-similar-title{font-size:.7rem;font-weight:700;color:var(--muted);letter-spacing:.07em;text-transform:uppercase;margin-bottom:10px;}
.radar-sim-item{display:flex;flex-direction:column;gap:4px;padding:8px 10px;border-radius:8px;background:var(--surface);margin-bottom:7px;cursor:default;}
.radar-sim-header{display:flex;justify-content:space-between;align-items:baseline;gap:6px;}
.radar-sim-name{font-size:.78rem;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.radar-sim-meta{font-size:.68rem;color:var(--muted);white-space:nowrap;}
.radar-sim-score-row{display:flex;align-items:center;gap:6px;}
.radar-sim-bar-wrap{flex:1;height:3px;background:rgba(255,255,255,.08);border-radius:2px;overflow:hidden;}
.radar-sim-bar{height:100%;background:var(--purple);border-radius:2px;}
.radar-sim-score{font-size:.68rem;font-weight:700;color:var(--purple-l);}
.radar-cards-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px;}
.radar-card{background:var(--surface);border-radius:10px;padding:10px 8px 8px;display:flex;flex-direction:column;align-items:center;gap:3px;border:1px solid rgba(139,92,246,.18);}
.radar-card-lbl{font-size:.6rem;font-weight:700;color:var(--purple-l);letter-spacing:.06em;text-transform:uppercase;}
.radar-card-val{font-size:1.55rem;font-weight:800;color:var(--text-bright);line-height:1;}
.radar-card-val-b{font-size:.82rem;font-weight:700;color:#2dd4bf;line-height:1;}
.radar-card-bar-wrap{width:100%;height:4px;background:rgba(255,255,255,.08);border-radius:2px;overflow:hidden;margin-top:2px;}
.radar-card-bar{height:100%;background:var(--purple);border-radius:2px;}

/* ── RESPONSIVE ──────────────────────────────────── */
@media (max-width:640px){

  /* Header */
  .header{padding:10px 14px;}
  .ball-icon{width:44px;height:44px;font-size:14px;}
  .header-left{gap:11px;}
  .header-left img{width:44px!important;height:44px!important;}
  .title{font-size:.92rem;}
  .subtitle{font-size:.6rem;margin-top:2px;}
  #lastUpdate{display:none;}
  .header-badges{display:none;}

  /* Main tabs — horizontal scroll with fade hint */
  .main-tabs{
    padding:0;
    overflow-x:auto;flex-wrap:nowrap;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity;
  }
  .main-tabs::-webkit-scrollbar{display:none;}
  .main-tab{
    padding:13px 14px;
    font-size:.72rem;
    white-space:nowrap;
    flex-shrink:0;
    scroll-snap-align:start;
    gap:5px;
  }
  .main-tab svg{width:12px;height:12px;}

  /* Sub tabs */
  .sub-tabs{padding:0;overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;}
  .sub-tabs::-webkit-scrollbar{display:none;}
  .sub-tab{padding:9px 16px;font-size:.71rem;flex-shrink:0;gap:5px;}
  .sub-tab svg{width:11px;height:11px;}

  /* Controls / Sidebar */
  .controls{padding:0 12px;}
  .ctrl-collapse-toggle{display:flex;}
  .sidebar-layout{flex-direction:column;}
  .ctrl-sidebar{width:100%;min-width:0;position:static;max-height:none;border-right:none;border-bottom:1px solid var(--border2);display:none;}
  .ctrl-sidebar.sb-open{display:flex;}
  .ctrl-bar{gap:6px;}
  .search-wrap{width:100%;flex-basis:100%;}
  .ctrl-sep{display:none;}
  .ctrl-spacer{display:none;}
  .stat-count{font-size:.72rem;}
  .ctrl-filters{padding-bottom:8px;}
  .filter-row{flex-wrap:wrap;}
  .filter-row .flbl{width:auto;}
  .filter-row select{min-width:110px;font-size:.78rem;}
  .filter-grid{grid-template-columns:1fr;}
  .filter2-row{flex-wrap:wrap;}

  /* Tables */
  .tbl-toggle-wrap{padding:8px 12px;flex-direction:row;align-items:center;flex-wrap:wrap;gap:6px;}
  .tbl-toggle button{padding:6px 10px;font-size:.72rem;}
  .cmp-toggle-btn{font-size:.72rem;padding:6px 10px;}
  .table-wrap{padding:10px 8px 8px;overflow-x:auto;-webkit-overflow-scrolling:touch;}
  .table-wrap::-webkit-scrollbar{height:5px;}
  .table-wrap::-webkit-scrollbar-track{background:rgba(255,255,255,.04);}
  .table-wrap::-webkit-scrollbar-thumb{background:rgba(139,92,246,.5);border-radius:4px;}
  .table-card{transform:none;overflow-x:visible;}
  .table-card>table{transform:none;white-space:nowrap;}
  .table-card th,.table-card td{white-space:nowrap;}
  .sidebar-main{overflow:visible;border-left:none;}
  .scroll-bar-outer{display:none;}

  /* Leaders */
  .leaders-outer{padding:16px 10px 32px;}
  .leaders-grid{grid-template-columns:1fr;}

  /* Chart */
  .chart-outer{padding:12px 10px 24px;}
  .chart-controls{gap:10px;padding:12px 12px;}
  .axis-group{min-width:120px;}

  /* Standings */
  .pos-outer{padding:14px 8px;}
  .pos-table{font-size:.8rem;}
  .pos-table th{padding:8px 8px;}
  .pos-table td{padding:10px 8px;}
  .pos-logo,.pos-logo-ph{width:26px;height:26px;}
  tbody td{padding:10px 8px;}

  /* Comparison grid */
  .cmp-content{grid-template-columns:1fr;}
  .cmp-selectors{flex-direction:column;align-items:stretch;}
  .cmp-sel-wrap select{min-width:0;width:100%;}
  .cmp-panel{padding:14px 12px 12px;}

  /* Team games modal */
  #teamGamesModal{width:98%;max-height:92vh;border-radius:12px;}
  .tgm-scoreboard{padding:14px 12px 12px;gap:4px;}
  .tgm-sb-logo{width:38px;height:38px;}
  .tgm-sb-score{font-size:1.9rem;}
  .tgm-sb-name{font-size:.6rem;}
  .tgm-stat-row{grid-template-columns:1fr 120px 1fr;padding:9px 12px;}
  .tgm-val-l,.tgm-val-r{font-size:.9rem;}
  .tgm-stat-label{font-size:.65rem;}

  /* Partidos section */
  #pGameList{padding:14px 12px 40px;max-width:100%;}
  .partido-card{grid-template-columns:1fr auto 1fr;gap:6px;padding:10px 10px;}
  .pcard-name{font-size:.72rem;}
  .pcard-score{font-size:1.1rem;}
  .pcard-logo{width:22px;height:22px;}

  /* Shot map */
  .sm-court-wrap{width:96%;}
  .sm-controls{gap:5px;}
  .sm-toggle button{padding:4px 8px;font-size:.63rem;}
  .sm-legend{gap:10px;font-size:.63rem;}

  /* Game detail modal table */
  #teamGamesModal thead th{font-size:.56rem;padding:7px 8px;}
  #teamGamesModal tbody td{padding:7px 8px;font-size:.75rem;}

  /* Shot zone chart */
  .szc-outer{padding:16px 10px 32px;}
  .szc-search-wrap{width:100%;}
  .szc-body{flex-direction:column;}
  .szc-right-panel{flex-direction:row;gap:14px;width:100%;}

  /* Quintetos */
  .qnt-outer{padding:14px 10px 32px;}
  .qnt-header{gap:8px;}
  .qnt-players{flex-direction:column;gap:3px;}
  .qnt-table td:first-child{min-width:140px;}
  .szc-legend{flex-direction:row;gap:10px;flex:0 0 auto;}
  .szc-legend-grad{width:100%;min-height:14px;
    background:linear-gradient(to right,
      rgb(220,38,38) 0%,
      rgb(251,146,60) 30%,
      rgb(203,213,225) 50%,
      rgb(96,165,250) 70%,
      rgb(29,78,216) 100%) !important;}
  .szc-legend-grad-wrap{flex-direction:column;gap:5px;width:100%;}
  .szc-legend-grad-labels{flex-direction:row;justify-content:space-between;}
  .szc-zone-cards{flex:1;}
  .szc-zone-card-pct{font-size:.82rem;}
  .szc-player-header{flex-direction:column;gap:6px;}
  .szc-player-shots{flex-wrap:wrap;}

  /* Conexiones */
  .cnx-outer{padding:14px 10px 32px;}
  .cnx-header{gap:8px;}
  .cnx-legend{gap:12px;}

  /* Predicciones */
  .pcard-pred{gap:6px;padding-top:5px;}
  .pcard-pred-label{display:none;}
  .pcard-pred-pct{font-size:.65rem;min-width:28px;}

  /* Post temporada */
  .playoff-grid{grid-template-columns:1fr;}
  .playoff-phase-block{padding:12px 14px;}
  .series-card-top{padding:10px 12px 8px;}

  /* Radar */
  .radar-outer{padding:14px 10px 32px;}
  .radar-controls{flex-direction:column;gap:10px;align-items:center;width:100%;}
  .radar-search-group{min-width:0;width:100%;max-width:340px;}
  .radar-chart-col{width:100%;}
  .radar-similar-col{min-width:100%;}
  .radar-svg-wrap{width:100%;max-width:380px;}
  .radar-cards-row{grid-template-columns:repeat(3,1fr);gap:6px;}
  .radar-axis-grid{grid-template-columns:repeat(2,1fr);}
}

/* ── Leaders filters ─────────────────────────────────────────────────────── */
.leaders-select {
  appearance: none;
  background: var(--surface2);
  border: 1px solid var(--border2);
  color: var(--text);
  padding: 5px 28px 5px 11px;
  border-radius: 20px;
  font-size: 0.72rem;
  font-family: inherit;
  font-weight: 600;
  cursor: pointer;
  outline: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23a78bfa' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 9px center;
  transition: border-color .15s, background-color .15s;
}
.leaders-select:hover { border-color: rgba(139,92,246,.5); background-color: var(--surface3); }
.leaders-select option { background: var(--surface2); color: var(--text); }
