/* Isadora — escaparate: «Cartelera» (/cursos), «Ficha de función» (/curso), «Arma tu temporada» (/a-medida).
   Solo tokens de site.css; prefijos cl- / fx- / am-. Animaciones propias: cl-bulbs, fx-up, fx-eq, am-pop. */

/* ============ CARTELERA ============ */
.cl-marquee{padding-block:clamp(40px,6vw,88px) clamp(32px,4vw,56px)}
.cl-frame{position:relative;padding:clamp(28px,5vw,64px) clamp(20px,5vw,72px);border:1px solid var(--line-2);border-radius:var(--r-lg);
  background:radial-gradient(ellipse 70% 90% at 50% 0,var(--glow),transparent 70%),var(--bg-2);text-align:center}
.cl-frame .lead{margin-inline:auto}
.cl-frame h1{margin-bottom:.3em}
/* bombillas de marquesina: dos anillos de puntos que se alternan */
.cl-frame::before,.cl-frame::after{content:"";position:absolute;inset:-7px;border-radius:14px;padding:7px;pointer-events:none;
  background:radial-gradient(circle,var(--accent) 0 2px,rgba(242,181,68,.25) 2.6px,transparent 3.4px) 0 0/22px 22px;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;
  mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);
  animation:cl-bulbs 1.6s steps(2,jump-none) infinite}
.cl-frame::after{background-position:11px 11px;animation-delay:.8s}
@keyframes cl-bulbs{0%{opacity:1}100%{opacity:.25}}

.cl-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:28px}
.cl-chips a{display:inline-flex;align-items:center;gap:.6em;min-height:44px;padding:.5em 1em;border:1px solid var(--line-2);border-radius:999px;
  text-decoration:none;font:500 .78rem/1.2 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink);transition:border-color .25s,background .25s}
.cl-chips a:hover{border-color:var(--accent);background:var(--glow);color:var(--ink)}
.cl-chip-n{font:italic 400 1.1rem/1 var(--f-display);color:var(--accent);letter-spacing:0;text-transform:none}
.cl-chips small{font-size:.72rem;color:var(--muted)}
.cl-own{text-align:center;color:var(--muted);margin:20px 0 0}

.cl-night{padding-block:clamp(56px,8vw,112px);border-top:1px solid var(--line);scroll-margin-top:68px}
.cl-night-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.6fr);gap:clamp(24px,4vw,64px);align-items:start}
.cl-flip .cl-night-in{grid-template-columns:minmax(0,2.6fr) minmax(0,1fr)}
.cl-flip .cl-night-head{order:2}
.cl-night-head{position:sticky;top:96px}
.cl-night-head .act{display:block;margin-bottom:.1em;transition:opacity .4s}
.cl-night:target .act{opacity:.85}
.cl-lead{color:var(--muted)}
.cl-count{font:500 .76rem/1.2 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding-top:12px;border-top:1px solid var(--line)}

.cl-bill{display:grid;gap:clamp(16px,2.4vw,32px);align-items:start}
.cl-bill--2{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
.cl-bill--2>:nth-child(2){margin-top:clamp(40px,8vw,128px)}
.cl-bill--3{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
.cl-bill--3>:first-child{grid-row:span 2}

.cl-poster{position:relative;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;transition:border-color .3s,transform .4s}
.cl-poster:hover{border-color:var(--line-2);transform:translateY(-3px)}
.cl-poster-img{position:relative;overflow:hidden;aspect-ratio:1/1.08}
.cl-poster--tall .cl-poster-img{aspect-ratio:5/7}
.cl-poster--wide .cl-poster-img{aspect-ratio:16/10}
.cl-poster-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.85) contrast(1.05);transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}
.cl-poster:hover .cl-poster-img img{transform:scale(1.05)}
.cl-poster-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,14,18,0) 30%,rgba(12,14,18,.82) 62%,rgba(12,14,18,.96) 100%)}
.cl-poster-img::before{content:"";position:absolute;top:-20%;bottom:-20%;left:0;width:45%;z-index:1;pointer-events:none;opacity:0;
  background:linear-gradient(90deg,transparent,rgba(242,181,68,.16),transparent)}
