.catalog { width:min(1180px,calc(100% - 32px));margin:auto;padding:44px 0 70px; }
.catalog-nav { display:flex;gap:8px 14px;flex-wrap:wrap;margin-bottom:30px; }
.catalog-nav a { display:inline-flex;align-items:center;min-height:40px;color:var(--muted);font-size:.76rem;font-weight:800;text-decoration:none; }
.catalog-nav a:first-child { color:var(--green); }
.catalog-head { display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:24px; }
.catalog-head h1 { margin:0;font-size:clamp(2.2rem,5vw,4.2rem);line-height:1;letter-spacing:-.05em; }
.catalog-head h1 span { color:var(--green); }
.catalog-head p:not(.eyebrow) { max-width:620px;margin:14px 0 0;color:var(--muted); }
.catalog-controls { display:flex;gap:10px;flex-wrap:wrap;margin:18px 0;padding:13px;border:1px solid var(--line);border-radius:14px;background:var(--surface); }
.catalog-controls select,.catalog-controls input { min-height:42px;min-width:220px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft);color:var(--ink);padding:0 12px; }
.team-directory-filters { display:grid;grid-template-columns:minmax(300px,1.25fr) minmax(240px,1fr) auto;align-items:end;gap:12px; }
.team-directory-filters .league-picker { width:100%; }
.team-directory-filters .league-picker-button { min-height:48px; }
.team-directory-filters .catalog-result-count { padding-bottom:14px;white-space:nowrap; }
.player-filters { display:grid;grid-template-columns:minmax(210px,1fr) minmax(210px,.8fr) minmax(220px,1fr) auto;align-items:end;gap:12px; }
.catalog-filter-field { display:grid;gap:7px;min-width:0;color:var(--muted);font-size:.62rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase; }
.catalog-filter-field select,.catalog-filter-field input { width:100%;min-width:0; }
.player-filters .league-picker { width:100%; }
.player-filters .league-picker-button { min-height:42px; }
.player-filters .picker-search { min-width:0; }
.player-filters>button { min-height:42px;padding-inline:22px; }
.player-filters .catalog-result-count { grid-column:1/-1;margin:-3px 0 0;text-align:right; }
.catalog-result-count { align-self:center;margin-left:auto;color:var(--muted);font-size:.68rem;font-weight:800; }
.catalog-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:12px; }
.catalog-card { padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);text-decoration:none; }
.team-directory-card { position:relative;padding-right:62px; }.favorite-button { position:absolute;top:9px;right:9px;width:44px;min-height:44px;padding:0;border:1px solid var(--line);background:var(--surface-soft);color:var(--muted);font-size:1rem; }.favorite-button.active,#favorite-team.active { border-color:#f6bc4d;color:#f6bc4d; }
.catalog-card:hover { border-color:rgba(84,227,142,.35);background:var(--surface-raised); }
.catalog-card-head { display:flex;align-items:center;gap:12px; }
.catalog-card img { width:42px;height:42px;object-fit:contain;border-radius:10px;background:#f5f8f6;padding:4px; }
.catalog-logo-placeholder { width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft); }
.catalog-card h3 { margin:0;font-size:.9rem; }
.catalog-card p { margin:8px 0 0;color:var(--muted);font-size:.7rem; }
.catalog-card small { display:block;margin-top:12px;color:var(--green);font-size:.65rem;font-weight:800; }
.catalog-summary { min-width:180px;padding:16px 18px;border:1px solid var(--line);border-radius:15px;background:var(--surface); }
.catalog-summary strong,.catalog-summary span,.catalog-summary small { display:block; }
.catalog-summary strong { color:var(--green);font-size:1.8rem;line-height:1; }
.catalog-summary span { margin-top:5px;color:var(--ink);font-size:.68rem;font-weight:800; }
.catalog-summary small { margin-top:4px;color:var(--muted);font-size:.61rem; }
.competition-directory-filters { display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:18px 0 24px;padding:12px 16px;border:1px solid var(--line);border-radius:16px;background:var(--surface); }
.competition-search-field { position:relative;flex:1 1 320px;min-width:240px; }
.competition-search-field input { width:100%;height:44px;padding:0 36px 0 14px;border:1px solid var(--line);border-radius:11px;background:var(--surface-soft);color:var(--ink);font-size:.82rem;outline:none;transition:border-color .15s; }
.competition-search-field input::-webkit-search-cancel-button,
.competition-search-field input::-webkit-search-decoration { -webkit-appearance:none;appearance:none;display:none; }
.competition-search-field input:focus { border-color:var(--green); }
.search-clear-btn { position:absolute;right:10px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:var(--muted);font-size:1.3rem;cursor:pointer;padding:4px 8px;line-height:1; }
.search-clear-btn:hover { color:var(--ink); }
.competition-filter-pills { display:flex;gap:8px;flex-wrap:wrap; }
.competition-filter-pills .pill-btn { min-height:38px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:.72rem;font-weight:800;cursor:pointer;transition:all .15s;white-space:nowrap; }
.competition-filter-pills .pill-btn:hover { border-color:rgba(84,227,142,.4);color:var(--ink); }
.competition-filter-pills .pill-btn.active { border-color:var(--green);background:rgba(84,227,142,.12);color:var(--green); }
.competition-filter-pills .pill-btn.pill-fav.active { border-color:#f6bc4d;background:rgba(246,188,77,.12);color:#f6bc4d; }
.competition-directory-card { display:flex;flex-direction:column;position:relative;transition:border-color .18s,transform .18s; }
.competition-directory-card.is-favorite { border-color:rgba(246,188,77,.45);box-shadow:0 0 16px rgba(246,188,77,.08); }
.competition-directory-card .catalog-card-head { padding-right:46px; }
.competition-directory-card .favorite-button { position:absolute;top:14px;right:14px;width:38px;height:38px;min-height:38px;padding:0;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft);color:var(--muted);font-size:1.15rem;display:grid;place-items:center;cursor:pointer;transition:all .15s;line-height:1;z-index:2; }
.competition-directory-card .favorite-button:hover { border-color:#f6bc4d;color:#f6bc4d;transform:scale(1.05); }
.competition-directory-card .favorite-button.active { border-color:#f6bc4d;color:#f6bc4d;background:rgba(246,188,77,.15);box-shadow:0 0 10px rgba(246,188,77,.2); }
.competition-season-picker { display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;margin-top:15px;color:var(--muted);font-size:.62rem;font-weight:800;text-transform:uppercase; }
.competition-season-picker select { min-width:0;width:100%;min-height:44px;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:var(--surface-soft);color:var(--ink);font-size:.72rem;text-transform:none; }
.competition-card-foot { display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px; }
.competition-card-foot small { margin:0;color:var(--muted); }
.competition-card-foot a { color:var(--green);font-size:.65rem;font-weight:800;text-decoration:none;white-space:nowrap; }
.metric-row { display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:13px; }
.metric-row span { padding:8px;border:1px solid var(--line);border-radius:9px;color:var(--muted);font-size:.59rem;text-transform:uppercase; }
.metric-row b { display:block;color:var(--ink);font-size:.88rem; }
.coverage { height:5px;margin-top:12px;border-radius:999px;background:var(--surface-soft);overflow:hidden; }
.coverage i { display:block;height:100%;background:var(--green); }
.catalog-empty { grid-column:1/-1;padding:34px;border:1px dashed var(--line);border-radius:14px;color:var(--muted);text-align:center; }
.catalog-empty strong,.catalog-empty span { display:block; }.catalog-empty strong { color:var(--ink); }.catalog-empty span { margin-top:7px;font-size:.72rem; }
.competition-center .catalog-head select { min-width:180px;min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:11px;background:var(--surface-soft);color:var(--ink); }
.competition-identity { display:flex;align-items:center;gap:18px; }
.competition-identity>img { width:76px;height:76px;object-fit:contain;padding:9px;border-radius:17px;background:#f5f8f6; }
.competition-center-season { display:grid;gap:6px;color:var(--muted);font-size:.62rem;font-weight:800;text-transform:uppercase; }
.competition-kpis { display:grid;grid-template-columns:repeat(6,1fr);gap:9px;margin:18px 0; }
.competition-kpis div { padding:15px;border:1px solid var(--line);border-radius:13px;background:var(--surface); }
.competition-kpis span,.competition-kpis strong { display:block; }.competition-kpis span { color:var(--muted);font-size:.61rem;text-transform:uppercase; }.competition-kpis strong { margin-top:5px;font-size:1.25rem; }
.competition-layout { display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:13px;margin-top:18px; }
.competition-panel { padding:18px;border:1px solid var(--line);border-radius:17px;background:var(--surface); }
.competition-panel-head { display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:14px; }.competition-panel-head h2 { margin:0;font-size:1.1rem; }.competition-panel-head a { color:var(--green);font-size:.67rem;font-weight:800;text-decoration:none; }
.table-scroll { overflow:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch; }.standings { width:100%;border-collapse:collapse;white-space:nowrap; }.standings th,.standings td { padding:10px 8px;border-bottom:1px solid var(--line);font-size:.68rem;text-align:center; }.standings th { color:var(--muted);font-size:.57rem;text-transform:uppercase; }.standings th:nth-child(2),.standings td:nth-child(2){text-align:left}.standings td a { display:flex;align-items:center;gap:8px;color:var(--ink);font-weight:800;text-decoration:none; }.standings img { width:25px;height:25px;object-fit:contain;padding:2px;border-radius:7px;background:#f5f8f6; }
.competition-matches { display:grid;gap:7px; }.competition-matches a { display:grid;grid-template-columns:54px 1fr;gap:8px;padding:10px;border:1px solid var(--line);border-radius:10px;color:var(--ink);font-size:.67rem;text-decoration:none; }.competition-matches a:hover { border-color:rgba(84,227,142,.35); }.competition-matches time { color:var(--muted);text-transform:uppercase; }.competition-matches span { display:flex;justify-content:space-between;gap:6px; }.competition-matches b { color:var(--green);white-space:nowrap; }
.competition-rounds,.competition-players { margin-top:18px; }
.round-select { display:grid;gap:5px;color:var(--muted);font-size:.58rem;font-weight:800;text-transform:uppercase; }
.round-select select { min-width:230px;min-height:42px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft);color:var(--ink);font-size:.76rem; }
.round-tabs { display:flex;gap:7px;overflow:auto;padding:2px 0 10px;scrollbar-width:thin; }
.round-tabs button { flex:0 0 76px;display:grid;gap:3px;padding:9px;border:1px solid var(--line);border-radius:11px;background:var(--surface-soft);color:var(--ink);cursor:pointer;text-align:left; }
.round-tabs button.active { border-color:var(--green);box-shadow:inset 0 0 0 1px rgba(84,227,142,.2); }
.round-tabs span { font-weight:900;font-size:.75rem; }.round-tabs small { color:var(--muted);font-size:.53rem;text-transform:uppercase; }
.round-kpis { display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:10px 0 18px; }
.round-kpis div,.round-stats div { padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--surface-soft); }
.round-kpis span,.round-kpis strong,.round-stats span,.round-stats strong { display:block; }.round-kpis span,.round-stats span { color:var(--muted);font-size:.56rem;text-transform:uppercase; }.round-kpis strong,.round-stats strong { margin-top:4px;font-size:1rem; }
.round-layout { display:grid;grid-template-columns:minmax(0,1.45fr) minmax(240px,.55fr);gap:18px; }.round-layout h3 { margin:0 0 10px;font-size:.78rem; }
.round-matches { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px; }
.round-matches a { display:grid;grid-template-columns:1fr auto;gap:7px;padding:11px;border:1px solid var(--line);border-radius:11px;color:var(--ink);text-decoration:none; }
.round-matches time { grid-column:1/-1;color:var(--muted);font-size:.55rem;text-transform:uppercase; }.round-matches span { grid-column:1;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:7px;font-size:.65rem; }.round-matches i { overflow:hidden;font-style:normal;text-overflow:ellipsis;white-space:nowrap; }.round-matches i:last-child { text-align:right; }.round-matches b { color:var(--green); }.round-matches small { align-self:center;color:var(--muted);font-size:.55rem; }
.round-stats { display:grid;grid-template-columns:repeat(2,1fr);gap:8px; }
.coverage-label { color:var(--muted);font-size:.62rem; }.player-round-table td:nth-child(2),.player-round-table th:nth-child(2),.player-round-table td:nth-child(3),.player-round-table th:nth-child(3) { text-align:left; }
.player-hero { display:flex;align-items:center;gap:18px;margin-bottom:22px;padding:22px;border:1px solid var(--line);border-radius:18px;background:var(--surface); }.player-hero img { width:88px;height:88px;object-fit:cover;border-radius:18px;background:var(--surface-soft); }.player-hero h1 { margin:0;font-size:clamp(2rem,5vw,3.8rem);letter-spacing:-.05em; }.player-hero p:not(.eyebrow) { margin:7px 0 0;color:var(--muted); }.player-kpis { display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:8px; }.player-kpis div { padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--surface); }.player-kpis span,.player-kpis strong { display:block; }.player-kpis span { color:var(--muted);font-size:.58rem;text-transform:uppercase; }.player-kpis strong { margin-top:4px;font-size:1.15rem; }.player-average { display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line);font-size:.72rem; }.player-average span { color:var(--muted); }
.player-kpis strong small { display:block;margin-top:2px;color:var(--muted);font-size:.58rem;font-weight:700; }
.player-layout { grid-template-columns:minmax(0,1.25fr) minmax(400px,.75fr); }
.player-legend { max-width:360px;color:var(--muted);font-size:.6rem;line-height:1.45;text-align:right; }
.player-matches td:nth-child(2) { max-width:210px;overflow:hidden;text-overflow:ellipsis; }
.player-rival { display:inline-flex;align-items:center;gap:7px;font-weight:700; }
.player-score { padding:1px 6px;border-radius:6px;background:var(--surface-soft);font-size:.6rem;font-weight:800; }
.player-score.win { color:var(--green); }.player-score.loss { color:var(--red); }.player-score.draw { color:var(--amber); }
.player-role { display:block;margin-top:2px;color:var(--muted);font-size:.56rem;text-transform:uppercase;letter-spacing:.05em; }
.player-row-dnp td { color:var(--muted); }
.player-matches .dim,.player-averages .dim { color:var(--muted);opacity:.7; }
.player-cards { white-space:nowrap; }
.player-cards .card { display:inline-block;width:9px;height:13px;margin:0 1px;border-radius:2px;vertical-align:middle; }
.player-cards .card.yellow { background:var(--amber); }.player-cards .card.red { background:var(--red); }
.player-averages th,.player-averages td { padding:8px 6px;font-size:.66rem; }
.player-averages th:first-child,.player-averages td:first-child { text-align:left;white-space:normal; }
.player-averages th:nth-child(2),.player-averages td:nth-child(2) { text-align:center; }
.player-averages td:nth-child(2) { font-weight:800; }
.sample-warning { padding:10px 12px;border:1px solid rgba(245,190,91,.35);border-radius:10px;background:rgba(245,190,91,.08);color:var(--ink);font-size:.7rem;line-height:1.5; }
.sample-warning strong { color:var(--amber); }
@media(max-width:900px){.competition-kpis,.round-kpis{grid-template-columns:repeat(3,1fr)}.competition-layout,.round-layout{grid-template-columns:1fr}.player-layout{grid-template-columns:minmax(0,1fr)}.player-filters{grid-template-columns:1fr 1fr}.player-filters>button{width:100%}.player-filters .catalog-result-count{grid-column:auto;align-self:center;text-align:right}.team-directory-filters{grid-template-columns:1fr 1fr}.team-directory-filters .catalog-result-count{grid-column:1/-1;padding-bottom:0;text-align:right}}
@media(max-width:650px){.catalog{width:min(100% - 20px,1180px);padding-top:28px}.catalog-nav{margin-bottom:20px}.catalog-head{align-items:start;flex-direction:column}.catalog-controls>*{width:100%;min-width:0!important}.catalog-result-count{margin-left:0}.player-filters,.team-directory-filters{grid-template-columns:1fr}.player-filters .catalog-result-count,.team-directory-filters .catalog-result-count{grid-column:1;text-align:left}.catalog-summary{width:100%;min-width:0}.catalog-grid{grid-template-columns:minmax(0,1fr)}.catalog-card{padding:15px}.competition-identity{align-items:flex-start}.competition-identity>img{width:58px;height:58px}.competition-card-foot{align-items:flex-start;flex-direction:column}.competition-panel{padding:14px}.player-hero{align-items:flex-start;padding:16px}.player-hero img{width:68px;height:68px}.standings th,.standings td{padding:9px 7px}}
@media(max-width:520px){.competition-kpis,.round-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.player-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.competition-kpis div,.player-kpis div{padding:12px}.round-matches{grid-template-columns:1fr}.round-select{width:100%}.round-select select{min-width:0;width:100%}.metric-row{grid-template-columns:1fr}.competition-identity{gap:12px}}

