.shoot-canvas{position:relative;aspect-ratio:16/9;overflow:hidden;background:#0c0610;border:3px ridge #a7804e}.shoot-image,.shoot-backdrop{display:block;width:100%;height:100%;object-fit:contain}.shoot-backdrop{position:absolute;inset:0;background-size:cover;background-position:center}.shoot-model{position:absolute;left:32%;bottom:3%;height:86%;display:flex;animation:stageSway 5s ease-in-out infinite}.shoot-prop{position:absolute;left:61%;bottom:10%;width:14%;height:25%;background-repeat:no-repeat;filter:drop-shadow(0 5px 8px #0009)}.shoot-corners{position:absolute;inset:6%;border:1px solid #ffdfb25c;pointer-events:none}.shoot-badge{position:absolute;left:8%;top:8%;background:#250b1ccc;color:#ffc7c0;padding:7px 12px;font:bold 12px Georgia;letter-spacing:.12em;pointer-events:none}.shooting-paper .shoot-canvas{width:min(100%,calc(40dvh * 1.77778));max-height:none;margin:14px auto}.shooting-controls{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:end;margin:16px 0}.shooting-controls label{display:grid;gap:8px;color:#efd2b3}.shooting-controls select{padding:11px;width:100%}.shooting-footer{display:flex;justify-content:space-between;align-items:center;gap:16px}.shooting-footer button{padding:14px 22px}.creator-program .program-poster{width:100%;aspect-ratio:16/9;object-fit:cover;margin-bottom:12px;border:2px ridge #b38b55}.television-shell{position:relative;background:#251321;border:8px ridge #ba9358;border-radius:13px;padding:16px 70px 16px 16px;box-shadow:0 8px 30px #000a}.television-shell:after{content:'●';position:absolute;right:23px;top:28px;color:#e2949c;font-size:24px;text-shadow:0 0 10px #ff4c6f}.television-shell video{width:100%;max-height:53vh;display:block;aspect-ratio:16/9;background:#07040a;border-radius:9px;border:4px inset #997348}.tv-channel-list{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.tv-channel-list button{padding:10px 15px}.tv-channel-list button.selected{border-color:#f6cc86;background:#7b3457}.tv-help{font-size:12px;color:#cfb5c8}.tv-hotspot{opacity:1!important;border:4px ridge #bc985f!important;border-radius:6px!important;background:linear-gradient(150deg,#362534,#100713)!important;box-shadow:0 4px 8px #0008;overflow:hidden;padding:6px!important;z-index:4}.tv-hotspot .hotspot-name{display:none}.tv-screen{position:relative;display:block;width:100%;height:100%;border:2px inset #997248;border-radius:4px;overflow:hidden;background:#101d25}.tv-screen img,.tv-screen video{width:100%;height:100%;object-fit:cover;pointer-events:none}.tv-screen:after{content:'';position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 2px,#0002 3px 4px)}.tv-screen .tv-off{position:absolute;inset:0;display:grid;place-items:center;font:bold clamp(7px,1vw,13px) Georgia;color:#b1b4a5;background:#09111bd9;letter-spacing:.12em}.tv-power{position:absolute;right:5px;bottom:4px;font-size:8px;color:#ff7676}.tv-power.on{color:#9ce6bb}.tv-program-label{margin:12px 0;font:italic 16px Georgia;color:#eacda3}.media-history-button{font-size:12px!important;padding:8px!important}.performance-panel .shoot-canvas{border:0}.performance-panel .filming-footer{border-top:3px ridge #b18a52}.film-variant-view{position:absolute;inset:0}.film-variant-view .shoot-canvas{height:100%;width:100%;border:0}.film-variant-view .shoot-image{object-fit:cover}.motion-preview-button{position:absolute;top:13%;left:15%;right:15%;z-index:3;border:2px ridge #ca9b64;background:#3b1730;color:#f9dca9;padding:8px;font:12px Georgia}
@media(max-width:650px){.shooting-controls{grid-template-columns:1fr}.shooting-footer{display:block}.shooting-footer button{width:100%;margin-top:10px}.television-shell{padding:7px 25px 7px 7px;border-width:5px}.television-shell:after{right:7px;top:15px;font-size:13px}.shoot-badge{font-size:8px;padding:4px 7px}.tv-program-label{font-size:12px}}
@media(prefers-reduced-motion:reduce){.shoot-model{animation:none}}

/* Room televisions use the painted monitor; the clickable bezel stays aligned. */
.tv-hotspot[data-hotspot="creatorTerminal"]{
 left:85%!important;top:38.1%!important;width:10%!important;height:13.4%!important;
 padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;
 box-shadow:none!important;overflow:visible;transform:none;filter:none;
}
.tv-hotspot[data-hotspot="creatorTerminal"] .tv-screen{
 position:absolute;left:12.4%;top:17%;width:50.8%;height:49.2%;padding:0;border:0;
 border-radius:14%;background:#081812;
 clip-path:polygon(10% 5%,94% 0,100% 10%,88% 91%,79% 100%,6% 96%,0 86%);
 box-shadow:none;
}
.tv-hotspot[data-hotspot="creatorTerminal"] .tv-screen img{display:none}
.tv-hotspot[data-hotspot="creatorTerminal"] .tv-screen video{object-fit:contain;opacity:.9;filter:saturate(.72) sepia(.12)}
.tv-hotspot[data-hotspot="creatorTerminal"] .tv-screen:after{
 background:linear-gradient(132deg,#deefd819,transparent 46%,#020b0733);box-shadow:inset 0 0 9px #0009;
}
.tv-hotspot[data-hotspot="creatorTerminal"] .tv-off{font-size:0;letter-spacing:0;background:linear-gradient(135deg,#233e2b,#0b1c14 65%);opacity:.92}
.tv-hotspot[data-hotspot="creatorTerminal"] .tv-power{
 right:41.5%;bottom:18%;width:3px;height:3px;border-radius:50%;font-size:0;background:#cd713b;box-shadow:0 0 3px #cf8247;
}
.tv-hotspot[data-hotspot="creatorTerminal"] .tv-power.on{background:#b6e49a;box-shadow:0 0 5px #a3d483}
.tv-hotspot[data-hotspot="creatorTerminal"]:hover,.tv-hotspot[data-hotspot="creatorTerminal"]:focus-visible{outline:1px solid #e9bf7580;outline-offset:3px;border-radius:12px!important}
/* Unverified walk atlases are not used as a decorative entrance animation. */
.actor.npc{animation:none!important;transition:none!important}

/* Keep decisions legible in every pointer and keyboard state. */
.speech .choice,.speech .choice:hover:not(:disabled),.speech .choice:focus-visible,.speech .choice:active{color:#fff4d8;background:#391e36;border:1px solid #b49069;padding:12px 15px;font:600 15px/1.5 system-ui,sans-serif;text-shadow:none}
.speech .choice:hover:not(:disabled),.speech .choice:focus-visible{background:#6b364e;color:#fff9e8;border-color:#f0d19d}
.speech .choice:before{color:#f2ca8d}.speech .choice:disabled{opacity:1;color:#b6a3b0;background:#302632;border-color:#64515f}

/* Keep the complete outfit visible while the details column scrolls. */
@media(min-width:651px){.fashion-mirror{position:sticky;top:0;align-self:start;min-height:0;height:min(740px,90dvh)}.fashion-mirror .full-look{height:min(535px,calc(90dvh - 150px))}}
