/* STORPLAY V112 — contraste contextual. Solo portada y panel administrativo.
   No cambia el encabezado, el reproductor ni los estilos del modo claro. */
html[data-sp-theme="dark"] .sp101-shell .sp27-intro .sp27-eyebrow,
html[data-sp-theme="dark"] .sp101-shell .sp27-discover .sp27-eyebrow,
html[data-sp-theme="dark"] .sp27-intro .sp27-eyebrow {
  color:#ffe37a !important; -webkit-text-fill-color:#ffe37a !important; opacity:1 !important;
}
html[data-sp-theme="dark"] .sp101-shell .sp27-intro h1,
html[data-sp-theme="dark"] .sp101-shell .sp27-intro .sp50-hero-title {color:#fff !important;}
html[data-sp-theme="dark"] .sp101-shell .sp27-intro p {color:#e0ecf8 !important;}
html[data-sp-theme="dark"] .sp101-shell .sp27-discover input:not([type="submit"]) {
 color:#f6faff !important; caret-color:#f6faff !important;
}
html[data-sp-theme="dark"] .sp101-shell .sp27-discover input::placeholder {color:#b8cde1 !important;opacity:1 !important;}
/* Tarjetas oscuras de emisoras: textos claros */
html[data-sp-theme="dark"] .sp101-shell .sp13-card :is(.sp13-title,.sp13-title a,.sp13-title h3,.sp13-meta,.sp13-meta span,.js-now-title) {color:#f4f8ff !important;opacity:1 !important;}
/* Administración: tabla de fondo BLANCO debe usar texto OSCURO, nunca blanco */
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-table,
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-table table,
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-table :is(thead,tbody,tr,th,td) {color:#19334d !important;}
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-table :is(b,strong,.cell-main,.admin-radio b,.admin-radio strong) {color:#17334d !important;opacity:1 !important;}
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-table :is(small,.muted,.cell-sub,.admin-radio small) {color:#52677d !important;opacity:1 !important;}
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-table a:not(.admin-primary):not(.admin-secondary) {color:#075f8d !important;}
/* Barra de filtros blanca: entrada clara con texto oscuro si el fondo es blanco. */
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-filters {color:#18354d !important;}
/* Los paneles oscuros sí requieren letras claras */
html[data-sp-theme="dark"] .admin-v8-main :is(.admin-v8-panel,.admin-v8-kpis,.admin-v8-top) :is(h1,h2,h3,h4,label) {color:#f4f8ff !important;}
html[data-sp-theme="dark"] .admin-v8-main :is(.admin-v8-panel,.admin-v8-top) :is(p,.muted,.help-text) {color:#c8d9e9 !important;}


/* V113: corregir superficies CLARAS dentro del tema oscuro.
   El resumen y las tablas conservan su fondo blanco; su tipografía debe ser oscura.
   Alcance: contenido de portada y administración. NO menú ni reproductor. */
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-kpis > div,
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-panel,
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-table,
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-toolbar,
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-filters {
  color:#18334b !important;
  -webkit-text-fill-color:#18334b;
}
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-kpis > div :is(strong,b,h2,h3),
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-panel :is(h2,h3,.recent-row b,.status-summary span,.status-summary b),
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-table :is(.cell-main,b,strong) {
  color:#16324d !important;
  -webkit-text-fill-color:#16324d !important;
  opacity:1 !important;
}
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-kpis > div :is(small,p),
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-panel :is(.recent-row small,.panel-title p,.status-summary small),
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-table :is(small,.cell-sub) {
  color:#52677d !important;
  -webkit-text-fill-color:#52677d !important;
  opacity:1 !important;
}
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-panel .panel-title small {
  color:#087ca8 !important;
  -webkit-text-fill-color:#087ca8 !important;
}
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-panel a:not(.admin-primary):not(.admin-secondary):not(.admin-status),
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-table a:not(.admin-primary):not(.admin-secondary) {
  color:#075f96 !important;
  -webkit-text-fill-color:#075f96 !important;
}
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-kpis > div strong {font-weight:800 !important;}
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-panel .status-summary > div {color:#243c54 !important;}
/* El bloque superior administrativo SI tiene fondo oscuro. */
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-top :is(h1,h2,h3) {color:#f6faff !important;-webkit-text-fill-color:#f6faff !important;}
html[data-sp-theme="dark"] .admin-v8-main .admin-v8-top :is(p,small) {color:#c9deef !important;-webkit-text-fill-color:#c9deef !important;}
/* Portada oscura: títulos y llamadas de atención sobre el fondo oscuro. */
html[data-sp-theme="dark"] .sp101-shell .sp27-eyebrow,
html[data-sp-theme="dark"] .sp101-shell .sp27-intro .sp27-eyebrow {
  color:#ffe27a !important;
  -webkit-text-fill-color:#ffe27a !important;
  opacity:1 !important;
}
html[data-sp-theme="dark"] .sp101-shell .sp13-head :is(h2,h3),
html[data-sp-theme="dark"] .sp101-shell .sp27-intro :is(h1,.sp50-hero-title) {
  color:#fff !important;-webkit-text-fill-color:#fff !important;
}
html[data-sp-theme="dark"] .sp101-shell .sp13-head :is(p,small),
html[data-sp-theme="dark"] .sp101-shell .sp27-intro p {color:#d4e5f5 !important;-webkit-text-fill-color:#d4e5f5 !important;}
html[data-sp-theme="dark"] .sp101-shell .sp13-head .sp13-link,
html[data-sp-theme="dark"] .sp101-shell a.sp13-link {
  color:#ffe27a !important;-webkit-text-fill-color:#ffe27a !important;
}
/* No modificar .topbar, .sp30-header, ni el reproductor. */