/* Tabs de navegacion en Centro de Competencia */
.competition-nav-tabs { display:flex;gap:8px;margin:22px 0 18px;padding:6px;background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow-x:auto;scrollbar-width:none; }
.competition-nav-tabs::-webkit-scrollbar { display:none; }
.competition-tab-btn { flex:1 1 auto;min-height:42px;padding:0 18px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--muted);font-size:.8rem;font-weight:800;cursor:pointer;transition:all .16s ease;white-space:nowrap;display:flex;align-items:center;justify-content:center;gap:8px; }
.competition-tab-btn:hover { color:var(--ink);background:var(--surface-soft); }
.competition-tab-btn.active { background:var(--surface-soft);border-color:rgba(84,227,142,.35);color:var(--green);box-shadow:0 2px 10px rgba(0,0,0,.2); }
.competition-tab-panel { display:none; }
.competition-tab-panel.active { display:block; }

/* Controles de listado de partidos */
.matches-list-controls { display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px;padding:12px 14px;background:var(--surface-soft);border:1px solid var(--line);border-radius:12px; }
.matches-round-filter select { min-width:230px;min-height:42px;padding:0 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font-size:.76rem;font-weight:700;cursor:pointer; }
.matches-search-filter { position:relative;flex:1 1 220px;min-width:180px; }
.matches-search-filter input { width:100%;height:42px;padding:0 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font-size:.76rem;outline:none; }
.matches-search-filter input:focus { border-color:var(--green); }