.cl-poster:hover .cl-poster-img::before{animation:sweep 1.3s ease-out}
.cl-poster-over{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:clamp(16px,2.4vw,28px)}
.cl-poster-over .tag{background:rgba(12,14,18,.7);color:var(--ink)}
.cl-poster h3{font-size:clamp(1.6rem,2.6vw,2.3rem);margin:.45em 0 .2em}
.cl-poster--tall h3,.cl-poster--wide h3{font-size:clamp(1.9rem,3.4vw,3rem)}
.cl-poster h3 a,.cl-pano h3 a{text-decoration:none}
.cl-sub{color:var(--muted);margin:0;max-width:44ch;font-size:.98rem}
.cl-pair{margin:.6em 0 0;padding-left:10px;border-left:2px solid var(--accent);font-size:.92rem;color:var(--ink)}

/* resguardo de entrada: perforación y muescas */
.cl-stub{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 16px;padding:18px clamp(16px,2vw,24px) 20px;border-top:1px dashed var(--line-2)}
.cl-stub::before,.cl-stub::after{content:"";position:absolute;top:-10px;width:20px;height:20px;border-radius:50%;background:var(--bg);border:1px solid var(--line)}
.cl-stub::before{left:-11px}.cl-stub::after{right:-11px}
.cl-meta{grid-column:1/-1;margin:0;font:500 .76rem/1.3 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.cl-price{margin:0}
.cl-price .price{display:block;font:400 clamp(1.6rem,2.4vw,2rem)/1 var(--f-display)}
.cl-price small{display:block;margin-top:4px;font-size:.8rem;color:var(--muted)}
.cl-add{margin:0}
.cl-more{grid-column:1/-1;font-size:.92rem;color:var(--muted)}

/* temporada: cartel panorámico a todo el ancho */
.cl-night--temporada .cl-night-in{grid-template-columns:1fr}
.cl-night--temporada .cl-night-head{position:static;display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:24px;align-items:end}
.cl-night--temporada .cl-night-head .act{grid-row:span 4;align-self:center}
.cl-pano{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);background:var(--surface);border:1px solid var(--line-2);border-radius:var(--r-lg);overflow:hidden;
  box-shadow:0 0 0 6px var(--glow),0 40px 90px -50px rgba(242,181,68,.4)}
.cl-pano-img{position:relative;min-height:360px}
.cl-pano-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cl-pano-img::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 55%,var(--surface))}
.cl-pano-body{padding:clamp(20px,3.4vw,44px)}
.cl-pano h3{font-size:clamp(2rem,3.6vw,3.2rem);margin:.4em 0 .15em}
.cl-pano-list{list-style:none;margin:20px 0 8px;padding:0}
.cl-pano-list li{padding:6px 0;font-size:.98rem}
.cl-pano-list .price,.cl-pano-sum .price{color:var(--muted)}
.cl-pano-sum{margin:0 0 16px;padding-top:8px;border-top:1px solid var(--line);font-size:.95rem;color:var(--muted)}
.cl-stub--pano{margin:16px calc(-1 * clamp(20px,3.4vw,44px)) calc(-1 * clamp(20px,3.4vw,44px));padding-inline:clamp(20px,3.4vw,44px)}
.cl-stub--pano::before,.cl-stub--pano::after{background:var(--surface);border-color:var(--line-2)}

/* piezas sueltas: hoja de programa impresa */
.cl-sheet{background:var(--paper);color:var(--paper-ink);border-radius:var(--r);padding:clamp(20px,4vw,48px);box-shadow:0 40px 80px -50px rgba(0,0,0,.8);transform:rotate(-.35deg)}
.cl-sheet-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 16px;margin:0 0 8px;padding-bottom:12px;border-bottom:3px double var(--paper-ink);
  font:500 .76rem/1.3 var(--f-mono);letter-spacing:.12em;text-transform:uppercase}
