@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:wght@400;500&display=swap');*{box-sizing:border-box}body{margin:0;background:#181714;color:#fff9ee;font-family:'DM Sans',sans-serif;overflow:hidden}button,a,select,input{touch-action:manipulation}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid #efb968;outline-offset:5px}[hidden]{display:none!important}#world{position:fixed;inset:0}canvas{display:block;touch-action:none}header{position:absolute;top:0;left:0;right:0;padding:28px 38px;display:flex;align-items:center;gap:20px;background:linear-gradient(#111b,transparent);pointer-events:none}header>*{pointer-events:auto}.brand{background:#fffaf1;padding:10px 14px;border-radius:3px}.brand img{width:98px;display:block}.identity{letter-spacing:5px;font-size:18px}.identity span{display:block;letter-spacing:2px;font-size:9px;margin-top:6px;color:#d0c7b8}.online{margin-left:auto;font-size:12px;background:#191b16b8;border:1px solid #ffffff24;border-radius:25px;padding:11px 15px}.online i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#b6cd9a;margin-right:8px}#welcome{position:absolute;inset:0;padding:20vh 7vw 0;background:linear-gradient(90deg,#121411e8,#12141181 45%,transparent 85%);pointer-events:none}#welcome>*{pointer-events:auto;width:fit-content}.eyebrow{font-size:11px;letter-spacing:3px;color:#d5b77d}h1{font-family:'Playfair Display',Georgia,serif;font-weight:400;font-size:clamp(42px,5.5vw,78px);line-height:1.12;margin:24px 0}#welcome p{color:#d2d1c9;line-height:1.9;font-size:16px}.primary{margin-top:24px;border:0;padding:18px 24px;background:#e8c898;color:#29251e;border-radius:4px;min-width:240px;text-align:left}.primary span{float:right}.small{font-size:11px;color:#b6b8ad;margin-top:17px}.note{position:absolute;bottom:24px;font-size:10px;color:#aeb0a7}.caption{position:absolute;left:36px;top:132px;pointer-events:none;text-shadow:0 2px 15px #000}.caption>span{letter-spacing:3px;font-size:10px;color:#efd1a2}.caption h2{font-family:Georgia,serif;font-size:26px;font-weight:400;margin:12px 0}.caption p{font-size:12px;color:#ded7c9}nav{position:absolute;bottom:65px;left:50%;transform:translateX(-50%);display:flex;padding:7px;background:#191b18ed;border:1px solid #fff2;border-radius:12px;gap:4px;white-space:nowrap}nav button,#stand,#audioPanel button{background:transparent;border:0;color:#cfcfc4;padding:13px 17px;border-radius:7px;font-size:13px}nav button.active{background:#e8c898;color:#211e19}#seatPanel{position:absolute;right:30px;top:135px;background:#191b18df;border:1px solid #fff2;padding:16px;border-radius:10px;max-width:240px}#seatPanel label{display:block;letter-spacing:2px;font-size:10px;color:#cbbb9d;margin-bottom:10px}select{background:#2d3029;border:1px solid #ffffff30;color:#fff;padding:10px;width:100%;border-radius:5px}#stand{padding:10px 0 0;font-size:11px}.foot{position:absolute;bottom:24px;width:100%;text-align:center;font-size:10px;color:#d9d6c7}.foot a{color:inherit;text-decoration:none}.foot span{padding:0 10px}#status{position:absolute;bottom:132px;left:50%;transform:translateX(-50%);background:#181b17d9;padding:8px 14px;border-radius:6px;font-size:12px;max-width:90vw}#status:empty{display:none}#audioPanel{position:absolute;bottom:134px;right:30px;background:#191b18f5;border:1px solid #fff2;padding:20px;border-radius:12px;width:255px}#audioPanel label{display:block;font-size:12px;margin-bottom:14px}input{display:block;width:100%;accent-color:#e8c898;margin-top:9px}#cinema{position:fixed;inset:0;background:#080909;z-index:5}#cinema video{width:100%;height:100%;object-fit:contain}.cinemaLabel{position:absolute;left:25px;top:25px;font-size:11px;letter-spacing:3px}#closeVideo{position:absolute;right:25px;top:22px;background:#161814cb;border:1px solid #fff5;color:white;padding:13px;border-radius:6px}#failure{position:absolute;top:40%;left:10%;right:10%;background:#252820;padding:30px;z-index:9}#failure button{display:block;margin-top:20px;padding:14px}@media(max-width:650px){header{padding:18px;gap:12px}.brand{padding:8px}.brand img{width:70px}.identity{font-size:14px;letter-spacing:3px}.identity span{font-size:7px;letter-spacing:1px}.online{font-size:10px;padding:9px}.online i{display:none}#welcome{padding:24vh 26px 0;background:linear-gradient(90deg,#121411d9,#12141150)}h1{font-size:45px}.caption{top:108px;left:20px}.caption h2{font-size:21px}.caption p{font-size:11px}#seatPanel{top:auto;bottom:143px;right:18px;width:195px;padding:11px}#seatPanel label{font-size:8px}nav{bottom:60px;width:calc(100% - 24px);justify-content:space-around}nav button{padding:13px 7px;font-size:11px}#status{bottom:270px;width:max-content;max-width:90%}#audioPanel{bottom:145px;right:18px;z-index:2}.note{max-width:85%;line-height:1.5}.foot{font-size:9px}}

