/* SPVA Independent — Glassy Crystal Light
   Claro, fresco, cristalizado y minimalista. Capa visual aislada: no cambia datos ni lógica. */
:root {
  color-scheme: light;
  --bg: #eaf3f7;
  --panel: rgba(255,255,255,.46);
  --panel-2: rgba(255,255,255,.32);
  --line: rgba(255,255,255,.78);
  --line-strong: rgba(137,171,189,.34);
  --text: #263f4e;
  --muted: #627b89;
  --cyan: #438da5;
  --violet: #8384b6;
  --green: #2c846b;
  --amber: #a8752a;
  --red: #b34e60;
  --radius: 18px;
}
html { color-scheme: light; background: #eaf3f7; }
body {
  color: var(--text);
  background:
    radial-gradient(ellipse at 8% 7%, rgba(255,255,255,.96), transparent 35%),
    radial-gradient(ellipse at 86% 12%, rgba(190,224,236,.76), transparent 36%),
    radial-gradient(ellipse at 78% 84%, rgba(221,224,242,.54), transparent 35%),
    radial-gradient(ellipse at 15% 92%, rgba(203,231,224,.56), transparent 38%),
    linear-gradient(135deg,#eaf3f7 0%,#f7fafb 48%,#dcebf1 100%);
  background-attachment: fixed;
}
body::before {
  content:""; position:fixed; inset:-6%; z-index:-1; pointer-events:none;
  background:
    radial-gradient(ellipse at 20% 20%,rgba(255,255,255,.55),transparent 35%),
    radial-gradient(ellipse at 80% 30%,rgba(255,255,255,.34),transparent 30%),
    linear-gradient(118deg,rgba(255,255,255,.15),transparent 40%,rgba(255,255,255,.22));
  filter: blur(24px);
}
.shell { background: transparent; }
.sidebar {
  background: rgba(244,250,252,.42);
  border-right: 1px solid rgba(255,255,255,.82);
  box-shadow: 8px 0 36px rgba(65,101,121,.055);
  backdrop-filter: blur(30px) saturate(150%);
  -webkit-backdrop-filter: blur(30px) saturate(150%);
}
.brand-mark {
  color:#3e8299; border-color:rgba(255,255,255,.92);
  background:rgba(255,255,255,.48); box-shadow:inset 0 1px rgba(255,255,255,.9),0 6px 18px rgba(75,122,143,.08);
}
.brand b { color:#2b4554; }
.brand small { color:#568ca1; }
.league-chip {
  color:#38596a; background:rgba(255,255,255,.42);
  border-color:rgba(255,255,255,.85); box-shadow:inset 0 1px rgba(255,255,255,.8);
}
.season { color:#708693; }
.live-dot { background:#3b9b7c; box-shadow:0 0 0 3px rgba(59,155,124,.10); }
.nav-link { color:#587180; }
.nav-link span { color:#7596a6; }
.nav-link:hover,.nav-link.active {
  color:#294b5c;
  background:rgba(255,255,255,.58);
  box-shadow:inset 3px 0 #78b8c9,0 5px 16px rgba(66,108,128,.06);
}
.nav-link.active span { color:#438da5; }
.system-state {
  background:rgba(255,255,255,.42); border-color:rgba(255,255,255,.82);
  box-shadow:inset 0 1px rgba(255,255,255,.72);
}
.system-state b { color:#365363; }
.system-state small,.sidebar-bottom>.muted { color:#758b98; }
.main { min-width:0; }
.topbar {
  background:rgba(245,250,252,.24);
  border-bottom-color:rgba(255,255,255,.48);
  backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px);
}
.eyebrow,.kicker { color:#558da3; }
.date-line { color:#294656; }
.source-health { color:#6a818e; }
.hero {
  background:linear-gradient(128deg,rgba(255,255,255,.48),rgba(255,255,255,.19) 58%,rgba(211,234,242,.36));
  border:1px solid rgba(255,255,255,.82);
  box-shadow:0 18px 46px rgba(66,101,120,.08),inset 0 1px rgba(255,255,255,.86);
  backdrop-filter:blur(28px) saturate(145%); -webkit-backdrop-filter:blur(28px) saturate(145%);
}
.hero h1,.hero-copy h1 { color:#294555; }
.hero h1 em,.hero-copy h1 em { color:#548fa5; }
.hero p,.small-note { color:#607987; }
.hero-art { opacity:.76; }
.orbit { border-color:rgba(76,146,169,.24); }
.ball { background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(173,216,229,.74)); border-color:rgba(255,255,255,.95); box-shadow:0 16px 40px rgba(74,133,154,.16),inset 0 2px 5px rgba(255,255,255,.95); }
.art-label { color:#58899c; background:rgba(255,255,255,.46); border-color:rgba(255,255,255,.84); }
.stat-card,.panel,.card,.game-card,.player-card,.team-card,.metric-card,.table-wrap,.filter-row,.empty-state,.detail-panel,.result-card {
  color:#2c4554;
  background:linear-gradient(145deg,rgba(255,255,255,.60),rgba(255,255,255,.28) 62%,rgba(229,242,247,.36));
  border:1px solid rgba(255,255,255,.84);
  box-shadow:0 12px 32px rgba(66,101,120,.075),inset 0 1px 0 rgba(255,255,255,.88);
  backdrop-filter:blur(26px) saturate(145%); -webkit-backdrop-filter:blur(26px) saturate(145%);
}
.stat-card span,.stat-card small,.section-desc,.muted { color:#69818f; }
.stat-card strong { color:#2b4858; }
.section-heading h2 { color:#2c4655; }
.section-heading .section-desc { color:#6b8290; }
.count-pill {
  color:#4c778b; background:rgba(255,255,255,.48);
  border-color:rgba(255,255,255,.86);
}
.primary-button,.upload-button,.cta,.button-primary {
  color:#fff; background:linear-gradient(135deg,#568fa5,#6aa9b8);
  border:1px solid rgba(255,255,255,.62); box-shadow:0 8px 22px rgba(68,132,153,.16);
}
.primary-button:hover,.upload-button:hover,.cta:hover,.button-primary:hover { filter:brightness(1.04); }
.filter-row { background:rgba(255,255,255,.28); }
.searchbox, input, select, textarea {
  color:#304b5a; background:rgba(255,255,255,.60);
  border-color:rgba(140,171,188,.36);
}
.searchbox input { background:transparent; color:#304b5a; }
input::placeholder { color:#8a9da7; }
input:focus,select:focus,textarea:focus { outline:2px solid rgba(67,141,165,.28); border-color:rgba(67,141,165,.48); }
button { color:#3a5c6d; }
table { color:#304a59; }
table th { color:#6b8390; background:rgba(255,255,255,.30); }
table td { border-color:rgba(136,168,184,.18); }
table tr:hover td { background:rgba(255,255,255,.42); }
.empty-state { color:#4d6878; }
.empty-state p { color:#718895; }
.badge,.status-pill,.state-pill { box-shadow:none; }
.good,.success,.status-good { color:#26775f; background:rgba(44,132,107,.10); border-color:rgba(44,132,107,.20); }
.warning,.partial,.status-warn { color:#94651e; background:rgba(168,117,42,.10); border-color:rgba(168,117,42,.20); }
.error,.failed,.status-bad { color:#a84758; background:rgba(179,78,96,.09); border-color:rgba(179,78,96,.18); }
.progress,.bar-track,.pbar .tr { background:rgba(98,133,151,.14); }
.progress>span,.bar-fill,.pbar .fl { background:linear-gradient(90deg,#73b7c8,#8d9fca); }
footer { color:#78909d; }
a { color:#397f99; }
a:hover { color:#285d73; }
:focus-visible { outline:2px solid rgba(67,141,165,.62); outline-offset:3px; }
::selection { background:rgba(105,177,197,.24); }
::-webkit-scrollbar-thumb { background:rgba(99,140,159,.30); border-color:#eaf3f7; }
@media(max-width:900px) {
  .sidebar { background:rgba(241,248,251,.90); }
  .topbar { background:rgba(245,250,252,.64); }
}
@media(prefers-reduced-transparency:reduce) {
  .sidebar,.hero,.stat-card,.panel,.card,.game-card,.player-card,.team-card,.metric-card,.table-wrap,.filter-row,.empty-state,.detail-panel,.result-card {
    backdrop-filter:none; -webkit-backdrop-filter:none; background:rgba(248,252,254,.96);
  }
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation-duration:.01ms!important; transition-duration:.01ms!important; scroll-behavior:auto!important; }
}


/* Componentes de contenido profundo: mantener coherencia con el cristal claro. */
.section { border-top-color: rgba(255,255,255,.58); }
.game-card,.method-grid article,.schedule-grid article,.h2h-grid article,
.player-card,.team-card,.metric-card,.detail-panel,.result-card {
  color:#2c4554;
  background:linear-gradient(145deg,rgba(255,255,255,.64),rgba(255,255,255,.30) 64%,rgba(224,239,245,.40));
  border-color:rgba(255,255,255,.86);
  box-shadow:0 10px 26px rgba(66,101,120,.065),inset 0 1px rgba(255,255,255,.9);
  backdrop-filter:blur(22px) saturate(140%);
  -webkit-backdrop-filter:blur(22px) saturate(140%);
}
.game-card:hover { border-color:rgba(88,155,177,.54); }
.game-card.selected { border-color:rgba(67,141,165,.66); box-shadow:0 0 0 2px rgba(67,141,165,.09),0 12px 28px rgba(66,101,120,.08); }
.game-card-head { color:#688391; border-bottom-color:rgba(136,168,184,.22); }
.game-card-foot { background:rgba(255,255,255,.24); border-top-color:rgba(136,168,184,.22); }
.method-grid h3,.schedule-grid b { color:#365565; }
.schedule-grid time { color:#438da5; }
.schedule-grid .partial { border-color:rgba(168,117,42,.28); background:linear-gradient(145deg,rgba(255,250,239,.74),rgba(255,255,255,.32)); }
.schedule-grid .partial time { color:#94651e; }
.schedule-grid .general { border-color:rgba(131,132,182,.34); background:linear-gradient(145deg,rgba(245,244,255,.78),rgba(255,255,255,.34)); }
.schedule-grid .general time { color:#7375a9; }
.game-card-foot span,.method-grid p,.schedule-grid small { color:#6b8290; }
.table-wrap { background:rgba(255,255,255,.34); }
tbody tr:nth-child(even) td { background:rgba(255,255,255,.16); }
tbody tr:hover td { background:rgba(255,255,255,.42); }
.text-button { color:#397f99; }
.data-disclaimer { color:#6b8290; }
@media(max-width:760px) {
  .sidebar { background:rgba(244,250,252,.94); border-right:0; border-bottom:1px solid rgba(255,255,255,.86); }
  .topbar { background:rgba(245,250,252,.74); }
}