.cl-sheet-head span{color:var(--paper-muted)}
.cl-pieces{list-style:none;margin:0;padding:0}
.cl-piece{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:8px 18px;align-items:center;padding:14px 0;border-bottom:1px solid var(--paper-line)}
.cl-piece img{width:64px;height:64px;border-radius:50%;object-fit:cover;filter:grayscale(.35)}
.cl-piece-line{margin:0;font:400 1.25rem/1.25 var(--f-display)}
.cl-piece-line .price{font:600 1rem/1 var(--f-body)}
.cl-piece-sub{margin:2px 0 0;font-size:.9rem;color:var(--paper-muted)}
.cl-sheet .dots::after{border-bottom-color:rgba(27,24,20,.4)}
.cl-sheet a{color:var(--paper-ink);text-decoration:none}
.cl-sheet a:hover{color:var(--paper-ink);text-decoration:underline;text-decoration-color:var(--paper-ink)}
.cl-sheet :focus-visible{outline-color:var(--paper-ink)}
.cl-piece-add{min-height:44px;padding:0 16px;border:1px solid var(--paper-ink);border-radius:var(--r);background:transparent;color:var(--paper-ink);font-weight:600;cursor:pointer;transition:background .2s,color .2s}
.cl-piece-add:hover{background:var(--paper-ink);color:var(--paper)}
.cl-sheet-foot{margin:16px 0 0;font-size:.88rem;color:var(--paper-muted)}

.cl-curtain{padding-block:clamp(56px,8vw,112px)}
.cl-curtain-in{text-align:center;padding:clamp(40px,7vw,96px) clamp(20px,5vw,64px);border-radius:var(--r-lg);border:1px solid var(--line);
  background:radial-gradient(ellipse 50% 70% at 50% 0,var(--glow),transparent 75%),repeating-linear-gradient(90deg,var(--bg-2) 0 26px,var(--surface) 26px 34px,var(--bg-2) 34px 52px)}
.cl-curtain-in .lead{margin-inline:auto}
.cl-curtain-in .btn{margin:8px 4px 0}

/* ============ FICHA DE FUNCIÓN ============ */
.fx-hero{position:relative;display:flex;align-items:flex-end;min-height:clamp(460px,74vh,780px);overflow:hidden;background:var(--bg-2)}
.fx-hero--pieza{min-height:clamp(380px,54vh,580px)}
.fx-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:fx-up 2.2s cubic-bezier(.2,.7,.2,1) both}
@keyframes fx-up{from{filter:brightness(.12) saturate(.4);transform:scale(1.07)}to{filter:brightness(1) saturate(.9);transform:scale(1)}}
.fx-veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,14,18,.55) 0%,rgba(12,14,18,.15) 25%,rgba(12,14,18,.78) 52%,rgba(12,14,18,.92) 74%,var(--bg) 100%),
  linear-gradient(90deg,rgba(12,14,18,.7),transparent 70%)}
