:root{color-scheme:dark;font-family:"Helvetica Neue",Arial,sans-serif;background:#08040f;color:#f1f0eb}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent;font:inherit;color:inherit}button{cursor:pointer;border:0}a{text-decoration:none}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:2px solid #8ab4f8;outline-offset:5px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#world,#fallback,#veil,.film-grain{position:fixed;inset:0;width:100%;height:100%}#world{display:block;touch-action:none;opacity:0;transition:opacity .7s}#fallback{object-fit:cover;opacity:0;pointer-events:none}#veil{z-index:3;pointer-events:none;background:#030306;opacity:0;transition:background 1.5s}.film-grain{z-index:2;pointer-events:none;background:radial-gradient(ellipse at center,transparent 55%,#11182022)}body[data-phase=city] #world,body[data-phase=picker] #world,body[data-phase=review] #world,body[data-phase=tunnel] #world{opacity:1}body[data-phase=fallback] #fallback{opacity:1}
.world-header{position:fixed;z-index:8;top:24px;left:26px;right:26px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.world-header>*{pointer-events:auto}#location-control{display:flex;align-items:center;gap:10px;padding:13px 16px;border-radius:28px;background:#fff;color:#202124;box-shadow:0 2px 12px #0003;font-size:15px;letter-spacing:-.01em}#location-control b{font-weight:400;color:#5f6368}.chevron{color:#70757a;margin-left:7px}.top-actions{margin-left:auto;display:flex;gap:10px}.icon-button{display:grid;place-items:center;width:38px;height:38px;background:#12202d55;backdrop-filter:blur(8px);border:1px solid #ffffff44;border-radius:50%;font-size:24px;color:#fff}#pause{font-size:14px}
#threshold{position:fixed;z-index:5;left:50%;top:48%;transform:translate(-50%,-50%);text-align:center;transition:opacity 1s}#loading-status{font-size:14px;color:#c1cbd1;line-height:1.7}#retry{padding:10px 16px;border-radius:20px;background:#e8eaed;color:#202124}.loading-dot{display:block;width:7px;height:7px;border-radius:50%;background:#d7e3e5;box-shadow:0 0 32px #c6dbef;margin:0 auto 20px;animation:pulse 1.5s infinite}@keyframes pulse{50%{opacity:.3}}
.place-card{position:absolute;left:0;top:0;z-index:6;display:flex;align-items:flex-start;gap:10px;width:218px;padding:12px 14px;background:#fff;color:#202124;border:1px solid #dadce0;border-radius:10px;box-shadow:0 2px 7px #0004;transition:opacity .18s;will-change:transform;opacity:0}.place-card:after{content:"";position:absolute;bottom:-8px;left:calc(50% - 8px);width:14px;height:14px;background:#fff;border-right:1px solid #dadce0;border-bottom:1px solid #dadce0;transform:rotate(45deg)}.place-pin{padding-top:1px;flex-shrink:0}.place-copy{display:block;min-width:0}.place-copy strong{font-size:14px;font-weight:500;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.place-copy small{display:block;font-size:12px;color:#70757a;margin-top:5px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.place-review{display:flex;align-items:center;gap:5px;color:#70757a;font-size:12px;margin-top:5px}.stars{position:relative;display:inline-block;font-family:Arial,sans-serif;letter-spacing:1px;color:#dadce0;line-height:1;white-space:nowrap}.stars span{position:absolute;left:0;top:0;overflow:hidden;color:#fbbc04}.review-count{color:#70757a}
#city-picker{position:fixed;z-index:15;inset:0;overflow-y:auto;padding:clamp(85px,12vh,130px) clamp(28px,13vw,200px) 55px;background:#081014e8;backdrop-filter:blur(20px)}.quiet{background:none;color:#c5d1d3;padding:0;font-size:14px}#picker-title{font-size:clamp(44px,7vw,80px);font-weight:400;letter-spacing:-.06em;margin:40px 0}#city-picker nav{max-width:860px}#city-picker nav>a{display:flex;align-items:center;border-top:1px solid #ffffff30;padding:25px 0;font-size:clamp(27px,3.4vw,42px);letter-spacing:-.03em}#city-picker nav>a span,#city-picker nav>a small{margin-left:auto;font-size:14px;letter-spacing:0;color:#acbfc3}#scene-sources{max-width:700px;margin-top:48px;color:#9dabad;font-size:13px;line-height:1.7}#scene-sources summary{cursor:pointer;width:fit-content}#scene-sources a{text-decoration:underline;text-underline-offset:3px}
#place-dialog{color-scheme:light;position:fixed;width:min(520px,calc(100vw - 32px));max-height:min(80vh,850px);overflow-y:auto;padding:30px;border:0;border-radius:18px;color:#202124;background:#fff;box-shadow:0 12px 70px #0005;font-family:Arial,sans-serif}#place-dialog::backdrop{background:#10182066;backdrop-filter:blur(3px)}.dialog-close{position:absolute;right:15px;top:12px;width:32px;height:32px;border-radius:50%;font-size:26px;background:#f1f3f4;color:#5f6368}#place-title{font-size:25px;font-weight:400;line-height:1.25;margin:4px 32px 14px 0}#place-rating{display:flex;align-items:center;gap:8px;font-size:14px}#place-category,#place-address{font-size:14px;line-height:1.5;color:#5f6368;margin:12px 0}#place-maps{display:inline-block;color:#1967d2;font-size:14px;border:1px solid #dadce0;padding:10px 16px;border-radius:20px;margin:5px 0 12px}#place-dialog h3{font-size:18px;font-weight:500;margin:22px 0 8px}.review{padding:18px 0;border-top:1px solid #e8eaed}.review-author{display:flex;align-items:center;gap:10px;color:#202124;font-size:14px}.review-avatar{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border-radius:50%;background:#e8f0fe;color:#1967d2}.review-meta{display:flex;align-items:center;gap:10px;margin:11px 0;color:#70757a;font-size:12px}.review p{font-size:14px;line-height:1.55;margin:10px 0 0;white-space:pre-line}.source-note{font-size:12px;line-height:1.55;color:#80868b;margin:13px 0 0}
@media(max-width:700px){.world-header{top:16px;left:16px;right:16px}#location-control{font-size:13px;padding:11px 13px;gap:8px}#location-control b{display:block;font-size:12px;line-height:1.5}#location-control b:first-letter{font-size:0}.place-card{width:190px;padding:10px;gap:7px}.place-copy strong{font-size:13px}#place-dialog{padding:24px}#place-title{font-size:23px}#city-picker{padding-top:85px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* V12: a compact, physical city selector. The moving strip is spring-driven. */
#city-mechanism{display:flex;align-items:center;position:relative;gap:13px;min-width:307px;height:90px;padding:14px 20px 14px 19px;border:1px solid #fbfcfc;border-radius:48px;background:linear-gradient(177deg,#fcfcfc 0%,#e5e3e2 28%,#cac8c7 68%,#e0dedc 97%);box-shadow:inset 0 2px 2px #fff,inset 0 -3px 2px #8c8986,0 2px 0 #56595b,0 5px 4px #ffffff75,0 13px 25px #12181950,0 2px 3px #0004;color:#202124;isolation:isolate;transition:opacity .3s}
#city-mechanism:before{content:"";position:absolute;inset:4px;border:1px solid #ffffff70;border-radius:44px;pointer-events:none}
.roller-well{position:relative;flex-shrink:0;width:80px;height:59px;border-radius:10px;background:#403a31;box-shadow:inset 0 3px 5px #0009,0 1px 0 #fff,0 -1px 2px #575b60;perspective:200px}
.roller-well:before,.roller-well:after{content:"";position:absolute;top:17px;width:7px;height:28px;background:linear-gradient(#babeb9,#787e76,#d1d2ca);z-index:-1}.roller-well:before{left:-6px}.roller-well:after{right:-6px}
.roller{position:absolute;top:4px;bottom:4px;width:13px;border-radius:6px;background:repeating-linear-gradient(0deg,transparent 0 3px,#f8c87728 4px 5px),linear-gradient(90deg,#763509,#ed7918 30%,#ffe0a2 63%,#fd9731 83%,#9d480e);box-shadow:0 0 9px #ff900b99,inset 0 2px 3px #ffe5a6,inset 0 -2px 3px #7b2f04}.roller.left{left:5px}.roller.right{right:5px}
.strip-window{position:absolute;left:17px;right:17px;top:3px;bottom:3px;overflow:hidden;background:#e8e7e3;box-shadow:0 0 5px #0007}
#number-strip{will-change:transform;background:linear-gradient(90deg,#d7d6d1,#fafaf7 18%,#f1f0ed 68%,#cecdca)}
#number-strip span{position:relative;display:grid;place-items:center;height:54px;font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:34px;line-height:1;color:#353638;text-shadow:0 1px #fff}
#number-strip span:before{content:"";position:absolute;inset:8px 5px;border:1px solid #d0cfca;border-radius:5px;box-shadow:inset 0 1px 2px #aeadaa55,0 1px #fff}
.roller-shade{position:absolute;inset:3px 17px;pointer-events:none;background:linear-gradient(#0003,transparent 27% 72%,#0003)}
.rocker{width:36px;flex-shrink:0;height:58px;border-radius:9px;background:linear-gradient(#eeedeb,#d7d5d3);box-shadow:inset 0 1px 3px #bab9b6,0 1px 1px #fff,1px 2px 4px #8d8b8955;overflow:hidden}
.rocker button{display:grid;place-items:center;width:36px;height:29px;background:linear-gradient(145deg,#f7f7f4,#e3e1de);transition:transform .13s,box-shadow .13s}.rocker button+button{border-top:1px solid #c8c7c2;box-shadow:inset 0 1px #fff}.rocker button:active{transform:translateY(1px);box-shadow:inset 0 2px 4px #7c7a7580}.rocker button:disabled{opacity:.4;cursor:wait}.triangle{width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;filter:drop-shadow(0 1px 0 #fff)}.triangle.up{border-bottom:8px solid #393b3d}.triangle.down{border-top:8px solid #393b3d}
#location-control{position:relative;display:flex;align-items:flex-start;justify-content:center;flex-direction:column;gap:3px;padding:0 10px 0 0;min-width:115px;height:58px;border-radius:0;box-shadow:none;background:none;color:#25282a;text-align:left;letter-spacing:-.025em}
#city-name{font-size:20px;font-weight:500;text-shadow:0 1px #ffffffb0}#city-district{font-size:12px;letter-spacing:.02em;color:#5f6264}#location-control:active{transform:translateY(1px)}.city-led{position:absolute;width:5px;height:5px;border-radius:50%;right:-2px;bottom:13px;background:#f4a044;box-shadow:0 0 4px #ffbd67,0 1px #fff}.world-header{align-items:flex-start}
body[data-phase=ending] #world,body[data-phase=switching] #world{opacity:1}body[data-phase=ending] #city-mechanism{opacity:0;pointer-events:none}body[data-phase=loading] #world{opacity:0}
#city-picker{background:linear-gradient(135deg,#111b25e8,#060d15f7);backdrop-filter:blur(24px)}
#city-picker nav>button{display:flex;align-items:center;gap:25px;width:100%;padding:24px 0;border-top:1px solid #ffffff30;background:transparent;text-align:left;font-size:clamp(27px,3.4vw,42px);letter-spacing:-.03em;transition:padding .2s,color .2s}
#city-picker nav>button:hover{padding-left:12px;color:#eac48d}#city-picker nav>button[aria-pressed=true]{color:#e8c18d}#city-picker nav>button>span:last-child{margin-left:auto;font-size:23px}#city-picker nav small{display:block;color:#acbfc3;font-size:13px;letter-spacing:.02em;margin-top:5px}.destination-number{font-family:Georgia,serif;font-size:17px;font-style:italic;color:#91a3b0;letter-spacing:0}
@media(max-width:700px){.world-header{top:14px;left:12px;right:12px;gap:9px}#city-mechanism{min-width:0;height:76px;padding:10px 16px 10px 14px;gap:9px;border-radius:40px}.roller-well{width:68px;height:59px}.rocker,.rocker button{width:33px}#location-control{min-width:87px;font-size:13px;padding:0 2px 0 0;gap:3px}#city-name{font-size:16px}#city-district{font-size:12px}.city-led{display:none}.top-actions{gap:5px;margin-top:17px}.icon-button{width:31px;height:31px;font-size:21px}#city-picker nav>button{gap:18px}#picker-title{margin:32px 0}.world-header #pause{display:none} }
@media(max-width:370px){#city-mechanism{gap:6px;padding-left:11px;padding-right:11px}.roller-well{width:61px}#location-control{min-width:77px}#city-name{font-size:15px}}

/* V14: exposed paper belt running behind a separate metal housing. */
.world-header{top:78px}
#city-mechanism{height:88px;gap:16px;min-width:328px;padding:13px 24px 13px 21px;background:transparent;border:0;box-shadow:none;isolation:isolate;overflow:visible}
#city-mechanism:before{display:none}
.mechanism-shell{position:absolute;inset:0;z-index:-1;pointer-events:none;border:1px solid #fcfdfd;border-radius:48px;background:linear-gradient(172deg,#fafafa 0%,#edebea 22%,#d2cfcb 75%,#ebe9e6 100%);box-shadow:inset 0 3px 3px #fff,inset 0 -2px 2px #999692,0 2px 1px #626360,0 4px 1px #ffffffe0,0 13px 26px #0b131959,0 2px 4px #0004}
.mechanism-shell:after{content:"";position:absolute;inset:4px;border:1px solid #ffffff75;border-bottom-color:#9e9c9850;border-radius:45px}
.paper-tail{position:absolute;z-index:-2;left:38px;top:-57px;width:46px;height:203px;overflow:hidden;border-radius:4px;background:linear-gradient(90deg,#d8d6d1,#f9f8f5 14%,#efeeea 80%,#cbc9c3);box-shadow:1px 5px 10px #24292e35,inset 0 1px 3px #fff;pointer-events:none;mask-image:linear-gradient(transparent,#000 9% 89%,transparent)}
#tail-strip{position:absolute;top:74px;left:0;right:0;will-change:transform}
#tail-strip span,#number-strip span{display:grid;place-items:center;position:relative;height:54px;font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:34px;line-height:1;color:#323336;text-shadow:0 1px #fff;backface-visibility:hidden;transform-origin:50% 50%}
#tail-strip span:before{content:"";position:absolute;inset:8px 5px;border:1px solid #cfcdc7;border-radius:5px;box-shadow:inset 0 1px 2px #aaa7a344,0 1px #fff}
.roller-well{width:80px;height:59px;border-radius:11px;background:linear-gradient(#746f64,#393b34);box-shadow:inset 0 3px 5px #0008,0 1px 0 #fff,0 -1px 2px #6d6b67}
.strip-window{left:17px;right:17px;top:2px;bottom:2px;box-shadow:0 1px 5px #0006}
.roller{background:repeating-linear-gradient(0deg,transparent 0 4px,#fff0b930 5px 6px),linear-gradient(90deg,#6d3106,#ff8d1b 24%,#fff3b9 56%,#f9a532 77%,#9c470d);background-position:0 var(--roller-travel),0 0;box-shadow:0 0 7px #ff9d1680,inset 0 3px 2px #fff7cb,inset 0 -3px 4px #94480a}
.roller-shade{inset:2px 17px;background:linear-gradient(#777465a0,transparent 30% 69%,#5f5a5066);border-top:1px solid #aaa99c80;border-bottom:1px solid #fff9;box-shadow:inset 0 4px 4px #0002,inset 0 -4px 5px #0002}
.rocker{width:38px;height:60px;border-radius:10px;box-shadow:0 2px 1px #fff,inset 0 1px 3px #b8b6b2,2px 4px 6px #77746c48}
.rocker button{width:38px;height:30px}.rocker button:active{transform:translateY(2px) rotateX(-8deg)}
#location-control{min-width:132px;padding-right:13px}#city-name{font-size:21px}#city-district{font-size:12px;letter-spacing:0;line-height:1.3;max-width:168px}.city-led{bottom:12px}
@media(max-width:700px){.world-header{top:65px}#city-mechanism{height:76px;gap:9px;padding:9px 16px 9px 14px;min-width:0}.mechanism-shell{border-radius:40px}.paper-tail{left:31px;top:-54px;height:184px;width:34px}#tail-strip{top:65px}.roller-well{width:68px}.rocker,.rocker button{width:33px}#location-control{min-width:98px;max-width:141px;padding-right:0}#city-name{font-size:17px}#city-district{font-size:11px}#city-picker{padding-top:76px}}

/* V15: time of day. A scrub bar at the foot of the frame, in the same dark glass as the
   header buttons, so the light and the shop shutters answer to one control. */
#time-mechanism{position:fixed;z-index:9;left:50%;bottom:26px;transform:translateX(-50%);display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"face track now" "face status now";align-items:center;column-gap:18px;width:min(620px,calc(100vw - 32px));padding:13px 18px 12px;background:#0d1a26a8;backdrop-filter:blur(14px);border:1px solid #ffffff2e;border-radius:20px;box-shadow:0 14px 40px #050a1060;transition:opacity .35s,transform .35s;pointer-events:auto}
body:not([data-phase=city]) #time-mechanism{opacity:0;transform:translateX(-50%) translateY(14px);pointer-events:none}
.time-face{grid-area:face;display:flex;flex-direction:column;align-items:flex-start;min-width:74px}
#time-clock{font-size:25px;font-weight:400;letter-spacing:-.03em;font-variant-numeric:tabular-nums;line-height:1.05}
#time-zone{font-size:10px;letter-spacing:.14em;color:#93a7b0;text-transform:uppercase;margin-top:3px}
#time-days{grid-area:track;display:flex;gap:4px;margin-bottom:7px}
#time-days button{flex:1;padding:4px 0;font-size:10px;letter-spacing:.1em;border-radius:5px;color:#8ea2ac;background:#ffffff0f;transition:color .18s,background .18s}
#time-days button[aria-checked=true]{color:#0e1a22;background:#dfe6e4}
.time-track{grid-area:track;position:relative;height:26px;display:flex;align-items:center;margin-top:34px}
#time-slider{appearance:none;-webkit-appearance:none;width:100%;height:26px;background:none;cursor:ew-resize}
#time-slider::-webkit-slider-runnable-track{height:3px;border-radius:2px;background:linear-gradient(90deg,#2b4152,#6f8fa0 45%,#2b4152)}
#time-slider::-moz-range-track{height:3px;border-radius:2px;background:linear-gradient(90deg,#2b4152,#6f8fa0 45%,#2b4152)}
#time-slider::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:22px;margin-top:-10px;border-radius:3px;background:linear-gradient(180deg,#fdfdfc,#c9cdcb 62%,#9aa0a0);box-shadow:0 1px 3px #0007,inset 0 1px #fff}
#time-slider::-moz-range-thumb{width:12px;height:22px;border:0;border-radius:3px;background:linear-gradient(180deg,#fdfdfc,#c9cdcb 62%,#9aa0a0);box-shadow:0 1px 3px #0007}
.time-scale{position:absolute;left:5px;right:5px;bottom:-1px;display:flex;justify-content:space-between;pointer-events:none}
.time-scale i{width:1px;height:5px;background:#ffffff33}
#time-status{grid-area:status;margin:6px 0 0;font-size:11px;line-height:1.5;color:#9fb3bb;letter-spacing:.01em}
#time-now{grid-area:now;align-self:center;padding:7px 11px;border-radius:14px;border:1px solid #ffffff2b;background:#ffffff10;color:#cfdadd;font-size:12px}
#time-now[disabled]{opacity:.42;cursor:default}
.hours-line{font-size:13px;line-height:1.6;color:#3c4043;margin:12px 0 0}
.hours-line b{font-weight:500}
.hours-open{color:#188038}.hours-shut{color:#c5221f}
.hours-week{margin:8px 0 0;font-size:13px;color:#5f6368}
.hours-week div{display:flex;justify-content:space-between;gap:16px;padding:2px 0}
.hours-week div[data-today=true]{color:#202124;font-weight:500}
@media(max-width:700px){#time-mechanism{left:12px;right:12px;bottom:14px;width:auto;transform:none;column-gap:12px;padding:10px 13px}body:not([data-phase=city]) #time-mechanism{transform:translateY(14px)}#time-clock{font-size:21px}#time-days button{font-size:9px;letter-spacing:.04em}#time-status{font-size:10px}}

/* V16: stepping inside. A door hotspot on the street, and a quiet HUD once indoors. */
#door-hotspots{position:absolute;inset:0;z-index:6;pointer-events:none}
.door-spot{position:absolute;left:0;top:0;display:flex;align-items:center;gap:8px;padding:9px 14px 9px 11px;border-radius:24px;background:#100c14d9;border:1px solid #ffffff40;backdrop-filter:blur(9px);color:#f2efe9;font-size:13px;letter-spacing:.01em;white-space:nowrap;box-shadow:0 6px 22px #05060c70;transition:opacity .2s,background .2s;opacity:0;pointer-events:none;will-change:transform}
.door-spot[data-shown=true]{opacity:1;pointer-events:auto}
.door-spot:hover,.door-spot:focus-visible{background:#1d1620ee}
.door-spot i{width:9px;height:9px;border-radius:50%;background:#f0b357;box-shadow:0 0 9px #f0b35799;flex-shrink:0}
.door-spot[data-open=false] i{background:#8c8f93;box-shadow:none}
.door-spot small{color:#a9b0b5}
#interior-hud{position:fixed;z-index:9;left:26px;bottom:26px;display:flex;flex-direction:column;gap:9px;max-width:min(430px,calc(100vw - 52px));padding:15px 18px;background:#0b0810b0;backdrop-filter:blur(14px);border:1px solid #ffffff26;border-radius:18px;box-shadow:0 14px 40px #04060c66}
.interior-place{display:flex;flex-direction:column;gap:3px}
#interior-name{font-size:19px;font-weight:400;letter-spacing:-.02em}
#interior-zone{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#9aa6ac}
#interior-hint{margin:0;font-size:12px;line-height:1.55;color:#93a0a6}
#interior-trading{font-size:11px;letter-spacing:.06em;color:#c6a06a}
body[data-pointer-lock=true] #world{cursor:none}
#interior-leave{align-self:flex-start;color:#d6dde0}
body[data-phase=interior] #time-mechanism,body[data-phase=interior] #city-mechanism,body[data-phase=interior] #shop-labels,body[data-phase=interior] #door-hotspots{opacity:0;pointer-events:none}
body[data-phase=interior] #world,body[data-phase=entering] #world,body[data-phase=leaving] #world{opacity:1}
body[data-phase=interior] #world{cursor:grab}
body[data-phase=interior] #world:active{cursor:grabbing}
@media(max-width:700px){#interior-hud{left:12px;right:12px;bottom:14px;max-width:none;padding:12px 14px}#interior-name{font-size:17px}#interior-hint{font-size:11px}.door-spot{font-size:12px;padding:8px 12px 8px 10px}}
#place-inside{display:inline-block;margin:5px 0 12px 8px;padding:10px 16px;border-radius:20px;border:1px solid #dadce0;background:#1a1a1f;color:#fff;font-size:14px}

/* V17: handling things inside. A crosshair while the mouse is captured, page arrows while
   a menu is held up, and a quiet panel for what reviewers said about a dish. */
#crosshair{position:fixed;z-index:9;left:50%;top:50%;width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:50%;background:#f3efe6d0;box-shadow:0 0 0 1px #0006;pointer-events:none;transition:width .15s,height .15s,margin .15s,background .15s,border .15s}
#crosshair[data-over=true]{width:22px;height:22px;margin:-11px 0 0 -11px;background:transparent;border:1.5px solid #f6d49a;box-shadow:0 0 10px #f6c56a55}
#menu-turn{position:fixed;z-index:10;left:0;right:0;bottom:18px;display:flex;justify-content:center;gap:12px;pointer-events:none}
#menu-turn button{pointer-events:auto;width:44px;height:44px;border-radius:50%;background:#0c0910b8;border:1px solid #ffffff33;backdrop-filter:blur(8px);color:#efe9dd;font-size:22px;line-height:1}
#dish-panel{position:fixed;z-index:11;right:22px;top:50%;transform:translateY(-50%);width:min(380px,calc(100vw - 44px));max-height:min(78vh,720px);overflow-y:auto;padding:24px 24px 18px;border-radius:18px;background:#fbf9f4;color:#202124;box-shadow:0 16px 60px #0008;font-family:Arial,sans-serif}
#dish-name{font-size:21px;font-weight:400;line-height:1.28;margin:2px 34px 8px 0}
#dish-meta{margin:0;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#80868b}
#dish-detail{margin:10px 0 0;font-size:14px;font-style:italic;line-height:1.5;color:#3c4043}
#dish-rating{display:flex;align-items:center;gap:8px;margin:16px 0 4px;font-size:14px;color:#3c4043}
#dish-rating .muted{color:#80868b}
#dish-quotes .review{padding:14px 0}
#dish-quotes .review p{font-size:14px;line-height:1.55;margin:8px 0 0}
@media(max-width:700px){#dish-panel{right:12px;left:12px;width:auto;top:auto;bottom:12px;transform:none;max-height:52vh}body[data-reading=true] #dish-panel{bottom:72px;max-height:46vh}body[data-reading=true] #interior-hud,body[data-dish=true] #interior-hud{display:none}}
