:root{font-family:'DM Sans',system-ui,sans-serif;color:#f3eee4;background:#101619;color-scheme:dark;--muted:#a9b5b5;--line:#344044;--accent:#e9b759;--panel:#192226;--red:#ee6a61;--green:#a6c9ac;--bot:#8ba8e5}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 80% 0,#253236 0,transparent 48%),#101619;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer;border:1px solid var(--line);border-radius:9px;background:#253136;color:inherit;padding:12px 16px;min-height:46px;font-weight:600;touch-action:manipulation}button:hover{border-color:var(--accent);background:#303c3f}button:disabled{opacity:.38;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}input,select{border:1px solid #526065;border-radius:7px;background:#10191d;color:#fff;padding:10px;min-height:46px;max-width:100%}input[type=number]{width:84px}h1,h2,h3,.display{font-family:'Barlow Condensed','Arial Narrow',sans-serif;letter-spacing:.015em}h1{font-size:clamp(3.4rem,8vw,6.8rem);line-height:.92;margin:16px 0}h2{font-size:2rem;line-height:1.05;margin:0 0 14px}h3{font-size:1.4rem;margin:0 0 12px}p{line-height:1.65;margin:10px 0}.muted,small{color:var(--muted)}.eyebrow{font-size:.73rem;letter-spacing:.17em;text-transform:uppercase;color:var(--accent);font-weight:700}.wrap{max-width:1170px;margin:auto;padding:24px 28px 50px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:30px}.brand{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:1.5rem;letter-spacing:.05em}.brand span{color:var(--accent)}.badge{border:1px solid #53605b;border-radius:99px;padding:6px 10px;font-size:.73rem;color:#c5d2cb;white-space:nowrap}.hero{display:grid;grid-template-columns:1fr 280px;align-items:center;gap:40px;padding-bottom:35px}.hero p{max-width:540px;color:#bac6c5}.hero-image{background:#24302c;border:1px solid #44524a;border-radius:50% 50% 10% 10%;height:255px;padding:25px;transform:rotate(4deg);position:relative}.hero-image img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(8px 12px 0 #0005)}.hero-image:after{content:'SILVER CINEMA · 1986';position:absolute;bottom:12px;left:0;right:0;text-align:center;font-size:.63rem;letter-spacing:.19em;color:var(--accent)}.bot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0 30px}.bot-choice{position:relative;padding:22px;text-align:left;border-radius:12px;background:#192226;border-color:#3b484c;min-height:245px}.bot-choice.selected{border:2px solid var(--accent);padding:21px;background:#272b26}.bot-choice img{height:105px;width:100px;object-fit:contain;float:right;margin:-4px -4px 10px 10px}.bot-choice h3{font-size:1.85rem;margin:28px 0 8px}.bot-choice p{font-size:.86rem;line-height:1.6;clear:both;color:#b7c2c0}.bot-num{font-size:.7rem;color:var(--accent);letter-spacing:.12em}.selected-mark{position:absolute;right:14px;top:10px;color:var(--accent)}.start-bar{display:flex;gap:24px;align-items:center;justify-content:space-between;background:#1b2528;border:1px solid var(--line);border-radius:12px;padding:20px}.difficulties{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.difficulty{font-size:.8rem;padding:9px 12px}.difficulty.selected{color:#121718;background:var(--accent);border-color:var(--accent)}.primary{background:var(--accent);border-color:var(--accent);color:#181b17}.primary:hover{background:#f2ca7f;color:#181b17}.start-button{padding:16px 28px;white-space:nowrap}.ghost{background:transparent}.danger{color:#ffaca5}.layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start}.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:22px;margin-bottom:18px}.session-header{display:flex;gap:14px;align-items:center;margin-bottom:24px}.session-header img{width:63px;height:75px;object-fit:contain}.session-header h1{font-size:2.8rem;margin:5px 0}.session-header .toolbar{margin-left:auto}.toolbar{display:flex;gap:8px;flex-wrap:wrap}.toolbar button{font-size:.8rem;padding:9px 12px}.turn-line{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:18px}.turn-line .round{font-size:.8rem;color:var(--accent);letter-spacing:.09em}.card-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:15px 0 22px}.card-slot{background:#10181b;border:1px solid #364347;border-radius:9px;overflow:hidden;position:relative;padding:8px}.card-slot.current{border:2px solid var(--accent);padding:7px}.card-slot.done{opacity:.55}.card-slot button{display:block;border:0;background:none;padding:0;min-height:0;width:100%}.card-slot img{display:block;width:100%;max-height:245px;object-fit:contain;border-radius:5px}.card-slot .card-label{font-size:.7rem;color:var(--muted);margin:7px 0 2px}.card-slot strong{display:block;font-size:.8rem;line-height:1.4}.action-card{background:#222e31;border:1px solid #4c605c;border-left:4px solid var(--accent);border-radius:10px;padding:22px}.action-card h2{font-size:2rem;margin:10px 0}.step-label{font-size:.72rem;color:var(--accent);letter-spacing:.1em;text-transform:uppercase}.step-body{font-size:1rem;line-height:1.75}.step-body ol{padding-left:22px}.step-body li{padding-left:4px;margin-bottom:7px}.spook-rule{background:#101a1d;border:1px solid #56605a;border-radius:9px;padding:17px;margin:18px 0}.spook-rule h3{color:var(--accent)}.color-row{display:flex;gap:6px;flex-wrap:wrap;margin:13px 0 3px}.color-chip{display:flex;align-items:center;gap:5px;font-size:.75rem;background:#263135;padding:7px 8px;border-radius:6px}.dot{display:inline-block;width:12px;height:12px;border-radius:50%;background:var(--c);border:1px solid #ffffff35;flex-shrink:0}.action-footer{margin-top:22px;display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap}.action-footer .primary{min-width:170px}.points-entry{display:flex;align-items:center;gap:10px;font-size:.85rem;flex-wrap:wrap}.points-entry input{width:74px}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stat{background:#111b1f;border-radius:8px;padding:13px}.stat .value{font-family:'Barlow Condensed',sans-serif;font-size:2.5rem;line-height:1.1;color:#f3d599}.stat small{font-size:.72rem;display:block;line-height:1.5}.adjust{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:8px}.adjust button{min-height:34px;min-width:34px;padding:3px 8px;font-size:1rem}.adjust input{width:65px;min-height:35px;padding:4px;text-align:center}.pile{display:flex;justify-content:space-between;gap:4px;margin:15px 0}.pile-column{text-align:center;flex:1}.pile-column .dot{width:19px;height:19px}.pile-column button{display:block;margin:5px auto;min-width:36px;min-height:36px;padding:5px}.pile-column span.count{display:block;font-size:1.15rem;font-weight:700}.pile-column small{font-size:.61rem}.full{width:100%}.notice{border:1px solid #987b3d;background:#342f20;border-radius:8px;padding:13px;margin:14px 0;color:#f4dfac;font-size:.86rem;line-height:1.65}.notice button{padding:4px 10px;min-height:34px;margin-top:8px}.note{font-size:.82rem;color:var(--muted);line-height:1.65}.setup-list{padding-left:22px;line-height:1.75}.setup-list li{margin-bottom:14px}.setup-list strong{color:#f1cd85}details{border-top:1px solid var(--line);padding:14px 0}summary{cursor:pointer;font-weight:600;line-height:1.5;min-height:30px}details p,details li{font-size:.86rem;line-height:1.7}details img{width:100%;border-radius:8px}.deck-count{display:flex;justify-content:space-between;padding:8px 0;font-size:.8rem;border-bottom:1px solid #2a373a}.logs{padding-left:17px;max-height:220px;overflow:auto;color:var(--muted);font-size:.77rem;line-height:1.8}.color-picker{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.color-picker button{flex:1;min-width:95px;display:flex;align-items:center;justify-content:center;gap:8px;padding:15px 10px}.empty-state{padding:20px 0;text-align:center}.empty-state img{width:105px;height:110px;object-fit:contain;margin-bottom:18px}.empty-state h2{font-size:2.6rem}.empty-state p{color:var(--muted)}.footer{font-size:.7rem;color:#8b9c9c;line-height:1.8;margin-top:28px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.inline-link{background:none;border:0;color:var(--accent);text-decoration:underline;padding:0;min-height:44px;font-size:inherit}.final-banner{border:1px solid var(--accent);border-radius:10px;padding:16px;background:#332e22;margin-bottom:18px;line-height:1.65;font-size:.9rem}.progress{height:4px;background:#3e4a47;border-radius:10px;overflow:hidden;margin:18px 0}.progress span{display:block;height:100%;background:var(--accent)}dialog{border:1px solid var(--line);background:#172024;color:#fff;border-radius:12px;max-width:95vw;max-height:94dvh;padding:44px 12px 12px;text-align:center}dialog::backdrop{background:#000c}dialog img{max-width:88vw;max-height:77dvh;object-fit:contain}dialog .close{position:absolute;right:8px;top:4px;min-height:38px;padding:3px 13px;font-size:1.6rem;background:transparent}dialog p{font-size:.8rem;margin:7px}#toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:#ead59c;color:#161d1b;padding:12px 20px;border-radius:8px;max-width:90vw;display:none;z-index:99;font-size:.85rem;box-shadow:0 8px 30px #0008}.backup-row{display:flex;gap:10px;margin-top:12px}.backup-row button{font-size:.76rem;flex:1}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.result-row{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:15px 0;font-size:1.2rem}.result-row strong{color:var(--accent)}
@media(max-width:850px){.layout{grid-template-columns:minmax(0,1fr) 260px;gap:14px}.wrap{padding:20px}.panel{padding:16px}.hero{grid-template-columns:1fr 200px;gap:20px}.hero-image{height:200px}.bot-choice{padding:15px}.bot-choice.selected{padding:14px}.bot-choice img{width:75px;height:90px}.start-bar{gap:15px}.start-button{padding:14px}}
@media(max-width:680px){.wrap{padding:16px 14px 35px}.topbar{padding-bottom:14px;margin-bottom:24px}.brand{font-size:1.25rem}.badge{font-size:.65rem}.hero{grid-template-columns:1fr;padding-bottom:10px;gap:0}.hero-image{display:none}h1{font-size:4.3rem}.hero p{font-size:.92rem}.bot-grid{grid-template-columns:1fr;gap:10px;margin-top:20px}.bot-choice,.bot-choice.selected{min-height:145px;padding:16px 18px}.bot-choice.selected{padding:15px 17px}.bot-choice img{height:92px;width:90px;margin:5px 3px 0 15px}.bot-choice h3{font-size:1.8rem;margin:9px 0 6px}.bot-choice p{clear:none;font-size:.8rem;margin:6px 0;max-width:75%}.start-bar{display:block;padding:17px}.difficulties{display:grid;grid-template-columns:1fr 1fr}.start-button{width:100%;margin-top:20px}.layout{display:flex;flex-direction:column;gap:0}.main,.sidebar{width:100%;min-width:0}.session-header{gap:10px;flex-wrap:wrap;margin-bottom:18px}.session-header h1{font-size:2.2rem}.session-header img{width:46px;height:57px}.session-header .toolbar{margin-left:0;width:100%;justify-content:flex-end}.session-header .toolbar button{font-size:.75rem}.panel{padding:16px;margin-bottom:14px}.action-card{padding:16px}.action-card h2{font-size:1.85rem}.step-body{font-size:.96rem}.card-strip{gap:6px;margin-bottom:17px}.card-slot{padding:5px}.card-slot.current{padding:4px}.card-slot img{max-height:none}.card-slot strong{font-size:.7rem}.card-label{font-size:.62rem!important}.action-footer{display:block}.action-footer>.primary{width:100%;margin-top:12px;min-height:52px}.points-entry{justify-content:space-between}.color-chip{font-size:.72rem;padding:7px}.spook-rule{padding:13px}.turn-line{align-items:flex-start}.turn-line .round{font-size:.7rem}.stat-grid{gap:10px}.pile-column button{min-width:44px;min-height:42px}.pile-column small{font-size:.7rem}.footer{margin-top:20px}.final-banner{font-size:.84rem}.empty-state h2{font-size:2.2rem}}
@media(prefers-reduced-motion:no-preference){button{transition:background .15s,border-color .15s}.action-card{animation:appear .18s ease-out}@keyframes appear{from{opacity:.6;transform:translateY(3px)}to{opacity:1;transform:none}}}
/* A light surface, with the selected monster setting the atmosphere. */
:root{font-family:'Segoe UI',Verdana,sans-serif;color:#202936;background:#f4f5f8;color-scheme:light;--muted:#526074;--line:#c6ced9;--accent:#284eaa;--panel:#fffffff5}
body{background:#f4f5f8;color:#202936}
.app-scene{--accent:#284eaa;--accent-soft:#e9efff;--bg:#eaf0ff;--bg2:#faf0dd;--halo:#b8c8f7;position:relative;min-height:100vh;color:#202936}
.theme-slayerr{--accent:#7936a0;--accent-soft:#f4e9fc;--bg:#f1e7fc;--bg2:#ffece9;--halo:#d4b3f3}
.theme-charles{--accent:#226951;--accent-soft:#e7f4e9;--bg:#e5f3e6;--bg2:#fff3cf;--halo:#b5d9bb}
.scene-backdrop{position:fixed;inset:0;pointer-events:none;background:linear-gradient(125deg,var(--bg),var(--bg2));overflow:hidden;z-index:0}
.scene-backdrop:before{content:'';position:absolute;width:70vw;height:70vw;min-width:500px;min-height:500px;right:-15%;top:-25%;background:radial-gradient(circle,var(--halo),transparent 66%);opacity:.8}
.scene-backdrop:after{content:'';position:absolute;inset:0;background-image:var(--poster);background-position:right -40px top 40px;background-size:auto 100vh;background-repeat:no-repeat;opacity:.19;mask-image:linear-gradient(90deg,transparent 25%,#000 78%)}
.wrap{position:relative;z-index:1}
h1,h2,h3,.display,.brand{font-family:'Segoe UI',Verdana,sans-serif;letter-spacing:-.035em}
h1{font-size:clamp(2.5rem,5.6vw,4.65rem);line-height:1.12;font-weight:800}
h2{font-size:1.65rem;line-height:1.25;font-weight:750}
h3{font-size:1.15rem;line-height:1.35;font-weight:750}
.brand{font-size:1.15rem;letter-spacing:.02em;font-weight:800}
.eyebrow{color:var(--accent);letter-spacing:.12em;font-size:.72rem}
.badge{background:#ffffffde;border-color:var(--line);color:#465469}
.hero{grid-template-columns:1fr 230px;gap:30px}
.hero p{color:#49566a;font-size:1rem}
.hero-image{height:285px;padding:0;transform:rotate(3deg);border:5px solid #fff;border-radius:15px;overflow:hidden;box-shadow:0 12px 35px #25385a23;background:var(--accent-soft)}
.hero-image img{object-fit:cover;filter:none}
.hero-image:after{display:none}
button{background:#fff;color:#273347;border-color:#bbc5d3;font-weight:650;box-shadow:0 1px 2px #25304a08}
button:hover{background:var(--accent-soft);border-color:var(--accent);color:#182335}
button:disabled{opacity:.5}
.primary,.difficulty.selected{background:var(--accent);color:#fff;border-color:var(--accent);text-shadow:none;box-shadow:0 4px 12px #2335551a}
.primary:hover,.difficulty.selected:hover{background:var(--accent);color:#fff;filter:brightness(.9)}
.start-button{font-size:1rem;font-weight:750;padding:18px 26px;min-height:58px;letter-spacing:0}
.bot-choice{background:#fffffff0;border-color:#c5ccda;box-shadow:0 4px 18px #27365a08}
.bot-choice.selected{background:var(--accent-soft);border-color:var(--accent);box-shadow:0 5px 20px #27365a12}
.bot-choice h3{font-size:1.4rem;color:#1e293b}
.bot-choice p,.hero p{color:#4b596b}
.bot-num,.selected-mark{color:var(--accent)}
.start-bar,.panel{background:var(--panel);border-color:#cbd2dd;box-shadow:0 5px 22px #27365a08}
.ghost{background:#ffffffb5;color:#354257}
.danger{color:#a72c27}
input,select{background:#fff;color:#202936;border-color:#aab7c8}
.session-header h1{font-size:2.15rem}
.action-card{background:#fff;border-color:#c6cfdb;border-left-color:var(--accent)}
.action-card h2{font-size:1.6rem}
.spook-rule{background:var(--accent-soft);border-color:#bbc7d6}
.spook-rule h3{color:var(--accent)}
.color-chip{background:#fff;color:#293648;border:1px solid #cad1dc}
.dot{border-color:#18263845}
.stat{background:#f0f3f8}
.stat .value,.step-label,.turn-line .round{color:var(--accent)}
.card-slot{background:#f1f3f8;border-color:#c5ceda}
.card-slot.current{background:var(--accent-soft);border-color:var(--accent)}
.card-slot strong{color:#202936}
.card-slot .card-label{color:#4e5c6f}
.setup-list strong{color:var(--accent)}
.notice,.final-banner{background:#fff5d9;border-color:#cfa94d;color:#614709}
.notice button{background:#fff;color:#614709;border-color:#c5a34e}
.progress{background:#e1e6ef}
.progress span{background:var(--accent)}
.deck-count{border-color:#d7dde6}
.footer{color:#4d5c70}
.empty-state p,.logs{color:var(--muted)}
.inline-link{color:var(--accent);background:none;border:0;box-shadow:none}
.result-row strong{color:var(--accent)}
dialog{background:#f8f9fc;color:#202936;border-color:#c5ceda}
dialog .close{color:#24354d}
@media(max-width:850px){.hero{grid-template-columns:1fr 190px}.hero-image{height:250px}.bot-choice h3{font-size:1.2rem}}
@media(max-width:680px){
 .hero{grid-template-columns:1fr}.hero-image{display:none}
 h1{font-size:clamp(2.35rem,9.2vw,3.5rem);line-height:1.12}
 .brand{font-size:.88rem;letter-spacing:0}.topbar{gap:8px}
 .badge{font-size:.62rem;padding:6px 8px;white-space:normal}
 .bot-choice h3{font-size:1.3rem}.bot-choice p{font-size:.85rem}
 .bot-choice,.bot-choice.selected{min-height:150px}
 .start-button{font-size:1.05rem;min-height:58px}
 .session-header h1{font-size:1.7rem}.action-card h2{font-size:1.45rem}
 .empty-state h2{font-size:1.75rem}
 .scene-backdrop:after{background-size:auto 90vh;background-position:center top 60px;opacity:.12;mask-image:linear-gradient(#000,transparent 95%)}
 .scene-backdrop:before{right:-55%;top:0}
 .color-chip{font-size:.72rem}.turn-line{gap:8px}
}
@media(prefers-reduced-motion:no-preference){
 .scene-backdrop:before{animation:ambient-drift 18s ease-in-out infinite alternate}
 .scene-backdrop:after{animation:poster-arrive .45s ease-out}
 @keyframes ambient-drift{to{transform:translate(-8%,12%) scale(1.12)}}
 @keyframes poster-arrive{from{opacity:0;transform:translateX(18px)}to{transform:translateX(0)}}
}
.layout>*{min-width:0}
.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.stat{min-width:0;padding:10px}
.stat small{overflow-wrap:anywhere}
.adjust{display:grid;grid-template-columns:30px minmax(0,1fr) 30px;gap:3px;min-width:0}
.adjust button{width:30px;min-width:0;min-height:38px;padding:0}
.adjust input{width:100%;max-width:100%;min-width:0;min-height:38px;padding:3px 0;text-align:center;appearance:textfield;-moz-appearance:textfield}
.adjust input::-webkit-inner-spin-button,.adjust input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.turn-checklist{margin-top:20px}
.checklist-group{font-size:1rem;margin:26px 0 12px;color:var(--accent);letter-spacing:.015em}
.checklist-item{border:1px solid #c6cfdb;border-radius:10px;background:#fff;margin:12px 0;overflow:hidden}
.checklist-item.is-current{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.checklist-item.is-done{background:#f3f7f3}
.checklist-title{display:flex;gap:13px;align-items:center;padding:16px;cursor:pointer;min-height:66px}
.checklist-title input{width:25px;height:25px;min-height:25px;flex:0 0 25px;accent-color:var(--accent);padding:0;cursor:pointer}
.checklist-title span{min-width:0}
.checklist-title strong{display:block;font-size:1.1rem;line-height:1.4;margin-top:5px}
.checklist-content{padding:0 18px 18px 54px}
.checklist-content .points-entry{margin-top:16px;padding-top:12px;border-top:1px solid #d6dce5}
.is-done .checklist-title strong{color:#49644b}
.turn-confirm{margin-top:22px;padding:18px;background:var(--accent-soft);border-radius:10px}
.turn-confirm strong{display:block;font-size:.9rem;margin-bottom:12px;color:var(--accent)}
.turn-confirm .primary{min-height:52px}
@media(min-width:681px) and (max-width:1000px){.sidebar .stat-grid{grid-template-columns:1fr}}
@media(max-width:380px){.stat-grid{grid-template-columns:1fr}}
@media(max-width:680px){.checklist-content{padding:0 13px 16px}.checklist-title{padding:14px 12px}.checklist-title strong{font-size:1rem}.checklist-content .step-body{font-size:.91rem}.checklist-content .spook-rule{padding:12px}.checklist-title input{width:28px;height:28px;flex-basis:28px}}

/* Full-screen opponent selection. Media slots can receive Gemini clips later. */
.cinema-splash{height:100svh;min-height:620px;position:relative;background:#11131b;color:#fff;overflow:hidden;font-family:'Segoe UI',Verdana,sans-serif}
.cinema-header{position:absolute;z-index:5;top:0;left:0;right:0;padding:25px 30px;display:flex;align-items:center;justify-content:space-between;gap:16px;background:linear-gradient(#080b16c9,transparent);pointer-events:none}
.cinema-header .brand{font-size:1rem;letter-spacing:.08em;text-shadow:0 2px 12px #000}
.cinema-header p{font-size:.72rem;letter-spacing:.14em;margin:0;text-transform:uppercase;color:#f9edd6}
.cinema-reels{height:100%;display:flex;isolation:isolate}
.villain-reel{flex:1 1 0;min-width:0;position:relative;border-right:2px solid #ffffff45;overflow:hidden;transition:flex .65s cubic-bezier(.22,.7,.22,1);background:#2a3043;color:#fff;--reel-accent:#e8cb83}
.villain-reel:last-child{border:0}.villain-reel.is-preview{flex:2.15 1 0}
.villain-reel[data-bot=killtron]{--reel-accent:#c2d9ff;background:#1c2e54}.villain-reel[data-bot=slayerr]{--reel-accent:#efb8ff;background:#39244c}.villain-reel[data-bot=charles]{--reel-accent:#ffe89c;background:#2c4637}
.reel-image,.reel-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 38%;transition:filter .6s,transform .9s,opacity .4s;pointer-events:none}
.reel-image{filter:saturate(.7) brightness(.72);transform:scale(1.04)}
.reel-video{opacity:0}.is-preview .reel-video.has-media{opacity:1}.is-preview .reel-image{filter:saturate(1.05) brightness(.93);transform:scale(1.10)}
.reel-scrim{position:absolute;inset:0;background:linear-gradient(180deg,#08091420 0%,#08091405 30%,#080914a6 68%,#080914f5 100%);pointer-events:none}
.reel-trigger{position:absolute;inset:0;background:transparent!important;border:0;border-radius:0;box-shadow:none;z-index:1;color:transparent;padding:0}
.reel-trigger:focus-visible{outline:4px solid var(--reel-accent);outline-offset:-7px}
.reel-copy{position:absolute;bottom:80px;left:clamp(20px,3vw,55px);right:clamp(20px,3vw,55px);z-index:2;pointer-events:none}
.reel-number{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--reel-accent);margin:0 0 13px}
.reel-copy h2{font-size:clamp(1.7rem,3.2vw,3.7rem);line-height:1.08;letter-spacing:-.045em;color:#fff;text-shadow:0 3px 20px #0007;margin:0 0 12px;overflow-wrap:normal}
.reel-tagline{font-size:.9rem;color:#f4ecdf;line-height:1.5;margin:0}
.reel-reveal{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .5s,opacity .4s}
.is-preview .reel-reveal{grid-template-rows:1fr;opacity:1}.reel-reveal>div{overflow:hidden}
.reel-description{font-size:.95rem;line-height:1.65;max-width:510px;margin:16px 0;color:#f4eee6}
.reel-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;pointer-events:auto;margin:12px 0}
.reel-lock{background:var(--reel-accent);color:#132035;border:0;padding:14px 21px;font-size:.9rem;box-shadow:0 3px 18px #0004;min-height:50px}
.reel-lock:hover{background:#fff;color:#132035}.reel-media{color:#fff;background:#15152385;border:1px solid #ffffff85;font-size:.74rem;padding:9px 12px;box-shadow:none}
.reel-media:hover{background:#ffffff25;color:#fff;border-color:#fff}
.media-placeholder{font-size:.66rem;letter-spacing:.09em;color:#e2dfdf;text-transform:uppercase;margin-top:10px}
.reel-status{position:absolute;top:90px;left:25px;z-index:2;display:flex;gap:7px;align-items:center;pointer-events:none;font-size:.62rem;letter-spacing:.14em;background:#080b1670;border:1px solid #ffffff45;padding:8px 10px;border-radius:5px}
.reel-status i{height:6px;width:6px;border-radius:100%;background:#e8cc89}.is-preview .reel-status i{background:#a8e6a8;box-shadow:0 0 9px #a8e6a8}
.cinema-bottom{position:absolute;z-index:4;left:30px;right:30px;bottom:16px;display:flex;justify-content:space-between;gap:15px;font-size:.7rem;color:#ffffffcf;pointer-events:none}
.cinema-bottom button{pointer-events:auto;background:none;box-shadow:none;border:0;color:#fff;text-decoration:underline;font-size:.75rem;min-height:38px;padding:0}
.locked-pick{display:flex;gap:24px;align-items:center;margin:24px 0 30px;padding:25px;background:#ffffffec;border:1px solid var(--line);border-radius:14px}.locked-pick img{height:180px;width:125px;object-fit:cover;border-radius:8px}.locked-pick h1{font-size:clamp(2rem,5vw,3.5rem);margin:10px 0}.locked-pick p{color:#4b596b}.locked-pick .eyebrow{margin:0}
@media(prefers-reduced-motion:no-preference){.is-preview .reel-image.placeholder-motion{animation:placeholder-film 7s ease-in-out infinite alternate}@keyframes placeholder-film{from{transform:scale(1.07) translateY(0)}to{transform:scale(1.16) translateY(-1.3%)}}}
@media(prefers-reduced-motion:reduce){.villain-reel,.reel-image,.reel-video,.reel-reveal{transition:none}}
@media(max-width:700px){
 .cinema-splash{height:100svh;min-height:760px;overflow:auto}.cinema-reels{flex-direction:column}.villain-reel{border-right:0;border-bottom:2px solid #ffffff45;min-height:150px}.villain-reel.is-preview{flex:3.3 1 0;min-height:390px}.cinema-header{padding:15px 17px;gap:7px;align-items:flex-start}.cinema-header .brand{font-size:.78rem}.cinema-header p{font-size:.56rem;max-width:130px;text-align:right}
 .reel-image,.reel-video{object-position:center 36%}.reel-copy{bottom:18px;left:20px;right:20px}.reel-copy h2{font-size:1.7rem;margin-bottom:5px}.reel-number{font-size:.58rem;margin-bottom:6px}.reel-tagline{font-size:.76rem}.reel-description{font-size:.83rem;margin:10px 0;line-height:1.55}.reel-status{top:12px;left:auto;right:13px;font-size:.5rem;padding:5px 7px}.villain-reel:first-child .reel-status{top:60px}.cinema-bottom{bottom:6px;left:17px;right:17px;font-size:.58rem}.cinema-bottom span{display:none}.cinema-bottom button{font-size:.64rem}.villain-reel:last-child .reel-copy{bottom:44px}.reel-lock{padding:12px 15px;font-size:.82rem;min-height:46px}.reel-media{font-size:.68rem}.media-placeholder{font-size:.56rem}.reel-actions{margin:8px 0;gap:8px}.locked-pick{padding:17px;gap:15px}.locked-pick img{width:85px;height:130px}.locked-pick h1{font-size:1.7rem}
}