.fx-hero-in{position:relative;z-index:1;width:100%;padding-block:clamp(96px,14vw,160px) clamp(32px,5vw,64px)}
.fx-hero h1{max-width:14ch;margin-bottom:.2em}
.fx-crumbs{margin-bottom:20px;font:500 .78rem/1.4 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.fx-crumbs a{text-decoration:none;color:var(--ink)}
.fx-sub{font-size:clamp(1.05rem,1.6vw,1.3rem);max-width:46ch;margin-bottom:20px}
.fx-marks{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.fx-marks .tag{background:rgba(12,14,18,.6);color:var(--ink)}

.fx-score{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:start;padding-block:clamp(40px,6vw,80px) clamp(56px,8vw,112px)}
.fx-side{position:sticky;top:88px}
.fx-ticket{background:var(--surface);border:1px solid var(--line-2);border-radius:var(--r-lg);padding:24px}
.fx-ticket-h{display:flex;justify-content:space-between;margin:0 0 14px;padding-bottom:12px;border-bottom:1px dashed var(--line-2);
  font:500 .76rem/1.2 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.fx-ticket-h span{color:var(--muted)}
.fx-price{margin:0;font:400 clamp(2.6rem,4.2vw,3.4rem)/1 var(--f-display);color:var(--accent)}
.fx-iva{margin:6px 0 0;font-size:.88rem;color:var(--muted)}
.fx-pair{margin:14px 0 0;padding-left:10px;border-left:2px solid var(--accent);font-size:.92rem}
.fx-get{display:grid;grid-template-columns:1fr 1fr;column-gap:16px;margin:20px 0 0}
.fx-get div{padding:8px 0;border-top:1px solid var(--line)}
.fx-get .fx-get-w{grid-column:1/-1}
.fx-get dt{font:500 .7rem/1.2 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.fx-get dd{margin:3px 0 0;font-size:.95rem}
.fx-buy{width:100%;margin-top:10px}
.fx-ticket>.fx-buy:first-of-type{margin-top:18px}
.fx-side form{margin:0}
.fx-note{margin:16px 0 0;font-size:.85rem;color:var(--muted)}
.fx-medida{margin:16px 0 0;font-size:.92rem}

.fx-flow>*+*{margin-top:clamp(56px,7vw,96px)}
.fx-pitch{position:relative;margin:0;padding-left:.9em;font:italic 300 clamp(1.55rem,2.8vw,2.35rem)/1.28 var(--f-display);font-variation-settings:"opsz" 96}
.fx-pitch::before{content:"«";position:absolute;left:-.1em;top:-.2em;font-size:2.4em;line-height:1;color:var(--accent);opacity:.55}
.fx-block h2{font-size:clamp(1.8rem,3.2vw,2.6rem)}

.fx-bundle{padding:clamp(20px,3vw,32px);border:1px solid var(--line-2);border-radius:var(--r-lg);background:radial-gradient(ellipse 80% 80% at 100% 0,var(--glow),transparent 70%),var(--bg-2)}
.fx-bundle-list{list-style:none;margin:8px 0;padding:0}
.fx-bundle-list li{padding:8px 0;border-bottom:1px solid var(--line)}
.fx-bundle-sep{margin:14px 0 4px;color:var(--muted)}
.fx-bundle-tot{margin:0;font:400 1.5rem/1.2 var(--f-display)}
.fx-bundle-tot .price{color:var(--accent)}
.fx-bundle-save{margin:12px 0 0;font-size:.92rem;color:var(--ok)}

.fx-timeline{list-style:none;margin:24px 0 0;padding:0}
.fx-timeline li{position:relative;padding:14px 0 14px 5.6rem;min-height:3.4rem}
.fx-timeline li::before{content:"";position:absolute;left:4.7rem;top:0;bottom:0;width:1px;background:var(--line-2)}
.fx-timeline li:first-child::before{top:24px}
.fx-timeline li:last-child::before{bottom:calc(100% - 24px)}
.fx-timeline li::after{content:"";position:absolute;left:calc(4.7rem - 5px);top:19px;width:11px;height:11px;border-radius:50%;background:var(--bg);border:1px solid var(--accent);transition:background .3s}
.fx-timeline li:hover::after{background:var(--accent)}
.fx-n{position:absolute;left:0;top:6px;width:3.9rem;text-align:right;font:italic 300 2rem/1 var(--f-display);color:var(--accent);opacity:.6}
.fx-u{display:block;font-size:1.08rem;padding-top:2px}

.fx-room{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:center}
.fx-needs{list-style:none;margin:16px 0 0;padding:0}
.fx-needs li{position:relative;padding:10px 0 10px 28px;border-bottom:1px solid var(--line)}
.fx-needs li::before{content:"—";position:absolute;left:0;color:var(--accent);font-family:var(--f-mono)}
.fx-plan{margin:0;display:grid;justify-items:center;gap:12px;width:min(100%,280px);justify-self:center}
.fx-plan-box{position:relative;width:calc(var(--w) / 4 * 100%);max-width:100%;aspect-ratio:var(--w) / var(--h);border:1px dashed var(--accent);border-radius:2px;
  background-image:linear-gradient(var(--line-2) 1px,transparent 1px),linear-gradient(90deg,var(--line-2) 1px,transparent 1px),radial-gradient(circle at 50% 50%,var(--glow),transparent 70%);
  background-size:calc(100% / var(--w)) calc(100% / var(--h)),calc(100% / var(--w)) calc(100% / var(--h)),100% 100%}
.fx-plan-dot{position:absolute;left:50%;top:50%;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:var(--accent);animation:glow 3s ease-in-out infinite}
.fx-plan figcaption{font:500 .78rem/1 var(--f-mono);letter-spacing:.14em;color:var(--muted)}

.fx-music{display:grid;grid-template-columns:auto minmax(0,1fr);gap:24px;align-items:center;padding:clamp(20px,3vw,32px);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-2)}
.fx-music .eyebrow{margin-bottom:.4rem}
.fx-eq{display:flex;align-items:flex-end;gap:5px;height:56px}
.fx-eq span{width:6px;height:100%;background:var(--accent);border-radius:1px;transform-origin:bottom;animation:fx-eq 1.1s ease-in-out infinite alternate}
.fx-eq span:nth-child(2){animation-delay:-.3s;animation-duration:.9s}.fx-eq span:nth-child(3){animation-delay:-.7s}
.fx-eq span:nth-child(4){animation-delay:-.1s;animation-duration:1.3s}.fx-eq span:nth-child(5){animation-delay:-.5s;animation-duration:.8s}
.fx-eq span:nth-child(6){animation-delay:-.9s}.fx-eq span:nth-child(7){animation-delay:-.2s;animation-duration:1.4s}
@keyframes fx-eq{from{transform:scaleY(.18)}to{transform:scaleY(1)}}
.fx-music-t{margin:0;font:400 clamp(1.15rem,1.8vw,1.4rem)/1.35 var(--f-display)}

.fx-paper{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,48px);padding:clamp(24px,4vw,48px);background:var(--paper);color:var(--paper-ink);border-radius:var(--r)}
.fx-paper h2{font-size:clamp(1.5rem,2.4vw,2rem)}
.fx-paper h2 em{color:var(--paper-ink)}
.fx-paper p{margin:0;font-size:1.05rem}
.fx-paper>div+div{padding-left:clamp(24px,4vw,48px);border-left:1px solid var(--paper-line)}

.fx-first{padding-top:32px;border-top:1px solid var(--line)}
.fx-first-cue{margin:0 0 10px;font:500 .76rem/1.2 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.fx-first h2{font-size:clamp(1.5rem,2.4vw,2rem)}
.fx-first p{color:var(--muted);max-width:56ch}

.fx-related{padding-block:clamp(48px,7vw,96px);border-top:1px solid var(--line)}
.fx-rel-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) minmax(0,1fr);gap:clamp(16px,2vw,28px);align-items:start;margin-top:24px}
.fx-rel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}
.fx-rel img{width:100%;aspect-ratio:4/3;object-fit:cover;filter:saturate(.85)}
.fx-rel:first-child img{aspect-ratio:4/3.6}
.fx-rel-body{padding:16px 18px 18px}
.fx-rel-g{margin:0 0 4px;font:500 .72rem/1.2 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.fx-rel h3{margin:0 0 8px}
.fx-rel h3 a{text-decoration:none}
.fx-rel .dots{margin:0;font-size:.9rem;color:var(--muted)}
.fx-rel .dots .price{color:var(--ink);font-weight:600}
.fx-missing{padding-block:clamp(80px,12vw,160px)}

/* ============ ARMA TU TEMPORADA ============ */
.am-head{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:end;padding-block:clamp(48px,7vw,96px) clamp(32px,4vw,48px)}
.am-head h1{margin-bottom:.25em}
.am-steps{list-style:none;margin:0;padding:0;border-left:1px solid var(--line-2)}
.am-steps li{display:flex;align-items:baseline;gap:.6em;padding:10px 0 10px 20px}
.am-steps span{min-width:1.8em;font:italic 400 1.4rem/1 var(--f-display);color:var(--accent)}

.am{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:clamp(24px,4vw,56px);align-items:start;padding-bottom:clamp(64px,8vw,112px)}
.am-set{min-width:0;margin:0 0 clamp(36px,5vw,56px);padding:0;border:0}
.am-set legend{display:flex;align-items:baseline;gap:.4em;padding:0;font:400 clamp(1.6rem,2.8vw,2.2rem)/1.1 var(--f-display)}
.am-set-n{font-style:italic;color:var(--accent);opacity:.6}
.am-set-lead{margin:.4em 0 18px;color:var(--muted)}
.am-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:16px}
.am-cards--list{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:10px}

