/* Utility non presenti nel bundle catturato (Tailwind include solo le classi usate dal prototipo) */
.py-16{padding-block:4rem}
.w-12{width:3rem}
.w-\[220px\]{width:220px}
.hover\:border-yellow\/40:hover{border-color:color-mix(in oklab, var(--yellow) 40%, transparent)}
.bottom-3{bottom:calc(var(--spacing) * 3)}
.pr-16{padding-right:calc(var(--spacing) * 16)}
.h-11{height:calc(var(--spacing) * 11)}
.w-40{width:calc(var(--spacing) * 40)}
.max-w-3xl{max-width:48rem} /* --container-3xl non è tra le var esportate */
.self-start{align-self:flex-start} /* hero scheda: il riquadro immagine non si stira all'altezza del testo */
@media (min-width:64rem){
  .lg\:flex-row{flex-direction:row}
  .lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (min-width:80rem){
  .xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .xl\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}
  .xl\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))} /* ultime uscite streaming: 12 poster in 2 righe */
  .xl\:inline-flex{display:inline-flex} /* pill piattaforme nel nav: solo da xl, a lg le 11 voci non ci stanno */
}
/* minimo indispensabile del plugin Typography, mai esportato (descrizioni in single-programma) */
.prose p{margin:0 0 1em}
.prose p:last-child{margin-bottom:0}
.prose-invert{color:inherit}
/* Logo lockup: altezza fissa nell'header, scambio automatico dark/light */
.stv-logo{height:2.5rem;width:auto;display:block}
html.dark .stv-logo--light{display:none}
html:not(.dark) .stv-logo--dark{display:none}
footer .stv-logo{height:2.25rem}

/* Placeholder per-genere delle card senza locandina: gradiente desaturato
   + iniziale del titolo in filigrana. Sta SOTTO l'overlay nero delle card,
   quindi i toni sono scuri e funzionano in entrambi i temi. */
.stv-ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden}
.stv-ph-letter{font-size:5.5rem;line-height:1;font-weight:900;color:rgba(255,255,255,.10);transform:rotate(-6deg) translateY(-10%);user-select:none}
.stv-ph--film{background:linear-gradient(135deg,#2b2140,#4a2b63)}
.stv-ph--serie{background:linear-gradient(135deg,#12303b,#1d4a56)}
.stv-ph--sport{background:linear-gradient(135deg,#0f3524,#1c5238)}
.stv-ph--kids{background:linear-gradient(135deg,#4a2e14,#7a4420)}
.stv-ph--doc{background:linear-gradient(135deg,#3a3020,#5c4a2a)}
.stv-ph--news{background:linear-gradient(135deg,#262c36,#3a4552)}
.stv-ph--tv{background:linear-gradient(135deg,#26242e,#3b3746)}

/* select nativa coerente col tema scuro */
select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2.25rem}
