/*
Theme Name: Kultura Sonica
Theme URI: https://kulturasonica.com
Author: Kultura Sonica (Julio Erre)
Author URI: https://kulturasonica.com
Description: Tema editorial a medida para Kultura Sonica — academia y laboratorio de DJs en Buenos Aires. Identidad negro cálido / crema / ámbar, con Bebas Neue, EB Garamond y Jost. Incluye Home, Formación, Método (7 Fases), Revista, Julio Erre y Contacto.
Version: 1.9.19
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: kultura-sonica
*/

/* Base mínima — el diseño completo de cada página va en su propio <style> dentro de la plantilla. */
html, body { margin: 0; background: #0E0C0A; color: #EDE6D6; }
* { box-sizing: border-box; }
img { max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
.logo { display: block; width: auto; height: 28px; }
footer .logo { height: 44px; }

/* Menú central (header.php) — se ve igual en todo el sitio */
:root{
  --ink:#0E0C0A; --ink-2:#17130D; --cream:#EDE6D6; --cream-dim:#A79C86;
  --amber:#EF9F27; --amber-soft:#C9832A; --rule:rgba(237,230,214,.14); --rule-strong:rgba(237,230,214,.28);
  --ks-maxw:1200px; --ks-sans:"Jost","Helvetica Neue",Arial,sans-serif;
}
.ks-topbar{position:sticky;top:env(safe-area-inset-top,0px);z-index:60;background:rgba(14,12,10,.85);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--rule)}
.ks-topbar .row{max-width:var(--ks-maxw);margin:0 auto;padding:13px 24px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.ks-topbar .logo{height:28px}
.ks-nav{display:flex;gap:22px;font-family:var(--ks-sans);font-weight:500;font-size:12.5px;letter-spacing:.13em;text-transform:uppercase}
.ks-nav a{color:var(--cream-dim);transition:color .3s}
.ks-nav a:hover{color:var(--cream)}
.ks-nav a.on{color:var(--amber)}
.ks-cta{display:inline-flex;align-items:center;font-family:var(--ks-sans);font-weight:600;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;padding:10px 16px;border-radius:2px;background:var(--amber);color:#1a1206;transition:background .3s;white-space:nowrap}
.ks-cta:hover{background:#ffb43f}
@media(max-width:980px){.ks-nav{display:none}}

/* Formación: el PDF del programa va antes del botón de WhatsApp */
.offer .ks-pdf{order:1;margin:14px 0 4px}
.offer > .btn{order:2;margin-top:10px}
.offer .ks-comunidad{order:3}

/* Menú: que no se parta en dos líneas en pantallas medianas */
.ks-nav a{white-space:nowrap}
@media(max-width:1180px){.ks-nav{gap:14px;font-size:11.5px;letter-spacing:.09em}.ks-topbar .row{gap:14px}}

/* Logo en ámbar (#EF9F27): se tiñe el PNG blanco con una máscara */
img.logo, img.ks-logo{
  object-position:-99999px 0;
  background:#EF9F27;
  -webkit-mask:url(assets/logo.png) center / contain no-repeat;
          mask:url(assets/logo.png) center / contain no-repeat;
}


/* ===== Quantum Radio (Home): lista + reproductor fijo ===== */
#radio .ks-rhead{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 12px}
#radio .ks-rtit{font-family:var(--ks-sans);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--cream-dim);white-space:nowrap}
#radio .ks-rtit b{color:var(--amber);font-weight:500}
#radio .ks-rq{flex:1;max-width:340px;display:flex;align-items:center;gap:9px;border:1px solid var(--rule);border-radius:999px;padding:9px 14px;transition:border-color .2s}
#radio .ks-rq:focus-within{border-color:var(--amber)}
#radio .ks-rq svg{width:15px;height:15px;fill:none;stroke:var(--cream-dim);stroke-width:2;stroke-linecap:round;flex:none}
#radio .ks-rq input{flex:1;min-width:0;background:none;border:0;outline:0;color:var(--cream);font:inherit;font-family:var(--ks-sans);font-size:14px}
#radio .ks-rq input::placeholder{color:#6E6656}
#radio .ks-rnone{display:none;color:var(--cream-dim);font-size:14px;padding:16px 4px}
#radio .setlist .set.ks-cur{background:#1d1710}
#radio .setlist .set.ks-cur h4{color:var(--amber)}
#radio .setlist .set.ks-cur .pn{color:var(--amber)}
.ks-stage{display:none}
.ks-soc{display:flex;align-items:center;gap:4px;margin-left:auto;flex:none}
.ks-sb{display:inline-flex;align-items:center;gap:5px;background:none;border:0;padding:6px;cursor:pointer;color:#6E6656;font:inherit;font-size:11px;letter-spacing:.08em;border-radius:999px;transition:color .2s}
.ks-sb:hover{color:#EF9F27}.ks-sb svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.ks-sb.on{color:#EF9F27}.ks-sb.on svg{fill:currentColor}.ks-sb.pop svg{animation:kspop .45s}@keyframes kspop{40%{transform:scale(1.35)}}
.ks-toast{position:fixed;left:50%;bottom:110px;transform:translate(-50%,20px);opacity:0;background:#EF9F27;color:#0E0C0A;font-size:11px;letter-spacing:.18em;text-transform:uppercase;padding:9px 16px;border-radius:999px;transition:.3s;z-index:99999;pointer-events:none}.ks-toast.on{opacity:1;transform:translate(-50%,0)}

@media (min-width:1000px){
  #radio .wrap{max-width:var(--ks-maxw,1200px)}
  #radio .ks-rgrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,440px);gap:28px;align-items:start}
  #radio .ks-rside{position:sticky;top:92px;display:flex;flex-direction:column;max-height:calc(100vh - 176px);min-height:0}
  #radio .ks-rside .setlist{grid-template-columns:1fr !important;overflow:auto;flex:1;min-height:0;scrollbar-width:thin;scrollbar-color:rgba(239,159,39,.35) transparent}
  #radio .ks-stage{display:block;position:sticky;top:92px;background:#0E0C0A;border:1px solid var(--rule);padding:26px 26px 22px}
  #radio .ks-scov{position:relative;display:flex;align-items:center;justify-content:center;height:clamp(140px,calc(100vh - 580px),340px);margin-bottom:18px}
  #radio .ks-scov img{max-width:100%;max-height:100%;width:auto;height:auto;border-radius:6px;box-shadow:0 22px 60px rgba(0,0,0,.6),0 0 0 1px rgba(239,159,39,.25);display:block}
  #radio .ks-scov canvas{position:absolute;pointer-events:none;border-radius:6px}
  #radio .ks-smeta{display:flex;justify-content:space-between;align-items:center;font-family:var(--ks-sans);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--cream-dim)}
  #radio .ks-slive{display:inline-flex;align-items:center;gap:8px;color:var(--amber)}
  #radio .ks-slive em{font-style:normal}
  #radio .ks-slive i{width:7px;height:7px;border-radius:50%;background:var(--amber);opacity:.4}
  #radio .ks-stage.playing .ks-slive i{opacity:1;animation:ksPulse 1.8s infinite}
  @keyframes ksPulse{0%{box-shadow:0 0 0 0 rgba(239,159,39,.55)}70%{box-shadow:0 0 0 9px rgba(239,159,39,0)}100%{box-shadow:0 0 0 0 rgba(239,159,39,0)}}
  #radio .ks-stitle{font-family:"EB Garamond",Georgia,serif;font-weight:500;font-size:34px;line-height:1.05;margin:12px 0 6px;color:var(--cream)}
  #radio .ks-sart{font-family:var(--ks-sans);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--cream-dim);margin:0}
  #radio .ks-sctrl{display:flex;align-items:center;justify-content:center;gap:20px;margin:18px 0 14px}
  #radio .ks-sctrl button{background:none;border:0;padding:0;cursor:pointer;color:var(--cream);display:grid;place-items:center}
  #radio .ks-sic{width:44px;height:44px;border-radius:50%;border:1px solid var(--rule) !important;transition:.2s}
  #radio .ks-sic:hover{border-color:var(--amber) !important;color:var(--amber) !important}
  #radio .ks-sic svg{width:17px;height:17px;fill:currentColor}
  #radio .ks-splay{width:66px;height:66px;border-radius:50%;background:var(--amber) !important;color:var(--ink) !important;box-shadow:0 0 0 7px rgba(239,159,39,.12),0 16px 44px -10px rgba(239,159,39,.55);transition:transform .2s}
  #radio .ks-splay:hover{transform:scale(1.05)}
  #radio .ks-splay svg{width:26px;height:26px;fill:currentColor}
  #radio .ks-sbar{position:relative;height:16px;cursor:pointer;touch-action:none}
  #radio .ks-sbar:before{content:"";position:absolute;left:0;right:0;top:7px;height:2px;background:var(--rule)}
  #radio .ks-sbar i{position:absolute;left:0;top:7px;height:2px;background:var(--amber);width:0}
  #radio .ks-sbar b{position:absolute;top:2px;width:12px;height:12px;border-radius:50%;background:var(--amber);transform:translateX(-50%);left:0;box-shadow:0 0 12px rgba(239,159,39,.7)}
  #radio .ks-stime{display:flex;justify-content:space-between;font-family:var(--ks-sans);font-size:11px;letter-spacing:.12em;color:#6E6656;font-variant-numeric:tabular-nums}
}

@media (min-width:1000px){
  #radio .ks-sbrand{display:flex;flex-direction:column;align-items:center;gap:7px;margin:0 0 20px;padding-bottom:18px;border-bottom:1px solid var(--rule)}
  #radio .ks-sbrand img{display:block;width:min(260px,80%);height:auto}
  #radio .ks-sbrand span{font-family:var(--ks-sans);font-size:9.5px;letter-spacing:.34em;text-transform:uppercase;color:var(--cream-dim)}
}