.am-card{position:relative;display:flex;flex-direction:column;margin:0;font-weight:400;font-size:1rem;cursor:pointer;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--r-lg);overflow:hidden;transition:border-color .25s,box-shadow .35s,transform .25s}
.am-card:hover{border-color:var(--line-2);transform:translateY(-2px)}
.am-card input{position:absolute;top:14px;right:14px;width:28px;height:28px;margin:0;opacity:0;cursor:pointer}
.am-card img{width:100%;aspect-ratio:16/10;object-fit:cover;filter:grayscale(.55) brightness(.78);transition:filter .4s}
.am-card-body{display:grid;gap:4px;padding:14px 52px 16px 16px}
.am-name{font:400 1.25rem/1.2 var(--f-display)}
.am-meta{font-size:.88rem;color:var(--muted)}
.am-meta .price{color:var(--ink);font-weight:600}
.am-tick{position:absolute;top:14px;right:14px;width:28px;height:28px;border-radius:50%;border:1.5px solid var(--ink);background:rgba(12,14,18,.65);pointer-events:none}
.am-tick::after{content:"";position:absolute;left:9px;top:5px;width:7px;height:12px;border:solid var(--accent-ink);border-width:0 2px 2px 0;transform:rotate(45deg);opacity:0}
.am-card input:checked~.am-tick{background:var(--accent);border-color:var(--accent);animation:am-pop .35s cubic-bezier(.3,1.6,.5,1)}
.am-card input:checked~.am-tick::after{opacity:1}
.am-card input:checked~img{filter:none}
.am-card input:focus-visible~.am-tick{outline:2px solid var(--accent);outline-offset:3px}
.am-card:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 18px 50px -26px rgba(242,181,68,.5)}
.am-card:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:3px}
@keyframes am-pop{0%{transform:scale(.6)}60%{transform:scale(1.12)}100%{transform:scale(1)}}

