/* CineNova v2.0 · Optimizaciones de navegación y accesibilidad */
.cn20-sound-btn, .cn19-sound-btn {
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  background:rgba(13,15,21,.75)!important;border:1px solid rgba(255,255,255,.25)!important;
  color:#f8f8fb!important;backdrop-filter:blur(20px);border-radius:999px!important;
  padding:11px 15px!important;box-shadow:0 9px 25px #0005;font-size:12px!important;font-weight:800!important;
  letter-spacing:.1px;transition:background .18s,border-color .18s,transform .18s;
}
.cn19-sound-btn:hover,.cn19-sound-btn:focus-visible{background:rgba(36,36,45,.94)!important;border-color:#ff667a!important;transform:translateY(-1px)}
.cn19-sound-btn svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex:none}
.cn19-sound-btn[hidden]{display:none!important}
.cn19-sound-btn[aria-pressed="true"]{background:rgba(185,25,49,.85)!important;border-color:#ff637d!important}
/* El anuncio mantiene su tamaño real, sin prometer que no rastrea. */
.cn20-ads-explainer{max-width:670px;margin:3px auto 17px;text-align:center;color:#bcb3c0;font-size:12px;line-height:1.55}
.cn-hilltop-ad .cn-hilltop-frame{min-height:250px}
/* Tráiler independiente del capítulo. */
.cn20-trailer-layer{z-index:110;display:grid;place-items:center;background:#000e;backdrop-filter:blur(15px);padding:22px}
.cn20-trailer-layer[hidden]{display:none!important}
.cn20-trailer-dialog{width:min(990px,100%);max-height:96dvh;background:#101117;border:1px solid #414049;border-radius:19px;box-shadow:0 30px 140px #000;overflow:hidden}
.cn20-trailer-dialog header{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:19px 23px;background:linear-gradient(110deg,#24131a,#101117)}
.cn20-trailer-dialog header span{display:block;color:#ff6d83;font-size:10px;letter-spacing:2px;font-weight:900}
.cn20-trailer-dialog header h2{font-size:clamp(18px,2.5vw,27px);margin:5px 0 0;line-height:1.1}
.cn20-trailer-dialog header button{height:42px;width:42px;min-width:42px;border-radius:50%;border:1px solid #ffffff44;background:#22232b;color:#fff;font-size:19px;cursor:pointer}
.cn20-trailer-dialog video{display:block;width:100%;max-height:72dvh;aspect-ratio:16/9;object-fit:contain;background:#000}
.cn20-trailer-dialog>p{margin:0;color:#acaab4;font-size:12px;padding:15px 23px}
/* Elegir perfil en una pantalla de cine, sin inventar controles parentales o PIN. */
.account-layer.cn20-profile-selection{padding:0;align-items:stretch;background:radial-gradient(ellipse at 50% -40%,#58212b 0%,#15121a 43%,#08090d 85%);backdrop-filter:none}
.account-layer.cn20-profile-selection>.account-dialog{margin:0;min-height:100dvh;max-height:100dvh;width:100%;max-width:none;border:0;border-radius:0;overflow:auto;background:transparent;box-shadow:none;padding:clamp(32px,6vw,65px) max(20px,calc((100vw - 1060px)/2)) max(40px,env(safe-area-inset-bottom));display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.cn20-profile-selection .account-overline{letter-spacing:3px;font-size:13px}
.cn20-profile-selection .account-dialog>h2,.cn20-profile-selection .account-intro{display:none}
.cn20-profile-selection .account-close{position:fixed;top:max(24px,env(safe-area-inset-top));right:24px;z-index:2;width:44px;height:44px;border-radius:50%;cursor:pointer}
.cn20-profile-selection #profilesPanel{width:100%;}
.cn20-profile-selection .account-welcome{font-size:13px;margin:22px auto 6px;color:#a3a3ad}
.cn20-profile-selection #profilesPanel h3{font-family:inherit;font-size:clamp(28px,5vw,50px);letter-spacing:-1.3px;line-height:1.06;margin:15px 0 12px;font-weight:850}
.cn20-profile-subtitle{color:#b8b5c0;font-size:clamp(12px,2vw,16px);line-height:1.5;margin:0 auto 28px;max-width:430px}
.cn20-profile-selection .profile-cards{display:flex;justify-content:center;align-items:flex-start;gap:clamp(10px,2vw,28px);flex-wrap:wrap;margin:10px auto 28px}
.cn20-profile-selection .profile-choice{background:none;border:0;min-height:0;min-width:105px;width:clamp(104px,13vw,146px);padding:8px 3px 11px;border-radius:14px;gap:12px;cursor:pointer;transition:transform .2s}
.cn20-profile-selection .profile-choice:hover,.cn20-profile-selection .profile-choice:focus-visible{background:none;transform:translateY(-4px);outline:none}
.cn20-profile-selection .profile-avatar{height:clamp(92px,12vw,138px);width:clamp(92px,12vw,138px);border-radius:50%;border:3px solid #ffffff26;background:linear-gradient(140deg,#bf1b3d,#6e133e);font:900 clamp(34px,5vw,54px)/1 'Barlow Condensed',sans-serif;box-shadow:0 15px 34px #0009;transition:box-shadow .2s,border-color .2s,transform .2s}
.cn20-profile-selection .profile-choice:nth-child(2) .profile-avatar{background:linear-gradient(135deg,#123e61,#2a6597)}
.cn20-profile-selection .profile-choice:nth-child(3) .profile-avatar{background:linear-gradient(135deg,#1b563c,#49a069)}
.cn20-profile-selection .profile-choice:nth-child(4) .profile-avatar{background:linear-gradient(135deg,#9c521c,#e39d4e)}
.cn20-profile-selection .profile-choice:nth-child(5) .profile-avatar{background:linear-gradient(135deg,#5b2869,#b454ad)}
.cn20-profile-selection .profile-choice:hover .profile-avatar,.cn20-profile-selection .profile-choice:focus-visible .profile-avatar,.cn20-profile-selection .profile-choice.active .profile-avatar{border-color:#fff;box-shadow:0 0 0 5px #d6244155,0 20px 45px #0009}
.cn20-profile-selection .profile-choice small{font-size:clamp(12px,1.5vw,15px);font-weight:750;color:#dad7df}
.cn20-profile-selection .cn20-add-profile .profile-avatar{background:#282830!important;color:#f5f5fb;font:300 58px/1 sans-serif;border:2px dashed #777781}
.cn20-profile-selection .account-actions{justify-content:center;gap:12px}
.cn20-profile-selection .account-actions button{flex:none;min-width:150px;border:1px solid #56505a;background:#212026}
.cn20-profile-selection .create-profile-form{margin:12px auto 20px;max-width:350px;text-align:left}
.cn20-profile-selection .account-message{min-height:20px}
.cn20-profile-selection .account-privacy{max-width:560px;margin:26px auto 0;color:#9c98a1}
/* Modal de reproducción siempre por encima del selector de perfiles. */
/* Safari / iPhone: modo cine a pantalla completa cuando fullscreen API no existe. */
html.cn20-theater-open{overflow:hidden!important}
#videoModal.cn20-theater-layer{z-index:1000!important;overflow:hidden!important;padding:0!important}
#videoModal .cinema-stage.cn20-theater{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;z-index:1001!important;display:block!important;overflow:hidden!important;aspect-ratio:auto!important;border:0!important;border-radius:0!important;background:#000!important;isolation:isolate!important}
#videoModal .cinema-stage.cn20-theater .cinema-video-frame{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;aspect-ratio:auto!important;overflow:hidden!important}
#videoModal .cinema-stage.cn20-theater .cinema-video-frame>video{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:contain!important}
#videoModal .cinema-stage.cn20-theater .cinema-topbar{position:absolute!important;inset:0 0 auto!important;order:unset!important;background:linear-gradient(#000c,transparent)!important;padding:calc(12px + env(safe-area-inset-top)) 15px 20px!important;border:0!important;z-index:1003!important;min-height:0!important}
#videoModal .cinema-stage.cn20-theater .cinema-controls{position:absolute!important;inset:auto 0 0!important;order:unset!important;z-index:1003!important;background:linear-gradient(transparent,#000e)!important;padding:25px max(15px,env(safe-area-inset-right)) max(15px,env(safe-area-inset-bottom))!important;border:0!important}
#videoModal .cinema-stage.cn20-theater .cinema-topbar,#videoModal .cinema-stage.cn20-theater .cinema-controls{opacity:1!important;pointer-events:auto!important;transform:none!important}
#videoModal .cinema-stage.cn20-theater .cinema-episodes{z-index:1004!important}
#videoModal .cinema-stage.cn20-theater .cinema-ambient{opacity:.06!important}
.cn20-convert-trailer{border:1px solid #f3607870;background:linear-gradient(120deg,#43172866,#121218);border-radius:12px;padding:17px;margin:20px 0;display:grid;gap:9px}
.cn20-convert-trailer[hidden]{display:none!important}
.cn20-convert-trailer strong{color:#fff;font-size:13px}
.cn20-convert-trailer p{color:#c7b7c2;font-size:12px;line-height:1.5;margin:0}
.cn20-convert-trailer button{cursor:pointer;padding:12px 15px;border:1px solid #ef4561;border-radius:9px;background:#8f1531;color:white;font-size:12px;font-weight:850}
.cn20-convert-trailer button:disabled{opacity:.45;cursor:default}
@media(max-width:600px){
 .cn20-trailer-layer{padding:0}
 .cn20-trailer-dialog{height:100dvh;max-height:100dvh;border-radius:0;overflow:auto;display:flex;flex-direction:column;justify-content:center}
 .cn20-trailer-dialog header{padding:20px 15px}
 .cn20-profile-selection .profile-cards{gap:8px}
 .cn20-profile-selection .profile-choice{width:clamp(95px,27vw,125px);min-width:92px}
 .cn20-profile-selection .profile-avatar{width:clamp(88px,25vw,116px);height:clamp(88px,25vw,116px)}
 .cn20-profile-selection .account-close{right:13px}
 .cn20-ads-explainer{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.cn20-profile-selection .profile-choice,.cn20-profile-selection .profile-avatar,.cn19-sound-btn{transition:none!important}}
