/* Additive, scoped VCR overlay. Never changes room imagery or other games. */
#livingRoomVCRHotspot,#livingRoomTapesHotspot{position:absolute;z-index:2;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;padding:0;margin:0;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
#livingRoomVCRHotspot{left:42.7%;top:51.3%;width:6.2%;height:4%}
#livingRoomTapesHotspot{left:21.5%;top:46%;width:10.7%;height:14%}
#livingRoomVCRHotspot::before,#livingRoomVCRHotspot::after,#livingRoomTapesHotspot::before,#livingRoomTapesHotspot::after{display:none;content:none}
#vhsDialog{box-sizing:border-box;width:min(960px,96vw);max-width:96vw;max-height:94dvh;padding:0;border:2px solid #73533c;border-radius:3px;background:#211b18;color:#eadfc7;box-shadow:0 15px 70px #000b;overflow:auto}
#vhsDialog::backdrop{background:#080b0ecc}
#vhsDialog [hidden]{display:none!important}
#vhsDialog button{font:700 12px 'Courier New',monospace;letter-spacing:.07em;min-height:44px;cursor:pointer;touch-action:manipulation}
#vhsDialog button:focus-visible{outline:2px solid #eac77d;outline-offset:3px}
#vhsDialog .vhs-toolbar{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;gap:12px;background:#29221c;border-bottom:1px solid #5c4836}
#vhsDialog h2{font:700 17px 'Courier New',monospace;letter-spacing:.12em;margin:0}
#vhsDialog .vhs-toolbar button,#vhsDialog .vhs-paper button,#vhsBrowse,#vhsBackDeck{color:#ebdfc8;background:#39342d;border:1px solid #7e7360;padding:10px 16px;border-radius:2px}
#vhsBoxHeading{font:italic 18px Georgia,serif;padding:10px 18px;margin:0;color:#d6bf9b}
.vhs-box-stage{position:relative;line-height:0}
.vhs-box-stage>img{display:block;width:100%;height:auto}
#vhsTapeTargets{position:absolute;inset:0}
#vhsDialog .vhs-tape-target{position:absolute;background:transparent;border:0;padding:0;border-radius:0;box-shadow:none}
#vhsDialog .vhs-tape-target:hover{background:transparent}
#vhsDialog .vhs-paper{margin:12px 18px;padding:14px 18px;background:#e2d4ac;color:#302c24;box-shadow:2px 3px 8px #0007;font:16px Georgia,serif}
#vhsDialog .vhs-paper h3{margin:0 0 6px;font:700 17px 'Courier New',monospace}
#vhsDialog .vhs-paper p{margin:6px 0 12px}
#vhsExtraTapes{display:flex;flex-wrap:wrap;gap:12px;padding:0 18px}
#vhsDialog .vhs-extra-tape{margin:12px 0;background:#171717;color:#e4dec8;border:7px ridge #333;padding:20px;font-family:'Courier New',monospace}
.vhs-box-footer{padding:12px 18px;display:flex;justify-content:flex-end}
.vhs-machine{position:relative;isolation:isolate;line-height:0;width:min(100%,560px);margin:0 auto;}
.vhs-machine>img{display:block;width:100%;height:auto}
#vhsScreen{position:absolute;left:20.6%;top:9.1%;width:59%;height:51.2%;border-radius:7% / 9%;overflow:hidden;background:#101835;box-shadow:inset 0 0 24px #000;line-height:normal}
#vhsPreview{width:100%;height:100%;object-fit:cover;filter:saturate(.78) contrast(.94);}
#vhsScreen::after{content:'';position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(transparent 0 3px,#0002 3px 4px);box-shadow:inset 0 0 35px #0008}
#vhsScreenText{position:absolute;left:8%;top:10%;color:#d5e6ff;font:clamp(14px,2.5vw,25px) 'Courier New',monospace;text-shadow:1px 1px #30559a}
#vhsTapeTime{position:absolute;bottom:8%;right:8%;color:#eee;font:clamp(11px,2vw,20px) 'Courier New',monospace;text-shadow:1px 1px 3px #000}
#vhsScreen.vhs-winding::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 30px,#dae1ed75 31px 33px,transparent 34px 62px);animation:vhsTracking .45s linear infinite}
@keyframes vhsTracking{to{transform:translateY(62px)}}
.vhs-deck-panel{background:linear-gradient(#686966,#454643 6%,#222622 15%,#30322d 90%,#141614);border:3px ridge #7b7e77;padding:16px 20px 20px;box-shadow:0 8px 16px #0008}
#vhsSlotLabel{height:27px;max-width:440px;margin:0 auto 14px;background:#141510;box-shadow:inset 0 3px 8px #000;border:1px solid #848179;color:#c1b697;overflow:hidden;padding:5px 8px;text-align:center;font:12px 'Courier New',monospace;letter-spacing:.04em}
.vhs-led{margin:0 auto 15px;max-width:340px;padding:10px;background:#07130f;border:2px inset #5a6153;color:#99d5a6;font:20px 'Courier New',monospace;text-shadow:0 0 5px #5b9c6c;display:flex;justify-content:space-between;gap:20px}
.vhs-transport{display:flex;justify-content:center;gap:8px}
#vhsDialog .vhs-transport button{min-width:65px;padding:12px 8px;background:linear-gradient(#696b66,#363b37);color:#eee9db;border:2px outset #8a8e85;border-radius:3px;box-shadow:0 3px 4px #0006}
#vhsDialog .vhs-transport button[aria-pressed=true]{border-style:inset;color:#b4d6b3;background:#2c342d}
#vhsDialog button:disabled{opacity:.45;cursor:default}
.vhs-deck-footer{padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px}
#vhsLoaded{font:14px 'Courier New',monospace;line-height:1.4}
@media(max-width:600px){#vhsDialog{width:98vw;max-width:98vw}.vhs-deck-panel{padding:12px 8px}.vhs-transport{gap:5px}#vhsDialog .vhs-transport button{min-width:0;flex:1;font-size:11px;padding:12px 3px}.vhs-deck-footer{align-items:flex-start;flex-direction:column}.vhs-led{font-size:18px}#vhsDialog .vhs-paper{margin:10px;padding:12px}}
@media(prefers-reduced-motion:reduce){#vhsScreen.vhs-winding::before{animation:none}}
@media(pointer:coarse){#livingRoomVCRHotspot{left:46%;top:53.3%;width:max(6.2%,44px);height:max(4%,32px);transform:translate(-50%,-50%)}}

/* Picture search follows the same timeline as playback, with silent VHS tracking. */
#vhsScreen.vhs-winding::before{z-index:2;pointer-events:none;opacity:.55}
#vhsScreen::after{z-index:3}
#vhsScreenText,#vhsTapeTime{z-index:4}
#vhsScreen.vhs-winding #vhsPreview{animation:vhsSearchJitter .28s steps(2,end) infinite}
#vhsScreen.vhs-rewinding::before{animation-direction:reverse}
#vhsScreen.vhs-rewinding #vhsPreview{animation-direction:reverse}
@keyframes vhsSearchJitter{0%,100%{transform:translate(0,0)}33%{transform:translate(1px,-2px)}66%{transform:translate(-1px,2px)}}
@media(prefers-reduced-motion:reduce){#vhsScreen.vhs-winding #vhsPreview{animation:none}}

/* Text belongs to the preserved broadcast/home recording, inside the CRT only. */
#vhsRecordedCopy{position:absolute;inset:0;z-index:4;pointer-events:none;font-family:'Courier New',monospace;color:white;text-shadow:1px 1px 1px #000;line-height:1.15}
#vhsRecordedCopy .vhs-recorded-brand{position:absolute;top:5%;left:5%;max-width:90%;padding:3px 5px;background:#14325ce6;font-size:clamp(8px,1.5vw,13px);font-weight:bold}
#vhsRecordedCopy .vhs-recorded-headline{position:absolute;bottom:28%;left:3%;right:3%;padding:4px;background:#153759e8;font:bold clamp(9px,1.6vw,14px) Arial,sans-serif;border-bottom:2px solid #c8ad69}
#vhsRecordedCopy .vhs-recorded-cc{position:absolute;bottom:3%;left:4%;right:4%;background:#000e;padding:4px;text-align:center;font-size:clamp(10px,1.7vw,15px);font-weight:bold}
#vhsRecordedCopy .vhs-recorded-date{position:absolute;left:7%;bottom:8%;font-size:clamp(9px,1.6vw,14px)}
#vhsScreen.vhs-recorded-tracking::before{content:'';position:absolute;inset:0;z-index:2;pointer-events:none;opacity:.6;background:repeating-linear-gradient(0deg,transparent 0 26px,#e7e9edaa 27px 31px,transparent 32px 61px);animation:vhsTracking .25s linear infinite}
@media(prefers-reduced-motion:reduce){#vhsScreen.vhs-recorded-tracking::before{animation:none}}
#vhsRecordedCopy{display:flex;flex-direction:column;justify-content:flex-end;box-sizing:border-box;padding:3%;gap:3px}
#vhsRecordedCopy .vhs-recorded-headline,#vhsRecordedCopy .vhs-recorded-cc{position:static;margin:0}
#vhsRecordedCopy .vhs-recorded-date{top:8%;bottom:auto}
/* Rental preview loading and error states are confined to the existing playback area. */
#vhsScreen.vhs-loading::before{content:'';position:absolute;inset:0;z-index:5;pointer-events:none;background:repeating-linear-gradient(0deg,#b4c3cc33 0 2px,transparent 3px 9px);animation:vhsTracking .18s linear infinite}
#vhsScreen.vhs-rental #vhsPreview{display:block;transform-origin:center;}
#vhsMediaError{margin:10px 18px;color:#f3d7a2;font:14px/1.5 'Courier New',monospace}
#vhsRentalSound{margin:10px 18px;color:#ebdfc8;background:#39342d;border:1px solid #7e7360;padding:10px 16px}
@media(prefers-reduced-motion:reduce){#vhsScreen.vhs-rental #vhsPreview{transform:none!important}#vhsScreen.vhs-loading::before{animation:none}}

/* Rental film captions only; home recordings retain their own broadcast graphics. */
#vhsScreen.vhs-rental #vhsRecordedCopy{padding:4% 5% 19%}
#vhsScreen.vhs-rental #vhsRecordedCopy .vhs-recorded-brand{background:#10101088;font:normal clamp(10px,1.7vw,15px) Georgia,serif;letter-spacing:.04em}
#vhsScreen.vhs-rental #vhsRecordedCopy .vhs-recorded-headline{background:#10101099;border:0;text-align:center;font:italic clamp(10px,1.8vw,16px) Georgia,serif;padding:5px}
#vhsRentals{color:#ebdfc8;background:#39342d;border:1px solid #7e7360;padding:10px 16px;border-radius:2px}