.am-cards--list .am-card{flex-direction:row;align-items:center}
.am-cards--list .am-card img{flex:none;width:72px;height:72px;aspect-ratio:1;margin:10px 0 10px 10px;border-radius:var(--r)}
.am-cards--list .am-card-body{padding:10px 52px 10px 14px}
.am-cards--list .am-name{font-size:1.1rem}
.am-cards--list .am-tick,.am-cards--list .am-card input{top:50%;margin-top:-14px}

.am-season{padding:20px 24px;border:1px dashed var(--line-2);border-radius:var(--r-lg);background:radial-gradient(ellipse 70% 100% at 0 0,var(--glow),transparent 70%)}
.am-season .eyebrow{margin-bottom:.5rem}
.am-season-t{margin:0}

.am-board{position:sticky;top:88px}
.am-board-in{background:var(--paper);color:var(--paper-ink);border-radius:var(--r);padding:24px;box-shadow:0 40px 80px -50px rgba(0,0,0,.8)}
.am-board-h{margin:0 0 14px;padding-bottom:12px;border-bottom:3px double var(--paper-ink);font:500 .76rem/1.2 var(--f-mono);letter-spacing:.14em;text-transform:uppercase}
.am-total{margin:0}
.am-total-n{display:block;font:400 clamp(2.4rem,4vw,3.2rem)/1 var(--f-display)}
.am-total-c{display:block;margin-top:6px;font-size:.9rem;color:var(--paper-muted)}
.am-nojs{margin:10px 0 0;font-size:.85rem;color:var(--paper-muted)}
.js .am-nojs{display:none}
.am-list{list-style:none;margin:14px 0 0;padding:0;max-height:260px;overflow:auto}
.am-list li{padding:5px 0;font-size:.92rem;border-bottom:1px solid var(--paper-line)}
.am-list .dots::after,.am-board .dots::after{border-bottom-color:rgba(27,24,20,.4)}
.am-hint{margin:14px 0 0;padding:12px 14px;border-radius:var(--r);background:var(--paper-ink);color:var(--paper);font-size:.9rem;animation:am-pop .4s ease-out}
.am-hint a{color:var(--paper);text-decoration-color:var(--accent)}
.am-hint a:hover{color:var(--accent)}
.am-go{width:100%;margin-top:18px}
.am-board :focus-visible{outline-color:var(--paper-ink)}
.am-fine{margin:12px 0 0;font-size:.8rem;color:var(--paper-muted)}

