[data-ui=upcoming]{display:block}:where([data-ui=upcoming]) .upcoming-banner{background:var(--color-bg-deep);align-items:flex-end;height:clamp(15rem,34vh,24rem);min-height:14rem;display:flex;position:relative;overflow:hidden}:where([data-ui=upcoming]) .upcoming-banner-img{object-fit:cover;opacity:.82;width:100%;height:100%;transition:opacity .32s ease-out;position:absolute;inset:0}:where([data-ui=upcoming]) .upcoming-banner-overlay{background:linear-gradient(to top, var(--color-bg) 0%, #0d0c0f66 42%, #05050829 100%);position:absolute;inset:0}:where([data-ui=upcoming]) .upcoming-banner-inner{width:min(100%, var(--max-screen));margin:0 auto;padding:0 clamp(1.25rem,7vw,6rem) 2.5rem;position:relative}:where([data-ui=upcoming]) .upcoming-banner-inner h4,:where([data-ui=upcoming]) .upcoming-banner-inner h1{letter-spacing:-.04em;margin:0;font-size:clamp(1.6rem,4vw,2.6rem);line-height:1.1}:where([data-ui=upcoming]) .upcoming-banner-inner p{max-width:46rem;color:var(--color-text-muted);font-family:var(--font-secondary);margin:.75rem 0 0}:where([data-ui=upcoming]) .upcoming-container{width:min(100%, var(--max-screen));margin:0 auto;padding:3rem clamp(1.25rem,7vw,6rem) 4rem}:where([data-ui=upcoming]) .partial-warning{border-left:3px solid var(--color-rating);background:rgb(var(--color-primary-rgb) / 10%);color:var(--color-primary-light);margin:0 0 1rem;padding:.75rem 1rem;font-size:.85rem}:where([data-ui=upcoming]) .upcoming-section-header{margin-bottom:2rem}:where([data-ui=upcoming]) .upcoming-section-header h2{letter-spacing:-.03em;margin:0;font-size:clamp(1.5rem,3vw,2rem)}:where([data-ui=upcoming]) .upcoming-month{margin-bottom:2.5rem}:where([data-ui=upcoming]) .upcoming-month-title{border-bottom:1px solid var(--color-border);letter-spacing:.1em;text-transform:uppercase;margin:0 0 1rem;padding-bottom:.75rem;font-size:1.05rem;font-weight:700}:where([data-ui=upcoming]) .upcoming-grid,:where([data-ui=upcoming]) .upcoming-loading{grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));gap:1.1rem;display:grid}:where([data-ui=upcoming]) .upcoming-card{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:.75rem;flex-direction:column;min-width:0;transition:transform .18s ease-out,border-color .18s ease-out,box-shadow .18s ease-out;display:flex;position:relative;overflow:hidden}:where([data-ui=upcoming]) .upcoming-card:hover,:where([data-ui=upcoming]) .upcoming-card:focus-visible{border-color:var(--color-primary);box-shadow:0 .75rem 1.75rem #02020373, 0 0 .8rem rgb(var(--color-primary-rgb) / 15%);transform:translateY(-3px)}:where([data-ui=upcoming]) .upcoming-date{z-index:2;background:var(--panel-bg);min-width:3rem;color:var(--color-primary-light);border-radius:.5rem;flex-direction:column;align-items:center;padding:.3rem .4rem;display:flex;position:absolute;top:.6rem;left:.6rem}:where([data-ui=upcoming]) .upcoming-day{font-size:1.15rem;font-weight:700;line-height:1.1}:where([data-ui=upcoming]) .upcoming-day-label{letter-spacing:.08em;font-size:.6rem;font-weight:700}:where([data-ui=upcoming]) .upcoming-thumb{aspect-ratio:2/3;background:linear-gradient(180deg, var(--color-surface-raised), var(--color-bg-deep));justify-content:center;align-items:center;display:flex;position:relative}:where([data-ui=upcoming]) .upcoming-thumb img{object-fit:cover;width:100%;height:100%}:where([data-ui=upcoming]) .upcoming-thumb-fallback{color:var(--color-text-subtle);font-size:2.5rem;font-weight:700}:where([data-ui=upcoming]) .upcoming-info{flex-direction:column;flex:1;min-width:0;padding:.75rem;display:flex}:where([data-ui=upcoming]) .upcoming-name{text-overflow:ellipsis;white-space:nowrap;font-weight:700;line-height:1.35;overflow:hidden}:where([data-ui=upcoming]) .upcoming-original{color:var(--color-text-muted);font-family:var(--font-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}:where([data-ui=upcoming]) .upcoming-meta{color:var(--color-text-muted);font-variant-numeric:tabular-nums;align-items:center;gap:.4rem;margin-top:auto;padding-top:.5rem;font-size:.82rem;display:flex}:where([data-ui=upcoming]) .upcoming-meta-icon{width:.95rem;height:.95rem;color:var(--color-primary-light);flex-shrink:0}:where([data-ui=upcoming]) .upcoming-chevron{width:1.2rem;height:1.2rem;color:var(--color-text-subtle);transition:transform .18s ease-out;position:absolute;bottom:.6rem;right:.6rem}:where([data-ui=upcoming]) .upcoming-card:hover .upcoming-chevron{color:var(--color-primary-light);transform:translate(2px)}:where([data-ui=upcoming]) .upcoming-skeleton{background:linear-gradient(90deg, var(--color-surface) 25%, var(--color-surface-raised) 50%, var(--color-surface) 75%);background-size:200% 100%;border-radius:.75rem;height:22rem;animation:1.4s ease-in-out infinite upcoming-shimmer}@keyframes upcoming-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}:where([data-ui=upcoming]) .upcoming-empty{color:var(--color-text-muted);text-align:center;flex-direction:column;align-items:center;padding:4rem 1rem;display:flex}:where([data-ui=upcoming]) .upcoming-empty-icon{border:1px dashed var(--color-border);width:3rem;height:3rem;color:var(--color-text-subtle);border-radius:50%;place-items:center;font-size:1.6rem;display:grid}:where([data-ui=upcoming]) .upcoming-empty h3{color:var(--color-text);margin:1rem 0 0}:where([data-ui=upcoming]) .upcoming-empty p{font-family:var(--font-secondary);margin:.5rem 0 0}:where([data-ui=upcoming]) .trailer-overlay{z-index:50;background:#020203c7;justify-content:center;align-items:center;padding:1.25rem;display:flex;position:fixed;inset:0}:where([data-ui=upcoming]) .trailer-dialog{background:var(--color-surface);width:min(100%,52rem);box-shadow:0 1.5rem 4rem #0000008c, 0 0 1rem rgb(var(--color-primary-rgb) / 10%);border:1px solid #ffffff14;border-radius:1rem;overflow:hidden}:where([data-ui=upcoming]) .trailer-head{justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}:where([data-ui=upcoming]) .trailer-title{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1.05rem;overflow:hidden}:where([data-ui=upcoming]) .trailer-close{border:1px solid var(--color-border);width:2.25rem;height:2.25rem;color:var(--color-text-muted);cursor:pointer;background:0 0;border-radius:50%;flex-shrink:0;place-items:center;transition:background .16s ease-out,color .16s ease-out;display:grid}:where([data-ui=upcoming]) .trailer-close:hover{background:var(--color-surface-raised);color:var(--color-text);box-shadow:0 0 .5rem rgb(var(--color-primary-rgb) / 15%)}:where([data-ui=upcoming]) .trailer-frame{aspect-ratio:16/9;background:var(--color-bg-deep);position:relative}:where([data-ui=upcoming]) .trailer-frame iframe{border:0;width:100%;height:100%}:where([data-ui=upcoming]) .trailer-note{color:var(--color-text-muted);text-align:center;padding:3rem 1.25rem}:where([data-ui=upcoming]) .trailer-note-wrap{text-align:center;padding:3rem 1.25rem}:where([data-ui=upcoming]) .trailer-note-wrap h4{margin:0}:where([data-ui=upcoming]) .trailer-note-wrap p{color:var(--color-text-muted);font-family:var(--font-secondary);margin:.5rem 0 0}@media (prefers-reduced-motion:reduce){:where([data-ui=upcoming]) .upcoming-skeleton{animation:none}:where([data-ui=upcoming]) .upcoming-card{transition:none}}@media (width<=40rem){:where([data-ui=upcoming]) .upcoming-banner{height:13rem}:where([data-ui=upcoming]) .upcoming-container{padding-top:2rem}}
