/*
Theme Name: The Graylight Proberaum
Version: 1.7.4
Text Domain: graylight
*/
*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;background:#11100e;color:#ede7db;font:16px/1.5 Arial,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #f6c77a;outline-offset:5px}header{height:82px;display:flex;align-items:center;gap:26px;padding:0 4vw;border-bottom:1px solid #ffffff16;background:#11100e}.brand{color:#eee9df;text-decoration:none;font-size:12px;letter-spacing:3px;line-height:1;display:grid;text-align:center}.brand strong{font-size:25px;letter-spacing:1px;margin-top:5px}nav{display:flex;gap:24px;margin-left:auto}nav button,footer button{border:0;background:none;padding:10px 0}nav button:hover{color:#e9b565}.preview{font-size:11px;letter-spacing:2px;color:#a49a8a;border:1px solid #514b40;padding:4px 7px}.room{position:relative;width:min(100%,1700px);margin:auto;isolation:isolate}.scene{width:100%;display:block}.hotspot{position:absolute;display:flex;align-items:center;justify-content:center;border:0;background:transparent;transition:filter .2s,transform .2s}.hotspot:focus-visible{outline-offset:0}.hotspot:hover{filter:brightness(1.2)}.hotspot>span{pointer-events:none}.poster{left:35.5%;top:2%;width:15%;height:37%}.photo{left:51%;top:5%;width:20%;height:30%}.poster span,.photo span{opacity:0;background:#171512e8;padding:8px 16px;transition:opacity .2s}.poster:hover span,.photo:hover span,.poster:focus-visible span,.photo:focus-visible span,.reveal .poster span,.reveal .photo span{opacity:1}.television{left:76.2%;top:3.8%;width:14%;height:17%}.tv-play{font-size:48px;line-height:1;text-shadow:0 0 20px #f3c17b;color:#ebd8b5}.tv-play small{display:block;font-size:12px;letter-spacing:2px;margin-top:7px}.tape{left:46%;top:39%;width:18%;height:24%}.tape-label{align-self:flex-end;background:#d6c7a6;color:#24201c;font-size:14px;font-weight:bold;letter-spacing:2px;transform:rotate(-2deg);padding:4px 14px;margin-bottom:0;box-shadow:0 3px 5px #0008}.fridge{left:77%;top:28%;width:19%;height:39%;align-items:flex-start;padding-top:4%}.paper{background:#e6d4b2;color:#2b241b;padding:14px 16px;transform:rotate(4deg);box-shadow:1px 5px 8px #0007;text-align:left;position:relative;width:95%}.paper:before{content:'';width:16px;height:16px;background:#842d20;border-radius:50%;position:absolute;top:-6px;left:45%;box-shadow:1px 3px 4px #0005}.paper b{display:block;font-size:11px;letter-spacing:2px;border-bottom:1px dashed #827053;padding-bottom:6px}.paper em{display:block;font-family:Georgia,serif;font-size:clamp(16px,1.65vw,28px);font-style:normal;line-height:1.2;margin:10px 0}.paper small{font-size:12px}.flightcase{left:46%;top:70%;width:46%;height:29%;perspective:700px}.case-label{background:#151613e6;border:1px solid #9e9780;padding:12px 20px;transform:rotate(3deg);font-size:clamp(15px,1.5vw,25px);font-weight:900;letter-spacing:2px;text-shadow:1px 2px #000;box-shadow:0 3px 8px #0007;transition:transform .25s}.case-label small{display:block;font-size:12px;letter-spacing:1px;font-weight:400;margin-top:4px}.flightcase:hover .case-label{transform:rotate(3deg) translateY(-8px)}footer{padding:16px 4vw;display:flex;justify-content:space-between;align-items:center;color:#afa696;font-size:14px}footer button{color:#d8c7aa}dialog{border:1px solid #786e5a;background:#191713;color:#eee7d9;width:min(680px,92vw);max-height:88dvh;padding:38px;box-shadow:0 20px 100px #000;border-radius:3px}dialog::backdrop{background:#080706c9;backdrop-filter:blur(6px)}.close{position:absolute;right:12px;top:8px;border:0;background:none;font-size:32px;line-height:1;width:44px;height:44px}h1,h2{font-family:Georgia,serif;font-weight:400;font-size:36px;line-height:1.15;margin:10px 0 24px}.eyebrow{letter-spacing:3px;font-size:12px;color:#bfaa88;text-transform:uppercase}p{color:#c5bcad}.empty{padding:24px;border:1px dashed #6c604d;background:#211d17}.primary{border:1px solid #d4bd8e;background:#d4bd8e;color:#19160f;padding:12px 20px;text-decoration:none;display:inline-block}.media-image{max-width:100%;max-height:65vh;object-fit:contain;display:block;margin:auto}.songs{list-style:none;padding:0;margin:12px 0}.songs li{border-bottom:1px solid #ffffff18}.songs button{width:100%;background:none;border:0;display:flex;align-items:center;gap:15px;text-align:left;padding:13px 4px;font-size:16px}.songs button.active{color:#e8bc72}.track-no{color:#9c8d73;font-size:12px;width:20px}.songs small{margin-left:auto;color:#a99c87}.transport{display:flex;align-items:center;gap:15px;margin:20px 0}.transport button{background:#d4bd8e;color:#21190e;border:0;width:48px;height:48px}.transport input{flex:1;accent-color:#d4bd8e;min-width:20px}.transport time{font-size:13px;min-width:75px}.download-row{display:flex;gap:20px;justify-content:space-between;padding:18px 0;border-bottom:1px solid #ffffff20}.download-row a{color:#e8bc72}.download-row small{color:#a79983}.video-wrap{aspect-ratio:16/9;background:black}.video-wrap iframe{width:100%;height:100%;border:0}#nowPlaying{position:fixed;left:50%;bottom:14px;transform:translateX(-50%);display:flex;align-items:center;gap:10px;z-index:5;background:#15130fee;border:1px solid #766145;padding:6px 10px;box-shadow:0 5px 30px #0008;max-width:90vw}#nowPlaying[hidden]{display:none}#nowPlaying button{background:none;border:0;padding:8px}#miniTitle{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}.notice{font-size:13px;color:#a99c87}.press-open{animation:openCase .3s ease-out}@keyframes openCase{from{transform:translateY(30px) rotateX(-12deg);opacity:0}to{transform:none;opacity:1}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}@media(max-width:700px){header{height:auto;min-height:100px;flex-wrap:wrap;gap:8px;padding:14px 5vw}.brand strong{font-size:21px}nav{order:3;width:100%;justify-content:space-between;gap:10px}nav button{font-size:14px}.preview{margin-left:auto}footer{gap:10px;align-items:flex-start;font-size:12px}dialog{padding:30px 22px}h2{font-size:30px}.room{min-height:420px}.case-label{padding:7px;font-size:13px}.case-label small{font-size:10px}.paper{padding:8px}.paper em{font-size:14px}.paper b{font-size:9px}.paper small{font-size:10px}.tv-play{font-size:30px}.tv-play small{font-size:8px}.tape-label{font-size:10px;padding:3px}.mobile-ready .scene{width:100%}.mobile-ready .poster{left:20%;top:1%;width:60%;height:21%}.mobile-ready .photo{display:none}.mobile-ready .tape{left:24%;top:23%;width:52%;height:17%}.mobile-ready .television{left:25%;top:42%;width:43%;height:14%}.mobile-ready .fridge{left:23%;top:60%;width:56%;height:23%;padding-top:2%}.mobile-ready .flightcase{left:9%;top:84%;width:80%;height:14%}.mobile-ready .paper{max-width:230px;padding:16px}.mobile-ready .paper em{font-size:23px}.mobile-ready .paper b{font-size:11px}.mobile-ready .paper small{font-size:13px}.mobile-ready .case-label{font-size:17px;padding:12px}.mobile-ready .case-label small{font-size:12px}.mobile-ready .tv-play{font-size:48px}.mobile-ready .tv-play small{font-size:12px}.mobile-ready .tape-label{font-size:14px;padding:4px 10px}}
.poster img,.photo img{position:absolute;width:100%;height:100%;object-fit:fill;z-index:-1;box-shadow:0 2px 8px #0007}.poster{transform:rotate(-1deg);left:35.8%;top:2%;width:14.2%;height:36.5%}.photo{transform:rotate(-2deg);left:52%;top:10%;width:17.2%;height:20.4%;padding:0}@media(max-width:700px){.mobile-ready .poster{left:31.5%;top:3.3%;width:36.5%;height:20.8%;transform:none}.mobile-ready .tape{left:33%;top:25.2%;width:32%;height:13.5%}.mobile-ready .television{left:34.5%;top:40.3%;width:26.5%;height:10.3%}.mobile-ready .fridge{left:28%;top:53.5%;width:44%;height:23%;padding-top:7%}.mobile-ready .flightcase{left:19%;top:79%;width:62%;height:14%}.mobile-ready .tv-play{font-size:36px}.mobile-ready .tv-play small{font-size:10px}.mobile-ready .case-label{font-size:14px;letter-spacing:1px}.mobile-ready .case-label small{font-size:10px}.mobile-ready .paper{padding:12px}.mobile-ready .paper em{font-size:19px}.mobile-ready .paper b{font-size:10px}.mobile-ready .tape-label{font-size:11px;letter-spacing:1px}}
.poster,.photo{isolation:isolate}.poster img,.photo img{z-index:0}.poster span,.photo span{position:relative;z-index:1}
.download-row a{white-space:nowrap;font-size:14px}.download-row{align-items:center}@media(max-width:400px){.download-row{gap:12px}.download-row small{font-size:12px}}

/* Local revision 2026-09-13: official logo, CRT still and case lettering. */
.brand{display:block;line-height:0;flex-shrink:0}.brand img{display:block;width:172px;height:auto;max-height:64px;object-fit:contain}
.legal-links{display:flex;gap:22px;flex-wrap:wrap}.legal-links a{color:#afa696;text-decoration:none;padding:10px 0}.legal-links a:hover{color:#e9b565;text-decoration:underline}
.television{left:77.15%;top:4.85%;width:12.65%;height:16.05%;padding:0;transform:rotate(-1deg);border-radius:12% / 17%}
.tv-screen{position:absolute;inset:0;overflow:hidden;border-radius:12% / 17%;background:#242420;box-shadow:inset 0 0 9px 4px #000b;isolation:isolate}
.tv-screen img{width:100%;height:100%;display:block;object-fit:cover;filter:grayscale(1) sepia(.18) contrast(.8) brightness(.72) blur(.35px);opacity:.87}
.tv-screen:before{content:'';position:absolute;inset:0;z-index:1;background:repeating-linear-gradient(0deg,#0003 0 1px,transparent 1px 3px);box-shadow:inset 0 0 12px 5px #0009;pointer-events:none}
.tv-screen:after{content:'';position:absolute;inset:0;z-index:3;pointer-events:none;background:radial-gradient(ellipse at 9% 25%,#dceeff88 0,transparent 9%),radial-gradient(ellipse at 94% 45%,#e9b47577 0,transparent 5%),linear-gradient(118deg,#c5d9e322 4%,#ffffff05 30%,transparent 45%,#e6c79d0a 75%);border:1px solid #b4b3a326;border-radius:inherit}
.tv-screen .tv-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:2;font-size:clamp(24px,4.5vw,66px);color:#f3e5c9c9;text-shadow:0 1px 5px #000}
.paper em{margin-top:2px}.paper{width:95%}
.flightcase .case-label{position:absolute;left:15%;top:36%;width:66%;padding:0;border:0;box-shadow:none;font-family:'Stencil','Arial Black',Impact,monospace;font-size:clamp(16px,3.1vw,49px);font-weight:900;line-height:1.1;letter-spacing:.07em;transform:rotate(4deg) skewX(2deg);text-shadow:none;color:transparent;background:linear-gradient(to bottom,#d6cfba 0 46%,transparent 46% 51%,#d6cfba 51% 100%);background-clip:text;-webkit-background-clip:text;opacity:.82;mix-blend-mode:screen}
.flightcase:hover .case-label{transform:rotate(4deg) skewX(2deg);opacity:1}
@media(max-width:700px){.brand img{width:150px;max-height:58px}.legal-links{gap:16px}.mobile-ready .television{left:34.5%;top:40.3%;width:26.5%;height:10.3%;transform:none}.mobile-ready .tv-screen .tv-play{font-size:36px}.mobile-ready .flightcase .case-label{left:9%;top:43%;width:82%;font-size:clamp(18px,5.8vw,36px);transform:rotate(0deg);letter-spacing:.06em}.mobile-ready .paper em{margin-top:0}.mobile-ready .paper{padding:10px 12px}}
/* Print follows the lid plane and leaves metal strips and handle visible. */
@media(min-width:701px){.flightcase .case-label,.flightcase:hover .case-label{top:8%;left:17%;width:65%;transform:rotate(3deg) skewX(-32deg) scaleY(.62);font-size:clamp(16px,3vw,48px)}}
@media(max-width:700px){.mobile-ready .flightcase .case-label{top:9%;left:13%;width:74%;transform:scaleY(.6);font-size:clamp(16px,5.2vw,32px)}}
@media(max-width:700px){.mobile-ready .flightcase .case-label{top:-5%}}

/* Round 2: quiet media dialogs, tape play symbol, inset stencil print. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
dialog.media-panel{padding-top:55px}.media-panel .transport{margin-top:0}.video-wrap{min-height:200px}.video-wrap iframe{display:block}#videoStatus:empty{display:none}#videoStart[hidden]{display:none}
.tape-play{font-size:clamp(30px,4.5vw,68px);line-height:1;color:#f3e5c9d9;text-shadow:0 1px 5px #000,0 0 14px #bba17488;position:absolute;left:36%;top:60%}
@media(min-width:701px){.flightcase .case-label,.flightcase:hover .case-label{top:-2%;left:22%;width:55%;font-size:clamp(14px,2.5vw,40px);transform:rotate(3deg) skewX(-32deg) scaleY(.5)}}
@media(max-width:700px){.mobile-ready .tape-play{font-size:36px;left:35%;top:53%}.mobile-ready .flightcase .case-label{top:-12%;left:20%;width:60%;font-size:clamp(14px,4.2vw,27px);transform:scaleY(.42)}}
.back-link{color:#d8c7aa;text-decoration:none}.legal-page header .back-link{margin-left:auto}.legal-content{width:min(800px,90%);margin:48px auto 64px;overflow-wrap:anywhere}.legal-content p{line-height:1.75}.legal-content h1{margin-bottom:32px}
.legal-content h2{font-size:25px;margin:36px 0 14px}.legal-content li{color:#c5bcad;margin:5px 0}

/* Longer mobile room: original poster and independently aligned objects. */
.mobile-poster{display:none}
@media(max-width:700px){
 .mobile-ready .poster{left:22%;top:2%;width:56%;height:auto;aspect-ratio:5044 / 7052;transform:rotate(-.6deg);padding:0}
 .mobile-ready .poster .mobile-poster{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain;box-shadow:1px 4px 9px #0009}
 .mobile-ready .tape{left:31.5%;top:30%;width:37.5%;height:9%}
 .mobile-ready .tape-play{left:38%;top:62%;font-size:36px}
 .mobile-ready .television{left:31.9%;top:44%;width:31.7%;height:6.85%;transform:none}
 .mobile-ready .fridge{left:23%;top:54.5%;width:54.5%;height:25.4%;padding:15% 5% 0;align-items:flex-start}
 .mobile-ready .paper{width:100%;max-width:none;padding:16px 12px;transform:rotate(3deg)}
 .mobile-ready .paper em{font-size:21px;line-height:1.2;margin:0 0 14px}.mobile-ready .paper small{font-size:12px}
 .mobile-ready .flightcase{left:10.8%;top:82%;width:79%;height:12.2%}
}

/* WordPress integration */
nav{gap:18px;flex-wrap:wrap}button,input,a.primary{min-height:44px}input:focus-visible,select:focus-visible{outline:3px solid #f6c77a;outline-offset:3px}
.reel{position:absolute;top:10%;width:29%;aspect-ratio:1;border-radius:50%;background:conic-gradient(transparent 0 40deg,#b9b1a666 40deg 58deg,transparent 58deg 160deg,#b9b1a666 160deg 178deg,transparent 178deg 280deg,#b9b1a666 280deg 298deg,transparent 298deg);border:1px solid #b9b1a64d;animation:reel-spin 2s linear infinite;animation-play-state:paused;pointer-events:none}.reel-left{left:12%}.reel-right{right:12%}.is-playing .reel{animation-play-state:running}@keyframes reel-spin{to{transform:rotate(360deg)}}
.concert{padding:18px 0;border-bottom:1px solid #ffffff26}.concert h3{margin:5px 0}.video-select{width:100%;min-height:44px;margin:0 0 14px;background:#26231c;color:#eee7d9;padding:8px}.download-row{overflow-wrap:anywhere}.download-row a{padding:10px 0}.tv-screen:before{background:none}.tv-screen img{filter:grayscale(1) sepia(.18) brightness(.85)}
@media(max-width:700px){nav{gap:2px 14px;justify-content:flex-start}nav button{padding:8px 2px}footer{flex-wrap:wrap;padding-bottom:75px}.reel{top:5%;width:29%}.reel-left{left:12%}.reel-right{right:11%}.download-row{align-items:flex-start;flex-wrap:wrap}.preview{display:none}}
@media(prefers-reduced-motion:reduce){.reel{animation:none!important}}
@media(min-width:701px){.reel{top:-1%;width:43%}.reel-left{left:3%}.reel-right{right:3%}}
.video-wrap{width:100%;min-height:0}dialog{overflow-x:hidden}.video-wrap iframe{min-width:0}
dialog.video-expanded{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border:0}.video-wrap:fullscreen{width:100vw;height:100vh;background:#000}.video-wrap:fullscreen iframe{width:100%;height:100%}

/* Editorial controls retain room geometry. */
nav a{color:inherit;text-decoration:none;padding:10px 0;display:inline-block;min-height:44px}nav a:hover{color:#e9b565}.editorial-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.editorial-links a{color:#e8bc72;overflow-wrap:anywhere}dialog p,dialog a{overflow-wrap:anywhere}.image-caption:empty{display:none}.editorial-copy:empty{display:none}header{min-height:82px;height:auto;padding-top:9px;padding-bottom:9px}.brand-note{font-size:11px;line-height:1.4;color:#afa696;margin:0}.image-note{margin:5px 0}.tv-credit{font-size:11px}
@media(max-width:700px){nav a{font-size:14px;padding:8px 2px}header{min-height:100px;padding:14px 5vw}}

/* Mobile poster is an image; desktop interaction and room geometry stay intact. */
.mobile-poster-static{display:none}
@media(max-width:700px){
 body.mobile-ready header nav{display:none}
 body.mobile-ready header{min-height:0;height:auto;flex-wrap:nowrap}
 .mobile-ready .desktop-poster{display:none}
 .mobile-ready .mobile-poster-static{display:block;position:absolute;cursor:default;isolation:isolate}
 .mobile-poster-static img{cursor:default}
}

/* 1.2.1: reel projection stays fixed; only the three cutouts rotate. */
.reel{top:auto;left:auto;right:auto;width:auto;aspect-ratio:auto;border:0;background:none;border-radius:0;animation:none;min-height:0;pointer-events:none;position:absolute;transform:translate(-50%,-50%);transform-origin:center;z-index:1}
.reel-left{left:50.7775%;top:46.43996%;width:8.134%;height:14.453%}
.reel-right{left:59.50957%;top:46.54623%;width:8.074%;height:14.453%}
.reel-rotor{display:block;width:100%;height:100%;overflow:visible;animation:reel-spin 2s linear infinite;animation-play-state:paused;transform-origin:50% 50%}
.is-playing .reel-rotor{animation-play-state:running}
.concert-poster{left:39%;top:5.4%;width:10.6%;height:28%;padding:0;transform:perspective(700px) rotateY(5deg) rotate(-2.5deg) skewY(-.5deg);transition:filter .2s}
.concert-poster:hover{transform:perspective(700px) rotateY(5deg) rotate(-2.5deg) skewY(-.5deg)}
.concert-poster .room-poster{width:100%;height:100%;object-fit:contain;filter:brightness(.78) sepia(.18) saturate(.72);box-shadow:none;position:static;display:block}
.concert-poster{filter:drop-shadow(2px 4px 3px #0009)}
.concert-poster:hover{filter:drop-shadow(2px 4px 3px #0009) brightness(1.07)}
.concert-poster span{position:absolute;bottom:8%;font-size:12px;padding:5px 9px;white-space:nowrap}
#panel.poster-expanded{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border:0;border-radius:0;padding:64px 12px 12px;background:#090909;overflow:hidden}
.poster-expanded #panelContent{height:100%;width:100%;display:flex;align-items:center;justify-content:center}
.poster-expanded .poster-original{width:100%;height:100%;object-fit:contain;filter:none;box-shadow:none}
.poster-expanded .close{z-index:2;top:8px;right:12px;background:#292929;border:1px solid #eee;border-radius:4px;width:auto;min-width:112px;height:44px;font-size:16px;padding:8px 14px}
html:has(#panel[open].poster-expanded){overflow:hidden}
@media(max-width:700px){
 .mobile-ready .concert-poster{display:flex;left:22%;top:2%;width:56%;height:26.23%;aspect-ratio:auto;transform:rotate(-.6deg)}
 .mobile-ready .concert-poster:hover{transform:rotate(-.6deg)}
 .mobile-ready .reel-left{left:40.6077%;top:32.6888%;width:17.127%;height:5.616%;}
 .mobile-ready .reel-right{left:59.5304%;top:32.6888%;width:17.127%;height:5.616%;}
 /* Original mobile background has baked-in cutouts: enable only with the cleaned asset. */
 body:not(.mobile-reels-clean) .reel{display:none}
}
@media(prefers-reduced-motion:reduce){.reel-rotor{animation:none!important}}

/* 1.3.2: TV surface enlarged to match the user-marked screen area; controls stay outside the room. */
.tv-trigger{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:none;border-radius:inherit}
.tv-trigger[hidden],.tv-inline-player[hidden],.tv-controls[hidden]{display:none}
.tv-inline-player{position:absolute;inset:0;overflow:hidden;border-radius:inherit;background:#080808}
.tv-inline-player .video-wrap{width:100%;height:100%;aspect-ratio:auto;overflow:hidden}
.tv-inline-player iframe{width:100%;height:100%;border:0;display:block}
.tv-controls{padding:8px 4vw;display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-bottom:1px solid #ffffff20;background:#191713}
.tv-controls label{font-size:13px}.tv-controls select{min-height:44px;max-width:240px;background:#26231c;color:#eee7d9;padding:8px;border:1px solid #786e5a}
.tv-controls button,.tv-controls a{min-height:44px;padding:10px 14px;font-size:14px}.tv-controls button{background:#d4bd8e;color:#19160f;border:0}.tv-controls a{color:#e8bc72}
#tvButtons{display:flex;align-items:center;gap:12px;flex-wrap:wrap}#tvButtons p{margin:0;font-size:12px}#tvButtons #videoStatus{max-width:300px}
@media(min-width:701px){
 .television{left:76.5550239%;top:4.5696068%;width:13.8755981%;height:17.6408077%;transform-origin:0 0;transform:matrix3d(0.9595436201,-0.0537675304,0,var(--tv-project-x,0),0.0060251469,1.0001743809,0,var(--tv-project-y,0),0,0,1,0,0,0,0,1);border-radius:4.5% / 6.5%}
 .television:hover{filter:none;transform:matrix3d(0.9595436201,-0.0537675304,0,var(--tv-project-x,0),0.0060251469,1.0001743809,0,var(--tv-project-y,0),0,0,1,0,0,0,0,1)}
 .tv-screen{border-radius:inherit}.tv-screen img{object-fit:cover}
 /* The note belongs to the front door plane, clear of the handle and lower sticker. */
 .fridge{left:79.1%;top:29.5%;width:15.9%;height:31%;padding:0;align-items:flex-start;overflow:visible}
 .paper{width:100%;padding:clamp(10px,1vw,17px);transform:matrix(1,.025,-.012,.98,0,0);transform-origin:50% 0}
 .paper em{font-size:clamp(14px,1.35vw,23px)}
 .paper-next{font-size:clamp(12px,.96vw,16px)}
 .paper small{font-size:clamp(11px,.8vw,13px)}
}
.paper{background:linear-gradient(115deg,#c7b99712,transparent 45%,#74684c10),repeating-linear-gradient(0deg,#493b2804 0 1px,transparent 1px 7px),#d5cbb1;color:#27231d;box-shadow:1px 2px 3px #0005,inset 0 0 12px #998a6930;text-align:left;overflow-wrap:anywhere}
.paper:before{width:12px;height:12px;top:-5px;left:48%;background:radial-gradient(circle at 35% 25%,#795243,#4c3029 70%);box-shadow:0 1px 2px #0007}
.paper em{margin:0 0 8px;line-height:1.15}.paper-next{display:block;line-height:1.35}.paper-next time{display:block;font-weight:bold;margin-bottom:4px}.paper-venue,.paper-empty{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.paper small{display:block;margin-top:9px;border-top:1px solid #63573e4d;padding-top:6px}
@media(min-width:701px) and (max-width:1100px){.paper-venue,.paper-empty{-webkit-line-clamp:2}}
footer{flex-wrap:wrap;gap:8px 24px}.social-links{flex:0 0 100%;margin:0;display:flex;justify-content:center;gap:8px 24px;padding-bottom:8px;border-bottom:1px solid #ffffff12}
.social-links a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 4px;font-size:13px;color:#bfb5a3}.social-links svg{width:20px;height:20px;flex-shrink:0}.social-links a:hover{color:#e9b565}
@media(max-width:700px){
 .mobile-ready .fridge{left:28%;top:59.5%;width:43%;height:16%;padding:0;align-items:flex-start}
 .mobile-ready .paper{padding:12px 11px;width:100%;transform:rotate(1.3deg);max-width:none}
 .mobile-ready .paper em{font-size:17px;margin:0 0 7px;line-height:1.15}.mobile-ready .paper-next{font-size:12px}.mobile-ready .paper small{font-size:11px;margin-top:8px}
 .mobile-ready .paper-venue,.mobile-ready .paper-empty{-webkit-line-clamp:3}
 footer .social-links{order:-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 14px}.social-links a{font-size:13px;padding:8px 4px;min-height:44px}
}

/* 1.3.3: CRT static appears only while interacting with the desktop preview. */
@media(min-width:701px) and (hover:hover) and (pointer:fine){
 .tv-trigger:is(:hover,:focus-visible) .tv-screen::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2296%22%20height%3D%2296%22%3E%3Cfilter%20id%3D%22n%22%3E%3CfeTurbulence%20type%3D%22fractalNoise%22%20baseFrequency%3D%22.95%22%20numOctaves%3D%223%22%20stitchTiles%3D%22stitch%22%2F%3E%3CfeColorMatrix%20type%3D%22saturate%22%20values%3D%220%22%2F%3E%3CfeComponentTransfer%3E%3CfeFuncA%20type%3D%22linear%22%20slope%3D%22.55%22%2F%3E%3C%2FfeComponentTransfer%3E%3C%2Ffilter%3E%3Crect%20width%3D%22100%25%22%20height%3D%22100%25%22%20filter%3D%22url%28%23n%29%22%2F%3E%3C%2Fsvg%3E");background-size:96px 96px;animation:tv-static .32s steps(4,end) infinite}
}
@keyframes tv-static{0%{background-position:0 0}25%{background-position:23px -17px}50%{background-position:-31px 11px}75%{background-position:7px 29px}100%{background-position:-13px -23px}}
@media(prefers-reduced-motion:reduce){.tv-trigger .tv-screen::before{animation:none!important}}

/* 1.3.4: inset both desktop TV surfaces slightly; retain overlap over the baked-in tube. */
@media(min-width:701px){
 .television .tv-trigger,.television .tv-inline-player{inset:2.5%;width:95%;height:95%}
}

/* 1.4.0: random room photo and accessible large photo gallery. */
.photo img{object-fit:cover}
dialog.photo-expanded{width:min(1200px,96vw);max-height:94dvh;padding:55px 28px 24px}
.photo-expanded h2{font-size:28px;margin:6px 0 18px}
.photo-stage{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:12px}
#galleryPhoto{grid-column:2;grid-row:1;width:100%;height:60dvh;object-fit:contain;display:block}
.photo-arrow{grid-row:1;border:1px solid #786e5a;background:#26231c;min-width:44px;height:56px;font-size:40px;line-height:1}
.photo-prev{grid-column:1}.photo-next{grid-column:3}.photo-arrow[hidden]{display:none}
#photoCount{text-align:center;margin:12px 0 6px;font-size:14px;color:#d8c7aa}
#photoCaption,#photoCredit{text-align:center;margin:5px 0;overflow-wrap:anywhere}
@media(max-width:700px){dialog.photo-expanded{padding:55px 12px 20px}.photo-stage{gap:5px;grid-template-columns:44px minmax(0,1fr) 44px}#galleryPhoto{height:50dvh}}

/* 1.7.4: mobile footer actions above privacy and imprint. */
@media(max-width:700px){
 body>footer>button[data-open="contact"],body>footer>button[data-open="help"]{order:0}
 body>footer>.legal-links{order:1;flex:0 0 100%;justify-content:center;gap:24px}
}