header{z-index:2}#experience{position:relative;z-index:3;pointer-events:none}#experience button,#experience select,#experience input,#experience a,#audioPanel{pointer-events:auto}#experience{position:fixed;inset:0}

/* V2: footage-first meditation and independent audio controls */
#cinema{background:#0c0b09}#cinema video{object-fit:cover;filter:brightness(.88) saturate(.94)}#cinema:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(#0007,transparent 30%,transparent 65%,#000a)}.cinemaLabel{z-index:1;font-size:15px;top:30px;left:35px}.cinemaLabel span{display:block;font-family:Georgia,serif;font-size:23px;letter-spacing:0;margin-top:15px;color:#eddfca}#closeVideo{z-index:2}#cinemaControls{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);z-index:2;display:flex;align-items:center;gap:12px;background:#171612d9;padding:14px 20px;border:1px solid #fff3;border-radius:12px;backdrop-filter:blur(12px)}#cinemaControls label{font-size:9px;letter-spacing:2px;white-space:nowrap}#cinemaControls select{width:225px}#cinemaControls button{background:transparent;border:1px solid #fff3;color:#eee3d1;border-radius:6px;padding:11px;white-space:nowrap}#audioPanel{position:fixed;z-index:12;bottom:125px;right:25px;pointer-events:auto}#audioPanel select{margin-bottom:19px}#audioPanel label[for]{margin-bottom:8px}#audioPanel button{color:#eee;background:#ffffff14;border:1px solid #fff2;padding:10px;border-radius:5px}.foot{text-shadow:0 1px 5px #000;background:linear-gradient(transparent,#0004)}
@media(max-width:650px){#cinemaControls{bottom:20px;width:calc(100% - 28px);display:grid;grid-template-columns:1fr 1fr;padding:14px;gap:10px}#cinemaControls label{grid-column:1/-1}#cinemaControls select{grid-column:1/-1;width:100%}#cinemaControls button{font-size:11px}.cinemaLabel{top:26px;left:20px;font-size:11px}.cinemaLabel span{font-size:20px;margin-top:48px}#closeVideo{top:20px;right:15px;font-size:11px}#audioPanel{bottom:210px;right:15px}nav button{font-size:10px;padding:13px 5px}}

@media(max-width:650px){nav{gap:0;padding:5px}nav button{padding:12px 5px;font-size:10px}nav #real{display:none}.caption h2{max-width:320px}.caption p{max-width:290px;line-height:1.5}}

.nameLabel{display:block;font-size:12px;color:#ecd4b4;margin-top:20px!important}#guestName{display:block!important;width:280px!important;background:#202720dd;border:1px solid #cdb58d99;color:#fff7e9;border-radius:6px;padding:13px 15px;font:inherit;font-size:16px;margin-top:8px}.nameNotice{font-size:10px;color:#c0bdaf;margin-top:8px}#welcome .primary{margin-top:16px}#walkControls{position:absolute;left:28px;bottom:146px;pointer-events:auto;background:#19221cc9;border:1px solid #fff2;border-radius:12px;padding:12px}#walkState{display:block;font-size:10px;letter-spacing:2px;color:#e7cda4;margin-bottom:9px}.directionPad{display:grid;grid-template-columns:repeat(3,42px);grid-template-rows:repeat(2,38px);gap:4px}.directionPad button{border:1px solid #ffffff25;background:#fff1;color:#fff5df;border-radius:7px;touch-action:none;user-select:none}.directionPad button:active{background:#b59567}.directionPad [data-walk=up]{grid-column:2}.directionPad [data-walk=left]{grid-row:2;grid-column:1}.directionPad [data-walk=down]{grid-row:2;grid-column:2}.directionPad [data-walk=right]{grid-row:2;grid-column:3}#walkControls small{font-size:9px;color:#c0c5b9;display:block;margin-top:9px}#status{pointer-events:none;bottom:133px}.caption h2{font-size:22px}.caption{pointer-events:none}#welcome{padding-top:16vh}#welcome h1{font-size:clamp(35px,4.7vw,65px);margin:16px 0}#welcome p{margin:10px 0}
@media(max-width:650px){#welcome{padding-top:15vh}#welcome h1{font-size:36px}#welcome p{font-size:13px;line-height:1.65}#guestName{width:260px!important;padding:10px 12px}#welcome .primary{padding:14px 20px}.note{bottom:12px;font-size:9px}.small{font-size:10px}#walkControls{bottom:142px;left:12px;padding:9px}.directionPad{grid-template-columns:repeat(3,30px);grid-template-rows:repeat(2,32px)}#walkControls small{display:none}#seatPanel{max-width:180px;width:180px;right:12px}#status{bottom:274px;font-size:10px}.caption h2{font-size:18px}.caption{top:100px}}@media(max-height:690px){#welcome{padding-top:95px}#welcome h1{font-size:32px;margin:10px 0}.eyebrow{font-size:9px}#welcome .nameLabel{margin-top:9px!important}#welcome p{font-size:12px}#welcome .small{margin-top:8px}.note{display:none}}

#zoomControls{position:absolute;right:30px;top:275px;display:flex;align-items:center;gap:6px;padding:9px;background:#19221ce8;border:1px solid #fff2;border-radius:10px;pointer-events:auto}#zoomControls span{font-size:10px;color:#e7cda4;margin-right:5px}#zoomControls button{min-width:36px;min-height:36px;border:1px solid #fff3;border-radius:6px;background:#fff1;color:#fff5df;font-size:20px}#zoomControls #zoomReset{font-size:11px;padding:0 10px}#zoomControls button:disabled{opacity:.35}@media(max-width:650px){#zoomControls{top:auto;bottom:258px;right:12px;padding:6px}#zoomControls span{font-size:9px}#status{bottom:315px}}

#kitchenDialog{position:absolute;left:50%;top:26%;transform:translateX(-50%);width:min(380px,90vw);padding:20px;background:#19221cf2;border:1px solid #ddc293;border-radius:15px;pointer-events:auto;text-align:center}#kitchenDialog strong{font-size:12px;letter-spacing:2px;color:#e7cda4}#kitchenDialog p{line-height:1.6;font-size:15px}#kitchenDialog button{padding:9px 14px;margin:4px;border:1px solid #fff3;background:#fff1;color:#fff;border-radius:6px}@media(max-width:650px){nav button{font-size:9px;padding:12px 4px}#kitchenDialog{top:22%}}

#kitchenDialog{top:auto;bottom:145px;left:50%;padding:12px 18px;width:min(340px,85vw)}#kitchenDialog p{font-size:12px;margin:8px 0}#kitchenDialog button{padding:7px 12px}@media(max-width:650px){#kitchenDialog{bottom:320px;top:auto;padding:10px 14px}#kitchenDialog p{display:none}}

#chefPortrait{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);width:220px;height:250px;pointer-events:none;filter:drop-shadow(0 8px 14px #0008)}#chefPortrait svg{width:100%;height:100%}#chefPortrait.talking{animation:chefNod .45s ease-in-out infinite alternate}#chefPortrait.talking #chefMouth{transform-box:fill-box;transform-origin:center;animation:chefTalk .22s ease-in-out infinite alternate}@keyframes chefTalk{from{transform:scaleY(.35)}to{transform:scaleY(1.1)}}@keyframes chefNod{from{transform:translateX(-50%) rotate(-3deg)}to{transform:translateX(-50%) rotate(3deg)}}@media(max-width:650px){#chefPortrait{width:170px;height:192px}}

#tablePick{margin-bottom:8px}#seats{font-size:11px}#zoomAll{font-size:11px!important;padding:0 8px}#zoomControls{top:320px}#seatPanel{max-width:290px;width:290px}@media(max-width:650px){#seatPanel{width:195px;max-width:195px}#zoomControls{top:auto;bottom:300px;right:12px}#zoomControls span{display:none}#status{bottom:355px}#kitchenDialog{bottom:365px}}