/* Listado de partidos agrupados jornada a jornada */
.full-matches-list { display:grid;gap:18px; }
.matches-round-group { display:grid;gap:0; }
.matches-round-group-header { display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:rgba(255,255,255,.04);border:1px solid var(--line);border-bottom:0;border-radius:12px 12px 0 0; }
.matches-round-title { font-size:.88rem;font-weight:900;color:var(--green);letter-spacing:.02em; }
.matches-round-status { font-size:.68rem;color:var(--muted);font-weight:700;text-transform:uppercase; }
.matches-round-items { display:grid;gap:6px;background:var(--surface-soft);border:1px solid var(--line);border-radius:0 0 12px 12px;padding:8px; }
.matches-round-items .match-list-item { display:grid;grid-template-columns:140px 120px 1fr 90px 30px;align-items:center;gap:12px;padding:12px 16px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);text-decoration:none;font-size:.78rem;transition:all .15s ease; }
.matches-round-items .match-list-item:hover { border-color:rgba(84,227,142,.35);background:rgba(255,255,255,.03); }
.match-list-time { color:var(--muted);font-size:.68rem;font-weight:700;display:flex;flex-direction:column;gap:2px; }
.match-list-round { color:var(--muted);font-size:.66rem;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.match-list-teams { display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;font-weight:800; }
.match-list-teams .team-home { text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.match-list-teams .team-away { text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.match-list-score { min-width:68px;padding:4px 10px;background:var(--surface-soft);border:1px solid var(--line);border-radius:8px;text-align:center;color:var(--green);font-weight:900;font-size:.88rem;white-space:nowrap; }
.match-list-score.is-upcoming { color:var(--muted);font-size:.72rem;font-weight:700; }
.match-list-status { text-align:center; }
.match-status-badge { display:inline-block;padding:3px 8px;border-radius:6px;font-size:.62rem;font-weight:800;text-transform:uppercase;background:rgba(255,255,255,.05);color:var(--muted); }
.match-status-badge.ft { background:rgba(84,227,142,.12);color:var(--green); }
.match-status-badge.live { background:rgba(239,68,68,.15);color:#ef4444; }
.match-list-action { text-align:right;color:var(--muted);font-size:.85rem; }
.match-list-item:hover .match-list-action { color:var(--green); }

/* Buscador de jugadores dentro de la jornada */
.player-search-box { display:flex;align-items:center;gap:10px;margin-bottom:12px; }
.player-search-box input { height:36px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft);color:var(--ink);font-size:.74rem;outline:none;width:min(280px,100%); }
.player-search-box input:focus { border-color:var(--green); }

/* Controles de estadísticas de mercado */
.market-stats-controls { display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:16px;padding:12px 16px;background:var(--surface-soft);border:1px solid var(--line);border-radius:12px; }
.market-scope-pills { display:flex;gap:6px;background:rgba(0,0,0,.25);padding:4px;border-radius:10px;border:1px solid var(--line); }
.market-scope-pills .pill-btn { min-height:36px;padding:0 14px;border-radius:8px;border:none;background:transparent;color:var(--muted);font-weight:800;font-size:.76rem;cursor:pointer;transition:all .15s ease; }
.market-scope-pills .pill-btn.active { background:var(--surface);color:var(--green);border:1px solid rgba(84,227,142,.3);box-shadow:0 2px 6px rgba(0,0,0,.25); }
.market-scope-pills .pill-btn:hover:not(.active) { color:var(--ink); }

.market-dropdowns { display:flex;gap:12px;flex-wrap:wrap;align-items:center; }
.market-select-label { display:flex;flex-direction:column;gap:3px;font-size:.64rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.04em; }
.market-select-label select { min-height:38px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font-size:.76rem;font-weight:700;cursor:pointer;outline:none; }
.market-select-label select:focus { border-color:var(--green); }

.market-search-box { flex:1 1 200px;min-width:160px;margin-left:auto; }
.market-search-box input { width:100%;height:38px;padding:0 14px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font-size:.76rem;outline:none; }
.market-search-box input:focus { border-color:var(--green); }

/* Tabla de estadísticas de mercado */
.panel-flush { margin-top: 0 !important; }
.market-stats-table td { padding:10px 14px;vertical-align:middle; }
.market-stats-table th.col-rank, .market-stats-table td.col-rank { width:44px;color:var(--muted);font-weight:700;text-align:center; }
.market-stats-table th.col-team, .market-stats-table td.col-team { font-weight:700; }
.market-stats-table th.col-pj, .market-stats-table td.col-pj { width:70px;text-align:center;font-weight:700; }
.market-stats-table th.col-hits, .market-stats-table td.col-hits { width:100px;text-align:center;font-weight:800;color:var(--ink); }
.market-stats-table th.col-pct, .market-stats-table td.col-pct { width:180px; }
.market-stats-table th.col-streak, .market-stats-table td.col-streak { width:160px;text-align:center; }
.market-team-cell { display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:inherit;font-weight:700; }
.market-team-cell img { width:20px;height:20px;object-fit:contain; }
.market-streak-empty { color:var(--muted);font-size:.7rem; }
.market-stats-table .market-pct-bar-wrap { display:flex;align-items:center;gap:10px; }
.market-pct-badge { min-width:44px;padding:3px 8px;border-radius:6px;font-weight:900;font-size:.76rem;text-align:center; }
.market-pct-badge.high { background:rgba(84,227,142,.15);color:var(--green);border:1px solid rgba(84,227,142,.3); }
.market-pct-badge.mid { background:rgba(234,179,8,.15);color:#eab308;border:1px solid rgba(234,179,8,.3); }
.market-pct-badge.low { background:rgba(239,68,68,.15);color:#ef4444;border:1px solid rgba(239,68,68,.3); }

.market-pct-track { flex:1;height:6px;background:rgba(255,255,255,.06);border-radius:3px;overflow:hidden;min-width:50px; }
.market-pct-fill { height:100%;border-radius:3px;transition:width .3s ease; }
.market-pct-fill.high { background:var(--green); }
.market-pct-fill.mid { background:#eab308; }
.market-pct-fill.low { background:#ef4444; }

/* Racha de mercado */
.market-streak { display:flex;gap:5px;align-items:center;justify-content:center; }
.streak-dot { display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;font-size:.65rem;font-weight:900;cursor:help; }
.streak-dot.hit { background:rgba(84,227,142,.2);color:var(--green);border:1px solid rgba(84,227,142,.4); }
.streak-dot.miss { background:rgba(255,255,255,.05);color:var(--muted);border:1px solid var(--line); }

@media(max-width:768px){
  .match-list-item { grid-template-columns:1fr;gap:8px;padding:12px; }
  .match-list-meta { display:flex;justify-content:space-between;align-items:center; }
}
.stat-term { display:inline;width:auto;min-width:0;min-height:0;margin:0;padding:0 0 1px;border:0;border-bottom:1px dotted currentColor;border-radius:0;background:none;box-shadow:none;color:inherit;font:inherit;line-height:inherit;text-transform:inherit;letter-spacing:inherit;text-align:inherit;white-space:nowrap;cursor:help;text-decoration:none; }
.stat-term:hover,.stat-term[aria-expanded="true"] { color:var(--green);border-bottom-style:solid; }
.stat-term:focus-visible { outline:2px solid var(--green);outline-offset:2px;border-radius:3px; }
#stat-tooltip { position:fixed;z-index:400;padding:10px 12px;border:1px solid rgba(84,227,142,.35);border-radius:10px;background:#182521;box-shadow:0 14px 30px rgba(0,0,0,.4);color:var(--ink);font-size:.72rem;line-height:1.45;text-transform:none;letter-spacing:0;pointer-events:none; }
#stat-tooltip[hidden] { display:none; }
#stat-tooltip strong { display:block;margin-bottom:3px;color:var(--green);font-size:.7rem; }
#stat-tooltip::before { content:"";position:absolute;top:-6px;left:var(--arrow-x,50%);width:10px;height:10px;border-left:1px solid rgba(84,227,142,.35);border-top:1px solid rgba(84,227,142,.35);background:#182521;transform:translateX(-50%) rotate(45deg); }
#stat-tooltip.above::before { top:auto;bottom:-6px;border:0;border-right:1px solid rgba(84,227,142,.35);border-bottom:1px solid rgba(84,227,142,.35); }
.player-legend a,.player-legend a:visited { color:var(--green);font-weight:800;text-decoration:none; }
.stat-glossary { margin-top:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft); }
.stat-glossary summary { padding:11px 14px;color:var(--green);font-size:.7rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;cursor:pointer; }
.stat-glossary dl { display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px 18px;margin:0;padding:4px 14px 14px; }
.stat-glossary dl div { padding:8px 0;border-top:1px solid var(--line); }
.stat-glossary dt { margin:0;font-size:.7rem;font-weight:800; }
.stat-glossary dd { margin:3px 0 0;color:var(--muted);font-size:.68rem;line-height:1.45; }
.stat-glossary .method-note { padding:0 14px 12px;margin:0; }
