

:root {
  --bg: #b8c4d4;
  --bg2: #a8b8cc;
  --accent: #3a7bff;
  --accent2: #34c47c;
  --danger: #ff4d5e;
  --text: #1a2233;
  --text2: #3a4a62;
  --accent-rgb: 58,123,255;
  --accent2-rgb: 52,196,124;
  --danger-rgb: 255,77,94;
  --r: 18px;
  --r-sm: 10px;
  --r-xs: 7px;
  --r-md: 12px;
  --r-lg: 14px;
  --r-xl: 22px;
  --r-pill: 99px;
  --font-size-base: 15px;
  --font: 'DM Sans';
  --glass: rgba(255,255,255,0.28);
  --glass-md: rgba(255,255,255,0.38);
  --glass-hi: rgba(255,255,255,0.52);
  --border: rgba(255,255,255,0.35);
  --border-lo: rgba(255,255,255,0.17999999999999997);
  --button-radius: 11px;
  --button-shadow-blur: 40px;
  --button-shadow-y: 11px;
  --button-font-size: 17px;
  --button-blur: 0px;
  --button-inset-blur: 26px;
  --button-inset-bottom-y: 3px;
  --button-inset-bottom-blur: 12px;
  --button-hover-lift: 2px;
  --button-text: #ffffff;
  --button-saturate: 140%;
  --button-inset-opacity: 0;
  --button-inset-bottom-opacity: 0.16;
  --button-hover-fill: rgba(188,198,209,0.58);
  --tab-bar-blur: 0px;
  --tab-bar-radius: 11px;
  --tab-bar-shadow-blur: 40px;
  --tab-bar-shadow-y: 11px;
  --tab-bar-font-size: 18px;
  --tab-bar-padding-y: 12px;
  --tab-bar-padding-x: 20px;
  --tab-bar-fill: rgba(188,198,209,0.48);
  --tab-bar-border: rgba(255,255,255,0.35);
  --tab-bar-shadow-opacity: 0.24;
  --button-fill: rgba(188,198,209,0.48);
  --button-border: rgba(255,255,255,0.35);
  --button-shadow: rgba(26,34,51,0.24);
  --pills-col-width: 275px;
  --pills-col-height-offset: 120px;
  --pills-col-gap: 35px;
  --pills-col-padding-top: 56px;
  --pills-col-padding-x: 36px;
  --pills-col-padding-bottom: 40px;
  --pills-fade-top: 64px;
  --pills-fade-bottom: 56px;
  --pill-radius: 20px;
  --pill-pad-y: 18px;
  --pill-pad-x: 24px;
  --pill-font-size: 19px;
  --pill-blur: 0px;
  --pill-inset-blur: 26px;
  --pill-inset-bottom-y: 3px;
  --pill-inset-bottom-blur: 12px;
  --pill-shadow-y: 11px;
  --pill-shadow-blur: 40px;
  --pill-hover-lift: 6px;
  --topic-card-radius: 21px;
  --topic-card-shadow-y: 11px;
  --topic-card-shadow-blur: 40px;
  --exercise-radius: 20px;
  --exercise-blur: 24px;
  --exercise-shadow-y: 4px;
  --exercise-shadow-blur: 20px;
  --chip-radius: 48px;
  --chip-shadow-blur: 40px;
  --chip-shadow-y: 11px;
  --chip-font-size: 17px;
  --slot-radius: 20px;
  --slot-height: 34px;
  --slot-min-width: 90px;
  --slot-shadow-blur: 30px;
  --slot-shadow-y: 11px;
  --notebook-width: 290px;
  --notebook-radius: 26px;
  --notebook-blur: 36px;
  --notebook-shadow-y: 10px;
  --notebook-shadow-blur: 43px;
  --pill-line-height: 1.22;
  --pill-saturate: 140%;
  --pill-inset-opacity: 0;
  --pill-inset-bottom-opacity: 0.16;
  --pill-shadow-opacity: 0.24;
  --pill-shadow-hover-opacity: 0.32;
  --pill-fill: rgba(188,198,209,0.48);
  --pill-hover-fill: rgba(188,198,209,0.58);
  --pill-text: #ffffff;
  --topic-card-fill: rgba(188,198,209,0.48);
  --topic-card-border: rgba(255,255,255,0.35);
  --topic-card-shadow-opacity: 0.24;
  --exercise-fill: rgba(255,255,255,0.32);
  --exercise-border: rgba(255,255,255,0.55);
  --exercise-shadow-opacity: 0.08;
  --chip-fill: rgba(201,213,225,0.48);
  --chip-border: rgba(255,255,255,0.35);
  --chip-shadow-opacity: 0.24;
  --slot-fill: rgba(235,235,235,0.48);
  --slot-filled-fill: rgba(235,235,235,0.88);
  --slot-border: rgba(255,255,255,0.35);
  --slot-shadow-opacity: 0.24;
  --notebook-fill: rgba(188,197,207,0.48);
  --notebook-shadow-opacity: 0.3;
  --notebook-saturate: 80%;
  --notebook-inset-blur: 40px;
  --notebook-inset-opacity: 0;
  --notebook-inset-bottom-y: 4px;
  --notebook-inset-bottom-blur: 31px;
  --notebook-inset-bottom-opacity: 0.14;
  --notebook-border: rgba(255,255,255,0);
  --press-scale: 0.96;
  --anim-ease: cubic-bezier(.25,.1,.25,1);
  --anim-speed: 1.000;
}
body { font-family:'DM Sans', sans-serif; font-size:15px; }
.class-pill{border:0px solid rgba(255,255,255,0.35);box-shadow:inset 0 0 26px rgba(16,22,34,0), inset 0 -3px 12px rgba(16,22,34,0.16), 0px 11px 40px rgba(26,34,51,0.24);font-weight:400;letter-spacing:0.2px;font-family:'Coolvetica','DM Sans',sans-serif;}
.tb-btn,.back-btn,.otra-clase-btn{border:0px solid rgba(255,255,255,0.35);box-shadow:inset 0 0 26px rgba(16,22,34,0), inset 0 -3px 12px rgba(16,22,34,0.16), 0px 11px 40px rgba(26,34,51,0.24);}
.back-btn,.otra-clase-btn{font-family:'Coolvetica','DM Sans',sans-serif;font-size:17px;font-weight:400;letter-spacing:0.2px;color:#ffffff;text-shadow:0px 1px 9px rgba(26,34,51,0.35);}
.session-tabs{border-bottom:0px solid rgba(255,255,255,0.35);box-shadow:0px 11px 40px rgba(26,34,51,0.24);}
.session-tabs .aula-tab{font-family:'Coolvetica','DM Sans',sans-serif;font-weight:400;letter-spacing:0.2px;font-size:18px;}
.session-tabs .aula-tab:not(.active){color:#ffffff;}
.session-tabs .aula-tab.active{color:#1a2233;}
.topic-card{border:0px solid rgba(255,255,255,0.35);box-shadow:inset 0 0 26px rgba(16,22,34,0), inset 0 -3px 12px rgba(16,22,34,0.16), 0px 11px 40px rgba(26,34,51,0.24);}
.ex-wysiwyg{border:0px solid rgba(255,255,255,0.55);box-shadow:inset 0 0 0px rgba(16,22,34,0.26), inset 0 0px 6px rgba(16,22,34,0.14), 0px 4px 20px rgba(26,34,51,0.08);}
.live-lesson-block{background:rgba(255,255,255,0.32);border:0px solid rgba(255,255,255,0.55);border-radius:20px;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:inset 0 0 0px rgba(16,22,34,0.26), inset 0 0px 6px rgba(16,22,34,0.14), 0px 4px 20px rgba(26,34,51,0.08);}
.ex-wysiwyg-body .sentence-line,.live-block-body .sentence-line{color:#1a2233;font-family:'Canela Text','DM Sans',sans-serif;font-size:17px;}
.w-chip{border:0px solid rgba(255,255,255,0.35);box-shadow:inset 0 0 42px rgba(16,22,34,0), inset 0 -3px 11px rgba(16,22,34,0.16), 0px 11px 40px rgba(26,34,51,0.24);padding:10px 20px;font-family:'Coolvetica','DM Sans',sans-serif;font-size:17px;font-weight:400;letter-spacing:0.2px;color:#ffffff;text-shadow:0px 1px 9px rgba(26,34,51,0.35);--chip-hover-lift:6px;}
.w-chip:hover{background:rgba(201,213,225,0.58);transform:translateY(-6px);}
.drop-slot,.match-drop-zone{border:0px solid rgba(255,255,255,0.35);box-shadow:inset 0 0 0px rgba(16,22,34,0), inset 0 0px 0px rgba(16,22,34,0), inset 0 1px 0 rgba(255,255,255,0.6), 0px 11px 30px rgba(26,34,51,0.24);font-family:'Coolvetica','DM Sans',sans-serif;font-size:19px;font-weight:400;letter-spacing:0px;color:#ffffff;}
.notebook-col{border:0px solid rgba(255,255,255,0);box-shadow:inset 0 0 40px rgba(16,22,34,0), inset 0 -4px 31px rgba(16,22,34,0.14), 0px 10px 43px rgba(26,34,51,0.3);}
.col-block{background:rgba(214,221,230,0.48);backdrop-filter:blur(36px) saturate(80%);-webkit-backdrop-filter:blur(36px) saturate(80%);border:1px solid rgba(255,255,255,0);border-radius:26px;box-shadow:inset 0 0 40px rgba(16,22,34,0.26), inset 0 -4px 14px rgba(16,22,34,0.14), 0px 10px 30px rgba(26,34,51,0.12);min-height:150px;}
.col-block-title,.col-title-input{font-family:'Coolvetica','DM Sans',sans-serif;font-size:18px;font-weight:400;letter-spacing:0.3px;color:#ffffff;padding:12px 16px 10px;}
.col-block-title{border-bottom:1px solid rgba(255,255,255,0.22);}
.col-grid{gap:14px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));}
.col-drop{padding:12px;gap:7px;}
.col-block-add{min-height:150px;border-radius:26px;}
.col-write-input{font-family:'Coolvetica','DM Sans',sans-serif;font-size:18px;font-weight:400;letter-spacing:0px;line-height:1.55;color:#ffffff;padding:12px 16px 16px;min-height:100px;}
.modal{background:rgba(220,228,238,0.96);backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border:1px solid rgba(255,255,255,0.35);border-radius:22px 22px 0 0;box-shadow:inset 0 0 0px rgba(16,22,34,0), inset 0 0px 0px rgba(16,22,34,0);}
.f-input{background:rgba(255,255,255,0.6);border:1px solid rgba(255,255,255,0.35);border-radius:10px;font-size:14px;color:#1a2233;padding:10px 13px;box-shadow:inset 0 0 0px rgba(16,22,34,0), inset 0 0px 0px rgba(16,22,34,0);}
.tpl-card{background:rgba(255,255,255,0.45);border:1.5px solid rgba(255,255,255,0.35);border-radius:18px;box-shadow:inset 0 0 0px rgba(16,22,34,0), inset 0 0px 0px rgba(16,22,34,0);}
.toast{background:rgba(26,34,51,0.92);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,0.12);border-radius:14px;color:#ffffff;font-size:13px;box-shadow:0px 8px 24px rgba(26,34,51,0.3);}
.back-btn,.otra-clase-btn{padding:10px 20px;}
.topic-card-title,.topic-card-title-small{font-family:'Coolvetica','DM Sans',sans-serif;font-size:22px;font-weight:400;letter-spacing:0.2px;color:#ffffff;text-shadow:0px 1px 17px rgba(26,34,51,0.35);}
.describe-input{background:rgba(235,240,248,0.72);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1.5px solid rgba(255,255,255,0.7);border-radius:22px;padding:14px 20px;box-shadow:inset 0 0 0px rgba(16,22,34,0), inset 0 0px 0px rgba(16,22,34,0), 0px 2px 12px rgba(26,34,51,0.08);font-family:'Coolvetica','DM Sans',sans-serif;font-size:17px;font-weight:400;letter-spacing:0.3px;color:#1a2233;}
.sv-instruction{font-family:'Coolvetica','DM Sans',sans-serif;font-size:17px;font-weight:400;letter-spacing:0.3px;color:#3a4a62;}
.so-select{background-color:rgba(235,240,248,0.72);border:1.5px solid rgba(255,255,255,0.7);border-radius:99px;box-shadow:0px 1px 4px rgba(26,34,51,0.06);font-family:'DM Sans','DM Sans',sans-serif;font-size:13px;font-weight:600;letter-spacing:0px;color:#1a2233;}
.check-btn{background:rgba(26,34,51,1);border:0px solid rgba(255,255,255,0);border-radius:99px;padding:11px 26px;box-shadow:inset 0 0 0px rgba(16,22,34,0), inset 0 0px 0px rgba(16,22,34,0), 0px 4px 16px rgba(26,34,51,0.22);font-family:'Coolvetica','DM Sans',sans-serif;font-size:16px;font-weight:400;letter-spacing:0.4px;color:#ffffff;}
.result-banner{font-family:'Coolvetica','DM Sans',sans-serif;font-size:19px;font-weight:400;letter-spacing:0.2px;}
.result-banner.ok{background:rgba(207,215,225,1);color:#16a34a;}
.result-banner.bad{background:rgba(255,77,94,0.08);color:#ff4d5e;}
.notebook-empty{color:rgba(255,255,255,0.5);font-family:'Coolvetica','DM Sans',sans-serif;font-size:20px;font-weight:400;}
.session-tabs .aula-tab.active::after{background:#3a7bff;height:2px;width:70%;}
.active-lesson-banner{background:rgba(188,198,209,0.48);border:0px solid rgba(255,255,255,0.35);border-radius:27px;backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px);padding:23px 20px;box-shadow:inset 0 0 17px rgba(16,22,34,0.07), inset 0 -3px 29px rgba(16,22,34,0.16), 0px 11px 40px rgba(26,34,51,0.24);}
.active-lesson-title{font-family:'Coolvetica','DM Sans',sans-serif;font-size:38px;font-weight:400;letter-spacing:0.2px;color:#ffffff;}
.active-lesson-label{color:#929292;}
.active-lesson-dot{background:#929292;}
.active-lesson-sub{color:#8c94a4;}
.active-lesson-img{height:360px;object-fit:cover;border-radius:17px;}
.active-lesson-btn{background:rgba(169,182,210,0.48);border-radius:18px;color:#ffffff;font-size:19px;font-family:'Coolvetica','DM Sans',sans-serif;}
.anim-premium .topic-card:active,.anim-premium .subsec-pill:active,.anim-premium .check-btn:active,.anim-premium .active-lesson-btn:active,.anim-premium .w-chip:active,.anim-premium .class-pill:active,.anim-premium .tb-btn:active,.anim-premium .back-btn:active,.anim-premium .otra-clase-btn:active{transform:scale(var(--press-scale)) !important;transition:transform calc(.14s * var(--anim-speed)) var(--anim-ease) !important;}
.anim-premium .topic-card,.anim-premium .subsec-pill,.anim-premium .w-chip,.anim-premium .class-pill,.anim-premium .check-btn,.anim-premium .active-lesson-btn{transition:transform calc(.28s * var(--anim-speed)) var(--anim-ease), box-shadow calc(.28s * var(--anim-speed)) var(--anim-ease), background calc(.28s * var(--anim-speed)) var(--anim-ease) !important;}
.design-ripple{position:fixed;border-radius:50%;transform:scale(0);opacity:.5;pointer-events:none;z-index:9999;animation:designRipple calc(.6s * var(--anim-speed,1)) ease-out forwards;}
@keyframes designRipple{to{transform:scale(1);opacity:0;}}
.login-card{background:rgba(188,198,209,0.48);backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px);border:0px solid rgba(255,255,255,0.35);border-radius:27px;box-shadow:inset 0 0 17px rgba(16,22,34,0.07), inset 0 -3px 29px rgba(16,22,34,0.16), 0px 11px 40px rgba(26,34,51,0.24);}
.login-logo{display:inline-block;background:rgba(188,198,209,0.48);backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px);border:0px solid rgba(255,255,255,0.35);border-radius:47px;padding:10px 20px;box-shadow:inset 0 0 26px rgba(16,22,34,0.26), inset 0 -3px 12px rgba(16,22,34,0.16), 0px 11px 40px rgba(26,34,51,0.24);font-family:'Coolvetica','DM Sans',sans-serif;font-size:28px;font-weight:400;letter-spacing:0.2px;color:#ffffff;}
.login-sub{font-family:'DM Sans','DM Sans',sans-serif;font-size:12px;font-weight:400;letter-spacing:0.7px;color:#ffffff;}
.login-label{font-family:'DM Sans','DM Sans',sans-serif;font-size:11px;font-weight:700;letter-spacing:0.8px;color:#ffffff;}
.login-register-link{font-family:'Coolvetica','DM Sans',sans-serif;font-size:15px;font-weight:400;letter-spacing:0.3px;color:#1a2233;}
.login-register-link a{color:#ffffff;}
.login-input{background:rgba(255,255,255,0.65);border:0px solid rgba(255,255,255,0.35);border-radius:50px;padding:12px 15px;box-shadow:inset 0 0 0px rgba(16,22,34,0.26), inset 0 0px 8px rgba(16,22,34,0.16);font-family:'DM Sans','DM Sans',sans-serif;font-size:15px;font-weight:400;letter-spacing:0px;color:#1a2233;}
.login-btn{background:rgba(26,34,51,1);border:0px solid rgba(255,255,255,0);border-radius:99px;padding:14px 14px;box-shadow:inset 0 0 0px rgba(16,22,34,0), inset 0 0px 0px rgba(16,22,34,0), 0px 0px 0px rgba(26,34,51,0);font-family:'Coolvetica','DM Sans',sans-serif;font-size:18px;font-weight:400;letter-spacing:0.5px;color:#ffffff;}
@media (prefers-reduced-motion: no-preference){
.w-chip{transition:all 0.525s cubic-bezier(.25,.1,.25,1), scale 0.315s cubic-bezier(.25,.1,.25,1);}
.w-chip:active{scale:0.94;transition:all 0.525s cubic-bezier(.25,.1,.25,1), scale 0.158s cubic-bezier(.25,.1,.25,1);}
.topic-card{transition:all 0.525s cubic-bezier(.25,.1,.25,1), scale 0.315s cubic-bezier(.25,.1,.25,1);}
.topic-card:active{scale:0.94;transition:all 0.525s cubic-bezier(.25,.1,.25,1), scale 0.158s cubic-bezier(.25,.1,.25,1);}
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) {
  --ej-fs:        calc(34 * var(--dc-u));   
  --ej-fs-palabra:calc(28 * var(--dc-u));   
  --ej-radio:     calc(44 * var(--dc-u));   
  --ej-aura-ok:   0 0 calc(10 * var(--dc-u)) rgba(72,205,140,.90),
                  0 0 calc(26 * var(--dc-u)) rgba(72,205,140,.48),
                  0 0 calc(56 * var(--dc-u)) rgba(46,180,110,.24);
  --ej-aura-mal:  0 0 calc(10 * var(--dc-u)) rgba(255,110,125,.90),
                  0 0 calc(26 * var(--dc-u)) rgba(255,110,125,.48),
                  0 0 calc(56 * var(--dc-u)) rgba(230,70,90,.22);
  --ej-caja-ok:   0 0 calc(22 * var(--dc-u)) rgba(72,205,140,.55),
                  0 0 calc(70 * var(--dc-u)) rgba(72,205,140,.28),
                  0 calc(18 * var(--dc-u)) calc(40 * var(--dc-u)) rgba(15,20,30,.30);
  --ej-caja-mal:  0 0 calc(22 * var(--dc-u)) rgba(255,110,125,.55),
                  0 0 calc(70 * var(--dc-u)) rgba(255,110,125,.28),
                  0 calc(18 * var(--dc-u)) calc(40 * var(--dc-u)) rgba(15,20,30,.30);
  --ej-foto-sombra: 0 calc(18 * var(--dc-u)) calc(42 * var(--dc-u)) rgba(15,20,30,.34);
  --ej-foto-sombra-alta: 0 calc(30 * var(--dc-u)) calc(64 * var(--dc-u)) rgba(15,20,30,.44);

--ej-metal:       linear-gradient(90deg, #C2CAD4, #8B97AB);
  --ej-metal-hondo: var(--ej-metal);
  --ej-metal-alto:  var(--ej-metal);
  --ej-metal-ok:    linear-gradient(90deg, #A9D8BF, #5E9E82);
  --ej-metal-mal:   linear-gradient(90deg, #DDA9AF, #A66E79);

--ej-hundido: var(--dc-shadow-pill-metal);        
  --ej-alzado:  var(--dc-shadow-pill-metal);        
  --ej-alzado-alto: 0 calc(16 * var(--dc-u)) calc(52 * var(--dc-u)) rgba(20,30,45,.55);

  --ej-tinta:        var(--dc-ink);
  --ej-tinta-sombra: var(--dc-shadow-text);

--ej-vidrio:       var(--ej-metal);
  --ej-vidrio-hondo: var(--ej-metal-hondo);
  --ej-vidrio-alto:  var(--ej-metal-alto);
  --ej-vidrio-blur:  none;

--ej-r-pildora: calc(28 * var(--dc-u));
  --ej-r-zona:    var(--ej-r-pildora);
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ex-wysiwyg {
  background:none; border:none; border-radius:0; box-shadow:none;
  backdrop-filter:none; -webkit-backdrop-filter:none;
  padding:0; margin:0 0 calc(110 * var(--dc-u)); max-width:none;
  position:relative; isolation:isolate;
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ex-wysiwyg::after {
  content:''; position:absolute; left:6%; right:6%; bottom:calc(-52 * var(--dc-u));
  height:1px; pointer-events:none;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.30) 26%,
                                     rgba(255,255,255,.30) 74%, transparent);
  filter:blur(calc(1.4 * var(--dc-u)));
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ex-wysiwyg:last-child::after { display:none; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ex-wysiwyg-body { padding:0; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ex-wysiwyg.ex-editing {
  border:none; box-shadow:none;
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ex-wysiwyg > .ex-top-bar,
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ex-top-bar {
  background:none; border:none; border-radius:0; overflow:visible;
  padding:0 0 calc(20 * var(--dc-u)); min-height:0;
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ex-actions {
  margin-left:auto; display:flex; gap:calc(28 * var(--dc-u)); align-items:baseline;
  opacity:.45; transition:opacity var(--dc-t-lento) var(--dc-ease);
}
@media (any-hover: hover) {
  :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ex-wysiwyg:hover .ex-actions { opacity:1; }
}
@media (hover: none) {
  :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ex-actions { opacity:.8; }
}

.ex-accion {
  font-family:var(--dc-font); font-weight:var(--dc-weight);
  font-size:var(--dc-fs-22); letter-spacing:var(--dc-tracking);
  text-transform:lowercase; color:var(--dc-ink);
  background:none; border:none; cursor:pointer;
  
  padding:var(--dc-sp-14) var(--dc-sp-20); margin:calc(var(--dc-sp-14) * -1) calc(var(--dc-sp-20) * -1);
  line-height:1.2; opacity:.55; text-shadow:none; white-space:nowrap;
  transition:opacity var(--dc-t-lento) var(--dc-ease),
             text-shadow var(--dc-t-lento) var(--dc-ease),
             transform var(--dc-t-lento) var(--dc-ease);
}
@media (any-hover: hover) {
  .ex-accion:hover { opacity:1; text-shadow:var(--dc-shadow-text-strong); }
}
.ex-accion:active { transform:scale(.985); transition:transform var(--dc-t-press) var(--dc-ease); }
.ex-accion:disabled { opacity:.14; pointer-events:none; }
.ex-accion.del { }
@media (any-hover: hover) {
  .ex-accion.del:hover { text-shadow:0 0 calc(18 * var(--dc-u)) rgba(255,110,125,.55),
                                     var(--dc-shadow-text-strong); }
}
.ex-accion-grande { font-size:var(--dc-fs-40); opacity:.7; }

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .sv-instruction {
  font-family:var(--dc-font); font-weight:var(--dc-weight);
  font-size:var(--dc-fs-30); color:var(--dc-ink); opacity:.62;
  letter-spacing:var(--dc-tracking); text-transform:none;
  margin:0 0 calc(30 * var(--dc-u));
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.sentence-line, .so-line, .wa-line) {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--ej-fs);
  color:var(--dc-ink); letter-spacing:var(--dc-tracking); line-height:1.85;
  padding:calc(8 * var(--dc-u)) calc(12 * var(--dc-u)) calc(8 * var(--dc-u)) calc(34 * var(--dc-u));
  margin:0 0 calc(12 * var(--dc-u)); border-radius:calc(20 * var(--dc-u));
  text-shadow:none; position:relative;
  transition:transform var(--dc-t-lento) var(--dc-ease),
             filter var(--dc-t-lento) var(--dc-ease),
             opacity var(--dc-t-lento) var(--dc-ease),
             text-shadow var(--dc-t-lento) var(--dc-ease);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .sentence-line {
  display:flex; flex-wrap:wrap; align-items:center; gap:.10em .30em;
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .so-line > span,
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .sentence-line > span { margin-right:.14em; }
@media (any-hover: hover) {
  :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.sentence-line, .so-line, .wa-line):hover {
    text-shadow:var(--dc-shadow-text);
  }
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .so-hint,
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .wa-hint {
  font-family:var(--dc-font); font-style:italic; font-size:.78em;
  color:var(--dc-ink); opacity:.5;
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.sentence-line, .so-line, .wa-line)::before {
  width:calc(12 * var(--dc-u)); height:calc(12 * var(--dc-u)); left:calc(2 * var(--dc-u));
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.drop-slot, .so-hueco, .wa-hueco, .match-drop-zone) {
  position:relative; display:inline-flex; align-items:center; justify-content:center;
  border:none !important; border-radius:var(--ej-r-pildora);
  background:var(--ej-vidrio-hondo) !important;
  backdrop-filter:var(--ej-vidrio-blur); -webkit-backdrop-filter:var(--ej-vidrio-blur);
  box-shadow:var(--ej-hundido) !important;
  padding:0 .8em; margin:0 .3em; min-width:calc(150 * var(--dc-u)); height:1.85em;
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:1em;
  letter-spacing:var(--dc-tracking); color:var(--ej-tinta);
  text-shadow:var(--ej-tinta-sombra);
  cursor:pointer; vertical-align:middle;
  
  transition:min-width var(--dc-t-lento) var(--dc-ease),
             background var(--dc-t-lento) var(--dc-ease),
             box-shadow var(--dc-t-lento) var(--dc-ease),
             text-shadow var(--dc-t-lento) var(--dc-ease),
             transform var(--dc-t-lento) var(--dc-ease);
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.drop-slot.filled, .so-hueco.lleno, .match-drop-zone.filled, .match-drop-zone.matched) {
  background:var(--ej-metal) !important;
  box-shadow:var(--ej-alzado) !important;
}
@media (any-hover: hover) {
  :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.drop-slot, .so-hueco, .match-drop-zone):hover {
    background:var(--ej-vidrio-alto) !important;
    box-shadow:var(--ej-alzado-alto) !important;
  }
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.drop-slot, .match-drop-zone).drag-over {
  background:var(--ej-vidrio-alto) !important;
  box-shadow:var(--ej-alzado-alto) !important;
  transform:scale(1.02);
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ej-entra {
  animation:ejEntra var(--dc-t-lento) var(--dc-ease) both;
}
@keyframes ejEntra {
  0%   { opacity:0; transform:translateY(calc(-12 * var(--dc-u))); }
  100% { opacity:1; transform:none; }
}
@media (prefers-reduced-motion: reduce) {
  :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ej-entra { animation:none; }
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ej-palabra { display:inline-block; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ej-palabra.ej-cae {
  animation:ejCae .52s cubic-bezier(.22,.61,.36,1) both;
}
@keyframes ejCae {
  0%   { opacity:0; transform:translateY(calc(-14 * var(--dc-u))); }
  100% { opacity:1; transform:none; }
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ej-palabra.ej-se-va {
  animation:ejSeVa .23s cubic-bezier(.4,0,.6,1) both;
}
@keyframes ejSeVa {
  0%   { opacity:1; transform:none; }
  100% { opacity:0; transform:translateY(calc(10 * var(--dc-u))); }
}
@media (prefers-reduced-motion: reduce) {
  :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.ej-palabra.ej-cae, .ej-palabra.ej-se-va) { animation:none; }
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.drop-slot.ok, .match-drop-zone.matched, .so-hueco.ok, .wa-hueco.ok) {
  background:var(--ej-metal) !important; color:var(--dc-ink) !important;
  text-shadow:var(--ej-tinta-sombra);
  box-shadow:var(--ej-alzado), var(--ej-caja-ok) !important;
  transition:box-shadow .7s cubic-bezier(.25,.1,.25,1);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.drop-slot.bad, .match-drop-zone.bad, .so-hueco.bad, .wa-hueco.bad) {
  background:var(--ej-metal) !important; color:var(--dc-ink) !important;
  text-shadow:var(--ej-tinta-sombra);
  box-shadow:var(--ej-alzado), var(--ej-caja-mal) !important;
  transition:box-shadow .7s cubic-bezier(.25,.1,.25,1);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .wa-hueco.ok .wa-input,
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .wa-hueco.bad .wa-input { color:var(--dc-ink); }

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-word.ok,
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-word.bad { color:var(--dc-ink) !important; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-word.ok  { text-shadow:var(--ej-aura-ok) !important; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-word.bad { text-shadow:var(--ej-aura-mal) !important; }

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .so-select {
  appearance:none; -webkit-appearance:none;
  background:var(--ej-metal) !important; border:none !important;
  border-radius:var(--ej-r-pildora) !important;
  box-shadow:var(--ej-alzado) !important;
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:1em;
  letter-spacing:var(--dc-tracking); color:var(--dc-ink) !important;
  text-shadow:var(--dc-shadow-text); text-align:center; text-align-last:center;
  padding:0 .8em; margin:0 .3em; height:1.85em; min-width:calc(150 * var(--dc-u));
  vertical-align:middle; cursor:pointer; outline:none;
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .so-select option {
  color:var(--dc-ink-dark); background:#e7ecef;
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .so-select.ok  { background:var(--ej-metal) !important; box-shadow:var(--ej-caja-ok) !important; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .so-select.bad { background:var(--ej-metal) !important; box-shadow:var(--ej-caja-mal) !important; }

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .live-lesson-block {
  background:none !important; border:none !important; border-radius:0 !important;
  box-shadow:none !important; backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  padding:0; margin:0 0 calc(110 * var(--dc-u)); position:relative;
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .live-lesson-block::after {
  content:''; position:absolute; left:0; right:0; bottom:calc(-55 * var(--dc-u));
  height:1px; background:linear-gradient(90deg, transparent,
             rgba(255,255,255,.30) 26%, rgba(255,255,255,.30) 74%, transparent);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .live-lesson-block:last-child::after { display:none; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .live-lesson-block.live-focused,
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .live-lesson-block.live-done {
  background:none !important; border:none !important; box-shadow:none !important;
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .live-lesson-block.live-done { opacity:.62; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .live-block-body { padding:0 !important; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .live-block-header {
  background:none !important; border:none !important; border-radius:0 !important;
  padding:0 0 calc(14 * var(--dc-u)); display:flex; align-items:baseline;
  gap:calc(26 * var(--dc-u));
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.live-block-type, .live-block-status) {
  font-family:var(--dc-font); font-weight:var(--dc-weight); letter-spacing:normal;
  text-transform:lowercase; color:var(--dc-ink); background:none;
  text-shadow:var(--dc-shadow-text);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .live-block-type {
  font-size:var(--dc-fs-22); opacity:.38; flex:1;
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .live-block-status {
  font-size:var(--dc-fs-22); opacity:.62; font-weight:var(--dc-weight);
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.live-ex-focus-btn, .live-ex-reset-btn, .live-ex-edit-btn),
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.live-ex-focus-btn, .live-ex-reset-btn, .live-ex-edit-btn):hover,
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .live-ex-focus-btn.focused {
  background:none !important; border:none !important; border-radius:0 !important;
  width:auto; height:auto; color:var(--dc-ink);
  font-size:var(--dc-fs-22); box-shadow:none !important;
  
  padding:calc(6 * var(--dc-u)) calc(10 * var(--dc-u));
  margin:calc(-6 * var(--dc-u)) calc(-10 * var(--dc-u));
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.live-ex-focus-btn, .live-ex-reset-btn, .live-ex-edit-btn) { opacity:.5; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .live-ex-focus-btn.focused { opacity:1; }

body.is-teacher :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.drop-slot, .match-drop-zone, .col-drop, .wa-hueco, .so-hueco)[data-answer]:not([data-answer=""])::after {
  content:attr(data-answer);
  position:absolute; left:50%; bottom:calc(100% + 6 * var(--dc-u));
  transform:translateX(-50%) translateY(calc(6 * var(--dc-u)));
  background:none; padding:0; border-radius:0; backdrop-filter:none;
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:.72em;
  letter-spacing:var(--dc-tracking); color:var(--dc-ink);
  text-shadow:var(--dc-shadow-text-strong);
  white-space:nowrap; pointer-events:none; opacity:0; z-index:50; box-shadow:none;
  transition:opacity var(--dc-t-lento) var(--dc-ease), transform var(--dc-t-lento) var(--dc-ease);
}
body.is-teacher :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-drop-zone[data-answer]:not([data-answer=""])::after {
  bottom:auto; top:calc(100% + 6 * var(--dc-u));
  transform:translateX(-50%) translateY(calc(-6 * var(--dc-u)));
}
body.is-teacher :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.drop-slot, .match-drop-zone, .col-drop, .wa-hueco, .so-hueco)[data-answer]:not([data-answer=""]):hover::after {
  opacity:1; transform:translateX(-50%) translateY(0);
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.wa-key, .so-key) { display:none !important; }

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.word-bank, .match-words) {
  display:flex; flex-wrap:wrap; align-items:center;
  position:sticky; top:calc(10 * var(--dc-u)); z-index:30;
  
  background:var(--ej-metal) !important; border:none;
  border-radius:var(--ej-r-zona);
  backdrop-filter:var(--ej-vidrio-blur); -webkit-backdrop-filter:var(--ej-vidrio-blur);
  box-shadow:var(--ej-hundido) !important;
  padding:calc(26 * var(--dc-u)) calc(40 * var(--dc-u));
  gap:calc(24 * var(--dc-u)) calc(42 * var(--dc-u));
  margin:0 0 calc(44 * var(--dc-u));
  
  max-height:calc(180 * var(--dc-u)); overflow-y:auto; overflow-x:hidden;
  overscroll-behavior:contain; scroll-behavior:smooth;
  scrollbar-width:thin; scrollbar-color:rgba(255,255,255,.34) transparent;
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.word-bank, .match-words)::-webkit-scrollbar { width:calc(8 * var(--dc-u)); }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.word-bank, .match-words)::-webkit-scrollbar-track { background:transparent; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.word-bank, .match-words)::-webkit-scrollbar-thumb {
  background:rgba(255,255,255,.34); border-radius:999px;
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .w-chip {
  background:none !important; border:none !important; box-shadow:none !important;
  backdrop-filter:none !important; -webkit-backdrop-filter:none !important;
  padding:0; border-radius:0;
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--ej-fs-palabra);
  letter-spacing:var(--dc-tracking); color:var(--ej-tinta); text-transform:none;
  opacity:.88; line-height:1.2;
  text-shadow:0 calc(6 * var(--dc-u)) calc(14 * var(--dc-u)) rgba(12,18,30,.46);
  transition:opacity var(--dc-t-lento) var(--dc-ease),
             text-shadow var(--dc-t-lento) var(--dc-ease),
             transform var(--dc-t-lento) var(--dc-ease) !important;
}
@media (any-hover: hover) {
  :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .w-chip:hover {
    opacity:1; background:none !important; box-shadow:none !important;
    transform:translateY(calc(-5 * var(--dc-u)));
    text-shadow:0 calc(12 * var(--dc-u)) calc(22 * var(--dc-u)) rgba(12,18,30,.55),
                0 calc(24 * var(--dc-u)) calc(40 * var(--dc-u)) rgba(12,18,30,.34);
  }
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .w-chip:active { transform:translateY(calc(-2 * var(--dc-u))) scale(.985); }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .w-chip.selected {
  background:none !important; color:var(--ej-tinta); opacity:1; box-shadow:none !important;
  
  transform:translateY(calc(-8 * var(--dc-u))) scale(1.08);
  text-shadow:0 calc(16 * var(--dc-u)) calc(26 * var(--dc-u)) rgba(12,18,30,.62),
              0 calc(28 * var(--dc-u)) calc(44 * var(--dc-u)) rgba(12,18,30,.30);
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .w-chip.used { opacity:.26; text-shadow:none; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .w-chip.used:not(.leaving):not(.removing) { transform:none; }

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-img-grid {
  gap:calc(52 * var(--dc-u)) calc(44 * var(--dc-u)); margin-bottom:calc(24 * var(--dc-u));
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-card {
  background:none !important; border:none !important; box-shadow:none !important;
  overflow:visible; padding:0; border-radius:0;
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-card:hover { transform:none; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-card-img-wrap {
  border:none; border-radius:var(--ej-radio); overflow:hidden;
  background:var(--dc-card-inner); box-shadow:var(--ej-foto-sombra);
  transition:transform var(--dc-t-lento) var(--dc-ease),
             box-shadow var(--dc-t-lento) var(--dc-ease);
}
@media (any-hover: hover) {
  :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-card:hover .match-card-img-wrap,
  :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .describe-card:hover .match-card-img-wrap {
    transform:scale(1.045); box-shadow:var(--ej-foto-sombra-alta);
  }
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-card:hover .match-card-img,
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .describe-card:hover .match-card-img { transform:none; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-card-img,
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-card-img-placeholder {
  border-radius:inherit; border:none;
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-drop-zone {
  display:flex; width:100%; min-width:0; margin:calc(26 * var(--dc-u)) auto 0;
  font-size:var(--ej-fs-palabra); min-height:2.2em; height:auto; padding:.45em .9em; margin-left:0; margin-right:0;
  text-align:center; line-height:1.25; border-radius:var(--ej-r-zona);
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-card:has(.match-drop-zone.matched) .match-card-img-wrap { box-shadow:var(--ej-caja-ok); }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-card:has(.match-drop-zone.bad) .match-card-img-wrap { box-shadow:var(--ej-caja-mal); }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .foto-credito { font-family:var(--dc-font); font-size:calc(16 * var(--dc-u)); opacity:.4; }

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ratio-picker,
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-mode-row {
  display:flex; flex-wrap:wrap; align-items:baseline;
  gap:var(--dc-sp-8) var(--dc-sp-34);
  margin:var(--dc-sp-10) 0 var(--dc-sp-20);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ratio-btn,
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ej-op {
  background:none; border:none; box-shadow:none; border-radius:0;
  padding:var(--dc-sp-8) var(--dc-sp-14); margin:0 calc(var(--dc-sp-14) * -1);
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-22);
  color:var(--dc-ink); letter-spacing:var(--dc-tracking); text-transform:lowercase;
  text-shadow:var(--dc-shadow-text-strong); cursor:pointer; opacity:.42;
  transition:opacity var(--dc-t-lento) var(--dc-ease), transform var(--dc-t-lento) var(--dc-ease);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ratio-btn.active,
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ej-op.activa {
  background:none; color:var(--dc-ink); border:none; opacity:1;
}
@media (any-hover: hover) {
  :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ratio-btn:hover,
  :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ej-op:hover { background:none; opacity:1; transform:scale(1.06); }
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-card-add {
  border:none; box-shadow:var(--ej-foto-sombra); background:var(--dc-card-inner);
  
  aspect-ratio:4/3;
  display:flex; align-items:center; justify-content:center;
  transition:transform var(--dc-t-lento) var(--dc-ease),
             box-shadow var(--dc-t-lento) var(--dc-ease),
             aspect-ratio var(--dc-t-lento) var(--dc-ease),
             opacity var(--dc-t-lento) var(--dc-ease);
  opacity:.7;
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-card-img-wrap {
  transition:transform var(--dc-t-lento) var(--dc-ease),
             box-shadow var(--dc-t-lento) var(--dc-ease),
             aspect-ratio var(--dc-t-lento) var(--dc-ease);
}
@media (any-hover: hover) {
  :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-card-add:hover { opacity:1; background:var(--dc-card-inner); border:none; }
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-card-add-txt {
  font-family:var(--dc-font); font-weight:var(--dc-weight);
  font-size:var(--ej-fs-palabra, var(--dc-fs-30));
  color:var(--dc-ink-dark); opacity:.5; letter-spacing:var(--dc-tracking);
  pointer-events:none;
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-block-add {
  border:none; box-shadow:var(--ej-foto-sombra); background:var(--dc-card-inner);
  display:flex; align-items:center; justify-content:center; opacity:.7;
  transition:opacity var(--dc-t-lento) var(--dc-ease), transform var(--dc-t-lento) var(--dc-ease);
}
@media (any-hover: hover) {
  :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-block-add:hover { opacity:1; background:var(--dc-card-inner); border:none; transform:scale(1.02); }
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .inline-instruction-input {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-34);
  color:var(--dc-ink); caret-color:var(--dc-ink); letter-spacing:var(--dc-tracking);
  border-bottom:1px solid rgba(255,255,255,.16);
  transition:border-color var(--dc-t-lento) var(--dc-ease);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .inline-instruction-input:focus { border-bottom-color:rgba(255,255,255,.5); }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .inline-instruction-input::placeholder { color:var(--dc-ink); opacity:.3; }

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .f-label {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-22);
  color:var(--dc-ink); opacity:.42; letter-spacing:var(--dc-tracking);
  text-transform:lowercase; margin:var(--dc-sp-14) 0 var(--dc-sp-8);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .f-input,
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-title-input,
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-words-editor {
  background:none; border:none; box-shadow:none; border-radius:0; outline:none;
  font-family:var(--dc-font); font-weight:var(--dc-weight);
  color:var(--dc-ink); caret-color:var(--dc-ink); letter-spacing:var(--dc-tracking);
  border-bottom:1px solid rgba(255,255,255,.16);
  padding:var(--dc-sp-8) 0;
  transition:border-color var(--dc-t-lento) var(--dc-ease);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .f-input { font-size:var(--dc-fs-30); }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-title-input { font-size:var(--dc-fs-30); text-align:center; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-words-editor {
  font-size:var(--dc-fs-22); line-height:1.5; resize:none; border-bottom:none;
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .f-input:focus,
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-title-input:focus { border-bottom-color:rgba(255,255,255,.5); }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .f-input::placeholder,
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-title-input::placeholder,
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-words-editor::placeholder { color:var(--dc-ink); opacity:.3; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-editor-hint {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-22);
  color:var(--dc-ink); opacity:.38; letter-spacing:var(--dc-tracking);
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-card-img-wrap.con-recorte {
  background:none !important; box-shadow:none !important; border:none !important;
  overflow:visible;
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .con-recorte .match-card-edit-overlay { background:none; }

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-card-edit-overlay {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-22);
  letter-spacing:var(--dc-tracking); color:var(--dc-ink);
  text-shadow:var(--dc-shadow-text-strong); background:rgba(15,20,35,.28);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-card-img-wrap.con-recorte .match-card-img {
  object-fit:contain;
  filter:drop-shadow(0 calc(18 * var(--dc-u)) calc(26 * var(--dc-u)) rgba(15,20,30,.42));
  transition:filter var(--dc-t-lento) var(--dc-ease), transform var(--dc-t-lento) var(--dc-ease);
}
@media (any-hover: hover) {
  :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-card:hover .match-card-img-wrap.con-recorte,
  :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .describe-card:hover .match-card-img-wrap.con-recorte {
    box-shadow:none;
  }
  :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-card:hover .con-recorte .match-card-img,
  :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .describe-card:hover .con-recorte .match-card-img {
    filter:drop-shadow(0 calc(26 * var(--dc-u)) calc(34 * var(--dc-u)) rgba(15,20,30,.5));
  }
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-card:has(.match-drop-zone.matched) .match-card-img-wrap.con-recorte,
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-card:has(.match-drop-zone.bad) .match-card-img-wrap.con-recorte { box-shadow:none; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-card:has(.match-drop-zone.matched) .con-recorte .match-card-img {
  filter:drop-shadow(0 0 calc(22 * var(--dc-u)) rgba(120,220,150,.75));
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .match-card:has(.match-drop-zone.bad) .con-recorte .match-card-img {
  filter:drop-shadow(0 0 calc(22 * var(--dc-u)) rgba(255,120,130,.75));
}

:is(#screen-lesson, #aula-clase-abierta) .ex-costura {
  position:relative; height:calc(44 * var(--dc-u)); cursor:pointer;
  display:flex; align-items:center; justify-content:center;
}

:is(#screen-lesson, #aula-clase-abierta) .ex-costura.entre {
  height:calc(110 * var(--dc-u)); margin-top:calc(-110 * var(--dc-u)); pointer-events:none; z-index:2;
}
:is(#screen-lesson, #aula-clase-abierta) .ex-costura.entre::before {
  content:''; position:absolute; left:0; right:0; top:50%; height:calc(52 * var(--dc-u));
  transform:translateY(-50%); pointer-events:auto; cursor:pointer;
}
:is(#screen-lesson, #aula-clase-abierta) .ex-costura.entre:not(.fin)::after {
  content:''; position:absolute; left:6%; right:6%; top:50%; height:1px; pointer-events:none;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.30) 26%, rgba(255,255,255,.30) 74%, transparent);
  filter:blur(calc(1.4 * var(--dc-u)));
  transition:opacity var(--dc-t-lento) var(--dc-ease);
}

:is(#exercises-container.con-costuras .ex-wysiwyg, #live-view-content .live-lesson-block)::after { display:none; }
:is(#screen-lesson, #aula-clase-abierta) .ex-costura > span {
  position:relative; z-index:1;
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-22);
  color:var(--dc-ink); letter-spacing:var(--dc-tracking);
  text-shadow:var(--dc-shadow-text-strong);
  opacity:0; transform:translateY(calc(4 * var(--dc-u)));
  transition:opacity var(--dc-t-lento) var(--dc-ease), transform var(--dc-t-lento) var(--dc-ease);
  pointer-events:none;
}
@media (any-hover: hover) {
  :is(#screen-lesson, #aula-clase-abierta) .ex-costura:hover > span { opacity:.85; transform:none; }
  :is(#screen-lesson, #aula-clase-abierta) .ex-costura.entre:hover::after { opacity:0; }
}

@media (hover:none) { :is(#screen-lesson, #aula-clase-abierta) .ex-costura { display:none; } }

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.col-del-btn, .match-card-del) {
  background:none !important; border:none; box-shadow:none;
  -webkit-backdrop-filter:none; backdrop-filter:none;
  width:auto; height:auto; border-radius:0; padding:var(--dc-sp-8);
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-22);
  color:var(--dc-ink); text-shadow:var(--dc-shadow-text-strong); line-height:1;
  transition:opacity var(--dc-t-lento) var(--dc-ease), transform var(--dc-t-lento) var(--dc-ease);
}
@media (any-hover: hover) {
  :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.col-del-btn, .match-card-del):hover {
    opacity:1; transform:scale(1.12);
  }
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .so-punto { display:none; }

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .so-opciones {
  position:absolute; top:calc(100% + 10 * var(--dc-u)); left:50%;
  transform:translateX(-50%) translateY(calc(-10 * var(--dc-u)));
  display:flex; flex-direction:column; align-items:center; gap:calc(8 * var(--dc-u));
  padding:calc(18 * var(--dc-u)) calc(30 * var(--dc-u));
  border-radius:var(--ej-r-zona);
  background:var(--ej-metal);
  backdrop-filter:var(--ej-vidrio-blur); -webkit-backdrop-filter:var(--ej-vidrio-blur);
  box-shadow:var(--ej-alzado-alto);
  z-index:60; opacity:0; pointer-events:none;
  transition:opacity var(--dc-t-lento) var(--dc-ease), transform var(--dc-t-lento) var(--dc-ease);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .so-hueco.abierto .so-opciones {
  opacity:1; pointer-events:auto; transform:translateX(-50%) translateY(0);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .so-opcion {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:.92em;
  letter-spacing:var(--dc-tracking); color:var(--ej-tinta); white-space:nowrap;
  background:none; border:none; padding:calc(2 * var(--dc-u)) calc(6 * var(--dc-u));
  cursor:pointer; opacity:.78; text-shadow:0 calc(6 * var(--dc-u)) calc(14 * var(--dc-u)) rgba(12,18,30,.46);
  transition:opacity var(--dc-t-lento) var(--dc-ease),
             transform var(--dc-t-lento) var(--dc-ease),
             text-shadow var(--dc-t-lento) var(--dc-ease);
}
@media (any-hover: hover) {
  :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .so-opcion:hover {
    opacity:1; transform:scale(1.06);
    text-shadow:0 calc(12 * var(--dc-u)) calc(20 * var(--dc-u)) rgba(22,32,47,.30);
  }
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .so-line.so-eligiendo {
  transform:translateY(calc(-8 * var(--dc-u))); text-shadow:var(--dc-shadow-text-strong);
  position:relative; z-index:70;
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .so-hay-eleccion .so-line:not(.so-eligiendo) {
  filter:blur(calc(3 * var(--dc-u))) brightness(.55); opacity:.5;
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .so-hay-eleccion .sv-instruction {
  filter:blur(calc(2.5 * var(--dc-u))); opacity:.28;
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .wa-line { line-height:2.1; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .wa-hueco { min-width:calc(120 * var(--dc-u)); padding:0 .55em; }

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .wa-input { flex:0 0 auto; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .wa-input {
  background:none !important; border:none !important; box-shadow:none !important;
  
  backdrop-filter:none !important; -webkit-backdrop-filter:none !important;
  border-radius:0; padding:0 .22em; height:1.3em; text-align:center;
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:1em;
  letter-spacing:var(--dc-tracking); color:var(--ej-tinta); caret-color:var(--ej-tinta);
  outline:none; min-width:calc(110 * var(--dc-u));
  
  transition:width .26s var(--dc-ease), text-shadow var(--dc-t-lento) var(--dc-ease);
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .wa-input.ok,
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .wa-input.bad { color:var(--dc-ink); }

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .check-row {
  border:none; background:none; padding:calc(28 * var(--dc-u)) 0 0;
  justify-content:flex-start;
}
.ex-comprobar { font-size:var(--dc-fs-30); opacity:.6; }
.ex-comprobar.hecho { opacity:.35; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .result-banner {
  background:none !important; border:none; padding:calc(18 * var(--dc-u)) 0 0;
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-22);
  letter-spacing:var(--dc-tracking); text-transform:lowercase; text-align:left;
  border-radius:0; animation:none;
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .result-banner.ok,
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .result-banner.bad {
  background:none !important; border:none !important; box-shadow:none !important;
  color:var(--dc-ink) !important; display:block;
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .result-banner {
  font-size:var(--dc-fs-30); opacity:.85;
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .result-banner.ok {
  text-shadow:0 0 calc(16 * var(--dc-u)) rgba(72,205,140,.55),
              0 0 calc(44 * var(--dc-u)) rgba(46,180,110,.24);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .result-banner.bad {
  text-shadow:0 0 calc(16 * var(--dc-u)) rgba(255,110,125,.55),
              0 0 calc(44 * var(--dc-u)) rgba(230,70,90,.22);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ex-completed-banner {
  background:none !important; border:none; box-shadow:none;
  font-family:var(--dc-font); font-size:var(--dc-fs-22); color:var(--dc-ink);
  opacity:.45; text-transform:lowercase; padding:calc(10 * var(--dc-u)) 0 0;
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ex-wysiwyg.ex-completed { opacity:.62; }

.ex-vacio {
  display:flex; flex-direction:column; align-items:flex-start;
  padding:calc(30 * var(--dc-u)) 0;
}
.ex-vacio-frase {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-30);
  color:var(--dc-ink); opacity:.55; letter-spacing:var(--dc-tracking);
}
#screen-lesson .add-ex-btn {
  width:auto; margin:calc(40 * var(--dc-u)) auto calc(80 * var(--dc-u));
  padding:0; border:none !important; background:none !important; box-shadow:none !important;
  border-radius:0; gap:0;
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-40);
  letter-spacing:var(--dc-tracking); text-transform:lowercase; color:var(--dc-ink);
  opacity:.5; text-shadow:none;
  transition:opacity var(--dc-t-lento) var(--dc-ease), text-shadow var(--dc-t-lento) var(--dc-ease);
}
@media (any-hover: hover) {
  #screen-lesson .add-ex-btn:hover {
    opacity:1; text-shadow:var(--dc-shadow-text-strong); background:none !important;
    border:none !important; transform:none;
  }
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .img-gallery-outer {
  position:relative; overflow:visible; border-radius:0;
  background:none; box-shadow:none; transform:none; perspective:none;
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .img-gallery-outer:hover { box-shadow:none; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .img-gallery-wrap {
  border-radius:var(--ej-radio); overflow:hidden; background:var(--dc-card-inner);
  box-shadow:var(--ej-foto-sombra);
  transition:transform var(--dc-t-lento) var(--dc-ease),
             box-shadow var(--dc-t-lento) var(--dc-ease),
             aspect-ratio .32s var(--dc-ease);
}
@media (any-hover: hover) {
  :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .img-gallery-outer:hover .img-gallery-wrap {
    transform:scale(1.025); box-shadow:var(--ej-foto-sombra-alta);
  }
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .img-gallery-track {
  transition:transform var(--dc-t-lento) var(--dc-ease);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .img-gallery-slide img { border-radius:0; }

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ig-pie {
  display:flex; align-items:center; justify-content:center;
  gap:calc(30 * var(--dc-u)); margin-top:calc(30 * var(--dc-u));
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ig-pie .ex-accion { font-size:var(--dc-fs-22); }

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .img-gallery-wrap[id]::after {
  content:''; position:absolute; left:0; right:0; top:0; height:30%; z-index:2; pointer-events:none;
  background:linear-gradient(to bottom, rgba(12,18,30,.46), rgba(12,18,30,.18) 45%, rgba(12,18,30,0));
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ig-lado {
  top:calc(20 * var(--dc-u)); transform:none; opacity:.86; z-index:5;
  font-size:var(--dc-fs-24, calc(24 * var(--dc-u)));
  padding:var(--dc-sp-14) var(--dc-sp-20); margin:0;
  text-shadow:0 calc(2 * var(--dc-u)) calc(10 * var(--dc-u)) rgba(12,18,30,.62),
              0 0 calc(26 * var(--dc-u)) rgba(12,18,30,.5);
  transition:opacity .3s var(--dc-ease), transform .3s var(--dc-ease);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ig-lado.prev { left:calc(16 * var(--dc-u)); transform-origin:left center; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ig-lado.next { right:calc(16 * var(--dc-u)); transform-origin:right center; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .img-gallery-outer:hover .ig-lado { opacity:.94; }
@media (any-hover: hover) {
  :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ig-lado:hover { opacity:1; transform:scale(1.05); }
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ig-lado:active { transform:scale(.97); }

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .img-gallery-track { transition:transform .42s cubic-bezier(.25,.1,.25,1); }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .img-gallery-wrap[id] {
  transition:transform var(--dc-t-lento) var(--dc-ease), box-shadow var(--dc-t-lento) var(--dc-ease), aspect-ratio .42s cubic-bezier(.25,.1,.25,1);
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ig-barra {
  position:relative; height:var(--dc-sp-18); width:min(calc(420 * var(--dc-u)), 46%);
  border-radius:var(--dc-radius-pill); background:rgba(255,255,255,.10);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .ig-barra-pulgar {
  position:absolute; top:0; bottom:0; border-radius:var(--dc-radius-pill);
  background:var(--dc-pill-metal); box-shadow:var(--dc-shadow-pill-metal);
  transition:left var(--dc-t-lento) var(--dc-ease), width var(--dc-t-lento) var(--dc-ease);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .img-gallery-caption {
  font-family:var(--dc-font); font-size:var(--dc-fs-22); letter-spacing:var(--dc-tracking);
  padding:calc(26 * var(--dc-u)) calc(30 * var(--dc-u));
  background:linear-gradient(to top, rgba(12,18,30,.62), transparent);
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.describe-input, .col-write-input, .fw-body) {
  background:var(--ej-vidrio-hondo) !important; border:none !important;
  backdrop-filter:var(--ej-vidrio-blur); -webkit-backdrop-filter:var(--ej-vidrio-blur);
  border-radius:var(--ej-r-zona);
  box-shadow:var(--ej-hundido) !important;
  padding:calc(26 * var(--dc-u)) calc(34 * var(--dc-u));
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-30);
  letter-spacing:var(--dc-tracking); line-height:1.65;
  color:var(--ej-tinta); caret-color:var(--ej-tinta);
  transition:background var(--dc-t-lento) var(--dc-ease),
             box-shadow var(--dc-t-lento) var(--dc-ease), height .32s var(--dc-ease);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.describe-input, .col-write-input)::placeholder {
  color:var(--ej-tinta); opacity:.52; font-family:var(--dc-font);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.describe-input, .col-write-input):focus,
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .fw-body:focus-within {
  background:var(--ej-vidrio) !important;
  box-shadow:var(--ej-alzado-alto) !important;
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .describe-grid { gap:calc(52 * var(--dc-u)) calc(44 * var(--dc-u)); }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .describe-card {
  background:none !important; border:none !important; box-shadow:none !important;
  gap:calc(24 * var(--dc-u));
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .describe-card:hover { transform:none; }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .describe-card .match-card-img-wrap {
  border-radius:var(--ej-radio); border:none; box-shadow:var(--ej-foto-sombra);
  transition:transform var(--dc-t-lento) var(--dc-ease), box-shadow var(--dc-t-lento) var(--dc-ease);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .translate-list { display:flex; flex-direction:column; gap:calc(46 * var(--dc-u)); }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .translate-card { gap:calc(18 * var(--dc-u)); }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .translate-sentence {
  background:none !important; border:none !important; box-shadow:none !important;
  padding:0 0 0 calc(34 * var(--dc-u)); border-radius:0;
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--ej-fs);
  letter-spacing:var(--dc-tracking); color:var(--dc-ink);
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-grid {
  gap:calc(40 * var(--dc-u)); grid-template-columns:repeat(auto-fit, minmax(calc(300 * var(--dc-u)), 1fr));
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-block {
  background:none !important; border:none !important; box-shadow:none !important;
  backdrop-filter:none; -webkit-backdrop-filter:none;
  padding:0; overflow:visible; border-radius:0; min-height:0;
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-block-title {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-30);
  letter-spacing:var(--dc-tracking); color:var(--dc-ink); opacity:.72;
  border:none; text-transform:none; text-align:center;
  padding:0 0 calc(16 * var(--dc-u)); background:none;
  text-shadow:var(--dc-shadow-text);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) :is(.col-drop, .col-block .col-write-input) {
  background:var(--ej-vidrio-hondo) !important; border:none !important;
  border-radius:var(--ej-r-zona);
  backdrop-filter:var(--ej-vidrio-blur); -webkit-backdrop-filter:var(--ej-vidrio-blur);
  box-shadow:var(--ej-hundido) !important;
  min-height:calc(180 * var(--dc-u));
  padding:calc(26 * var(--dc-u));
  transition:box-shadow var(--dc-t-lento) var(--dc-ease), background var(--dc-t-lento) var(--dc-ease);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-drop {
  
  display:flex; flex-direction:row; flex-wrap:wrap;
  align-items:flex-start; align-content:flex-start; justify-content:center;
  gap:calc(20 * var(--dc-u)) calc(28 * var(--dc-u));
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-drop.drag-over {
  background:var(--ej-vidrio-alto) !important;
  box-shadow:var(--ej-alzado-alto) !important;
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-word {
  color:var(--ej-tinta) !important; opacity:.9;
  text-shadow:0 calc(6 * var(--dc-u)) calc(14 * var(--dc-u)) rgba(12,18,30,.46);
}
@media (any-hover: hover) {
  :is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-word:hover {
    opacity:1; transform:translateY(calc(-5 * var(--dc-u)));
    text-shadow:0 calc(12 * var(--dc-u)) calc(22 * var(--dc-u)) rgba(12,18,30,.55),
                0 calc(24 * var(--dc-u)) calc(40 * var(--dc-u)) rgba(12,18,30,.34);
  }
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-word.col-word-in {
  animation:ejCae .52s cubic-bezier(.22,.61,.36,1) both;
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-word.col-word-out {
  animation:ejSeVa .23s cubic-bezier(.4,0,.6,1) both;
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-block .col-write-input {
  color:var(--dc-ink); caret-color:var(--dc-ink); min-height:calc(180 * var(--dc-u));
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .col-block .col-write-input::placeholder { color:var(--dc-ink); opacity:.34; }

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .fw-p {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--ej-fs);
  letter-spacing:var(--dc-tracking); line-height:1.8; color:var(--ej-tinta);
  background:none; border-radius:calc(18 * var(--dc-u));
  padding:calc(4 * var(--dc-u)) calc(10 * var(--dc-u)); margin:0 0 calc(10 * var(--dc-u));
  transition:background var(--dc-t-lento) var(--dc-ease);
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .fw-write[data-fw-edit="1"] .fw-p:focus {
  background:rgba(12,18,30,.20); box-shadow:none; outline:none;
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .fw-write.fw-empty .fw-p:first-child::before {
  color:var(--ej-tinta); opacity:.52; font-style:normal;
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .fw-body { min-height:calc(180 * var(--dc-u)); }
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .fw-title {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-30);
  color:var(--dc-ink); opacity:.62; letter-spacing:var(--dc-tracking);
  border:none; padding:0; margin:0 0 calc(24 * var(--dc-u));
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .fw-foot {
  border:none; padding:calc(14 * var(--dc-u)) 0 0; margin:0;
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-20);
  letter-spacing:var(--dc-tracking); color:var(--dc-ink); opacity:.4; text-transform:lowercase;
}

:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .rd-title {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-50);
  color:var(--dc-ink); letter-spacing:var(--dc-tracking);
  text-shadow:var(--dc-shadow-text); border:none; padding:0;
  margin:0 0 calc(26 * var(--dc-u));
}
:is(#screen-lesson, #aula-clase-abierta, #ej-ed, #lec-ov, #lec-nav, .mp-ej) .rd-paragraph { color:var(--dc-ink); }

#screen-lesson .clase-encabezado {
  padding-top:calc(56 * var(--dc-u)); margin-bottom:var(--dc-sp-40);
}
#aula-clase-abierta .clase-encabezado { padding-top:calc(34 * var(--dc-u)); }
#screen-lesson .clase-titulo { line-height:1.15; }

#tipo-ov {
  position:fixed; inset:0; z-index:2400;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:var(--dc-sp-24);
  background:rgba(30,40,55,.30);
  backdrop-filter:blur(30px); -webkit-backdrop-filter:blur(30px);
  opacity:0; transition:opacity var(--dc-t-entrada) var(--dc-ease);
}
#tipo-ov.abierto { opacity:1; }

html.sin-desenfoque #tipo-ov { backdrop-filter:none; -webkit-backdrop-filter:none; background:rgba(26,35,50,.88); }
#tipo-ov .tipo-marca {
  position:fixed; top:var(--dc-sp-34); left:var(--dc-sp-76);
  
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-80);
  color:var(--dc-ink); letter-spacing:var(--dc-tracking); line-height:1;
  cursor:pointer; text-shadow:var(--dc-shadow-text-strong);
  transition:transform var(--dc-t-lento) var(--dc-ease);
}
@media (any-hover: hover) { #tipo-ov .tipo-marca:hover { transform:scale(1.05); } }
#tipo-ov .tipo-titulo {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-100);
  color:var(--dc-ink); letter-spacing:var(--dc-tracking); line-height:1.04;
  text-shadow:var(--dc-shadow-text-strong); text-align:center;
}
#tipo-ov .tipo-galeria { width:100%; }
#tipo-ov .galeria-carril { --gal-w: calc(min(30vw, 40vh) * var(--dc-dens, 1)); align-items:center; }
#tipo-ov .tipo-in {
  display:flex; flex-direction:column; align-items:center; gap:calc(var(--gal-w) * .05);
  transition:transform var(--dc-t-lento) var(--dc-ease);
}
@media (any-hover: hover) { #tipo-ov .gal-item:hover .tipo-in { transform:scale(1.05); } }
#tipo-ov .tipo-nombre {
  font-family:var(--dc-font); font-weight:var(--dc-weight);
  font-size:calc(var(--gal-w) * .095); line-height:1.1; text-align:center;
  color:var(--dc-ink); letter-spacing:var(--dc-tracking);
  text-shadow:0 calc(10 * var(--dc-u)) calc(20 * var(--dc-u)) rgba(20,30,45,calc(.6 * var(--gal-ts, 1)));
  min-height:2.2em; display:flex; align-items:flex-end; justify-content:center;
}

:is(#tipo-ov, #ej-ed) .tipo-escena {
  position:relative; width:100%; aspect-ratio:16/10; overflow:hidden;
  border-radius:calc(var(--gal-w) * .092);
  background:var(--dc-card-inner);
  box-shadow:0 calc(var(--gal-w) * .052) calc(var(--gal-w) * .115) rgba(15,20,30,.34);
}
#tipo-ov .tipo-pie {
  font-family:var(--dc-font); font-size:calc(var(--gal-w) * .058);
  color:var(--dc-ink); opacity:.55; text-align:center; letter-spacing:var(--dc-tracking);
  min-height:1.6em;
}

:is(#tipo-ov, #ej-ed) .dm {
  position:absolute; inset:0; display:flex; flex-direction:column;
  align-items:center; justify-content:center; gap:calc(var(--gal-w) * .045);
  padding:calc(var(--gal-w) * .075);
  font-family:var(--dc-font); font-weight:var(--dc-weight);
  font-size:calc(var(--gal-w) * .062); letter-spacing:var(--dc-tracking);
  color:var(--dc-ink-dark);
}
:is(#tipo-ov, #ej-ed) .dm * { animation-play-state:paused; }
#tipo-ov .gal-item.es-centro .dm * { animation-play-state:running; }

#ej-ed .dm * { animation-play-state:running; }

#ej-ed {
  position:fixed; inset:0; z-index:2400;
  display:flex; flex-direction:column; align-items:center;
  overflow-y:auto; overscroll-behavior:contain;
  padding:var(--dc-sp-40) var(--dc-sp-76) var(--dc-sp-72);
  background:rgba(30,40,55,.30);
  backdrop-filter:blur(30px); -webkit-backdrop-filter:blur(30px);
  opacity:0; transition:opacity var(--dc-t-entrada) var(--dc-ease);
}
#ej-ed.abierto { opacity:1; }
html.sin-desenfoque #ej-ed { backdrop-filter:none; -webkit-backdrop-filter:none; background:rgba(26,35,50,.88); }
#ej-ed::-webkit-scrollbar { display:none; }

#ej-ed .tipo-marca {
  position:fixed; top:var(--dc-sp-34); left:var(--dc-sp-76);
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-80);
  color:var(--dc-ink); letter-spacing:var(--dc-tracking); line-height:1;
  cursor:pointer; text-shadow:var(--dc-shadow-text-strong);
  transition:transform var(--dc-t-lento) var(--dc-ease); z-index:2;
}
@media (any-hover: hover) { #ej-ed .tipo-marca:hover { transform:scale(1.05); } }

#ej-ed .ejed {
  width:100%; max-width:calc(760 * var(--dc-u));
  margin:auto; display:flex; flex-direction:column; align-items:center;
  gap:var(--dc-sp-24);
  transform:translateY(calc(14 * var(--dc-u)));
  transition:transform var(--dc-t-entrada) var(--dc-ease);
}
#ej-ed.abierto .ejed { transform:none; }

#ej-ed .ejed-escena {
  --gal-w:calc(300 * var(--dc-u));
  width:var(--gal-w); flex:none;
}
#ej-ed .ejed-cab {
  display:flex; align-items:center; gap:var(--dc-sp-36); width:100%;
}
#ej-ed .ejed-dice { flex:1; min-width:0; }
#ej-ed .ejed-nombre {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-60);
  color:var(--dc-ink); letter-spacing:var(--dc-tracking); line-height:1.06;
  text-shadow:var(--dc-shadow-text-strong);
}
#ej-ed .ejed-ayuda {
  margin-top:var(--dc-sp-14);
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-22);
  color:var(--dc-ink); opacity:.62; line-height:1.45; letter-spacing:var(--dc-tracking);
}
#ej-ed .ejed-ayuda code {
  font-family:inherit; background:none; padding:0;
  opacity:1; text-shadow:var(--dc-shadow-text-strong);
}
#ej-ed .ejed-ayuda b { font-weight:inherit; opacity:1; }

#ej-ed .ejed-cuerpo { width:100%; display:flex; flex-direction:column; gap:var(--dc-sp-20); }
#ej-ed .f-label {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-22);
  color:var(--dc-ink); opacity:.45; letter-spacing:var(--dc-tracking);
  text-transform:lowercase; margin:var(--dc-sp-10) 0 0;
}
#ej-ed .f-input, #ej-ed .pro-textarea {
  width:100%; background:none; border:none; outline:none; box-shadow:none;
  border-radius:0; resize:none;
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-34);
  color:var(--dc-ink); caret-color:var(--dc-ink); letter-spacing:var(--dc-tracking);
  line-height:1.4; padding:var(--dc-sp-8) 0;
  border-bottom:1px solid rgba(255,255,255,.16);
  transition:border-color var(--dc-t-lento) var(--dc-ease);
}
#ej-ed .pro-textarea { min-height:calc(150 * var(--dc-u)); }
#ej-ed .f-input:focus, #ej-ed .pro-textarea:focus { border-bottom-color:rgba(255,255,255,.5); }
#ej-ed .f-input::placeholder, #ej-ed .pro-textarea::placeholder { color:var(--dc-ink); opacity:.3; }

#ej-ed .pro-syntax-hint { display:none; }

#ej-ed .pro-preview-label {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-22);
  color:var(--dc-ink); opacity:.45; letter-spacing:var(--dc-tracking);
  text-transform:lowercase; margin-top:var(--dc-sp-16);
}

#ej-ed .pro-preview .so-hueco, #ej-ed .pro-preview .wa-hueco { font-size:inherit; }
#ej-ed .pro-preview {
  background:none; border:none; box-shadow:none; border-radius:0; padding:0;
  min-height:0; color:var(--dc-ink);
}

#ej-ed .ejed-pie {
  display:flex; align-items:baseline; justify-content:center; gap:var(--dc-sp-48);
  margin-top:var(--dc-sp-24);
}
#ej-ed .ejed-pie button {
  background:none; border:none; cursor:pointer; padding:var(--dc-sp-10) var(--dc-sp-20);
  margin:calc(var(--dc-sp-10) * -1) calc(var(--dc-sp-20) * -1);
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-40);
  color:var(--dc-ink); letter-spacing:var(--dc-tracking);
  text-shadow:var(--dc-shadow-text-strong);
  transition:transform var(--dc-t-lento) var(--dc-ease), opacity var(--dc-t-lento) var(--dc-ease);
}
#ej-ed .ejed-pie .ejed-cancelar { opacity:.55; font-size:var(--dc-fs-30); }
@media (any-hover: hover) { #ej-ed .ejed-pie button:hover { transform:scale(1.06); opacity:1; } }
#ej-ed .ejed-pie button:active { transform:scale(.985); }

#ej-ed .add-pair {
  align-self:flex-start; background:none; border:none; box-shadow:none; border-radius:0;
  padding:var(--dc-sp-10) var(--dc-sp-20); margin:0 calc(var(--dc-sp-20) * -1);
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-30);
  color:var(--dc-ink); opacity:.62; cursor:pointer; letter-spacing:var(--dc-tracking);
  text-shadow:var(--dc-shadow-text-strong);
  transition:transform var(--dc-t-lento) var(--dc-ease), opacity var(--dc-t-lento) var(--dc-ease);
}
@media (any-hover: hover) { #ej-ed .add-pair:hover { opacity:1; transform:scale(1.05); } }
@media (max-width:820px) {
  #ej-ed { padding:var(--dc-sp-40) var(--dc-sp-24) var(--dc-sp-60); }
  #ej-ed .ejed-cab { flex-direction:column; align-items:flex-start; gap:var(--dc-sp-20); }
  #ej-ed .ejed-escena { --gal-w:min(62vw, calc(300 * var(--dc-u))); }
  #ej-ed .tipo-marca { left:var(--dc-sp-24); font-size:var(--dc-fs-30); }
}
@media (prefers-reduced-motion: reduce) { :is(#tipo-ov, #ej-ed) .dm * { animation:none !important; } }

#ej-ed .ejed { max-width:calc(960 * var(--dc-u)); gap:var(--dc-sp-34); }
#ej-ed .ejed-hoja { width:100%; }
#ej-ed .ejed-obra { width:100%; position:relative; }

#ej-ed .ejed-consigna {
  display:block; width:100%; background:none; border:none; outline:none; box-shadow:none; padding:0;
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-30);
  color:var(--dc-ink); caret-color:var(--dc-ink); letter-spacing:var(--dc-tracking);
  opacity:.72; margin:0 0 calc(30 * var(--dc-u)); transition:opacity var(--dc-t-lento) var(--dc-ease);
}
#ej-ed .ejed-consigna:focus { opacity:1; }
#ej-ed .ejed-consigna::placeholder { color:var(--dc-ink); opacity:.45; }
#ej-ed .ejed-titulo-lectura { font-size:var(--dc-fs-52, calc(52 * var(--dc-u))); opacity:1; text-shadow:var(--dc-shadow-text); }

#ej-ed .ep-papel {
  position:relative; outline:none; min-height:38vh; cursor:text;
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--ej-fs);
  color:var(--dc-ink); caret-color:var(--dc-ink); letter-spacing:var(--dc-tracking); line-height:1.85;
}
#ej-ed .ep-papel.ep-vacio::before {
  content:attr(data-vacio); position:absolute; left:calc(34 * var(--dc-u)); top:calc(8 * var(--dc-u));
  opacity:.38; pointer-events:none;
}
#ej-ed .ep-reading.ep-vacio::before { left:0; }
#ej-ed .ep-linea {
  position:relative; min-height:1.85em; word-break:normal; overflow-wrap:break-word;
  padding:calc(8 * var(--dc-u)) calc(12 * var(--dc-u)) calc(8 * var(--dc-u)) calc(34 * var(--dc-u));
  margin:0 0 calc(12 * var(--dc-u));
}
#ej-ed .ep-linea::before {
  content:''; position:absolute; left:calc(2 * var(--dc-u)); top:calc(8 * var(--dc-u) + .925em - 6 * var(--dc-u));
  width:calc(12 * var(--dc-u)); height:calc(12 * var(--dc-u)); border-radius:50%;
  background:rgba(255,255,255,.34);
}
#ej-ed .ep-reading .ep-linea { padding-left:0; font-size:var(--dc-fs-30); line-height:1.6; }
#ej-ed .ep-reading .ep-linea::before { display:none; }
#ej-ed .ep-reading b, #ej-ed .ep-reading strong { font-weight:inherit; text-shadow:var(--dc-shadow-text-strong); }

#ej-ed .ep-translate .ep-linea::after {
  content:''; display:block; height:calc(76 * var(--dc-u)); margin:calc(14 * var(--dc-u)) 0 calc(10 * var(--dc-u));
  border-radius:var(--ej-r-zona); background:var(--ej-vidrio-hondo); box-shadow:var(--ej-hundido);
  pointer-events:none;
}

#ej-ed .ep-hueco {
  display:inline-block; min-width:calc(150 * var(--dc-u)); padding:0 .8em; margin:0 .3em;
  line-height:1.85em; height:1.85em; vertical-align:middle; text-align:center; white-space:pre;
  border-radius:var(--ej-r-pildora); background:var(--ej-metal); box-shadow:var(--ej-alzado);
  color:var(--ej-tinta); text-shadow:var(--ej-tinta-sombra); caret-color:var(--dc-ink);
  transition:box-shadow var(--dc-t-lento) var(--dc-ease), transform var(--dc-t-lento) var(--dc-ease), min-width var(--dc-t-lento) var(--dc-ease);
}
#ej-ed .ep-hueco.ep-abierto, #ej-ed .ep-hueco:focus-within { box-shadow:var(--ej-alzado-alto); }
#ej-ed .ep-hueco.ep-nace { animation:epNace .44s cubic-bezier(.22,.61,.36,1) both; }
@keyframes epNace { from { opacity:0; transform:scale(.82); } to { opacity:1; transform:none; } }

#ej-ed .ep-banco { margin-bottom:calc(34 * var(--dc-u)); min-height:2.6em; }
#ej-ed .ep-banco-vacio { font-family:var(--dc-font); font-size:var(--dc-fs-22); color:var(--dc-ink); opacity:.4; padding:0 .4em; }
#ej-ed .ep-banco .w-chip { cursor:default; }
#ej-ed .ep-otra {
  background:none; border:none; outline:none; box-shadow:none; padding:0 .4em; width:11em;
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--ej-fs-palabra);
  color:var(--dc-ink); caret-color:var(--dc-ink); letter-spacing:var(--dc-tracking); opacity:.55;
}
#ej-ed .ep-otra:focus { opacity:1; }
#ej-ed .ep-otra::placeholder { color:var(--dc-ink); opacity:.6; }

#ej-ed .ep-quitar { display:inline-block; width:0; overflow:hidden; opacity:0; margin-left:0;
  font-size:.62em; vertical-align:middle; transition:opacity var(--dc-t-lento) var(--dc-ease), width var(--dc-t-lento) var(--dc-ease), margin var(--dc-t-lento) var(--dc-ease); }
#ej-ed :is(.ep-sobra, .ep-col-pal) { cursor:pointer; }
@media (any-hover: hover) { #ej-ed :is(.ep-sobra, .ep-col-pal):hover .ep-quitar { width:3.2em; opacity:.7; margin-left:.4em; } }

#ej-ed .ep-ratios { margin:0 0 calc(30 * var(--dc-u)); }
#ej-ed .ep-foto { cursor:pointer; position:relative; }
#ej-ed .ep-foto-acciones {
  position:absolute; top:calc(12 * var(--dc-u)); right:calc(18 * var(--dc-u)); z-index:3;
  display:flex; gap:calc(26 * var(--dc-u)); opacity:0; transition:opacity var(--dc-t-lento) var(--dc-ease);
}
#ej-ed .ep-foto-acciones .ex-accion { opacity:.92; text-shadow:0 1px 3px rgba(12,18,30,.7), 0 0 calc(22 * var(--dc-u)) rgba(12,18,30,.55); }
@media (any-hover: hover) {
  #ej-ed :is(.ep-foto-tarjeta, .ep-diapo):hover .ep-foto-acciones { opacity:1; }
  #ej-ed .ep-foto-acciones .ex-accion:hover { opacity:1; }
}
@media (hover:none) { #ej-ed .ep-foto-acciones { opacity:1; } }
#ej-ed .ep-foto-nueva .ep-foto { display:flex; align-items:center; justify-content:center; aspect-ratio:4/3; background:var(--dc-card-inner); }
#ej-ed .ep-foto-nueva .match-card-add-txt { font-family:var(--dc-font); font-size:var(--dc-fs-30); color:var(--dc-ink); opacity:.6; }
#ej-ed .ep-palabra-foto { cursor:text; outline:none; text-align:center; color:var(--ej-tinta); caret-color:var(--dc-ink); }
#ej-ed .ep-palabra-foto::placeholder { color:var(--dc-ink); opacity:.5; }
#ej-ed .ep-subiendo :is(img, .match-card-img) { opacity:.55; filter:blur(2px); transition:opacity .4s, filter .4s; }
#ej-ed .ep-se-va { opacity:0 !important; filter:blur(8px); transform:scale(.96); pointer-events:none;
  transition:opacity .26s var(--dc-ease), filter .26s var(--dc-ease), transform .26s var(--dc-ease); }
#ej-ed .describe-input[disabled] { pointer-events:none; min-height:calc(90 * var(--dc-u)); }

#ej-ed .ep-galeria .galeria-carril { --gal-w:calc(min(30vw, 42vh) * var(--dc-dens, 1)); }

#ej-ed .ep-galeria { width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); }
#ej-ed .ep-diapo .gal-foto > img { object-fit:cover; }
#ej-ed .ep-pie-foto {
  display:block; width:100%; background:none; border:none; outline:none; box-shadow:none; text-align:center;
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:calc(var(--gal-w) * .062);
  color:var(--dc-ink); caret-color:var(--dc-ink); letter-spacing:var(--dc-tracking); opacity:.7; min-height:1.6em;
}
#ej-ed .ep-pie-foto::placeholder { color:var(--dc-ink); opacity:.45; }
#ej-ed .ep-diapo .ep-foto-acciones { top:calc(var(--gal-w) * .04); right:calc(var(--gal-w) * .05); }

#ej-ed .ep-modo { margin:0 0 calc(26 * var(--dc-u)); }
#ej-ed .ep-col { position:relative; }
#ej-ed .ep-col-titulo { background:none; border:none; outline:none; box-shadow:none; width:100%; text-align:center;
  color:var(--dc-ink); caret-color:var(--dc-ink); }
#ej-ed .ep-col-titulo::placeholder { color:var(--dc-ink); opacity:.4; }
#ej-ed .ep-col-cajon { min-height:calc(160 * var(--dc-u)); display:flex; flex-direction:row !important; flex-wrap:wrap;
  align-items:center; align-content:flex-start; justify-content:center; gap:calc(10 * var(--dc-u)) calc(18 * var(--dc-u)); }
#ej-ed .ep-col-cajon .ep-col-otra { order:99; }
#ej-ed .ep-col-nota { font-family:var(--dc-font); font-size:var(--dc-fs-22); color:var(--dc-ink); opacity:.45; align-self:center; margin:auto; }
#ej-ed .ep-col-otra { width:7em; }
#ej-ed .ep-col-quitar { position:absolute; top:0; right:0; opacity:0; transition:opacity var(--dc-t-lento) var(--dc-ease); }
@media (any-hover: hover) { #ej-ed .ep-col:hover .ep-col-quitar { opacity:.6; } }
#ej-ed .ep-col-nueva { cursor:pointer; display:flex; align-items:center; justify-content:center; min-height:calc(160 * var(--dc-u));
  margin-top:calc(var(--dc-fs-30) * 1.4 + 10 * var(--dc-u));
  border:none !important; border-radius:var(--ej-r-zona); background:var(--ej-vidrio-hondo) !important; box-shadow:var(--ej-hundido) !important;
  opacity:.5; transition:opacity var(--dc-t-lento) var(--dc-ease); }
@media (any-hover: hover) { #ej-ed .ep-col-nueva:hover { opacity:.9; } }
#ej-ed .ep-col-nueva .match-card-add-txt { font-family:var(--dc-font); font-size:var(--dc-fs-30); color:var(--dc-ink); }

#ej-ed .ep-fw .ep-fw-ph { outline:none; cursor:text; opacity:.6; min-height:1.65em; }
#ej-ed .ep-fw .ep-fw-ph:empty::before { content:attr(data-vacio); opacity:.6; }
#ej-ed .ep-fw .fw-count { opacity:.45; }

#modal-crop { z-index:2600; align-items:center; background:rgba(30,40,55,.30);
  -webkit-backdrop-filter:blur(30px); backdrop-filter:blur(30px); }
#modal-crop .modal { background:none !important; border:none !important; box-shadow:none !important; border-radius:0 !important;
  -webkit-backdrop-filter:none; backdrop-filter:none; max-width:min(calc(820 * var(--dc-u)), 92vw) !important; animation:none; }
#modal-crop .modal-handle, #modal-crop .modal-close { display:none !important; }
#modal-crop .modal-head { border:none; background:none; padding:0 0 calc(10 * var(--dc-u)); justify-content:center; }
#modal-crop .modal-title { font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-60);
  color:var(--dc-ink); letter-spacing:var(--dc-tracking); text-shadow:var(--dc-shadow-text-strong); text-align:center; width:100%; }
#modal-crop .modal-body { padding:0; overflow:visible; }
#modal-crop #crop-modal-hint { font-family:var(--dc-font) !important; font-size:var(--dc-fs-22) !important; color:var(--dc-ink) !important;
  opacity:.6; text-align:center; margin:0 0 calc(24 * var(--dc-u)) !important; letter-spacing:var(--dc-tracking); }
#modal-crop #crop-stage { border-radius:var(--ej-radio, calc(44 * var(--dc-u))); background:rgba(12,18,30,.35);
  box-shadow:0 calc(22 * var(--dc-u)) calc(60 * var(--dc-u)) rgba(15,20,30,.4); }
#modal-crop #crop-frame { border:none; border-radius:inherit; box-shadow:inset 0 0 0 1px rgba(255,255,255,.35); }
#modal-crop .crop-zoom-ico { display:none; }
#modal-crop #crop-zoom { -webkit-appearance:none; appearance:none; height:calc(18 * var(--dc-u)); border-radius:99px;
  background:rgba(255,255,255,.12); outline:none; cursor:pointer; }
#modal-crop #crop-zoom::-webkit-slider-thumb { -webkit-appearance:none; width:calc(90 * var(--dc-u)); height:calc(18 * var(--dc-u));
  border-radius:99px; background:var(--dc-pill-metal); box-shadow:var(--dc-shadow-pill-metal); border:none; }
#modal-crop #crop-zoom::-moz-range-thumb { width:calc(90 * var(--dc-u)); height:calc(18 * var(--dc-u));
  border-radius:99px; background:var(--dc-pill-metal); box-shadow:var(--dc-shadow-pill-metal); border:none; }
#modal-crop .modal-btn { background:none !important; border:none !important; box-shadow:none !important; border-radius:0 !important;
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-40); color:var(--dc-ink) !important;
  letter-spacing:var(--dc-tracking); text-shadow:var(--dc-shadow-text-strong); flex:0 0 auto !important; padding:var(--dc-sp-10) var(--dc-sp-20);
  transition:transform var(--dc-t-lento) var(--dc-ease), opacity var(--dc-t-lento) var(--dc-ease); }
#modal-crop .modal-btn.cancel { opacity:.55; font-size:var(--dc-fs-30); }
#modal-crop .crop-pie { justify-content:center; gap:var(--dc-sp-48) !important; align-items:baseline; }
#modal-crop .modal-btn.save { order:-1; }
#modal-crop .modal { overflow:visible !important; }
@media (any-hover: hover) { #modal-crop .modal-btn:hover { transform:scale(1.06); opacity:1; } }

:is(#tipo-ov, #ej-ed) .dm-frase { display:flex; align-items:center; gap:.34em; white-space:nowrap; }
:is(#tipo-ov, #ej-ed) .dm-tenue { opacity:.4; }
:is(#tipo-ov, #ej-ed) .dm-fila { display:flex; align-items:center; justify-content:center; gap:calc(var(--gal-w) * .05); width:100%; }

:is(#tipo-ov, #ej-ed) .dm-hueco {
  position:relative; display:inline-flex; align-items:center; justify-content:center;
  min-width:calc(var(--gal-w) * .22); height:1.5em; padding:0 .3em;
}
:is(#tipo-ov, #ej-ed) .dm-hueco-ancho { min-width:calc(var(--gal-w) * .3); }
:is(#tipo-ov, #ej-ed) .dm-hueco::before {
  content:''; position:absolute; inset:calc(var(--gal-w) * .006) 0;
  border-radius:calc(var(--gal-w) * .022);
  box-shadow:0 calc(var(--gal-w) * .022) calc(var(--gal-w) * .07) rgba(20,30,45,.42);
}
:is(#tipo-ov, #ej-ed) .dm-banco {
  display:flex; gap:calc(var(--gal-w) * .06); align-items:center;
  padding:calc(var(--gal-w) * .028) calc(var(--gal-w) * .07);
  border-radius:calc(var(--gal-w) * .12);
  background:rgba(255,255,255,.42);
  box-shadow:0 calc(var(--gal-w) * .018) calc(var(--gal-w) * .06) rgba(15,20,30,.12);
}
:is(#tipo-ov, #ej-ed) .dm-pal { opacity:.8; }
:is(#tipo-ov, #ej-ed) .dm-foto {
  display:block; width:calc(var(--gal-w) * .26); aspect-ratio:1/1;
  border-radius:calc(var(--gal-w) * .05);
  background:linear-gradient(150deg, #9fb0c6, #6d7f9c);
  box-shadow:0 calc(var(--gal-w) * .03) calc(var(--gal-w) * .07) rgba(15,20,30,.32);
}
:is(#tipo-ov, #ej-ed) .dm-foto-2 { background:linear-gradient(150deg, #c3cbd6, #8593ab); }
:is(#tipo-ov, #ej-ed) .dm-foto-ancha { width:calc(var(--gal-w) * .58); aspect-ratio:16/10; }
:is(#tipo-ov, #ej-ed) .dm-zona {
  display:flex; flex-direction:column; gap:calc(var(--gal-w) * .028);
  width:calc(var(--gal-w) * .62); padding:calc(var(--gal-w) * .04);
  border-radius:calc(var(--gal-w) * .05); background:rgba(12,18,30,.14);
}
:is(#tipo-ov, #ej-ed) .dm-zona-alta { width:calc(var(--gal-w) * .7); }
:is(#tipo-ov, #ej-ed) .dm-renglon {
  display:block; height:calc(var(--gal-w) * .022); border-radius:99px;
  background:rgba(20,30,45,.42); width:0;
}
:is(#tipo-ov, #ej-ed) .dm-columna {
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:calc(var(--gal-w) * .026);
  width:calc(var(--gal-w) * .3); height:calc(var(--gal-w) * .3);
  border-radius:calc(var(--gal-w) * .05);
  background:var(--dc-card-inner);
  box-shadow:0 calc(var(--gal-w) * .022) calc(var(--gal-w) * .055) rgba(15,20,30,.26);
}
:is(#tipo-ov, #ej-ed) .dm-opciones { display:flex; flex-direction:column; align-items:center; gap:calc(var(--gal-w) * .012); }
:is(#tipo-ov, #ej-ed) .dm-op { opacity:0; }
:is(#tipo-ov, #ej-ed) .dm-parrafo { display:flex; flex-direction:column; gap:calc(var(--gal-w) * .03); width:calc(var(--gal-w) * .66); }
:is(#tipo-ov, #ej-ed) .dm-barra {
  position:relative; width:calc(var(--gal-w) * .34); height:calc(var(--gal-w) * .022);
  border-radius:99px; background:rgba(255,255,255,.35);
}
:is(#tipo-ov, #ej-ed) .dm-barra-pulgar {
  position:absolute; top:0; bottom:0; width:33%; border-radius:99px;
  background:var(--dc-pill-metal); box-shadow:0 calc(var(--gal-w)*.01) calc(var(--gal-w)*.03) rgba(20,30,45,.4);
  animation:dmBarra 5.4s var(--dc-ease) infinite;
}
:is(#tipo-ov, #ej-ed) .dm-cursor {
  width:calc(var(--gal-w) * .008); height:1.05em; background:currentColor;
  animation:dmParpadeo 1s steps(1) infinite;
}

:is(#tipo-ov, #ej-ed) .dm-pal-va { animation:dmSeVa 4.2s var(--dc-ease) infinite; }
:is(#tipo-ov, #ej-ed) .dm-cae    { animation:dmCae  4.2s var(--dc-ease) infinite; }
:is(#tipo-ov, #ej-ed) .dm-cae-tarde { animation:dmCae 5.4s var(--dc-ease) infinite; animation-delay:.6s; }
@keyframes dmSeVa {
  0%, 24% { opacity:.8; transform:none; }
  38%,86% { opacity:0;  transform:translateY(calc(var(--gal-w) * .05)) scale(.9); }
  95%,100%{ opacity:.8; transform:none; }
}
@keyframes dmCae {
  0%, 26%  { opacity:0; transform:translateY(calc(var(--gal-w) * -.11)) scale(.92); filter:blur(3px); }
  44%, 84% { opacity:1; transform:none; filter:blur(0); }
  92%,100% { opacity:0; transform:translateY(calc(var(--gal-w) * -.11)) scale(.92); filter:blur(3px); }
}

:is(#tipo-ov, #ej-ed) .dm-teclea {
  display:inline-block; overflow:hidden; white-space:nowrap; vertical-align:bottom;
  animation:dmTeclea 4.6s steps(14) infinite;
}
@keyframes dmTeclea {
  0%,6%    { max-width:0; }
  38%, 84% { max-width:6em; }
  92%,100% { max-width:0; }
}
@keyframes dmParpadeo { 0%,49%{opacity:1;} 50%,100%{opacity:0;} }

:is(#tipo-ov, #ej-ed) .dm-op:nth-child(1) { animation:dmAparece 5.4s var(--dc-ease) infinite; animation-delay:.1s; }
:is(#tipo-ov, #ej-ed) .dm-op:nth-child(2) { animation:dmAparece 5.4s var(--dc-ease) infinite; animation-delay:.2s; }
:is(#tipo-ov, #ej-ed) .dm-op:nth-child(3) { animation:dmAparece 5.4s var(--dc-ease) infinite; animation-delay:.3s; }
:is(#tipo-ov, #ej-ed) .dm-op-elegida { font-weight:inherit; }
@keyframes dmAparece {
  0%, 8%   { opacity:0; transform:translateY(calc(var(--gal-w) * .02)); }
  20%, 52% { opacity:.75; transform:none; }
  62%,100% { opacity:0; transform:translateY(calc(var(--gal-w) * .02)); }
}

:is(#tipo-ov, #ej-ed) .dm-r1 { animation:dmRenglon 5.2s var(--dc-ease) infinite; }
:is(#tipo-ov, #ej-ed) .dm-r2 { animation:dmRenglon 5.2s var(--dc-ease) infinite; animation-delay:.7s; }
:is(#tipo-ov, #ej-ed) .dm-r3 { animation:dmRenglon 5.2s var(--dc-ease) infinite; animation-delay:1.4s; }
@keyframes dmRenglon {
  0%, 4%   { width:0; }
  34%, 82% { width:100%; }
  90%,100% { width:0; }
}

:is(#tipo-ov, #ej-ed) .dm-r-fijo { width:100%; }
:is(#tipo-ov, #ej-ed) .dm-r-corto { width:62%; }
:is(#tipo-ov, #ej-ed) .dm-r-resalta {
  background:linear-gradient(90deg, rgba(255,214,120,.95) 0%, rgba(255,214,120,.95) 100%);
  background-size:0% 100%; background-repeat:no-repeat;
  animation:dmResalta 5s var(--dc-ease) infinite;
}
@keyframes dmResalta {
  0%, 10%  { background-size:0% 100%; }
  46%, 84% { background-size:100% 100%; }
  92%,100% { background-size:0% 100%; }
}

:is(#tipo-ov, #ej-ed) .dm-foto-gira { animation:dmGira 5s var(--dc-ease) infinite; }
@keyframes dmGira {
  0%, 12%  { transform:perspective(600px) rotateY(0deg); }
  34%      { transform:perspective(600px) rotateY(-13deg); }
  46%      { transform:perspective(600px) rotateY(9deg); filter:brightness(1.12); }
  62%,100% { transform:perspective(600px) rotateY(0deg); }
}
@keyframes dmBarra {
  0%, 20%  { left:0; }
  46%, 70% { left:33%; }
  86%,100% { left:66%; }
}
@media (max-width:620px) {
  #tipo-ov .galeria-carril { --gal-w: 62vw; }
  #tipo-ov .tipo-titulo { font-size:var(--dc-fs-60); }
  #tipo-ov .tipo-marca { left:var(--dc-sp-24); font-size:var(--dc-fs-30); }
}

#alumno-panel-ajustes .aj-vuelta { transform-origin:center center; margin-bottom:var(--dc-sp-24); font-size:var(--dc-fs-80); }
#alumno-panel-ajustes .aj-clases .aj-vuelta { font-size:var(--dc-fs-68); margin-bottom:var(--dc-sp-10); }
#alumno-panel-ajustes .aj-idiomas { justify-content:center; gap:var(--dc-sp-60); margin-top:var(--dc-sp-24); }
#alumno-panel-ajustes .aj-idiomas .ent-op { font-size:var(--dc-fs-50); transform-origin:center; text-transform:none; }
#alumno-panel-ajustes .aj-clases { padding-bottom:var(--dc-sp-72); }

#alumno-panel-ajustes:has(.aj-clases) { justify-content:flex-start; }

.mc-aviso[hidden] { display:none; }
.mc-aviso {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-34);
  color:var(--dc-ink); line-height:1.3; text-align:center; max-width:calc(760 * var(--dc-u));
  text-shadow:var(--dc-shadow-text-strong); margin:0 auto var(--dc-sp-24);
}
.mc-saldo { text-align:center; margin-top:0; min-height:calc(80 * var(--dc-u)); }

.mc-linea {
  display:flex; align-items:baseline; justify-content:center; flex-wrap:wrap; gap:0 var(--dc-sp-18);
  font-family:var(--dc-font); font-weight:var(--dc-weight); color:var(--dc-ink);
  text-shadow:var(--dc-shadow-text-strong);
}
.mc-quedan, .mc-unidad { font-size:var(--dc-fs-40); line-height:1.1; }
.mc-quedan { opacity:.8; }
.mc-numero {
  font-size:var(--dc-fs-100); line-height:.95; letter-spacing:var(--dc-tracking);
  font-variant-numeric:tabular-nums;
}
.mc-cero {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-40);
  color:var(--dc-ink); line-height:1.3; max-width:calc(760 * var(--dc-u)); margin:0 auto;
  text-shadow:var(--dc-shadow-text-strong); text-wrap:balance;
}

.idi-enlace {
  color:var(--dc-ink); cursor:pointer; white-space:nowrap;
  text-decoration:underline; text-decoration-color:rgba(255,255,255,.55);
  text-decoration-thickness:max(1px, calc(3 * var(--dc-u))); text-underline-offset:.2em;
  transition:text-decoration-color var(--dc-t-lento) var(--dc-ease), opacity var(--dc-t-lento) var(--dc-ease);
}
@media (any-hover: hover) { .idi-enlace:hover { text-decoration-color:var(--dc-ink); } }
.idi-enlace:focus-visible { outline:none; text-decoration-color:var(--dc-ink); }

.mc-pendiente, .mc-nota-sola {
  font-family:var(--dc-font); font-size:var(--dc-fs-30); color:var(--dc-ink-75);
  text-align:center; max-width:calc(760 * var(--dc-u)); margin:var(--dc-sp-24) auto 0; line-height:1.35;
}

#alumno-panel-ajustes .aj-clases { max-width:calc(1500 * var(--dc-u)); }
.pago-fila {
  display:grid; grid-template-columns:1fr auto 1fr; align-items:center;
  gap:var(--dc-sp-48); width:100%; margin-top:var(--dc-sp-24);
}
.pago-notas { justify-self:start; max-width:calc(330 * var(--dc-u)); display:flex; flex-direction:column; gap:var(--dc-sp-20); }
#alumno-panel-ajustes .pago-nota {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-22);
  color:var(--dc-ink-70); line-height:1.4; text-align:left; margin:0; max-width:none;
}
.mc-pendiente .idi-enlace { color:var(--dc-ink); margin-left:.3em; }

.pago-tarjeta {
  width:calc(560 * var(--dc-u)); max-width:100%; margin:0;
  padding:var(--dc-sp-24) var(--dc-sp-40) var(--dc-sp-18);
  background:linear-gradient(90deg, #C2CAD4, #8B97AB);
  border-radius:var(--dc-r-card); box-shadow:var(--dc-shadow-pill-metal);
  color:var(--dc-ink); text-shadow:var(--dc-shadow-text);
  display:flex; flex-direction:column; align-items:stretch; text-align:left;
  transition:box-shadow var(--dc-t-lento) var(--dc-ease), transform var(--dc-t-lento) var(--dc-ease);
}
.pago-tarjeta.pago-llama { animation:pagoLlama 1.5s var(--dc-ease); }
@keyframes pagoLlama {
  0%   { transform:none; }
  30%  { transform:scale(1.025); box-shadow:0 calc(18 * var(--dc-u)) calc(70 * var(--dc-u)) #141E2DA8; }
  100% { transform:none; }
}
.pago-linea { display:flex; align-items:baseline; justify-content:space-between; gap:var(--dc-sp-24); }
.pago-etiqueta {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-26, calc(26 * var(--dc-u)));
  color:var(--dc-ink); opacity:.82; letter-spacing:var(--dc-tracking); text-transform:lowercase;
}
.pago-etiqueta-centro { text-align:center; }
.pago-precio {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-40);
  line-height:1; white-space:nowrap; font-variant-numeric:tabular-nums;
}
.pago-sep { height:1px; background:rgba(255,255,255,.28); margin:var(--dc-sp-14) 0; }
.pago-cantidad {
  display:flex; align-items:center; justify-content:center; gap:var(--dc-sp-40);
  margin-top:var(--dc-sp-10);
}
.pago-paso {
  width:calc(74 * var(--dc-u)); height:calc(74 * var(--dc-u)); flex:none;
  border-radius:50%; border:none; cursor:pointer; padding:0;
  background:rgba(255,255,255,.14); color:var(--dc-ink);
  font-family:var(--dc-font); font-size:var(--dc-fs-50); line-height:1;
  text-shadow:var(--dc-shadow-text);
  display:flex; align-items:center; justify-content:center;
  transition:background var(--dc-t-lento) var(--dc-ease), transform var(--dc-t-lento) var(--dc-ease),
             opacity var(--dc-t-lento) var(--dc-ease), box-shadow var(--dc-t-lento) var(--dc-ease);
}
@media (any-hover: hover) { .pago-paso:not(:disabled):hover { background:rgba(255,255,255,.24); transform:scale(1.08); box-shadow:var(--dc-shadow-pill-metal); } }
.pago-paso:active:not(:disabled) { transform:scale(.94); transition:transform var(--dc-t-press) var(--dc-ease); }
.pago-paso:disabled { opacity:.35; cursor:default; }
.pago-paso:focus-visible { outline:none; box-shadow:0 0 0 calc(3 * var(--dc-u)) rgba(255,255,255,.7); }
.pago-n-caja { min-width:calc(150 * var(--dc-u)); text-align:center; padding:0 var(--dc-sp-8); }
.pago-n {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-80);
  line-height:1; font-variant-numeric:tabular-nums; text-shadow:var(--dc-shadow-text-strong);
}
.pago-n.pago-sube { animation:pagoSube .42s var(--dc-ease); }
.pago-n.pago-baja { animation:pagoBaja .42s var(--dc-ease); }
@keyframes pagoSube { from { transform:translateY(38%); opacity:0; filter:blur(6px); } to { transform:none; opacity:1; filter:blur(0); } }
@keyframes pagoBaja { from { transform:translateY(-38%); opacity:0; filter:blur(6px); } to { transform:none; opacity:1; filter:blur(0); } }
.pago-n-sub { font-family:var(--dc-font); font-size:var(--dc-fs-22); opacity:.85; margin-top:var(--dc-sp-6); }
.pago-linea-total { align-items:center; }
.pago-total {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-52);
  line-height:1; white-space:nowrap; font-variant-numeric:tabular-nums; text-shadow:var(--dc-shadow-text-strong);
}
#alumno-panel-ajustes .pago-boton, .pago-boton {
  align-self:center; margin-top:var(--dc-sp-14); transform-origin:center center; font-size:var(--dc-fs-50);
  padding-left:var(--dc-sp-24); padding-right:var(--dc-sp-24); text-transform:lowercase;
}

#alumno-panel-ajustes .pago-boton-sbp { text-transform:none; white-space:nowrap; font-size:calc(44 * var(--dc-u)); }
.pago-otro-fila { display:flex; justify-content:center; margin-top:var(--dc-sp-6); }
.pago-otro {
  font-family:var(--dc-font); font-size:var(--dc-fs-22); opacity:.7; text-transform:lowercase;
  transition:opacity var(--dc-t-lento) var(--dc-ease), text-decoration-color var(--dc-t-lento) var(--dc-ease);
}
@media (any-hover: hover) { .pago-otro:hover { opacity:1; } }
.pago-estado {
  font-family:var(--dc-font); font-size:var(--dc-fs-22); color:var(--dc-ink); line-height:1.35;
  text-align:center; margin-top:var(--dc-sp-6); text-shadow:var(--dc-shadow-text);
}
.pago-estado:empty { display:none; }
.pago-error {
  font-family:var(--dc-font); font-size:var(--dc-fs-26, calc(26 * var(--dc-u))); color:#ffdde0;
  text-align:center; margin-top:var(--dc-sp-10); min-height:1em; text-shadow:var(--dc-shadow-text);
}

.mc-historial { width:100%; max-width:calc(640 * var(--dc-u)); margin:var(--dc-sp-60) auto 0; text-align:left; }
.mc-titulo {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-40);
  color:var(--dc-ink); text-transform:lowercase; text-shadow:var(--dc-shadow-text-strong);
  text-align:center; margin-bottom:var(--dc-sp-20);
}
.mc-fila {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-30);
  color:var(--dc-ink-75); padding:var(--dc-sp-18) 0; border-bottom:1px solid rgba(255,255,255,.14);
  line-height:1.3;
}
.mc-fila:last-child { border-bottom:none; }
.mc-fecha { color:var(--dc-ink); text-shadow:var(--dc-shadow-text); }
#alumno-panel-ajustes .mc-historial .ent-ayuda { text-align:center; margin-left:auto; margin-right:auto; }

@media (max-width:900px) {
  .pago-fila { grid-template-columns:1fr; justify-items:center; gap:var(--dc-sp-24); }
  .pago-hueco { display:none; }
  .pago-notas { justify-self:center; max-width:calc(520 * var(--dc-u)); }
  #alumno-panel-ajustes .pago-nota { text-align:center; }
}
@media (max-width:700px) {
  .pago-tarjeta { width:100%; padding:var(--dc-sp-34) var(--dc-sp-24) var(--dc-sp-24); }
  #alumno-panel-ajustes .pago-nota { font-size:13px; }
  #alumno-panel-ajustes .aj-clases .aj-vuelta { font-size:30px; }
  #alumno-panel-ajustes .pago-boton { font-size:26px; white-space:nowrap; margin-top:10px; }
  #alumno-panel-ajustes .pago-boton-sbp { font-size:24px; }
  .pago-otro { font-size:14px; }
  .pago-linea .pago-etiqueta { font-size:14px; }
  .mc-linea { gap:0 10px; }
  .pago-paso { width:48px; height:48px; font-size:26px; }
  .pago-n { font-size:48px; }
  .pago-total { font-size:34px; }
  .pago-precio { font-size:28px; }
  .pago-etiqueta, .pago-n-sub { font-size:16px; }
  .mc-numero { font-size:64px; }
  .mc-quedan, .mc-unidad, .mc-cero { font-size:22px; }
  .mc-fila { font-size:17px; }
  .mc-titulo { font-size:22px; }
  #alumno-panel-ajustes .aj-idiomas .ent-op { font-size:26px; }
}

html.idioma-ru .hc-text.hc-ph::before { content:'Пишите…'; }

body:not(.is-teacher) #hc-moldes { display:none !important; }

#aula-panel-ajustes .pagos-saldo {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-100);
  color:var(--dc-ink); line-height:1; text-shadow:var(--dc-shadow-text-strong); margin-bottom:var(--dc-sp-20);
}
#aula-panel-ajustes .pagos-precio-fila { display:flex; align-items:center; gap:var(--dc-sp-16); max-width:calc(460 * var(--dc-u)); }
#aula-panel-ajustes .pagos-precio-fila .f-input { margin-bottom:0; }
#aula-panel-ajustes .pagos-moneda { font-family:var(--dc-font); font-size:var(--dc-fs-40); color:var(--dc-ink); text-shadow:var(--dc-shadow-text-strong); }
#aula-panel-ajustes .pagos-precio-fila + .modal-btn { margin-top:var(--dc-sp-20); }
#aula-panel-ajustes .pagos-fecha, #aula-panel-ajustes .pagos-sumar { max-width:calc(460 * var(--dc-u)); color-scheme:light; }
#aula-panel-ajustes .pagos-dias { margin:0 0 var(--dc-sp-20); gap:var(--dc-sp-34); }
#aula-panel-ajustes .pagos-dias .ent-op { font-size:var(--dc-fs-30); }
#aula-panel-ajustes .pagos-msg { margin:var(--dc-sp-14) 0 0; min-height:1em; }
#aula-panel-ajustes .pagos-alerta { color:var(--dc-ink); }
#aula-panel-ajustes .pagos-apagada { opacity:.5; }
#aula-panel-ajustes .pagos-deshecho { font-style:italic; }

#aula-panel-ajustes input[type=number]::-webkit-inner-spin-button,
#aula-panel-ajustes input[type=number]::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
#aula-panel-ajustes input[type=number] { -moz-appearance:textfield; appearance:textfield; }

.platega-callback { margin-top:var(--dc-sp-16); }
.platega-url {
  display:inline-block; margin-top:var(--dc-sp-6); cursor:pointer; word-break:break-all;
  color:var(--dc-ink); text-decoration:underline; text-decoration-color:rgba(255,255,255,.45);
  text-underline-offset:.2em; transition:text-decoration-color .2s;
}
@media (any-hover: hover) { .platega-url:hover { text-decoration-color:var(--dc-ink); } }

#alumno-panel-club {
  max-width:var(--dc-w-canvas); margin:0 auto;
  min-height:0; display:flex; flex-direction:column; justify-content:flex-start;
  padding:0 0 var(--dc-sp-48);
}

#screen-home #club-lista .galeria-carril { --gal-w: calc(min(17vw, 23vh) * var(--dc-dens, 1)); }

#alumno-panel-club .club-grupos { max-width:var(--dc-w-canvas); }
#alumno-panel-club .club-grupos .ent-op { font-size:var(--dc-fs-30); }
@media (max-width:620px) { #screen-home #club-lista .galeria-carril { --gal-w: 56vw; } }
#screen-home .club-cancion .gal-foto { aspect-ratio:1 / 1; overflow:hidden; }

#screen-home .club-play {
  position:absolute; inset:0; display:grid; place-items:center; pointer-events:none;
  font-family:var(--dc-font); font-size:var(--dc-fs-80); line-height:1; color:#fff;
  text-shadow:var(--dc-shadow-text-strong); opacity:0;
  transition:opacity var(--dc-t-lento) var(--dc-ease);
}
#screen-home .club-play::before { content:'▶'; }
#screen-home .club-cancion.sonando .club-play::before { content:'❚❚'; letter-spacing:-.08em; }
#screen-home .club-cancion.sonando .club-play { opacity:0; }
#screen-home .club-cancion.sonando.en-pausa .club-play { opacity:.92; }
@media (any-hover: hover) {
  #screen-home .club-cancion.es-centro:hover .club-play { opacity:.92; }
}
#screen-home .club-barra {
  position:absolute; left:0; right:0; bottom:0; height:calc(6 * var(--dc-u));
  background:rgba(255,255,255,.28); opacity:0; pointer-events:none;
  transition:opacity var(--dc-t-lento) var(--dc-ease);
}
#screen-home .club-barra > i {
  display:block; height:100%; width:100%; background:#fff;
  transform-origin:left center; transform:scaleX(var(--club-p, 0));
}
#screen-home .club-cancion.sonando .club-barra { opacity:1; }

.club-escuchar {
  max-width:var(--dc-w-canvas); width:100%; margin:var(--dc-sp-10) auto 0;
  display:flex; flex-wrap:wrap; justify-content:center; align-items:baseline; gap:0 var(--dc-sp-24);
  padding:0 var(--dc-sp-24); text-align:center;
}
.club-escuchar-t {
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-30);
  color:var(--dc-ink); opacity:.55; text-transform:lowercase; letter-spacing:var(--dc-tracking);
}
.club-donde { display:contents; }
.club-escuchar a.ent-op { font-size:var(--dc-fs-30); text-decoration:none; opacity:.75; transform-origin:center; padding:var(--dc-sp-6) 0; }

.club-plat { display:inline-flex; align-items:center; gap:.4em; }
.club-ico { width:1.3em; height:1.3em; flex:none; border-radius:.3em; box-shadow:0 .08em .3em rgba(15,20,30,.22); }
@media (any-hover: hover) { .club-escuchar a.ent-op:hover { opacity:1; } }

#alumno-panel-club .club-niveles .ent-op { text-transform:none; }

#screen-home .club-lectura .gal-foto { aspect-ratio:3 / 4; overflow:hidden; background:#FDFBF6; }
#screen-home .club-lectura .gal-vacia { display:none; }
.folio-mini {
  position:absolute; inset:0; display:flex; flex-direction:column; gap:.55em; text-align:left;
  padding:calc(var(--gal-w) * .1); background:#FDFBF6; color:#1C1915;
}
.folio-mini-cat { font-family:"Inter",-apple-system,system-ui,sans-serif; font-size:calc(var(--gal-w) * .045); font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:#2733C0; }
.folio-mini-res {
  font-family:"Fraunces",Georgia,serif; font-style:italic; font-weight:340;
  font-size:calc(var(--gal-w) * .072); line-height:1.4; color:rgba(28,25,21,.72);
  display:-webkit-box; -webkit-line-clamp:9; -webkit-box-orient:vertical; overflow:hidden;
}
#screen-home #club-lista .galeria-carril:has(.club-lectura) { --gal-w: calc(min(15vw, 21vh) * var(--dc-dens, 1)); }
@media (max-width:620px) { #screen-home #club-lista .galeria-carril:has(.club-lectura) { --gal-w: 50vw; } }

.folio-ov {
  --crema:#F4EFE6; --papel:#FDFBF6; --tinta:#1C1915; --tinta-suave:rgba(28,25,21,.62);
  --tinta-tenue:rgba(28,25,21,.40); --linea:rgba(28,25,21,.10); --ultramar:#2733C0; --ultramar-velo:rgba(39,51,192,.09);
  position:fixed; inset:0; z-index:9000; overflow-y:auto; overscroll-behavior:contain;
  background:var(--crema); color:var(--tinta); font-family:"Fraunces",Georgia,serif; font-optical-sizing:auto;
  padding-inline:20px; outline:none;
  opacity:0; transform:translateY(18px); pointer-events:none;
  transition:opacity .35s ease, transform .35s ease;
}
.folio-ov.abierto { opacity:1; transform:none; pointer-events:auto; }
.folio-progreso { position:fixed; top:0; left:0; height:2px; width:100%; background:var(--ultramar); transform-origin:left; transform:scaleX(var(--folio-p, 0)); z-index:2; }
.folio-barra {
  position:sticky; top:0; z-index:1; max-width:640px; margin:0 auto; padding-block:14px 10px;
  display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap;
  background:linear-gradient(var(--crema) 72%, rgba(244,239,230,0));
}
.folio-volver, .folio-niveles button { font-family:"Inter",-apple-system,system-ui,sans-serif; cursor:pointer; }
.folio-volver { font-size:13px; font-weight:500; padding:9px 16px; border-radius:100px; background:var(--papel); border:1px solid var(--linea); color:var(--tinta); }
.folio-niveles { display:flex; gap:4px; padding:4px; border-radius:100px; background:var(--papel); border:1px solid var(--linea); }
.folio-niveles button { font-size:13px; font-weight:600; letter-spacing:.04em; padding:7px 15px; border-radius:100px; border:0; background:none; color:var(--tinta-suave); }
.folio-niveles button[aria-selected="true"] { background:var(--ultramar); color:#F3F1FF; }
.folio-volver:focus-visible, .folio-niveles button:focus-visible, .folio-g:focus-visible { outline:2px solid var(--ultramar); outline-offset:2px; }
.folio-art { max-width:640px; margin:0 auto; padding-block:22px 10px; }
.folio-cat { font-family:"Inter",-apple-system,system-ui,sans-serif; font-size:10.5px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--ultramar); }
.folio-art h1 { font-size:clamp(32px, 8vw, 48px); font-weight:400; line-height:1.06; letter-spacing:-.018em; margin:12px 0 18px; text-wrap:balance; }
.folio-entradilla { font-size:19px; font-style:italic; font-weight:340; line-height:1.45; color:var(--tinta-suave); padding-bottom:24px; margin:0 0 28px; border-bottom:1px solid var(--linea); }
.folio-cuerpo p { font-size:18.5px; line-height:1.62; font-weight:340; margin:0 0 1.3em; }
.folio-cuerpo p:first-child::first-letter { font-size:3.1em; font-weight:400; float:left; line-height:.82; padding:.06em .09em 0 0; }
.folio-g { text-decoration:underline dotted var(--ultramar); text-decoration-thickness:1.5px; text-underline-offset:.22em; cursor:pointer; border-radius:3px; }
.folio-g.activa { background:var(--ultramar-velo); }
.folio-sello { text-align:center; color:var(--tinta-tenue); font-size:20px; padding:14px 0 90px; }
.folio-credito { font-family:"Inter",-apple-system,system-ui,sans-serif; font-size:12px; text-align:center; color:var(--tinta-tenue); margin:-70px 0 90px; }
.folio-credito a { color:inherit; text-decoration:underline; text-underline-offset:.2em; }
.folio-ficha {
  position:fixed; left:50%; bottom:22px; transform:translate(-50%, 12px); opacity:0; pointer-events:none;
  width:min(420px, calc(100vw - 32px)); background:var(--papel); border:1px solid var(--linea); border-radius:18px;
  box-shadow:0 12px 40px rgba(20,16,10,.14); padding:14px 18px; display:flex; align-items:baseline; gap:12px; flex-wrap:wrap;
  transition:opacity .2s, transform .2s; z-index:3;
}
.folio-ficha.abierta { opacity:1; transform:translate(-50%, 0); pointer-events:auto; }
.folio-es { font-size:20px; font-weight:530; }
.folio-ru { font-family:"Inter",-apple-system,system-ui,sans-serif; font-size:18px; color:var(--ultramar); }
@media (prefers-reduced-motion: reduce) {
  #screen-home .club-play, #screen-home .club-barra, .folio-ov, .folio-ficha { transition:none; }
}

#folio-ov .folio-volver { font-family:var(--dc-font); font-size:24px; font-weight:var(--dc-weight, 400); line-height:1; padding:10px 2px; border:0; border-radius:0;
  background:none; color:var(--tinta); opacity:.62; transition:opacity var(--dc-t-lento, .45s) var(--dc-ease, ease); }
@media (any-hover:hover) { #folio-ov .folio-volver:hover { opacity:1; } }
#folio-ov .folio-niveles.aula-tabs-pill { position:relative; display:flex; gap:4px; padding:0; border:0; background:none; box-shadow:none; }
#folio-ov .folio-niveles .aula-tab { position:relative; z-index:1; font-family:var(--dc-font); font-size:20px; font-weight:var(--dc-weight, 400); letter-spacing:0; line-height:1.2;
  padding:8px 20px; border-radius:var(--dc-r-nav, 34px); border:0; background:none; box-shadow:none; color:var(--tinta-suave); cursor:pointer;
  transition:color var(--dc-t-lento, .45s) var(--dc-ease, ease), transform var(--dc-t-lento, .45s) var(--dc-ease, ease); }
#folio-ov .folio-niveles .aula-tab.active { color:#fff; text-shadow:0 2px 8px rgba(0,0,0,.35); }
#folio-ov .folio-niveles .aula-tab.crecida { transform:scale(1.08); }
#folio-ov .folio-niveles .aula-tab-indicator { position:absolute; left:0; top:0; z-index:0; pointer-events:none;
  border-radius:var(--dc-r-nav, 34px); background:var(--dc-pill-metal); box-shadow:0 8px 26px rgba(20,30,45,.3);
  transform:translateX(var(--x, 0)) scale(var(--s, 1));
  transition:transform var(--dc-t-viaje, .9s) var(--dc-ease, ease), width var(--dc-t-viaje, .9s) var(--dc-ease, ease); will-change:transform, width; }
@media (any-hover:hover) { #folio-ov .folio-niveles .aula-tab:not(.active):hover { color:var(--tinta); } }
#folio-ov .folio-art { transition:opacity .35s ease; }
#folio-ov .folio-art.cruza { opacity:0; }

#folio-ov .folio-guardar { font-family:var(--dc-font); font-size:19px; font-weight:var(--dc-weight, 400); color:var(--tinta); padding:4px 2px; }
#folio-ov .folio-guardar:disabled { opacity:.45; }

.noche { position:fixed; inset:0; z-index:2200; overflow:hidden; color:#F2F2F4;
  font-family:var(--dc-font); font-weight:var(--dc-weight); letter-spacing:.5px;
  -webkit-user-select:none; user-select:none; -webkit-tap-highlight-color:transparent; }
.noche[hidden] { display:none !important; }

.noche { --nu:.75px; --n-brillo:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }
.noche.alto { --nu:.58px; }
html.noche-abierta, html.noche-abierta body { overflow:hidden !important; overscroll-behavior:none; }

html.noche-oscura, html.noche-oscura body { background:#0B0B0D !important; }
.noche button { font:inherit; color:inherit; background:none; border:0; padding:0; margin:0; cursor:pointer; letter-spacing:inherit; text-transform:none; }
.noche a { color:inherit; text-decoration:none; }
.noche-sala { position:absolute; inset:0; opacity:0; transition:opacity .6s ease;
  background:linear-gradient(135deg, #2C2D2E 0%, #16171A 48%, #0A0A0C 100%); }
.noche-sala::after { content:""; position:absolute; inset:0; opacity:.035; pointer-events:none; background-image:var(--grano, none); background-size:128px 128px; }

html.noche-tapa .screen { visibility:hidden !important; }
.noche.encendida .noche-sala { opacity:1; }
.noche.saliendo .noche-sala { transition:opacity .7s ease .08s; }

.noche-luz { position:absolute; inset:0; pointer-events:none; opacity:0; transition:opacity .6s ease; }
.noche.lista .noche-luz { opacity:var(--k, 0); }
.noche-luz[data-luz="his"] { background:radial-gradient(58% 72% at 54% 58%, rgba(244,239,230,.13), rgba(244,239,230,0) 70%); }
.noche-luz[data-luz="desc"] { background:radial-gradient(50% 64% at 60% 52%, rgba(226,232,240,.11), rgba(226,232,240,0) 70%); }
.noche-luz[data-luz="cine"] { background:radial-gradient(60% 46% at 50% 30%, rgba(236,232,224,.10), rgba(236,232,224,0) 72%); }
.noche-luz[data-luz="tg"] { background:radial-gradient(52% 66% at 52% 54%, rgba(168,200,236,.13), rgba(168,200,236,0) 70%); }
.noche-escenario { position:absolute; left:0; top:0; transform-origin:0 0; }

.noche-marca { position:absolute; left:56px; top:40px; z-index:8; }
.noche.alto .noche-marca { left:24px; top:34px; }
.noche-marca.en-centro { left:0; top:0; right:0; bottom:0; display:flex; align-items:center; justify-content:center; }
.noche-marca-t { position:relative; display:inline-block; font-size:78px; line-height:1; white-space:nowrap; cursor:pointer; color:#F2F2F4; transform-origin:0 0; will-change:transform;
  text-shadow:0 0 18px rgba(242,242,244,.42), 0 0 44px rgba(242,242,244,.16); transition:text-shadow .6s ease, color .6s ease; }

.noche-marca-brillo { position:absolute; left:0; top:0; color:transparent; pointer-events:none; opacity:0; will-change:opacity;
  text-shadow:0 0 26px rgba(242,242,244,.66), 0 0 64px rgba(242,242,244,.3); }
.noche-marca-brillo .marca-club { opacity:1 !important; animation:none !important; }

.noche-halo-logo { position:absolute; pointer-events:none; display:block; will-change:opacity; transition:opacity .6s ease; }
.noche-halo-logo.fuerte { opacity:0; }
.noche-marca-t.con-halo { text-shadow:none; }
.noche-marca-t.con-halo .noche-marca-brillo { display:none; }
.noche-marca-t.con-halo.respira .noche-halo-logo.fuerte { animation:nocheRespira 1.7s cubic-bezier(.37,0,.63,1) 2; }
.noche.saliendo .noche-halo-logo { opacity:0; }
.noche-marca-t.con-halo:focus-visible .noche-halo-logo.fuerte { opacity:.8; }
.noche.alto .noche-marca-t { font-size:46px; }
.noche-marca.en-centro .noche-marca-t { font-size:150px; }
.noche.alto .noche-marca.en-centro .noche-marca-t { font-size:64px; }
.noche-marca-t .marca-club { display:inline-block; opacity:.8; transition:opacity .6s ease, text-shadow .6s ease; will-change:opacity; }
.noche-marca-t:focus-visible { outline:none; text-shadow:0 0 18px rgba(255,255,255,.7), 0 0 60px rgba(242,242,244,.3); }
@keyframes nocheRespira { 0%, 100% { opacity:0; } 50% { opacity:.78; } }
.noche-marca-t.respira .noche-marca-brillo { animation:nocheRespira 1.7s cubic-bezier(.37,0,.63,1) 2; }

@keyframes nocheNeon {
  0%   { opacity:.8;  animation-timing-function:steps(1, end); }
  10%  { opacity:.14; animation-timing-function:steps(1, end); }
  20%  { opacity:.82; animation-timing-function:steps(1, end); }
  30%  { opacity:.2;  animation-timing-function:steps(1, end); }
  38%  { opacity:.7;  animation-timing-function:steps(1, end); }
  46%  { opacity:.28; animation-timing-function:cubic-bezier(.3, 0, .2, 1); }
  100% { opacity:1; }
}
.noche-marca-t.neon .marca-club { animation:nocheNeon .8s both; text-shadow:0 0 14px rgba(255,255,255,.5), 0 0 40px rgba(242,242,244,.22); }
.noche-marca-t.encendido .marca-club { opacity:1; text-shadow:0 0 14px rgba(255,255,255,.5), 0 0 40px rgba(242,242,244,.22); }

.noche-marca-t .marca-club { position:relative; }
.club-luz { position:absolute; left:0; top:0; color:transparent; pointer-events:none; opacity:0; will-change:opacity;
  text-shadow:0 0 .12em #fff, 0 0 .38em rgba(255,255,255,.85), 0 0 .9em rgba(255,255,255,.55), 0 0 2em rgba(242,242,244,.32); }
.noche-marca-brillo .club-luz { display:none; }
.noche-marca-t.luz .marca-club { animation:clubEnciende 1.3s cubic-bezier(.3,0,.2,1) both; }
.noche-marca-t.luz .club-luz { animation:clubLuz 2.6s cubic-bezier(.3,0,.2,1) both; }
@keyframes clubEnciende { from { opacity:.8; } to { opacity:1; } }
@keyframes clubLuz { 0% { opacity:0; } 50% { opacity:1; } 100% { opacity:.7; } }
.noche-marca-t.encendido .marca-club { opacity:1; }
.noche-marca-t.encendido .club-luz, .noche-marca-t.luz.encendido .club-luz { opacity:.7; }
.noche.saliendo .club-luz { animation:none; opacity:0; transition:opacity .5s ease; }

.noche-marca-t.late .noche-marca-brillo, .noche-marca-t.con-halo.late .noche-halo-logo.fuerte { animation:nocheLateLuz 1.4s cubic-bezier(.37,0,.63,1) 1; }
@keyframes nocheLateLuz { 0%, 100% { opacity:0; } 38% { opacity:.8; } }
.noche-marca.en-centro.late { animation:nocheLate 1.4s cubic-bezier(.37,0,.63,1) 1; }
@keyframes nocheLate { 0% { transform:scale(1); } 32% { transform:scale(1.015); } 60% { transform:scale(.998); } 100% { transform:scale(1); } }
@media (prefers-reduced-motion:reduce) { .noche-marca.en-centro.late { animation:none; } }

.noche.saliendo .noche-marca-t { color:var(--dc-ink); text-shadow:var(--dc-shadow-text-strong); }

.noche-titulos { position:absolute; right:60px; top:62px; width:420px; height:48px; z-index:7; font-size:40px; line-height:1;
  text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); pointer-events:none; }
.noche.alto .noche-titulos { right:24px; top:48px; width:200px; height:26px; font-size:22px; }
.noche-titulo { position:absolute; right:0; top:0; white-space:nowrap; opacity:0; transition:opacity 1.6s ease; will-change:opacity; }
.noche.lista .noche-titulo.on { opacity:1; }

.noche-titulos { transition:opacity .6s ease; }

.noche:not([data-vista="esc"]) .noche-titulos,
.noche.suena[data-vista="esc"] .noche-titulos { opacity:0 !important; pointer-events:none; }
.noche-sonando { position:absolute; right:60px; top:48px; z-index:8; display:flex; align-items:center; gap:16px;
  opacity:0; transform:translateY(-6px); pointer-events:none; transition:opacity .6s ease, transform .6s cubic-bezier(.45,0,.2,1); }
.noche.lista.suena:not([data-vista="mus"]) .noche-sonando { opacity:1; transform:none; pointer-events:auto; }

.noche.fr-sin-texto .ns-signo svg { filter:drop-shadow(0 1px 6px rgba(0,0,0,.6)); }
.noche.fr-on .ns-titulo, .noche.fr-on .ns-artista { text-shadow:0 2px 14px rgba(0,0,0,.6), 0 1px 4px rgba(0,0,0,.4); }
.noche.fr-on .ns-artista { color:rgba(242,242,244,.78); }
.noche-sonando button { appearance:none; border:0; padding:0; margin:0; background:none; cursor:pointer; -webkit-tap-highlight-color:transparent; }
.ns-t { display:flex; flex-direction:column; align-items:flex-end; gap:5px; max-width:240px; text-align:right; cursor:pointer; }
.ns-titulo { font-size:18px; line-height:1.15; color:#F2F2F4; text-shadow:0 0 16px rgba(242,242,244,.3); }
.ns-artista { font-size:14px; line-height:1; color:rgba(242,242,244,.5); }
.ns-foto { position:relative; flex:none; width:56px; height:56px; border-radius:12px !important; background-size:cover !important; background-position:center !important; box-shadow:0 12px 30px rgba(0,0,0,.55); }
.ns-capa { position:absolute; inset:0; border-radius:inherit; background-size:cover; background-position:center; opacity:0; transition:opacity .9s ease; }
.ns-capa.on { opacity:1; }
.ns-t { transition:opacity .35s ease; }
.ns-t.cambia { opacity:0; }

.nv-esc.salto { opacity:0; transition:opacity .45s ease; }
.ns-barra { position:absolute; left:8px; right:8px; bottom:-9px; height:2px; border-radius:1px; overflow:hidden; background:rgba(242,242,244,.16); }
.ns-barra > i { display:block; height:100%; background:#F2F2F4; transform-origin:0 50%; transform:scaleX(0); }
.ns-signo { flex:none; width:30px; height:30px; display:flex; align-items:center; justify-content:center; }
.ns-signo svg { width:22px; height:22px; fill:#F2F2F4; filter:drop-shadow(0 0 8px rgba(242,242,244,.4)); }
.noche.alto .noche-sonando { right:18px; top:38px; gap:6px; }
.noche.alto .ns-t { display:none; }
.noche.alto .ns-foto { width:40px; height:40px; border-radius:9px !important; }
.noche.alto .ns-barra { left:5px; right:5px; bottom:-7px; }

.nv { position:absolute; inset:0; opacity:0; visibility:hidden; transition:opacity .5s ease, visibility 0s linear .5s; }
.nv.on { opacity:1; visibility:visible; transition:opacity .8s ease .15s, visibility 0s; }

.nv-mus.on, .nv-his.on, .nv-desc.on, .nv-cine.on { transition:opacity .75s ease .34s, visibility 0s; }
.noche:not(.lista) .nv { opacity:0; visibility:hidden; }
.noche.saliendo .nv { transition:opacity .35s ease, visibility 0s linear .35s; }

.nv-esc { touch-action:none; cursor:grab; z-index:1; }   
.nv-esc.arrastra { cursor:grabbing; }

.n-recs { position:absolute; inset:0; transform:translateY(60px) scale(.986); opacity:0;
  transition:transform 1.6s var(--dc-ease), opacity 1.15s var(--dc-ease); }
.noche.lista .nv-esc.on .n-recs { transform:none; opacity:1; }
.n-rec { position:absolute; left:0; top:150px; width:1440px; height:750px; pointer-events:none; will-change:transform, opacity; contain:layout style; }

.n-halo, .n-medio { position:absolute; left:0; top:0; width:100%; height:100%; display:block; pointer-events:none; }

.n-halo { opacity:.62; top:-150px; height:calc(100% + 300px); }
.noche.alto .n-halo { top:-110px; height:calc(100% + 220px); }

.nv-esc.fuera { pointer-events:none; }

.nv-esc.quieto { visibility:hidden; }
.nv-esc.fuera .n-rec { transition:transform .9s var(--dc-ease), opacity .55s ease; }
.nv-esc.vuelve .n-rec { transition:transform 1s var(--dc-ease), opacity .9s ease .1s; }
.noche.alto .n-rec { top:110px; width:390px; height:calc(var(--n-h) - 110px); }
.n-capa { position:absolute; inset:0; overflow:hidden; }
.n-capa.nitido { opacity:0; visibility:hidden; transition:opacity .16s ease, visibility 0s linear .16s;
  
  -webkit-mask-image:linear-gradient(to right, transparent 0%, rgba(0,0,0,.35) 8%, #000 22%, #000 78%, rgba(0,0,0,.35) 92%, transparent 100%),
                     linear-gradient(to bottom, transparent 0%, rgba(0,0,0,.35) 9%, #000 24%, #000 76%, rgba(0,0,0,.35) 91%, transparent 100%);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(to right, transparent 0%, rgba(0,0,0,.35) 8%, #000 22%, #000 78%, rgba(0,0,0,.35) 92%, transparent 100%),
             linear-gradient(to bottom, transparent 0%, rgba(0,0,0,.35) 9%, #000 24%, #000 76%, rgba(0,0,0,.35) 91%, transparent 100%);
  mask-composite:intersect; }
.noche.alto .n-capa.nitido {

-webkit-mask-image:linear-gradient(to right, transparent 0%, rgba(0,0,0,.35) 6%, #000 19%, #000 81%, rgba(0,0,0,.35) 94%, transparent 100%),
                     linear-gradient(to bottom, transparent 0%, rgba(0,0,0,.4) 6%, #000 17%, #000 83%, rgba(0,0,0,.4) 94%, transparent 100%);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(to right, transparent 0%, rgba(0,0,0,.35) 6%, #000 19%, #000 81%, rgba(0,0,0,.35) 94%, transparent 100%),
             linear-gradient(to bottom, transparent 0%, rgba(0,0,0,.4) 6%, #000 17%, #000 83%, rgba(0,0,0,.4) 94%, transparent 100%);
  mask-composite:intersect; }

.noche:not(.casa) .es-pra, .noche:not(.casa) .es-musica, .noche:not(.casa) .es-mundo, .noche:not(.casa) .es-tg, .noche:not(.casa) .es-cla, .noche:not(.casa) .es-cine,
.noche:not(.casa) .es-crema { background:transparent !important; }   
.noche:not(.casa) .es-crema .n-mancha { opacity:.22; }

.noche:not(.casa) .n-revista { margin-right:72px; background:rgba(250,247,241,.82); }

.n-rec.centro .n-capa.nitido, .n-rec.calienta .n-capa.nitido { opacity:1; visibility:visible; transition:opacity .62s ease, visibility 0s; }

.nv-esc.moviendo .n-rec .n-capa.nitido { opacity:0; visibility:hidden; transition:opacity .16s ease, visibility 0s linear .16s; }
.nv-esc.fuera .n-rec.centro .n-capa.nitido { opacity:1; visibility:visible; transition:none; }

.n-halo { transform-origin:50% 50%; animation:nHaloVive 19s ease-in-out infinite alternate; will-change:transform; }
.n-rec:nth-child(2n) .n-halo { animation-duration:23s; animation-direction:alternate-reverse; }
.n-rec:nth-child(3n) .n-halo { animation-duration:27s; }
@keyframes nHaloVive { 0% { transform:translate(-1.4%, .9%) scale(1.03); } 50% { transform:translate(.9%, -.7%) scale(1.08); } 100% { transform:translate(1.5%, .6%) scale(1.02); } }
@media (prefers-reduced-motion: reduce) { .n-halo { animation:none; } }

.noche .nv:not(.nv-esc) {
  -webkit-mask-image:linear-gradient(180deg, transparent 0, transparent 112px, #000 162px);
  mask-image:linear-gradient(180deg, transparent 0, transparent 112px, #000 162px);
}
.noche.alto .nv:not(.nv-esc) {
  -webkit-mask-image:linear-gradient(180deg, transparent 0, transparent 80px, #000 120px);
  mask-image:linear-gradient(180deg, transparent 0, transparent 80px, #000 120px);
}

.nv-esc[data-asoma="1"], .nv-esc[data-asoma="-1"] { cursor:pointer; }
.n-escena { position:absolute; inset:0; overflow:hidden; }
.n-mancha { position:absolute; left:var(--l); top:var(--t); width:var(--w); height:var(--h); border-radius:50%; pointer-events:none;
  background:radial-gradient(closest-side, var(--c), rgba(0,0,0,0)); animation:nDerivaA 38s ease-in-out infinite; }
.n-mancha.b { animation-name:nDerivaB; animation-duration:46s; }
@keyframes nDerivaA { 0%, 100% { transform:translate(0, 0) scale(1); } 50% { transform:translate(7%, 6%) scale(1.14); } }
@keyframes nDerivaB { 0%, 100% { transform:translate(0, 0) scale(1.06); } 50% { transform:translate(-8%, -5%) scale(.92); } }

.n-pista { position:absolute; left:0; display:flex; width:max-content; animation-timing-function:linear; animation-iteration-count:infinite; will-change:transform; }
.n-pista.izq { animation-name:nIzq; } .n-pista.der { animation-name:nDer; }
.n-pista.sube { flex-direction:column; align-items:flex-start; width:auto; right:0; animation-name:nSube; animation-duration:90s; }
@keyframes nIzq { from { transform:translateX(0); } to { transform:translateX(-50%); } }
@keyframes nDer { from { transform:translateX(-50%); } to { transform:translateX(0); } }
@keyframes nSube { from { transform:translateY(0); } to { transform:translateY(-50%); } }

.n-rec.lado .n-pista, .n-rec.lado .n-mancha, .nv-esc.quieto .n-pista, .nv-esc.quieto .n-mancha { animation-play-state:paused; }

.nv-esc.moviendo .n-pista, .nv-esc.moviendo .n-mancha { animation-play-state:paused; }
@media (prefers-reduced-motion: reduce) {
  .noche .n-pista, .noche .n-mancha { animation:none; }
  .noche .n-rec { transition-duration:.01s; }
}

.es-musica { background:linear-gradient(135deg, #505254 0%, #2E2F31 52%, #1B1C1E 100%);
  
  -webkit-mask-image:linear-gradient(180deg, transparent 0%, #000 18%, #000 82%, transparent 100%);
  mask-image:linear-gradient(180deg, transparent 0%, #000 18%, #000 82%, transparent 100%); }
.n-discos { animation-duration:150s; }

.n-disco { flex:none; width:300px; height:300px; margin-right:26px; border-radius:24px; background-size:cover; background-position:center;
  box-shadow:0 14px 32px rgba(0,0,0,.45), 0 0 0 1px rgba(255,255,255,.06); }
.noche.alto .n-discos { animation-duration:110s; }
.noche.alto .n-disco { width:190px; height:190px; margin-right:18px; border-radius:18px; box-shadow:0 10px 22px rgba(0,0,0,.45), 0 0 0 1px rgba(255,255,255,.06); }

.es-cine {
  -webkit-mask-image:linear-gradient(180deg, transparent 0%, #000 18%, #000 82%, transparent 100%);
  mask-image:linear-gradient(180deg, transparent 0%, #000 18%, #000 82%, transparent 100%); }
.n-carteles { animation-duration:150s; }
.n-cartel { flex:none; width:190px; height:281px; margin-right:20px; border-radius:14px; background-size:cover; background-position:center;
  box-shadow:0 14px 32px rgba(0,0,0,.45), 0 0 0 1px rgba(255,255,255,.06); }
.noche.alto .n-carteles { animation-duration:110s; }
.noche.alto .n-cartel { width:118px; height:175px; margin-right:12px; border-radius:10px; box-shadow:0 10px 22px rgba(0,0,0,.45), 0 0 0 1px rgba(255,255,255,.06); }

.noche .rc-generos { position:absolute; left:60px; top:140px; display:flex; flex-direction:column; align-items:flex-start; gap:10px; z-index:3;
  max-height:600px; overflow-y:auto; scrollbar-width:none;
  opacity:0; translate:-40px 0; transition:opacity .5s ease, translate .01s linear .5s; }
.noche .rc-generos::-webkit-scrollbar { display:none; }
.noche .nv-cine.on .rc-generos { opacity:1; translate:0 0; transition:opacity .7s ease .2s, translate 1s var(--dc-ease) .2s; }
.noche .rc-genero { font-size:52px; line-height:1.14; color:rgba(242,242,244,.38); text-align:left; white-space:nowrap;
  transition:color .6s ease, text-shadow .6s ease; }
.noche .rc-genero.on { color:#F2F2F4; text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }
@media (any-hover:hover) { .noche .rc-genero:not(.on):hover { color:rgba(242,242,244,.72); } }
.noche .rc-portadas { position:absolute; left:0; top:0; width:0; height:0; z-index:2; opacity:0; translate:90px 0; transition:opacity .45s ease, translate .7s var(--dc-ease); }
.noche .nv-cine.on .rc-portadas { opacity:1; translate:0 0; transition:opacity .7s ease .3s, translate 1.1s var(--dc-ease) .3s; }
.noche .nv-cine.on .rc-portadas.cruza { opacity:0; transition:opacity .35s ease; }

.noche .nv-cine.on.info-abierta .rc-portadas { opacity:.26; transition:opacity .55s ease; }
.noche .rc-portada { position:absolute; left:0; top:0; border-radius:16px; background-size:cover; background-position:center;
  box-shadow:0 20px 50px rgba(0,0,0,.55), 0 0 0 1px rgba(255,255,255,.06); }
.noche .rc-carril { position:absolute; left:470px; top:184px; width:calc(970px + var(--n-derecha, 0px)); height:420px; z-index:4; overflow-x:scroll; scrollbar-width:none; }
.noche .rc-carril::-webkit-scrollbar { display:none; }
.noche .rc-pista { height:1px; }
.rc-vacio { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; color:rgba(242,242,244,.55); font-size:20px; text-align:center; padding:0 60px; }

.noche .rc-ficha { position:absolute; left:490px; top:616px; width:900px; z-index:5; translate:0 16px;
  transition:opacity .45s ease, translate .9s var(--dc-ease) .35s, transform .55s var(--dc-ease); }
.noche .nv-cine.on .rc-ficha { translate:0 0; }
.noche .rc-ficha.cruza { opacity:0; transition:opacity .16s ease, translate .9s var(--dc-ease) .35s, transform .55s var(--dc-ease); }
.noche .rc-tit { font-size:40px; line-height:1.06; text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }
.noche .rc-anio { color:rgba(242,242,244,.42); }
.noche .rc-meta { font-size:20px; line-height:1.15; margin-top:10px; color:rgba(242,242,244,.48); }
.noche .rc-ver { margin-top:18px; }
.noche .rc-mas { font-size:30px; line-height:1; text-align:left; text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }
.noche .info-abierta .rc-mas { display:none; }
@media (any-hover:hover) { .noche .rc-mas:hover { text-shadow:0 0 18px rgba(255,255,255,.55), 0 0 54px rgba(242,242,244,.28); } }
.noche .rc-info { max-height:0; overflow:hidden; opacity:0; transition:max-height .6s var(--dc-ease), opacity .5s ease; }
.noche .info-abierta .rc-info { max-height:400px; opacity:1; overflow:visible; }

.noche .rc-trailer { margin-left:38px; font-size:30px; line-height:1; text-align:left; text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }
.noche .info-abierta .rc-trailer { margin-left:0; margin-bottom:18px; }
.noche .rc-trailer[hidden] { display:none !important; }
@media (any-hover:hover) { .noche .rc-trailer:hover { text-shadow:0 0 18px rgba(255,255,255,.55), 0 0 54px rgba(242,242,244,.28); } }
.noche .rc-tr { position:absolute; inset:0; z-index:40; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:26px;
  background:rgba(8,8,10,.88); opacity:0; transition:opacity .4s ease; }
.noche .rc-tr.on { opacity:1; }
.noche .rc-tr-marco { width:min(1240px, 86%); aspect-ratio:16/9; border-radius:14px; overflow:hidden; background:#000; box-shadow:0 30px 90px rgba(0,0,0,.65); }
.noche .rc-tr-marco iframe { display:block; width:100%; height:100%; border:0; }
.noche .rc-tr-cerrar { font-size:24px; color:rgba(242,242,244,.82); text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }
.noche.alto .rc-tr-marco { width:calc(100% - 32px); border-radius:10px; }
.noche.alto .rc-trailer { display:block; margin:14px 0 0; font-size:22px; }
.noche .rc-sinopsis { font-size:18px; line-height:1.5; color:rgba(242,242,244,.9); max-width:860px; }
.noche .rc-reparto { margin-top:14px; font-size:15px; line-height:1.4; color:rgba(242,242,244,.6); max-width:860px; }
.noche .rc-donde { margin-top:10px; font-size:15px; line-height:1.4; color:rgba(242,242,244,.6); max-width:860px; }
.noche .rc-reparto b, .noche .rc-donde b { font-weight:400; color:rgba(242,242,244,.4); }

.noche .rc-fuente { margin-top:16px; font-size:11px; line-height:1.3; color:rgba(242,242,244,.3); max-width:560px; }

.noche.alto .rc-generos { left:0; right:0; top:84px; max-height:none; flex-direction:row; align-items:baseline; gap:24px; padding:28px 24px; overflow-x:auto; overflow-y:hidden; }
.noche.alto .rc-genero { flex:none; font-size:36px; line-height:1; }
.noche.alto .rc-genero.on { font-size:44px; }
.noche.alto .rc-carril { left:0; top:184px; width:390px; height:calc(var(--rc-ficha, 524px) - 190px); }

.noche.alto .rc-ficha { left:45px; top:var(--rc-ficha, 524px); width:320px; }
.noche.alto .rc-tit { font-size:26px; }
.noche.alto .rc-meta { font-size:15px; margin-top:8px; }
.noche.alto .rc-ver { margin-top:14px; }
.noche.alto .rc-mas { font-size:22px; }
.noche.alto .nv-cine.info-abierta .rc-generos, .noche.alto .nv-mus.servicios-abiertos .nm-generos { opacity:0; pointer-events:none; transition:opacity .4s ease; }
.noche.alto .info-abierta .rc-info { max-height:560px; }
.noche.alto .rc-sinopsis { font-size:15px; line-height:1.48; }
.noche.alto .rc-fuente { margin-top:14px; }
.noche.alto .rc-sinopsis { max-width:100%; }
.noche.alto .rc-reparto, .noche.alto .rc-donde { font-size:13px; max-width:100%; }
.noche.alto .rc-fuente { font-size:10px; max-width:100%; }

.n-generos { top:540px; animation-duration:150s; }
.n-genero { flex:none; padding-right:64px; font-size:56px; line-height:1; white-space:nowrap; color:#F2F2F4;
  text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }
.noche.alto .n-generos { top:calc(50% + 50px); animation-duration:110s; }
.noche.alto .n-genero { font-size:30px; padding-right:36px; }

.es-crema { background:#F4EFE6; }
.n-campo { position:absolute; left:-300px; top:-190px; width:2040px; height:1300px; transform:rotate(-7deg); }
.noche.alto .n-campo { left:-825px; top:calc(50% - 650px); transform:rotate(-7deg) scale(.58); }
.n-fila { top:calc(var(--fila) * 304px); }
.n-fila:nth-child(1) { left:0; animation-duration:150s; }
.n-fila:nth-child(2) { left:-110px; animation-duration:190s; }
.n-fila:nth-child(3) { left:-40px; animation-duration:170s; }
.n-fila:nth-child(4) { left:-150px; animation-duration:210s; }
.n-revista { flex:none; width:196px; height:278px; margin-right:22px; padding:8px 8px 0; border-radius:20px; overflow:hidden;
  background:#FDFBF6; border:1px solid rgba(28,25,21,.10); display:flex; flex-direction:column; letter-spacing:normal;
  transition:transform .5s var(--dc-ease), box-shadow .5s ease; }
.n-foto { flex:none; height:148px; border-radius:14px; background-size:cover; background-position:center; }
.n-ceja { font-family:"Inter", -apple-system, system-ui, sans-serif; font-weight:600; font-size:9.5px; letter-spacing:.14em; text-transform:uppercase; margin:14px 8px 7px; }
.n-tit { font-family:"Canela Text", "Fraunces", Georgia, serif; font-weight:400; font-size:16.5px; line-height:1.14; letter-spacing:-.012em; color:#1C1915; margin:0 8px;
  display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden; }
.n-revista.sin-foto { padding:18px 10px 0; }
.n-revista.sin-foto .n-tit { font-size:22px; -webkit-line-clamp:7; }
.n-revista.portada { background:#2733C0; border-color:transparent; }
.n-revista.portada .n-ceja { color:rgba(243,241,255,.72); }
.n-revista.portada .n-tit { color:#F3F1FF; }

.es-tg { background:#131417; }
.n-tg-cab { position:absolute; left:0; right:0; top:250px; display:flex; justify-content:center; align-items:center; gap:22px; }
.n-tg-ico { flex:none; width:84px; height:84px; filter:drop-shadow(0 14px 34px rgba(0,0,0,.5)); }
.n-tg-nombre { font-size:46px; line-height:1; text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }
.n-tg-quieto { position:absolute; left:0; right:0; top:385px; display:flex; flex-direction:column; align-items:center; gap:30px; }
.n-burbuja { flex:none; max-width:560px; padding:18px 24px; border-radius:22px; background:rgba(255,255,255,.075);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05); font-size:24px; line-height:1.3; color:rgba(242,242,244,.9); }
.n-tg-abrir { font-size:30px; line-height:1; text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }

.noche:not(.casa) .n-burbuja { background:none; box-shadow:none; padding:0; border-radius:0; text-align:center; font-size:30px; line-height:1.3; color:rgba(242,242,244,.72); max-width:640px; text-wrap:balance; }
.noche:not(.casa) .n-mensajes .n-burbuja { text-align:left; margin-bottom:26px; font-size:24px; }
.n-mensajes { position:absolute; left:400px; width:640px; top:360px; bottom:0; overflow:hidden;
  -webkit-mask-image:linear-gradient(180deg, transparent 0, #000 70px); mask-image:linear-gradient(180deg, transparent 0, #000 70px); }
.n-mensajes .n-burbuja { margin-bottom:18px; font-size:21px; }
.noche.alto .n-tg-cab { top:calc(50% - 150px); gap:14px; }
.noche.alto .n-tg-ico { width:56px; height:56px; }
.noche.alto .n-tg-nombre { font-size:30px; }
.noche.alto .n-tg-quieto { top:calc(50% - 50px); gap:20px; padding:0 40px; }
.noche.alto .n-burbuja { font-size:17px; padding:14px 18px; border-radius:18px; }
.noche.alto:not(.casa) .n-burbuja { padding:0; font-size:20px; }
.noche.alto:not(.casa) .n-mensajes .n-burbuja { font-size:17px; }
.noche.alto .n-tg-abrir { font-size:20px; }
.noche.alto .n-mensajes { left:40px; width:310px; top:calc(50% - 60px); }

.n-puerta { position:absolute; left:330px; top:260px; width:780px; height:480px; z-index:4; cursor:pointer; }

.n-fl { position:absolute; top:50%; margin-top:-48px; width:64px; height:96px; z-index:6; padding:0; border:0; background:none;
  color:#F2F2F4; opacity:.3; cursor:pointer; -webkit-appearance:none; appearance:none;
  display:flex; align-items:center; justify-content:center;
  transition:opacity .34s var(--dc-ease), transform .34s var(--dc-ease); }

.n-fl svg { width:30px; height:30px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.n-fl-izq { left:34px; } .n-fl-der { right:34px; }
@media (any-hover: hover) {
  .n-fl:hover { opacity:.92; }
  .n-fl-izq:hover { transform:translateX(-3px); } .n-fl-der:hover { transform:translateX(3px); }
}
.n-fl:focus-visible { opacity:.92; outline:none; }
.n-fl:active { opacity:1; }
.nv-esc.moviendo .n-fl { opacity:.14; }
.noche.alto .n-fl { width:46px; height:74px; margin-top:-37px; }
.noche.alto .n-fl svg { width:24px; height:24px; }
.noche.alto .n-fl-izq { left:4px; } .noche.alto .n-fl-der { right:4px; }
.noche.intro .n-fl { opacity:0; }
@media (prefers-reduced-motion: reduce) { .n-fl { transition:none; } }
.noche.alto .n-puerta { left:50px; top:220px; width:290px; height:calc(var(--n-h) - 440px); }

.noche .nm-generos { position:absolute; left:60px; top:218px; display:flex; flex-direction:column; align-items:flex-start; gap:12px; z-index:3;
  opacity:0; translate:-40px 0; transition:opacity .45s ease, translate .7s var(--dc-ease); }
.noche .nv-mus.on .nm-generos { opacity:1; translate:0 0; transition:opacity .7s ease .2s, translate 1s var(--dc-ease) .2s; }
.noche .nm-genero { font-size:64px; line-height:1.12; color:rgba(242,242,244,.38); text-align:left; white-space:nowrap;
  transition:font-size .6s var(--dc-ease), color .6s ease, text-shadow .6s ease; }
.noche .nm-genero.on { font-size:78px; color:#F2F2F4; text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }
@media (any-hover: hover) { .noche .nm-genero:not(.on):hover { color:rgba(242,242,244,.72); } }
.noche .nm-portadas { position:absolute; left:0; top:0; width:0; height:0; z-index:2; opacity:0; translate:90px 0; transition:opacity .45s ease, translate .7s var(--dc-ease); }
.noche .nv-mus.on .nm-portadas { opacity:1; translate:0 0; transition:opacity .7s ease .3s, translate 1.1s var(--dc-ease) .3s; }
.noche .nv-mus.on .nm-portadas.cruza { opacity:0; transition:opacity .35s ease; }
.noche .nm-portada { position:absolute; left:0; top:0; width:440px; height:440px; border-radius:30px; background-size:cover; background-position:center;
  transform-origin:0 0; will-change:transform, opacity; box-shadow:0 40px 110px rgba(0,0,0,.72), 0 0 0 1px rgba(255,255,255,.05); }
.noche .nm-oscuro { position:absolute; inset:0; border-radius:inherit; background:#000; opacity:0; will-change:opacity; pointer-events:none; }

.noche .nm-oir { position:absolute; left:20px; top:16px; font-style:normal; font-size:19px; line-height:1; color:#F2F2F4;
  opacity:0; pointer-events:none; transition:opacity .5s ease;
  text-shadow:0 0 18px rgba(255,255,255,.7), 0 0 54px rgba(242,242,244,.32), var(--dc-shadow-text); }
.noche .nm-portada.centro .nm-oir { opacity:.92; }
.noche .nm-carril { position:absolute; left:470px; top:170px; width:calc(970px + var(--n-derecha, 0px)); height:520px; z-index:4;
  overflow-x:auto; overflow-y:hidden; scrollbar-width:none; overscroll-behavior:contain; touch-action:pan-x; cursor:grab; }
.noche .nm-carril::-webkit-scrollbar { display:none; }
.noche .nm-carril.arrastra { cursor:grabbing; }
.noche .nm-pista { height:1px; }
.noche .nm-ficha { position:absolute; left:490px; top:684px; width:900px; z-index:5; translate:0 16px;
  transition:opacity .45s ease, translate .9s var(--dc-ease) .35s, transform .55s var(--dc-ease); }
.noche .nv-mus.on .nm-ficha { translate:0 0; }
.noche .nm-ficha.cruza { opacity:0; transition:opacity .16s ease, translate .9s var(--dc-ease) .35s, transform .55s var(--dc-ease); }
.noche .nm-titulo { font-size:44px; line-height:1.05; text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }
.noche .nm-artista { font-size:24px; line-height:1; margin-top:10px; color:rgba(242,242,244,.48); }
.noche .nm-escuchar { margin-top:18px; }
.noche .nm-slushat { font-size:30px; line-height:1; text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }
.noche .servicios-abiertos .nm-slushat { display:none; }

.noche .nm-servicios { display:flex; flex-direction:row; flex-wrap:wrap; align-items:baseline; gap:10px 30px; font-size:30px;
  max-height:0; overflow:hidden; opacity:0; transition:max-height .6s var(--dc-ease), opacity .5s ease; }
.noche .servicios-abiertos .nm-servicios { max-height:140px; opacity:1; overflow:visible; }
.noche .nm-servicio { display:block; line-height:1.1; color:rgba(242,242,244,.62); transform:scale(.94); transform-origin:left center; cursor:pointer;
  transition:color .5s var(--dc-ease), filter .5s var(--dc-ease), transform .5s var(--dc-ease), text-shadow .5s ease; }
.noche .nm-servicios:hover .nm-servicio { color:rgba(242,242,244,.3); filter:blur(1.4px); transform:scale(.88); text-shadow:none; }
.noche .nm-servicios .nm-servicio:hover, .noche .nm-servicios .nm-servicio:active, .noche .nm-servicios .nm-servicio:focus-visible {
  color:#F2F2F4; filter:blur(0); transform:scale(1.04); outline:none; text-shadow:0 0 18px rgba(255,255,255,.55), 0 0 54px rgba(242,242,244,.28); }

.noche .nm-sonando { position:absolute; left:60px; bottom:44px; display:flex; align-items:center; gap:16px; z-index:6; cursor:pointer;
  opacity:0; transform:translateY(14px); transition:opacity .6s ease, transform .6s var(--dc-ease); }
.noche .nm-sonando.on { opacity:1; transform:none; }
.noche .nm-son-foto { flex:none; width:56px; height:56px; border-radius:12px; background-size:cover; background-position:center; box-shadow:0 12px 30px rgba(0,0,0,.55); }
.noche .nm-son-t { display:flex; flex-direction:column; gap:6px; width:230px; }
.noche .nm-son-titulo { font-size:20px; line-height:1.1; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; text-shadow:0 0 16px rgba(242,242,244,.3); }
.noche .nm-son-artista { font-size:15px; line-height:1; color:rgba(242,242,244,.5); }
.noche .nm-son-barra { height:2px; border-radius:1px; overflow:hidden; background:rgba(242,242,244,.16); }
.noche .nm-son-barra > i { display:block; height:100%; background:#F2F2F4; transform-origin:0 50%; transform:scaleX(0); box-shadow:0 0 8px rgba(242,242,244,.6); }
.noche .nm-son-signo { flex:none; width:22px; height:22px; fill:#F2F2F4; filter:drop-shadow(0 0 8px rgba(242,242,244,.4)); }

.noche.alto .nm-generos { left:0; right:0; top:84px; flex-direction:row; align-items:baseline; gap:24px; padding:28px 24px; overflow-x:auto; scrollbar-width:none; }
.noche.alto .nm-generos::-webkit-scrollbar { display:none; }
.noche.alto .nm-genero { flex:none; font-size:36px; line-height:1; }
.noche.alto .nm-genero.on { font-size:44px; }
.noche.alto .nm-portada { width:var(--nm-p, 300px); height:var(--nm-p, 300px); border-radius:24px; box-shadow:0 30px 80px rgba(0,0,0,.72); }
.noche.alto .nm-oir { left:14px; top:12px; font-size:15px; }
.noche.alto .nm-carril { left:0; top:180px; width:390px; height:340px; }
.noche.alto .nm-ficha { left:45px; top:var(--nm-ficha, 520px); width:320px; }
.noche.alto .nm-titulo { font-size:30px; }
.noche.alto .nm-artista { font-size:18px; margin-top:8px; }
.noche.alto .nm-slushat { font-size:24px; }
.noche.alto .nm-servicios { flex-direction:column; align-items:flex-start; font-size:24px; gap:10px; }
.noche.alto .servicios-abiertos .nm-servicios { max-height:260px; }

.noche.alto .nm-sonando { left:24px; right:124px; bottom:28px; }
.noche.alto .nm-son-t { width:auto; flex:1; min-width:0; }
.noche.alto .nm-son-artista { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.noche.alto .servicios-abiertos .nm-sonando { opacity:0; pointer-events:none; }

.noche .n-velo { position:absolute; z-index:4; opacity:0; pointer-events:none;
  top:calc(-1 * var(--n-abajo, 0px)); bottom:calc(-1 * var(--n-abajo, 0px));
  left:calc(-1 * var(--n-derecha, 0px)); right:calc(-1 * var(--n-derecha, 0px));
  background:linear-gradient(180deg, rgba(14,18,24,.42) 0%, rgba(14,18,24,.72) 26%, rgba(14,18,24,.92) 62%, rgba(14,18,24,.95) 100%);
  transition:opacity .5s ease; }

.noche .nv-cine.info-abierta .n-velo, .noche.alto .servicios-abiertos .n-velo { opacity:1; }

.noche .nv-cine.info-abierta {
  -webkit-mask-image:linear-gradient(180deg, transparent 0, transparent 112px, #000 162px, #000 100%);
  mask-image:linear-gradient(180deg, transparent 0, transparent 112px, #000 162px, #000 100%);
  
  -webkit-mask-size:calc(100% + 4000px) calc(100% + 2000px); mask-size:calc(100% + 4000px) calc(100% + 2000px);
  -webkit-mask-position:-2000px 0; mask-position:-2000px 0;
  -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat;
  -webkit-mask-clip:no-clip; mask-clip:no-clip;
}
.noche.alto .nv-cine.info-abierta {
  -webkit-mask-image:linear-gradient(180deg, transparent 0, transparent 80px, #000 120px, #000 100%);
  mask-image:linear-gradient(180deg, transparent 0, transparent 80px, #000 120px, #000 100%);
}
html:not(.sin-desenfoque) .noche.alto .servicios-abiertos .n-velo,
html:not(.sin-desenfoque) .noche.alto .info-abierta .n-velo { backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); }
@media (prefers-reduced-motion: reduce) { .noche .n-velo { transition:none; } }

.nv-his .nh-hoja { position:absolute; left:56px; right:56px; top:150px; bottom:-40px; border-radius:30px 30px 0 0; overflow:hidden;
  --crema:#F4EFE6; --papel:#FDFBF6; --tinta:#1C1915; --tinta-suave:rgba(28,25,21,.62); --tinta-tenue:rgba(28,25,21,.40); --linea:rgba(28,25,21,.10); --ultramar:#2733C0;
  background:var(--crema); color:var(--tinta); letter-spacing:normal; -webkit-user-select:text; user-select:text;
  box-shadow:0 -12px 90px rgba(0,0,0,.5), 0 0 0 1px rgba(255,255,255,.04);
  opacity:0; translate:0 90px; transition:opacity .45s ease, translate .7s var(--dc-ease); }
.nv-his.on .nh-hoja { opacity:1; translate:0 0; transition:opacity .6s ease .3s, translate 1.1s var(--dc-ease) .3s; }
.nh-hoja::after { content:""; position:absolute; inset:0; pointer-events:none; opacity:.045;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='p'><feTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23p)'/></svg>"); }
.nh-dentro { position:absolute; inset:0; overflow-y:auto; overscroll-behavior:contain; padding:38px 64px 90px; scrollbar-width:none; }
.nh-dentro::-webkit-scrollbar { display:none; }
.nh-cabeza { display:flex; justify-content:space-between; align-items:flex-end; gap:24px; padding-bottom:20px; margin-bottom:24px; border-bottom:1px solid var(--linea); }
.nh-saludo { font-family:"Canela Text", "Fraunces", Georgia, serif; font-weight:400; font-size:52px; line-height:1.02; letter-spacing:-.02em; }
.nh-saludo em { font-style:italic; font-weight:340; color:var(--tinta-suave); }
.nh-der { display:flex; flex-direction:column; align-items:flex-end; gap:14px; }
.nh-fecha { font-family:"Inter", -apple-system, system-ui, sans-serif; font-size:11px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--tinta-tenue); }
.noche .nh-niveles button { font-family:"Inter", -apple-system, system-ui, sans-serif; font-size:13px; font-weight:600; letter-spacing:.04em; padding:7px 15px; border-radius:100px; color:var(--tinta-suave); }
.noche .nh-niveles button[aria-selected="true"] { background:var(--ultramar); color:#F3F1FF; }
.nh-mosaico { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); grid-auto-rows:250px; gap:18px 26px; transition:opacity .25s ease; }
.nh-mosaico.cruza { opacity:0; }
.noche .nh-carta { position:relative; display:flex; flex-direction:column; text-align:left; overflow:hidden; cursor:pointer;
  background:var(--papel); border:1px solid var(--linea); border-radius:22px; padding:10px; color:var(--tinta); font:inherit; letter-spacing:normal;
  transition:transform .35s var(--dc-ease), box-shadow .35s ease; }
.nv-his.on .nh-carta { animation:nhSube .9s var(--dc-ease) both; animation-delay:calc(.45s + var(--i) * 90ms); }
.nv-his.on .nh-mosaico.sin-entrada .nh-carta { animation-duration:.5s; animation-delay:calc(var(--i) * 50ms); }
@keyframes nhSube { from { opacity:0; translate:0 28px; } to { opacity:1; translate:0 0; } }
@media (any-hover: hover) { .noche .nh-carta:hover { transform:translateY(-5px); box-shadow:0 22px 50px rgba(28,25,21,.16); } }
.noche .nh-carta:focus-visible { outline:2px solid var(--ultramar); outline-offset:3px; }
.nh-foto { display:block; flex:none; height:104px; border-radius:14px; background-size:cover; background-position:center; }
.nh-texto { display:flex; flex-direction:column; flex:1; min-height:0; padding:14px 8px 4px; }
.nh-ceja { font-family:"Inter", -apple-system, system-ui, sans-serif; font-size:10.5px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; margin-bottom:9px; }
.nh-tit { font-family:"Canela Text", "Fraunces", Georgia, serif; font-weight:530; font-size:21px; line-height:1.13; letter-spacing:-.012em;
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.nh-res { font-family:"Canela Text", "Fraunces", Georgia, serif; font-style:italic; font-weight:340; font-size:17px; line-height:1.45; color:rgba(243,241,255,.78); margin-top:14px;
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.nh-pie { margin-top:auto; padding-top:10px; font-family:"Inter", -apple-system, system-ui, sans-serif; font-size:11px; color:var(--tinta-tenue); }
.noche .nh-carta.portada { grid-column:span 2; grid-row:span 2; background:var(--ultramar); border-color:transparent; color:#F3F1FF; padding:12px; }
.nh-carta.portada .nh-foto { height:268px; border-radius:16px; }
.nh-carta.portada .nh-texto { padding:20px 16px 6px; }
.nh-carta.portada .nh-ceja { color:rgba(243,241,255,.72); }
.nh-carta.portada .nh-tit { font-weight:400; font-size:40px; line-height:1.06; -webkit-line-clamp:2; }
.nh-carta.portada .nh-pie { color:rgba(243,241,255,.6); }
.nh-carta.sin-foto .nh-texto { padding-top:18px; }
.nh-carta.sin-foto .nh-tit { font-size:26px; -webkit-line-clamp:5; }

.nh-vuelo { position:fixed; z-index:8999; pointer-events:none; overflow:hidden; background:#F4EFE6; box-shadow:0 30px 90px rgba(0,0,0,.35); }
.nh-vuelo.vuela { transition:left .62s cubic-bezier(.3,0,.1,1), top .62s cubic-bezier(.3,0,.1,1), width .62s cubic-bezier(.3,0,.1,1), height .62s cubic-bezier(.3,0,.1,1), border-radius .62s ease; }
.nh-vuelo::before { content:""; position:absolute; inset:0; opacity:.05;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='p'><feTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23p)'/></svg>"); }
.nh-vuelo::after { content:""; position:absolute; top:-30%; bottom:-30%; left:-60%; width:60%;
  background:linear-gradient(105deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.7) 50%, rgba(255,255,255,0) 100%); transform:translateX(0) skewX(-12deg); }
.nh-vuelo.vuela::after { transform:translateX(420%) skewX(-12deg); transition:transform .95s cubic-bezier(.4,0,.2,1) .08s; }
@media (prefers-reduced-motion: reduce) {
  .nh-vuelo.vuela, .nh-vuelo.vuela::after { transition:none; }
  .nv-his.on .nh-carta { animation:none; }
}

.noche.alto .nv-his .nh-hoja { left:10px; right:10px; top:104px; border-radius:22px 22px 0 0; }
.noche.alto .nh-dentro { padding:26px 18px 70px; }
.noche.alto .nh-cabeza { flex-direction:column; align-items:flex-start; gap:14px; margin-bottom:20px; padding-bottom:18px; }
.noche.alto .nh-saludo { font-size:34px; }
.noche.alto .nh-der { align-items:flex-start; }
.noche.alto .nh-mosaico { grid-template-columns:minmax(0, 1fr); grid-auto-rows:auto; gap:14px; }
.noche.alto .nh-carta.portada { grid-column:auto; grid-row:auto; }
.noche.alto .nh-foto { height:150px; }
.noche.alto .nh-carta.portada .nh-foto { height:190px; }
.noche.alto .nh-carta.portada .nh-tit { font-size:28px; -webkit-line-clamp:4; }
.noche.alto .nh-tit { font-size:20px; }
.noche.alto .nh-pie { padding-top:12px; }

.n-rec .n-medio { transition:opacity .16s ease; }
.n-rec.centro .n-medio, .n-rec.calienta .n-medio { opacity:0; transition:opacity .62s ease; }
.nv-esc.moviendo .n-rec .n-medio { opacity:1; transition:opacity .16s ease; }
.nv-esc.fuera .n-rec.centro .n-medio { opacity:0; transition:none; }

.noche .nv-his.on .rc-generos { opacity:1; translate:0 0; transition:opacity .7s ease .2s, translate 1s var(--dc-ease) .2s; }
.noche .nv-his.on .rc-portadas { opacity:1; translate:0 0; transition:opacity .7s ease .3s, translate 1.1s var(--dc-ease) .3s; }
.noche .nv-his.on .rc-portadas.cruza { opacity:0; transition:opacity .35s ease; }
.noche .nv-his.on.info-abierta .rc-portadas { opacity:.26; transition:opacity .55s ease; }
.noche .nv-his.on .rc-ficha { translate:0 0; }
.noche.alto .nv-his.info-abierta .rc-generos, .noche.alto .nv-mus.servicios-abiertos .nm-generos { opacity:0; pointer-events:none; transition:opacity .4s ease; }
.noche .nv-his.info-abierta .n-velo, .noche.alto .servicios-abiertos .n-velo { opacity:1; }

.noche .rc-niveles { display:flex; gap:26px; margin-top:16px; }
.noche .rc-niveles:empty { display:none; }
.noche .rc-niveles .ent-op { font-size:24px; line-height:1; padding:4px 0; }
.noche.alto .rc-niveles { gap:20px; margin-top:12px; }
.noche.alto .rc-niveles .ent-op { font-size:18px; }
.noche .nv-his .rc-portada { background-size:cover; background-position:center; }

.n-cartel.n-folio { position:relative; overflow:hidden; display:flex; flex-direction:column; justify-content:space-between; }
.n-cartel.n-folio::before { content:""; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(180deg, rgba(10,10,14,.42) 0%, rgba(10,10,14,0) 26%, rgba(10,10,14,0) 44%, rgba(10,10,14,.78) 100%); }
.nfo-cab, .nfo-pie { position:relative; z-index:1; color:#fff; }
.nfo-cab { padding:12px 14px 0; font-family:"Fraunces", Georgia, serif; font-size:30px; font-weight:500; line-height:1; letter-spacing:-.02em; text-shadow:0 2px 10px rgba(0,0,0,.35); }
.nfo-pie { padding:0 14px 14px; display:flex; flex-direction:column; gap:6px; }
.nfo-cat { font-family:"Inter", -apple-system, system-ui, sans-serif; font-size:9px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; opacity:.85; }
.nfo-tit { font-family:"Fraunces", Georgia, serif; font-size:17px; font-weight:450; line-height:1.14; letter-spacing:-.01em; text-shadow:0 2px 12px rgba(0,0,0,.45);
  display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden; }
.noche.alto .nfo-cab { padding:8px 9px 0; font-size:19px; }
.noche.alto .nfo-pie { padding:0 9px 9px; gap:4px; }
.noche.alto .nfo-cat { font-size:7px; }
.noche.alto .nfo-tit { font-size:11px; -webkit-line-clamp:4; }

.es-folio { overflow:visible; }
.fm-frente { position:absolute; width:600px; height:780px; transform-origin:0 0; }

.fm-sombra { position:absolute; inset:0; pointer-events:none; border-radius:3px;
  box-shadow:34px 46px 70px rgba(0,0,0,.55), 10px 14px 20px rgba(0,0,0,.42); }

.fm-charco { position:absolute; inset:0; pointer-events:none; opacity:0;
  background:radial-gradient(circle var(--fr) at var(--fx) var(--fy), rgba(255,214,160,.26) 0%, rgba(255,204,150,.12) 38%, rgba(255,200,140,.04) 66%, rgba(255,200,140,0) 100%); }

.fm-revista { position:absolute; inset:0; overflow:hidden; border-radius:3px; background:#2a2622 center / cover no-repeat; color:#fff; font-family:var(--dc-font); isolation:isolate; }
.fm-tapa-sombra { position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(180deg, rgba(0,0,0,.34) 0%, rgba(0,0,0,0) 30%, rgba(0,0,0,0) 52%, rgba(0,0,0,.66) 100%); }

.fm-cinta { position:absolute; left:24px; top:16px; font-size:19px; letter-spacing:.01em; opacity:.92; }
.fm-cabecera { position:absolute; left:20px; top:34px; font-size:126px; line-height:.92; letter-spacing:-.035em; text-shadow:0 6px 22px rgba(0,0,0,.35); white-space:nowrap; }
.fm-cabecera span { font-size:40px; letter-spacing:0; margin-left:8px; }
.fm-lado { position:absolute; left:24px; top:236px; width:230px; }
.fm-linea { font-size:25px; line-height:1.05; margin-bottom:20px; text-shadow:0 2px 12px rgba(0,0,0,.55); }
.fm-linea b, .fm-titular b { display:block; font-weight:inherit; font-size:18px; letter-spacing:.01em; text-transform:lowercase; color:#FFD84A; margin-bottom:5px; }
.fm-titular { position:absolute; left:24px; right:24px; bottom:36px; font-size:58px; line-height:.98; letter-spacing:-.02em; color:#FFD84A; text-shadow:0 4px 18px rgba(0,0,0,.5); }
.fm-titular b { color:#fff; font-size:20px; }

.fm-luz, .fm-refl { position:absolute; inset:0; pointer-events:none; }
.fm-luz { mix-blend-mode:multiply;
  background:radial-gradient(circle farthest-corner at 14% -8%, #FFF7EC 0%, #F6E4C6 26%, #DCC09C 56%, #AE8F6F 82%, #8A6F55 100%); }
.fm-refl { mix-blend-mode:screen; opacity:.5;
  background:radial-gradient(ellipse 62% 34% at 26% 16%, rgba(255,238,210,.55) 0%, rgba(255,238,210,.16) 48%, rgba(255,238,210,0) 100%); }
.fm-apagada { position:absolute; inset:0; z-index:3; pointer-events:none; background:rgba(2,3,7,.97); }

.noche.intro .n-rec.centro .fm-apagada, .noche.intro .n-rec.centro .fm-charco, .noche.intro.folio-centro .noche-sala::before { animation:none !important; }
.noche.intro .n-rec.centro .fm-apagada { opacity:0; }
.noche.intro .n-rec.centro .fm-charco { opacity:1; }
.n-rec.centro .fm-charco { animation:fmLuz 3.6s linear 1.1s both; }
.n-rec.centro .fm-apagada { animation:fmApaga 3.6s linear 1.1s both; }

.n-rec:not(.centro) .fm-apagada, .mp-escena-rec .fm-apagada { opacity:0; }
.mp-escena-rec .fm-charco { opacity:1; }
@keyframes fmLuz { 0% { opacity:0; } 5% { opacity:.75; } 10% { opacity:.06; } 20% { opacity:.04; animation-timing-function:cubic-bezier(.42, 0, .2, 1); } 100% { opacity:1; } }
@keyframes fmApaga { 0% { opacity:1; } 5% { opacity:.25; } 10% { opacity:.95; } 20% { opacity:.96; animation-timing-function:cubic-bezier(.42, 0, .2, 1); } 100% { opacity:0; } }
@media (prefers-reduced-motion: reduce) {
  .n-rec.centro .fm-charco { animation:none; opacity:1; }
  .n-rec.centro .fm-apagada { animation:none; opacity:0; }
}

.noche-sala::before { content:""; position:absolute; inset:0; pointer-events:none; background:#020308; opacity:0; transition:opacity .6s ease; }
.noche.folio-centro .noche-sala::before { animation:fmSala 4.7s linear both; }
@keyframes fmSala {
  0% { opacity:0; } 9% { opacity:.9; }
  23.4% { opacity:.9; } 27.2% { opacity:.45; } 31% { opacity:.88; }
  38.7% { opacity:.9; animation-timing-function:cubic-bezier(.42, 0, .2, 1); }
  100% { opacity:0; }
}
@media (prefers-reduced-motion: reduce) { .noche.folio-centro .noche-sala::before { animation:none; } }

.noche:not([data-vista="esc"]) .noche-titulo.on { pointer-events:auto; cursor:pointer; }
.noche input { -webkit-user-select:text; user-select:text; font:inherit; letter-spacing:inherit; }
.noche .tr-zona { -webkit-user-select:text; user-select:text; cursor:text; }
.noche *::highlight(tr-sel) { background-color:rgba(255,255,255,.22); color:#FFFFFF; }
#folio-ov *::highlight(tr-sel) { background-color:rgba(39,51,192,.16); }

.noche-fps { position:fixed; left:12px; bottom:10px; z-index:9999; font:600 13px/1 -apple-system, system-ui, sans-serif; letter-spacing:0; color:#9FE8A8; background:rgba(0,0,0,.6); padding:6px 9px; border-radius:8px; pointer-events:none; }
.noche-fps.mal { color:#FFB199; }

.noche-cuaderno { position:absolute; right:60px; bottom:40px; z-index:7; font-size:26px; line-height:1; color:rgba(242,242,244,.62);
  opacity:0; transition:opacity 1.2s ease, color .4s ease, text-shadow .4s ease; }
.noche.lista .noche-cuaderno { opacity:1; }
.noche-cuaderno:hover, .noche-cuaderno:focus-visible { color:#F2F2F4; outline:none; text-shadow:0 0 18px rgba(242,242,244,.45); }

.noche[data-vista="his"] .noche-cuaderno, .noche[data-vista="his"] .noche-cuaderno .ncu-n { color:rgba(28,25,21,.55) !important; text-shadow:none !important; }
.noche-cuaderno .ncu-n { font-size:14px; margin-left:4px; vertical-align:super; color:rgba(242,242,244,.55); }
.noche.alto .noche-cuaderno { right:24px; bottom:26px; font-size:18px; }
.noche.alto[data-vista="cine"] .noche-cuaderno { display:none; }

.es-mundo { background:linear-gradient(135deg, #2A2C30 0%, #16171A 55%, #0B0B0D 100%); }
.n-globo-foto { position:absolute; left:470px; top:-6px; width:500px; height:500px; background-size:contain; background-repeat:no-repeat; background-position:center; }
.n-paises { top:520px; animation-duration:170s; }
.noche.alto .n-globo-foto { left:35px; top:calc(50% - 240px); width:320px; height:320px; }
.noche.alto .n-paises { top:calc(50% + 100px); }
.es-cine { background:#0A0A0C; }
.n-cine-luz { position:absolute; left:10%; right:10%; top:-10%; height:90%; border-radius:50%; background:radial-gradient(closest-side, rgba(236,232,224,.2), rgba(236,232,224,0)); }

.n-cine-pantalla { position:absolute; left:260px; top:80px; width:920px; height:470px; background:linear-gradient(170deg, #EEEBE5, #D9D4CA);
  border-radius:6px; box-shadow:0 0 120px 40px rgba(238,235,229,.14), 0 40px 90px rgba(0,0,0,.5); }
.n-cine-cartel { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; color:#141416; text-align:center; padding:0 80px; }
.n-cine-ahora { font-size:20px; letter-spacing:.18em; text-transform:uppercase; opacity:.55; }
.n-cine-tit { font-size:64px; line-height:1.02; }
.n-cine-cuando { font-size:24px; opacity:.7; }
.n-cine-fila { position:absolute; left:0; right:0; bottom:0; height:300px; }
.n-cine-sombra { position:absolute; left:var(--x); bottom:-70px; width:200px; height:300px; transform:scale(var(--s)); transform-origin:50% 100%; filter:blur(3px);
  background:radial-gradient(ellipse 21% 14% at 50% 16%, #08080A 95%, transparent 100%), radial-gradient(ellipse 13% 13% at 50% 33%, #08080A 95%, transparent 100%),
    radial-gradient(ellipse 50% 34% at 50% 80%, #08080A 97%, transparent 100%); }
.noche.alto .n-cine-pantalla { left:24px; top:calc(50% - 190px); width:342px; height:200px; }
.noche.alto .n-cine-tit { font-size:30px; } .noche.alto .n-cine-ahora { font-size:12px; } .noche.alto .n-cine-cuando { font-size:14px; }
.noche.alto .n-cine-cartel { padding:0 24px; gap:8px; }
.noche.alto .n-cine-fila { transform:scale(.3); transform-origin:0 100%; width:1440px; bottom:calc(50% - 250px); }

.nd-lista { position:absolute; left:60px; top:218px; display:flex; flex-direction:column; align-items:flex-start; gap:12px; z-index:3;
  opacity:0; translate:-40px 0; transition:opacity .45s ease, translate .7s var(--dc-ease); }
.nv-desc.on .nd-lista { opacity:1; translate:0 0; transition:opacity .7s ease .2s, translate 1s var(--dc-ease) .2s; }
.noche .nd-region { font-size:64px; line-height:1.12; color:rgba(242,242,244,.38); text-align:left; white-space:nowrap;
  transition:font-size .6s var(--dc-ease), color .6s ease, text-shadow .6s ease; }
.noche .nd-region.on { font-size:78px; color:#F2F2F4; text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }
@media (any-hover: hover) { .noche .nd-region:not(.on):hover { color:rgba(242,242,244,.72); } }
.nd-pista-texto { margin-top:26px; max-width:320px; font-size:20px; line-height:1.3; color:rgba(242,242,244,.42); }
.nd-globo-caja { position:absolute; left:560px; top:70px; width:780px; height:780px; z-index:2; will-change:opacity, transform;
  opacity:0; scale:.94; transition:opacity .6s ease, scale 1s var(--dc-ease); }
.nv-desc.on .nd-globo-caja { opacity:1; scale:1; transition:opacity .9s ease .3s, scale 1.2s var(--dc-ease) .3s; }
.nv-desc.on .nd-globo-caja.entra, .nv-desc.en-pais .nd-globo-caja { opacity:0; transition:opacity .5s ease .3s; }
.nv-desc.en-pais .nd-lista { opacity:0; pointer-events:none; }
.nd-globo { display:block; width:100%; height:100%; cursor:grab; touch-action:none; }
.nd-globo-caja.arrastra .nd-globo { cursor:grabbing; }
.nd-rotulo { position:absolute; display:flex; flex-direction:column; gap:4px; pointer-events:none; white-space:nowrap; z-index:3; }
.nd-rot-n { font-size:30px; line-height:1; text-shadow:0 0 18px rgba(242,242,244,.45); }
.nd-rot-e { font-size:16px; color:rgba(242,242,244,.5); }
.nd-rotulo.abierto .nd-rot-e { color:#F2F2F4; }
.noche.alto .nd-lista { left:0; right:0; top:84px; flex-direction:row; align-items:baseline; gap:24px; padding:28px 24px; }
.noche.alto .nd-region { font-size:36px; line-height:1; } .noche.alto .nd-region.on { font-size:44px; }
.noche.alto .nd-pista-texto { position:absolute; left:24px; right:24px; top:calc(var(--n-h) - 250px); margin:0; max-width:none; font-size:16px; text-align:center; }
.noche.alto .nd-globo-caja { left:5px; top:200px; width:380px; height:380px; }

.nd-pais { position:absolute; inset:0; z-index:5; opacity:0; transition:opacity .8s ease; }
.nd-pais.on { opacity:1; }

.nd-fondo { position:absolute; left:-900px; right:-900px; top:-400px; bottom:-400px; width:calc(100% + 1800px); height:calc(100% + 800px); display:block; object-fit:cover; }
.nd-velo { position:absolute; left:-900px; right:-900px; top:-400px; bottom:-400px;
  background:linear-gradient(180deg, rgba(10,10,12,.3) 0%, rgba(10,10,12,.05) 35%, rgba(10,10,12,.55) 100%); }
.nd-cab { position:absolute; left:0; right:0; top:118px; text-align:center; z-index:2; }
.noche .nd-nombre { display:inline-block; font-size:120px; line-height:1; cursor:pointer; text-shadow:0 0 30px rgba(242,242,244,.45), 0 0 90px rgba(242,242,244,.16);
  opacity:0; translate:0 -18px; transition:opacity 1s ease .2s, translate 1.2s var(--dc-ease) .2s; }
.nd-pais.on .nd-nombre { opacity:1; translate:0 0; }
.nd-secciones { margin-top:20px; display:flex; justify-content:center; gap:44px; }
.noche .nd-sec { font-size:30px; line-height:1; color:rgba(242,242,244,.45); transform-origin:center; transition:color var(--dc-t-lento) var(--dc-ease), text-shadow var(--dc-t-lento) var(--dc-ease), transform var(--dc-t-lento) var(--dc-ease); }
@media (any-hover: hover) { .noche .nd-sec:hover { transform:scale(1.06); } }
.noche .nd-sec.on { color:#F2F2F4; text-shadow:0 0 18px rgba(242,242,244,.45), 0 0 54px rgba(242,242,244,.16); }
@media (any-hover: hover) { .noche .nd-sec:not(.on):hover { color:rgba(242,242,244,.72); } }
.nd-laminas { position:absolute; left:0; right:0; top:330px; bottom:78px; z-index:2; transition:opacity .3s ease;
  opacity:0; translate:0 24px; }
.nd-pais.on .nd-laminas { opacity:1; translate:0 0; transition:opacity .8s ease .45s, translate 1s var(--dc-ease) .45s; }
.nd-pais.on .nd-laminas.cruza { opacity:0; transition:opacity .3s ease; }
.nd-carril { display:flex; height:100%; overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; scrollbar-width:none; overscroll-behavior-x:contain; }
.nd-carril::-webkit-scrollbar { display:none; }
.nd-lamina { flex:0 0 100%; scroll-snap-align:start; scroll-snap-stop:always; box-sizing:border-box; padding:0 110px; display:grid; grid-template-columns:600px minmax(0, 1fr); gap:64px; align-items:center; }
.nd-foto-caja { display:flex; flex-direction:column; gap:10px; }
.nd-foto { width:600px; height:440px; border-radius:28px; background-size:cover; background-position:center; background-color:rgba(255,255,255,.05);
  box-shadow:0 40px 110px rgba(0,0,0,.6), 0 0 0 1px rgba(255,255,255,.05); }
.nd-credito { font-family:"Inter", -apple-system, system-ui, sans-serif; font-size:12px; letter-spacing:normal; color:rgba(242,242,244,.45); padding-left:6px; }
.nd-credito a { text-decoration:underline; text-underline-offset:2px; }
.nd-texto { max-height:480px; overflow-y:auto; padding-right:14px; scrollbar-width:thin; scrollbar-color:rgba(255,255,255,.2) transparent; }
.nd-texto h2 { margin:0 0 20px; font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:46px; line-height:1.05; letter-spacing:.3px;
  text-shadow:0 0 22px rgba(242,242,244,.34); }
.nd-texto p { margin:0 0 14px; font-family:"Fraunces", Georgia, serif; font-weight:340; font-size:21px; line-height:1.56; letter-spacing:normal; color:rgba(242,242,244,.88); }
.nd-pie { position:absolute; left:0; right:0; bottom:26px; z-index:2; display:flex; justify-content:center; align-items:center; gap:24px; font-size:22px; }
.noche .nd-flecha { font-size:24px; line-height:1; padding:10px 18px; color:#F2F2F4; text-shadow:0 0 18px rgba(242,242,244,.4); transition:opacity .3s ease; }
.noche .nd-flecha.apagada { opacity:.22; }
.nd-cuenta { min-width:70px; text-align:center; color:rgba(242,242,244,.6); }
.noche.alto .nd-cab { top:92px; }
.noche.alto .nd-nombre { font-size:54px; }

.noche.alto .nd-secciones { margin-top:14px; gap:calc(24 * var(--nu)); justify-content:center; padding:0 16px; white-space:nowrap; }
.noche.alto .nd-sec { flex:none; font-size:calc(30 * var(--nu)); }
.noche.alto .nd-laminas { top:210px; bottom:66px; }
.noche.alto .nd-lamina { padding:0 20px; grid-template-columns:minmax(0, 1fr); grid-template-rows:auto minmax(0, 1fr); gap:18px; align-items:start; }
.noche.alto .nd-foto { width:100%; height:230px; border-radius:20px; }
.noche.alto .nd-texto { max-height:none; height:100%; overflow-y:auto; }
.noche.alto .nd-texto h2 { font-size:28px; margin-bottom:12px; }
.noche.alto .nd-texto p { font-size:17px; }
.noche.alto .nd-pie { bottom:18px; font-size:16px; }

.nv-cine { --cine-luz:214, 208, 198; }
.nc-luz { position:absolute; left:-900px; right:-900px; top:-400px; bottom:-400px; background-color:rgb(var(--cine-luz)); opacity:.13; transition:background-color .9s ease, opacity 1s ease;
  -webkit-mask-image:radial-gradient(38% 46% at 50% 38%, #000, transparent 80%); mask-image:radial-gradient(38% 46% at 50% 38%, #000, transparent 80%); }
.nv-cine.en-funcion .nc-luz { opacity:.2; }
.nc-pantalla { position:absolute; left:170px; top:118px; width:1100px; height:619px; }

.nc-halo { position:absolute; inset:-120px; background-color:rgb(var(--cine-luz)); opacity:.2; transition:background-color .9s ease;
  -webkit-mask-image:radial-gradient(closest-side, #000 72%, transparent 100%); mask-image:radial-gradient(closest-side, #000 72%, transparent 100%); }
.nc-video, .nc-cartel { position:absolute; inset:0; width:100%; height:100%; }
.nc-video { object-fit:contain; background:#000; transition:opacity 1s ease;
  -webkit-mask-image:linear-gradient(90deg, transparent, #000 44px, #000 calc(100% - 44px), transparent), linear-gradient(180deg, transparent, #000 36px, #000 calc(100% - 36px), transparent);
  -webkit-mask-composite:source-in; mask-image:linear-gradient(90deg, transparent, #000 44px, #000 calc(100% - 44px), transparent), linear-gradient(180deg, transparent, #000 36px, #000 calc(100% - 36px), transparent); mask-composite:intersect; }
.nv-cine:not(.en-funcion) .nc-video { opacity:0; }
.nc-cartel { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px; text-align:center; padding:0 90px; box-sizing:border-box; color:#141416;
  background:linear-gradient(170deg, #EEEBE5, #D8D3C9);
  -webkit-mask-image:linear-gradient(90deg, transparent, #000 60px, #000 calc(100% - 60px), transparent), linear-gradient(180deg, transparent, #000 50px, #000 calc(100% - 50px), transparent);
  -webkit-mask-composite:source-in; mask-image:linear-gradient(90deg, transparent, #000 60px, #000 calc(100% - 60px), transparent), linear-gradient(180deg, transparent, #000 50px, #000 calc(100% - 50px), transparent); mask-composite:intersect; }
.nv-cine.en-funcion .nc-cartel { display:none; }
.nc-c-ceja { font-size:20px; letter-spacing:.18em; text-transform:uppercase; opacity:.55; }
.nc-c-tit { font-size:70px; line-height:1.02; }
.nc-c-cuando { font-size:28px; opacity:.75; }
.nc-c-falta { font-size:21px; opacity:.55; }
.nc-sub { position:absolute; left:250px; right:250px; top:520px; z-index:4; text-align:center; font-size:30px; line-height:1.25; color:#FFFFFF;
  text-shadow:0 0 6px rgba(0,0,0,.9), 0 2px 14px rgba(0,0,0,.7); pointer-events:auto; }
.nc-butacas { position:absolute; left:0; top:0; width:1440px; height:900px; pointer-events:none; z-index:3; }
.nc-sombra { position:absolute; left:var(--x); top:var(--y); width:200px; height:300px; margin-left:-100px; transform-origin:50% 100%;
  transform:scale(var(--k)); opacity:0; filter:blur(3px); transition:opacity 1.6s ease;
  background:radial-gradient(ellipse 21% 14% at 50% 16%, #08080A 95%, transparent 100%), radial-gradient(ellipse 13% 13% at 50% 33%, #08080A 95%, transparent 100%),
    radial-gradient(ellipse 50% 34% at 50% 80%, #08080A 97%, transparent 100%); }
.nc-sombra.esta { opacity:.97; animation:ncRespira var(--d) ease-in-out infinite alternate; }
.nc-sombra.se-va { opacity:0; }
@keyframes ncRespira { from { transform:scale(var(--k)) rotate(0deg); } to { transform:scale(var(--k)) translateX(3px) rotate(var(--r)); } }
.nc-comentarios { position:absolute; left:60px; bottom:120px; width:430px; z-index:5; display:flex; flex-direction:column; align-items:flex-start; gap:10px; }
.nc-com { max-width:100%; padding:10px 16px; border-radius:18px; background:rgba(18,18,21,.84);
  font-size:19px; line-height:1.3; opacity:0; translate:0 10px; transition:opacity var(--dc-t-lento) var(--dc-ease), translate var(--dc-t-entrada) var(--dc-ease); }

.noche:not(.casa) .nc-com { padding:0; border-radius:0; background:none; font-size:calc(30 * var(--nu)); text-shadow:0 1px 10px rgba(0,0,0,.85); }
.nc-com.on { opacity:1; translate:0 0; }
.nc-com-n { color:rgba(242,242,244,.5); margin-right:8px; }
.nc-com.mio .nc-com-n { color:#F2F2F4; }
.nc-escribir { position:absolute; left:50%; bottom:32px; width:560px; margin-left:-280px; z-index:6; display:flex; gap:8px; }
.nc-escribir[hidden] { display:none; }
.noche .nc-escribir input { flex:1; min-width:0; border:0; outline:none; border-radius:100px; padding:14px 22px; font-size:19px; color:#F2F2F4; background:rgba(255,255,255,.07);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06); }
.noche:not(.casa) .nc-escribir input { border-radius:0; background:none; box-shadow:none; padding:8px 0; text-align:center; font-size:calc(40 * var(--nu)); }
.noche .nc-escribir input::placeholder { color:rgba(242,242,244,.4); }
.noche .nc-escribir button { font-size:26px; padding:0 12px; }
.noche .nc-oir { position:absolute; left:50%; top:400px; transform:translateX(-50%); z-index:6; padding:14px 26px; border-radius:100px; background:rgba(10,10,12,.72); font-size:20px;
  box-shadow:0 0 0 1px rgba(255,255,255,.1); }
.noche:not(.casa) .nc-oir { background:none; box-shadow:none; border-radius:0; font-size:calc(50 * var(--nu)); text-shadow:0 0 6px rgba(0,0,0,.9), 0 2px 14px rgba(0,0,0,.7); }
.nc-vieron { position:absolute; right:60px; top:120px; z-index:5; font-size:16px; color:rgba(242,242,244,.45); }
.noche.alto .nc-pantalla { left:6px; top:170px; width:378px; height:213px; }
.noche.alto .nc-c-tit { font-size:28px; } .noche.alto .nc-c-ceja { font-size:11px; } .noche.alto .nc-c-cuando { font-size:14px; } .noche.alto .nc-c-falta { font-size:12px; }
.noche.alto .nc-cartel { padding:0 26px; gap:8px; }
.noche.alto .nc-sub { left:16px; right:16px; top:432px; font-size:18px; }
.noche.alto .nc-butacas { transform:translateY(140px) scale(.27); transform-origin:0 0; }
.noche.alto .nc-comentarios { left:16px; right:16px; width:auto; bottom:96px; }
.noche.alto .nc-com { font-size:15px; padding:8px 12px; }
.noche.alto .nc-escribir { width:358px; margin-left:-179px; bottom:24px; }
.noche.alto .nc-escribir input { font-size:16px; padding:12px 18px; }
.noche.alto:not(.casa) .nc-escribir input { font-size:calc(34 * var(--nu)); padding:8px 0; }
.noche.alto:not(.casa) .nc-com { font-size:15px; }
.noche.alto .nc-vieron { right:24px; top:120px; font-size:13px; }

.tr-ficha { position:fixed; left:50%; bottom:26px; z-index:30; width:min(560px, calc(100vw - 32px)); box-sizing:border-box;
  transform:translate(-50%, 16px); opacity:0; pointer-events:none; transition:opacity .35s ease, transform .45s var(--dc-ease);
  padding:16px 18px 14px 22px; border-radius:22px; background:rgba(22,22,25,.96);
  box-shadow:0 20px 60px rgba(0,0,0,.5), 0 0 0 1px rgba(255,255,255,.07); display:grid; grid-template-columns:minmax(0, 1fr) auto; column-gap:14px; align-items:center; }
.tr-ficha.abierta { opacity:1; transform:translate(-50%, 0); pointer-events:auto; }
.tr-es { grid-column:1; font-size:26px; line-height:1.15; color:#F2F2F4; text-shadow:0 0 16px rgba(242,242,244,.3); overflow-wrap:anywhere; }
.tr-ru { grid-column:1; margin-top:6px; font-size:19px; line-height:1.35; color:rgba(242,242,244,.8); }
.tr-ru.cargando, .ncu-ru.cargando { color:rgba(242,242,244,.4); }
.tr-botones { grid-column:2; grid-row:1 / span 2; display:flex; align-items:center; gap:6px; }
.noche .tr-guardar { font-size:18px; padding:8px 12px; border-radius:100px; color:#F2F2F4; text-shadow:0 0 14px rgba(242,242,244,.35); white-space:nowrap; }
.noche .tr-guardar:disabled { cursor:default; opacity:.5; text-shadow:none; }
.noche .tr-cerrar { font-size:26px; padding:4px 8px; color:rgba(242,242,244,.5); }

.noche:not(.casa) .tr-ficha { left:0; right:0; bottom:0; width:auto; border-radius:0; box-shadow:none; transform:translateY(18px);
  background:linear-gradient(0deg, rgba(10,10,12,.96) 0%, rgba(10,10,12,.9) 52%, rgba(10,10,12,0) 100%);
  padding:calc(110 * var(--dc-u)) max(20px, calc(50vw - 330px)) max(calc(46 * var(--dc-u)), 18px, env(safe-area-inset-bottom));
  column-gap:28px; align-items:end;
  transition:opacity var(--dc-t-salida) var(--dc-ease), transform var(--dc-t-salida) var(--dc-ease); }
.noche:not(.casa) .tr-ficha.abierta { transform:none; transition:opacity var(--dc-t-entrada) var(--dc-ease), transform var(--dc-t-entrada) var(--dc-ease); }
.noche:not(.casa) .tr-es { font-size:var(--dc-fs-60); line-height:1.05; text-shadow:0 0 calc(22 * var(--dc-u)) rgba(242,242,244,.42), 0 0 calc(64 * var(--dc-u)) rgba(242,242,244,.14); }
.noche:not(.casa) .tr-ru { margin-top:calc(12 * var(--dc-u)); font-size:var(--dc-fs-40); color:rgba(242,242,244,.72); }
.noche:not(.casa) .tr-botones { align-self:end; gap:calc(24 * var(--dc-u)); padding-bottom:calc(4 * var(--dc-u)); }
.noche:not(.casa) .tr-guardar { font-size:var(--dc-fs-40); padding:calc(8 * var(--dc-u)) 0; border-radius:0; text-shadow:0 0 calc(22 * var(--dc-u)) rgba(242,242,244,.45); transform-origin:right center;
  transition:transform var(--dc-t-lento) var(--dc-ease), opacity var(--dc-t-lento) var(--dc-ease); }
@media (any-hover: hover) { .noche:not(.casa) .tr-guardar:not(:disabled):hover { transform:scale(1.06); } }
.noche:not(.casa) .tr-cerrar { font-size:var(--dc-fs-40); padding:calc(8 * var(--dc-u)) 0 calc(8 * var(--dc-u)) calc(8 * var(--dc-u)); color:rgba(242,242,244,.45); }
@media (max-width:700px) { .noche:not(.casa) .tr-ficha { padding-top:70px; } }
.noche .noche-carnet, .noche .noche-cuaderno, .noche .nd-pie { transition:opacity var(--dc-t-lento) var(--dc-ease), color .4s ease; }
.noche.con-ficha .noche-carnet, .noche.con-ficha .noche-cuaderno, .noche.con-ficha .nd-pie { opacity:0 !important; pointer-events:none; }

.noche.alto[data-vista="his"] .noche-carnet, .noche.alto[data-vista="his"] .noche-cuaderno { opacity:0 !important; pointer-events:none; }

.folio-guardar { margin-left:auto; border:0; background:none; cursor:pointer; font-family:"Inter", -apple-system, system-ui, sans-serif; font-size:14px; font-weight:600;
  color:var(--ultramar, #2733C0); padding:4px 2px; }
.folio-guardar:disabled { cursor:default; opacity:.5; }
.folio-guardar[hidden] { display:none; }

.ncu-panel { position:fixed; inset:0; z-index:40; pointer-events:none; }
.ncu-panel.abierto { pointer-events:auto; }
.ncu-velo { position:absolute; inset:0; background:rgba(0,0,0,.4); opacity:0; transition:opacity .5s ease; }
.ncu-panel.abierto .ncu-velo { opacity:1; }
.ncu-hoja { position:absolute; right:0; top:0; bottom:0; width:min(470px, 100vw); box-sizing:border-box; overflow-y:auto; overscroll-behavior:contain; padding:30px 28px 40px;
  background:rgb(18,18,20); box-shadow:-30px 0 90px rgba(0,0,0,.45);
  transform:translateX(100%); transition:transform .55s var(--dc-ease); }
.ncu-panel.abierto .ncu-hoja { transform:none; }
.ncu-cab { display:flex; justify-content:space-between; align-items:center; }
.ncu-titulo { font-size:46px; line-height:1; text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }
.noche .ncu-cerrar { font-size:34px; color:rgba(242,242,244,.5); padding:4px 8px; }
.ncu-buscar { display:flex; gap:8px; margin:24px 0 8px; }
.noche .ncu-buscar input { flex:1; min-width:0; border:0; outline:none; border-radius:100px; padding:14px 20px; font-size:18px; color:#F2F2F4; background:rgba(255,255,255,.07);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06); }
.noche .ncu-buscar input::placeholder { color:rgba(242,242,244,.4); }
.noche .ncu-buscar button { font-size:24px; padding:0 10px; }
.ncu-res { padding:14px 4px 16px; border-bottom:1px solid rgba(255,255,255,.08); }
.ncu-res .ncu-guardar { margin-top:10px; padding-left:0; }
.ncu-cuenta { margin:18px 0 4px; font-size:14px; color:rgba(242,242,244,.45); }
.ncu-vacio { margin-top:22px; font-size:17px; line-height:1.5; color:rgba(242,242,244,.5); }
.ncu-palabra { position:relative; padding:14px 40px 14px 2px; border-bottom:1px solid rgba(255,255,255,.06); }
.ncu-es { font-size:24px; line-height:1.15; color:#F2F2F4; overflow-wrap:anywhere; }
.ncu-ru { margin-top:4px; font-size:17px; line-height:1.3; color:rgba(242,242,244,.7); }
.ncu-ctx { margin-top:6px; font-family:"Fraunces", Georgia, serif; font-style:italic; font-weight:340; font-size:15px; line-height:1.4; letter-spacing:normal; color:rgba(242,242,244,.42); }
.noche .ncu-quitar { position:absolute; right:2px; top:12px; font-size:22px; padding:4px 8px; color:rgba(242,242,244,.3); transition:color .3s ease; }
.noche .ncu-quitar:hover { color:rgba(242,242,244,.8); }
@media (prefers-reduced-motion: reduce) {
  .nc-sombra.esta { animation:none; }
  .ncu-hoja, .tr-ficha, .nd-pais, .nd-laminas { transition:none; }
}

.noche .ncu-panel.cu { position:absolute; inset:0; z-index:6; pointer-events:auto; opacity:0; visibility:hidden; transition:opacity .45s ease, visibility 0s linear .45s;
  background:linear-gradient(135deg, #2C2D2E 0%, #16171A 48%, #0A0A0C 100%); }
.noche.grafito .ncu-panel.cu { background:linear-gradient(135deg, #585B5B 0%, #0A0A0C 100%); }
.noche.casa .ncu-panel.cu { background:var(--dc-bg); }
.noche .ncu-panel.cu.abierto { opacity:1; visibility:visible; transition:opacity .5s ease, visibility 0s; }
.noche.con-cuaderno .noche-cuaderno { opacity:0 !important; pointer-events:none; transition:opacity .3s ease; }
.cu-titulo { position:absolute; right:60px; top:62px; font-size:40px; line-height:1; text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }
.cu-buscar { position:absolute; left:640px; top:168px; width:740px; height:72px; box-sizing:border-box; display:flex; align-items:center; gap:6px; padding:0 10px 0 28px; border-radius:22px;
  background:rgba(255,255,255,.075); box-shadow:inset 0 0 0 1px rgba(255,255,255,.06); }
.noche .cu-buscar input { flex:1; min-width:0; height:100%; border:0; outline:0; background:none; padding:0; font:inherit; font-size:24px; color:#F2F2F4; letter-spacing:inherit; -webkit-user-select:text; user-select:text; }
.noche .cu-buscar input::placeholder { color:rgba(242,242,244,.4); }
.noche .cu-buscar button { width:48px; height:48px; border-radius:16px; display:grid; place-items:center; }
.cu-buscar svg { width:24px; height:24px; fill:none; stroke:#F2F2F4; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.cu-lista { position:absolute; left:60px; top:168px; width:520px; bottom:40px; overflow-y:auto; overscroll-behavior:contain; scrollbar-width:none; display:flex; flex-direction:column; align-items:flex-start; gap:16px; padding:4px 0 60px;
  -webkit-mask-image:linear-gradient(180deg, #000 82%, transparent); mask-image:linear-gradient(180deg, #000 82%, transparent); }
.cu-lista::-webkit-scrollbar { display:none; }
.cu-cuenta { font-size:20px; opacity:.45; margin-bottom:4px; }
.noche .cu-pal { display:flex; flex-direction:column; align-items:flex-start; text-align:left; opacity:.42; transition:opacity .35s ease; }
.cu-pal-es { font-size:44px; line-height:1.05; }
.cu-pal-ru { font-size:18px; line-height:1.2; opacity:.8; margin-top:4px; }
.noche .cu-pal.on { opacity:1; }
.cu-pal.on .cu-pal-es { text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }
@media (any-hover: hover) { .noche .cu-pal:not(.on):hover { opacity:.72; } }
.cu-lista.entra .cu-pal { animation:cuEntra .7s var(--dc-ease) both; animation-delay:calc(.15s + var(--i) * 45ms); }
@keyframes cuEntra { from { opacity:0; transform:translateX(-24px); } }
.cu-vacio { font-size:24px; opacity:.5; }
.cu-ficha { position:absolute; left:640px; top:296px; width:740px; transition:opacity .18s ease; }
.cu-ficha.cruza { opacity:0; }
.cu-es { font-size:64px; line-height:1.05; overflow-wrap:anywhere; text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }
.cu-es.cu-grande { font-size:96px; }
.cu-ru { font-size:34px; line-height:1.25; margin-top:16px; opacity:.85; }
.cu-ru.cargando { opacity:.4; }
.cu-ctx { margin-top:34px; max-width:680px; font-family:"Fraunces", Georgia, serif; font-style:italic; font-weight:340; font-size:26px; line-height:1.45; letter-spacing:normal; opacity:.72; }
.cu-ctx b { font-style:normal; font-weight:560; color:#fff; opacity:1; }
.cu-acciones { margin-top:40px; display:flex; gap:26px; }
.noche .cu-quitar { font-size:22px; opacity:.5; transition:opacity .3s ease; }
.noche .cu-guardar { font-size:26px; text-shadow:0 0 18px rgba(242,242,244,.45); }
.noche .cu-guardar:disabled { opacity:.45; text-shadow:none; cursor:default; }
@media (any-hover: hover) { .noche .cu-quitar:hover { opacity:1; } }

.noche:not(.casa) .cu-buscar { background:none; box-shadow:none; border-radius:0; padding:0; gap:14px; }
.noche:not(.casa) .cu-buscar input { font-size:calc(50 * var(--nu)); }
.noche:not(.casa) .cu-buscar input::placeholder { color:rgba(242,242,244,.42); }
.noche:not(.casa) .cu-buscar button { width:44px; border-radius:0; opacity:.45; transition:opacity var(--dc-t-lento) var(--dc-ease); }
.noche:not(.casa) .cu-buscar:focus-within button { opacity:1; }
.noche.alto .cu-titulo { right:24px; top:48px; font-size:22px; }
.noche.alto .cu-buscar { left:20px; right:20px; width:auto; top:96px; height:54px; padding:0 6px 0 18px; border-radius:18px; }
.noche.alto .cu-buscar input { font-size:17px; }
.noche.alto:not(.casa) .cu-buscar { left:24px; right:16px; padding:0; }
.noche.alto:not(.casa) .cu-buscar input { font-size:calc(40 * var(--nu)); }
.noche.alto .cu-buscar button { width:40px; height:40px; }
.noche.alto .cu-ficha { left:24px; right:24px; width:auto; top:176px; }
.noche.alto .cu-es { font-size:36px; } .noche.alto .cu-es.cu-grande { font-size:52px; }
.noche.alto .cu-ru { font-size:20px; margin-top:10px; }
.noche.alto .cu-ctx { font-size:17px; margin-top:16px; }
.noche.alto .cu-acciones { margin-top:18px; }
.noche.alto .noche .cu-quitar, .noche.alto .cu-quitar { font-size:16px; }
.noche.alto .cu-lista { left:24px; right:24px; width:auto; top:430px; bottom:24px; gap:12px; }
.noche.alto .cu-pal-es { font-size:28px; }
.noche.alto .cu-pal-ru { font-size:14px; }

.nv-pra.on { transition:opacity .75s ease .34s, visibility 0s; }
.noche-luz[data-luz="pra"] { background:radial-gradient(54% 62% at 50% 46%, rgba(220,226,236,.10), rgba(220,226,236,0) 70%); }

.es-pra { background:linear-gradient(135deg, #3A3C40 0%, #1C1D20 55%, #0E0E10 100%); }
.n-pra-qs { position:absolute; left:0; right:0; top:222px; height:100px; }
.n-pra-q { position:absolute; left:0; right:0; text-align:center; font-size:78px; line-height:1; white-space:nowrap; opacity:0;
  animation:nPraQ 12s ease-in-out infinite; animation-delay:calc(var(--i) * 4s); will-change:opacity, transform; }
@keyframes nPraQ { 0% { opacity:0; transform:translateY(14px); } 5%, 29% { opacity:1; transform:none; } 34%, 100% { opacity:0; transform:translateY(-14px); } }
.n-pra-pildora { position:absolute; left:50%; top:372px; width:600px; margin-left:-300px; height:84px; border-radius:28px; display:flex; align-items:center; padding:0 34px;
  background:linear-gradient(90deg, #C2CAD4, #8B97AB); box-shadow:0 10px 50px #141E2D84; color:#fff; font-size:32px; text-shadow:0 2px 8px rgba(0,0,0,.35); }
.n-pra-cursor { display:inline-block; width:2px; height:36px; margin-left:4px; background:#fff; animation:nPraCursor 1.1s steps(1) infinite; }
@keyframes nPraCursor { 50% { opacity:0; } }
.n-rec.lado .n-pra-q, .nv-esc.quieto .n-pra-q, .nv-esc.moviendo .n-pra-q, .n-rec.lado .n-pra-cursor, .nv-esc.moviendo .n-pra-cursor { animation-play-state:paused; }
.noche.alto .n-pra-qs { top:calc(50% - 150px); height:90px; }
.noche.alto .n-pra-q { font-size:34px; white-space:normal; padding:0 30px; }
.noche.alto .n-pra-pildora { top:calc(50% - 30px); width:300px; margin-left:-150px; height:56px; border-radius:20px; font-size:18px; padding:0 20px; }
.noche.alto .n-pra-cursor { height:22px; }
@media (prefers-reduced-motion: reduce) { .noche .n-pra-q { animation:none; } .noche .n-pra-q:first-child { opacity:1; } }

.np { position:absolute; inset:0; }
.np button { font:inherit; color:inherit; }

.np-punto { opacity:.28; margin:0 2px; }
.np-arriba { position:absolute; left:50%; top:58px; translate:-50% 0; white-space:nowrap; z-index:3; }
.np .np-modos { display:flex; align-items:baseline; gap:calc(48 * var(--nu)); }
.np .np-modos .ent-op { font-size:calc(40 * var(--nu)); line-height:1.2; padding:calc(8 * var(--nu)) 0; color:#F2F2F4; opacity:.45; text-transform:lowercase; transform-origin:center;
  transition:opacity var(--dc-t-lento) var(--dc-ease), transform var(--dc-t-lento) var(--dc-ease), text-shadow var(--dc-t-lento) var(--dc-ease); }
.np .np-modos .ent-op.active { opacity:1; text-shadow:var(--n-brillo); }
@media (any-hover: hover) { .np .np-modos .ent-op:hover { opacity:1; transform:scale(1.06); } .np-acciones button:hover { opacity:1; } }
.np .np-modos .ent-op:active { transform:scale(.985); transition:transform var(--dc-t-press) var(--dc-ease); }
.np-nivel:empty, .np-nivel:empty + .np-punto { display:none; }
.np-acciones { position:absolute; right:60px; top:128px; display:flex; gap:10px; font-size:calc(30 * var(--nu)); z-index:3; }
.np-acciones button { opacity:.5; transition:opacity var(--dc-t-lento) var(--dc-ease); }
.np-arriba, .np-acciones { transition:opacity var(--dc-t-lento) var(--dc-ease); }
.np.bienvenida .np-arriba, .np.bienvenida .np-acciones, .np.con-hoja .np-arriba, .np.con-hoja .np-acciones, .np.con-hoja .np-escribe { opacity:0; pointer-events:none; }
.noche.pra-hoja .noche-cuaderno { opacity:0; pointer-events:none; }

.np-escena { position:absolute; left:200px; right:200px; top:170px; bottom:196px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; }
.np-tu { max-width:900px; margin-bottom:36px; }
.np-tu.vacio { display:none; }
.np-tu-t { font-size:25px; line-height:1.3; opacity:.5; }
.np-voz { margin-right:8px; }
.np-corr { display:none; margin:14px auto 0; max-width:760px; padding-left:16px; box-shadow:inset 2px 0 0 rgba(242,242,244,.45); text-align:left; font-size:22px; line-height:1.35; opacity:.88; }
.np-tu.con-corr .np-corr { display:block; }
.np-dice { max-width:1010px; letter-spacing:-.005em; text-wrap:balance; -webkit-user-select:text; user-select:text; }
.np-dice.t1 { font-size:64px; line-height:1.08; }
.np-dice.t2 { font-size:51px; line-height:1.1; }
.np-dice.t3 { font-size:41px; line-height:1.14; }
.np-dice.t4 { font-size:31px; line-height:1.3; max-width:900px; text-align:left; }
.np-dice.t5 { font-size:25px; line-height:1.36; max-width:900px; text-align:left; }
.np-dice b { font-weight:inherit; color:#fff; text-shadow:0 0 18px rgba(255,255,255,.4); }
.np-dice.escribiendo { display:flex; gap:14px; height:64px; align-items:center; }
.np-dice.escribiendo span { width:14px; height:14px; border-radius:50%; background:#F2F2F4; animation:npPunto 1.2s ease-in-out infinite; }
.np-dice.escribiendo span:nth-child(2) { animation-delay:.18s; } .np-dice.escribiendo span:nth-child(3) { animation-delay:.36s; }
@keyframes npPunto { 0%, 100% { opacity:.2; transform:translateY(0); } 40% { opacity:1; transform:translateY(-6px); } }
.np-sug { display:flex; flex-wrap:wrap; justify-content:center; gap:16px 18px; margin-top:46px; max-width:1040px; min-height:62px; }
.np-queda { flex-basis:100%; font-size:19px; opacity:.55; margin-top:6px; }

.np .np-sug-b, .np-pildora { background:linear-gradient(90deg, #C2CAD4, #8B97AB); box-shadow:0 10px 50px #141E2D84; color:#fff; text-shadow:0 2px 8px rgba(0,0,0,.35); border-radius:28px; }
.np .np-sug-b { font-size:23px; line-height:1.2; padding:15px 28px; transition:transform .22s var(--dc-ease), box-shadow .35s ease; }

.noche:not(.casa) .np-sug { gap:calc(20 * var(--nu)) calc(64 * var(--nu)); align-items:baseline; }
.noche:not(.casa) .np .np-sug-b { background:none !important; box-shadow:none !important; border-radius:0; padding:calc(8 * var(--nu)) 0; color:#F2F2F4;
  font-size:calc(50 * var(--nu)); line-height:1.2; opacity:.6; transform-origin:center;
  transition:opacity var(--dc-t-lento) var(--dc-ease), transform var(--dc-t-lento) var(--dc-ease), text-shadow var(--dc-t-lento) var(--dc-ease); }
.noche:not(.casa) .np .np-sug-b.on { opacity:1; text-shadow:0 0 calc(22 * var(--nu)) rgba(242,242,244,.45); }
.noche:not(.casa) .np-sug:has(.np-sug-b.on) .np-sug-b:not(.on) { opacity:.45; }
@media (any-hover: hover) { .noche:not(.casa) .np .np-sug-b:hover { opacity:1; transform:scale(1.06); background:none; box-shadow:none; } }
.noche:not(.casa) .np .np-sug-b:active { transform:scale(.985); transition:transform var(--dc-t-press) var(--dc-ease); }
@media (any-hover: hover) { .np .np-sug-b:hover { transform:translateY(-3px); box-shadow:0 16px 52px rgba(20,30,45,.55); } }
.np .np-sug-b:active { transform:scale(.97); }
.np .np-sug-b.on { box-shadow:0 10px 50px #141E2D84, 0 0 0 2px rgba(255,255,255,.8); }

.np-tu, .np-dice, .np-sug, .np-corr { transition:opacity var(--dc-t-salida) var(--dc-ease), transform var(--dc-t-salida) var(--dc-ease); }
.np-tu.sale, .np-dice.sale, .np-sug.sale { opacity:0; transform:translateY(-18px); }
.np-tu.entra, .np-dice.entra, .np-corr.entra { animation:npEntra var(--dc-t-entrada) var(--dc-ease) both; animation-delay:var(--d, 0ms); }
.np-sug.entra .np-sug-b, .np-sug.entra .np-queda, .np-sug.entra .np-pista { animation:npEntra var(--dc-t-entrada) var(--dc-ease) both; animation-delay:calc(var(--d, 0ms) + var(--i, 0) * 70ms); }
@keyframes npEntra { from { opacity:0; transform:translateY(18px); } to { opacity:1; transform:none; } }
.np.cargando .np-escena { opacity:0; }

.np-escribe { position:absolute; left:50%; bottom:92px; width:860px; margin-left:-430px; z-index:3;
  transition:transform .25s ease, opacity .4s ease; }
.np.sin-escribir .np-escribe { opacity:0; pointer-events:none; transform:translateY(24px); }
.np-pildora { display:flex; align-items:center; gap:6px; height:80px; padding:0 12px 0 32px; }
.np .np-campo { flex:1; min-width:0; height:100%; background:none; border:0; outline:0; padding:0; color:#fff; font:inherit; font-size:27px; letter-spacing:inherit;
  text-shadow:0 2px 8px rgba(0,0,0,.35); caret-color:#fff; -webkit-user-select:text; user-select:text; }
.np-campo::placeholder { color:rgba(255,255,255,.8); }
.np .np-mic, .np .np-manda { flex:none; width:56px; height:56px; border-radius:20px; display:grid; place-items:center; transition:opacity .25s ease, transform .2s ease; }
.np-mic svg, .np-manda svg { width:28px; height:28px; fill:none; stroke:#fff; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 2px 4px rgba(0,0,0,.3)); }
.np .np-manda { opacity:.4; }
.np .np-pildora.con-texto .np-manda { opacity:1; }
.np-pildora.con-texto .np-mic { display:none; }
.np-mic:active, .np-manda:active { transform:scale(.92); }
.np.ocupado .np-manda, .np.ocupado .np-mic { opacity:.25; pointer-events:none; }
.np-grabando { flex:1; display:flex; align-items:center; gap:14px; font-size:23px; text-shadow:0 2px 8px rgba(0,0,0,.35); }
.np-grabando[hidden] { display:none; }
.np-rojo { width:14px; height:14px; border-radius:50%; background:#fff; animation:npLatido 1s ease-in-out infinite; }
@keyframes npLatido { 50% { opacity:.25; transform:scale(.8); } }
.np-grabando-t { opacity:.8; font-size:19px; }
.np.grabando .np-campo, .np.grabando .np-manda { display:none; }
.np.grabando .np-mic rect { fill:#fff; }

.np-hoja { position:absolute; inset:0; z-index:6; }
.np-hoja[hidden] { display:none; }
.np-hoja .nh-hoja { position:absolute; left:56px; right:56px; top:150px; bottom:-40px; border-radius:30px 30px 0 0; overflow:hidden;
  --crema:#F4EFE6; --papel:#FDFBF6; --tinta:#1C1915; --tinta-suave:rgba(28,25,21,.62); --tinta-tenue:rgba(28,25,21,.40); --linea:rgba(28,25,21,.10); --ultramar:#2733C0;
  background:var(--crema); color:var(--tinta); letter-spacing:normal; -webkit-user-select:text; user-select:text;
  box-shadow:0 -12px 90px rgba(0,0,0,.5), 0 0 0 1px rgba(255,255,255,.04);
  opacity:0; translate:0 90px; transition:opacity .4s ease, translate .6s var(--dc-ease); }
.np-hoja.on .nh-hoja { opacity:1; translate:0 0; transition:opacity .5s ease, translate .9s var(--dc-ease); }
.np-hoja.on .nh-carta { animation:nhSube .8s var(--dc-ease) both; animation-delay:calc(.2s + var(--i) * 70ms); }
.np-hoja-cerrar, .np-hoja-atras { font-family:"Inter", -apple-system, system-ui, sans-serif !important; font-size:13px !important; font-weight:600; letter-spacing:.04em; padding:8px 16px; border-radius:100px; color:var(--tinta-suave) !important; box-shadow:inset 0 0 0 1px var(--linea); }
.np-hoja-atras { margin-bottom:22px; }
.np-mosaico .nh-carta.sin-foto .nh-tit { font-size:24px; -webkit-line-clamp:5; }
.np-mosaico .nh-carta.portada .nh-tit { font-size:40px; -webkit-line-clamp:5; }
.np-mosaico .nh-carta.portada .nh-ceja, .np-mosaico .nh-carta .nh-ceja { color:var(--tinta-tenue); }
.np-mosaico .nh-carta.portada .nh-ceja { color:rgba(243,241,255,.72); }
.np-hoja-vacio, .np-hoja-cargando { font-family:"Canela Text", "Fraunces", Georgia, serif; font-size:24px; color:var(--tinta-suave); padding:30px 0; }
.np-leer { max-width:760px; }
.np-leer p { margin:0 0 18px; }
.np-l-b { font-family:"Canela Text", "Fraunces", Georgia, serif; font-size:25px; line-height:1.35; letter-spacing:-.01em; }
.np-l-b b { font-weight:600; }
.np-l-a { font-family:"Inter", -apple-system, system-ui, sans-serif; font-size:17px; line-height:1.5; color:var(--tinta-suave); padding-left:18px; box-shadow:inset 2px 0 0 var(--linea); }
.np-l-c { font-family:"Inter", -apple-system, system-ui, sans-serif; font-size:14px; line-height:1.45; color:var(--ultramar); padding-left:18px; margin-top:-10px !important; }
.np-leer-pie { padding:18px 0 10px; }
.np .np-seguir { font-family:"Inter", -apple-system, system-ui, sans-serif !important; font-size:15px !important; font-weight:600; padding:12px 22px; border-radius:100px; background:var(--ultramar); color:#F3F1FF !important; }

.noche:not(.casa) .np-pildora { position:relative; background:none; box-shadow:none; border-radius:0; text-shadow:none; padding:0 calc(76 * var(--nu)); gap:0; justify-content:center; }
.noche:not(.casa) .np .np-campo { color:#F2F2F4; text-shadow:none; text-align:center; font-size:calc(50 * var(--nu)); caret-color:#F2F2F4; }
.noche:not(.casa) .np-campo::placeholder { color:rgba(242,242,244,.42); }
.noche:not(.casa) .np .np-mic, .noche:not(.casa) .np .np-manda { position:absolute; right:0; top:50%; margin-top:-28px; }
.noche:not(.casa) .np-mic svg, .noche:not(.casa) .np-manda svg { stroke:#F2F2F4; filter:none; }
.noche:not(.casa) .np .np-manda { opacity:0; pointer-events:none; }
.noche:not(.casa) .np .np-pildora.con-texto .np-manda { opacity:1; pointer-events:auto; }
.noche:not(.casa) .np-grabando { justify-content:center; text-shadow:none; }
.noche:not(.casa) .n-pra-pildora { background:none; box-shadow:none; border-radius:0; text-shadow:none; color:rgba(242,242,244,.6); justify-content:center; }
.noche:not(.casa) .n-pra-cursor { background:rgba(242,242,244,.9); }
.np .np-pista { font-size:20px; line-height:1.3; opacity:.5; padding:6px 10px; transition:opacity .3s ease; }
@media (any-hover: hover) { .np .np-pista:hover { opacity:.85; } }
.np .np-pista.abierta { opacity:.9; cursor:default; }

.noche.alto .np-arriba { top:96px; }
.noche.alto .np .np-modos { gap:calc(34 * var(--nu)); }
.noche.alto .np .np-modos .ent-op { font-size:calc(30 * var(--nu)); }
.noche.alto .np-acciones { right:auto; left:24px; top:auto; bottom:24px; font-size:15px; }
.noche.alto:not(.casa) .np-sug { gap:calc(14 * var(--nu)) calc(40 * var(--nu)); }
.noche.alto:not(.casa) .np .np-sug-b { font-size:calc(40 * var(--nu)); padding:calc(6 * var(--nu)) 0; }
.noche.alto .np-escena { left:22px; right:22px; top:128px; bottom:176px; }
.noche.alto .np-tu { margin-bottom:20px; }
.noche.alto .np-tu-t { font-size:16px; }
.noche.alto .np-corr { font-size:15px; margin-top:10px; padding-left:12px; }
.noche.alto .np-dice.t1 { font-size:31px; }
.noche.alto .np-dice.t2 { font-size:26px; }
.noche.alto .np-dice.t3 { font-size:22px; line-height:1.2; }
.noche.alto .np-dice.t4 { font-size:18px; line-height:1.36; }
.noche.alto .np-dice.t5 { font-size:16px; line-height:1.4; }
.noche.alto .np-dice.escribiendo { height:40px; gap:10px; }
.noche.alto .np-dice.escribiendo span { width:10px; height:10px; }
.noche.alto .np-sug { gap:10px; margin-top:26px; min-height:44px; }
.noche.alto .np .np-sug-b { font-size:16px; padding:11px 17px; border-radius:18px; }
.noche.alto .np-queda { font-size:14px; }
.noche.alto .np .np-pista { font-size:15px; }
.noche.alto .np-escribe { bottom:62px; width:350px; margin-left:-175px; }
.noche.alto:not(.casa) .np-escribe { bottom:104px; }
.noche.alto .np-pildora { height:56px; padding:0 6px 0 20px; border-radius:20px; }
.noche.alto .np-campo { font-size:17px; }
.noche.alto:not(.casa) .np .np-campo { font-size:calc(36 * var(--nu)); }
.noche.alto:not(.casa) .np-pildora { padding:0 48px; }
.noche.alto:not(.casa) .np .np-mic, .noche.alto:not(.casa) .np .np-manda { margin-top:-22px; }
.noche.alto .np .np-mic, .noche.alto .np .np-manda { width:44px; height:44px; border-radius:14px; }
.noche.alto .np-mic svg, .noche.alto .np-manda svg { width:22px; height:22px; }
.noche.alto .np-grabando { font-size:16px; gap:10px; }
.noche.alto .np-grabando-t { font-size:13px; }

.noche.alto.con-teclado .noche-marca, .noche.alto.con-teclado .noche-titulos, .noche.alto.con-teclado .noche-carnet, .noche.alto.con-teclado .noche-cuaderno { opacity:0 !important; pointer-events:none; }
.noche.alto.con-teclado .np-arriba, .noche.alto.con-teclado .np-acciones, .noche.alto.con-teclado .np-tu-t { display:none; }
.noche.alto.con-teclado .np-escena { top:16px; bottom:80px; justify-content:flex-end; }
.noche.alto.con-teclado .np-tu { margin-bottom:12px; }
.noche.alto.con-teclado .np-sug { margin-top:12px; min-height:0; }
.noche.alto.con-teclado .np-escribe { bottom:12px; }
.noche.alto .np-hoja .nh-hoja { left:10px; right:10px; top:104px; border-radius:22px 22px 0 0; }
.noche.alto .np-mosaico .nh-carta.portada .nh-tit { font-size:28px; }
.noche.alto .np-l-b { font-size:20px; }
.noche.alto .np-l-a { font-size:15px; }

.noche.casa { color:var(--dc-ink); }
.noche.casa .noche-sala { background:var(--dc-bg); }
.noche.casa .noche-sala::after { display:none; }

.noche-apagon { position:absolute; inset:0; pointer-events:none; opacity:0; will-change:opacity;
  background:linear-gradient(135deg, #2C2D2E 0%, #16171A 48%, #0A0A0C 100%); transition:opacity 1.4s ease; }
.noche.casa[data-vista="cine"] .noche-apagon, .noche.grafito[data-vista="cine"] .noche-apagon { opacity:1; transition:opacity 1.8s ease .2s; }
.noche:not(.casa):not(.grafito) .noche-apagon { display:none; }

.noche.casa .noche-marca-t { color:var(--dc-ink); text-shadow:var(--dc-shadow-text-strong); }
.noche.casa .noche-marca-t.con-halo { text-shadow:none; }

.noche.casa .noche-halo-logo { z-index:-1; }
.noche.casa .noche-marca-t .marca-club { text-shadow:var(--dc-shadow-text-strong); }
.noche.casa .noche-marca-t.neon .marca-club, .noche.casa .noche-marca-t.encendido .marca-club { text-shadow:var(--dc-shadow-text-strong); }
.noche.casa .noche-marca-brillo { text-shadow:0 22px 44px rgba(20,30,45,.55); }
.noche.casa .noche-marca-t:focus-visible { text-shadow:var(--dc-shadow-text-strong); }
.noche.casa .noche-titulos { text-shadow:var(--dc-shadow-text-strong); }
.noche.casa .noche-cuaderno { color:rgba(255,255,255,.85); text-shadow:var(--dc-shadow-text); }
.noche.casa .noche-cuaderno:hover, .noche.casa .noche-cuaderno:focus-visible { color:#fff; text-shadow:var(--dc-shadow-text-strong); }
.noche.casa .noche-cuaderno .ncu-n { color:rgba(255,255,255,.8); }

.noche.casa[data-vista="his"] .noche-cuaderno, .noche.casa[data-vista="his"] .noche-cuaderno .ncu-n { color:rgba(28,25,21,.55); text-shadow:none; }

.noche.casa .es-pra, .noche.casa .es-musica, .noche.casa .es-mundo, .noche.casa .es-tg { background:var(--dc-bg); }
.noche.casa .n-disco { box-shadow:0 30px 70px rgba(20,30,45,.45); }
.noche.casa .n-genero, .noche.casa .n-pra-q, .noche.casa .n-tg-nombre, .noche.casa .n-tg-abrir { color:var(--dc-ink); text-shadow:var(--dc-shadow-text-strong); }
.noche.casa .n-tg-ico { filter:drop-shadow(0 14px 30px rgba(20,30,45,.4)); }

.noche.casa .es-cine { background:linear-gradient(135deg, #7E8A9C 0%, #5F6B7E 50%, #474F5E 100%); }
.noche.casa .n-burbuja { background:linear-gradient(90deg, #C2CAD4, #8B97AB); box-shadow:0 10px 50px #141E2D84; color:#fff; text-shadow:var(--dc-shadow-text); }

.noche.casa .np-modos button[data-m] { opacity:.62; text-shadow:var(--dc-shadow-text); }
.noche.casa .np-modos button[data-m][aria-selected="true"] { opacity:1; text-shadow:var(--dc-shadow-text-strong); }
.noche.casa .np-acciones button { opacity:.78; text-shadow:var(--dc-shadow-text); }
.noche.casa .np-punto { opacity:.55; }
.noche.casa .np .np-nivel { box-shadow:inset 0 0 0 1px rgba(255,255,255,.6); opacity:.95; text-shadow:var(--dc-shadow-text); }
.noche.casa .np-tu-t { opacity:.82; text-shadow:var(--dc-shadow-text); }
.noche.casa .np-corr { box-shadow:inset 2px 0 0 rgba(255,255,255,.75); opacity:1; text-shadow:var(--dc-shadow-text); }
.noche.casa .np-dice, .noche.casa .np-dice b { text-shadow:var(--dc-shadow-text-strong); }
.noche.casa .np-dice.t4, .noche.casa .np-dice.t5, .noche.casa .np-dice.t4 b, .noche.casa .np-dice.t5 b { text-shadow:var(--dc-shadow-text); }
.noche.casa .np-dice.escribiendo span { background:#fff; box-shadow:0 6px 14px rgba(20,30,45,.35); }
.noche.casa .np-queda, .noche.casa .np-grabando { text-shadow:var(--dc-shadow-text); }
.noche.casa .np-queda { opacity:.85; }

.noche.casa .nm-genero { color:rgba(255,255,255,.62); text-shadow:var(--dc-shadow-text); }
.noche.casa .nm-genero.on { color:var(--dc-ink); text-shadow:var(--dc-shadow-text-strong); }
@media (any-hover: hover) { .noche.casa .nm-genero:not(.on):hover { color:rgba(255,255,255,.88); } }
.noche.casa .nm-portada { box-shadow:0 40px 100px rgba(20,30,45,.5); }
.noche.casa.alto .nm-portada { box-shadow:0 30px 70px rgba(20,30,45,.5); }

.noche.casa .nm-oscuro { background:#8391A8; }
.noche.casa .nm-titulo, .noche.casa .nm-slushat { text-shadow:var(--dc-shadow-text-strong); }
.noche.casa .nm-artista { color:rgba(255,255,255,.8); text-shadow:var(--dc-shadow-text); }
.noche.casa .nm-servicio { color:rgba(255,255,255,.8); text-shadow:var(--dc-shadow-text); }
.noche.casa .nm-servicios:hover .nm-servicio { color:rgba(255,255,255,.45); text-shadow:none; }
.noche.casa .nm-servicios .nm-servicio:hover, .noche.casa .nm-servicios .nm-servicio:active, .noche.casa .nm-servicios .nm-servicio:focus-visible { color:#fff; text-shadow:var(--dc-shadow-text-strong); }
.noche.casa .nm-son-foto { box-shadow:0 12px 30px rgba(20,30,45,.45); }
.noche.casa .nm-son-titulo { text-shadow:var(--dc-shadow-text); }
.noche.casa .nm-son-artista { color:rgba(255,255,255,.8); text-shadow:var(--dc-shadow-text); }
.noche.casa .nm-son-barra { background:rgba(255,255,255,.35); }
.noche.casa .nm-son-barra > i { background:#fff; box-shadow:none; }
.noche.casa .nm-son-signo { fill:#fff; filter:drop-shadow(0 2px 6px rgba(20,30,45,.4)); }
.noche.casa .nm-oir { text-shadow:0 0 16px rgba(255,255,255,.6), var(--dc-shadow-text-strong); }

.noche.casa .rc-genero { color:rgba(255,255,255,.62); text-shadow:var(--dc-shadow-text); }
.noche.casa .rc-genero.on { color:var(--dc-ink); text-shadow:var(--dc-shadow-text-strong); }
@media (any-hover: hover) { .noche.casa .rc-genero:not(.on):hover { color:rgba(255,255,255,.88); } }
.noche.casa .rc-portada { box-shadow:0 30px 80px rgba(20,30,45,.5); }
.noche.casa.alto .rc-portada { box-shadow:0 22px 56px rgba(20,30,45,.5); }
.noche.casa .rc-tit, .noche.casa .rc-mas { text-shadow:var(--dc-shadow-text-strong); }
.noche.casa .rc-anio { color:rgba(255,255,255,.6); }
.noche.casa .rc-meta { color:rgba(255,255,255,.78); text-shadow:var(--dc-shadow-text); }
.noche.casa .rc-sinopsis { color:#fff; text-shadow:var(--dc-shadow-text); }
.noche.casa .rc-reparto, .noche.casa .rc-donde { color:rgba(255,255,255,.82); text-shadow:var(--dc-shadow-text); }
.noche.casa .rc-reparto b, .noche.casa .rc-donde b { color:rgba(255,255,255,.55); }
.noche.casa .rc-fuente { color:rgba(255,255,255,.45); }
.noche.casa .rc-vacio { color:rgba(255,255,255,.8); text-shadow:var(--dc-shadow-text); }
@media (any-hover:hover) { .noche.casa .rc-mas:hover { color:#fff; text-shadow:0 0 16px rgba(255,255,255,.5), var(--dc-shadow-text-strong); } }

.noche.casa .nv-his .nh-hoja, .noche.casa .np-hoja .nh-hoja { box-shadow:0 -10px 70px rgba(20,30,45,.35), 0 0 0 1px rgba(255,255,255,.2); }

.noche.casa .nd-region { color:rgba(255,255,255,.62); text-shadow:var(--dc-shadow-text); }
.noche.casa .nd-region.on { color:#fff; text-shadow:var(--dc-shadow-text-strong); }
@media (any-hover: hover) { .noche.casa .nd-region:not(.on):hover { color:rgba(255,255,255,.88); } }
.noche.casa .nd-pista-texto { color:rgba(255,255,255,.85); text-shadow:var(--dc-shadow-text); }
.noche.casa .nd-rot-n { text-shadow:var(--dc-shadow-text-strong); }
.noche.casa .nd-rot-e { color:rgba(255,255,255,.8); text-shadow:var(--dc-shadow-text); }

.noche.casa .tr-ficha { background:linear-gradient(90deg, #C2CAD4, #8B97AB); border-radius:28px; box-shadow:0 10px 50px #141E2D84; }
.noche.casa .tr-es { color:#fff; text-shadow:var(--dc-shadow-text); }
.noche.casa .tr-ru { color:#fff; text-shadow:var(--dc-shadow-text); }
.noche.casa .tr-ru.cargando { color:rgba(255,255,255,.7); }
.noche.casa .tr-guardar { text-shadow:var(--dc-shadow-text); }
.noche.casa .tr-cerrar { color:rgba(255,255,255,.85); }
.noche.casa *::highlight(tr-sel) { background-color:rgba(20,30,45,.2); color:#fff; }

.noche.casa .ncu-velo { background:rgba(20,30,45,.28); }
.noche.casa .ncu-hoja { background:linear-gradient(170deg, #B4BFCC 0%, #95A3B8 55%, #7D8CA4 100%); box-shadow:-20px 0 70px rgba(20,30,45,.35); }
.noche.casa .ncu-titulo { text-shadow:var(--dc-shadow-text-strong); }
.noche.casa .ncu-cerrar, .noche.casa .ncu-quitar { color:rgba(255,255,255,.85); text-shadow:var(--dc-shadow-text); }
.noche.casa .ncu-buscar input { background:linear-gradient(90deg, #C2CAD4, #8B97AB); border-radius:22px; box-shadow:0 10px 40px rgba(20,30,45,.35); color:#fff; text-shadow:var(--dc-shadow-text); }
.noche.casa .ncu-buscar input::placeholder { color:rgba(255,255,255,.8); }
.noche.casa .ncu-cuenta, .noche.casa .ncu-vacio { color:rgba(255,255,255,.88); text-shadow:var(--dc-shadow-text); }
.noche.casa .ncu-es { color:#fff; text-shadow:var(--dc-shadow-text); }
.noche.casa .ncu-ru { color:rgba(255,255,255,.92); text-shadow:var(--dc-shadow-text); }
.noche.casa .ncu-ctx { color:rgba(255,255,255,.78); }

.noche.grafito .noche-sala { background:linear-gradient(135deg, #585B5B 0%, #0A0A0C 100%); }
.noche.grafito .es-pra, .noche.grafito .es-musica, .noche.grafito .es-mundo, .noche.grafito .es-tg { background:linear-gradient(135deg, #585B5B 0%, #0A0A0C 100%); }
.noche-tema { position:absolute; left:50%; top:10px; transform:translateX(-50%); z-index:50; display:flex; gap:2px; padding:3px; border-radius:100px;
  background:rgba(20,22,26,.55); font:600 12px/1 -apple-system, system-ui, sans-serif; letter-spacing:.02em; }
.noche .noche-tema button { padding:6px 11px; border-radius:100px; color:rgba(255,255,255,.72); }
.noche .noche-tema button[aria-pressed="true"] { background:rgba(255,255,255,.92); color:#15171A; }

.noche .noche-carnet { display:none !important; }   
.noche-luz[data-luz="car"] { background:radial-gradient(52% 62% at 50% 50%, rgba(236,236,240,.1), rgba(236,236,240,0) 70%); }
.nv-car.on { transition:opacity .75s ease .34s, visibility 0s; }

.cr-carta { position:relative; width:780px; height:492px; border-radius:34px; overflow:hidden; color:#fff; font-family:var(--dc-font); text-align:left;
  background:linear-gradient(165deg, #E7ECEF 0%, #AAB7C6 60%, #8B9AB3 100%);
  box-shadow:0 44px 90px rgba(0,0,0,.5), 0 4px 50px #0000007F, inset 0 1px 0 rgba(255,255,255,.55); }
.cr-luz { position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(90% 120% at var(--gx, 30%) -10%, rgba(255,255,255,.42), rgba(255,255,255,0) 60%); }
.cr-brillo { position:absolute; top:-40%; bottom:-40%; left:-60%; width:45%; pointer-events:none; opacity:0; transform:translateX(0) skewX(-14deg);
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.6), rgba(255,255,255,0)); }
@keyframes crBrillo { 0% { opacity:0; transform:translateX(0) skewX(-14deg); } 15% { opacity:1; } 100% { opacity:0; transform:translateX(430%) skewX(-14deg); } }
.cr-dentro { position:absolute; inset:0; padding:40px 46px 36px; display:grid; grid-template-rows:auto 1fr auto; }
.cr-arriba { display:flex; justify-content:space-between; align-items:center; }
.cr-marca { font-size:50px; line-height:1; white-space:nowrap; text-shadow:0 12px 26px rgba(20,30,45,.45); }
.cr-marca .marca-club, .crp-marca .marca-club { font-size:.42em; margin-left:.12em; }
.cr-chip { width:76px; height:76px; border-radius:19px; box-shadow:0 12px 28px rgba(20,30,45,.32); }
.cr-quien { align-self:end; }
.cr-nombre { font-size:88px; line-height:1.02; letter-spacing:-.01em; white-space:nowrap; text-shadow:0 14px 26px rgba(20,30,45,.55); }
.cr-nombre.largo { font-size:60px; }
.cr-num { margin-top:12px; font-size:26px; line-height:1; font-variant-numeric:tabular-nums; text-shadow:0 8px 18px rgba(20,30,45,.5); }
.cr-desde { margin-left:14px; font-size:19px; opacity:.9; }
.cr-abajo { margin-top:24px; display:flex; align-items:center; justify-content:space-between; gap:18px; }
.cr-nivel::after { content:"·"; margin:0 .42em; opacity:.8; }
.cr-estado { font-size:22px; text-shadow:0 2px 8px rgba(0,0,0,.35); }

.cr-tier { position:relative; display:flex; flex-direction:column; align-items:flex-end; line-height:.78; white-space:nowrap; }
.cr-tier-t { font-size:100px; letter-spacing:-.01em; text-shadow:0 12px 26px rgba(20,30,45,.45); }
.cr-tier-mini { font-size:17px; letter-spacing:.04em; margin-bottom:8px; opacity:.9; text-shadow:0 2px 8px rgba(0,0,0,.35); }
.m-mas .cr-tier-t, .m-clases .cr-tier-t, .m-solo .cr-tier-t {
  background:linear-gradient(100deg, #7C8899 0%, #F4F7FA 20%, #A6B1C0 38%, #FFFFFF 50%, #9AA6B6 64%, #EEF2F6 82%, #7C8899 100%);
  background-size:260% 100%; background-position:0% 0; -webkit-background-clip:text; background-clip:text; color:transparent; -webkit-text-fill-color:transparent;
  text-shadow:none; filter:drop-shadow(0 8px 12px rgba(20,30,45,.4)); animation:crPulido 9s ease-in-out infinite; }
@keyframes crPulido { 0%, 100% { background-position:0% 0; } 50% { background-position:100% 0; } }

.cr-carta.m-club { background:linear-gradient(165deg, #5F6368 0%, #414449 55%, #2B2D31 100%);
  box-shadow:0 44px 90px rgba(0,0,0,.55), 0 4px 50px #0000007F, inset 0 1px 0 rgba(255,255,255,.12); }

.cr-carta.m-mas { background:linear-gradient(100deg, #c3c9cd 0%, #a5b0bd 45%, #7f8ea6 100%);
  box-shadow:0 44px 90px rgba(0,0,0,.5), 0 4px 50px #0000007F, inset 0 1px 0 rgba(255,255,255,.45); }

.cr-carta.m-solo { background:linear-gradient(100deg, #c3c9cd 0%, #a5b0bd 45%, #7f8ea6 100%);
  box-shadow:0 44px 90px rgba(0,0,0,.5), 0 4px 50px #0000007F, inset 0 1px 0 rgba(255,255,255,.45); }
.cr-carta.m-solo .cr-tier-t { font-size:156px; letter-spacing:-.02em; }
.noche.alto .cr-carta.m-solo .cr-tier-t { font-size:72px; }
.cr-carta.m-clases { background:linear-gradient(118deg, rgba(255,255,255,0) 30%, rgba(255,255,255,.18) 43%, rgba(255,255,255,0) 56%), linear-gradient(100deg, #d2d8dc 0%, #b1bcc8 45%, #8b99b0 100%);
  box-shadow:0 44px 90px rgba(0,0,0,.5), 0 4px 50px #0000007F, inset 0 1px 0 rgba(255,255,255,.55); }
.c2-resena.m-club { background:linear-gradient(165deg, #5F6368 0%, #414449 55%, #2B2D31 100%); box-shadow:0 30px 60px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.12); }

.es-car { background:transparent; }
.es-car .cr-flota { position:absolute; left:50%; top:50%; width:780px; height:492px; margin:-246px 0 0 -390px; transform:scale(.8); }

.inc { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:16px; font-family:var(--dc-font); }
.inc li { display:grid; grid-template-columns:auto 1fr; grid-template-rows:auto auto; column-gap:16px; align-items:center; }
.inc-ico { grid-row:1 / 3; width:46px; height:46px; border-radius:14px; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(90deg, #C2CAD4, #8B97AB); box-shadow:0 10px 30px rgba(20,30,45,.45); }
.inc-ico svg { width:24px; height:24px; fill:none; stroke:#fff; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 1px 2px rgba(0,0,0,.3)); }
.inc-t { font-size:22px; line-height:1.15; align-self:end; text-shadow:0 2px 8px rgba(0,0,0,.3); }
.inc-s { font-size:16px; line-height:1.3; opacity:.66; align-self:start; }

.inc-fila { flex-direction:row; justify-content:center; align-items:flex-start; gap:28px; }
.inc-fila li { width:220px; grid-template-columns:1fr; grid-template-rows:auto; justify-items:center; text-align:center; row-gap:6px; }
.inc-fila .inc-ico { grid-row:auto; margin-bottom:8px; width:52px; height:52px; border-radius:16px; }
.inc-fila .inc-ico svg { width:26px; height:26px; }

.inc-chica { gap:11px; }
.inc-chica li { column-gap:12px; }
.inc-chica .inc-ico { width:32px; height:32px; border-radius:10px; box-shadow:0 6px 16px rgba(20,30,45,.35); }
.inc-chica .inc-ico svg { width:18px; height:18px; }
.inc-chica .inc-t { font-size:17px; }
.inc-chica .inc-s { font-size:13px; }

.inc-dos { display:grid; grid-template-columns:1fr 1fr; gap:22px 34px; }

.cr { position:absolute; inset:0; }
.cr-escena { position:absolute; inset:0; transition:filter .7s var(--dc-ease), opacity .7s ease, transform .9s var(--dc-ease); }
.cr-pos { position:absolute; left:385px; top:138px; width:780px; height:492px; perspective:1600px; transform:scale(.86); transform-origin:0 0; }
.cr-entra { width:100%; height:100%; opacity:0; transform:translateY(40px); }
.nv-car.on .cr-entra { animation:crEntra 1.1s var(--dc-ease) .12s both; }
@keyframes crEntra { from { opacity:0; transform:translateY(40px); } to { opacity:1; transform:none; } }
.cr-lo { position:absolute; left:0; right:0; top:612px; opacity:0; transform:translateY(16px);
  transition:opacity var(--dc-t-lento) var(--dc-ease) .55s, transform var(--dc-t-viaje) var(--dc-ease) .55s; }

.cr-hasta { font-size:17px; opacity:.52; letter-spacing:.01em; margin-bottom:6px; }
.noche.alto .cr-hasta { font-size:15px; }
.cr-acciones { position:absolute; left:0; right:0; top:806px; display:flex; justify-content:center; align-items:baseline; gap:52px;
  opacity:0; transform:translateY(16px); transition:opacity var(--dc-t-lento) var(--dc-ease) .75s, transform var(--dc-t-viaje) var(--dc-ease) .75s; }
.nv-car.on .cr-lo, .nv-car.on .cr-acciones { opacity:1; transform:none; }
.noche .cr-accion { font-size:52px; line-height:1; text-transform:lowercase; text-shadow:var(--n-brillo, 0 0 22px rgba(242,242,244,.45)); transform-origin:center; transition:transform var(--dc-t-lento) var(--dc-ease); }
@media (any-hover: hover) { .noche .cr-accion:hover { transform:scale(1.07); } }
.noche .cr-otra { font-size:28px; opacity:.66; transition:opacity var(--dc-t-lento) var(--dc-ease); }
@media (any-hover: hover) { .noche .cr-otra:hover { opacity:1; } }

.cr.con-planes .cr-escena { filter:blur(14px); opacity:.45; transform:scale(.96); pointer-events:none; }
.cr-planes { position:absolute; inset:0; display:flex; justify-content:center; align-items:flex-start; gap:40px; padding-top:116px; box-sizing:border-box; pointer-events:none; }
.cr.con-planes .cr-planes { pointer-events:auto; }
.crp { width:382px; display:flex; flex-direction:column; color:#fff; font-family:var(--dc-font); opacity:0; transform:translateY(60px);
  transition:opacity .6s ease, transform .9s var(--dc-ease); }
.cr.con-planes .crp { opacity:1; transform:none; }
.cr.con-planes .crp:nth-child(2) { transition-delay:.08s; }
.cr.con-planes .crp:nth-child(3) { transition-delay:.16s; }

.crp-vis { position:relative; height:352px; display:flex; flex-direction:column; align-items:center; justify-content:flex-start; }
.crp-carta { width:382px; height:241px; position:relative; }
.crp-escala { position:absolute; left:0; top:0; width:780px; height:492px; transform:scale(.4897); transform-origin:0 0; }
.crp-escala.cv-escala { width:920px; height:580px; transform:scale(.4152); }

.crp-incl { position:absolute; left:50%; margin-left:-86px; top:247px; width:172px; height:108px; filter:drop-shadow(0 16px 26px rgba(0,0,0,.45)); }
.crp-incl-escala { width:780px; height:492px; transform:scale(.2205); transform-origin:0 0; }

.noche.alto .crp-vis { height:auto; }
.noche.alto .crp-incl { position:relative; left:auto; top:auto; margin:14px auto 0; width:140px; height:88px; }
.noche.alto .crp-incl-escala { width:350px; height:221px; transform:scale(.4); }
.noche.alto .crp-clases .crp-n { margin-top:20px; }
.crp-n { margin-top:26px; font-size:40px; line-height:1.05; text-shadow:0 0 22px rgba(242,242,244,.4), 0 0 60px rgba(242,242,244,.14); }
.crp-p { margin-top:6px; font-size:20px; opacity:.75; }
.crp.tuyo .crp-p { opacity:1; text-shadow:0 0 16px rgba(255,255,255,.5); }
.crp .inc { margin-top:22px; }
.crp-pie { margin-top:22px; min-height:40px; }
.crp .cr-accion { font-size:36px; }

.noche.alto .cr-carta { width:350px; height:221px; border-radius:18px; }
.noche.alto .cr-dentro { padding:16px 18px 14px; }
.noche.alto .cr-marca { font-size:22px; }
.noche.alto .cr-chip { width:38px; height:38px; border-radius:10px; }
.noche.alto .cr-nombre { font-size:40px; }
.noche.alto .cr-nombre.largo { font-size:28px; }
.noche.alto .cr-num { margin-top:5px; font-size:12px; }
.noche.alto .cr-desde { font-size:10px; margin-left:8px; }
.noche.alto .cr-abajo { margin-top:9px; }
.noche.alto .cr-estado { font-size:11px; }
.noche.alto .cr-tier-t { font-size:46px; }

.cr-carta.m-mas .cr-tier-t, .cr-carta.m-clases .cr-tier-t { font-size:156px; letter-spacing:-.02em; }
.noche.alto .cr-carta.m-mas .cr-tier-t, .noche.alto .cr-carta.m-clases .cr-tier-t { font-size:72px; }
.noche.alto .cr-tier-mini { font-size:9px; margin-bottom:4px; }
.noche.alto .es-car .cr-flota { width:350px; height:221px; margin:-110px 0 0 -175px; top:45%; transform:scale(.94); }
.noche.alto .cr-pos { left:20px; top:104px; width:350px; height:221px; transform:none; }
.noche.alto .cr-lo { top:360px; left:24px; right:24px; }
.noche.alto .inc-fila { flex-direction:column; align-items:stretch; gap:14px; }
.noche.alto .inc-fila li { width:auto; grid-template-columns:auto 1fr; grid-template-rows:auto auto; justify-items:start; text-align:left; row-gap:0; }
.noche.alto .inc-fila .inc-ico { grid-row:1 / 3; margin:0; }
.noche.alto .inc-ico, .noche.alto .inc-fila .inc-ico { width:40px; height:40px; border-radius:12px; }
.noche.alto .inc-ico svg { width:21px; height:21px; }
.noche.alto .inc-t { font-size:17px; }
.noche.alto .inc-s { font-size:13px; }
.noche.alto .cr-acciones { top:620px; flex-direction:column; align-items:center; gap:14px; }
.noche.alto .cr-accion { font-size:34px; }
.noche.alto .cr-otra { font-size:19px; }
.noche.alto[data-vista="car"] .noche-titulos, .noche.alto[data-vista="car"] .noche-cuaderno { opacity:0 !important; pointer-events:none; }
.noche.alto .cr-planes { flex-direction:column; justify-content:flex-start; align-items:center; overflow-y:auto; overscroll-behavior:contain; scrollbar-width:none; padding:96px 20px 40px; gap:34px; box-sizing:border-box; }
.noche.alto .cr-planes::-webkit-scrollbar { display:none; }
.noche.alto .crp { width:350px; flex:none; }
.noche.alto .crp-carta { width:350px; height:221px; }
.noche.alto .crp-escala { width:350px; height:221px; transform:none; }
.noche.alto .crp-escala.cv-escala { width:920px; height:580px; transform:scale(.3804); }
.noche.alto .crp-n { margin-top:16px; font-size:30px; }
.noche.alto .crp-p { font-size:15px; }
.noche.alto .crp .inc { margin-top:14px; }
.noche.alto .crp-pie { margin-top:14px; min-height:0; }
.noche.alto .crp .cr-accion { font-size:26px; }
@media (prefers-reduced-motion: reduce) { .nv-car.on .cr-entra, .cr-tier-t { animation:none !important; opacity:1; transform:none; } }

.nv-cla.on { transition:opacity .75s ease .34s, visibility 0s; }
.noche-luz[data-luz="cla"] { background:radial-gradient(54% 64% at 42% 50%, rgba(236,232,224,.1), rgba(236,232,224,0) 70%); }

.es-cla { background:linear-gradient(135deg, #3A3C40 0%, #1C1D20 55%, #0E0E10 100%); }
.noche.grafito .es-cla { background:linear-gradient(135deg, #585B5B 0%, #0A0A0C 100%); }
.noche.casa .es-cla { background:var(--dc-bg); }
.n-cla-foto { position:absolute; left:396px; top:214px; width:320px; height:320px; border-radius:30px; background-size:cover; background-position:center; box-shadow:0 30px 70px rgba(0,0,0,.45); }
.n-cla-t { position:absolute; left:760px; top:290px; width:420px; font-size:70px; line-height:1.02; text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }
.n-cla-sub { position:absolute; left:762px; top:462px; font-size:26px; opacity:.78; }
.noche.alto .n-cla-foto { left:calc(50% - 110px); top:calc(50% - 230px); width:220px; height:220px; border-radius:22px; }
.noche.alto .n-cla-t { left:40px; right:40px; width:auto; top:calc(50% + 20px); font-size:34px; text-align:center; }
.noche.alto .n-cla-sub { left:40px; right:40px; top:calc(50% + 70px); font-size:17px; text-align:center; }

.cl { position:absolute; inset:0; }
.cl-izq { position:absolute; left:60px; top:170px; width:420px; opacity:0; transform:translateX(-30px); transition:opacity var(--dc-t-lento) var(--dc-ease) .2s, transform var(--dc-t-viaje) var(--dc-ease) .2s; }
.nv-cla.on .cl-izq, .nv-cla.on .cl-der { opacity:1; transform:none; }
.cl-foto { width:380px; height:380px; border-radius:30px; background-size:cover; background-position:center; box-shadow:0 34px 80px rgba(0,0,0,.45); }
.cl-quien { margin-top:26px; }
.cl-nombre { font-size:48px; line-height:1; text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }
.cl-bio { margin-top:12px; font-size:21px; line-height:1.35; opacity:.75; max-width:380px; }
.cl-der { position:absolute; left:560px; right:60px; top:160px; bottom:40px; display:flex; flex-direction:column; opacity:0; transform:translateX(30px); transition:opacity var(--dc-t-lento) var(--dc-ease) .3s, transform var(--dc-t-viaje) var(--dc-ease) .3s; }
.cl-t { font-size:60px; line-height:1.02; text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }
.cl-sub { margin-top:16px; font-size:23px; line-height:1.35; opacity:.8; max-width:760px; }

.cl-ej { margin-top:40px; }
.cl-ej-t { font-size:20px; opacity:.55; margin-bottom:14px; }
.cl-frase { font-size:44px; line-height:1.2; display:flex; align-items:center; gap:14px; flex-wrap:wrap; }

.cl-hueco { display:inline-flex; align-items:center; justify-content:center; min-width:150px; height:58px; padding:0 22px; border-radius:calc(28 * var(--nu)); box-sizing:border-box;
  background:linear-gradient(90deg, #C2CAD4, #8B97AB); box-shadow:0 10px 50px #141E2D84; font-size:34px; color:#fff; transition:background var(--dc-t-lento) var(--dc-ease), box-shadow var(--dc-t-lento) var(--dc-ease); }
.cl-hueco.lleno { background:linear-gradient(90deg, #A9D8BF, #5E9E82); box-shadow:0 10px 40px rgba(20,45,35,.45); text-shadow:0 2px 8px rgba(0,0,0,.35); animation:clCae .6s var(--dc-ease); }
@keyframes clCae { from { transform:translateY(-16px) scale(.9); opacity:.4; } }
.cl-ops { margin-top:18px; display:flex; gap:16px; }
.noche .cl-ops button { font-size:28px; padding:12px 26px; border-radius:calc(28 * var(--nu)); background:linear-gradient(90deg, #C2CAD4, #8B97AB); box-shadow:0 10px 50px #141E2D84; color:#fff; text-shadow:0 2px 8px rgba(0,0,0,.35); transition:transform .22s ease, opacity .4s ease; }
@media (any-hover: hover) { .noche .cl-ops button:hover { transform:translateY(-3px); } }
.noche .cl-ops button.mal { background:linear-gradient(90deg, #DDA9AF, #A66E79); animation:clTiembla .42s ease; }
@keyframes clTiembla { 20% { transform:translateX(-8px); } 45% { transform:translateX(7px); } 70% { transform:translateX(-4px); } }
.noche .cl-ops button.fuera { opacity:0; pointer-events:none; }
.noche .cl-ops button.bien { opacity:0; }
.cl-ops { max-height:120px; transition:max-height var(--dc-t-lento) var(--dc-ease), margin var(--dc-t-lento) var(--dc-ease); }
.cl-ops.plegada { max-height:0; margin-top:0; overflow:hidden; }
.cl-exp { margin-top:16px; min-height:62px; font-size:21px; line-height:1.4; max-width:740px; opacity:0; transform:translateY(8px); transition:opacity .5s ease, transform .5s ease; }
.cl-exp.on { opacity:.9; transform:none; }
.cl-asi { display:block; margin-top:8px; opacity:.7; animation:npEntra .7s var(--dc-ease) both; }

.cl-resenas { position:relative; margin-top:26px; min-height:128px; cursor:pointer; }
.cl-resena { position:absolute; inset:0; margin:0; opacity:0; transform:translateY(10px); transition:opacity .8s ease, transform .8s ease; }
.cl-resena.on { opacity:1; transform:none; }

.cl-resena blockquote { margin:0; font-size:27px; line-height:1.3; max-width:760px; }
.cl-resena blockquote::before { content:"«"; } .cl-resena blockquote::after { content:"»"; }
.cl-resena figcaption { margin-top:10px; font-size:17px; opacity:.55; }
.cl-pie { margin-top:auto; display:flex; align-items:center; gap:28px; flex-wrap:wrap; }
.cl-precio { font-size:24px; opacity:.85; }

.noche .cl-cta { font-size:calc(60 * var(--nu)); line-height:1; padding:calc(10 * var(--nu)) 0; text-transform:lowercase; text-shadow:var(--n-brillo); transform-origin:left center;
  transition:transform var(--dc-t-lento) var(--dc-ease); }
@media (any-hover: hover) { .noche .cl-cta:hover { transform:scale(1.09); } }
.noche .cl-cta:active { transform:scale(.985); transition:transform var(--dc-t-press) var(--dc-ease); }

.noche.alto .cl { overflow-y:auto; overscroll-behavior:contain; scrollbar-width:none; padding:96px 24px 0; box-sizing:border-box; }
.noche.alto .cl-der { min-height:0; }
.noche.alto .cl-pie { position:sticky; bottom:0; z-index:2; margin:18px -24px 0; padding:56px 24px 26px; display:block;
  background:linear-gradient(0deg, rgba(10,10,12,.97) 0%, rgba(10,10,12,.9) 55%, rgba(10,10,12,0) 100%); }
.noche.alto .cl-pie .cl-cta { display:block; margin-top:6px; }
.noche.alto[data-vista="cla"] .noche-carnet, .noche.alto[data-vista="cla"] .noche-cuaderno { opacity:0 !important; pointer-events:none; }
.noche.alto .cl::-webkit-scrollbar { display:none; }
.noche.alto .cl-izq, .noche.alto .cl-der { position:static; width:auto; }
.noche.alto .cl-izq { display:flex; align-items:center; gap:16px; }
.noche.alto .cl-foto { width:96px; height:96px; border-radius:18px; flex:none; }
.noche.alto .cl-quien { margin-top:0; }
.noche.alto .cl-nombre { font-size:28px; }
.noche.alto .cl-bio { font-size:14px; margin-top:6px; }
.noche.alto .cl-der { margin-top:26px; }
.noche.alto .cl-t { font-size:32px; }
.noche.alto .cl-sub { font-size:16px; }
.noche.alto .cl-ej { margin-top:24px; }
.noche.alto .cl-ej-t { font-size:15px; }
.noche.alto .cl-frase { font-size:28px; gap:10px; }
.noche.alto .cl-hueco { min-width:104px; height:44px; font-size:24px; border-radius:16px; }
.noche.alto .cl-ops button { font-size:20px; padding:10px 20px; border-radius:16px; }
.noche.alto .cl-exp { font-size:15px; min-height:44px; }
.noche.alto .cl-resenas { min-height:150px; margin-top:18px; }
.noche.alto .cl-resena blockquote { font-size:18px; }
.noche.alto .cl-resena figcaption { font-size:13px; }

.noche.alto .cl-precio { font-size:16px; }
.noche.alto .cl-cta { font-size:calc(50 * var(--nu)); }

html.visita #screen-login { visibility:hidden !important; }
#muro { position:fixed; inset:0; z-index:9600; overflow-y:auto; overscroll-behavior:contain; display:flex; justify-content:center; align-items:center;
  opacity:0; visibility:hidden; transition:opacity var(--dc-t-salida) var(--dc-ease), visibility 0s linear var(--dc-t-salida);
  font-family:var(--dc-font); font-weight:var(--dc-weight); color:var(--dc-ink); -webkit-tap-highlight-color:transparent; }
#muro.on { opacity:1; visibility:visible; transition:opacity var(--dc-t-entrada) var(--dc-ease), visibility 0s; }
.mu-velo { position:fixed; inset:0; background:radial-gradient(70% 70% at 50% 45%, rgba(10,10,12,.28), rgba(10,10,12,.74)); }
html.muro-abierto .noche-escenario, html.muro-abierto #folio-ov { filter:blur(18px) saturate(.9); transition:filter var(--dc-t-entrada) var(--dc-ease); }
html.muro-abierto .noche *, html.muro-abierto #folio-ov * { animation-play-state:paused !important; }
.mu-caja { position:relative; width:100%; max-width:calc(980 * var(--dc-u)); padding:var(--dc-sp-60) var(--dc-sp-24); box-sizing:border-box;
  display:flex; flex-direction:column; align-items:center; text-align:center; transform:translateY(calc(24 * var(--dc-u))); transition:transform var(--dc-t-entrada) var(--dc-ease); }
#muro.on .mu-caja { transform:none; }

.mu-marca { font-size:var(--dc-fs-140); line-height:1; letter-spacing:var(--dc-tracking); white-space:nowrap;
  text-shadow:0 0 calc(22 * var(--dc-u)) rgba(242,242,244,.42), 0 0 calc(64 * var(--dc-u)) rgba(242,242,244,.14); }
.mu-motivo { margin-top:var(--dc-sp-20); max-width:calc(760 * var(--dc-u)); font-size:var(--dc-fs-30); line-height:1.35; color:var(--dc-ink-70); }

#muro .mu-tabs { display:flex; justify-content:center; align-items:baseline; gap:var(--dc-sp-60); padding:var(--dc-sp-48) 0 var(--dc-sp-20); }
#muro .mu-tabs .ent-op { font-size:var(--dc-fs-60); transform-origin:center; }
#muro .mu-tabs .ent-op.active { text-shadow:0 0 calc(22 * var(--dc-u)) rgba(242,242,244,.45), 0 0 calc(64 * var(--dc-u)) rgba(242,242,244,.16); }

.mu-form { width:100%; display:flex; flex-direction:column; align-items:center; }
#muro .ent-campo { max-width:calc(620 * var(--dc-u)); text-align:center; }
#muro .mu-nombre.persiana { max-height:calc(140 * var(--dc-u)); }
#muro .ent-error { text-align:center; max-width:calc(760 * var(--dc-u)); }

#muro .ent-accion { align-self:center; transform-origin:center; text-shadow:0 0 calc(22 * var(--dc-u)) rgba(242,242,244,.45), 0 0 calc(64 * var(--dc-u)) rgba(242,242,244,.16);
  transition:transform var(--dc-t-lento) var(--dc-ease), opacity var(--dc-t-salida) var(--dc-ease); padding-left:var(--dc-sp-24); }
#muro .ent-accion.cruza { opacity:0; }
#muro .ent-pie { text-align:center; }
@media (max-width:700px) {
  .mu-marca { font-size:var(--dc-fs-80); }
  #muro .mu-tabs { gap:var(--dc-sp-40); }
  #muro .mu-tabs .ent-op { font-size:var(--dc-fs-40); }
  
  #muro { align-items:flex-start; }
  .mu-caja { padding-top:12vh; }
}

#lec-ov { position:fixed; inset:0; z-index:1200; background:var(--dc-bg); opacity:0;
  transition:opacity var(--dc-t-entrada) var(--dc-ease); }
#lec-ov.show { opacity:1; }
#lec-ov.hide { opacity:0; transition-duration:var(--dc-t-salida); }

#lec-ov .lec-escena { position:absolute; inset:0; overflow:hidden; overscroll-behavior:contain;
  display:flex; align-items:center; justify-content:center;
  padding:calc(150 * var(--dc-u)) calc(76 * var(--dc-u)) calc(200 * var(--dc-u)); box-sizing:border-box; }
#lec-ov .lec-dentro { width:100%; transform:scale(var(--lec-k, 1)); transform-origin:50% 50%;
  transition:transform var(--dc-t-lento) var(--dc-ease);
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0, calc(1000 * var(--dc-u))) minmax(0,1fr);
  grid-template-areas:". ej voz"; column-gap:calc(90 * var(--dc-u)); align-items:center; }
#lec-ov .lec-ej { grid-area:ej; min-width:0; max-width:100%; position:relative; }

#lec-ov .wa-hueco { max-width:100%; box-sizing:border-box; }
#lec-ov .wa-hueco .wa-input { max-width:100%; min-width:0; flex-shrink:1; }
#lec-ov .lec-voz { grid-area:voz; align-self:center; max-width:calc(560 * var(--dc-u));
  font-family:var(--dc-font); font-weight:var(--dc-weight); font-size:var(--dc-fs-40); line-height:1.25;
  letter-spacing:var(--dc-tracking); color:var(--dc-ink); text-shadow:var(--dc-shadow-text); }
#lec-ov .lec-voz p { margin:0; text-wrap:balance; }

#lec-ov .match-card { display:flex; flex-direction:column; }
#lec-ov .match-card .match-drop-zone { margin-top:auto; }
#lec-ov .lec-voz .vieja { font-size:.62em; opacity:.5; margin-bottom:.7em; }
#lec-ov .lec-voz .nueva { animation:lecVoz var(--dc-t-entrada) var(--dc-ease) both; }
@keyframes lecVoz { from { opacity:0; transform:translateY(.25em); } to { opacity:1; transform:none; } }

#lec-ov .lec-fuera { position:absolute; left:0; right:0; top:0; visibility:hidden; pointer-events:none; }

#lec-ov .sv-instruction { display:none; }
#lec-ov .ex-wysiwyg { margin:0; }
#lec-ov .ex-wysiwyg::after { display:none; }

#lec-ov .crear-marca, #hc-ov.hc-guion #hc-marca {
  font-size:44px; top:calc(22px + env(safe-area-inset-top, 0px)); left:calc(30px + env(safe-area-inset-left, 0px)); }

#lec-ov.con-teclado .lec-dentro { justify-content:flex-start; align-content:start; }
#lec-ov.con-teclado .lec-voz .vieja { display:none; }
#lec-nav.con-teclado { opacity:0; pointer-events:none; }
#lec-nav.con-teclado > * { pointer-events:none; }

#lec-nav { position:fixed; left:0; right:0; bottom:0; z-index:1260;
  display:flex; align-items:center; justify-content:center; gap:calc(56 * var(--dc-u));
  padding:0 20px calc(30px + env(safe-area-inset-bottom, 0px)); pointer-events:none;
  opacity:0; transition:opacity var(--dc-t-entrada) var(--dc-ease); }
#lec-nav.show { opacity:1; }
#lec-nav.hide { opacity:0; transition-duration:var(--dc-t-salida); }
#lec-nav > * { pointer-events:auto; }
#lec-nav .ex-accion { font-size:var(--dc-fs-34); opacity:.8; }
#lec-nav .ex-accion:disabled { opacity:.14; }
#lec-nav .ig-barra { width:calc(360 * var(--dc-u)); flex:0 1 auto; }

@media (max-width: 899px) {
  #lec-ov, #lec-nav {
    --dc-u: calc(100vw / 560);
    --dc-fs-68: calc(68 * var(--dc-u)); --dc-fs-56: calc(56 * var(--dc-u)); --dc-fs-52: calc(52 * var(--dc-u));
    --dc-fs-50: calc(50 * var(--dc-u)); --dc-fs-40: calc(40 * var(--dc-u)); --dc-fs-38: calc(38 * var(--dc-u));
    --dc-fs-34: calc(34 * var(--dc-u)); --dc-fs-32: calc(32 * var(--dc-u)); --dc-fs-30: calc(30 * var(--dc-u));
    --dc-fs-22: calc(22 * var(--dc-u)); --dc-fs-20: calc(20 * var(--dc-u)); --dc-fs-18: calc(18 * var(--dc-u));
    --dc-sp-6: calc(6 * var(--dc-u)); --dc-sp-8: calc(8 * var(--dc-u)); --dc-sp-10: calc(10 * var(--dc-u));
    --dc-sp-14: calc(14 * var(--dc-u)); --dc-sp-16: calc(16 * var(--dc-u)); --dc-sp-18: calc(18 * var(--dc-u));
    --dc-sp-20: calc(20 * var(--dc-u)); --dc-sp-24: calc(24 * var(--dc-u)); --dc-sp-34: calc(34 * var(--dc-u));
    --dc-sp-36: calc(36 * var(--dc-u)); --dc-sp-40: calc(40 * var(--dc-u)); --dc-sp-48: calc(48 * var(--dc-u));
    --dc-sp-60: calc(60 * var(--dc-u)); --dc-sp-64: calc(64 * var(--dc-u)); --dc-sp-72: calc(72 * var(--dc-u));
    --dc-sp-76: calc(76 * var(--dc-u));
    --dc-r-card: calc(28 * var(--dc-u)); --dc-r-panel: calc(18 * var(--dc-u)); --dc-r-nav: calc(34.14 * var(--dc-u));
  }

#lec-ov .lec-escena { display:flex; align-items:flex-start; justify-content:center;
    padding:92px 20px calc(120px + env(safe-area-inset-bottom, 0px)); }
  #lec-ov .lec-dentro { display:flex; flex-direction:column; justify-content:flex-start;
    gap:calc(56 * var(--dc-u)); transform-origin:50% 0; }
  
  #lec-ov .lec-voz { order:-1; max-width:none; height:5.4em; flex:0 0 auto; align-self:stretch;
    display:flex; flex-direction:column; justify-content:flex-end; }
  
  #lec-ov .crear-marca, #hc-ov.hc-guion #hc-marca { font-size:46px; top:calc(22px + env(safe-area-inset-top, 0px)); left:calc(24px + env(safe-area-inset-left, 0px)); }
  #lec-ov .lec-escena { padding-top:calc(108px + env(safe-area-inset-top, 0px)); }
  #lec-ov.con-teclado .lec-escena { padding-top:calc(70px + env(safe-area-inset-top, 0px)); padding-bottom:24px; gap:calc(36 * var(--dc-u)); }
  #lec-nav { gap:calc(40 * var(--dc-u)); }
  #lec-nav .ig-barra { width:calc(220 * var(--dc-u)); }
}

.mas-luz { position:absolute; left:50%; top:52%; width:3.4em; height:3.4em; margin:-1.7em 0 0 -1.7em; border-radius:50%;
  pointer-events:none; opacity:0; transform:scale(.2); z-index:-1;
  background:radial-gradient(circle, rgba(255,255,255,.92) 0%, rgba(255,255,255,.42) 18%, rgba(255,255,255,.12) 42%, rgba(255,255,255,.03) 58%, rgba(255,255,255,0) 70%); }
@keyframes masLuz {
  0%   { opacity:0;   transform:scale(.2); }
  34%  { opacity:1;   transform:scale(1.22); }
  58%  { opacity:.78; transform:scale(1.02); }
  100% { opacity:.5;  transform:scale(1); }
}

.noche-marca-t .marca-club { position:relative; }
.noche-marca-t.neon .marca-club { animation:none !important; }
.noche-marca-t .marca-club::before { content:""; position:absolute; left:50%; top:55%; width:4.4em; height:4.4em; margin:-2.2em 0 0 -2.2em; border-radius:50%;
  pointer-events:none; opacity:0; transform:scale(.2); z-index:-1;
  background:radial-gradient(circle, rgba(255,255,255,.85) 0%, rgba(255,255,255,.34) 20%, rgba(255,255,255,.09) 44%, rgba(255,255,255,0) 68%); }

@keyframes masLuzSuave { 0% { opacity:0; transform:scale(.72); } 60% { opacity:.72; transform:scale(1); } 100% { opacity:.42; transform:scale(1); } }
.noche-marca-t.neon .marca-club::before { animation:masLuzSuave 3.4s cubic-bezier(.25,.1,.25,1) both; }
.noche-marca-t.neon .marca-club { opacity:1; transition:opacity 2.6s cubic-bezier(.25,.1,.25,1); }
.noche-marca-t.encendido .marca-club::before { opacity:.32; transform:scale(1); transition:opacity 1.6s ease; }

.es-mas { background:transparent; }
.n-mas-nombre { position:absolute; left:0; right:0; top:50%; transform:translateY(-50%); text-align:center; z-index:2; line-height:1; }
.n-mas-hc { display:block; font-size:58px; letter-spacing:.5px; opacity:.9; }
.n-mas-mas { position:relative; display:inline-block; margin-top:6px; font-size:176px; letter-spacing:0; isolation:isolate;
  text-shadow:0 0 22px rgba(242,242,244,.45), 0 0 64px rgba(242,242,244,.16); }

.nv-esc:not(.moviendo) .n-rec.centro .n-mas-mas .mas-luz { animation:masLuz 2.6s cubic-bezier(.3,0,.2,1) both; }
.noche.alto .n-mas-nombre { top:46%; }
.noche.alto .n-mas-hc { font-size:26px; }
.noche.alto .n-mas-mas { font-size:88px; }

.mas-cuadros { position:absolute; inset:0; pointer-events:none; }
.mas-cuadro { position:absolute; width:340px; height:220px; border-radius:26px; overflow:hidden; color:#fff;
  background:linear-gradient(100deg, #c3c9cd 0%, #a5b0bd 45%, #7f8ea6 100%);
  box-shadow:0 30px 70px rgba(0,0,0,.42), 0 4px 50px #0000007F; font-family:var(--dc-font); }
.mas-cuadro .mc-marca { position:absolute; left:18px; top:14px; font-size:15px; line-height:1; text-shadow:0 8px 16px rgba(20,30,45,.6); }
.mas-cuadro .mc-marca .marca-club { font-size:.42em; margin-left:.12em; }

.es-mas .mas-cuadro { opacity:.9; transform:scale(.86); transform-origin:0 0; }
.es-mas .mc-msg { left:268px; top:150px; }
.es-mas .mc-piz { left:900px; top:130px; }
.es-mas .mc-voz { left:262px; top:440px; }
.es-mas .mc-playa { left:910px; top:450px; }
.noche.alto .es-mas .mas-cuadro { transform:scale(.47); }
.noche.alto .es-mas .mc-msg { left:26px; top:58px; }
.noche.alto .es-mas .mc-piz { left:204px; top:92px; }
.noche.alto .es-mas .mc-voz { left:26px; top:auto; bottom:60px; }
.noche.alto .es-mas .mc-playa { left:204px; top:auto; bottom:96px; }

.mc-escribe .mc-e { position:absolute; left:26px; right:20px; top:52px; font-size:32px; line-height:1.28; text-shadow:0 6px 22px rgba(20,30,45,.26); }
.mc-w { display:inline-block; opacity:0; border-radius:.2em; animation:mcW 6s calc(var(--i) * .3s) infinite; }
@keyframes mcW { 0% { opacity:0; transform:translateY(.06em); } 7%, 84% { opacity:1; transform:none; } 92%, 100% { opacity:0; transform:none; } }
.mc-w-hl { background-image:linear-gradient(rgba(139,211,154,.56), rgba(139,211,154,.56)); background-repeat:no-repeat; background-position:left center; background-size:0% 100%;
  animation:mcW 6s calc(var(--i) * .3s) infinite, mcHl 6s calc(var(--i) * .3s) infinite; }
@keyframes mcHl { 0%, 22% { background-size:0% 100%; } 32%, 100% { background-size:100% 100%; } }
.mc-playa .mc-pill span { font-size:18px; }

.mc-piz .mc-t { position:absolute; left:26px; top:66px; font-size:72px; line-height:1; letter-spacing:0; text-shadow:0 6px 22px rgba(20,30,45,.26); }
.mc-piz .mc-n { position:absolute; left:28px; top:152px; font-size:20px; opacity:.75; }
.mc-fin { position:relative; display:inline-block; }
.mc-ar, .mc-o { display:inline-block; border-radius:.2em; background-repeat:no-repeat; background-position:left center; background-size:0% 100%; }
.mc-ar { background-image:linear-gradient(rgba(255,177,204,.56), rgba(255,177,204,.56)); animation:mcAr 6s infinite; }
.mc-o { position:absolute; left:0; top:0; opacity:0; background-image:linear-gradient(rgba(139,211,154,.56), rgba(139,211,154,.56)); animation:mcO 6s infinite; }
@keyframes mcAr { 0%,12% { background-size:0% 100%; opacity:1; } 22%,44% { background-size:100% 100%; opacity:1; } 52%,94% { background-size:100% 100%; opacity:0; } 100% { background-size:0% 100%; opacity:1; } }
@keyframes mcO  { 0%,50% { opacity:0; transform:translateX(-.18em); background-size:0% 100%; } 60% { opacity:1; transform:none; background-size:0% 100%; } 70%,90% { opacity:1; transform:none; background-size:100% 100%; } 96%,100% { opacity:0; background-size:100% 100%; } }

.mc-hueco .mc-frase { position:absolute; left:24px; top:52px; font-size:30px; line-height:44px; text-shadow:0 2px 8px rgba(0,0,0,.35); white-space:nowrap; }
.mc-h { position:relative; display:inline-block; vertical-align:middle; width:112px; height:44px; margin:0 6px; border-radius:22px;
  background:linear-gradient(90deg, #C2CAD4, #8B97AB); box-shadow:0 10px 50px #141E2D84; }
.mc-h::after { content:""; position:absolute; inset:0; border-radius:inherit; opacity:0; background:linear-gradient(90deg, #A9D8BF, #5E9E82);
  box-shadow:0 0 22px rgba(72,205,140,.55), 0 0 60px rgba(72,205,140,.28); animation:mcVerde 6s 1.2s infinite; }
.mc-h-pal { position:absolute; inset:0; z-index:1; display:flex; align-items:center; justify-content:center; font-size:22px; opacity:0; animation:mcCae 6s 1.2s infinite; }
.mc-hueco .mc-banco { position:absolute; left:24px; right:24px; bottom:22px; height:48px; border-radius:22px; display:flex; align-items:center; gap:18px; padding:0 18px;
  background:linear-gradient(90deg, #C2CAD4, #8B97AB); box-shadow:0 10px 50px #141E2D84; font-size:19px; text-shadow:0 2px 8px rgba(0,0,0,.35); }
.mc-sale { display:inline-block; animation:mcSale 6s 1.2s infinite; }
@keyframes mcSale { 0%,16% { opacity:1; transform:none; } 30% { opacity:0; transform:translate(-18px,-84px) scale(1.1); } 92% { opacity:0; transform:none; } 100% { opacity:1; transform:none; } }
@keyframes mcCae  { 0%,24% { opacity:0; transform:translateY(-30px) scale(.9); } 32% { opacity:1; transform:scale(1.06); } 38%,90% { opacity:1; transform:none; } 97%,100% { opacity:0; transform:none; } }
@keyframes mcVerde { 0%,40% { opacity:0; } 48%,90% { opacity:1; } 97%,100% { opacity:0; } }

.mc-match .mc-foto { position:absolute; left:20px; top:20px; right:20px; height:128px; border-radius:18px; background-size:cover; background-position:center;
  box-shadow:0 14px 30px rgba(15,20,30,.34); }
.mc-match .mc-foto::after { content:""; position:absolute; inset:0; border-radius:inherit; opacity:0; box-shadow:0 0 22px rgba(72,205,140,.6), 0 0 60px rgba(72,205,140,.3); animation:mcVerde 6s 2.4s infinite; }
.mc-match .mc-pill { position:absolute; left:20px; right:20px; bottom:18px; height:42px; border-radius:21px; overflow:hidden;
  background:linear-gradient(90deg, #C2CAD4, #8B97AB); box-shadow:0 10px 50px #141E2D84; }
.mc-match .mc-pill::after { content:""; position:absolute; inset:0; opacity:0; background:linear-gradient(90deg, #A9D8BF, #5E9E82); animation:mcVerde 6s 2.4s infinite; }
.mc-match .mc-pill span { position:absolute; inset:0; z-index:1; display:flex; align-items:center; justify-content:center; font-size:20px; text-shadow:0 2px 8px rgba(0,0,0,.35);
  opacity:0; animation:mcCae 6s 2.4s infinite; }

.n-rec:not(.centro) .mas-cuadro *, .n-rec:not(.centro) .mas-cuadro *::after, .nv-esc.moviendo .mas-cuadro *, .nv-esc.moviendo .mas-cuadro *::after,
.nv-esc.quieto .mas-cuadro *, .nv-esc.quieto .mas-cuadro *::after { animation-play-state:paused; }
@media (prefers-reduced-motion: reduce) { .mas-cuadro *, .mas-cuadro *::after, .mas-luz { animation:none !important; } }

.ms { position:absolute; inset:0; }
.ms-izq { position:absolute; left:80px; top:170px; width:560px; opacity:0; transform:translateX(-30px);
  transition:opacity var(--dc-t-lento) var(--dc-ease) .2s, transform var(--dc-t-viaje) var(--dc-ease) .2s; }
.ms-der { position:absolute; left:700px; top:150px; width:680px; height:640px; opacity:0; transform:translateX(30px);
  transition:opacity var(--dc-t-lento) var(--dc-ease) .3s, transform var(--dc-t-viaje) var(--dc-ease) .3s; }
.nv-cla.on .ms-izq, .nv-cla.on .ms-der { opacity:1; transform:none; }
.nv-cls.on { transition:opacity .75s ease .34s, visibility 0s; }
.ms .n-mas-hc { font-size:40px; }
.ms .n-mas-mas { font-size:150px; margin-top:0; }
.nv-cla.on .ms .mas-luz { animation:masLuz 2.6s cubic-bezier(.3,0,.2,1) .5s both; }
.ms-sub { margin-top:18px; font-size:24px; line-height:1.35; opacity:.82; max-width:520px; }
.ms-lista { list-style:none; margin:28px 0 0; padding:0; display:flex; flex-direction:column; gap:12px; }
.ms-lista li { font-size:22px; line-height:1.3; opacity:.72; }
.ms-precio { margin-top:30px; font-size:28px; }
.ms-acc { margin-top:20px; display:flex; flex-direction:column; align-items:flex-start; gap:14px; }
.noche .ms-cta { font-size:calc(60 * var(--nu)); line-height:1; padding:calc(10 * var(--nu)) 0; text-transform:lowercase; text-shadow:var(--n-brillo);
  transform-origin:left center; transition:transform var(--dc-t-lento) var(--dc-ease); text-align:left; }
@media (any-hover: hover) { .noche .ms-cta:hover { transform:scale(1.07); } }
.noche .ms-otra { font-size:24px; opacity:.62; transition:opacity var(--dc-t-lento) var(--dc-ease); }
@media (any-hover: hover) { .noche .ms-otra:hover { opacity:1; } }
.ms-der { height:700px; }
.ms-der .mas-cuadro { transform:scale(.95); transform-origin:0 0; }
.ms-der .mc-msg { left:0; top:0; }
.ms-der .mc-piz { left:350px; top:40px; }
.ms-der .mc-voz { left:10px; top:232px; }
.ms-der .mc-playa { left:350px; top:272px; }
.ms-der .mc-escribe { left:180px; top:470px; }
.noche .ms-volver { position:absolute; left:80px; top:132px; font-size:22px; opacity:.6; z-index:3; }

.noche.alto .ms { overflow-y:auto; overscroll-behavior:contain; scrollbar-width:none; padding:96px 24px 40px; box-sizing:border-box; }
.noche.alto .ms::-webkit-scrollbar { display:none; }
.noche.alto .ms-izq, .noche.alto .ms-der { position:relative; left:auto; top:auto; width:auto; }
.noche.alto .ms-der { height:380px; margin-top:26px; }
.noche.alto .ms-der .mas-cuadro { transform:scale(.5); }
.noche.alto .ms-der .mc-msg { left:0; top:0; }
.noche.alto .ms-der .mc-piz { left:172px; top:22px; }
.noche.alto .ms-der .mc-voz { left:0; top:124px; }
.noche.alto .ms-der .mc-playa { left:172px; top:146px; }
.noche.alto .ms-der .mc-escribe { left:86px; top:250px; }
.noche.alto .ms .n-mas-hc { font-size:24px; }
.noche.alto .ms .n-mas-mas { font-size:92px; }
.noche.alto .ms-sub { font-size:16px; }
.noche.alto .ms-lista li { font-size:15px; }
.noche.alto .ms-precio { font-size:19px; }
.noche.alto .ms-otra { font-size:16px; }
.noche.alto .ms-cta { font-size:calc(50 * var(--nu)); }
.noche.alto .ms-volver { position:static; display:block; margin-bottom:12px; font-size:16px; }

.n-nombre { position:absolute; left:0; right:0; top:50%; padding:70px 0; margin-top:calc(-.5em - 70px); z-index:3; text-align:center; pointer-events:none;
  font-size:124px; line-height:1; letter-spacing:0; opacity:0;
  text-shadow:0 0 22px rgba(242,242,244,.45), 0 0 64px rgba(242,242,244,.16), 0 16px 28px rgba(0,0,0,.35); }
.noche.alto .n-nombre { top:45%; font-size:58px; }

@keyframes nNombre {
  0%   { opacity:0; transform:scale(.97); }
  16%  { opacity:1; transform:none; }
  52%  { opacity:1; transform:none; }
  100% { opacity:0; transform:scale(1.05); }
}
.nv-esc:not(.moviendo) .n-rec.centro .n-nombre { animation:nNombre 2.4s var(--dc-ease) .15s both; }
@media (prefers-reduced-motion: reduce) { .n-nombre { animation:none !important; } }
.noche[data-vista="esc"] .noche-titulos { opacity:0 !important; }

.ms-izq { top:150px; }
.ms-carta { width:468px; height:295px; perspective:1600px; }
.ms-carta .ms-gira { width:780px; height:492px; transform:scale(.6); transform-origin:0 0; }
.ms-izq .inc { gap:13px; }
.nv-cla.on .ms-carta .m-mas .cr-tier .mas-luz { animation:masLuz 2.6s cubic-bezier(.3,0,.2,1) .9s both; }
.nv-cla.on .ms-carta .cr-brillo { animation:crBrillo 1.5s cubic-bezier(.4,0,.2,1) .7s both; }
.ms-izq .inc { margin-top:30px; }
.ms-pie { margin-top:26px; }
.ms-linea { display:flex; align-items:baseline; gap:26px; margin-top:12px; }
.ms-linea .ms-precio { margin:0; font-size:24px; }
.noche.alto .ms-carta { width:350px; height:221px; }
.noche.alto .ms-carta .ms-gira { width:350px; height:221px; transform:none; }
.noche.alto .ms-izq .inc { margin-top:22px; }
.noche.alto .ms-linea { flex-wrap:wrap; gap:14px; }
.noche.alto .ms-linea .ms-precio { font-size:17px; }

.c2 { position:absolute; inset:0; }
.c2-izq { position:absolute; left:80px; top:178px; width:420px; opacity:0; transform:translateX(-30px);
  transition:opacity var(--dc-t-lento) var(--dc-ease) .2s, transform var(--dc-t-viaje) var(--dc-ease) .2s; }
.c2-der { position:absolute; left:580px; right:70px; top:170px; bottom:44px; display:flex; flex-direction:column; opacity:0; transform:translateX(30px);
  transition:opacity var(--dc-t-lento) var(--dc-ease) .3s, transform var(--dc-t-viaje) var(--dc-ease) .3s; }
.nv-cla.on .c2-izq, .nv-cla.on .c2-der { opacity:1; transform:none; }
.c2-carta { position:relative; width:420px; border-radius:30px; overflow:hidden; color:#fff; font-family:var(--dc-font);
  box-shadow:0 44px 90px rgba(0,0,0,.5), 0 4px 50px #0000007F, inset 0 1px 0 rgba(255,255,255,.55); }
.c2-carta > .cr-luz, .c2-carta > .cr-brillo { z-index:1; }
.c2-foto { height:330px; background-size:cover; background-position:center 30%; }
.c2-quien { position:relative; z-index:2; padding:24px 30px 30px; }
.c2-nombre { font-size:48px; line-height:1.05; text-shadow:0 14px 26px rgba(20,30,45,.55); }
.c2-bio { margin-top:10px; font-size:18px; line-height:1.4; text-shadow:0 2px 8px rgba(0,0,0,.35); }
.c2-t { font-size:56px; line-height:1.02; text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }
.c2-der .inc { margin-top:32px; }
.c2-resenas { margin-top:36px; display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:18px; }
.c2-resena { margin:0; border-radius:22px; padding:20px 20px 18px; display:flex; flex-direction:column; justify-content:space-between; min-height:176px; color:#fff; }
.c2-resena blockquote { margin:0; font-size:17px; line-height:1.38; }
.c2-resena blockquote::before { content:"«"; } .c2-resena blockquote::after { content:"»"; }
.c2-resena figcaption { margin-top:12px; font-size:13px; opacity:.6; }
.c2-pie { margin-top:auto; display:flex; align-items:baseline; gap:30px; flex-wrap:wrap; }
.c2-precio { font-size:22px; opacity:.85; }
.noche.alto .c2 { overflow-y:auto; overscroll-behavior:contain; scrollbar-width:none; padding:96px 20px 0; box-sizing:border-box; }
.noche.alto .c2::-webkit-scrollbar { display:none; }
.noche.alto .c2-izq, .noche.alto .c2-der { position:static; width:auto; }
.noche.alto .c2-carta { width:100%; border-radius:22px; }
.noche.alto .c2-foto { height:230px; }
.noche.alto .c2-quien { padding:18px 20px 22px; }
.noche.alto .c2-nombre { font-size:32px; }
.noche.alto .c2-bio { font-size:14px; }
.noche.alto .c2-der { margin-top:28px; }
.noche.alto .c2-t { font-size:30px; }
.noche.alto .inc-dos { grid-template-columns:1fr; gap:14px; }
.noche.alto .c2-resenas { grid-template-columns:1fr; gap:12px; margin-top:24px; }
.noche.alto .c2-resena { min-height:0; padding:16px 18px; border-radius:18px; }
.noche.alto .c2-resena blockquote { font-size:15px; }
.noche.alto .c2-pie { position:sticky; bottom:0; z-index:2; margin:18px -20px 0; padding:56px 20px 26px; display:block;
  background:linear-gradient(0deg, rgba(10,10,12,.97) 0%, rgba(10,10,12,.9) 55%, rgba(10,10,12,0) 100%); }
.noche.alto .c2-pie .cl-cta { display:block; margin-top:6px; }
.noche.alto .c2-precio { font-size:16px; }
.noche.alto[data-vista="cla"] .noche-cuaderno, .noche.alto[data-vista="cls"] .noche-cuaderno { opacity:0 !important; pointer-events:none; }

.mas-cuadro .mc-e { position:absolute; left:26px; right:20px; top:52px; line-height:1.28; text-shadow:0 6px 22px rgba(20,30,45,.26); }
.mc-msg .mc-e { font-size:24px; }
.mc-w-hl.p { background-image:linear-gradient(rgba(255,177,204,.56), rgba(255,177,204,.56)); }
.mc-w-hl.g { background-image:linear-gradient(rgba(139,211,154,.56), rgba(139,211,154,.56)); }
.mc-w-hl.y { background-image:linear-gradient(rgba(255,213,105,.58), rgba(255,213,105,.58)); }
.mc-voz .mc-voz-f { position:absolute; left:24px; top:34px; font-size:30px; line-height:44px; white-space:nowrap; text-shadow:0 2px 8px rgba(0,0,0,.35); }
.mc-vh { position:relative; display:inline-block; vertical-align:middle; width:128px; height:44px; margin-left:12px; border-radius:22px;
  background:linear-gradient(90deg, #DDA9AF, #A66E79); box-shadow:0 0 22px rgba(255,110,125,.5), 0 10px 40px rgba(20,30,45,.4); animation:mcVhFondo 7s infinite; }
.mc-vh::after { content:""; position:absolute; inset:0; border-radius:inherit; opacity:0; background:linear-gradient(90deg, #A9D8BF, #5E9E82);
  box-shadow:0 0 22px rgba(72,205,140,.55), 0 0 60px rgba(72,205,140,.28); animation:mcVhVerde 7s infinite; }
.mc-vh span { position:absolute; inset:0; z-index:1; display:flex; align-items:center; justify-content:center; font-size:21px; }
.mc-vh-mal { animation:mcVhMal 7s infinite; }
.mc-vh-bien { opacity:0; animation:mcVhBien 7s infinite; }
.mc-voz .mc-voz-t { position:absolute; left:24px; right:20px; top:104px; font-size:19px; line-height:1.35; opacity:0; animation:mcVozT 7s infinite; text-shadow:0 2px 8px rgba(0,0,0,.3); }
.mc-mk { border-radius:.2em; padding:0 .08em; }
.mc-mk.p { background:rgba(255,177,204,.56); } .mc-mk.g { background:rgba(139,211,154,.56); }
@keyframes mcVhFondo { 0%, 100% { opacity:1; } }
@keyframes mcVhMal  { 0%, 6% { opacity:0; transform:translateY(-14px); } 12%, 50% { opacity:1; transform:none; } 56%, 100% { opacity:0; } }
@keyframes mcVozT   { 0%, 20% { opacity:0; transform:translateY(.25em); } 28%, 88% { opacity:1; transform:none; } 95%, 100% { opacity:0; } }
@keyframes mcVhBien { 0%, 56% { opacity:0; transform:translateY(-14px); } 62%, 90% { opacity:1; transform:none; } 96%, 100% { opacity:0; } }
@keyframes mcVhVerde { 0%, 60% { opacity:0; } 66%, 90% { opacity:1; } 96%, 100% { opacity:0; } }

.ms-carta { position:relative; }
.noche .ms-obtener { position:absolute; left:0; top:0; width:468px; height:295px; border-radius:22px; display:flex; align-items:center; justify-content:center;
  font-size:56px; line-height:1; text-transform:lowercase; color:#fff; opacity:0; transition:opacity var(--dc-t-lento) var(--dc-ease);
  
  background:radial-gradient(78% 78% at 50% 50%, rgba(20,24,32,.84), rgba(20,24,32,.56)); backdrop-filter:blur(3px); -webkit-backdrop-filter:blur(3px);
  text-shadow:0 0 22px rgba(255,255,255,.55), 0 0 60px rgba(255,255,255,.2); }
@media (any-hover: hover) { .ms-carta:hover .ms-obtener { opacity:1; } }
.ms-carta.invita .ms-obtener { opacity:1; }

.ms-carta.ya .ms-obtener { font-size:30px; }
@keyframes msYaSeVa { 0% { opacity:0; } 13%, 60% { opacity:1; } 100% { opacity:0; } }
@media (any-hover: hover) {
  .ms-carta.ya .ms-obtener { opacity:0; }
  .ms-carta.ya:hover .ms-obtener { opacity:1; }
}
@media (any-hover: none) {
  .ms-carta.ya .ms-obtener { animation:msYaSeVa 3.4s cubic-bezier(.4,0,.2,1) .35s both; }
}
@media (prefers-reduced-motion: reduce) { .ms-carta.ya .ms-obtener { animation-duration:.01s; } }
.noche.alto .ms-obtener { width:350px; height:221px; border-radius:18px; font-size:40px; }

.cv { position:relative; width:920px; height:580px; border-radius:30px; overflow:hidden; color:#fff; font-family:var(--dc-font);
  background:linear-gradient(100deg, #c3c9cd 0%, #a5b0bd 45%, #7f8ea6 100%);
  box-shadow:0 50px 100px rgba(0,0,0,.55), 0 4px 50px #0000007F; }
.cv-cab { position:absolute; left:32px; right:32px; top:24px; display:flex; align-items:baseline; gap:40px; }
.cv-marca { font-size:26px; line-height:1; text-shadow:0 10px 20px rgba(20,30,45,.55); margin-right:auto; }
.cv-marca .marca-club { font-size:.42em; margin-left:.12em; }
.cv-op { font-size:20px; opacity:.55; text-shadow:0 8px 16px rgba(20,30,45,.4); }
.cv-op.on { opacity:1; }
.cv-t { position:absolute; left:44px; top:86px; font-size:54px; line-height:1; text-shadow:0 6px 22px rgba(20,30,45,.26); animation:cvT 12s infinite; }
.cv-cols { position:absolute; left:44px; top:176px; display:flex; gap:38px; }
.cv-col { display:flex; flex-direction:column; gap:6px; }
.cv-col.k1 { animation:cvC1 12s infinite; } .cv-col.k2 { animation:cvC2 12s infinite; } .cv-col.k3 { animation:cvC3 12s infinite; }
.cv-v { font-size:40px; line-height:1.1; text-shadow:0 6px 22px rgba(20,30,45,.26); }
.cv-f { font-size:26px; line-height:1.2; opacity:.92; text-shadow:0 6px 22px rgba(20,30,45,.22); }
.cv-hl { border-radius:.2em; padding:.02em .06em; background-repeat:no-repeat; background-position:left center; background-size:0% 100%; }
.cv-hl.p { background-image:linear-gradient(rgba(255,177,204,.56), rgba(255,177,204,.56)); animation:cvH1 12s infinite; }
.cv-hl.g { background-image:linear-gradient(rgba(139,211,154,.56), rgba(139,211,154,.56)); animation:cvH2 12s infinite; }
.cv-hl.y { background-image:linear-gradient(rgba(255,213,105,.58), rgba(255,213,105,.58)); animation:cvH3 12s infinite; }

.cv-img { position:absolute; left:430px; top:410px; width:150px; height:112px; border-radius:16px; background-size:cover; background-position:center; opacity:0;
  box-shadow:0 14px 34px rgba(40,55,80,.28), 0 2px 6px rgba(40,55,80,.12); animation:cvImg 12s infinite; }
.cv-cursor { position:absolute; left:560px; top:500px; width:30px; height:30px; fill:#fff; stroke:rgba(20,30,45,.55); stroke-width:1.2; opacity:0;
  filter:drop-shadow(0 4px 6px rgba(0,0,0,.35)); animation:cvCursor 12s infinite; }

.cv-ej { position:absolute; left:612px; top:292px; width:280px; opacity:0; animation:cvEj 12s infinite; }
.cv-ej-b { height:40px; border-radius:18px; display:flex; align-items:center; gap:22px; padding:0 18px;
  background:linear-gradient(90deg, #C2CAD4, #8B97AB); box-shadow:0 10px 50px #141E2D84; font-size:17px; text-shadow:0 2px 8px rgba(0,0,0,.35); }
.cv-ej-sale { display:inline-block; animation:cvEjSale 12s infinite; }
.cv-ej-fotos { margin-top:14px; display:flex; gap:14px; }
.cv-ej-c { width:133px; display:flex; flex-direction:column; gap:8px; }
.cv-ej-foto { position:relative; height:96px; border-radius:14px; background-size:cover; background-position:center; box-shadow:0 12px 26px rgba(15,20,30,.3); }
.cv-ej-c:first-child .cv-ej-foto::after { content:""; position:absolute; inset:0; border-radius:inherit; opacity:0; box-shadow:0 0 18px rgba(72,205,140,.6), 0 0 44px rgba(72,205,140,.3); animation:cvEjVerde 12s infinite; }
.cv-ej-h { position:relative; height:32px; border-radius:16px; background:linear-gradient(90deg, #C2CAD4, #8B97AB); box-shadow:0 10px 40px #141E2D84; }
.cv-ej-c:first-child .cv-ej-h::after { content:""; position:absolute; inset:0; border-radius:inherit; opacity:0; background:linear-gradient(90deg, #A9D8BF, #5E9E82); animation:cvEjVerde 12s infinite; }
.cv-ej-h span { position:absolute; inset:0; z-index:1; display:flex; align-items:center; justify-content:center; font-size:15px; opacity:0; text-shadow:0 2px 6px rgba(0,0,0,.35); animation:cvEjCae 12s infinite; }
.cv-yo { position:absolute; right:32px; top:84px; width:186px; height:140px; border-radius:18px; background-size:118%; background-position:50% 26%;   
  box-shadow:0 20px 40px rgba(15,20,30,.4), 0 0 0 1px rgba(255,255,255,.25); }
.cv-yo span { position:absolute; left:12px; bottom:9px; font-size:14px; text-shadow:0 2px 6px rgba(0,0,0,.6); }
@keyframes cvT  { 0%, 2% { opacity:0; transform:translateY(.06em); } 7%, 92% { opacity:1; transform:none; } 97%, 100% { opacity:0; } }
@keyframes cvC1 { 0%, 10% { opacity:0; transform:translateY(.06em); } 15%, 92% { opacity:1; transform:none; } 97%, 100% { opacity:0; } }
@keyframes cvC2 { 0%, 13% { opacity:0; transform:translateY(.06em); } 18%, 92% { opacity:1; transform:none; } 97%, 100% { opacity:0; } }
@keyframes cvC3 { 0%, 16% { opacity:0; transform:translateY(.06em); } 21%, 92% { opacity:1; transform:none; } 97%, 100% { opacity:0; } }
@keyframes cvH1 { 0%, 24% { background-size:0% 100%; } 29%, 100% { background-size:100% 100%; } }
@keyframes cvH2 { 0%, 28% { background-size:0% 100%; } 33%, 100% { background-size:100% 100%; } }
@keyframes cvH3 { 0%, 32% { background-size:0% 100%; } 37%, 100% { background-size:100% 100%; } }
@keyframes cvImg { 0%, 38% { opacity:0; transform:scale(.985); } 42% { opacity:1; transform:none; } 44% { opacity:1; transform:none; } 57%, 92% { opacity:1; transform:translate(-370px, -26px); } 97%, 100% { opacity:0; transform:translate(-370px, -26px); } }
@keyframes cvCursor { 0%, 38% { opacity:0; transform:translate(30px, 30px); } 42% { opacity:1; transform:none; } 44% { opacity:1; transform:none; } 57% { opacity:1; transform:translate(-370px, -26px); } 63%, 100% { opacity:0; transform:translate(-350px, -6px); } }
@keyframes cvEj { 0%, 56% { opacity:0; transform:translateY(12px); } 61%, 92% { opacity:1; transform:none; } 97%, 100% { opacity:0; } }
@keyframes cvEjSale { 0%, 64% { opacity:1; transform:none; } 71% { opacity:0; transform:translate(0, 110px) scale(1.06); } 100% { opacity:0; } }
@keyframes cvEjCae { 0%, 68% { opacity:0; transform:translateY(-22px) scale(.92); } 72% { opacity:1; transform:scale(1.06); } 75%, 100% { opacity:1; transform:none; } }
@keyframes cvEjVerde { 0%, 75% { opacity:0; } 79%, 100% { opacity:1; } }
.nv-cla:not(.on) .cv *, .nv-car:not(.on) .cv *, .nv-cls:not(.on) .cv *,
.n-rec:not(.centro) .cv *, .n-rec:not(.centro) .cv *::after, .nv-esc.moviendo .cv *, .nv-esc.moviendo .cv *::after, .nv-esc.quieto .cv *, .nv-esc.quieto .cv *::after { animation-play-state:paused; }

.es-cls { background:transparent; }
.es-cls .cls-vent { position:absolute; left:50%; top:50%; width:754px; height:475px; margin:-238px 0 0 -377px; }
.es-cls .cls-escala { width:920px; height:580px; transform:scale(.8196); transform-origin:0 0; }
.noche.alto .es-cls .cls-vent { width:350px; height:221px; margin:-110px 0 0 -175px; top:45%; }
.noche.alto .es-cls .cls-escala { transform:scale(.3804); }
@media (prefers-reduced-motion: reduce) { .cv *, .cv *::after { animation:none !important; opacity:1 !important; } }

.c3 { position:absolute; inset:0; overflow-y:auto; overscroll-behavior:contain; scrollbar-width:none; padding:150px 0 90px; box-sizing:border-box; opacity:0;
  transition:opacity var(--dc-t-entrada) var(--dc-ease) .2s; }
.c3::-webkit-scrollbar { display:none; }
.nv-cla.on .c3, .nv-cls.on .c3 { opacity:1; }
.c3-hero { text-align:center; }
.c3-t { font-size:92px; line-height:1; text-shadow:0 0 22px rgba(242,242,244,.45), 0 0 64px rgba(242,242,244,.16); }
.c3-sub { margin:20px auto 0; max-width:760px; font-size:24px; line-height:1.4; opacity:.82; }
.c3-ventana { width:1012px; height:638px; margin:56px auto 0; }
.c3-escala { width:920px; height:580px; transform:scale(1.1); transform-origin:0 0; }
.c3-sec { margin:120px auto 0; width:1180px; }
.c3-que-t { font-size:52px; line-height:1.05; text-align:center; text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }
.c3-que-fila { margin-top:56px; display:flex; align-items:center; justify-content:space-between; gap:60px; }
.c3-que-fila .inc { gap:26px; }
.c3-que-fila .inc-t { font-size:26px; }
.c3-que-fila .inc-s { font-size:18px; }
.c3-que-fila .inc-ico { width:54px; height:54px; border-radius:16px; }
.c3-incl { width:560px; text-align:center; }
.c3-incl-carta { width:546px; height:344px; margin:0 auto; }
.c3-incl-gira { width:780px; height:492px; transform:scale(.7); transform-origin:0 0; }
.c3-incl-t { margin-top:26px; font-size:30px; }
.c3-incl-s { margin-top:8px; font-size:19px; opacity:.7; }
.c3-cuadros { position:relative; margin:56px auto 0; height:470px; width:1180px; }
.c3-cuadros .mas-cuadro { transform:none; }
.c3-cuadros .mc-msg { left:0; top:0; } .c3-cuadros .mc-piz { left:420px; top:60px; } .c3-cuadros .mc-voz { left:840px; top:0; } .c3-cuadros .mc-playa { left:420px; top:300px; transform:scale(.8); transform-origin:50% 0; }
.c3-resenas { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:24px; }
.c3-resenas .c2-resena { min-height:210px; padding:26px 26px 22px; }
.c3-resenas .c2-resena blockquote { font-size:20px; }
.c3-final { display:flex; align-items:center; justify-content:center; gap:60px; }
.c3-foto { width:300px; height:300px; border-radius:34px; background-size:cover; background-position:center 30%; box-shadow:0 40px 80px rgba(0,0,0,.5); flex:none; }
.c3-nombre { font-size:60px; line-height:1; text-shadow:0 0 22px rgba(242,242,244,.42), 0 0 64px rgba(242,242,244,.14); }
.c3-bio { margin-top:14px; font-size:21px; line-height:1.4; opacity:.8; max-width:520px; }
.c3-precio { margin-top:28px; font-size:24px; opacity:.9; }
.c3-final .cl-cta { margin-top:10px; }

.noche.alto .c3 { padding:100px 0 60px; }
.noche.alto .c3-t { font-size:40px; padding:0 20px; }
.noche.alto .c3-sub { font-size:16px; padding:0 24px; margin-top:12px; }
.noche.alto .c3-ventana { width:350px; height:221px; margin-top:30px; }
.noche.alto .c3-escala { transform:scale(.3804); }
.noche.alto .c3-sec { width:auto; margin:70px 20px 0; }
.noche.alto .c3-que-t { font-size:28px; }
.noche.alto .c3-que-fila { flex-direction:column; margin-top:28px; gap:36px; }
.noche.alto .c3-que-fila .inc-t { font-size:18px; }
.noche.alto .c3-que-fila .inc-s { font-size:13px; }
.noche.alto .c3-que-fila .inc-ico { width:42px; height:42px; }
.noche.alto .c3-incl { width:auto; }
.noche.alto .c3-incl-carta { width:350px; height:221px; }
.noche.alto .c3-incl-gira { width:350px; height:221px; transform:none; }
.noche.alto .c3-incl-t { font-size:20px; margin-top:16px; }
.noche.alto .c3-incl-s { font-size:14px; }
.noche.alto .c3-cuadros { width:350px; height:330px; margin-top:28px; }
.noche.alto .c3-cuadros .mas-cuadro { transform:scale(.5); transform-origin:0 0; }
.noche.alto .c3-cuadros .mc-msg { left:0; top:0; } .noche.alto .c3-cuadros .mc-piz { left:176px; top:30px; }
.noche.alto .c3-cuadros .mc-voz { left:0; top:124px; } .noche.alto .c3-cuadros .mc-playa { left:176px; top:154px; transform:scale(.5); transform-origin:0 0; }
.noche.alto .c3-resenas { grid-template-columns:1fr; gap:12px; }
.noche.alto .c3-resenas .c2-resena { min-height:0; padding:18px; }
.noche.alto .c3-resenas .c2-resena blockquote { font-size:15px; }
.noche.alto .c3-final { flex-direction:column; text-align:center; gap:24px; }
.noche.alto .c3-foto { width:200px; height:200px; border-radius:26px; }
.noche.alto .c3-nombre { font-size:36px; }
.noche.alto .c3-bio { font-size:15px; }
.noche.alto .c3-precio { font-size:16px; }
.noche .c3 .mas-cuadro * , .noche .c3 .mas-cuadro *::after { animation-play-state:running; }

.es-tg .tg-charla { position:absolute; left:300px; right:300px; top:384px; display:flex; flex-direction:column; gap:52px; }
.es-tg .tg-l { font-size:46px; line-height:1.2; letter-spacing:var(--dc-tracking, 0); color:#F2F2F4;
  opacity:0; animation:tgSale 12s var(--dc-ease) infinite; animation-delay:calc(var(--i) * 2.6s + 1.4s); will-change:opacity, transform; }
.es-tg .tg-a { align-self:flex-end; text-align:right; color:rgba(242,242,244,.5); }
.es-tg .tg-c { font-size:34px; color:rgba(168,200,236,.78); padding-left:18px; border-left:2px solid rgba(168,200,236,.32); }
.es-tg .tg-b { color:#F2F2F4; }
@keyframes tgSale {
  0%, 6%   { opacity:0; transform:translateY(.42em); }
  13%, 74% { opacity:1; transform:none; }
  86%, 100%{ opacity:0; transform:translateY(-.2em); }
}

.es-tg .tg-puntos { position:absolute; left:0; top:calc(100% + 18px); display:flex; gap:9px;
  opacity:0; animation:tgPuntos 12s linear infinite; animation-delay:5.1s; }
.es-tg .tg-puntos i { width:11px; height:11px; border-radius:50%; background:rgba(242,242,244,.62);
  animation:tgBota 1.1s var(--dc-ease) infinite; }
.es-tg .tg-puntos i:nth-child(2) { animation-delay:.16s; }
.es-tg .tg-puntos i:nth-child(3) { animation-delay:.32s; }
@keyframes tgPuntos { 0%, 2% { opacity:0; } 6%, 14% { opacity:1; } 18%, 100% { opacity:0; } }
@keyframes tgBota { 0%, 100% { transform:none; opacity:.45; } 50% { transform:translateY(-6px); opacity:1; } }

.noche.alto .es-tg .tg-charla { left:40px; right:40px; top:calc(50% - 62px); gap:34px; }
.noche.alto .es-tg .tg-l { font-size:30px; }
.noche.alto .es-tg .tg-c { font-size:23px; padding-left:13px; }
.noche.alto .es-tg .tg-puntos i { width:8px; height:8px; }

.tgv { position:absolute; inset:0; display:flex; align-items:flex-start; justify-content:center;
  gap:calc(140 * var(--dc-u)); padding:236px calc(80 * var(--dc-u)) calc(120 * var(--dc-u)); box-sizing:border-box; }
.tgv-bloque { display:flex; flex-direction:column; align-items:flex-start; gap:calc(26 * var(--dc-u)); }
.tgv-tutor { flex:0 1 calc(660 * var(--dc-u)); }
.tgv-canal { flex:0 1 calc(480 * var(--dc-u)); padding-top:calc(22 * var(--dc-u)); }
.tgv-t { font-size:calc(72 * var(--dc-u)); line-height:1.05; color:var(--dc-ink); text-shadow:var(--dc-shadow-text); }
.tgv-sub { font-size:calc(34 * var(--dc-u)); line-height:1.35; color:rgba(242,242,244,.62); }
.tgv-charla { position:relative; display:flex; flex-direction:column; justify-content:center; gap:calc(22 * var(--dc-u)); width:100%; min-height:calc(230 * var(--dc-u)); margin:calc(6 * var(--dc-u)) 0; }
.tgv-charla .tg-l { font-size:calc(36 * var(--dc-u)); line-height:1.25; color:var(--dc-ink); opacity:0;
  animation:tgSale 12s var(--dc-ease) infinite; animation-delay:calc(var(--i) * 2.6s + 1.4s); }
.tgv-charla .tg-a { align-self:flex-end; text-align:right; opacity:0; color:var(--dc-ink-soft, rgba(242,242,244,.5)); }
.tgv-charla .tg-c { font-size:calc(27 * var(--dc-u)); color:rgba(168,200,236,.8); padding-left:.5em; border-left:2px solid rgba(168,200,236,.3); }
.tgv-charla .tg-puntos { position:absolute; left:0; top:calc(100% + 10px); display:flex; gap:7px; opacity:0;
  animation:tgPuntos 12s linear infinite; animation-delay:5.1s; }
.tgv-charla .tg-puntos i { width:8px; height:8px; border-radius:50%; background:var(--dc-ink); opacity:.55;
  animation:tgBota 1.1s var(--dc-ease) infinite; }
.tgv-charla .tg-puntos i:nth-child(2) { animation-delay:.16s; }
.tgv-charla .tg-puntos i:nth-child(3) { animation-delay:.32s; }

.tgv-cab { display:flex; align-items:center; gap:calc(16 * var(--dc-u)); font-size:calc(46 * var(--dc-u)); color:var(--dc-ink); }
.tgv-ico { width:calc(58 * var(--dc-u)); height:calc(58 * var(--dc-u)); border-radius:calc(16 * var(--dc-u)); }
.tgv-desc { font-size:calc(34 * var(--dc-u)); line-height:1.35; color:rgba(242,242,244,.62); }
.tgv-ir { margin-top:calc(10 * var(--dc-u)); }

@media (max-width: 760px) {
  .tgv { flex-direction:column; align-items:stretch; justify-content:flex-start; gap:calc(80 * var(--dc-u));
    padding:calc(190px + env(safe-area-inset-top, 0px)) 20px calc(130px + env(safe-area-inset-bottom, 0px)); }
  .tgv-canal { padding-top:0; }
  .tgv-bloque { max-width:none; }
}
@media (prefers-reduced-motion: reduce) {
  .es-tg .tg-l, .tgv-charla .tg-l { animation:none; opacity:1; transform:none; }
  .es-tg .tg-puntos, .tgv-charla .tg-puntos { display:none; }
}