/* ============ RESPONSIVE ============ */
@media (max-width:1000px){
  .cl-night-in,.cl-flip .cl-night-in{grid-template-columns:1fr}
  .cl-flip .cl-night-head{order:0}
  .cl-night-head{position:static}
  .cl-night-head .act{font-size:clamp(3rem,12vw,4.5rem)}
  .fx-score{grid-template-columns:1fr}
  .fx-side{position:static;max-width:520px}
  .am{grid-template-columns:1fr}
  .am-board{position:sticky;top:auto;bottom:0;z-index:40;margin-inline:calc(-1 * var(--gutter))}
  .am-board-in{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 16px;border-radius:var(--r-lg) var(--r-lg) 0 0;
    padding:12px 84px calc(12px + env(safe-area-inset-bottom,0px)) var(--gutter);box-shadow:0 -20px 50px -20px rgba(0,0,0,.7)}
  .am-board-h,.am-list,.am-fine,.am-nojs{display:none}
  .am-total-n{font-size:1.8rem}
  .am-total-c{font-size:.8rem;margin-top:2px}
  .am-hint{grid-column:1/-1;grid-row:2;margin:0;padding:8px 10px;font-size:.82rem}
  .am-go{width:auto;margin:0;grid-column:2;grid-row:1}
}
@media (max-width:760px){
  .cl-bill--2,.cl-bill--3{grid-template-columns:1fr}
  .cl-bill--2>:nth-child(2){margin-top:0}
  .cl-bill--3>:first-child{grid-row:auto}
  .cl-poster--tall .cl-poster-img{aspect-ratio:4/5}
  .cl-pano{grid-template-columns:1fr}
  .cl-pano-img{min-height:0;aspect-ratio:16/10}
  .cl-pano-img::after{background:linear-gradient(180deg,transparent 55%,var(--surface))}
  .cl-night--temporada .cl-night-head{grid-template-columns:1fr}
  .cl-night--temporada .cl-night-head .act{grid-row:auto}
  .cl-sheet{transform:none}
  .fx-room,.fx-paper{grid-template-columns:1fr}
  .fx-paper>div+div{padding-left:0;padding-top:24px;border-left:0;border-top:1px solid var(--paper-line)}
  .fx-rel-grid{grid-template-columns:1fr}
  .fx-rel:first-child img{aspect-ratio:4/3}
  .am-head{grid-template-columns:1fr}
}
@media (max-width:520px){
  .cl-chips{display:grid;grid-template-columns:1fr 1fr;gap:6px}
  .cl-chips a{border-radius:var(--r);padding:.5em .7em;font-size:.7rem;letter-spacing:.04em}
  .cl-piece{grid-template-columns:48px minmax(0,1fr);gap:6px 14px}
  .cl-piece img{width:48px;height:48px}
  .cl-piece .cl-add{grid-column:2;justify-self:start}
  .cl-stub{grid-template-columns:1fr}
  .cl-stub .cl-add .btn{width:100%}
  .fx-timeline li{padding-left:4.2rem}
  .fx-timeline li::before{left:3.4rem}
  .fx-timeline li::after{left:calc(3.4rem - 5px)}
  .fx-n{width:2.7rem;font-size:1.6rem}
  .fx-music{grid-template-columns:1fr}
  .am-board-in{padding-right:80px}
  .am-go{min-height:44px;padding:.6em .9em;font-size:.9rem}
  .am-go-long{display:none}
}
