/* Approved theater shell and staged page presentations. */
:root{--bg:#101d19;--panel:#1a2923;--ink:#f2e7d4;--muted:#b9bcb0;--line:#596451;--blue:#f2e7d4;--button:#f2e7d4;--brass:#bca170;--burgundy:#48232c;--display:Georgia,"Times New Roman",serif;font-family:"Segoe UI",Arial,sans-serif}
body.theater{background:var(--bg);color:var(--ink)}
.theater main{max-width:1216px;margin:0 auto;padding:0 20px calc(var(--nav-footprint,112px) + 100px)}
.theater .topbar{max-width:1216px;height:78px;padding:20px 24px 14px;gap:12px}
.theater .topbar .wordmark{font-family:var(--display);font-weight:400;font-size:34px;line-height:1;letter-spacing:-1.4px;min-height:44px;min-width:44px;width:auto;max-width:none;padding:0;gap:0;color:var(--ink);background:none;border:0;border-radius:0;justify-content:flex-start;flex:0 0 auto}
.theater .topbar .brand-dot{font-family:Georgia,serif;color:var(--brass);font-size:23px;margin-left:7px;vertical-align:middle}
.theater .topbar .header-add{font-size:12px;font-weight:400;min-height:44px;min-width:44px;padding:0 3px;gap:0;border:0;border-radius:0;background:transparent;color:var(--ink);flex:0 0 auto}
.theater .header-add-label{display:inline-flex;align-items:center;gap:5px;line-height:20px;transform:translateY(2px)}
.theater #sync-status{max-width:1216px;margin:0 auto 12px;padding:0 24px;color:var(--muted);font-size:12px}
.theater #sync-status:empty{display:none}
.theater .sample-banner{margin-bottom:20px;background:#494329;color:#f2e3b9}
.theater .app-button{background:var(--button);color:var(--bg)}
.theater .app-button.secondary{background:transparent;color:var(--ink);border-color:#a6ad9680}
.theater .title-card.app-button,.theater .text-button.app-button,.theater .genre-pill.app-button{background:transparent;color:var(--ink)}
.theater .app-button.destructive{background:#812d3e;color:#fff;border-color:#ffb2bd}
.theater .panel,.theater .quiet-card{background:var(--panel)}
.theater .empty{background:linear-gradient(145deg,#24372c,var(--bg));border-color:var(--line)}
.theater .dropdown-menu{background:var(--panel);border-color:var(--line)}
.theater .dropdown-option{color:var(--ink);background:transparent}
.theater .dropdown-option[aria-selected=true]{background:#34453a}
.theater .filter-control,.theater input,.theater select{background:#15251e;color:var(--ink);border-color:#69745f}
.theater .poster-placeholder:not(.theater-poster){background:linear-gradient(145deg,#2d4437,#17291f);border-color:#64725d}
.theater .genre-pill>span{background:#24332b;color:var(--ink);border-color:#77816a70}
.theater .tag{color:var(--ink)}
.theater #notice{background:var(--ink);color:var(--bg)}

/* Navigation remains quiet despite the shared .app-button defaults. */
.theater .bottom-nav{width:calc(100% - 30px);max-width:500px;bottom:max(16px,env(safe-area-inset-bottom));gap:4px;padding:7px;border:1px solid #72806c66;border-radius:21px;background:#203029;box-shadow:0 6px 18px #0005}
.theater .bottom-nav .app-button{display:flex;flex:1;min-width:0;max-width:none;min-height:57px;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:6px 3px;border:0;border-radius:14px;background:transparent;color:#c2c7bc;font-size:11px;font-weight:400}
.theater .bottom-nav .app-button[aria-current=page]{background:#34453a;color:var(--ink)}
.theater .nav-icon{display:block;width:20px;height:20px;font-size:20px;line-height:1}
.theater .nav-icon svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.theater .nav-scrim{height:calc(var(--nav-footprint,112px) + 72px);background:linear-gradient(to top,var(--bg) 0%,var(--bg) 48%,#101d19d9 68%,#101d1900 100%);pointer-events:none}
.theater .nav-scrim::before{content:"";position:absolute;inset:0;pointer-events:none}
.theater[data-page=auth] .nav-scrim{display:none}
@supports ((backdrop-filter:blur(6px)) or (-webkit-backdrop-filter:blur(6px))){
 .theater .bottom-nav{background:#203029ed;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
 .theater .nav-scrim::before{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);-webkit-mask-image:linear-gradient(to top,#000 35%,transparent);mask-image:linear-gradient(to top,#000 35%,transparent)}
}
@media(prefers-reduced-transparency:reduce){
 .theater .bottom-nav{background:#203029;-webkit-backdrop-filter:none;backdrop-filter:none}
 .theater .nav-scrim::before{-webkit-backdrop-filter:none;backdrop-filter:none}
}

/* Home opts into the new geometry; other tab content is not redesigned here. */
.theater-home .theater-feature{max-width:640px;margin:0 auto;border:1px solid #92784d;border-radius:5px;overflow:hidden;background:linear-gradient(160deg,#542a32,var(--burgundy) 40%,#201f1c)}
.theater-home .feature-label{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:12px;padding:16px 16px 13px;font-size:11px;font-weight:600;letter-spacing:2.1px;text-transform:uppercase}
.theater-home .feature-label::before,.theater-home .feature-label::after{content:"";width:24px;height:1px;background:var(--brass);opacity:.65}
.theater-home .feature-presentation{height:306px;position:relative;display:flex;align-items:center;justify-content:center;isolation:isolate}
/* Extend scenery into the banner and fade both ends; keep text and frame sharp. */
.theater-home .feature-presentation::before,.theater-home .feature-presentation::after{content:"";position:absolute;pointer-events:none;z-index:-1;mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 55%,transparent 100%)}
.theater-home .feature-presentation::before{inset:-46px 0 0;background:radial-gradient(ellipse at 50% 30%,#94624433,transparent 65%),linear-gradient(90deg,#291d20,#57313a 30%,#57313a 70%,#291d20)}
.theater-home .feature-presentation::after{inset:-38px 30px 0;background:linear-gradient(transparent,#bca17080,transparent) left top/1px 100% no-repeat,linear-gradient(transparent,#bca17080,transparent) right top/1px 100% no-repeat}
.theater-home .marquee-frame.app-button{position:relative;display:block;width:200px;max-width:calc(100% - 36px);height:294px;min-height:0;padding:5px;border:1px solid #c8ac79;border-radius:0;background:#352e24;box-shadow:0 0 0 4px #201d1b,0 0 0 5px #a98b5866,0 12px 24px #0007;overflow:visible}
.theater-home .marquee-frame::before{content:"";position:absolute;inset:-6px;pointer-events:none;background:radial-gradient(circle at 0 0,#f4dba1 0 1.5px,transparent 3px),radial-gradient(circle at 100% 0,#f4dba1 0 1.5px,transparent 3px),radial-gradient(circle at 0 100%,#f4dba1 0 1.5px,transparent 3px),radial-gradient(circle at 100% 100%,#f4dba1 0 1.5px,transparent 3px)}
.theater-home .feature-copy{padding:14px 20px 15px;text-align:center}
.theater-home .feature-copy h1{font:400 38px/1.08 var(--display);letter-spacing:-.6px;overflow-wrap:anywhere;margin:0}
.theater-home .feature-meta{font-size:12px;color:#d1c7bb;margin:9px 0 0}
.theater-home .feature-copy .genre-pills{justify-content:center;gap:0 7px;margin-top:4px}
.theater-home .genre-pill{font-size:11px;font-weight:400}
.theater-home .genre-pill>span{padding:5px 11px;border-radius:7px;background:#242b27;border:1px solid #8b79744d}
.theater-home .feature-copy .feature-details.app-button{width:112px;min-height:44px;padding:8px;margin:6px auto 0;gap:6px;border:1px solid var(--ink);border-radius:8px;background:var(--ink);color:var(--bg);font-size:12px;font-weight:600}
.theater-home .details-icon{display:inline-flex;align-items:center;justify-content:center;width:13px;height:13px;border:1px solid currentColor;border-radius:50%;font:11px/1 Georgia,serif}
.theater-home .home-row{margin-top:26px}
.theater-home .home-row .section-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:0 0 13px;flex-wrap:nowrap}
.theater-home .section-heading h2{font:400 25px/1.15 var(--display);letter-spacing:-.25px;min-width:0;overflow-wrap:anywhere}
.theater-home .section-heading .app-button{min-height:44px;padding:9px 0 9px 10px;background:transparent;color:var(--ink);border:0;font-size:12px;font-weight:400;white-space:nowrap}
.theater-home .poster-rail{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:clamp(118px,calc((100vw - 72px)/2.4),160px);gap:13px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-padding-inline:0;padding-bottom:16px;touch-action:pan-x pan-y}
.theater-home .poster-rail::-webkit-scrollbar{display:none}
.theater-home .title-card.app-button{display:block;align-self:start;min-width:0;min-height:0;width:100%;padding:0;gap:0;border:0;border-radius:0;background:none;box-shadow:none;color:var(--ink);text-align:left;font-weight:400;scroll-snap-align:start}
.theater-home .title-card h3{font:500 13px/1.35 "Segoe UI",Arial,sans-serif;margin:10px 0 3px;overflow-wrap:anywhere}
.theater-home .title-card p{font-size:11px;color:var(--muted)}
.theater-poster{position:relative;padding:0;isolation:isolate;aspect-ratio:2/3;background:radial-gradient(ellipse at 50% 0,#3c5140,transparent 80%),#1e3027;border:1px solid #78827440;border-radius:5px;box-shadow:0 6px 14px #0003;overflow:hidden}
.theater-poster .poster-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:16px 10px;text-align:center}
.theater-poster .poster-fallback::before{content:"";position:absolute;inset:9px;border:1px solid #bca17040;pointer-events:none}
.theater-poster .poster-monogram{font:400 32px/1 var(--display);color:var(--brass)}
.theater-poster .poster-fallback-title{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;font:400 26px/1.1 var(--display);color:var(--ink);max-width:100%}
.theater-poster .poster-fallback small{font:400 10px/1.4 "Segoe UI",Arial,sans-serif;color:#c3c5b7;margin:0}
.theater-poster:has(>.poster-art) .poster-fallback{visibility:hidden}
.theater-poster>.poster-art{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;border-radius:0}
.theater-poster>.theater-format{position:absolute;bottom:7px;left:7px;z-index:1;padding:3px 7px;max-width:calc(100% - 14px);border:1px solid #6f796b80;border-radius:4px;background:#26342c;color:var(--ink);font:600 10px/1.4 "Segoe UI",Arial,sans-serif}
.theater .theater-poster:has(>.poster-art)>.theater-format{display:block}
.theater-home .marquee-frame .theater-poster{width:100%;height:100%;border:0;border-radius:0;background:radial-gradient(ellipse at 50% 0,#70454d,transparent 90%),#39252b;box-shadow:none}
.theater-home .marquee-frame .poster-fallback-title{font-size:31px}
.theater-home .wishlist-door.app-button{display:block;text-align:left;width:100%;margin:26px 0 0;white-space:normal;background:var(--panel);color:var(--ink);padding:24px;border:1px solid var(--line);border-radius:12px}
.theater-home .wishlist-door h2{font:400 26px/1.2 var(--display)}
.theater-home .theater-empty h1{font-family:var(--display);font-weight:400}
.theater-home .theater-empty .app-button{margin-top:20px}
@media(max-width:370px){
 .theater main{padding-left:16px;padding-right:16px}
 .theater .topbar{padding-left:20px;padding-right:20px}
 .theater-home .feature-copy{padding-left:13px;padding-right:13px}
 .theater-home .feature-copy h1{font-size:34px}
 .theater-home .poster-fallback-title{font-size:23px}
}
@media(prefers-reduced-motion:reduce){
 .theater *{scroll-behavior:auto!important}
 .theater button,.theater .button{transition:none}
 .theater button:active,.theater .button:active{transform:none}
}

/* Library: quiet controls, dense shelves, and a separate compact reading view. */
.library-shelf{max-width:960px;margin:0 auto}
.library-shelf .filters{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin:0}
.library-shelf .filters>label:first-child{grid-column:auto}
.library-shelf label{min-width:0;font-size:12px;font-weight:400;color:var(--muted);gap:6px}
.library-shelf input,.library-shelf .dropdown-trigger{width:100%;min-width:0;min-height:44px;height:44px;border:1px solid #69745f80;border-radius:9px;background:#1a2923;color:var(--ink);font-size:13px;font-weight:400;padding:10px 12px}
.library-shelf .library-main-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.library-shelf .dropdown-trigger{gap:4px}
.library-shelf .dropdown-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.library-shelf .library-filter-actions{display:flex;flex-wrap:wrap;gap:4px 16px}
.library-shelf .library-filter-actions .app-button{width:auto;min-height:44px;padding:8px 0;border:0;background:transparent;color:var(--muted);font-size:12px;font-weight:400}
.library-shelf .filter-extra{grid-column:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px;border:1px solid #69745f60;border-radius:12px;background:var(--panel)}
.library-shelf .library-view-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0 18px;border-top:1px solid #bca17040}
.library-shelf .library-view-row p{margin:0;font-size:12px;color:var(--muted)}
.library-shelf .library-view-row label{display:flex;align-items:center;gap:8px}
.library-shelf .library-view-row .dropdown-trigger{width:142px;background:transparent;border-color:#69745f60}
.library-shelf .library-chips{gap:8px}
.library-shelf input::placeholder{color:#a4b0a4;opacity:1}
.library-shelf .library-chips .app-button{flex:0 1 auto;width:auto;max-width:100%;min-height:44px;padding:8px 12px;font-size:12px;font-weight:400;border-radius:22px;background:#24332b;border-color:#69745f80;color:var(--ink)}
.library-shelf .catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 12px}
.library-shelf .catalog .title-card{display:block;padding:0;min-width:0;min-height:0;border:0;border-radius:0;background:transparent;text-align:left;font-weight:400}
.library-shelf .title-card h2{font:500 13px/1.35 "Segoe UI",Arial,sans-serif;margin:9px 0 3px;overflow-wrap:anywhere}
.library-shelf .title-card p{font-size:11px;color:var(--muted);margin:0}
.library-shelf .theater-poster{padding:0}
.library-shelf .poster-fallback{gap:8px;padding:14px 8px 30px}
.library-shelf .poster-monogram{font-size:24px}
.library-shelf .poster-fallback-title{font-size:19px}
.library-shelf .poster-fallback small{font-size:9px}
.library-shelf .catalog.compact{display:grid;grid-template-columns:1fr;gap:0}
.library-shelf .catalog.compact .title-card{display:grid;grid-template-columns:60px minmax(0,1fr);grid-template-rows:auto auto;column-gap:16px;row-gap:4px;margin:0;padding:14px 0;border-bottom:1px solid #69745f40}
.library-shelf .compact .theater-poster{grid-column:1;grid-row:1/3;width:60px;padding:0}
.library-shelf .compact h2{grid-column:2;align-self:end;margin:0;font-size:14px}
.library-shelf .compact .title-card p{grid-column:2;align-self:start}
.library-shelf .compact .poster-monogram{font-size:18px;display:block}
.library-shelf .compact .poster-fallback-title,.library-shelf .compact .poster-fallback small{display:none}
.library-shelf .compact .theater-format{display:block;left:3px;bottom:3px;padding:2px 3px;font-size:8px;max-width:calc(100% - 6px)}
.library-shelf .empty h2{font:400 27px/1.2 var(--display)}
.library-shelf .empty p{font-size:14px;color:var(--muted);line-height:1.6}
@media(min-width:600px){.library-shelf .catalog{grid-template-columns:repeat(4,minmax(0,1fr));gap:26px 18px}.library-shelf .poster-fallback-title{font-size:25px}}
@media(min-width:1000px){.library-shelf .catalog{grid-template-columns:repeat(5,minmax(0,1fr))}}

/* Consistent content separation on the reviewed Home and Library pages. */
.theater-home,.library-compact-controls{border-top:1px solid #bca17038;padding-top:14px}
.library-shelf .visually-hidden,.library-sort label>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.library-compact-controls .filters{gap:8px}
.library-compact-controls .library-search{display:block}
.library-compact-controls .library-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:12px}
.library-compact-controls .library-toolbar .app-button{min-height:44px;padding:8px 12px;background:transparent;color:var(--ink);font-size:12px;font-weight:400;border:1px solid #69745f70;border-radius:8px;width:auto}
.library-compact-controls .library-sort{min-width:0;flex:1;max-width:180px}
.library-compact-controls .library-sort label{display:flex;align-items:center;gap:6px;font-size:11px}
.library-compact-controls .library-sort .dropdown-trigger{display:block;flex:1;min-width:0;width:auto;padding:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}
.library-compact-controls .library-toolbar p{margin:0 0 0 auto;white-space:nowrap;font-size:11px;color:var(--muted)}
.library-compact-controls .library-toolbar .library-view-toggle{flex:0 0 44px;width:44px;padding:10px}
.library-view-toggle svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.library-filter-footer{display:flex;flex-wrap:wrap;gap:12px}
.library-filter-footer:not(:has(button:not([hidden]))){display:none}
.library-applied{display:flex;align-items:flex-start;gap:8px;margin-bottom:16px}
.library-applied:not(:has([data-filter-chips]:not(:empty))){display:none}
.library-shelf .library-applied .library-chips{flex:1;margin:0}
.library-shelf .library-applied>[data-clear]{flex:0 0 auto;min-height:44px;width:auto;padding:8px 0;background:none;color:var(--muted);border:0;font-size:11px;font-weight:400}
.library-compact-controls .library-filter-footer .app-button{min-height:44px;width:auto;background:none;color:var(--muted);border:0;font-size:12px;padding:8px 0}
.library-filter-sheet{position:fixed;inset:auto 0 0;margin:0 auto;width:min(600px,100%);max-height:85dvh;padding:0;border:1px solid #69745f80;border-bottom:0;border-radius:22px 22px 0 0;background:var(--panel);color:var(--ink);overflow:auto;overscroll-behavior:contain;box-sizing:border-box}
.library-filter-sheet::backdrop{background:#07110dcc}
body:has(.library-filter-sheet[open]){overflow:hidden}
.library-filter-sheet header{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;background:var(--panel);border-bottom:1px solid #bca17038}
.library-filter-sheet h2{font:400 25px/1.2 var(--display);margin:0}
.library-shelf .library-filter-sheet .app-button{min-height:44px;width:auto;font-size:13px;font-weight:400}
.library-filter-sheet header .app-button{padding:8px;background:transparent;color:var(--muted);border:0}
.library-sheet-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:20px}
.library-filter-sheet footer{position:sticky;bottom:0;display:flex;justify-content:space-between;gap:16px;padding:14px 20px max(18px,env(safe-area-inset-bottom));border-top:1px solid #bca17038;background:var(--panel)}
.library-filter-sheet footer [data-sheet-apply]{min-width:150px}
.library-filter-sheet .dropdown-menu{border-color:var(--line)}
@media(max-width:350px){.library-compact-controls .library-toolbar{gap:5px}.library-compact-controls .library-toolbar .app-button{padding:8px}.library-compact-controls .library-sort label{font-size:10px;gap:3px}}

/* Movie details only. TV keeps its existing season layout until reviewed. */
.movie-detail{max-width:800px;margin:0 auto;border-top:1px solid #bca17038;padding-top:10px}
.movie-detail>#back.app-button{min-height:44px;width:auto;padding:8px 0;background:none;border:0;color:var(--muted);font-size:12px;font-weight:400;margin-bottom:10px}
.movie-detail .detail-header{margin:0 0 22px;padding:20px 16px;background:linear-gradient(145deg,#48232c,#302326 65%,#1a2923);border:1px solid #bca17038;border-radius:6px}
.movie-detail .detail-layout{grid-template-columns:112px minmax(0,1fr);align-items:center;gap:18px;margin:0}
.movie-detail .detail-layout>.detail-poster{width:112px;align-self:start}
.movie-detail .detail-poster .theater-poster{width:100%;padding:0;border-radius:4px}
.movie-detail .detail-layout>.detail-copy{width:auto;max-width:none;align-self:center}
.movie-detail .detail-copy h1{display:block;overflow:visible;overflow-wrap:anywhere;font:400 30px/1.08 var(--display);letter-spacing:-.4px;margin:0 0 10px}
.movie-detail .detail-copy .detail-meta{font-size:11px;line-height:1.65;color:#d1c7bb;margin:0 0 8px}
.movie-detail .genre-pills{gap:0 6px;margin:0}
.movie-detail .genre-pill.app-button{min-height:44px;min-width:0;padding:0;font-size:10px;font-weight:400}
.movie-detail .genre-pill>span{padding:5px 8px;border-radius:6px;background:#27332c;border-color:#89756766}
.movie-detail .poster-fallback{padding:12px 8px 30px;gap:8px}
.movie-detail .poster-monogram{font-size:25px}
.movie-detail .poster-fallback-title{font-size:20px}
.movie-detail .poster-fallback small{font-size:9px}
.movie-detail #detail-watch{margin:0 0 24px}
.movie-detail .movie-rating-heading{font:400 22px/1.2 var(--display);margin:0}
.movie-detail .movie-rating-top{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.movie-detail #detail-watch .current-rating{margin:0;color:var(--muted);font-size:11px}
.movie-detail .movie-rating-top [data-clear]{margin-left:auto;width:auto;min-height:44px;padding:8px 0;border:0;background:none;color:var(--muted);font-size:11px;font-weight:400}
.movie-detail #detail-watch .rating-chips{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}
.movie-detail #detail-watch .rating-chips [data-rating]{display:flex;justify-content:center;gap:6px;min-width:0;min-height:44px;padding:8px 6px;font-size:11px;font-weight:400;border:1px solid #69745f80;border-radius:8px;background:var(--panel);color:var(--ink)}
.movie-detail #detail-watch .rating-chips [data-rating] span:first-child{font:19px/1 Georgia,serif}
.movie-detail #detail-watch .rating-chips [aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.movie-detail #detail-watch .rating-chips [data-clear],.movie-detail #detail-watch .rating-chips [data-skip]{grid-column:1/-1;justify-self:start;width:auto;min-height:44px;font-size:11px;font-weight:400;padding:8px 0;color:var(--muted);background:none;border:0}
.movie-detail .movie-legacy-diary{margin-top:4px;color:var(--muted);font-size:11px}
.movie-detail .movie-legacy-diary>summary{display:flex;align-items:center;min-height:44px;width:max-content;max-width:100%;cursor:pointer}
.movie-detail .movie-legacy-diary>summary::after{content:' +';margin-left:8px}
.movie-detail .movie-legacy-diary[open]>summary::after{content:' −'}
.movie-detail .movie-legacy-diary .watch-actions .app-button{min-height:44px;font-size:12px;font-weight:400}
.movie-detail h2{font:400 25px/1.2 var(--display);margin:0}
.movie-detail .detail-synopsis{gap:14px;margin:0 0 26px;line-height:1.7}
.movie-detail .detail-synopsis p{font-size:14px;color:#d1cfc4}
.movie-detail .detail-synopsis .movie-credit-label{margin-bottom:-10px;color:var(--muted);font-size:11px}
.movie-detail .detail-synopsis .actions{gap:8px;margin:0}
.movie-detail .detail-synopsis .actions .app-button{flex:0 1 auto;max-width:100%;justify-content:flex-start}
.movie-detail .detail-synopsis .app-button{min-height:44px;width:auto;font-size:12px;font-weight:400;padding:8px 12px;color:var(--ink);background:transparent;border:1px solid #69745f70;border-radius:8px;text-align:left}
.movie-detail .detail-synopsis>a{min-height:44px;display:flex;align-items:center;font-size:12px;color:var(--ink)}
.movie-detail .copies-panel{padding:20px 16px;border:1px solid #69745f50;border-radius:10px;margin-bottom:16px}
.movie-detail .copies-panel .case-row{display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding:18px 0;border-color:#69745f40}
.movie-detail .copies-panel .case-row:last-child{padding-bottom:0;border-bottom:0}
.movie-detail .case-row strong{font-size:14px;font-weight:500;overflow-wrap:anywhere;max-width:100%}
.movie-detail .case-row p{font-size:12px;color:var(--muted);line-height:1.6}
.movie-detail .movie-copy-formats{display:flex;flex-wrap:wrap;gap:6px}
.movie-detail .movie-format{padding:3px 7px;font-size:10px;border:1px solid #69745f80;border-radius:4px;color:var(--ink);background:#26342c}
.movie-detail .copies-panel .case-row>.app-button{width:auto;min-height:44px;padding:8px 12px;font-size:12px;font-weight:400;background:none;border:1px solid #69745f80;border-radius:8px;color:var(--ink)}
.movie-detail .movie-case-contents{margin:0;font-size:11px;color:var(--muted);width:100%}
.movie-detail .movie-case-contents summary{min-height:44px;display:flex;align-items:center;cursor:pointer}
.movie-detail .movie-case-contents summary::after{content:' +';margin-left:8px}
.movie-detail .movie-case-contents .app-button{min-height:44px;padding:8px 0;background:none;color:var(--ink);border:0;font-size:12px;font-weight:400}
.movie-detail .movie-no-case h3{font-size:14px;font-weight:500;margin-top:18px}
.movie-detail .movie-no-case p{font-size:12px;color:var(--muted);margin-top:8px}
.movie-detail .movie-management details.panel{border:1px solid #69745f50;border-radius:10px;margin-bottom:10px;background:transparent}
.movie-detail .movie-management .detail-disclosure{font-size:13px;font-weight:400;min-height:48px;padding:12px 16px}
.movie-detail .movie-management form.panel{background:var(--panel);border:0;border-radius:8px;padding:16px}
.movie-detail .movie-management label,.movie-detail .movie-management legend{font-size:12px;font-weight:400;color:var(--muted)}
.movie-detail .movie-management .app-button{min-height:44px;font-size:12px;font-weight:400}
.movie-detail .movie-archive{border:0;border-top:1px solid #bca17038;border-radius:0;background:none;padding:16px 0 0;margin:24px 0 0}
.movie-detail .movie-archive .app-button{flex:0 1 auto;min-height:44px;width:auto;margin:0;padding:8px 12px;font-size:12px;font-weight:400;background:none;border:1px solid #94716480;color:#e6c6c3;border-radius:8px}
.movie-detail #detail-wishlist:not(:empty){margin:0 0 24px}
@media(min-width:600px){.movie-detail .detail-layout{grid-template-columns:168px minmax(0,1fr);gap:28px}.movie-detail .detail-layout>.detail-poster{width:168px}.movie-detail .detail-copy h1{font-size:40px}.movie-detail .detail-copy .detail-meta{font-size:13px}.movie-detail .detail-header{padding:26px}.movie-detail #detail-watch .rating-chips{max-width:400px}}
@media(max-width:350px){.movie-detail .detail-layout{grid-template-columns:92px minmax(0,1fr);gap:12px}.movie-detail .detail-layout>.detail-poster{width:92px}.movie-detail .detail-copy h1{font-size:26px}.movie-detail .detail-header{padding:16px 12px}}

/* Home Film Club identity and compact movie navigation. */
.theater .topbar{height:72px;padding-top:14px;padding-bottom:14px}
.theater .topbar .wordmark{font-size:29px;letter-spacing:-.8px;white-space:nowrap}
.theater .topbar .header-title{font:400 25px/1.15 var(--display);letter-spacing:-.35px;color:var(--ink);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.theater .topbar .header-add{margin-left:auto}
.theater #brand-tagline{display:none;max-width:1216px;margin:0 auto 16px;padding:0 24px;font-size:12px;line-height:1.5;color:var(--muted)}
.theater[data-page=home] #brand-tagline{display:block}
.theater .topbar .header-back{width:44px;height:44px;min-height:44px;padding:10px;background:none;color:var(--ink);border:0;border-radius:8px}
.header-back svg{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.theater[data-header-back=true] .topbar{height:56px;padding:6px 20px;justify-content:flex-start}
.theater[data-header-back=true] .topbar .header-title{font-size:21px}
.theater[data-page=library][data-header-back=false] .topbar,.theater[data-page=wishlist][data-header-back=false] .topbar,.theater[data-page=profile][data-header-back=false] .topbar{height:64px;padding-top:10px;padding-bottom:10px}
.theater[data-page=add] .add-choice h1{display:none}
.theater[data-page=quicklog] .page-head,.theater[data-page=diary] .page-head{display:none}
.theater[data-detail-kind=movie] .topbar{height:56px;padding:6px 20px;justify-content:flex-start}
.theater[data-detail-kind=movie] .topbar .wordmark{display:none}
.movie-detail>#back{display:none!important}
.movie-detail{padding-top:14px}
@media(max-width:350px){.theater .topbar .wordmark{font-size:25px;letter-spacing:-.6px}.theater #brand-tagline{padding-left:20px;padding-right:20px;font-size:11px}}

/* TV detail: season-specific ownership, editions and completion controls. */
.theater[data-detail-kind=tv] .topbar{height:56px;padding:6px 20px;justify-content:flex-start}
.theater[data-detail-kind=tv] .topbar .wordmark{display:none}
.tv-detail{max-width:800px;margin:0 auto;border-top:1px solid #bca17038;padding-top:14px}
/* The hash router focuses this region; retain focus rings on its controls. */
main:has(>.tv-detail):focus-visible{outline:none}
.tv-detail>#back{display:none!important}
.tv-detail .detail-header{margin:0 0 16px;padding:18px 16px;background:linear-gradient(145deg,#48232c,#302326 65%,#1a2923);border:1px solid #bca17038;border-radius:6px}
.tv-detail .detail-layout{display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:18px;margin:0}
.tv-detail .detail-layout>.detail-poster{width:96px;align-self:start}
.tv-detail .detail-layout>.detail-copy{width:auto;max-width:none}
.tv-detail .detail-copy h1{display:block;overflow:visible;overflow-wrap:anywhere;font:400 29px/1.1 var(--display);margin:0 0 10px}
.tv-detail .detail-copy .detail-meta{font-size:12px;color:#d1c7bb;margin:0 0 8px}
.tv-detail .detail-poster .theater-poster{padding:0}
.tv-detail .poster-fallback{padding:12px 8px 28px;gap:8px}
.tv-detail .poster-monogram{font-size:22px}
.tv-detail .poster-fallback-title{font-size:19px}
.tv-detail .poster-fallback small{font-size:9px}
.tv-detail .genre-pills{gap:0 6px;margin:0}
.tv-detail .genre-pill.app-button{min-height:44px;padding:0;font-size:10px;font-weight:400}
.tv-detail .genre-pill>span{padding:5px 8px;border-radius:6px}
.tv-detail h2{font:400 25px/1.2 var(--display);margin:0 0 16px}
.tv-detail .panel{border:1px solid #69745f50;border-radius:10px;padding:18px 16px;margin-bottom:16px}
.tv-detail .tv-about{background:none;padding:0}
.tv-detail .tv-about>summary{min-height:44px;padding:10px 16px;font-size:12px;display:flex;align-items:center;cursor:pointer}
.tv-detail .tv-about>summary::after{content:'+';margin-left:auto;color:var(--brass)}
.tv-detail .tv-about[open]>summary::after{content:'−'}
.tv-detail .detail-synopsis{padding:0 16px 16px;margin:0;line-height:1.7}
.tv-detail .detail-synopsis .app-button{min-height:44px;width:auto;flex:0 1 auto;background:none;color:var(--ink);border:1px solid #69745f70;padding:8px 12px;font-size:12px;font-weight:400}
.tv-detail .tv-season-select{font-size:12px;color:var(--muted);gap:6px}
.tv-detail .tv-season-select .dropdown-trigger{min-height:44px;background:#203029;color:var(--ink);border-color:#69745f80;font-size:13px;font-weight:400;border-radius:8px;padding:10px 12px}
.tv-season-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:12px 0 18px}
.tv-detail .tv-season-tab.app-button{min-width:44px;min-height:44px;width:100%;padding:8px 4px;border-radius:8px;font-size:13px;font-weight:400}
.tv-detail .tv-season-tab.is-owned{background:#34453a;color:var(--ink);border:1px solid #7b8a7466}
.tv-detail .tv-season-tab.is-unowned{background:transparent;color:#b8bdb0;border:1px dashed #69745f80}
.tv-detail .tv-season-tab[aria-current=page]{background:var(--ink);color:var(--bg);border:1px solid var(--ink)}
.tv-season-overview{display:grid;grid-template-columns:96px minmax(0,1fr);gap:16px;align-items:start;margin:16px 0}
.tv-detail .season-poster{width:96px;margin:0}
.tv-detail .tv-season-overview.is-unowned .season-poster{opacity:.65}
.tv-detail .tv-season-copy h3{font:400 25px/1.2 var(--display);margin:0 0 8px;overflow-wrap:anywhere}
.tv-detail .tv-season-copy p{font-size:12px;line-height:1.6;margin:0 0 8px;overflow-wrap:anywhere}
.tv-detail .tv-season-copy .tv-ownership{color:var(--ink)}
.tv-detail .tv-season-copy .tv-release-note{color:#d0bda1;font-size:11px}
.tv-detail .tv-season-copy .tv-season-synopsis{font-size:12px}
.tv-detail #detail-watch{padding:0;margin:18px 0}
.tv-detail #detail-watch:empty,.tv-detail #detail-wishlist:empty{display:none}
.tv-detail #detail-watch .watch-actions{gap:8px}
.tv-detail #detail-watch .app-button,.tv-detail #detail-wishlist .app-button{min-height:44px;padding:8px 12px;font-size:12px;font-weight:400}
.tv-detail #detail-watch .rating-chips [aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.tv-detail #detail-watch .current-rating{font-size:11px}
.tv-detail #detail-wishlist{margin:16px 0}
.tv-detail #detail-wishlist>p{display:none}
.tv-detail #season-watch{display:none}
.tv-detail .tv-episodes{border-top:1px solid #bca17038;padding-top:18px;margin-top:18px}
.tv-detail .tv-episodes>h3{font:400 23px/1.2 var(--display);margin:0 0 12px}
.tv-detail .tv-episodes ol{list-style:none;padding:0;margin:0}
.tv-detail .tv-episodes li{padding:14px 0;border-bottom:1px solid #69745f40}
.tv-detail .tv-episodes li:last-child{border:0;padding-bottom:0}
.tv-episode-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.tv-episode-heading h4{font-size:13px;font-weight:500;line-height:1.5;overflow-wrap:anywhere;margin:0}
.tv-episode-heading span{font-size:10px;white-space:nowrap;color:var(--muted)}
.tv-detail .tv-episodes p{font-size:12px;line-height:1.6;margin:8px 0 0}
.tv-detail .tv-no-seasons{font-size:13px;line-height:1.6}
.tv-detail .tv-seasons>.panel{margin:14px 0;padding:14px;background:#24352b}
.tv-detail .tv-seasons>.panel p{font-size:12px;margin:0 0 10px}
.tv-detail .tv-seasons>.panel .app-button{min-height:44px;font-size:12px;padding:8px 12px}
.tv-detail .copies-panel .case-row{display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding:16px 0;border-color:#69745f40}
.tv-detail .case-row strong{font-size:14px;font-weight:500;max-width:100%;overflow-wrap:anywhere}
.tv-detail .case-row p{font-size:12px;line-height:1.6}
.tv-detail .copies-panel .case-row>.app-button{min-height:44px;width:auto;padding:8px 12px;font-size:12px;font-weight:400}
.tv-copy-formats{display:flex;flex-wrap:wrap;gap:6px}
.tv-format{padding:3px 7px;border:1px solid #69745f80;border-radius:4px;background:#26342c;color:var(--ink);font-size:10px}
.tv-detail .tv-other-editions h3{font-size:14px;font-weight:500;margin:16px 0 8px}
.tv-detail .tv-other-editions p{font-size:12px;margin:8px 0}
.tv-detail details.panel:has(>.detail-disclosure){padding:0;background:none}
.tv-detail .detail-disclosure{font-size:13px;font-weight:400;min-height:48px;padding:12px 16px}
.tv-detail form.panel{padding:16px;background:var(--panel)}
.tv-detail form label,.tv-detail form legend{font-size:12px;font-weight:400;color:var(--muted)}
.tv-detail form .app-button{min-height:44px;font-size:12px;font-weight:400}
.tv-detail .tv-archive{border:0;border-top:1px solid #bca17038;background:none;padding:16px 0 0;margin-top:24px;border-radius:0}
.tv-detail .tv-archive .app-button{flex:0 1 auto;width:auto;min-height:44px;margin:0;padding:8px 12px;font-size:12px;font-weight:400}
@media(min-width:600px){.tv-detail .detail-layout{grid-template-columns:144px minmax(0,1fr);gap:24px}.tv-detail .detail-layout>.detail-poster{width:144px}.tv-detail .detail-copy h1{font-size:39px}.tv-season-tabs{max-width:360px}}
@media(max-width:350px){.tv-detail .detail-layout{grid-template-columns:80px minmax(0,1fr);gap:12px}.tv-detail .detail-layout>.detail-poster{width:80px}.tv-detail .detail-copy h1{font-size:26px}}

/* Wishlist: user-initiated wishes, with the shared owned-title Add kept in the header. */
.wishlist-shelf{border-top:1px solid #bca17038;padding-top:14px}
.wishlist-shelf .wishlist-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 22px}
.wishlist-toolbar>p{font-size:12px;line-height:1.5;color:var(--muted)}
.wishlist-shelf .wishlist-add{font-size:13px;min-height:44px;padding:11px 16px;font-weight:500;border-radius:8px}
.wishlist-toolbar .wishlist-add{background:transparent;color:var(--ink);border:1px solid #a6ad9680;flex:0 0 auto}
.wishlist-shelf .wishlist-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px;overflow:visible}
.wishlist-shelf .wishlist-card{display:block;width:100%;min-width:0;min-height:44px;padding:0;border:0;border-radius:0;background:transparent;color:var(--ink);text-align:left;font-weight:400}
.wishlist-card .theater-poster{padding:0;width:100%}
.wishlist-card h2{font:500 15px/1.4 "Segoe UI",Arial,sans-serif;margin:10px 0 4px;overflow-wrap:anywhere;letter-spacing:0}
.wishlist-card .wishlist-meta{font:400 12px/1.5 "Segoe UI",Arial,sans-serif;color:var(--muted);margin:0 0 8px}
.wishlist-card .wishlist-labels{display:grid;justify-items:start;gap:6px;font:400 11px/1.5 "Segoe UI",Arial,sans-serif}
.wishlist-card .wishlist-source{padding:2px 7px;border:1px solid #69745f70;border-radius:4px;color:var(--ink);background:#24332b}
.wishlist-card .wishlist-status{color:var(--muted);overflow-wrap:anywhere}
.wishlist-card .poster-fallback-title{font-size:24px}
.wishlist-empty{max-width:620px;margin:0 auto;padding:54px 20px 48px;text-align:center}
.wishlist-empty h2{font:400 32px/1.2 var(--display);margin:26px 0 12px;letter-spacing:-.5px}
.wishlist-empty p{max-width:340px;margin:0 auto 24px;font-size:14px;line-height:1.7;color:var(--muted)}
.wishlist-empty-shelf{display:flex;justify-content:center;align-items:end;gap:7px;width:110px;height:75px;margin:auto;padding:0 10px 9px;border-bottom:1px solid #bca17080}
.wishlist-empty-shelf i{display:block;width:19px;height:53px;border:1px solid #8b938070;border-radius:3px;background:#24392e}
.wishlist-empty-shelf i:nth-child(2){height:60px;background:#482c31}
.wishlist-empty-shelf i:last-child{height:48px;transform:rotate(9deg);transform-origin:bottom}
.wishlist-shelf .wishlist-form{max-width:560px;margin:0 0 28px;padding:24px;gap:18px;border:1px solid #69745f70;border-radius:8px;background:var(--panel)}
.wishlist-form h2{font:400 28px/1.2 var(--display);margin:0}
.wishlist-form>p:not(.error){font-size:14px;line-height:1.6;margin:0;color:var(--muted)}
.wishlist-form .error{margin:0;color:#ffc2ba}
.wishlist-form .error:empty{display:none}
.wishlist-form .actions{gap:12px}
.wishlist-form .actions .app-button{min-height:44px;padding:11px 16px;font-size:13px;border-radius:8px}
.wishlist-form .app-button:disabled{background:#34453a!important;color:#bdc4b7!important;border-color:#69745f!important}
@media(max-width:350px){.wishlist-shelf .wishlist-catalog{gap:24px 12px}.wishlist-card .poster-fallback-title{font-size:20px}.wishlist-toolbar>p{max-width:110px}.wishlist-shelf .wishlist-form{padding:18px}.wishlist-empty{padding:38px 6px}}
@media(min-width:600px){.wishlist-shelf .wishlist-catalog{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 22px}.wishlist-empty{padding-top:70px}}
@media(min-width:1000px){.wishlist-shelf .wishlist-catalog{grid-template-columns:repeat(5,minmax(0,1fr))}}
/* Seasonal door and hub: layout only; event color/motion polish is deferred. */
.theater .seasonal-door{display:block;margin:26px 0 0;padding:20px;border:1px solid var(--line);border-top-color:var(--brass);border-radius:12px;background:var(--panel);color:var(--ink);text-decoration:none;text-align:left}
.seasonal-door h2,.seasonal-hub h1{margin:0;font:400 clamp(27px,4vw,38px)/1.15 var(--display);overflow-wrap:anywhere}
.seasonal-door>p{margin:9px 0 16px;color:var(--muted);font-size:13px;line-height:1.5}
.seasonal-teasers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none}
.seasonal-teasers li{display:flex;align-items:center;gap:12px;min-width:0}
.seasonal-glimpse{display:block;flex:0 0 40px;width:40px}
.seasonal-glimpse .theater-poster{box-shadow:none}
.seasonal-glimpse .poster-fallback{padding:4px;gap:0}
.seasonal-glimpse .poster-monogram{font-size:11px}
.seasonal-glimpse .poster-fallback-title,.seasonal-glimpse .poster-fallback small{display:none}
.seasonal-teasers strong{font:400 19px/1.2 var(--display)}
.seasonal-teaser-copy{display:block;margin-top:4px;color:var(--muted);font-size:12px;line-height:1.4}
.seasonal-door-cta{display:flex;justify-content:space-between;gap:12px;margin-top:18px;padding-top:12px;border-top:1px solid var(--line);font-size:12px}
.seasonal-door-cta>span{font-size:18px;line-height:1}
.seasonal-hub{min-width:0;padding-top:14px;border-top:1px solid #bca17030}
.seasonal-banner{width:100%;aspect-ratio:5/2;max-height:340px;margin:20px 0 28px;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.seasonal-banner-art{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.seasonal-row{margin-top:28px;min-width:0}
.seasonal-row>h2{margin:0 0 14px;font:400 27px/1.2 var(--display);overflow-wrap:anywhere}
.seasonal-rail.poster-rail{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:clamp(108px,calc((100vw - 72px)/2.4),160px);gap:13px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:4px;padding:4px 4px 18px;touch-action:pan-x pan-y}
.theater .seasonal-rail .title-card{display:block;min-width:0;min-height:44px;width:100%;padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:var(--ink);text-align:left;text-decoration:none;font-weight:400;scroll-snap-align:start}
.seasonal-rail .title-card h3{margin:10px 0 3px;font:500 13px/1.35 "Segoe UI",Arial,sans-serif;overflow-wrap:anywhere}
.seasonal-rail .title-card p{margin:0;font-size:11px;color:var(--muted)}
.theater .seasonal-door:focus-visible,.seasonal-rail:focus-visible,.seasonal-rail a:focus-visible,.seasonal-empty a:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.seasonal-empty>p{margin:16px 0;color:var(--muted)}
.seasonal-empty>.button{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px}
@media(max-width:600px){.seasonal-teasers{grid-template-columns:1fr;gap:14px}.seasonal-door{padding:18px}.seasonal-banner{aspect-ratio:2/1;margin-top:18px}.seasonal-hub h1{font-size:30px}}
/* Seasonal accents stay local to Home/hub content, never the shared shell. */
body[data-page=home] .theater-home[data-seasonal-theme=halloween],body[data-page=seasonal] .seasonal-hub[data-seasonal-theme=halloween]{--seasonal-accent:#c99563;--seasonal-wash:#303026}
body[data-page=home] .theater-home[data-seasonal-theme=christmas],body[data-page=seasonal] .seasonal-hub[data-seasonal-theme=christmas]{--seasonal-accent:#c6b386;--seasonal-wash:#392a30}
body[data-page=home] .theater-home[data-seasonal-theme] .theater-feature{border-color:var(--seasonal-accent)}
body[data-page=home] .theater-home[data-seasonal-theme] .seasonal-door{border-color:var(--seasonal-accent);background:linear-gradient(125deg,var(--seasonal-wash),var(--panel) 75%)}
body[data-page=home] .theater-home[data-seasonal-theme] .seasonal-door h2,body[data-page=seasonal] .seasonal-hub[data-seasonal-theme]>.seasonal-row>h2{color:var(--seasonal-accent)}
body[data-page=seasonal] .seasonal-hub[data-seasonal-theme]{border-top-color:var(--seasonal-accent)}
body[data-page=seasonal] .seasonal-hub[data-seasonal-theme] .seasonal-banner{border-color:var(--seasonal-accent)}
@keyframes seasonal-arrive{from{opacity:.85;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){
 body[data-page=home] .theater-home[data-seasonal-theme] .seasonal-glimpse,body[data-page=seasonal] .seasonal-hub[data-seasonal-theme] .seasonal-banner-art{animation:seasonal-arrive .5s ease-out both}
}
@media(prefers-reduced-motion:reduce){
 body[data-page=home] .theater-home[data-seasonal-theme] .seasonal-glimpse,body[data-page=seasonal] .seasonal-hub[data-seasonal-theme] .seasonal-banner-art{animation:none;transform:none}
}
