@font-face{font-family:AsiaSerif;src:local("Bodoni 72"),local("Didot"),local("Times New Roman");font-display:swap}
:root{color-scheme:dark;--gold:#e2c48b;--muted:#b8a787;--ease:cubic-bezier(.22,.61,.36,1)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#080d0c}body{font-family:"PingFang TC","Noto Sans TC","Microsoft JhengHei",sans-serif;display:grid;place-items:center;min-height:100svh;overflow:hidden;color:#f5eddb;background:radial-gradient(ellipse at 50% 38%,#263029 0,#101713 40%,#060a08 85%)}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:2px solid #ffdda0;outline-offset:5px}button:disabled{cursor:wait}button svg{pointer-events:none}button:active{filter:brightness(1.1)}
.game{width:min(100vw,56.25svh);height:100svh;max-height:1080px;max-width:608px;min-width:280px;position:relative;isolation:isolate;overflow:hidden;background:#08110e;box-shadow:0 0 110px #0009;--mx:0;--my:0;--hx:0px;--hy:0px}
.scene{position:absolute;inset:-2%;transition:transform 1.8s var(--ease),filter 1.8s;transform:translate(calc(var(--mx)*-6px),calc(var(--my)*-4px)) scale(1.035);will-change:transform}.architecture,#lighting{position:absolute;width:100%;height:100%;inset:0;object-fit:cover}#lighting{opacity:0;transition:opacity 1s}#lighting.ready{opacity:1}.ambient-light{position:absolute;inset:0;background:radial-gradient(ellipse at 65% 50%,#eccd6a0b,transparent 55%);mix-blend-mode:screen;pointer-events:none}.door-glow{position:absolute;left:35%;top:37%;width:30%;height:35%;background:#edb853;filter:blur(40px);mix-blend-mode:screen;opacity:.07;animation:glow 7s ease-in-out infinite}
.vignette{position:absolute;inset:0;background:linear-gradient(180deg,#020a08d9 0%,#030a0870 16%,transparent 35%,transparent 58%,#070b0aaa 74%,#070b0af5 90%,#070b0a 100%),linear-gradient(90deg,#0005,transparent 20%,transparent 80%,#0005);pointer-events:none;z-index:2}#dust{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:4;opacity:.7}.frame{position:absolute;inset:12px;border:1px solid #d9b36b35;z-index:12;pointer-events:none}.frame i{position:absolute;width:17px;height:17px;border:1px solid #dec28d9c}.frame i:nth-child(1){top:-1px;left:-1px;border-right:0;border-bottom:0}.frame i:nth-child(2){top:-1px;right:-1px;border-left:0;border-bottom:0}.frame i:nth-child(3){bottom:-1px;left:-1px;border-right:0;border-top:0}.frame i:nth-child(4){bottom:-1px;right:-1px;border-left:0;border-top:0}
.topbar{position:absolute;top:max(24px,env(safe-area-inset-top));left:28px;right:28px;display:flex;align-items:center;justify-content:space-between;z-index:15}.edition{display:flex;align-items:center;gap:9px;font-size:8px;letter-spacing:1.8px;color:#d8c59f;font-family:Arial,sans-serif}.tiny-diamond{font-size:7px}.edition-line{height:8px;width:1px;background:#c7b08377}.icon-button{width:32px;height:32px;border:1px solid #dec18b38;border-radius:50%;background:#06120d40;display:grid;place-items:center;color:#d2bd92;backdrop-filter:blur(8px)}.sound svg{width:15px;height:15px}.sound-on{display:none}.sound[aria-pressed=true] .sound-on{display:block}.sound[aria-pressed=true] .sound-off{display:none}
.brand{position:absolute;z-index:5;top:8.6%;left:0;width:100%;text-align:center;pointer-events:none;filter:drop-shadow(0 2px 8px #000a)}.crest{height:34px;margin-bottom:0}.crest svg{height:100%;width:88px;stroke:#dbc18b;stroke-width:.65}.brand h1{font-family:AsiaSerif,"Times New Roman",serif;font-weight:400;font-size:clamp(55px,11.2svh,100px);letter-spacing:.17em;padding-left:.17em;line-height:1.03;margin:0;color:#e1c58d;background:linear-gradient(180deg,#f5e8c6 10%,#d2b070 55%,#a77c3d 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.brand-cn{font-family:"Songti TC","Noto Serif TC","PMingLiU",serif;font-size:clamp(14px,2.15svh,21px);letter-spacing:.48em;padding-left:.48em;margin:7px 0 13px;color:#e9d4aa}.brand-caption{font:7px Arial,sans-serif;letter-spacing:2.3px;color:#b9a580;margin:0}
.hostess{position:absolute;z-index:3;bottom:20.8%;left:50%;height:51.5%;width:80%;border:0;padding:0;transform:translateX(calc(-50% + var(--hx))) translateY(var(--hy));background:none;transition:filter .5s;transform-origin:50% 85%;animation:breathing 6s ease-in-out infinite;will-change:transform}.hostess img{position:relative;height:100%;width:100%;object-fit:contain;filter:drop-shadow(0 5px 10px #0006);user-select:none;transition:filter .5s}.hostess:hover img{filter:drop-shadow(0 0 12px #e7bc6944)}.hostess-shadow{position:absolute;bottom:1%;left:18%;width:65%;height:5%;background:#0009;filter:blur(10px);border-radius:50%}.hostess.greeting{animation:greeting 1s ease-in-out}.welcome-whisper{z-index:6;position:absolute;top:38%;left:7.5%;max-width:62%;padding:11px 15px;background:linear-gradient(120deg,#15221cdc,#0a1713ed);border:1px solid #dbb77266;border-radius:2px;color:#ecd9b2;font-size:15.4px;letter-spacing:.5px;box-shadow:0 8px 25px #0006;opacity:0;transform:translateY(8px);transition:opacity .45s,transform .45s;pointer-events:none;backdrop-filter:blur(10px)}.welcome-whisper.visible{opacity:1;transform:translateY(0)}.welcome-whisper i{position:absolute;right:22px;bottom:-5px;width:8px;height:8px;background:#102019;border-bottom:1px solid #dbb77266;border-right:1px solid #dbb77266;transform:rotate(45deg)}
.entrance-ui{position:absolute;z-index:7;left:9%;right:9%;bottom:3.6%;text-align:center}.eyebrow{display:flex;justify-content:center;align-items:center;gap:10px;color:#cdb480;font:8px Arial,sans-serif;letter-spacing:2px}.eyebrow span{width:22px;height:1px;background:linear-gradient(90deg,transparent,#cfb17a)}.eyebrow span:last-child{transform:rotate(180deg)}.entrance-ui h2{font-family:"Songti TC","Noto Serif TC","PMingLiU",serif;font-weight:400;letter-spacing:3px;font-size:clamp(21px,3.3svh,30px);margin:12px 0 7px}.invitation{font-size:10px;letter-spacing:2px;color:#c2b89f;margin:0 0 21px}.enter{border:1px solid #ecd5a0;background:linear-gradient(115deg,#b98b42,#e9cf98 47%,#c29b58);color:#292113;width:100%;height:clamp(46px,6.2svh,60px);position:relative;display:flex;align-items:center;justify-content:center;gap:14px;font-size:13px;font-weight:600;letter-spacing:3px;box-shadow:0 0 24px #d4ac5422,inset 0 0 0 3px #16110a12;overflow:hidden;transition:transform .25s,box-shadow .25s}.enter:after{content:"";position:absolute;inset:-100% -40%;background:linear-gradient(110deg,transparent 42%,#fff7 50%,transparent 58%);transform:translateX(-70%);animation:button-shine 7s ease-in-out infinite;pointer-events:none}.enter:hover{transform:translateY(-2px);box-shadow:0 5px 30px #d4ac5444}.button-diamond{font-size:19px;font-weight:400;position:absolute;left:20px}.enter svg{position:absolute;right:20px;width:24px;height:14px;stroke:#3f321e;stroke-width:1}.gesture{display:flex;align-items:center;justify-content:center;gap:6px;font-size:8px;letter-spacing:.5px;color:#a29479;margin:14px 0 19px;white-space:nowrap}.gesture span{margin:0 2px;color:#b9a577}.gesture svg{width:12px;height:12px;stroke:#ae9a73;stroke-width:.7}.footer-rule{margin-top:18px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #c5a56426;padding-top:12px;font:7px Arial,sans-serif;color:#948366;letter-spacing:1px}.footer-rule span+span{font-family:inherit;font-size:8px;letter-spacing:2px}
.entry-flash{position:absolute;inset:0;z-index:18;background:radial-gradient(ellipse at 50% 45%,#f5e2ba,#a17a3e40 60%,transparent);opacity:0;pointer-events:none;transition:opacity .8s}.game.entering .entry-flash{opacity:.9}.game.entering .scene{transform:scale(1.6);filter:brightness(1.8)}.game.entering .hostess{opacity:0;transition:opacity .6s,transform 1s;transform:translateX(-65%) scale(1.1)}.game.entering .brand,.game.entering .entrance-ui,.game.entering .welcome-whisper{opacity:0;transition:opacity .5s}
.arrival[hidden]{display:none}
.game{container-type:size;--lobby-ratio:0.56279904}
.arrival{position:absolute;inset:0;z-index:20;opacity:0;transition:opacity 1s ease;background:#080c09;overflow:hidden;isolation:isolate}
.arrival.visible{opacity:1}
.lobby-stage{position:absolute;left:50%;top:50%;width:max(100cqw,calc(100cqh * var(--lobby-ratio)));aspect-ratio:var(--lobby-ratio);transform:translate(-50%,-50%) scale(1.13);transition:transform 2.4s var(--ease);transform-origin:50% 55%}
.arrival.visible .lobby-stage{transform:translate(-50%,-50%) scale(1)}
.lobby-stage>img{display:block;width:100%;height:100%;object-fit:cover}
.lobby-shade{position:absolute;inset:0;background:linear-gradient(180deg,#030b08c9,transparent 30%,transparent 80%,#030b08ed 96%);pointer-events:none}
.lobby-header{position:absolute;top:max(6.5%,28px);width:100%;text-align:center;pointer-events:none;text-shadow:0 2px 18px #000}
.lobby-header .eyebrow{font-size:7px;letter-spacing:3px;margin:0 0 5px;color:#f0d9ab}
.lobby-brand{font:clamp(36px,7cqh,68px) AsiaSerif,Georgia,serif;letter-spacing:.18em;padding-left:.18em;color:#e8cca0;line-height:1.1}
.lobby-header h2{font-family:"Songti TC","PMingLiU",serif;font-size:clamp(13px,2cqh,20px);font-weight:400;letter-spacing:4px;margin:8px 0;color:#f3e5cb}
.lobby-header h2:focus{outline:none}
.lobby-rule{display:flex;align-items:center;justify-content:center;gap:12px;color:#d6b879;font-size:10px;margin-top:13px}
.lobby-rule:before,.lobby-rule:after{content:"";width:40px;height:1px;background:linear-gradient(90deg,transparent,#b89759)}
.lobby-rule:after{transform:rotate(180deg)}
.lobby-choices{position:absolute;inset:0}
.tablet-choice{position:absolute;top:39.5%;width:36%;height:12.5%;padding:0;border:1px solid transparent;border-radius:5px;background:transparent;transition:box-shadow .25s,border-color .25s}
.slots-choice{left:11%}.live-choice{left:53.5%;width:37%}
.tablet-choice:hover,.tablet-choice[aria-pressed=true]{border-color:#f5d891;box-shadow:0 0 20px #e4bd6155,inset 0 0 18px #e4bd6122}
.tablet-choice:focus-visible{outline:2px solid #ffdf99;outline-offset:4px;box-shadow:0 0 25px #e4bd6188}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.lobby-footer{position:absolute;left:10%;right:10%;bottom:max(3.5%,env(safe-area-inset-bottom));text-align:center}
.lobby-footer p{font-size:clamp(9px,1.4cqh,12px);letter-spacing:1.5px;color:#ecdbb8;margin:0 0 12px;text-shadow:0 1px 8px #000}
.return{border:1px solid #d4b67d70;background:#07110dc9;backdrop-filter:blur(10px);padding:11px 21px;color:#e7cfa4;font-size:10px;letter-spacing:2px;min-height:40px;transition:background .2s}
.return:hover{background:#253426e8}.return span{margin-right:9px}
.lobby-note{display:block;font:6px Arial,sans-serif;letter-spacing:2px;color:#b5a17d;margin-top:14px}
.toast{position:absolute;bottom:25%;left:50%;transform:translate(-50%,10px);z-index:25;opacity:0;padding:10px 18px;border:1px solid #c1a36b50;background:#0a1713eb;color:#e5d1ab;font-size:11px;white-space:nowrap;pointer-events:none;transition:opacity .25s,transform .25s}.toast.visible{opacity:1;transform:translate(-50%,0)}
@keyframes breathing{0%,100%{transform:translateX(calc(-50% + var(--hx))) translateY(var(--hy)) rotate(-.3deg)}50%{transform:translateX(calc(-50% + var(--hx))) translateY(calc(var(--hy) - 3px)) rotate(.3deg)}}@keyframes greeting{0%,100%{transform:translateX(-50%) rotate(0deg)}40%{transform:translateX(-50%) rotate(-1.7deg)}70%{transform:translateX(-50%) rotate(.6deg)}}@keyframes glow{50%{opacity:.13}}@keyframes button-shine{0%,60%{transform:translateX(-70%)}85%,100%{transform:translateX(70%)}}@keyframes rotate{to{transform:rotate(360deg)}}
@media(min-width:700px){.game{border-left:1px solid #bda56e33;border-right:1px solid #bda56e33}body:before{content:"ASIA";position:fixed;left:4vw;bottom:5vh;font:12px Georgia,serif;letter-spacing:7px;color:#b9a77d40}body:after{content:"PORTRAIT EXPERIENCE";position:fixed;right:4vw;bottom:5vh;font:8px Arial,sans-serif;letter-spacing:2px;color:#b9a77d40}}
@media(max-width:600px) and (orientation:portrait){.game{width:100vw;max-width:100vw;min-width:0}.brand h1{font-size:clamp(60px,18vw,92px)}.brand{top:9%}.hostess{height:51%;bottom:21.7%}}
@media(max-height:650px){.topbar{top:18px}.brand{top:7.5%}.crest{height:23px}.brand-cn{margin:3px 0 7px}.brand-caption{font-size:6px;letter-spacing:1.5px}.entrance-ui{bottom:4.5%;left:9%;right:9%}.entrance-ui h2{margin:7px 0 5px;font-size:20px}.invitation{margin-bottom:13px;font-size:9px}.gesture{margin:10px 0 12px;font-size:7px}.footer-rule{padding-top:8px}.enter{height:42px;font-size:11px}.hostess{bottom:23%;height:49%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition-duration:.01ms!important}.scene{transform:scale(1.035)}.hostess{transform:translateX(-50%)}}
/* The portrait now moves locally through a continuous skinned mesh. */
.hostess{animation:none;transition:filter .5s,opacity .6s;transform:translateX(calc(-50% + var(--hx))) translateY(var(--hy))}
.hostess.greeting{animation:none}
.hostess-live{position:absolute;top:0;left:50%;height:100%;width:auto;aspect-ratio:2/3;transform:translateX(-50%);opacity:0;filter:drop-shadow(0 5px 10px #0006);pointer-events:none}
.hostess.live-ready>img{opacity:0}
.hostess.live-ready>.hostess-live{opacity:1}
.hostess:hover .hostess-live{filter:drop-shadow(0 0 12px #e7bc6944)}
@media(prefers-reduced-motion:reduce){.hostess{transform:translateX(-50%)}}
.hostess>img[hidden]{display:none}
.hostess>img#hostess-source{transform:scale(.96)}
/* Camera framing keeps portrait, expression and tablet on the same surface. */
[hidden]{display:none!important}
.portrait-back{position:absolute;z-index:30;top:max(22px,env(safe-area-inset-top));right:24px;min-height:42px;padding:9px 15px;border:1px solid #ddc38a88;border-radius:2px;background:#06110ee8;backdrop-filter:blur(12px);font-size:11px;letter-spacing:1px;color:#f2dfb5;box-shadow:0 4px 20px #0005}
.hostess{transition:transform 1.1s var(--ease),filter .5s,opacity .6s;transform-origin:50% 15%}
.hostess-close .hostess{z-index:6;transform:translateX(-34%) translateY(-7cqh) scale(2.4);cursor:zoom-out}
.hostess-close .brand,.hostess-close .entrance-ui{opacity:0;pointer-events:none;transition:opacity .35s}
.hostess-close .scene{transform:scale(1.13)}
.hostess-close .welcome-whisper{top:auto;bottom:12%;left:8%;max-width:84%;font-size:16.8px;z-index:8}
.hostess-close .topbar{z-index:4}
.lobby-stage>img[hidden]{display:none}
#lobby-live{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none}
.lobby-stage.live-ready #lobby-live{opacity:1}
.lobby-people,.lobby-choices{position:absolute;inset:0;pointer-events:none}
.lobby-person{position:absolute;top:21%;height:69%;width:44%;padding:0;background:transparent;border:0;cursor:zoom-in;pointer-events:auto}
.person-slots{left:2%}.person-live{left:55%}
.lobby-person:focus-visible{outline:1px solid #dfc187;outline-offset:-5px;border-radius:40% 40% 6% 6%}
.tablet-choice{pointer-events:auto;cursor:zoom-in}
.arrival.visible.focus-slots .lobby-stage{transform:translate(-50%,-50%) scale(2.35) translate(21.4%,12.8%)}
.arrival.visible.focus-live .lobby-stage{transform:translate(-50%,-50%) scale(2.35) translate(-22.5%,12.8%)}
.lobby-stage{transform-origin:50% 50%;transition:transform 1.25s var(--ease)}
.focus-slots .lobby-header,.focus-live .lobby-header{opacity:0;transition:opacity .3s}
.focus-slots .lobby-person,.focus-live .lobby-person{cursor:zoom-out}
.focus-slots .tablet-choice,.focus-live .tablet-choice{cursor:pointer}
.focus-slots .person-live,.focus-slots .live-choice,.focus-live .person-slots,.focus-live .slots-choice{pointer-events:none}
.focus-slots .lobby-footer,.focus-live .lobby-footer{bottom:max(3.5%,env(safe-area-inset-bottom));text-shadow:0 2px 10px #000}
.focus-slots .lobby-shade,.focus-live .lobby-shade{background:linear-gradient(180deg,#02090566,transparent 17%,transparent 80%,#030b08e8 98%)}
@media(prefers-reduced-motion:reduce){.hostess,.lobby-stage{transition:none!important}}
@media(max-height:650px){.focus-slots .lobby-note,.focus-live .lobby-note{display:none}.focus-slots .lobby-footer p,.focus-live .lobby-footer p{margin-bottom:8px}}
/* Character dialogue: one speech balloon, a nameplate, and RPG reply choices. */
.welcome-whisper{max-width:79%;font-size:15.4px;line-height:1.8;padding:10px 14px;border-radius:12px 12px 2px 12px;box-shadow:0 8px 28px #0006}
.hostess-close .welcome-whisper{opacity:0!important}
.concierge-chat{position:absolute;z-index:26;left:5%;right:5%;bottom:max(20px,env(safe-area-inset-bottom));height:34%;min-height:220px;max-height:420px;display:grid;grid-template-rows:minmax(0,1fr) auto auto;gap:9px;color:#eee2c6;text-align:left;filter:drop-shadow(0 6px 12px #0006)}
.dialogue-bubble{position:relative;min-height:0;padding:22px 17px 10px;background:linear-gradient(140deg,#fff3d5,#e9d5a8);border:3px double #b79450;border-radius:20px 20px 20px 5px;display:flex;flex-direction:column;box-shadow:inset 0 0 20px #fff8,0 5px 20px #0005}
.dialogue-bubble:before{content:"";position:absolute;top:-10px;left:53%;width:19px;height:19px;transform:rotate(45deg);background:#f9eac9;border-left:2px solid #b79450;border-top:2px solid #b79450;pointer-events:none}
.dialogue-bubble:after{content:"";position:absolute;inset:4px;border:1px solid #ad8e4d66;border-radius:13px 13px 13px 2px;pointer-events:none}
.dialogue-nameplate{position:absolute;z-index:2;left:14px;top:-16px;display:flex;align-items:baseline;gap:8px;padding:4px 12px 5px;border:1px solid #d8bd7b;background:linear-gradient(115deg,#19372a,#0b1c15);box-shadow:0 3px 8px #0005;clip-path:polygon(7px 0,100% 0,100% calc(100% - 6px),calc(100% - 7px) 100%,0 100%,0 6px)}
.dialogue-nameplate:before{content:"◆";font-size:7px;color:#ddbf77;align-self:center}
.chat-name{font:italic 21px Georgia,serif;letter-spacing:.4px;color:#f5dbaa}.chat-role{font-size:9px;letter-spacing:.6px;color:#c9b98d;white-space:nowrap}
.dialogue-pause{position:absolute;z-index:2;right:12px;top:-12px;padding:5px 9px;min-height:25px;border:1px solid #bfa56a88;background:#10231bf2;border-radius:0;color:#d9c698;font-size:9px;letter-spacing:1px}
.dialogue-question{margin:0 0 5px;color:#796344;font-size:14px;line-height:1.4;letter-spacing:.2px;flex:none;overflow-wrap:anywhere}
.dialogue-speech{position:relative;flex:1;min-height:0;width:100%;height:0;padding:0 4px 0 0;border:0;background:transparent;color:#302b21;text-align:left;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#ac8e5544 transparent;scroll-behavior:auto;outline-offset:3px}
.dialogue-speech:focus-visible{outline:1px solid #6f794e;outline-offset:3px;border-radius:4px}
.dialogue-copy{display:block;width:100%;height:auto;min-height:100%;font-family:"Songti TC","Noto Serif TC","PMingLiU",serif;font-size:clamp(18.2px,2.66cqh,25.2px);line-height:1.8;letter-spacing:.4px;white-space:pre-wrap;overflow-wrap:anywhere}

.dialogue-choices{display:grid;gap:2px;padding:0 5px}
.dialogue-choice{position:relative;display:grid;grid-template-columns:24px 1fr 14px;align-items:center;gap:7px;min-height:29px;padding:5px 10px;border:0;border-bottom:1px solid #d0b37038;border-radius:0;background:linear-gradient(90deg,#07150cf2,#0e2018a8 80%,transparent);color:#f1dfb5;text-align:left;transition:transform .2s,background .2s;box-shadow:none;text-shadow:0 1px 4px #0008}
.choice-number{font:italic 12px Georgia,serif;color:#bea16b}.choice-label{font-size:12px;letter-spacing:1px;line-height:1.5}.choice-arrow{font-size:11px;color:#f5d88a;opacity:.35}
.dialogue-choice:hover:not(:disabled),.dialogue-choice:focus-visible{transform:translateX(3px);background:linear-gradient(90deg,#89693080,#1c3425e8 80%,transparent);color:#fff0cb}.dialogue-choice:hover .choice-arrow,.dialogue-choice:focus-visible .choice-arrow{opacity:1}
.dialogue-choice:disabled{opacity:.48;cursor:default}.dialogue-note{margin:0;text-align:center;font-size:8px;letter-spacing:.6px;color:#bead87;text-shadow:0 1px 4px #000}
.concierge-chat.dialogue-folded{height:auto;min-height:0;grid-template-rows:auto}.dialogue-folded .dialogue-bubble{height:28px;min-height:0;padding:0}.dialogue-folded .dialogue-speech,.dialogue-folded .dialogue-question,.dialogue-folded .dialogue-choices,.dialogue-folded .dialogue-note{display:none}
.hostess-close .hostess{transform:translateX(-34%) translateY(-12cqh) scale(2.1)}
.arrival.visible.focus-slots .lobby-stage{transform:translate(-50%,-50%) scale(1.85) translate(21.4%,3.5%)}
.arrival.visible.focus-live .lobby-stage{transform:translate(-50%,-50%) scale(1.85) translate(-22.5%,3.5%)}
.focus-slots .lobby-footer,.focus-live .lobby-footer{display:none}
.person-live{top:19%;height:71%}
@container (max-width:360px){.dialogue-nameplate .chat-role{display:none}.dialogue-nameplate{left:10px}.dialogue-pause{right:9px}}
@media(max-height:650px){.concierge-chat{height:38%;min-height:190px;bottom:15px;gap:6px}.dialogue-bubble{padding:18px 12px 8px;border-radius:15px 15px 15px 4px}.dialogue-copy{font-size:18.2px;line-height:1.65;letter-spacing:.2px}.chat-name{font-size:18px}.dialogue-nameplate{top:-14px;padding:3px 10px 4px}.dialogue-question{font-size:12.6px;margin-bottom:3px}.dialogue-pause{font-size:8px;top:-11px;min-height:23px;padding:4px 7px}.dialogue-choice{min-height:24px;padding:3px 8px;gap:5px}.choice-label{font-size:11px;letter-spacing:.5px}.dialogue-note{font-size:7px}.hostess-close .hostess{transform:translateX(-34%) translateY(-14cqh) scale(1.9)}.arrival.visible.focus-slots .lobby-stage{transform:translate(-50%,-50%) scale(1.65) translate(21.4%,1%)}.arrival.visible.focus-live .lobby-stage{transform:translate(-50%,-50%) scale(1.65) translate(-22.5%,1%)}}
@media(max-height:420px){.concierge-chat{height:48%;min-height:145px;bottom:10px;gap:5px}.dialogue-note{display:none}.dialogue-bubble{padding:15px 10px 6px}.dialogue-copy{font-size:16.8px;line-height:1.6}.dialogue-choices{gap:0}.dialogue-choice{min-height:22px;padding:2px 7px}.choice-label{font-size:10px}.chat-name{font-size:16px}.chat-role{display:none}.dialogue-nameplate{top:-12px}.dialogue-pause{top:-11px}.arrival.visible.focus-slots .lobby-stage{transform:translate(-50%,-50%) scale(1.4) translate(21.4%,-5%)}.arrival.visible.focus-live .lobby-stage{transform:translate(-50%,-50%) scale(1.4) translate(-22.5%,-5%)}}
/* The catalogue is clipped to the tablet glass and travels with the lobby camera. */
.slots-screen{position:absolute;left:12.2%;top:40.15%;width:33.7%;height:11.0%;clip-path:polygon(0 2%,99% 0,100% 98%,2% 100%);background:linear-gradient(135deg,#070d0e,#111b19);display:flex;flex-direction:column;gap:2px;padding:2px 3px 3px;overflow:hidden;pointer-events:none;isolation:isolate}
.slots-screen-heading{display:flex;align-items:center;justify-content:space-between;flex:none;height:21%;min-height:8px;padding:0 1px;color:#f0d49b;line-height:1;font:italic clamp(6px,1.8cqw,11px) Georgia,serif;letter-spacing:.5px}
.slots-screen-heading i{font-style:normal;font-size:.6em;color:#c7ad76}
.slots-viewport{position:relative;flex:1;min-height:0;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}
.slots-track{height:100%;display:flex;width:max-content;animation:slots-catalogue 26s linear infinite;will-change:transform}
.slots-group{display:flex;flex:none;height:100%;gap:4px;padding-right:4px}
.slots-thumb{display:block;flex:none;height:100%;width:auto;aspect-ratio:3/4;object-fit:cover;border:1px solid #e8c98b33;border-radius:2px;user-select:none}
.slots-screen:after{content:"";position:absolute;inset:0;background:linear-gradient(125deg,#ffedc311,transparent 45%,#fff1);pointer-events:none;z-index:1}
.arrival:not(.visible) .slots-track,.game.page-hidden .slots-track{animation-play-state:paused}
@keyframes slots-catalogue{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.slots-track{animation:none;transform:none}}

/* The second catalogue shares the same screen proportions and seamless loop. */
.live-screen{left:54.45%;width:35.2%;height:11.0%}
.live-screen .slots-track{animation-duration:52s}
/* A seated first-person suite. The iframe is aligned to the illustrated glass. */
.private-room{position:absolute;inset:0;z-index:40;isolation:isolate;overflow:clip;background:radial-gradient(ellipse at 50% 46%,#24352a,#060d09 80%);container-type:size;opacity:0;transition:opacity .65s var(--ease)}
.private-room.visible{opacity:1}
.private-world{position:absolute;inset:0;isolation:isolate;overflow:clip}
.private-lounge-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:45% center;opacity:0;transform:scale(1.08) translateX(-3%);transition:opacity .8s,transform 1.1s var(--ease);pointer-events:none}
.has-table-companion .private-lounge-art{opacity:1}
.private-table-stage,.private-table-props{position:absolute;z-index:3;left:50%;top:50%;width:min(100cqw,calc(100cqh * 941 / 1672));aspect-ratio:941/1672;transform:translate(-50%,-50%);transition:opacity .8s;pointer-events:none}
/* Inside one scene: table/tablet (3), waiter (4), served food/drink (5). */
.private-table-props{z-index:5}
/* VIP trophy with a wooden plinth, registered to the left-front felt surface. */
.vip-sculpture{position:absolute;z-index:2;left:2%;top:52.4%;width:19%;aspect-ratio:3/4;padding:0;border:0;background:none;pointer-events:auto;cursor:pointer;touch-action:manipulation;container-type:inline-size}
.vip-sculpture:before{content:"";position:absolute;left:10%;top:85%;width:88%;height:9%;border-radius:50%;background:radial-gradient(ellipse,#000b,transparent 72%);filter:blur(3px);transform:skewX(-20deg);pointer-events:none}
.vip-sculpture-model{position:absolute;inset:0;transform:translateY(var(--vip-art-y,0%));pointer-events:none}
.vip-sculpture-art{position:absolute;inset:0;background-image:url('assets/vip/vip-sculptures.webp?v=02c1f09bdfa6');background-image:image-set(url('assets/vip/vip-sculptures-small.avif?v=1f4d2d2ed4c0') type('image/avif') 1x,url('assets/vip/vip-sculptures-small.webp?v=7fed51f43f01') type('image/webp') 1x,url('assets/vip/vip-sculptures.avif?v=91987fd35975') type('image/avif') 2x,url('assets/vip/vip-sculptures.webp?v=02c1f09bdfa6') type('image/webp') 2x);background-size:400% 200%;background-repeat:no-repeat;filter:drop-shadow(2px 4px 2px #0005);pointer-events:none}
.vip-sculpture-lettering{position:absolute;inset:0;display:block;width:100%;height:100%;overflow:visible;pointer-events:none}
.vip-sculpture-lettering text{fill:url(#vip-gold-face);stroke:#986018;stroke-width:.55;paint-order:stroke fill;font:700 21px Georgia,"Times New Roman",serif;letter-spacing:.4px}
.vip-sculpture:focus-visible{outline:1px solid #f4d596;outline-offset:3px;border-radius:35%}
.vip-picker{position:absolute;z-index:10;left:4%;bottom:24%;width:92%;max-width:360px;max-height:calc(76cqh - 80px - env(safe-area-inset-top));overflow:auto;padding:14px;border:1px solid #a98246;border-radius:9px;background:linear-gradient(135deg,#20362b,#091b13 70%);color:#f1ddad;box-shadow:0 15px 45px #000b,inset 0 0 0 3px #c59d4f12;pointer-events:auto}
.vip-picker[hidden]{display:none}
.vip-picker header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}
.vip-picker header span{font:7px Georgia,serif;letter-spacing:2px;color:#bfa571}
.vip-picker h3{margin:5px 0 0;font:400 15px "Songti TC","PMingLiU",serif;letter-spacing:1px}
.vip-picker-close{flex:none;width:32px;height:32px;padding:0;border:1px solid #c4a66a55;border-radius:50%;background:#07160d;color:#f0d6a3;font:20px Georgia,serif;cursor:pointer}
.vip-tier-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.vip-tier-option{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:0;min-height:72px;padding:6px 2px;border:1px solid #b9955433;border-radius:5px;background:#0a1a12;color:#cdbb94;cursor:pointer}
.vip-tier-option img{width:40px;height:40px;object-fit:contain}
.vip-tier-option span{font:7px/1.3 Georgia,serif;letter-spacing:.15px;max-width:100%;overflow-wrap:anywhere}
.vip-tier-option[aria-pressed=true]{border-color:#ebc77b;background:#5d472733;color:#ffe9b6;box-shadow:inset 0 0 12px #d3b16b16}
.vip-tier-option:focus-visible,.vip-picker-close:focus-visible{outline:2px solid #f5d591;outline-offset:2px}
.private-room.screen-expanded .vip-sculpture,.private-room.screen-expanded .vip-picker{display:none}
.private-table-backdrop{position:absolute;z-index:1;left:50%;top:50%;width:min(100cqw,calc(100cqh * 941 / 1672));aspect-ratio:941/1672;transform:translate(-50%,-50%);opacity:0;transition:transform 1.1s var(--ease),opacity .8s;pointer-events:none}
.has-table-companion .private-table-backdrop{opacity:1}
.has-table-companion .private-table-stage{transform:translate(-50%,-50%)}
.has-table-companion .private-table-art{visibility:hidden}
.private-table-art{display:block;width:100%;height:100%;user-select:none;pointer-events:none}
.private-tablet{position:absolute;inset:0;z-index:3;transform:translateX(22%) scale(.95);transform-origin:50% 50%;pointer-events:none}
.tablet-shell{position:absolute;inset:0;width:100%;height:100%;clip-path:url(#private-tablet-outline);pointer-events:none}
.tablet-surface{position:absolute;left:25.5%;top:17.1%;width:49.3%;height:45.65%;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:1.8% / 1.2%;background:#020303;container-type:size;pointer-events:auto}
.private-game-frame{position:absolute;display:block;left:0;top:0;width:720px;height:1280px;max-width:none;max-height:none;border:0;background:#020303;color-scheme:dark;transform:scale(0);transform-origin:0 0}
.private-game-frame:focus-visible{outline:2px solid #e3c180;outline-offset:-2px}
.private-tablet-open{position:absolute;inset:0;z-index:3;width:100%;height:100%;padding:0;border:0;border-radius:inherit;background:transparent;display:flex;align-items:flex-end;justify-content:center;cursor:pointer}
.private-tablet-open[hidden]{display:none}
.private-tablet-open span{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px 4px 8px;background:linear-gradient(transparent,#03100eea 35%);color:#f6dfab;font-size:clamp(9px,4cqw,12px);letter-spacing:.4px;text-shadow:0 1px 3px #000;pointer-events:none}
.private-tablet-open i{font:16px Georgia,serif}
.private-tablet-open:focus-visible{outline:2px solid #f2d59a;outline-offset:-3px}
.private-toolbar{position:absolute;inset:max(20px,env(safe-area-inset-top)) 5% auto;display:flex;align-items:center;justify-content:space-between;gap:8px;z-index:3;text-shadow:0 2px 8px #000}
.private-toolbar button{flex:none;min-height:40px;padding:8px 10px;color:#f1dbaf;border:1px solid #d6b57670;border-radius:3px;background:#08150edb;backdrop-filter:blur(8px);font-size:10px;letter-spacing:.8px}
.private-title{text-align:center}.private-title>span{font:6px Arial,sans-serif;letter-spacing:1.4px;color:#d0b986;white-space:nowrap}.private-title h2{font:400 13px "Songti TC","PMingLiU",serif;letter-spacing:2px;margin:6px 0 0;color:#f1deb8;white-space:nowrap}
.private-footer{position:absolute;z-index:3;left:5%;right:5%;bottom:max(16px,env(safe-area-inset-bottom));display:flex;flex-direction:column;align-items:center;gap:7px;text-shadow:0 2px 8px #000}
.private-dining{font:9px "Songti TC","PMingLiU",serif;letter-spacing:1px;color:#ebd7ac}.private-dining i{font-size:6px;margin:0 8px;color:#c9a865;font-style:normal}
.private-utilities{display:flex;align-items:center;justify-content:center;gap:12px;background:#07120bcc;border:1px solid #d9bb793d;border-radius:3px;padding:1px 12px;color:#c4ac7e}
.private-utilities button,.private-utilities a{border:0;background:none;color:#dcc69c;font:9px "PingFang TC","Microsoft JhengHei",sans-serif;letter-spacing:.6px;padding:7px 0;min-height:30px}
.private-utilities a{text-decoration:none;display:inline-flex;align-items:center}
.private-utilities a:focus-visible{outline:2px solid #f2d59a;outline-offset:2px}
.private-connection-note{margin:0;max-width:100%;padding:5px 8px;border-radius:3px;background:#08150eef;color:#edd6b0;font:10px/1.5 "PingFang TC","Microsoft JhengHei",sans-serif;text-align:center}
.private-loading{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;padding:12px;background:radial-gradient(ellipse,#183328,#030806);color:#dcc69a;text-align:center;pointer-events:none}
.private-loading-diamond{font:30px Georgia,serif;color:#e6c583;animation:private-pulse 2s ease-in-out infinite}
.private-load-copy{font:11px/1.8 "PingFang TC","Microsoft JhengHei",sans-serif;letter-spacing:.5px;margin:0}
.private-room.frame-error .private-load-copy{color:#edd6b0}
.at-private-table .slots-track{animation-play-state:paused}
.private-room.screen-expanded .private-table-stage{inset:0;transform:none;width:100%;height:100%;aspect-ratio:auto}
.private-room.screen-expanded .private-table-stage{mask-image:none}
.private-room.screen-expanded .private-tablet{transform:none}
.private-room.screen-expanded .tablet-shell{visibility:hidden}
.private-room.screen-expanded .private-table-backdrop{display:none}
.private-room.screen-expanded .private-table-art{visibility:visible;opacity:.12;object-fit:cover}
.private-room.screen-expanded .tablet-surface{left:0;top:max(76px,calc(env(safe-area-inset-top) + 56px));bottom:max(58px,calc(env(safe-area-inset-bottom) + 44px));width:100%;height:auto;border-radius:0;box-shadow:0 0 80px #0009}
.private-room.screen-expanded .private-dining{display:none}
@keyframes private-pulse{50%{opacity:.35;transform:scale(.86)}}
@container(max-width:340px){.private-title>span{font-size:5px;letter-spacing:.7px}.private-title h2{font-size:11px}.private-toolbar button{font-size:9px;padding:7px}}
@media(prefers-reduced-motion:reduce){.private-room{transition:none}.private-loading-diamond{animation:none}}
/* Back wall -> companion -> tabletop/tablet -> waiter -> food and drink. */
.private-scene-masks{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.tablet-foreground{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:auto;clip-path:url(#table-foreground-clip)}
.tablet-surface{z-index:3}
.dining-item{position:absolute;z-index:4;border:0;padding:0;background:transparent;aspect-ratio:1;cursor:pointer;pointer-events:none;touch-action:manipulation;outline-offset:-6px}
.dining-food{left:-19%;top:62.5%;width:72%;--prop-pose:perspective(140cqw) rotateX(36deg) rotateZ(-12deg)}
.dining-drink{right:2%;top:65%;width:29%;height:24%;aspect-ratio:auto;--prop-pose:scaleY(1.15)}
.dining-item[hidden]{display:none}
.dining-hit{position:absolute;z-index:3;pointer-events:auto}
.dining-food .dining-hit{left:0;right:0;top:18%;bottom:12%;clip-path:ellipse(49% 46% at 50% 50%)}
.dining-drink .dining-hit{left:5%;right:8%;top:2%;bottom:0;clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}
.dining-art{position:relative;z-index:1;display:block;width:100%;height:100%;overflow:hidden;pointer-events:none;transform:var(--prop-pose);transform-origin:50% 50%;backface-visibility:hidden;transition:filter .25s,transform .25s}
.dining-drink .dining-art{transform-origin:50% 100%}
.dining-item:before{content:"";position:absolute;z-index:0;pointer-events:none;border-radius:50%;background:#0009;transition:opacity .3s}
.dining-food:before{left:9%;top:54%;width:86%;height:23%;filter:blur(6px);transform:rotate(-12deg) skewX(-12deg);opacity:.75}
.dining-drink:before{left:32%;right:20%;bottom:-.5%;height:4%;filter:blur(4px);transform:skewX(-20deg);opacity:.9}
/* A broad luminous band fades both inward and outward on each contact plane. */
.dining-item:after{content:"";position:absolute;z-index:2;pointer-events:none;border:0;border-radius:50%;background:radial-gradient(ellipse closest-side at center,#f6ba5000 48%,#f6ba5014 55%,#ffd78259 62%,#ffe2a3b8 69%,#fff0c2f2 74%,#ffdc91ab 79%,#f6ba5054 86%,#f6ba501a 94%,#f6ba5000 100%);opacity:.32;animation:dining-halo 4.4s ease-in-out infinite}
.dining-food:after{left:-5%;top:18%;width:112%;height:66%;transform:rotate(-12deg)}
.dining-drink:after{left:0;bottom:-8%;width:100%;height:24%;transform:skewX(-15deg);animation-delay:-1.6s}
.dining-item.is-empty:after{animation:none;opacity:0}
.dining-paused .dining-item:after{animation-play-state:paused}
@keyframes dining-halo{0%,100%{opacity:.3}50%{opacity:.88}}
.dining-item:hover:not(.is-empty) .dining-art{filter:brightness(1.05)}
.dining-item.is-enjoying .dining-art{filter:brightness(1.1)}
.dining-drink.is-enjoying .dining-art{transform:rotate(-3deg) var(--prop-pose)}
.dining-item.just-served .dining-art{animation:course-arrives .7s var(--ease)}
.dining-item.just-served:before{opacity:.35}
.dining-item.is-empty{cursor:default}
/* Names and portions live in the footer; props retain the original photographic composition. */
.dining-caption{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.dining-waiter{position:absolute;left:22%;top:18%;width:84%;height:68%;z-index:4;pointer-events:none;opacity:0;transform:translateX(115%);transition:transform .75s var(--ease),opacity .5s;filter:drop-shadow(-5px 6px 5px #0005)}
.dining-waiter img{width:100%;height:100%;object-fit:contain;object-position:right bottom}
.dining-waiter.is-serving{opacity:1;transform:translateX(0)}
.dining-announcement{position:absolute;z-index:51;left:6%;right:8%;top:74%;margin:0;padding:7px 9px;background:linear-gradient(110deg,#092217ee,#15241beb);border:1px solid #d9b97588;border-radius:8px 8px 2px 8px;color:#f6dfb2;font-size:clamp(9px,2.3cqw,12px);line-height:1.8;box-shadow:0 4px 16px #0006;pointer-events:none}
.dining-announcement:empty{display:none}
.companion-open .dining-waiter,.companion-open .dining-announcement{visibility:hidden}
.private-room.screen-expanded .dining-item,.private-room.screen-expanded .dining-waiter,.private-room.screen-expanded .dining-announcement,.private-room.screen-expanded .tablet-foreground{visibility:hidden;pointer-events:none}
.private-dining{font-size:8px;line-height:1.6;text-align:center}
@keyframes course-arrives{from{opacity:.4;transform:translate(6px,-8px) var(--prop-pose)}to{opacity:1;transform:var(--prop-pose)}}
@media(prefers-reduced-motion:reduce){.dining-waiter,.dining-art{transition:none}.dining-item.just-served .dining-art{animation:none}}
@media(prefers-reduced-motion:reduce){.dining-item:after{animation:none;opacity:.4}.dining-item.is-empty:after{opacity:0}}
/* A private casting stage, within the seated lounge. */
.private-utilities .private-companion,.private-utilities .private-table-return{color:#f5d697;font-size:11px;letter-spacing:1px;padding:7px 2px}
.private-companion>span{font-size:13px;margin-right:4px}
.private-companion-status{display:flex;align-items:center;justify-content:center;gap:7px;margin:0;padding:3px 10px 3px 4px;border:1px solid #ceb77b55;border-radius:20px;background:#081911e8;color:#eed9af;font-size:9px;letter-spacing:.4px}
.private-companion-status[hidden],.companion-room[hidden]{display:none}
.private-companion-status img{border-radius:50%;object-fit:cover;object-position:50% 12%;background:#253129}
.private-companion-status{min-height:36px;font-family:inherit;cursor:pointer}
.private-companion-status i{font-style:normal;color:#f2d59d;margin:0 5px}
.private-companion-status:hover{border-color:#e5c681;background:#183427}
.table-companion{position:absolute;z-index:2;left:23%;bottom:14%;height:70%;width:auto;aspect-ratio:0.38;padding:0;border:0;background:transparent;transform:translateX(-50%);transform-origin:50% 100%;pointer-events:auto;cursor:pointer}
.table-companion-image{position:relative;display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(-4px 5px 5px #0007);user-select:none;pointer-events:none}
.table-companion:focus-visible .table-companion-image{filter:drop-shadow(0 0 5px #ffe2a3) drop-shadow(0 0 9px #cfae63)}
.table-companion-shadow{position:absolute;left:27%;right:23%;bottom:-.4%;height:2%;border-radius:50%;background:#000b;filter:blur(5px);pointer-events:none}
.table-companion.is-responding .table-companion-image{animation:companion-responds .75s ease-in-out}
.private-room.screen-expanded .table-companion{display:none}
@keyframes companion-responds{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px) rotate(-.6deg)}}
@media(prefers-reduced-motion:reduce){.private-table-stage,.private-table-props,.private-table-backdrop,.private-lounge-art,.table-companion{transition:none}.table-companion.is-responding .table-companion-image{animation:none}}
.screen-expanded .private-companion-status{display:none}
.companion-open .private-world{visibility:hidden}
.companion-room{--companion-accent:#e8b9a4;position:absolute;inset:0;z-index:20;isolation:isolate;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto auto;gap:12px;padding:max(22px,env(safe-area-inset-top)) 6% max(20px,env(safe-area-inset-bottom));overflow:hidden;background:radial-gradient(ellipse at 50% 30%,#294035 0,#10251c 42%,#07140e 77%);color:#efdfba}
.companion-room:before{content:"";position:absolute;inset:10px;border:1px solid #d9bb7640;pointer-events:none;z-index:-1}
.companion-header{display:flex;align-items:center;justify-content:space-between;gap:10px;z-index:3}
.companion-header p{margin:0 0 7px;font:7px Arial,sans-serif;letter-spacing:2.1px;color:#bca77b}
.companion-header h2{font:400 clamp(17px,4.7cqw,25px) "Songti TC","PMingLiU",serif;letter-spacing:1px;margin:0;color:#f4dfb6}
.companion-close{flex:none;min-height:38px;padding:8px 10px;border:1px solid #bc9c614d;border-radius:2px;background:#0a1b13a8;color:#d9c391;font-size:10px;letter-spacing:.7px}
.companion-close span{margin-left:4px}
.companion-stage{position:relative;min-height:0;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 50% 73%,#78927819,transparent 60%),linear-gradient(90deg,#030b0799,transparent 25% 75%,#030b0799);border-bottom:1px solid #cdb27955;border-radius:45% 45% 4px 4px / 12% 12% 4px 4px}
.companion-stage:before,.companion-stage:after{content:"";position:absolute;top:0;bottom:0;width:12%;z-index:2;pointer-events:none;background:repeating-linear-gradient(90deg,#081810cc,#30402a55 20%,#0a1b1399 40%);filter:brightness(.65)}
.companion-stage:before{left:0;clip-path:polygon(0 0,100% 0,35% 100%,0 100%)}
.companion-stage:after{right:0;transform:scaleX(-1);clip-path:polygon(0 0,100% 0,35% 100%,0 100%)}
.companion-beam{position:absolute;top:-8%;left:10%;width:80%;height:100%;background:linear-gradient(#ffedb71f,#ffe4a006);clip-path:polygon(43% 0,57% 0,100% 100%,0 100%);pointer-events:none}
.companion-platform{position:absolute;left:11%;right:11%;bottom:6%;height:14%;border-radius:50%;background:radial-gradient(ellipse,#69715a 0,#3b4c3a 46%,#d1b77f 49%,#4a5540 51%,#101e16 64%,transparent 70%);box-shadow:0 15px 18px #0007;transform:rotate(-1deg)}
.companion-image{position:absolute;left:10%;bottom:12%;width:80%;height:85%;object-fit:contain;object-position:50% 100%;filter:drop-shadow(4px 5px 7px #0006);transition:opacity .2s;user-select:none;pointer-events:none}
.companion-stage.is-loading .companion-image{opacity:.25}
.companion-stage.image-error .companion-image{visibility:hidden}
.companion-image-error{display:none;position:absolute;left:18%;right:18%;top:44%;text-align:center;font-size:12px;line-height:1.7;color:#d8c7a4}
.companion-stage.image-error .companion-image-error{display:block}
.companion-stage-note{position:absolute;z-index:2;left:0;right:0;bottom:1%;text-align:center;color:#ccb987;font:6px Arial,sans-serif;letter-spacing:2.6px;margin:0}
.companion-arrow{position:absolute;z-index:4;top:46%;width:38px;height:50px;border:1px solid #d4bd7c55;background:#071a12b3;color:#f2dcaa;font:36px/1 Georgia,serif;border-radius:30px}
.companion-previous{left:1%}.companion-next{right:1%}
.companion-arrow:hover{border-color:#e8cd91;background:#21392acf}
.companion-count{position:absolute;z-index:3;right:5%;bottom:7%;font:italic 11px Georgia,serif;letter-spacing:2px;color:#e7d0a0}
.companion-details{min-width:0;text-align:center}
.companion-heading{display:flex;align-items:baseline;justify-content:center;gap:9px;flex-wrap:wrap}
.companion-name{font:italic 30px Georgia,"Songti TC",serif;color:var(--companion-accent);margin:0}
.companion-costume{font-size:12px;letter-spacing:1px}.companion-mood{font-size:8px;color:#aebba2;letter-spacing:1px}
.companion-intro{font-size:11px;line-height:1.7;letter-spacing:.4px;color:#c4c7ae;margin:6px 0 0}
.companion-quote{font-family:"Songti TC","PMingLiU",serif;font-size:12px;line-height:1.6;color:#ead5a9;margin:4px 0 0}
.companion-roster{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}
.companion-choice{position:relative;min-height:42px;padding:6px 3px;border:1px solid #a68e5b44;border-radius:3px;background:#07180fc9;color:#b8bba2;font-size:10px;line-height:1.5;letter-spacing:.3px;overflow-wrap:anywhere}
.companion-choice[aria-pressed=true]{border-color:#e0c385;background:linear-gradient(135deg,#655b3b88,#253e2cc9);color:#ffe5ae;box-shadow:inset 0 0 12px #dfbc4810}
.companion-choice[data-chosen=true]:after{content:"✓";position:absolute;top:0;right:3px;color:#f7dc99;font-size:9px}
.companion-confirm{min-height:45px;padding:10px 8px;border:1px solid #edcf91;border-radius:2px;background:linear-gradient(115deg,#b18c4c,#ead1a0 50%,#c6a465);color:#24271a;font:600 12px "PingFang TC","Microsoft JhengHei",sans-serif;letter-spacing:1.8px;box-shadow:0 0 24px #d6ad5220}
@media(max-height:700px){.companion-room{gap:7px;padding-top:15px;padding-bottom:13px}.companion-header p{font-size:6px;margin-bottom:5px}.companion-header h2{font-size:17px}.companion-close{min-height:32px;font-size:9px}.companion-name{font-size:25px}.companion-intro{font-size:10px;margin-top:3px}.companion-quote{font-size:11px;margin-top:2px}.companion-choice{min-height:35px;font-size:9px;padding:4px 2px}.companion-confirm{min-height:38px;font-size:11px;padding:8px}.companion-stage-note{display:none}}
@media(max-height:460px){.companion-room{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr) auto;gap:7px 12px;padding:10px 5%}.companion-header{grid-column:1/-1}.companion-stage{grid-column:1;grid-row:2/5}.companion-details{grid-column:2;grid-row:2}.companion-roster{grid-column:2;grid-row:3;grid-template-columns:repeat(2,minmax(0,1fr));overflow-y:auto;align-content:start}.companion-confirm{grid-column:2;grid-row:4}.companion-mood,.companion-intro,.companion-quote{display:none}.companion-name{font-size:23px}.companion-costume{font-size:10px}.companion-choice{min-height:29px}.companion-arrow{width:28px;height:38px;font-size:27px}}
@media(prefers-reduced-motion:reduce){.companion-image{transition:none}}

/* Loose silhouette hit areas keep transparent sprite gutters clickable through. */
.table-companion[data-companion="blonde"]{clip-path:polygon(0.383% 54.107%,5.740% 16.339%,14.541% 10.179%,25.638% 5.893%,26.403% 5.625%,33.673% 3.482%,42.857% 1.339%,46.684% 0.536%,48.980% 0.134%,53.189% 0.134%,56.250% 0.402%,57.781% 0.670%,59.694% 1.071%,61.990% 1.607%,65.051% 2.411%,66.964% 2.946%,73.852% 5.491%,77.679% 7.500%,85.332% 12.589%,90.689% 25.446%,99.490% 57.991%,99.490% 58.527%,69.643% 94.955%,68.495% 95.759%,66.582% 96.429%,57.015% 99.643%,55.867% 99.777%,48.597% 99.777%,45.536% 99.643%,44.388% 99.509%,43.622% 99.375%,42.857% 99.107%,42.474% 98.839%,2.296% 57.321%,1.531% 56.518%,0.383% 54.911%)}
.table-companion[data-companion="bunny"]{clip-path:polygon(0.385% 28.789%,1.154% 23.991%,1.923% 23.305%,28.846% 2.513%,41.923% 0.228%,42.692% 0.114%,45.000% 0.114%,94.231% 2.628%,96.154% 2.742%,98.462% 3.085%,99.231% 3.313%,99.231% 4.341%,81.154% 54.494%,80.769% 55.293%,68.077% 77.113%,54.231% 98.248%,53.846% 98.591%,53.077% 98.934%,52.692% 99.048%,50.769% 99.391%,47.692% 99.848%,46.538% 99.962%,40.769% 99.962%,21.154% 99.733%,18.846% 99.391%,15.769% 98.705%,13.846% 98.248%,11.154% 97.449%,10.385% 97.106%,9.615% 96.649%,9.231% 96.306%,0.385% 31.874%)}
.table-companion[data-companion="greek"]{clip-path:polygon(-0.59% 93.74%,6.85% 49.62%,7.05% 49.00%,11.44% 39.20%,12.77% 36.75%,24.04% 18.97%,35.87% 3.04%,37.21% 1.81%,38.93% 0.59%,45.04% -0.64%,55.92% -0.02%,58.97% 0.59%,61.26% 1.20%,63.94% 2.43%,65.65% 3.65%,80.93% 20.20%,100.59% 48.39%,100.59% 50.84%,100.21% 92.52%,92.57% 93.74%,47.90% 100.48%,37.21% 99.87%,10.29% 96.19%,2.46% 94.97%,-0.21% 94.36%)}
.table-companion[data-companion="indian"]{clip-path:polygon(78.774% 99.764%,31.604% 99.764%,12.736% 97.170%,6.604% 96.226%,5.660% 95.755%,1.887% 93.632%,1.415% 93.160%,1.415% 90.566%,5.189% 75.472%,17.453% 35.613%,19.811% 29.717%,23.113% 23.113%,33.491% 3.774%,33.962% 3.302%,36.792% 1.887%,40.566% 0.943%,42.925% 0.708%,53.774% 0.708%,56.604% 1.415%,61.321% 3.774%,62.736% 5.189%,65.094% 8.255%,68.868% 13.679%,75.000% 22.877%,76.415% 25.472%,77.358% 27.830%,98.113% 89.858%,98.113% 92.689%,97.642% 93.160%,97.170% 93.396%,83.491% 98.585%)}
.table-companion[data-companion="kimono"]{clip-path:polygon(-0.28% 33.20%,27.85% 3.67%,28.96% 3.06%,30.28% 2.44%,32.94% 1.83%,45.57% -0.63%,56.42% -0.02%,64.18% 1.83%,66.39% 3.06%,88.54% 31.35%,100.06% 71.34%,100.28% 72.57%,100.28% 73.80%,100.06% 75.03%,99.40% 76.87%,98.73% 78.10%,97.41% 79.95%,81.90% 91.64%,65.51% 100.87%,40.92% 99.64%,37.59% 99.02%,35.60% 98.40%,34.27% 97.79%,33.16% 97.17%,26.74% 93.48%,26.08% 92.87%)}
.table-companion[data-companion="muscle"]{clip-path:polygon(-0.13% 40.41%,1.53% 29.05%,1.77% 28.42%,4.37% 22.74%,4.85% 22.11%,6.74% 20.84%,44.90% 0.64%,46.80% 0.01%,50.59% -0.62%,64.34% 0.01%,67.18% 0.64%,69.32% 1.28%,72.64% 2.54%,92.07% 21.48%,92.55% 22.11%,100.13% 34.10%,100.13% 35.36%,99.89% 37.89%,82.35% 95.33%,82.12% 95.96%,11.25% 101.01%,4.85% 100.38%,2.95% 99.75%,-0.13% 41.68%)}
.table-companion[data-companion="nurse"]{clip-path:polygon(93.674% 21.053%,99.327% 94.851%,99.327% 95.881%,98.923% 95.995%,94.886% 96.453%,93.674% 96.568%,56.528% 99.771%,51.682% 99.771%,5.653% 95.652%,2.826% 95.309%,2.423% 95.195%,0.404% 32.265%,0.404% 30.892%,5.653% 20.366%,6.460% 18.993%,7.268% 18.078%,7.672% 17.735%,34.320% 2.632%,35.935% 1.945%,39.569% 0.915%,41.588% 0.572%,44.011% 0.229%,45.626% 0.114%,50.471% 0.114%,57.739% 0.343%,58.950% 0.458%,61.373% 0.801%,62.584% 1.030%,64.199% 1.373%,66.622% 2.059%,67.833% 2.517%,68.641% 2.860%,69.852% 3.432%,70.256% 3.661%,71.467% 4.462%,93.271% 20.481%)}
.table-companion[data-companion="office"]{clip-path:polygon(0.389% 48.439%,6.615% 21.851%,7.004% 20.775%,7.393% 20.237%,9.728% 17.653%,31.907% 3.875%,34.630% 2.368%,36.576% 1.615%,38.132% 1.184%,41.245% 0.646%,45.525% 0.215%,47.860% 0.108%,52.140% 0.108%,56.031% 0.431%,59.144% 0.969%,59.922% 1.184%,63.424% 2.368%,64.202% 2.691%,64.591% 2.906%,66.148% 4.090%,84.047% 17.869%,84.436% 18.192%,84.825% 18.622%,85.214% 19.160%,85.603% 19.806%,98.054% 48.547%,99.222% 52.745%,99.222% 53.714%,63.424% 98.385%,63.035% 98.601%,61.479% 99.031%,58.755% 99.354%,57.198% 99.462%,42.412% 99.892%,40.078% 99.892%,37.743% 99.785%,34.630% 99.569%,33.463% 99.462%,31.907% 99.247%,31.518% 99.139%,31.128% 98.924%,1.556% 54.037%,0.389% 49.193%)}
.table-companion[data-companion="qipao"]{clip-path:polygon(0.47% 32.86%,3.14% 24.80%,3.43% 24.18%,28.64% 3.71%,29.53% 3.09%,30.72% 2.47%,32.20% 1.85%,35.47% 0.61%,39.03% -0.01%,43.77% -0.63%,56.82% -0.01%,65.13% 1.23%,68.09% 1.85%,69.28% 2.47%,70.17% 3.09%,94.49% 23.56%,97.75% 26.66%,99.53% 35.97%,99.53% 36.59%,99.24% 37.83%,85.30% 88.69%,71.36% 98.61%,69.58% 99.23%,54.75% 100.47%,39.62% 99.85%,37.25% 99.23%,18.56% 88.07%,0.47% 35.35%)}
.table-companion[data-companion="suit"]{clip-path:polygon(-0.16% 33.29%,0.31% 32.01%,3.81% 23.06%,4.52% 21.78%,6.15% 19.22%,6.62% 18.58%,7.32% 17.94%,8.26% 17.30%,41.70% 1.31%,43.57% 0.67%,45.67% 0.03%,48.95% -0.61%,62.04% 0.03%,65.79% 0.67%,69.06% 1.95%,71.16% 3.23%,71.87% 3.87%,83.79% 19.22%,85.66% 21.78%,92.68% 33.93%,93.15% 35.21%,93.61% 37.13%,93.85% 38.41%,94.08% 40.33%,100.16% 98.53%,100.16% 99.17%,50.12% 100.45%,37.72% 99.81%,36.09% 99.17%,35.38% 98.53%,0.07% 34.57%,-0.16% 33.93%)}

/* Companion conversations use the same dialogue component as the lobby. */
.tablet-left-edge{position:absolute;left:22.2%;top:15.5%;width:0;height:0;pointer-events:none}
.private-room .companion-chat{z-index:8;bottom:116px;height:31%;min-height:220px;max-height:310px}
.companion-chat .dialogue-bubble:before{left:22%}
.companion-chat-close{position:absolute;right:0;top:-49px;min-height:30px;padding:5px 10px;border:1px solid #d3b47488;background:#0b1f16ed;color:#ead4a7;font-size:10px;letter-spacing:.5px}
@media(max-height:650px){.private-room .companion-chat{bottom:110px;height:36%;min-height:190px;max-height:240px}}
@media(max-height:420px){.private-room .companion-chat{bottom:105px;height:46%;min-height:155px;max-height:190px}.companion-chat-close{top:-40px;min-height:26px;font-size:9px}}
/* Mia guides entry one question at a time, before the doors open. */
.entry-active .entrance-ui{visibility:hidden;pointer-events:none}
.entry-active .welcome-whisper{opacity:0!important}
.entry-active .brand{top:6.5%}
.entry-active .brand h1{font-size:clamp(36px,6cqh,64px);line-height:1}
.entry-active .crest{height:20px;margin-bottom:3px}
.entry-active .brand-cn{font-size:13px;margin:5px 0 8px}
.entry-active .brand-caption{font-size:6px;letter-spacing:1.8px}
.entry-active .hostess{top:18%;bottom:auto;height:82%;width:124%;-webkit-mask-image:linear-gradient(180deg,#000 78%,transparent 100%);mask-image:linear-gradient(180deg,#000 78%,transparent 100%)}
.entry-dialogue{position:absolute;z-index:32;left:5%;right:5%;bottom:max(28px,env(safe-area-inset-bottom));max-height:calc(100cqh - 100px);overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:12px;padding:16px 14px 12px;border:1px solid #c5a56a80;border-radius:18px;background:linear-gradient(140deg,#15281cf5,#05110ff5);box-shadow:0 12px 50px #000a;backdrop-filter:blur(14px);scrollbar-width:thin;scrollbar-color:#b89b66 transparent}
.entry-dialogue[hidden]{display:none}
.entry-dialogue-heading{display:flex;justify-content:space-between;align-items:center;gap:6px;font:7px Arial,sans-serif;letter-spacing:1.7px;color:#cfb981}
.entry-preview{flex:none;font:9px "PingFang TC","Microsoft JhengHei",sans-serif;letter-spacing:1px;border:1px solid #c2a56666;padding:3px 5px;border-radius:3px;color:#e3d1a8}
.entry-speech{position:relative;margin-top:9px;border:2px double #b99551;border-radius:16px 16px 16px 4px;padding:25px 14px 14px;background:linear-gradient(135deg,#fff2d4,#e5cfa1);color:#302b20;box-shadow:inset 0 0 18px #fff6}
.entry-speech:before{content:"";position:absolute;top:-8px;left:55%;width:15px;height:15px;transform:rotate(45deg);background:#f8e8c7;border-left:1px solid #b99551;border-top:1px solid #b99551}
.entry-nameplate{position:absolute;z-index:1;top:-12px;left:12px;display:flex;align-items:baseline;gap:8px;padding:4px 10px;background:linear-gradient(120deg,#254433,#0b1e15);border:1px solid #d4b677;color:#eed7a6;box-shadow:0 3px 9px #0004}
.entry-nameplate strong{font:italic 19px Georgia,serif}.entry-nameplate span{font-size:8px;letter-spacing:1px}
.entry-copy{font:16.8px/1.9 "PingFang TC","Microsoft JhengHei",sans-serif;letter-spacing:.3px;margin:0;overflow-wrap:anywhere}
.entry-guest{margin:0 0 7px;padding-bottom:7px;border-bottom:1px solid #997b4433;font:14px/1.6 "PingFang TC","Microsoft JhengHei",sans-serif;color:#726043;overflow-wrap:anywhere}
.entry-form{display:flex;flex-direction:column;gap:7px;margin:0}.entry-form[hidden],.entry-review[hidden]{display:none}
.entry-field-label{font-size:10px;letter-spacing:.6px;color:#ddccaa}
.entry-input-wrap{position:relative}.entry-input-wrap:has(input[hidden]){display:none}
.entry-form input,.entry-form select{width:100%;height:46px;border:1px solid #ae925e88;border-radius:7px;background:#040d09d9;color:#f9e8c8;padding:10px 14px;font:16px "PingFang TC","Microsoft JhengHei",sans-serif;outline-offset:2px}
.entry-form input{padding-right:65px}.entry-form input::placeholder{color:#a8997f;font-size:12px}
.entry-form input:focus,.entry-form select:focus{outline:1px solid #eed49c;border-color:#eed49c;box-shadow:0 0 12px #d0aa5333}
.entry-form input[aria-invalid=true]{border-color:#e6a28b}.entry-form input[hidden],.entry-form select[hidden]{display:none}
.entry-reveal{position:absolute;right:7px;top:4px;min-height:38px;padding:0 8px;background:none;border:0;color:#d5bd8b;font-size:10px}.entry-reveal[hidden]{display:none}
.entry-hint{margin:0;min-height:0;font:9px/1.7 "PingFang TC","Microsoft JhengHei",sans-serif;color:#b8ab90}.entry-hint:empty{display:none}
.entry-error{margin:0;font:10px/1.7 "PingFang TC","Microsoft JhengHei",sans-serif;color:#ffd1bd}
.entry-primary,.entry-choice{width:100%;min-height:44px;border:1px solid #ceb07877;border-radius:6px;background:#11261b;color:#ead7ae;padding:11px 12px;font:11px/1.6 "PingFang TC","Microsoft JhengHei",sans-serif;letter-spacing:.7px;text-align:left;cursor:pointer}
.entry-primary{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:3px}.entry-primary,.entry-gold{background:linear-gradient(110deg,#bc9658,#ecd4a0 55%,#c39d61);border-color:#edd4a2;color:#282419;font-weight:600;box-shadow:inset 0 0 0 2px #59451e10}
.entry-primary:hover,.entry-gold:hover{filter:brightness(1.08)}.entry-choice:not(.entry-gold):hover{background:#213a29;border-color:#d5ba83}
.entry-primary:focus-visible,.entry-choice:focus-visible,.entry-back:focus-visible,.entry-reveal:focus-visible{outline:2px solid #f2d59d;outline-offset:2px}
.entry-actions{display:flex;flex-direction:column;gap:7px}.entry-actions:empty{display:none}
.entry-telegram{display:flex;justify-content:center;align-items:center;gap:7px;background:#0a1912;font-size:10px;color:#ccbca0}.entry-telegram:before{content:"➤";display:grid;place-items:center;flex:none;width:19px;height:19px;border-radius:50%;background:#269ed2;color:#fff;font-size:11px;transform:rotate(-25deg)}
.entry-dialogue-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:3px 9px;color:#a6987c;font-size:8px;line-height:1.7;letter-spacing:.2px}.entry-back{border:0;background:none;color:#d6be8d;padding:5px 0;min-height:30px;font-size:10px}.entry-back[hidden]{display:none}
.entry-review{display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px 14px;margin:0;padding:10px 12px;border:1px solid #c8ac7140;border-radius:5px;font-size:11px;line-height:1.6}.entry-review dt{color:#bda984}.entry-review dd{margin:0;text-align:right;color:#f0dab0;overflow-wrap:anywhere}
.entry-switch{margin-top:9px;padding:5px 12px;min-height:30px;border:0;background:none;color:#c7b48b;font-size:9px;letter-spacing:1px}.entry-switch[hidden]{display:none}
@media(max-height:650px){.entry-active .brand{top:7%;opacity:.8}.entry-active .brand h1{font-size:34px}.entry-active .brand-cn,.entry-active .brand-caption,.entry-active .crest{display:none}.entry-active .hostess{top:13%;bottom:auto;height:100%;width:138%}.entry-dialogue{bottom:14px;max-height:calc(100cqh - 174px);padding:12px 12px 9px;gap:8px}.entry-copy{font-size:15.4px;line-height:1.7}.entry-speech{padding:22px 11px 10px}.entry-choice,.entry-primary{min-height:40px;padding:9px 11px}.entry-form input,.entry-form select{height:42px}.entry-guest{font-size:12.6px;margin-bottom:5px;padding-bottom:5px}.entry-dialogue-footer{font-size:7px}}
@media(max-height:430px){.entry-active .brand{display:none}.entry-active .hostess{top:6%;bottom:auto;height:100%;width:140%}.entry-dialogue{bottom:10px;max-height:calc(100cqh - 120px)}.entry-dialogue-heading{font-size:6px;letter-spacing:1px}}
/* A staffed cash desk between the entrance and the lounge. */
.cash-desk{position:absolute;inset:0;z-index:45;isolation:isolate;overflow:clip;background:#07130e;container-type:size;color:#ecd9b2}
.cash-desk[hidden]{display:none}.cash-room{position:absolute;inset:0;isolation:isolate;overflow:hidden;pointer-events:none}
.cash-architecture{position:absolute;inset:0;background:linear-gradient(180deg,#06100b55,#07130e33 35%,#030b07d9 75%),url('assets/dining/left-lounge.webp') 50% 35%/cover;filter:brightness(.75)}
.cash-architecture:after{content:"";position:absolute;inset:13px;border:1px solid #ba975a55;box-shadow:inset 20px 0 35px #0009,inset -20px 0 35px #0009}
.cash-wall-light{position:absolute;inset:0;background:radial-gradient(ellipse at 45% 23%,#d5b46e40,transparent 46%)}
.cash-desk-sign{position:absolute;z-index:1;left:0;right:0;top:12%;text-align:center;opacity:.55;color:#efce84;text-shadow:0 0 13px #d5ac5a88}
.cash-desk-sign span{display:block;font:6px Arial,sans-serif;letter-spacing:3px}.cash-desk-sign strong{display:block;margin-top:7px;font:22px Georgia,serif;letter-spacing:4px}.cash-desk-sign i{display:block;font:5px Arial,sans-serif;letter-spacing:1.5px;margin-top:6px}
.cash-person{position:absolute;z-index:2;top:7%;left:50%;height:89%;width:116%;transform:translateX(-50%);filter:drop-shadow(2px 6px 10px #0007)}



.cash-header{position:absolute;z-index:5;top:max(20px,env(safe-area-inset-top));left:5%;right:5%;display:flex;align-items:center;justify-content:space-between;gap:9px;text-shadow:0 2px 5px #000}
.cash-exit{flex:none;padding:8px 10px;min-height:38px;border:1px solid #d2b06b77;border-radius:5px;background:#07140de8;color:#e6d0a3;font-size:10px}
.cash-header h2{margin:0;font:italic 18px Georgia,serif;letter-spacing:.4px;text-align:center;color:#f4dcac;outline:none}.cash-header h2 span{display:block;font:7px Arial,sans-serif;letter-spacing:4px;margin-bottom:4px;color:#b9a16e}
.cash-wallet{flex:none;min-width:64px;padding:6px 8px;border:1px solid #d7b97555;border-radius:5px;background:#06130dd9;text-align:right}.cash-wallet>span{display:block;font-size:7px;letter-spacing:.4px;color:#c2ae82}.cash-wallet-value{display:block;margin-top:2px;font:17px Georgia,serif;color:#f3d294}
.cash-panel{position:absolute;z-index:6;left:5%;right:5%;bottom:max(20px,env(safe-area-inset-bottom));max-height:59%;display:flex;flex-direction:column;gap:10px;padding:14px 13px 10px;overflow:auto;overscroll-behavior:contain;border:1px solid #baa06799;border-radius:17px;background:linear-gradient(135deg,#162a20f7,#06140ef7);box-shadow:0 10px 40px #000a;backdrop-filter:blur(14px);scrollbar-width:thin;scrollbar-color:#bba16f66 transparent}
.cash-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:6px;flex-shrink:0;font:6px Arial,sans-serif;letter-spacing:1.6px;color:#bda573}.cash-panel-heading>span:last-child{font-size:8px;letter-spacing:.6px}
.cash-speech{position:relative;flex-shrink:0;padding:24px 13px 11px;margin-top:9px;background:linear-gradient(140deg,#fff1d3,#e6cfa1);border:2px double #b99652;border-radius:16px 16px 16px 4px;color:#30291e;box-shadow:inset 0 0 20px #fff6}
.cash-speech:before{content:"";position:absolute;top:-8px;left:54%;width:15px;height:15px;transform:rotate(45deg);border-left:1px solid #b99652;border-top:1px solid #b99652;background:#f9e7c4}
.cash-copy{margin:0;font:15.4px/1.85 "PingFang TC","Microsoft JhengHei",sans-serif;letter-spacing:.25px;overflow-wrap:anywhere}
.cash-offers{display:grid;gap:6px;flex-shrink:0}.cash-offers[hidden],.cash-offer-terms[hidden],.cash-deposit-form[hidden],.cash-summary[hidden]{display:none}
.cash-offer{width:100%;display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:57px;padding:8px 10px;border:1px solid #a488553d;border-radius:7px;background:#0a1b12;color:#e8d3a8;text-align:left}
.cash-offer[aria-pressed=true]{border-color:#edcb86;background:linear-gradient(100deg,#3d3b22,#172a1c);box-shadow:inset 3px 0 #e8c27a}
.cash-offer-icon{text-align:center;font:22px Georgia,serif;color:#d1b578}.cash-offer-label strong{display:block;font-size:10px;font-weight:500;letter-spacing:.5px}.cash-offer-label small{display:block;margin-top:4px;font-size:8px;line-height:1.5;color:#bba780}.cash-offer-rate{font:italic 22px Georgia,serif;color:#f2d294;white-space:nowrap}
.cash-offer-terms{margin:0;font:8px/1.75 "PingFang TC","Microsoft JhengHei",sans-serif;color:#baa986;flex-shrink:0;overflow-wrap:anywhere}
.cash-actions{display:grid;gap:6px;flex-shrink:0}.cash-actions .entry-choice{min-height:40px;padding:9px 11px;font-size:10px}.cash-note{margin:0;font:8px/1.6 "PingFang TC","Microsoft JhengHei",sans-serif;color:#a99b80;text-align:center;flex-shrink:0}
.cash-deposit-form{display:flex;flex-direction:column;gap:7px;flex-shrink:0}.cash-deposit-form label,.cash-field-label{margin-top:3px;font-size:9px;color:#bfae8d;letter-spacing:.3px}
.cash-deposit-form select,.cash-deposit-form input{width:100%;min-height:44px;border:1px solid #a68a5677;border-radius:6px;background:#06100cd9;color:#efddba;padding:10px 11px;font:14px "PingFang TC","Microsoft JhengHei",sans-serif}.cash-deposit-form input{font-size:16px}.cash-deposit-form select:focus,.cash-deposit-form input:focus{outline:1px solid #e6c88e;outline-offset:2px}.cash-deposit-form input[aria-invalid=true]{border-color:#e6a790}
.cash-bank-card{display:flex;align-items:center;gap:9px;min-height:48px;padding:9px 12px;border:1px solid #ddbd7c;border-radius:7px;background:#2a3525}.cash-bank-card>span{display:grid;place-items:center;width:27px;height:27px;background:#b48b47;border-radius:4px;font-size:24px;color:#fff3d2}.cash-bank-card strong{font-size:11px;font-weight:500}.cash-bank-card i{margin-left:auto;font-size:13px;font-style:normal;color:#efce86}
.cash-presets{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.cash-presets button{min-height:34px;border:1px solid #bc9e6155;border-radius:5px;background:#15291c;color:#dfc794;font-size:10px}.cash-presets button:disabled{opacity:.35;cursor:default}
.cash-amount-hint{margin:0;color:#b8a783;font-size:8px;line-height:1.7}.cash-error{margin:0;color:#ffd2bf;font-size:10px;line-height:1.8}.cash-live-quote{padding:10px;border:1px solid #9d84444d;border-radius:6px;background:#1c2c1d;color:#efcf8a;font:10px/1.8 "PingFang TC","Microsoft JhengHei",sans-serif;overflow-wrap:anywhere}
.cash-summary{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 12px;flex-shrink:0;margin:0;padding:12px;border:1px solid #b99c604d;border-radius:6px;background:#0b1c12;font:10px/1.7 "PingFang TC","Microsoft JhengHei",sans-serif}.cash-summary dt{color:#b5a07a}.cash-summary dd{margin:0;text-align:right;color:#ead2a2;overflow-wrap:anywhere}.cash-summary dt:last-of-type,.cash-summary dd:last-of-type{border-top:1px solid #c0a4694d;padding-top:8px;color:#f4d58c}
.lobby-cash-desk{position:absolute;z-index:29;top:max(22px,env(safe-area-inset-top));right:5%;padding:7px 10px;border:1px solid #d6ba7c77;border-radius:5px;background:#07150ee8;color:#ead2a2;box-shadow:0 3px 15px #0005;text-align:right;min-height:42px}.lobby-cash-desk>span{display:block;font:italic 12px Georgia,serif}.lobby-cash-balance{display:block;margin-top:4px;font-size:7px;letter-spacing:.4px;color:#c3af83}.focus-slots .lobby-cash-desk,.focus-live .lobby-cash-desk{display:none}
@media(max-height:650px){.cash-header{top:14px}.cash-header h2{font-size:15px}.cash-header h2 span{font-size:6px}.cash-person{top:9%;height:86%}.cash-desk-sign{top:12%}.cash-desk-sign strong{font-size:17px}.cash-panel{bottom:14px;max-height:59%;padding:11px 11px 8px;gap:8px}.cash-copy{font-size:14px;line-height:1.7}.cash-speech{padding:22px 11px 9px}.cash-offer{min-height:51px;padding:6px 8px;gap:7px}.cash-offer-rate{font-size:20px}.cash-actions .entry-choice{min-height:37px;padding:8px 10px}.cash-panel-heading{font-size:5px;letter-spacing:1px}.cash-panel-heading>span:last-child{font-size:7px}}
@media(max-height:430px){.cash-header{top:10px}.cash-exit{min-height:32px;padding:6px 8px;font-size:9px}.cash-wallet{padding:4px 6px}.cash-wallet-value{font-size:14px}.cash-header h2{font-size:13px}.cash-person{top:10%;height:88%}.cash-desk-sign{display:none}.cash-panel{max-height:59%;bottom:10px}.cash-copy{font-size:14px}.cash-offer-terms,.cash-note{font-size:7px}}
/* Shared translucent conversation surfaces: keep the scene visible and text crisp. */
:root{--dialogue-glass:linear-gradient(135deg,rgb(6 24 16 / .58),rgb(4 16 12 / .44));--dialogue-shell:rgb(4 19 13 / .25);--dialogue-ink:#fff0cf}
.entry-dialogue,.cash-panel{background:var(--dialogue-shell);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:0 10px 30px #0005}
.dialogue-bubble,.entry-speech,.cash-speech{background:var(--dialogue-glass);color:var(--dialogue-ink);border-color:#d2b578b3;box-shadow:inset 0 0 14px #e4c98a0a,0 4px 15px #0003;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);text-shadow:0 1px 3px #000c}
.dialogue-bubble:before,.entry-speech:before,.cash-speech:before{background:rgb(8 26 18 / .52);border-color:#d2b578b3}
.dialogue-speech,.entry-copy,.cash-copy{color:var(--dialogue-ink)}
.dialogue-question,.entry-guest{color:#e1cfaa;text-shadow:0 1px 3px #000c;border-color:#d3b67e55}
.dialogue-nameplate,.entry-nameplate{background:linear-gradient(120deg,rgb(27 54 38 / .7),rgb(7 24 15 / .6));box-shadow:0 3px 8px #0004}
.dialogue-pause,.companion-chat-close{background:rgb(9 30 20 / .6)}
.dialogue-choice{background:linear-gradient(90deg,rgb(5 22 12 / .52),rgb(12 34 22 / .3) 80%,transparent)}
.dialogue-choice:hover:not(:disabled),.dialogue-choice:focus-visible{background:linear-gradient(90deg,rgb(117 91 44 / .48),rgb(20 49 30 / .5) 80%,transparent)}
.entry-choice:not(.entry-gold),.cash-offer,.cash-bank-card,.cash-live-quote,.cash-summary,.entry-review{background:rgb(7 25 17 / .44);text-shadow:0 1px 3px #000b}
.entry-choice:not(.entry-gold):hover,.cash-offer[aria-pressed=true]{background:linear-gradient(100deg,rgb(83 75 38 / .55),rgb(17 40 25 / .44))}
.entry-primary,.entry-gold{background:linear-gradient(110deg,rgb(188 150 88 / .8),rgb(236 212 160 / .76) 55%,rgb(195 157 97 / .8));text-shadow:0 1px 1px #fff3}
.entry-form input,.entry-form select,.cash-deposit-form input,.cash-deposit-form select,.cash-presets button{background:rgb(3 17 11 / .56)}
.entry-form option,.cash-deposit-form option{background:#10251a;color:#f8e4b9}
.entry-hint,.entry-dialogue-footer,.dialogue-note,.cash-note,.cash-offer-terms,.cash-amount-hint{color:#dfcfad;text-shadow:0 1px 3px #000c}
.welcome-whisper{background:linear-gradient(120deg,rgb(15 36 25 / .48),rgb(5 23 15 / .4));-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);text-shadow:0 1px 3px #000b;box-shadow:0 4px 18px #0004}
.welcome-whisper i{background:rgb(8 28 18 / .46)}
.cash-person{-webkit-mask-image:linear-gradient(180deg,#000 78%,transparent 100%);mask-image:linear-gradient(180deg,#000 78%,transparent 100%)}

/* The portrait and facial animation share exactly the same image bounds. */
.cash-cashier{display:block;width:100%;height:100%;object-fit:contain;object-position:50% 0}
.cashier-live{position:absolute;top:0;left:50%;height:100%;width:auto;aspect-ratio:924 / 1702;transform:translateX(-50%);opacity:0;pointer-events:none}
.cash-person.live-ready>.cash-cashier{opacity:0}
.cash-person.live-ready>.cashier-live{opacity:1}
.cash-switch{justify-self:center;border:0;background:transparent;color:#cbb786;font:inherit;font-size:9px;text-decoration:underline;text-underline-offset:3px;padding:4px 10px;cursor:pointer}
.cash-switch:focus-visible{outline:1px solid #e8ce91;outline-offset:2px}

/* A shared, text-free chip balance in the cashier, lounge and private table. */
.chip-balance{display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:none;min-height:40px;min-width:0;padding:8px 10px;border:1px solid #d6ba7c77;border-radius:5px;background:#07150ed9;color:#f3d294;text-shadow:0 2px 5px #000;white-space:nowrap}
.chip-icon{display:block;flex:none;width:22px;height:22px}
.chip-balance .chip-balance-value{display:block;margin:0;font:17px Georgia,serif;font-variant-numeric:tabular-nums;letter-spacing:0;color:#f3d294}
.private-toolbar .private-title{min-width:0;overflow:hidden}
.private-toolbar .private-title>span,.private-toolbar .private-title h2{display:block;overflow:hidden;text-overflow:ellipsis}
@media(max-width:360px),(max-height:430px){.chip-balance{gap:5px;padding:6px 8px;min-height:36px}.chip-icon{width:19px;height:19px}.chip-balance .chip-balance-value{font-size:14px}}

/* The empty plate leaves the table as the waiter collects it. */
.dining-food.is-clearing .dining-art{animation:course-cleared 1s var(--ease) forwards}
.dining-paused .dining-food.is-clearing .dining-art,.dining-paused .dining-item.just-served .dining-art{animation-play-state:paused}
@keyframes course-cleared{0%,55%{opacity:1;transform:var(--prop-pose)}100%{opacity:0;transform:translate(18px,-35px) scale(.9) var(--prop-pose)}}
@media(prefers-reduced-motion:reduce){.dining-food.is-clearing .dining-art{animation:none}}
/* Sophie's collection retains its conversation layout with an opaque surface. */
.live-catalog{position:absolute;z-index:27;left:5%;right:5%;top:39%;bottom:max(15px,env(safe-area-inset-bottom));padding:0;min-height:0;color:var(--dialogue-ink);border:3px double #d2b578b3;border-radius:20px 20px 20px 5px;background:linear-gradient(145deg,#16372a,#081b14 46%,#0b1813);box-shadow:inset 0 0 14px #e4c98a0a,0 5px 20px #0004;-webkit-backdrop-filter:none;backdrop-filter:none;text-shadow:0 1px 3px #000c;container:casino-menu / inline-size}
.live-catalog[hidden]{display:none}
.live-catalog:before{content:"";position:absolute;top:-10px;left:53%;width:18px;height:18px;transform:rotate(45deg);background:#153327;border-left:2px solid #d2b578b3;border-top:2px solid #d2b578b3;pointer-events:none}
.catalog-shell{height:100%;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;min-height:0;position:relative}
.catalog-header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:21px 12px 8px}
.catalog-nameplate{background:linear-gradient(120deg,#1b3626,#07180f);top:-16px;left:13px;max-width:calc(100% - 26px)}.catalog-nameplate strong{font:italic 22px Georgia,serif;color:#f0d69b}.catalog-nameplate span{font-size:9px;letter-spacing:.6px}
.catalog-header h2{margin:0;font:400 12px/1.5 "Songti TC","PMingLiU",serif;letter-spacing:1px;color:#ecd9b2;outline:none}
.catalog-close{flex:none;border:1px solid #bca36a66;border-radius:4px;background:#0b1d1366;color:#d9c393;font-size:9px;padding:5px 8px;min-height:28px;white-space:nowrap}.catalog-close:hover{background:#51603a55}
.catalog-tools{display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,1.1fr);align-items:center;gap:8px;border-top:1px solid #c9ad6e22;border-bottom:1px solid #c9ad6e22;margin:0 12px;padding:7px 0}
.catalog-crumb{display:flex;align-items:center;gap:4px;min-width:0;font-size:9px;color:#baaf90}.catalog-home{border:0;background:none;padding:6px 0;color:#e1c38c;font:inherit;white-space:nowrap}.catalog-home:hover{color:#fff0c5}.catalog-current{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.catalog-search{display:flex;align-items:center;gap:6px;min-width:0;border:1px solid #bda47055;border-radius:5px;background:#07170f44;padding:6px 7px}.catalog-search:focus-within{border-color:#e3c487}.catalog-search svg{flex:none;width:13px;height:13px;fill:none;stroke:#c8b183;stroke-width:1.5}.catalog-search input{min-width:0;width:100%;border:0;background:none;outline:none;color:#efdfbb;font:11px "PingFang TC","Microsoft JhengHei",sans-serif;appearance:none}.catalog-search input::placeholder{color:#b1ae93}.catalog-search input::-webkit-search-cancel-button{cursor:pointer}.catalog-search kbd{display:none}
.catalog-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#bca16b55 transparent}.catalog-content{padding:12px 12px 16px}
.catalog-kicker{font:7px Arial,sans-serif;letter-spacing:1.8px;color:#c8b488}.catalog-intro .catalog-kicker{display:none}.catalog-intro h3{font:400 16px/1.5 "Songti TC","PMingLiU",serif;letter-spacing:1px;margin:0 0 4px;color:#f2deaf}.catalog-intro p{font-size:9px;line-height:1.7;color:#d0c9ae;margin:0 0 11px}
.catalog-picks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:18px}
.catalog-game{display:block;position:relative;min-width:0;overflow:hidden;border:1px solid #c2a66d55;border-radius:7px;background:#08191040;color:inherit;text-decoration:none;transition:transform .2s,border-color .2s}.catalog-game:hover{transform:translateY(-2px);border-color:#dbbd7baa}.catalog-game:focus-visible{outline:2px solid #f2d095;outline-offset:2px}
.catalog-game-art{position:relative;overflow:hidden;aspect-ratio:3/4;background:radial-gradient(ellipse at 50% 30%,#31483b55,#0a1c1455 75%)}.catalog-art-mark{position:absolute;inset:0;display:grid;place-items:center;font:italic 15px Georgia,serif;letter-spacing:2px;color:#bfa56966}.catalog-game-image{position:relative;display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s}.catalog-game:hover .catalog-game-image{transform:scale(1.025)}
.catalog-featured{border-color:#d5b87988;background:linear-gradient(120deg,#39433244,#0d241a44)}.catalog-featured .catalog-game-art{aspect-ratio:4/5}.catalog-featured .catalog-game-image{object-fit:contain;object-position:center}.catalog-pick-label{position:absolute;z-index:1;top:5px;left:5px;padding:3px 5px;border:1px solid #e3ca9180;border-radius:10px;background:#08201799;color:#f3da9f;font-size:7px;letter-spacing:0}
.catalog-game-ambience{position:absolute;inset:-10px;width:calc(100% + 20px);height:calc(100% + 20px);object-fit:cover;filter:blur(15px) brightness(.48);opacity:.5;pointer-events:none}
.catalog-game-details{position:relative;padding:7px 7px 8px}.catalog-game-provider{display:block;font:7px/1.4 Arial,sans-serif;letter-spacing:0;color:#d2bd90;margin-bottom:4px;overflow-wrap:anywhere}.catalog-game-name{display:block;font-size:10px;line-height:1.5;font-weight:500;overflow-wrap:anywhere;color:#f0dfbb}.catalog-game-arrow{display:none}
.catalog-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:8px;margin-bottom:10px}.catalog-section-heading h3{font:400 15px "Songti TC","PMingLiU",serif;letter-spacing:1px;margin:4px 0 0;color:#ecd4a4}.catalog-section-detail{font-size:8px;white-space:nowrap;color:#c6bda0}
.catalog-providers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.catalog-provider{display:flex;align-items:center;min-width:0;gap:8px;padding:9px 8px;min-height:55px;border:1px solid #b39b6255;border-radius:6px;background:linear-gradient(130deg,#28433133,#0a1c1444);text-align:left;transition:border-color .2s,background .2s}.catalog-provider:hover{background:#58604544;border-color:#d4b67599}.catalog-provider-logo{display:grid;place-items:center;flex:none;width:34px;height:34px}.catalog-provider-logo img{max-width:100%;max-height:100%;object-fit:contain}.catalog-provider-description{display:block;flex:1;min-width:0}.catalog-provider-description strong{display:block;font-size:10px;line-height:1.5;font-weight:400;overflow-wrap:anywhere;color:#e5d7b8}.catalog-provider-description small{display:block;font-size:8px;color:#c1b99a;margin-top:3px}.catalog-provider-arrow{font:13px Georgia,serif;color:#c5ab76}
.catalog-list-heading{display:flex;align-items:center;gap:10px;margin-bottom:13px;min-height:43px}.catalog-list-logo{display:grid;place-items:center;width:51px;height:43px;flex:none;border-right:1px solid #c6ac6f44;padding-right:9px}.catalog-list-logo img{max-width:100%;max-height:100%;object-fit:contain}.catalog-list-heading h3{font:400 18px/1.3 Georgia,"Songti TC",serif;margin:4px 0;color:#f0d9a6;outline:none}.catalog-list-heading p{font-size:9px;color:#cec4a8;margin:4px 0 0;line-height:1.6;overflow-wrap:anywhere}
.catalog-games{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.catalog-game.is-provider-art .catalog-game-image,.catalog-fallback{object-fit:contain;padding:15%}.catalog-game.is-provider-art .catalog-game-art{background:radial-gradient(ellipse at 50% 45%,#36543d55,#0c201655 85%)}
.catalog-more,.catalog-empty-back{display:block;margin:15px auto 0;padding:9px 16px;border:1px solid #ccb07477;border-radius:5px;background:#142d2080;color:#e3c892;font-size:10px;min-height:36px}.catalog-more:hover,.catalog-empty-back:hover{border-color:#edd3a0;background:#2c423088}
.catalog-empty{text-align:center;padding:16px 7px 22px;color:#c9bfa3}.catalog-empty-icon{font:29px Georgia,serif;color:#c2a56a}.catalog-empty h4{font:400 16px "Songti TC","PMingLiU",serif;color:#e6cca0;margin:10px 0}.catalog-empty p{font-size:10px;line-height:1.8}.catalog-loading{padding:30px 12px;text-align:center;font-size:11px;line-height:1.8;color:#d9c496}
.catalog-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #c7ab6e33;background:#081910;padding:8px 12px;border-radius:0 0 15px 3px}.catalog-footer p{font-size:8px;line-height:1.6;margin:0;color:#d1c7ab}.catalog-footer p>span{color:#d7bc83;margin-right:3px}.catalog-seat{border:1px solid #b59d6655;border-radius:4px;flex:none;padding:7px 8px;min-height:30px;background:#b69c4812;color:#e2cd9c;font-size:9px;white-space:nowrap}.catalog-seat span{margin-left:4px}.catalog-seat:hover{background:#b69c482b;border-color:#ceb176}
.catalog-open .slots-track{animation-play-state:paused}
@container casino-menu (max-width:310px){.catalog-header{padding:18px 9px 6px}.catalog-nameplate strong{font-size:19px}.catalog-nameplate span{font-size:8px}.catalog-header h2{font-size:11px}.catalog-close{font-size:8px;padding:4px 6px}.catalog-tools{margin:0 9px;gap:6px;grid-template-columns:minmax(0,1fr) minmax(105px,1.1fr)}.catalog-current{display:none}.catalog-content{padding:10px 9px 13px}.catalog-picks{gap:5px}.catalog-game-details{padding:6px 5px}.catalog-game-name{font-size:9px}.catalog-section-heading{align-items:flex-start;flex-direction:column;gap:5px}.catalog-provider{padding:8px 6px;gap:6px}.catalog-provider-logo{width:27px;height:29px}.catalog-provider-description strong{font-size:9px}.catalog-provider-arrow{display:none}.catalog-footer{padding:7px 9px}.catalog-footer p{font-size:7px}.catalog-seat{font-size:8px;padding:6px}}
@media(max-height:650px){.live-catalog{top:39%;bottom:12px}.catalog-header{padding-top:17px}.catalog-intro p{display:none}.catalog-intro h3{font-size:14px;margin-bottom:9px}}
@media(max-height:430px){.live-catalog{top:38%;bottom:9px}.catalog-header{padding:14px 8px 4px}.catalog-header h2{font-size:9px}.catalog-close{min-height:22px;font-size:7px;padding:3px 5px}.catalog-nameplate{top:-12px}.catalog-nameplate strong{font-size:16px}.catalog-nameplate span{font-size:7px}.catalog-tools{padding:4px 0;margin:0 8px}.catalog-crumb{font-size:8px}.catalog-search{padding:4px 5px}.catalog-search input{font-size:10px}.catalog-footer{padding:5px 8px;gap:4px}.catalog-seat{min-height:25px;font-size:7px;padding:4px 5px}.catalog-footer p{font-size:6px}.catalog-content{padding:8px}.catalog-intro h3{font-size:12px}.catalog-game-details{padding:5px}.catalog-game-name{font-size:8px}}
@media(prefers-reduced-motion:reduce){.live-catalog *{transition:none!important}}

/* Catalog selections stay at the table and display local cover art only. */
button.catalog-game{width:100%;padding:0;text-align:left;font:inherit}
.private-game-preview{position:absolute;inset:0;display:grid;place-items:center;background:#04100c}
.private-game-thumbnail{display:block;width:100%;height:100%;object-fit:contain}
.private-preview-error{padding:20px;color:#d9c59b;font-size:12px;text-align:center}
.private-game-preview[hidden],.private-game-thumbnail[hidden],.private-preview-error[hidden],.private-game-frame[hidden],.private-utilities [hidden]{display:none}

/* Nora's withdrawal flow shares the translucent Cashier conversation panel. */
.cash-withdraw-form,.cash-bank-form{display:flex;flex-direction:column;gap:8px;flex-shrink:0}
.cash-withdraw-form[hidden],.cash-bank-form[hidden]{display:none}
.cash-withdraw-form label,.cash-bank-form label{margin-top:3px;font-size:9px;color:#dfcfad;letter-spacing:.3px;text-shadow:0 1px 3px #000c}
.cash-bank-form input,.cash-withdraw-amount-row{width:100%;min-height:44px;border:1px solid #a68a5677;border-radius:6px;background:rgb(3 17 11 / .56);color:#efddba}
.cash-bank-form input{padding:10px 11px;font:16px "PingFang TC","Microsoft JhengHei",sans-serif}
.cash-bank-form input:focus,.cash-withdraw-amount-row:focus-within{outline:1px solid #e6c88e;outline-offset:2px}
.cash-bank-form input[aria-invalid=true],.cash-withdraw-amount-row:has(input[aria-invalid=true]){border-color:#e6a790}
.cash-withdraw-amount-row{display:flex;align-items:center;gap:12px;padding:10px 12px;min-height:62px}
.cash-withdraw-amount-row>span{flex:none;color:#cbb786;font:11px Arial,sans-serif;letter-spacing:1px}
.cash-withdraw-amount-row input{width:100%;min-width:0;padding:0;border:0;background:transparent;color:#f4dcaa;text-align:right;font:25px Georgia,serif;outline:none}
.cash-withdraw-amount-row input::placeholder{color:#cbb78688}
.cash-withdraw-wallet{display:grid;grid-template-columns:minmax(0,1fr) auto 32px;align-items:center;gap:7px;color:#e9d3aa;font-size:10px;line-height:1.5}
.cash-withdraw-total{margin:0;font:14px Georgia,serif;color:#f1d698;overflow-wrap:anywhere}
.cash-wallet-refresh{display:grid;place-items:center;flex:none;min-width:32px;min-height:32px;border:1px solid #b49a6655;border-radius:50%;background:#09201666;color:#e8ce94;font:20px Arial,sans-serif}
.cash-withdraw-hint{margin:0;font-size:8px;line-height:1.8;color:#dfcfad;text-shadow:0 1px 3px #000c}
.cash-withdraw-card{display:flex;align-items:center;gap:9px;width:100%;min-height:60px;padding:10px 11px;border:1px solid #ba9d6266;border-radius:7px;background:rgb(7 25 17 / .44);color:#e8d3a8;text-align:left}
.cash-withdraw-card>span:first-child{font-size:23px;color:#e1c48c}.cash-withdraw-card>span:nth-child(2){flex:1;min-width:0}
.cash-withdraw-card strong{display:block;font-size:11px;font-weight:500}.cash-withdraw-card small{display:block;margin-top:4px;font-size:9px;color:#c7b38e;overflow-wrap:anywhere}
.cash-card-edit{font:10px Arial,sans-serif;color:#e5c57e;flex:none}.cash-withdraw-card:focus-visible,.cash-wallet-refresh:focus-visible{outline:1px solid #e6c88e;outline-offset:2px}

.catalog-art-note{position:absolute;bottom:5px;left:5px;right:5px;padding:3px 4px;border:1px solid #bfa26966;border-radius:3px;background:#081b14e8;color:#e1c995;text-align:center;font-size:7px;line-height:1.4}

/* Opaque deposit offers keep the promotion and its rate easy to read. */
.cash-offer{background:#102c20;border:1px solid #a98a51;min-height:74px;padding:12px;gap:10px;box-shadow:0 4px 12px #0005}
.cash-offer:hover{background:#1c3c2b;border-color:#efd49d}
.cash-offer[aria-pressed=true]{background:linear-gradient(110deg,#61502b,#233c27);border-color:#f6d38c;box-shadow:inset 4px 0 #f2ce82,0 4px 14px #0005}
.cash-offer-label strong{font-size:14px;font-weight:600;line-height:1.55;color:#fff0cf}
.cash-offer-label small{font-size:11.2px;color:#e0d0ad}
.cash-offer-rate{font-size:30.8px;color:#ffe0a0}
.cash-offer-icon{font-size:27px}
.cash-continue{font-size:15px;min-height:48px}

/* The timer travels with the wallet while the player explores or plays. */
.chip-balance.is-processing{border-color:#e4bd70;background:#14291d}
.chip-balance.is-processing .chip-balance-value{font:12px/1.5 "PingFang TC","Microsoft JhengHei",sans-serif;font-variant-numeric:tabular-nums;color:#ffe0a0}
.focus-slots .lobby-cash-desk.is-processing,.focus-live .lobby-cash-desk.is-processing{display:inline-flex}
.cash-header:has(.is-processing) h2{display:none}
.private-toolbar:has(.is-processing) .private-title{flex:1}
.pending-free-label{display:none}
.deposit-welcome .pending-free-label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:5px;border:1px solid #dfbc76;border-radius:4px;background:linear-gradient(140deg,#133d2d,#071b14);color:#eddbb7;font:9px/1.5 "Songti TC","Noto Serif TC","PMingLiU",serif;letter-spacing:.8px;box-shadow:inset 0 0 12px #d8b46a22,0 0 10px #0006;text-shadow:0 1px 3px #000}
.pending-free-label strong{font:italic clamp(13px,4cqw,17px)/1.2 Georgia,serif;color:#e7c98f;letter-spacing:.3px;white-space:nowrap}
.pending-free-label i{margin-top:1px;font:7px/1.4 "PingFang TC","Microsoft JhengHei",sans-serif;letter-spacing:.6px;color:#c6b48f}
.arrival.visible.deposit-welcome .lobby-stage{transform:translate(-50%,-50%) scale(2.15) translate(21.4%,7%)}
.deposit-welcome .person-slots{pointer-events:none}
.deposit-welcome .lobby-footer p{font-size:12px;letter-spacing:.4px}
@media(max-width:360px),(max-height:430px){.chip-balance.is-processing{gap:4px;padding:6px}.chip-balance.is-processing .chip-balance-value{font-size:11px}.chip-balance.is-processing .chip-icon{width:17px;height:17px}}
@media(max-height:430px){.arrival.visible.deposit-welcome .lobby-stage{transform:translate(-50%,-50%) scale(2.15) translate(21.4%,11%)}}

/* Eight hostesses stand in four receding pairs along the central gallery. */
.lobby-eight{position:absolute;inset:0;overflow:hidden;container-type:size;isolation:isolate;background:#07140f;touch-action:pinch-zoom;overscroll-behavior:contain}
.eight-lobby:not(.deposit-welcome)>.lobby-stage{display:none}
.deposit-welcome>.lobby-eight{display:none}
.hall-camera{position:absolute;inset:0;transform:translate3d(var(--hall-pan-x,0px),var(--hall-pan,0%),0) scale(var(--hall-zoom,1));transform-origin:50% 50%;transition:transform 1.35s cubic-bezier(.22,.7,.2,1);will-change:transform}
.hall-gallery{position:absolute;inset:auto;width:100%;height:100%;max-width:none;object-fit:fill;filter:brightness(.82) saturate(.94);pointer-events:none}
.hall-floor-light{position:absolute;inset:0;background:linear-gradient(180deg,#03110c55,transparent 28%,transparent 82%,#03110ca8),radial-gradient(ellipse at 50% 53%,#e9ca7d18,transparent 67%);pointer-events:none}
.hall-figure{position:absolute;transform:translate(-50%,-100%) translateX(var(--focus-offset,0px));z-index:var(--figure-z);container-type:inline-size;isolation:isolate;transition:opacity .55s,transform 1.35s cubic-bezier(.22,.7,.2,1);pointer-events:none;filter:drop-shadow(0 3px 3px #0005)}
.hall-figure:after{content:"";position:absolute;left:var(--foot-x);top:var(--foot-y);width:58%;height:3%;transform:translate(-50%,-50%);border-radius:50%;background:#06110ca8;filter:blur(2px);z-index:-1;pointer-events:none}
.hall-hostess-sprite{position:absolute;inset:0;background-image:url('assets/lobby-eight/hostesses-slender-match.webp');background-size:400% 200%;background-position:var(--sprite-x) var(--sprite-y);background-repeat:no-repeat;pointer-events:none}
.hall-hostess-motion{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;opacity:0}
.hall-motion-ready .hall-hostess-sprite{opacity:0}.hall-motion-ready .hall-hostess-motion{opacity:1}
.hall-tablet-art{position:absolute;inset:0;z-index:1;background-image:url('assets/lobby-eight/hostesses-large-tablets.webp');background-size:400% 200%;background-position:var(--sprite-x) var(--sprite-y);background-repeat:no-repeat;clip-path:inset(var(--tablet-clip-top) 0 var(--tablet-clip-bottom) 0);transform:translateX(var(--tablet-shift-x)) scale(var(--tablet-scale));transform-origin:var(--tablet-pivot-x) var(--tablet-pivot-y);pointer-events:none}
.hall-person{position:absolute;left:36%;width:28%;top:1%;height:27%;pointer-events:auto;background:transparent;border:0;padding:0;cursor:zoom-in;border-radius:40% 40% 8% 8%}
.hall-person[aria-pressed=true]{cursor:pointer}
.hall-person:focus-visible{outline:1px solid #ebcf8a;outline-offset:2px}
.hall-tablet{position:absolute;pointer-events:auto;z-index:2;display:block;min-width:0;padding:0;border:0;border-radius:3px;background:transparent;box-shadow:none;cursor:pointer}
/* The single physical tablet, lettering, icon, bevel and reflections are baked
   into the sprite. This invisible button adds interaction only, never a 2nd plaque. */
.hall-tablet .hall-accessible-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.hall-tablet:focus-visible{outline:1px solid #f2d594;outline-offset:2px}
.hall-figure.is-passed{opacity:0;pointer-events:none}
/* Brass floor inlay sits in the foreground, below the hostesses' feet. */
.hall-private-table{position:absolute;z-index:5;left:50%;top:81%;width:86%;height:8.5cqh;min-height:44px;padding:0;border:0;border-radius:0;background:none;color:#d6bd7e;transform:translateX(-50%);cursor:pointer;-webkit-tap-highlight-color:transparent}
.hall-floor-lettering{position:relative;display:flex;align-items:center;justify-content:center;gap:4cqw;width:100%;height:100%;font:600 clamp(17px,5.2cqw,29px)/1 Georgia,serif;letter-spacing:.075em;text-transform:uppercase;transform:perspective(460px) rotateX(48deg);background:repeating-linear-gradient(106deg,transparent 0 2px,#37270c33 2px 3px,transparent 3px 7px),linear-gradient(170deg,#f2dc9e 8%,#b1914d 35%,#e9d498 53%,#967236 79%,#d9bd76);background-clip:text;-webkit-background-clip:text;color:transparent;filter:drop-shadow(0 1px 0 #211809) drop-shadow(0 -1px 0 #f4e4b526);transition:filter .2s}
.hall-floor-lettering:before,.hall-floor-lettering:after{content:"";position:absolute;left:5%;right:5%;height:1px;background:linear-gradient(90deg,transparent,#b8944e99 15%,#e3ca8677 50%,#b8944e99 85%,transparent);box-shadow:0 1px 0 #21180988;pointer-events:none}
.hall-floor-lettering:before{top:7%}.hall-floor-lettering:after{bottom:7%}
.hall-floor-arrow{color:#d2b774;font:400 1.5em/1 Georgia,serif;letter-spacing:0}
.hall-private-table:hover .hall-floor-lettering{filter:brightness(1.22) drop-shadow(0 1px 0 #211809)}
.hall-private-table:active .hall-floor-lettering{filter:brightness(.9)}
.hall-private-table:focus-visible{outline:1px solid #e5ca88;outline-offset:2px;border-radius:4px}
.hall-free-game{position:absolute;z-index:11;left:50%;bottom:156px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;width:min(300px,calc(100% - 44px));aspect-ratio:2;padding:32px 18px 12px;border:3px solid #ba9758;border-radius:160px 160px 10px 10px;background:linear-gradient(120deg,transparent 14%,#f8dea421 35%,transparent 47%),radial-gradient(ellipse at 50% 0,#37594a,#0d291e 63%,#06160f);color:#fae9c4;text-align:center;text-shadow:0 2px 3px #000;font-family:Georgia,serif;box-shadow:0 5px 0 #62451f,0 7px 0 #d0ad67,0 14px 19px #0009,inset 0 2px 2px #fff2c899,inset 0 -5px 9px #000a}
.hall-free-game[hidden]{display:none}
.hall-free-game:before{content:"";position:absolute;inset:4px;border:1px solid #d9be7f88;border-radius:inherit;pointer-events:none;box-shadow:inset 0 1px 8px #e1cb9533}
.hall-free-status{font:12px/1.5 Arial,sans-serif;letter-spacing:.3px;color:#e4c991}
.hall-free-game strong{font:600 17px/1.35 Georgia,serif}.hall-free-game em{display:block;margin-top:2px;font:italic 24px/1.2 Georgia,serif;color:#ffe2a2}
.hall-free-arrow{position:absolute;right:16px;bottom:12px;font:18px Georgia,serif;color:#e4c58a}
.hall-free-game:hover{filter:brightness(1.12)}
.hall-gesture-hint{position:absolute;z-index:12;left:50%;top:43%;transform:translateX(-50%);display:flex;flex-direction:column;width:190px;pointer-events:none;text-align:center;color:#fff1d2;filter:drop-shadow(0 2px 4px #000c)}
.hall-gesture-motion{position:relative;order:1;width:64px;height:110px;margin:8px auto 0}
.hall-gesture-trail{position:absolute;left:31px;top:3px;bottom:3px;border-left:1px dashed #f5dc9d88}
.hall-gesture-trail:before,.hall-gesture-trail:after{content:"";position:absolute;left:-5px;width:8px;height:8px;transform:rotate(45deg)}
.hall-gesture-trail:before{top:0;border-left:1px solid #f5dc9dcc;border-top:1px solid #f5dc9dcc}.hall-gesture-trail:after{bottom:0;border-right:1px solid #f5dc9dcc;border-bottom:1px solid #f5dc9dcc}
.hall-gesture-finger{position:absolute;left:8px;top:23px;width:48px;height:63px;color:#f7dfac;opacity:.58;stroke:#fff0cd;stroke-width:1;animation:hall-swipe-guide 3.6s ease-in-out infinite;transform-origin:50% 85%}
.hall-gesture-hint p{margin:0;font:12px/1.6 Arial,sans-serif;text-shadow:0 1px 4px #000,0 0 8px #000}
.hall-gesture-hint p span{display:block}
@keyframes hall-swipe-guide{0%,100%{transform:translateY(22px) rotate(6deg);opacity:.35}35%,50%{transform:translateY(-22px) rotate(-5deg);opacity:.7}85%{transform:translateY(22px) rotate(6deg);opacity:.58}}
.hall-row-controls{position:absolute;z-index:10;left:50%;top:89%;transform:translateX(-50%);display:flex;width:max-content;max-width:calc(100% - 20px);gap:4px;padding:4px;border:1px solid #d1b57455;border-radius:20px;background:#06170fdb;backdrop-filter:blur(8px)}
.hall-row-controls button{flex:none;min-height:28px;min-width:29px;padding:5px 8px;border:1px solid transparent;border-radius:14px;background:transparent;font:10px Georgia,"Songti TC",serif;color:#c3b18c;white-space:nowrap}
.hall-row-controls button[aria-pressed=true]{border-color:#d1b57899;background:#d6b56f1c;color:#f5dfad}
.eight-lobby:not(.deposit-welcome) .lobby-header{top:7%;z-index:5}
.eight-lobby:not(.deposit-welcome) .lobby-header .lobby-brand{font-size:clamp(30px,6cqh,54px)}
.eight-lobby:not(.deposit-welcome) .lobby-header h2{font-size:clamp(11px,1.6cqh,16px);letter-spacing:2px;margin:5px 0}
.eight-lobby:not(.deposit-welcome) .lobby-rule{margin-top:7px;font-size:8px}
.eight-lobby:not(.deposit-welcome) .lobby-footer{bottom:2%;z-index:12;left:5%;right:5%;pointer-events:none}
.eight-lobby:not(.deposit-welcome) .lobby-footer p{font-size:clamp(8px,1.15cqh,11px);letter-spacing:.25px;line-height:1.6;margin-bottom:9px}
.eight-lobby:not(.deposit-welcome) .lobby-footer button{pointer-events:auto}
.eight-lobby:not(.deposit-welcome) .lobby-shade{pointer-events:none;z-index:4;background:linear-gradient(180deg,#020d0944,transparent 20%,transparent 84%,#020d09c9)}
@media(max-height:650px){.hall-free-game{width:min(270px,calc(100% - 44px));bottom:142px}.hall-gesture-hint{top:30%}.hall-gesture-motion{height:74px}.hall-gesture-finger{top:9px;width:40px;height:53px;left:12px}.hall-row-controls{top:90%}.eight-lobby:not(.deposit-welcome) .lobby-footer p{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.eight-lobby:not(.deposit-welcome) .lobby-header{top:6%}.eight-lobby:not(.deposit-welcome) .lobby-header .lobby-brand{font-size:30px}.eight-lobby:not(.deposit-welcome) .lobby-rule{display:none}}
@media(max-height:430px){.hall-free-game{width:220px;bottom:113px;padding:24px 12px 7px;gap:3px}.hall-free-game strong{font-size:14px}.hall-free-game em{font-size:19px}.hall-free-status{font-size:10px}.hall-free-arrow{font-size:15px;right:12px;bottom:8px}.hall-gesture-hint{top:27%;display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:8px;width:220px;text-align:left}.hall-gesture-motion{order:0;width:48px;height:56px;margin:0}.hall-gesture-trail{left:24px}.hall-gesture-finger{top:6px;width:34px;height:45px;left:7px}.hall-gesture-hint p{font-size:11px;line-height:1.5}.hall-private-table{top:79.5%}.hall-row-controls{top:90%;padding:2px;gap:2px}.hall-row-controls button{min-height:23px;min-width:25px;font-size:9px;padding:3px 6px}.eight-lobby:not(.deposit-welcome) .lobby-header{top:12px}.eight-lobby:not(.deposit-welcome) .lobby-header .eyebrow{display:none}.eight-lobby:not(.deposit-welcome) .lobby-header .lobby-brand{font-size:25px}.eight-lobby:not(.deposit-welcome) .lobby-header h2{font-size:9px;margin-top:3px}.eight-lobby:not(.deposit-welcome) .lobby-footer{bottom:8px}.eight-lobby:not(.deposit-welcome) .lobby-note{display:none}.eight-lobby:not(.deposit-welcome) .return{min-height:30px;padding:7px 13px;font-size:9px}.eight-lobby:not(.deposit-welcome) .lobby-footer p{margin-bottom:5px;font-size:8px}}
@media(prefers-reduced-motion:reduce){.hall-camera,.hall-figure{transition:none;will-change:auto}.hall-gesture-finger{animation:none;opacity:.58}}

.table-companion-video,.table-companion-motion{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;filter:drop-shadow(-4px 5px 5px #0007)}
.table-companion-video{opacity:0}.table-companion.motion-native .table-companion-video{opacity:1}
.table-companion.motion-ready .table-companion-image{visibility:hidden}
.table-companion-video[hidden],.table-companion-motion[hidden]{display:none}
.table-companion:focus-visible .table-companion-video,.table-companion:focus-visible .table-companion-motion{filter:drop-shadow(0 0 5px #ffe2a3) drop-shadow(0 0 9px #cfae63)}

/* The selected hostess offers a Free Game while funds are unavailable. */
.game-entry-prompt{position:absolute;inset:0;z-index:30;background:linear-gradient(180deg,transparent 25%,#03100b33 55%,#03100bd9);isolation:isolate}
.game-entry-chat.concierge-chat{height:auto;min-height:0;max-height:calc(100% - 80px);bottom:max(24px,env(safe-area-inset-bottom));grid-template-rows:minmax(0,1fr) auto;gap:14px}
.game-entry-chat .dialogue-bubble{background:linear-gradient(135deg,#17382bfa,#081b13fc);padding:26px 18px 18px;border-color:#d8bd7bd9;overflow:visible}
.game-entry-kicker{margin:0 0 10px;font:9px Arial,sans-serif;letter-spacing:2px;color:#d7be85}
.game-entry-chat .dialogue-copy{margin:0;min-height:0;max-height:36cqh;overflow-y:auto;font-family:AsiaSerif,Georgia,serif;line-height:1.55;letter-spacing:.1px}
.game-entry-chat .dialogue-choice{min-height:46px;background:linear-gradient(100deg,#153b2cf5,#0a2018f5);border:1px solid #c4a86c80;border-radius:5px;padding:10px 12px}
.game-entry-chat .game-entry-free{border-color:#e3c583;background:linear-gradient(110deg,#6a5228f5,#213c28f5)}
.game-entry-chat .choice-label{font-size:14px;letter-spacing:.2px}
@media(max-height:430px){.game-entry-chat.concierge-chat{bottom:12px;gap:6px}.game-entry-chat .dialogue-bubble{padding:18px 12px 10px}.game-entry-chat .dialogue-copy{max-height:27cqh;font-size:15px}.game-entry-kicker{margin-bottom:5px;font-size:8px}.game-entry-chat .dialogue-choice{min-height:34px;padding:6px 10px}.game-entry-chat .choice-label{font-size:12px}}
/* English copy uses Latin serif metrics without excessive letter spacing. */
:lang(en) .dialogue-copy{font-family:AsiaSerif,Georgia,serif;letter-spacing:.1px}
:lang(en) .entry-choice,:lang(en) .entry-primary,:lang(en) .choice-label{letter-spacing:.2px}

/* Keep every conversation control readable, including short mobile screens. */
.entry-dialogue>*{flex-shrink:0}
.entry-dialogue-heading,.cash-panel-heading{flex-wrap:wrap;font-size:10px;line-height:1.5;letter-spacing:.8px}
.entry-preview,.cash-panel-heading>span:last-child{font-size:11px;letter-spacing:.4px}
.entry-nameplate span,.chat-role{font-size:11px;letter-spacing:.3px}
.dialogue-nameplate{max-width:calc(100% - 108px)}
.dialogue-nameplate .chat-name{flex:none}.dialogue-nameplate .chat-role{overflow:hidden;text-overflow:ellipsis}
.entry-copy,.cash-copy{font-size:18px;line-height:1.7}
.entry-guest{font-size:14px}
.entry-field-label,.cash-deposit-form label,.cash-field-label,.cash-withdraw-form label,.cash-bank-form label{font-size:14px;line-height:1.5;letter-spacing:.2px}
.entry-form input,.entry-form select,.cash-deposit-form input,.cash-deposit-form select,.cash-bank-form input{font-size:18px;min-height:48px;height:auto}
.entry-form input::placeholder{font-size:14px}
.entry-form input{padding-right:80px}
.entry-reveal{top:0;bottom:0;min-height:44px;font-size:14px}
.entry-hint,.entry-error,.cash-amount-hint,.cash-error,.cash-withdraw-hint{font-size:13px;line-height:1.6}
.entry-primary,.entry-choice,.cash-actions .entry-choice{min-height:48px;padding:11px 12px;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.entry-primary>span:first-child{min-width:0}
.entry-dialogue-footer,.cash-note,.cash-offer-terms{font-size:12px;line-height:1.6}
.entry-back,.entry-switch,.cash-switch{font-size:14px;min-height:40px}
.entry-review,.cash-summary,.cash-live-quote{font-size:14px;line-height:1.6}
.cash-presets button{font-size:14px;min-height:44px;overflow-wrap:anywhere}
.cash-bank-card strong,.cash-withdraw-card strong{font-size:14px;line-height:1.5}
.cash-withdraw-card small,.cash-card-edit,.cash-withdraw-wallet,.cash-withdraw-amount-row>span{font-size:13px}
.cash-offer-label strong{font-size:14px}.cash-offer-label small{font-size:13px}
.concierge-chat{height:42%;min-height:280px}
.private-room .companion-chat{height:38%;min-height:260px;max-height:calc(100% - 165px)}
.dialogue-question{font-size:14px}
.dialogue-choices{min-height:0;max-height:24cqh;overflow-y:auto;overscroll-behavior:contain;gap:4px;align-content:start;grid-auto-rows:min-content;scrollbar-width:thin;scrollbar-color:#b89b66 transparent}
.dialogue-choice,.game-entry-chat .dialogue-choice{min-height:44px;padding:9px 10px;grid-template-columns:20px minmax(0,1fr) 12px}
.concierge-chat .choice-label{font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.choice-number,.choice-arrow{font-size:14px}
.dialogue-note{font-size:11px;line-height:1.5}
.dialogue-pause,.companion-chat-close{font-size:12px;min-height:32px;letter-spacing:.2px}
.game-entry-kicker{font-size:11px;letter-spacing:1px}
@media(max-height:650px){.concierge-chat{min-height:260px}.private-room .companion-chat{min-height:240px}}
@media(max-height:430px){.concierge-chat{min-height:240px}.private-room .companion-chat{min-height:210px}.entry-dialogue{max-height:calc(100cqh - 70px)}}

/* A floating glass projection on a walnut plinth, beside the VIP collection. */
.promotion-display{position:absolute;z-index:2;left:21%;top:50.5%;width:24%;aspect-ratio:.98;pointer-events:auto;container-type:inline-size}
.promotion-glass{position:absolute;z-index:2;left:0;bottom:calc(1% + 27cqw);width:100%;height:62%;display:flex;flex-direction:column;gap:4%;padding:5%;border:1px solid #dcfff0a6;border-radius:5%;background:linear-gradient(130deg,#d8fff326,#b5eaff09 48%,#e4fff21c);box-shadow:inset 1px 1px 1px #efffffa6,inset -1px -1px 2px #b4fff64a,0 0 10px #a9e8d92b,2px 4px 5px #001b1a66;transform:perspective(500px) rotateY(-7deg) rotateX(2deg);cursor:zoom-in;color:#e5fff4;overflow:hidden;backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px)}
.promotion-glass:after{content:"";position:absolute;inset:0;background:linear-gradient(118deg,#fff0 16%,#fff2 17%,#fff0 40%,#fff0 72%,#fff1 73%,#fff0 90%);pointer-events:none}
.promotion-glass-label{position:absolute;left:5%;right:5%;top:5%;display:flex;justify-content:space-between;align-items:center;font:600 5.5cqw/1.1 Georgia,serif;letter-spacing:.14em;text-shadow:0 0 5px #d7ffed}
.promotion-glass-label i{font:8cqw/1 Georgia,serif}
.promotion-glass img{position:absolute;left:5%;top:19%;display:block;width:90%;height:75%;object-fit:contain;opacity:.9;filter:drop-shadow(0 0 3px #c39aff77);border-radius:2%}
.promotion-glass img[hidden]{display:none}
.promotion-beam{position:absolute;left:10%;bottom:calc(1% + 24cqw);width:80%;height:8cqw;background:linear-gradient(0deg,#b5f6e84a,#c6fff51a 40%,transparent);clip-path:polygon(0 0,100% 0,70% 100%,30% 100%);pointer-events:none}
.promotion-plinth{position:absolute;left:0;bottom:1%;width:100%;height:24cqw;transform-style:preserve-3d;transform:perspective(500px) rotateY(-7deg) rotateX(-25deg);pointer-events:none}
.promotion-plinth:before{content:"";position:absolute;left:-8%;top:60%;width:122%;height:100%;border-radius:50%;background:#0008;filter:blur(4px);transform:translateZ(-14cqw) rotateX(60deg)}
.promotion-plinth-front,.promotion-plinth-top,.promotion-plinth-side{position:absolute;display:block;border:1px solid #9b713a;backface-visibility:hidden}
.promotion-plinth-front{inset:0;display:flex;flex-direction:column;justify-content:center;padding:1% 4%;border-radius:2px;transform:translateZ(12cqw);background:repeating-linear-gradient(2deg,#d5954822 0 1px,transparent 2px 4px,#170b0522 5px 6px),linear-gradient(90deg,#3b1b0c,#754524 32%,#4d2914 80%,#30170b);box-shadow:inset 0 2px 0 #d5ad65,inset 0 -2px 0 #160b04,inset 0 0 0 3px #b28b4933;text-align:center;pointer-events:auto}
.promotion-plinth-top{left:0;top:-12cqw;width:100%;height:24cqw;transform:rotateX(90deg);background:radial-gradient(ellipse at 50% 55%,#c4ffeb55,transparent 60%),repeating-linear-gradient(8deg,#a37b4822 0 1px,#3a1b0f33 2px 3px,transparent 4px 6px),linear-gradient(100deg,#6f4728,#b48951 38%,#6d4425);box-shadow:inset 0 0 0 2px #d5b57666,inset 0 0 0 4px #3c251955}
.promotion-plinth-side{right:-12cqw;top:0;width:24cqw;height:100%;transform:rotateY(90deg);background:repeating-linear-gradient(2deg,#5e3a1d88 0 1px,transparent 2px 4px),linear-gradient(90deg,#472711,#241006);box-shadow:inset 0 -2px 0 #120904,inset 0 2px 0 #b38b4f}
.promotion-title{display:block;font:600 10cqw/1.4 Georgia,"Times New Roman",serif;letter-spacing:.02em;color:#f5dca0;text-shadow:0 1px 0 #120700,0 -1px 0 #ffeec655;white-space:nowrap}
.promotion-display button:focus-visible{outline:2px solid #f2d496;outline-offset:2px}
.promotion-image-error{display:none;color:#e4d1a5;font:9px/1.4 Georgia,serif;margin:auto}
.banner-unavailable .promotion-image-error{display:block}
.promotion-viewer{position:absolute;z-index:15;inset:0;display:grid;place-items:center;padding:16px;background:#030c08b3;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);pointer-events:auto}
.promotion-viewer[hidden]{display:none}
.promotion-viewer-card{width:100%;max-width:440px;max-height:100%;overflow:auto;padding:14px;border:1px solid #cab48688;border-radius:12px;background:linear-gradient(140deg,#294238f5,#0a1913f5);box-shadow:0 15px 50px #000a;color:#f7e0ad}
.promotion-viewer header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font:10px Georgia,serif;letter-spacing:3px}
.promotion-viewer button{min-height:36px;padding:6px 12px;border:1px solid #bda47770;border-radius:5px;background:#06171066;color:#f7e0ad;cursor:pointer}
.promotion-viewer .promotion-close{width:36px;padding:0;font:24px Georgia,serif}
.promotion-viewer-image{border:1px solid #ccfff755;border-radius:6px;background:#d1fff00b;overflow:hidden}
.promotion-viewer img{display:block;width:100%;height:auto}
.promotion-viewer img[hidden]{display:none}
.promotion-viewer h3{margin:14px 0;font:400 19px/1.35 Georgia,serif}
.promotion-viewer nav{display:flex;align-items:center;justify-content:space-between;gap:8px;font:12px Georgia,serif}
.promotion-viewer button:focus-visible{outline:2px solid #ffe0a3;outline-offset:2px}
.private-room.screen-expanded .promotion-display,.private-room.screen-expanded .promotion-viewer{display:none}

.promotion-viewer .promotion-play{display:block;margin:12px auto 0;font:12px Georgia,serif}

/* The glass is seated in the plinth rather than projected above it. */
.promotion-beam{display:none}
.promotion-glass{box-shadow:inset 1px 1px 1px #efffffa6,inset -1px -1px 2px #b4fff64a,0 2px 2px #001b1a88}

/* Wrapped gifts live on the felt; the ribbon and lid have their own faces. */
.table-gifts{position:absolute;left:40%;top:69%;width:34%;z-index:4;pointer-events:none;container-type:inline-size;text-align:center}
.table-gifts[hidden]{display:none}
.table-gift-boxes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:2px}
.table-gift{position:relative;width:100%;min-width:0;aspect-ratio:1/.95;padding:0;border:0;background:none;pointer-events:auto;cursor:pointer;touch-action:manipulation;filter:drop-shadow(1px 4px 2px #0007)}
.table-gift:focus-visible{outline:2px solid #f8d991;outline-offset:4px;border-radius:6px}
.gift-box{position:relative;display:block;width:100%;height:100%;--wrap:#ab1835;--wrap-light:#e23a54;--wrap-dark:#550c22;--ribbon:#f8dc86}
[data-kind=welcome] .gift-box{--wrap:#145446;--wrap-light:#2e8c6d;--wrap-dark:#082e29;--ribbon:#ffe6a0}
.gift-box-face{position:absolute;left:8%;top:36%;width:73%;height:61%;background:linear-gradient(90deg,transparent 39%,#ac752d 40%,var(--ribbon) 43%,#fff3b9 50%,var(--ribbon) 57%,#a76e21 61%,transparent 62%),radial-gradient(circle at 25% 30%,#ffe8a333 0 1px,transparent 2px),linear-gradient(115deg,var(--wrap-light),var(--wrap) 40%,var(--wrap-dark));background-size:auto,9px 9px,auto;transform:skewY(4deg);box-shadow:inset 0 1px 1px #fff6,inset 1px 0 1px #fff3,inset 0 -2px 2px #0004;border-radius:1px}
.gift-box-side{position:absolute;left:81%;top:31%;width:13%;height:64%;background:linear-gradient(100deg,var(--wrap),var(--wrap-dark));transform:skewY(-22deg);border-bottom:1px solid #0007}
.gift-box-lid{position:absolute;left:5%;top:23%;width:92%;height:23%;background:linear-gradient(90deg,transparent 37%,#c6953b 38%,var(--ribbon) 43%,#fff6c9 50%,var(--ribbon) 55%,#bd8730 61%,transparent 62%),linear-gradient(150deg,var(--wrap-light),var(--wrap));clip-path:polygon(15% 0,100% 20%,83% 100%,0 78%);filter:drop-shadow(0 2px 1px #0008)}
.gift-bow{position:absolute;top:8%;width:32%;height:23%;border:4px solid var(--ribbon);border-radius:65% 65% 25% 70%;box-shadow:inset 1px 1px 1px #795126,0 1px 1px #0007}
.gift-bow-left{left:21%;transform:rotate(20deg)}
.gift-bow-right{left:48%;transform:scaleX(-1) rotate(20deg)}
.gift-knot{position:absolute;left:44%;top:23%;width:15%;height:14%;border-radius:4px;background:linear-gradient(100deg,#bd852e,var(--ribbon),#fff3b9,#cb9233);transform:rotate(4deg);box-shadow:0 1px 2px #0007}
.gift-viewer{position:absolute;z-index:20;inset:0;display:grid;place-items:center;padding:16px;background:#030b08bd;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);pointer-events:auto}
.gift-viewer[hidden]{display:none}
.gift-card{width:100%;max-width:340px;max-height:100%;overflow:auto;padding:18px;border:1px solid #d1af6f99;border-radius:14px;background:radial-gradient(ellipse at 50% 25%,#395a40,#11271d 60%,#081810);box-shadow:0 18px 50px #000a;text-align:center;color:#f8dfac}
.gift-card header{display:flex;justify-content:flex-end;align-items:center;font:10px Georgia,serif;letter-spacing:2px}
.gift-close{width:36px;height:36px;padding:0;border:1px solid #bda47770;border-radius:50%;background:#06171066;color:#f7e0ad;font:24px Georgia,serif}
.gift-preview{width:100px;height:95px;margin:10px auto 18px;filter:drop-shadow(0 8px 9px #0007)}
.gift-card h3{margin:8px 0;font:400 23px/1.25 Georgia,serif}
.gift-amount{display:block;margin:12px 0;font:400 34px/1.1 Georgia,serif;color:#ffe7a2}
.gift-explanation{font:12px/1.5 Georgia,serif;color:#d2c9ab;margin:12px auto 20px;max-width:240px}
.gift-collect,.gift-later{display:block;width:100%;min-height:42px;padding:10px;border:1px solid #d6b46f80;border-radius:6px;font:14px Georgia,serif}
.gift-collect{background:linear-gradient(120deg,#e7ce8e,#b58a3d);color:#221607}
.gift-later{margin-top:8px;color:#e5d2a7;background:transparent}
.gift-card button:focus-visible{outline:2px solid #ffe2a3;outline-offset:3px}
.gift-flight{position:absolute;z-index:24;pointer-events:none;filter:drop-shadow(0 0 10px #ffe9b088)}
.gift-collecting .gift-card{opacity:0;pointer-events:none}
.gift-collecting .private-toolbar{z-index:22;pointer-events:none}
.gift-announcement{position:absolute;left:0;top:0;width:1px;height:1px;margin:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.private-wallet{position:relative}
.gift-received{animation:gift-wallet-glow .7s ease-out}
@keyframes gift-wallet-glow{0%,100%{filter:none}35%{filter:drop-shadow(0 0 10px #ffe392);transform:scale(1.12)}}
.private-room.screen-expanded .table-gifts{display:none}
@media(prefers-reduced-motion:reduce){.gift-received{animation:none}}
@media(max-height:430px){.gift-card{padding:12px}.gift-preview{width:60px;height:57px;margin:4px auto 8px}.gift-card h3{font-size:18px}.gift-amount{font-size:26px;margin:8px 0}.gift-explanation{margin:8px auto 12px}.gift-collect,.gift-later{min-height:36px;padding:7px}}

/* Dialogue actions sit at the lower left, within the panel. */
.concierge-chat .dialogue-nameplate{max-width:calc(100% - 28px)}
.companion-chat .dialogue-note{min-height:44px;padding:13px 0 0 56px;text-align:left}
.companion-chat .companion-chat-close,.catalog-footer .catalog-close,.recommendation-close,.cash-panel-close{position:relative;display:grid;place-items:center;flex:none;width:44px;height:44px;min-height:44px;padding:0;border:1px solid #d8ba79;border-radius:50%;background:radial-gradient(ellipse at 32% 12%,#6b7050 0,#294535 28%,#10291e 58%,#06150f 100%);box-shadow:inset 0 0 0 2px #10271c,inset 0 0 0 3px #bea16c66,inset 0 5px 6px #fff0c916,inset 0 -4px 5px #0007,0 3px 7px #0006,0 1px 0 #f4dba755;color:#ead4a7;font-size:0;letter-spacing:0;touch-action:manipulation;transition:box-shadow .18s,border-color .18s,transform .18s}
.companion-chat .companion-chat-close{position:absolute;left:5px;right:auto;top:auto;bottom:0}
.catalog-footer{justify-content:flex-start;gap:10px}
.catalog-header h2{padding-right:0}
.game-recommendations{position:absolute;z-index:18;inset:0;display:grid;place-items:center;padding:18px;background:#031009aa;backdrop-filter:blur(5px)}
.game-recommendations[hidden]{display:none}
.recommendation-card{display:flex;flex-direction:column;width:100%;max-width:460px;max-height:100%;min-height:0;padding:16px;border:1px solid #c9ae75;border-radius:14px;background:linear-gradient(140deg,#214431,#091c14);color:#f6dfab;box-shadow:0 12px 30px #0008}
.recommendation-card h3{margin:0 0 8px;font:22px/1.2 Georgia,serif}
.recommendation-status{margin:0 0 12px;font:12px/1.4 Georgia,serif}
.recommendation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.recommendation-game{display:flex;flex-direction:column;gap:4px;min-width:0;padding:8px;border:1px solid #b79c6655;border-radius:8px;background:#06180e99;text-align:left;color:#f5dfb1}
.recommendation-game small{font:10px Georgia,serif;letter-spacing:.08em;color:#c9b17c}
.recommendation-game strong{font:14px/1.25 Georgia,serif;overflow-wrap:anywhere}
.recommendation-game img{display:block;width:100%;aspect-ratio:1.5;object-fit:contain;border-radius:4px;background:#07100b;margin-top:auto}
.recommendation-game:hover{background:#38543a}
.recommendation-card footer{display:flex;align-items:center;gap:10px;margin-top:12px;flex:none}
.recommendation-retry,.recommendation-free{padding:8px;border:1px solid #c2a56e;border-radius:4px;background:#092519;color:#f5dfb1;font:12px Georgia,serif}
.recommendation-card button:focus-visible{outline:2px solid #f7d990;outline-offset:-2px}
@media(max-height:430px){.recommendation-card{padding:12px}.recommendation-card h3{font-size:18px}.recommendation-game img{aspect-ratio:2}.recommendation-status{margin-bottom:8px}}
.private-room .companion-chat{height:48%;min-height:310px;max-height:calc(100% - 140px);bottom:110px}
.companion-chat .dialogue-question{font-size:12px;line-height:1.3;max-height:2.6em;overflow-y:auto}
@media(max-height:650px){.companion-chat .dialogue-bubble{padding:18px 12px 8px}.companion-chat .dialogue-copy{font-size:18px;line-height:1.5}}
@media(max-height:430px){.private-room .companion-chat{height:calc(100% - 130px);min-height:0;max-height:calc(100% - 130px);bottom:90px}.companion-chat .dialogue-question{display:none}.companion-chat .dialogue-choices{max-height:90px}}

/* Beveled brass rim and a fine engraved cross for lower-left dialogue dismissals. */
:is(.companion-chat-close,.catalog-footer .catalog-close,.recommendation-close,.cash-panel-close)::before,:is(.companion-chat-close,.catalog-footer .catalog-close,.recommendation-close,.cash-panel-close)::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:1.5px;border-radius:2px;background:linear-gradient(90deg,#c9a264,#fff0c6,#d9b77b);box-shadow:0 1px 1px #0008;pointer-events:none;transform:translate(-50%,-50%) rotate(45deg)}
:is(.companion-chat-close,.catalog-footer .catalog-close,.recommendation-close,.cash-panel-close)::after{transform:translate(-50%,-50%) rotate(-45deg)}
@media(hover:hover){:is(.companion-chat-close,.catalog-footer .catalog-close,.recommendation-close,.cash-panel-close):hover{border-color:#ffe3a7;box-shadow:inset 0 0 0 2px #10271c,inset 0 0 0 3px #e5c38899,inset 0 4px 8px #fff0c922,0 4px 12px #0008,0 0 9px #d6b36a33;transform:translateY(-1px)}}
:is(.companion-chat-close,.catalog-footer .catalog-close,.recommendation-close,.cash-panel-close):focus-visible{outline:2px solid #ffe4a5;outline-offset:3px}
:is(.companion-chat-close,.catalog-footer .catalog-close,.recommendation-close,.cash-panel-close):active{transform:translateY(1px) scale(.96);box-shadow:inset 0 0 0 2px #10271c,inset 0 0 0 3px #bea16c66,inset 0 3px 8px #0009,0 1px 3px #0007}

/* A double chevron appears only while more dialogue or menu content is below. */
.scroll-cue-wrap{position:relative;display:grid;grid-template-rows:minmax(0,1fr);min-width:0;min-height:0;padding-bottom:26px}
.speech-scroll-wrap{flex:1;height:0}
.speech-scroll-wrap>.dialogue-speech{height:100%;padding-bottom:0}
.scroll-cue-wrap:has(>.dialogue-choices){max-height:24cqh}
.scroll-cue-wrap>.dialogue-choices{max-height:100%;padding-bottom:0}
.recommendation-card>.scroll-cue-wrap{flex:0 1 auto;min-height:0;overflow:hidden}
.scroll-cue{position:absolute;z-index:3;left:50%;bottom:0;display:grid;place-items:center;width:76px;height:28px;transform:translateX(-50%);pointer-events:none;background:radial-gradient(ellipse at 50% 100%,#06190ef2,#071c11b3 48%,transparent 73%)}
.scroll-cue[hidden]{display:none}
.scroll-cue svg{width:44px;height:26px;overflow:visible;filter:drop-shadow(0 1px 2px #000);animation:scroll-cue-pulse 1.5s ease-in-out infinite}
.scroll-cue path{fill:none;stroke:#f2d492;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
@keyframes scroll-cue-pulse{0%,100%{opacity:.4;transform:translateY(-2px)}50%{opacity:1;transform:translateY(2px)}}
@media(prefers-reduced-motion:reduce){.scroll-cue svg{animation:none;opacity:1}}

/* Tablet taps spend local demo chips; expansion remains a separate control. */
.private-tablet-expand{position:absolute;z-index:4;right:4px;top:4px;display:grid;place-items:center;width:30px;height:30px;border:1px solid #cba96577;border-radius:6px;background:#071c17e8;color:#f4dba3;font:22px/1 Georgia,serif;cursor:pointer}
.private-tablet-expand[hidden],.private-bet-feedback[hidden]{display:none}
.private-tablet-expand:focus-visible{outline:2px solid #f2d59a;outline-offset:2px}
.private-bet-feedback{position:absolute;z-index:4;left:4%;right:4%;bottom:14%;margin:0;padding:8px 6px;border:1px solid #cba96588;border-radius:6px;background:#061b16f2;color:#f5dfae;text-align:center;font:clamp(9px,2.5cqw,13px)/1.5 Arial,sans-serif;pointer-events:none}
.private-bet-feedback.is-error{border-color:#e5aa81;color:#ffe0c7}
[data-kind=rebate] .gift-box{--wrap:#263f86;--wrap-light:#567bc7;--wrap-dark:#132047;--ribbon:#f8dc86}
.bet-spent{animation:bet-wallet-debit .45s ease-out}
@keyframes bet-wallet-debit{35%{filter:drop-shadow(0 0 7px #e8ac65);transform:scale(.96)}}
@media(prefers-reduced-motion:reduce){.bet-spent{animation:none}}

@media(max-height:430px){.table-gifts{top:66.5%}}

/* Taka wallet summary and shared native wallet dialog. */
.chip-balance .taka-icon{display:block;flex:none;width:auto;height:auto;font:400 24px/1 Arial,sans-serif;color:#eacb86}
button.chip-balance{cursor:pointer}
button.chip-balance:focus-visible{outline:2px solid #f2d59a;outline-offset:3px}
.chip-balance .chip-balance-value{font-size:15px}
.private-title{min-width:0;overflow:hidden}.private-title h2,.private-title>span{display:block;overflow:hidden;text-overflow:ellipsis}
.wallet-menu{max-width:calc(100vw - 24px);max-height:calc(100svh - 100px);margin:70px auto 0;padding:20px;border:1px solid #b9985f;border-radius:12px;background:linear-gradient(135deg,#20382d,#081c14 75%);color:#f2ddae;box-shadow:0 18px 60px #000b,inset 0 0 0 3px #d6b87312;font:14px/1.5 Arial,sans-serif;overflow:auto}
.wallet-menu::backdrop{background:#020c0999;backdrop-filter:blur(3px)}
.wallet-menu header{display:flex;align-items:center;justify-content:space-between;gap:10px}
.wallet-menu h2{margin:0;font:400 22px Georgia,serif}
.wallet-menu-close{width:36px;height:36px;flex:none;padding:0;border:1px solid #c4a66a66;border-radius:50%;background:#07160d;color:#f0d6a3;font:24px/1 Georgia,serif;cursor:pointer}
.wallet-menu dl{display:grid;gap:12px;margin:22px 0}
.wallet-menu dl>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid #c4a66a33}
.wallet-menu dt{font-size:13px;color:#cdbb98}.wallet-menu dd{margin:0;font:19px Georgia,serif;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;text-align:right}
.wallet-pending{font-size:12px;color:#dbc38d;margin:0 0 16px}
.wallet-cashier{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:44px;padding:12px 15px;border:1px solid #c7a368;border-radius:6px;background:linear-gradient(#d8bb7c,#af8b4c);color:#14271c;font:600 14px Arial,sans-serif;cursor:pointer}
.wallet-menu button:focus-visible{outline:2px solid #ffe5a5;outline-offset:3px}
.vip-points{display:flex;align-items:baseline;gap:10px;margin:4px 0 20px;padding:14px;border:1px solid #cba96b55;border-radius:6px;background:#071b14a8}
.vip-points-value{font:32px/1.1 Georgia,serif;color:#f5dca0}.vip-points>span{font:11px Arial,sans-serif;color:#c2b28f}
.vip-demo-heading{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;padding-top:14px;border-top:1px solid #cba96b44}
.vip-demo-heading h4{margin:0;font:400 15px Georgia,serif}.vip-demo-heading>span{font:11px Arial,sans-serif;letter-spacing:1px;color:#bca77e}
@media(max-width:360px),(max-height:430px){.chip-balance .chip-balance-value{font-size:12px}.chip-balance .taka-icon{font-size:21px}.wallet-menu{padding:16px;margin-top:58px}.wallet-menu h2{font-size:19px}.wallet-menu dd{font-size:17px}}
@media(max-height:430px){.vip-picker{padding:10px}.vip-picker header{margin-bottom:7px}.vip-points{padding:8px;margin:0 0 8px}.vip-points-value{font-size:24px}.vip-demo-heading{padding-top:8px;margin-bottom:8px;gap:4px}.vip-tier-option{min-height:60px}}

/* Keep Cashier dismissal available while its forms scroll. */
.cash-panel{overflow:hidden}
.cash-panel-content{display:flex;flex-direction:column;gap:10px;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#bba16f66 transparent;padding:0 2px 3px}
.cash-panel-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;padding-top:8px;border-top:1px solid #c4a66a33}
.wallet-pending{padding:12px;border:1px solid #c4a66a44;border-radius:6px;background:#06170f66}
.wallet-pending>div{display:flex;align-items:center;justify-content:space-between;gap:12px}
.wallet-pending>div+div{margin-top:6px}.wallet-pending-amount{font:18px Georgia,serif;color:#f4ddaa}
.wallet-pending-status{color:#f1d38e}.wallet-pending-time{margin:8px 0 0;font-variant-numeric:tabular-nums;color:#b9ac8f}
@media(max-height:650px){.cash-panel-content{gap:8px}}
@media(max-height:430px){.wallet-menu dl{gap:8px;margin:12px 0}.wallet-menu dl>div{padding-bottom:8px}.wallet-pending{padding:8px;margin-bottom:12px}.wallet-pending-time{margin-top:4px}}

.private-back[hidden],.private-companion[hidden],.private-table-return[hidden]{display:none}

/* A slow glow follows the engraved floor lettering. */
.hall-floor-lettering{animation:floor-gold-glow 4.8s ease-in-out infinite}
@keyframes floor-gold-glow{0%,100%{filter:brightness(.94) drop-shadow(0 1px 0 #211809) drop-shadow(0 0 2px #e5c78422)}50%{filter:brightness(1.35) drop-shadow(0 0 5px #e5c78499) drop-shadow(0 0 12px #d6a95366)}}
.hall-welcome{position:absolute;z-index:5;transform:translate(-50%,-100%);pointer-events:none;transition:opacity .55s;filter:drop-shadow(0 3px 3px #0005)}
.hall-welcome img{width:100%;height:100%;object-fit:contain;pointer-events:none}
.hall-welcome:after{content:"";position:absolute;z-index:-1;left:27%;right:27%;bottom:1%;height:2%;background:#031009aa;border-radius:50%;filter:blur(2px)}
.hall-welcome-button{position:absolute;left:20%;top:5%;width:60%;height:89%;border:0;padding:0;background:none;pointer-events:auto;cursor:pointer;border-radius:35% 35% 8% 8%}
.hall-welcome-button:focus-visible{outline:1px solid #f5d491;outline-offset:3px}.hall-welcome.is-passed{opacity:0;pointer-events:none}
.private-tablet-open.is-game-zoom{cursor:zoom-in;align-items:center}
.private-tablet-open.is-game-zoom span{position:relative;width:48px;height:48px;min-width:0;padding:0;border:1px solid #ead19a99;border-radius:50%;background:#092018c9;box-shadow:0 3px 15px #0008;opacity:0;transform:scale(.85);transition:opacity .22s,transform .22s}
.private-tablet-open.is-game-zoom span:before{content:"";position:absolute;left:13px;top:11px;width:15px;height:15px;border:2px solid #ffe1a3;border-radius:50%}
.private-tablet-open.is-game-zoom span:after{content:"";position:absolute;left:28px;top:27px;width:10px;height:2px;border-radius:2px;background:#ffe1a3;transform:rotate(45deg);transform-origin:left center}
.private-tablet-open.is-game-zoom:hover span,.private-tablet-open.is-game-zoom:focus-visible span{opacity:1;transform:scale(1)}
@media(hover:none){.private-tablet-open.is-game-zoom span{opacity:.85;transform:scale(1);width:42px;height:42px}}
.lobby-discovery{container:casino-menu / inline-size;max-width:calc(100vw - 24px);max-height:calc(100svh - 40px);padding:0;border:1px solid #c2a36c;border-radius:16px;background:#10281c;color:#f4dfb4;overflow:hidden;box-shadow:0 18px 70px #000c}
.lobby-discovery::backdrop{background:#03100caa;backdrop-filter:blur(5px)}
.discovery-card{display:flex;flex-direction:column;max-height:calc(100svh - 42px);padding:20px 18px 12px;background:linear-gradient(145deg,#234231,#081b13)}
.discovery-card header{text-align:center;flex:none}.discovery-card header>span{font-size:20px;letter-spacing:7px;color:#e65564;text-shadow:0 0 12px #dd485a33}.discovery-card h2{font:26px Georgia,serif;margin:7px 0}.discovery-card header p{font:12px/1.5 Georgia,serif;margin:0;color:#bfae8b}
.discovery-status{font:11px/1.5 Arial,sans-serif;color:#baa987;margin:12px 0;flex:none}
.discovery-card>.scroll-cue-wrap{min-height:0;flex:0 1 auto}.discovery-scroll{overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;min-height:0;padding:0 3px 2px}
.discovery-scroll section+section{margin-top:24px}.discovery-scroll h3{display:flex;align-items:center;gap:12px;margin:0 0 12px;font:18px Georgia,serif;white-space:nowrap}.discovery-scroll h3:before,.discovery-scroll h3:after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,#c1a36d88)}.discovery-scroll h3:after{transform:rotate(180deg)}
.discovery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
@container casino-menu (max-width:310px){.discovery-grid{gap:5px}}
.discovery-card footer{flex:none;display:flex;align-items:center;gap:12px;border-top:1px solid #c1a36d33;padding-top:10px}.discovery-card footer>span{font:10px Georgia,serif;color:#bda781}
@media(max-height:430px){.discovery-card{padding:10px 12px 8px}.discovery-card header>span{font-size:14px}.discovery-card h2{font-size:20px;margin:3px 0}.discovery-card header p{display:none}.discovery-status{margin:6px 0}.discovery-scroll h3{font-size:16px}.discovery-card footer{padding-top:5px}}
@media(prefers-reduced-motion:reduce){.hall-floor-lettering{animation:none;filter:brightness(1.12) drop-shadow(0 0 4px #e5c78455)}.hall-welcome,.private-tablet-open.is-game-zoom span{transition:none}}

/* Keep the swipe cue below the handheld signs, along the right edge. */
.hall-gesture-hint{left:auto;right:3%;top:63%;width:42px;transform:none;display:block}
.hall-gesture-motion{width:42px;height:clamp(54px,10cqh,90px);margin:0}
.hall-gesture-trail{left:20px}
.hall-gesture-finger{left:3px;top:calc(50% - 22px);width:34px;height:45px;animation:hall-side-swipe 3.6s ease-in-out infinite}
@keyframes hall-side-swipe{0%,100%{transform:translateY(12px) rotate(6deg);opacity:.35}35%,50%{transform:translateY(-12px) rotate(-5deg);opacity:.7}85%{transform:translateY(12px) rotate(6deg);opacity:.58}}
@media(prefers-reduced-motion:reduce){.hall-gesture-finger{animation:none;opacity:.58}}

/* Opaque jade-white guidance stays legible against stone, gowns and brass. */
.hall-gesture-finger{color:#edfff7;opacity:1;stroke:#123d32;stroke-width:2.2;filter:drop-shadow(0 2px 0 #031711) drop-shadow(0 0 5px #46e2b199)}
.hall-gesture-finger path+path{stroke:#22634f;stroke-width:1.6}
.hall-gesture-trail{border-left:2px dashed #6ff4c7;filter:drop-shadow(0 1px 1px #031711)}
.hall-gesture-trail:before{border-left-color:#9fffe0;border-top-color:#9fffe0}.hall-gesture-trail:after{border-right-color:#9fffe0;border-bottom-color:#9fffe0}
@keyframes hall-side-swipe{0%,100%{transform:translateY(12px) rotate(6deg)}35%,50%{transform:translateY(-12px) rotate(-5deg)}85%{transform:translateY(12px) rotate(6deg)}}
.hall-welcome .hall-welcome-motion{position:absolute;left:0;top:0;width:100%;height:17.1875%;pointer-events:none}
@media(prefers-reduced-motion:reduce){.hall-gesture-finger{opacity:1;animation:none}}

/* Sign menus share a close portrait and a lower three-quarter sheet. */
.has-portrait .hall-figure:not(.is-portrait),.has-portrait .hall-welcome:not(.is-portrait){opacity:0;pointer-events:none}
.hostess-menu-open .lobby-header,.hostess-menu-open .lobby-cash-desk,.hostess-menu-open .lobby-footer,.has-portrait .hall-row-controls,.has-portrait .hall-private-table,.has-portrait .hall-free-game{visibility:hidden;pointer-events:none}
.hostess-menu-open .live-catalog{top:25%;bottom:0;border-radius:20px 20px 0 0;padding-bottom:env(safe-area-inset-bottom)}
.hostess-menu-open .live-catalog:before{left:calc(50% - 9px)}
.lobby-discovery{position:fixed;inset:auto;margin:0;max-width:none;max-height:none;border:3px double #d2b578b3;border-radius:20px 20px 0 0;padding-bottom:env(safe-area-inset-bottom)}
.lobby-discovery::backdrop{background:transparent;backdrop-filter:none}
.discovery-card{height:100%;max-height:none;min-height:0}
.discovery-card>.scroll-cue-wrap{flex:1 1 0}
@media(max-height:430px){.hostess-menu-open .catalog-header{padding-top:22px}}

/* Two front concierges, a separate rear Cashier, and a level dimensional kiosk. */
.single-lobby-arrival{opacity:1;transition:none}
.lobby-welcome{position:absolute;inset:0;container-type:size;overflow:hidden}
.single-hall-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.76)}
.single-hall-shade{position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,#02110a55,transparent 25%,transparent 70%,#06110ad9);pointer-events:none}
.single-hostess{position:absolute;z-index:3;height:var(--host-height,58%);width:auto;aspect-ratio:var(--host-aspect,.666);top:0;left:0;transform-origin:0 0;transform:translate3d(var(--host-x,-2cqw),var(--host-y,31cqh),0) scale(1);pointer-events:none;filter:drop-shadow(0 8px 8px #0005);transition:transform .8s var(--ease)}
.single-hostess-art{position:absolute;inset:0;transform-origin:40% 95%}
.single-hostess-image,.single-hostess-motion{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none}
.single-hostess-motion{object-fit:fill}
.single-hostess.is-breathing .single-hostess-art{animation:single-host-breathe 5.5s ease-in-out infinite}
@keyframes single-host-breathe{0%,100%{transform:scale(1)}50%{transform:translateY(-.12%)}}
.hall-hostess-label{position:absolute;z-index:4;left:5%;top:27%;margin:0;display:flex;flex-direction:column;gap:4px;color:#f1d9a7;text-shadow:0 2px 4px #000;pointer-events:none}
.lobby-welcome[data-host="isla"] .hall-hostess-label{top:auto;bottom:calc(73% + 8px)}
.hall-hostess-label strong{font:italic clamp(20px,4cqh,26px) Georgia,serif}.hall-hostess-label span{font:10px Georgia,serif;color:#d0bd98;letter-spacing:.2px}
.hall-cashier-rear{position:absolute;z-index:2;inset:0;pointer-events:none}
.hall-cashier-portrait{position:absolute;left:var(--cashier-left);top:calc(var(--cashier-ground) - var(--cashier-height));height:var(--cashier-height);width:var(--cashier-width);pointer-events:none}
.hall-cashier-portrait img{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(1px 2px 2px #0004)}
.hall-cashier-person,.hall-cashier-sign{position:absolute;z-index:2;inset:0;min-height:0;width:100%;height:100%;padding:0;border:0;background:transparent;box-shadow:none;pointer-events:auto;cursor:pointer}
.hall-cashier-person{left:50%;width:max(100%,44px);transform:translateX(-50%)}
.hall-cashier-sign{z-index:3;inset:26.4% auto auto 4.6%;width:91.2%;height:9.1%;border-radius:2px}
.hall-cashier-portrait:has(button:hover) img{filter:brightness(1.08) drop-shadow(1px 2px 2px #0004)}
.hall-cashier-person:focus-visible,.hall-cashier-sign:focus-visible{outline:2px solid #ffe3a3;outline-offset:3px}
.hall-cashier-floor{position:absolute;left:33%;top:99.4%;width:33%;height:1.4%;border-radius:50%;background:radial-gradient(ellipse,#000a,#0004 50%,transparent 75%);filter:blur(1px)}
.hall-kiosk{position:absolute;z-index:4;left:52%;top:max(48%,var(--cashier-sign-bottom));width:44%;height:calc(87% - max(48%,var(--cashier-sign-bottom)));pointer-events:auto;cursor:zoom-in;filter:drop-shadow(5px 10px 7px #0009)}
.hall-kiosk-cabinet{position:absolute;inset:0 0 14%;border-radius:12px;perspective:800px;perspective-origin:95% 0%;transform-style:preserve-3d}
.hall-kiosk-back{position:absolute;inset:0;border:1px solid #8e7345;border-radius:inherit;background:linear-gradient(125deg,#b99c61,#3b3427 20%,#121915 65%,#77623c);transform:translateZ(-6px)}
.hall-kiosk-edge{position:absolute;right:-6px;top:0;width:12px;height:100%;border:1px solid #a78b52;background:linear-gradient(90deg,#d9bd80,#665337 25%,#242b21 65%,#8a744b);transform:rotateY(90deg);backface-visibility:hidden}
.hall-kiosk-crown{position:absolute;left:0;top:-6px;width:100%;height:12px;border:1px solid #d8bb7d;background:linear-gradient(#f3dfa5,#988254 48%,#39362a);transform:rotateX(90deg);backface-visibility:hidden}
.hall-kiosk-screen{position:absolute;z-index:2;inset:0;display:flex;flex-direction:column;gap:6px;padding:7% 6% 6%;border:3px solid #b89a5f;border-radius:12px;background:radial-gradient(ellipse at 20% 0,#38584b55,transparent 62%),linear-gradient(145deg,#183b2d,#061810 65%,#0a1e15);box-shadow:inset 0 0 0 1px #f9e9bb99,inset 0 0 0 3px #132017,inset 0 0 14px #020c0888,0 0 0 1px #372b18;transform:translateZ(6px);pointer-events:auto}
.hall-kiosk-screen:before{content:"";position:absolute;z-index:4;inset:3px;border-radius:8px;background:linear-gradient(112deg,transparent 5%,#fff6dc0d 6%,#fff8e819 18%,transparent 38%,transparent 78%,#d9f5e509 79%,transparent 96%);box-shadow:inset 1px 1px 0 #ffffff35,inset -1px -1px 1px #c4e6d825;pointer-events:none}
.hall-kiosk-screen:after{content:"";position:absolute;z-index:5;top:2px;left:12%;width:48%;height:1px;background:linear-gradient(90deg,transparent,#fff2c9bb,transparent);box-shadow:0 0 4px #f6dfa454;pointer-events:none}
.hall-kiosk-screen header{text-align:center;flex:none;color:#e6cb94;line-height:1}.hall-kiosk-screen header>span{font:12px Georgia,serif;letter-spacing:3px}.hall-kiosk-screen h3{margin:4px 0 0;font:10px/1.2 Georgia,serif}
.hall-kiosk-categories{flex:1;min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));gap:5px}
.hall-category{min-width:0;min-height:0;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:4px;padding:3px 2px;border:1px solid #cfb16c55;border-radius:5px;background:linear-gradient(145deg,#718e6d24,#06160e88);box-shadow:inset 0 1px 0 #dcebc010,0 1px 1px #020d0780;color:#f5dfb0;white-space:nowrap;font:clamp(9px,2.5cqw,12px)/1.15 Georgia,serif}
.hall-category i{flex:none;display:grid;place-items:center;width:19px;height:19px;border:1px solid #dfbc7040;border-radius:7px;background:linear-gradient(145deg,#dfbc701c,#dfbc7004);color:#efd08c}.hall-category svg{display:block;width:16px;height:16px;filter:drop-shadow(0 1px 1px #0008)}.hall-category:hover{background:#436348;border-color:#dfc482}
.hall-discovery-button{flex:none;display:flex;flex-direction:column;align-items:center;gap:2px;padding:5px 2px;border:1px solid #ceaf6b99;border-radius:5px;background:linear-gradient(#172b1c,#07180f);box-shadow:inset 0 1px 0 #ddc99422;color:#ead5aa;min-width:0}
.hall-discovery-button>span{color:#f16e7e;font:14px/1 Georgia,serif;letter-spacing:3px}.hall-discovery-button strong{font:clamp(9px,2.7cqw,12px)/1.2 Georgia,serif}.hall-discovery-button small{display:none}
.hall-kiosk-stem{position:absolute;z-index:-1;left:44%;right:44%;top:80%;bottom:4%;border:1px solid #b69964;border-radius:3px;background:linear-gradient(90deg,#29271f,#af955f 25%,#e3c992 40%,#6e5d3e 70%,#303226);box-shadow:inset 1px 0 0 #d4c08a99}
/* Symmetric top and front faces share the column's centerline and floor. */
.hall-kiosk-base{position:absolute;z-index:-2;left:14%;right:14%;bottom:0;height:8%;border:1px solid #8e774e;border-radius:50% / 36%;background:linear-gradient(#b69b65 30%,#66573b 55%,#24291f 90%);box-shadow:0 3px 2px #050c08,0 7px 7px #0008}
.hall-kiosk-base:before{content:"";position:absolute;inset:-1px -1px 27%;border:1px solid #dec68d;border-radius:50%;background:linear-gradient(160deg,#c8af77,#8e7d55 45%,#55543b);box-shadow:inset 0 1px 1px #fff1bf88}
.single-lobby-arrival .lobby-header{top:6%;z-index:5}.single-lobby-arrival .lobby-brand{font-size:clamp(35px,7cqh,65px)}.single-lobby-arrival .lobby-header h2{font-size:clamp(10px,1.7cqh,15px);letter-spacing:1px;margin:5px 0}
.single-lobby-arrival .hall-private-table{top:89%;height:7cqh;min-height:32px;z-index:5}.single-lobby-arrival .hall-floor-lettering{font-size:clamp(15px,4.8cqw,27px)}
.hall-shuffle{position:absolute;z-index:5;left:5%;bottom:12px;border:0;border-bottom:1px solid #d2b87744;padding:5px 0;background:transparent;font:10px/1.4 Georgia,serif;color:#cbb588}.hall-shuffle span{font-size:15px}
.single-lobby #entry-switch{position:absolute;left:auto;right:5%;bottom:12px;z-index:5;width:auto;padding:5px 0;min-height:28px;font:10px Georgia,serif;background:none;border:0;color:#cbb588}
.single-lobby #sound{position:absolute;left:5%;top:20px;z-index:6;width:28px;height:28px;font-size:15px}
.single-lobby-arrival .lobby-cash-desk{z-index:6;top:20px}
.single-lobby .hall-free-game{left:50%;top:84%;bottom:auto;min-height:30px;width:90%;aspect-ratio:auto;padding:6px 8px;font:11px/1.4 Georgia,serif;transform:translateX(-50%);border:1px solid #b4975f;border-radius:6px;background:#0b2319;color:#f0d8a6;box-shadow:none}
.single-lobby.entry-active .hall-hostess-label,.single-lobby.entry-active .hall-shuffle,.single-lobby.entry-active .hall-private-table,.single-lobby.entry-active .lobby-cash-desk,.single-lobby.entry-active #sound{visibility:hidden}
.single-lobby .entry-dialogue{bottom:max(16px,env(safe-area-inset-bottom));max-height:49%;left:5%;right:5%;gap:8px}
.single-lobby .entry-dialogue-heading{font-size:8px}.single-lobby .entry-copy{font-size:14px;line-height:1.6}.single-lobby .entry-guest{font-size:12px}.single-lobby .entry-speech{padding:20px 10px 8px}
.single-lobby .entry-form input,.single-lobby .entry-form select{font-size:16px;min-height:42px}.single-lobby .entry-field-label{font-size:12px}.single-lobby .entry-primary,.single-lobby .entry-choice{min-height:40px;padding:8px 10px;font-size:14px}
.single-lobby .entry-dialogue-footer{font-size:10px}.single-lobby .entry-nameplate span{font-size:10px}
.single-lobby-arrival.hostess-menu-open .single-hostess{transform:translate3d(calc(50cqw - var(--portrait-face-offset)),2cqh,0) scale(var(--portrait-scale))}
.hostess-menu-open .hall-hostess-label,.hostess-menu-open .hall-shuffle,.hostess-menu-open #entry-switch,.hostess-menu-open #sound,.hostess-menu-open .hall-private-table,.hostess-menu-open .hall-free-game{visibility:hidden;pointer-events:none}
.single-lobby.entry-active .hall-kiosk,.hostess-menu-open .hall-kiosk,.hostess-menu-open .hall-cashier-rear{opacity:0;pointer-events:none}
.single-lobby button{touch-action:manipulation}
.single-lobby .catalog-nameplate{max-width:calc(100% - 26px)}.single-lobby .catalog-nameplate strong{white-space:nowrap}
@media(max-height:650px){.hall-kiosk-screen{gap:4px;padding:6% 5%}.hall-kiosk-categories{gap:4px}.hall-kiosk-screen h3{display:none}.hall-discovery-button{flex-direction:row;justify-content:center;gap:3px}.hall-discovery-button>span{font-size:11px;letter-spacing:1px}.hall-discovery-button strong{font-size:8.5px}.hall-category{flex-direction:row;gap:2px;padding:2px 1px;font-size:8.5px}.hall-category i{width:14px;height:14px;border-radius:4px}.hall-category svg{width:12px;height:12px}.hall-hostess-label span{font-size:8px}}
@media(max-height:430px){
  .single-lobby-arrival .lobby-header{top:17px}.single-lobby-arrival .lobby-brand{font-size:28px}.single-lobby-arrival .lobby-header .eyebrow{display:none}.single-lobby-arrival .lobby-header h2{font-size:9px}.single-lobby #sound,.single-lobby-arrival .lobby-cash-desk{top:12px}
  .hall-hostess-label{top:27%}.hall-hostess-label strong{font-size:17px}.hall-hostess-label span{display:none}
  .hall-kiosk{left:43%;width:53%}.hall-kiosk-cabinet,.hall-kiosk-screen{border-radius:8px}.hall-kiosk-screen{padding:4% 4%;gap:3px;border-width:2px}.hall-kiosk-screen header>span{font-size:9px}.hall-kiosk-screen h3{display:none}.hall-kiosk-categories{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,minmax(20px,1fr));gap:3px}.hall-category{flex-direction:column;padding:2px 0;gap:2px;font-size:7.5px}.hall-category i{width:15px;height:15px;border:0;background:none}.hall-category svg{width:15px;height:15px}
  .hall-discovery-button{flex-direction:row;justify-content:center;gap:3px;padding:4px 1px}.hall-discovery-button>span{font-size:9px;letter-spacing:1px}.hall-discovery-button strong{font-size:8px}
  .hall-shuffle,.single-lobby #entry-switch{bottom:5px;font-size:8px}.single-lobby-arrival .hall-private-table{top:87%}
  .single-lobby .entry-dialogue{max-height:50%;bottom:8px;padding:10px;gap:6px}.single-lobby .entry-copy{font-size:13px}.single-lobby .entry-dialogue-heading,.single-lobby .entry-preview{font-size:7px}.single-lobby .entry-nameplate{top:-13px}.single-lobby .entry-primary,.single-lobby .entry-choice{min-height:34px;padding:6px 8px;font-size:14px}.single-lobby .entry-form input,.single-lobby .entry-form select{min-height:36px}.single-lobby .entry-dialogue-footer{font-size:8px}
}
@media(prefers-reduced-motion:reduce){.single-hostess{transition:none}.single-hostess.is-breathing .single-hostess-art{animation:none}}

/* The entire stand opens a larger, keyboard-accessible category chooser. */
.hall-kiosk-expand{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in}
.hall-kiosk-expand:focus-visible{outline:2px solid #ffe3a3;outline-offset:5px;border-radius:12px}
.hall-kiosk-dialog{position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);margin:0;width:min(92vw,460px);max-width:none;max-height:92dvh;overflow:auto;padding:22px;border:3px double #d2b578;border-radius:18px;color:#f5dfb0;background:radial-gradient(ellipse at 20% 0,#38584b88,transparent 65%),#081e15;box-shadow:0 18px 70px #000b}
.hall-kiosk-dialog::backdrop{background:#020b08b8;backdrop-filter:blur(4px)}
.hall-kiosk-dialog>header{text-align:center;margin-bottom:18px}.hall-kiosk-dialog>header>span{font:18px Georgia,serif;letter-spacing:6px}.hall-kiosk-dialog h2{font:24px Georgia,serif;margin:10px 0}.hall-kiosk-dialog p{font:13px/1.5 Georgia,serif;color:#c9b891;margin:0}
.hall-kiosk-menu{display:flex;flex-direction:column;gap:16px}.hall-kiosk-dialog .hall-discovery-button{padding:14px;gap:6px;min-height:68px;flex-direction:column}.hall-kiosk-dialog .hall-discovery-button>span{font-size:19px;letter-spacing:5px}.hall-kiosk-dialog .hall-discovery-button strong{font-size:18px}.hall-kiosk-dialog .hall-discovery-button small{display:block;font:11px/1.4 Georgia,serif;color:#c9b891}
.hall-kiosk-dialog .hall-kiosk-categories{flex:none;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,minmax(62px,1fr));gap:10px}.hall-kiosk-dialog .hall-category{font-size:16px;padding:10px;gap:9px;flex-direction:row}.hall-kiosk-dialog .hall-category i{width:30px;height:30px;border:1px solid #dfbc7040;border-radius:8px;background:#dfbc7014}.hall-kiosk-dialog .hall-category svg{width:24px;height:24px}
.hall-kiosk-dialog>footer{display:flex;align-items:center;gap:12px;margin-top:18px;font:12px Georgia,serif;color:#c9b891}.hall-kiosk-close{width:44px;height:44px;flex:none;border:1px solid #d2b578;border-radius:50%;background:#15392a;color:#f5dfb0;font:28px Georgia,serif}
@media(max-width:360px){.hall-kiosk-dialog{padding:14px}.hall-kiosk-dialog .hall-category{font-size:14px;gap:6px;padding:8px}.hall-kiosk-dialog .hall-kiosk-categories{grid-template-rows:repeat(4,minmax(48px,1fr));gap:8px}.hall-kiosk-dialog>header{margin-bottom:12px}.hall-kiosk-dialog h2{font-size:21px}.hall-kiosk-dialog>footer{margin-top:12px}}
@media(max-height:430px){.hall-kiosk-dialog{width:min(92vw,620px);padding:14px 18px}.hall-kiosk-dialog>header{margin-bottom:10px}.hall-kiosk-dialog>header>span,.hall-kiosk-dialog>header p{display:none}.hall-kiosk-dialog h2{margin:0;font-size:21px}.hall-kiosk-menu{gap:10px}.hall-kiosk-dialog .hall-discovery-button{min-height:44px;flex-direction:row;padding:9px}.hall-kiosk-dialog .hall-discovery-button small{display:none}.hall-kiosk-dialog .hall-kiosk-categories{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,minmax(48px,1fr));gap:8px}.hall-kiosk-dialog .hall-category{font-size:14px;padding:7px;gap:5px}.hall-kiosk-dialog .hall-category i{width:25px;height:25px}.hall-kiosk-dialog .hall-category svg{width:21px;height:21px}.hall-kiosk-dialog>footer{margin-top:10px}}

/* Emerald speech bubble beside the face, with a short tail clear of the hair. */
.hall-greeting{position:absolute;z-index:5;inset:0;pointer-events:none}
.hall-greeting svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 4px 6px #0006)}
.hall-greeting path{fill:url(#hall-greeting-fill);stroke:#c5aa70;stroke-width:1.4;stroke-linejoin:round}
.hall-greeting-copy{position:absolute;margin:0;padding:12px 15px;color:#f5e4b9;text-align:center;font:600 clamp(16px,4cqw,22px)/1.25 "Trebuchet MS",Arial,sans-serif;letter-spacing:.1px;overflow-wrap:anywhere;text-wrap:pretty}
.hostess-menu-open .hall-greeting{visibility:hidden}
@media(max-height:430px){.hall-greeting-copy{padding:10px 12px;font-size:14px}.hall-greeting path{stroke-width:1.2}}

/* Visitor shortcuts float just below the concierge's welcoming hand. */
.hall-visitor-apps{position:absolute;z-index:5;left:51%;top:53%;width:45%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,3cqh,26px) 10px}
.hall-app{--tile-light:#458b78;--tile-dark:#163f35;--tile-edge:#0c2c24;display:flex;flex-direction:column;align-items:center;gap:7px;min-width:0;min-height:44px;padding:0;border:0;background:none;color:#f7e7c6;text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent}
.hall-app-free{--tile-light:#c4a365;--tile-dark:#725431;--tile-edge:#473321}
.hall-app-signin{--tile-light:#678cba;--tile-dark:#293f61;--tile-edge:#182940}
.hall-app-signup{--tile-light:#a283b1;--tile-dark:#51405f;--tile-edge:#33263c}
.hall-app-tile{position:relative;display:grid;place-items:center;width:clamp(42px,14cqw,70px);aspect-ratio:1;border:1px solid #f5e3bd99;border-radius:25%;background:radial-gradient(ellipse at 18% 0,#fff6de55,transparent 65%),linear-gradient(145deg,var(--tile-light),var(--tile-dark));box-shadow:inset 1px 2px 1px #fff5d966,inset -2px -2px 3px #0003,0 5px 0 var(--tile-edge),0 6px 0 #c5b18a66,0 14px 13px #0007;transform:perspective(380px) rotateX(9deg) rotateY(-8deg);transition:transform .22s ease,filter .22s ease;animation:visitor-app-float 5s ease-in-out infinite}
.hall-app-tile:before{content:"";position:absolute;inset:5px;border:1px solid #fff2cf30;border-radius:20%;pointer-events:none}
.hall-app-tile svg{width:58%;height:58%;filter:drop-shadow(0 2px 0 #0005) drop-shadow(0 -1px 0 #fff5);color:#fff0cf}
.hall-app strong{max-width:100%;font:600 clamp(11px,2.9cqw,14px)/1.25 'Trebuchet MS',Arial,sans-serif;text-shadow:0 2px 4px #000;letter-spacing:.1px}
.hall-app small{margin-top:-4px;font:clamp(9px,2.2cqw,11px)/1.2 'Trebuchet MS',Arial,sans-serif;color:#d9ccb4;text-shadow:0 1px 3px #000}
.hall-app:nth-child(2) .hall-app-tile{animation-delay:-1.2s}.hall-app:nth-child(3) .hall-app-tile{animation-delay:-2.4s}.hall-app:nth-child(4) .hall-app-tile{animation-delay:-3.6s}
.hall-app:hover .hall-app-tile{filter:brightness(1.17)}.hall-app:active .hall-app-tile{animation:none;transform:translateY(3px)}
.hall-app:focus-visible{outline:2px solid #f2d395;outline-offset:7px;border-radius:12px}
@keyframes visitor-app-float{0%,100%{transform:perspective(380px) rotateX(9deg) rotateY(-8deg) translateY(0)}50%{transform:perspective(380px) rotateX(9deg) rotateY(-8deg) translateY(-4px)}}
.visitor-mode .private-wallet{display:none}
.entry-active .hall-visitor-apps,.hostess-menu-open .hall-visitor-apps{visibility:hidden;pointer-events:none}
.entry-dismiss{flex:none;display:grid;place-items:center;width:30px;height:30px;margin:-6px -4px -6px 6px;padding:0;border:1px solid #d7bb7955;border-radius:50%;background:#132a20;color:#ead5aa;font:22px/1 Arial,sans-serif}
.entry-dialogue-heading .entry-preview{margin-left:auto}
@container(max-height:600px){.hall-visitor-apps{top:52%;gap:16px 8px}.hall-app-tile{width:clamp(38px,11cqw,53px)}.hall-app{gap:6px}.hall-app small{display:none}}
@container(max-height:430px){.hall-visitor-apps{top:52%;gap:13px 8px}.hall-app-tile{width:34px;border-radius:10px}.hall-app strong{font-size:10px}.hall-app{gap:6px}}
@media(prefers-reduced-motion:reduce){.hall-app-tile{animation:none;transition:none}}
.page-hidden .hall-app-tile{animation-play-state:paused}

/* Restore the visible wallet summary for visitors and signed-in guests. */
.lobby-wallet-summary{display:flex;flex-direction:column;align-items:flex-end;gap:3px;min-width:0}
.single-lobby-arrival .lobby-cash-desk{max-width:70%;min-height:40px}.lobby-cash-balance{overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.hall-hostess-chat{position:absolute;z-index:4;inset:0;width:100%;height:100%;padding:0;border:0;background:none;pointer-events:auto;cursor:pointer;clip-path:polygon(28% 3%,51% 3%,60% 24%,92% 21%,94% 26%,62% 36%,57% 48%,69% 96%,12% 99%,15% 65%,23% 42%,15% 34%,20% 20%)}
.lobby-welcome[data-host="isla"] .hall-hostess-chat{clip-path:polygon(24% 2%,47% 2%,55% 23%,95% 27%,95% 31%,59% 34%,58% 52%,74% 95%,17% 99%,14% 67%,18% 41%,10% 34%,16% 20%)}
.single-hostess:has(.hall-hostess-chat:focus-visible){filter:drop-shadow(0 0 6px #ebd19c)}
.hall-hostess-chat:focus-visible{background:#ead39b12;outline:0}
.hostess-menu-open .hall-hostess-chat{pointer-events:none;visibility:hidden}
.lobby-chat{position:fixed;inset:auto;margin:0;padding:0;border:0;background:transparent;max-width:none;max-height:none;color:#eee2c6;overflow:visible;outline:none}
.lobby-chat::backdrop{background:linear-gradient(transparent 20%,#03100b55 80%)}
.lobby-chat-shell.dialogue-bubble{height:100%;padding:0;overflow:hidden;border:1px solid #c4a56eb3;border-radius:20px 20px 20px 6px;background:linear-gradient(145deg,#18362df5,#081d18f5);display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;box-shadow:inset 0 1px 0 #f3d8a633,0 18px 46px #0008;text-shadow:none}
.lobby-chat-shell:before,.lobby-chat-shell:after{display:none}
.lobby-chat-header{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid #d2b57830;background:linear-gradient(110deg,#29453699,#0c241c88)}
.lobby-chat-avatar{flex:none;display:grid;place-items:center;width:36px;height:36px;border:1px solid #cdb17c88;border-radius:50%;background:linear-gradient(140deg,#a18e61,#355345);color:#fff0cf;font:italic 24px Georgia,serif}
.lobby-chat-header h2{margin:0;font:20px/1.15 Georgia,serif;color:#f5dfb0}.lobby-chat-header p{margin:4px 0 0;font:10px/1.2 Arial,sans-serif;color:#b8c9bb}
.lobby-chat-close{margin-left:auto;flex:none;width:36px;height:36px;min-height:36px;border:1px solid #d1b67a55;border-radius:50%;padding:0;background:#081f17;color:#f4dcab;font:24px/1 Arial,sans-serif}
.lobby-chat-messages{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:14px 12px;display:flex;flex-direction:column;gap:10px;scrollbar-width:thin;scrollbar-color:#7f8d6e #13291f;background:radial-gradient(ellipse at 0 20%,#b79f5f0b,transparent 60%)}
.lobby-chat-message{flex:none;max-width:87%;padding:10px 12px 6px;border:1px solid #c6b68b26;border-radius:13px 13px 13px 3px;background:#29453d;align-self:flex-start;box-shadow:0 2px 3px #0002}
.lobby-chat-message.is-outgoing{align-self:flex-end;background:linear-gradient(135deg,#48654b,#334f3b);border-radius:13px 13px 3px 13px;border-color:#cccb8b33}
.lobby-chat-message p{margin:0;color:#f2ebd8;font:14px/1.55 'Trebuchet MS',Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere}
.lobby-chat-message-meta{display:block;margin-top:4px;text-align:right;color:#b8c7b2;font:9px/1.2 Arial,sans-serif}
.lobby-chat-status{margin:0;padding:5px 12px;color:#b6c1ad;font:10px/1.3 Arial,sans-serif;text-align:center}
.lobby-chat-compose{display:flex;align-items:flex-end;gap:8px;padding:9px 12px 12px;border-top:1px solid #d2b57822;background:#0a211bcc}
.lobby-chat-compose textarea{display:block;min-width:0;flex:1;height:44px;min-height:44px;max-height:100px;resize:vertical;border:1px solid #b7c3a838;border-radius:16px;padding:11px 12px;background:#203a31;color:#f4eedf;font:16px/1.3 Arial,sans-serif;outline:none}
.lobby-chat-compose textarea::placeholder{color:#aebcad}.lobby-chat-compose textarea:focus{border-color:#d7be80}
.lobby-chat-send{display:grid;place-items:center;flex:none;width:44px;height:44px;border:1px solid #e6cb8d77;border-radius:50%;background:linear-gradient(140deg,#cbb17a,#8c7547);color:#10281d;padding:10px}.lobby-chat-send svg{width:24px;height:24px}.lobby-chat-send:disabled{opacity:.45;cursor:default}
.lobby-chat button:focus-visible,.lobby-chat-messages:focus-visible{outline:2px solid #f2d59a;outline-offset:-3px}
@media(max-height:430px){.lobby-chat-header{padding:6px 10px;gap:8px}.lobby-chat-avatar{width:28px;height:28px;font-size:19px}.lobby-chat-header h2{font-size:17px}.lobby-chat-header p{font-size:9px}.lobby-chat-messages{padding:8px;gap:6px}.lobby-chat-message{padding:6px 9px 4px}.lobby-chat-message p{font-size:12px}.lobby-chat-compose{padding:5px 8px 7px}.lobby-chat-status{font-size:9px;padding:3px}}
.lobby-chat-shell.dialogue-bubble{grid-template-columns:minmax(0,1fr);min-width:0}
.lobby-chat-header,.lobby-chat-messages,.lobby-chat-compose{min-width:0}
.lobby-chat-header>div{min-width:0}.lobby-chat-header h2{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Signed-in shortcuts respond to the combined Main and Bonus wallet balance. */
.member-lobby .hall-free-game{display:none}
.hall-member-menu{position:absolute;z-index:5;left:51%;width:45%;top:52%;bottom:13%;min-height:0}
.hall-member-empty{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;padding-top:10px}
.hall-member-empty .hall-app strong{margin-top:3px;line-height:1.35}
.member-deposit{--tile-light:#518b78;--tile-dark:#183e32;--tile-edge:#102b22}
.hall-member-funded{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;position:relative}
.member-favorites{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:40px;padding:5px 8px;border:1px solid #d5b672bb;border-radius:12px;background:radial-gradient(ellipse at 20% 0,#69856855,transparent 70%),linear-gradient(145deg,#284b3a,#0e281d);color:#f1ddb2;box-shadow:inset 0 1px 0 #f9e6bc66,0 3px 0 #17281b,0 4px 0 #c7aa6a55,0 8px 13px #0006;cursor:pointer}
.member-favorites>span{color:#f395a0;text-shadow:0 2px 0 #691f34,0 0 8px #ffb2b333;font:18px/1 Georgia,serif;letter-spacing:4px}
.member-favorites strong{font:600 clamp(9px,2.5cqw,12px)/1.2 'Trebuchet MS',Arial,sans-serif}
.member-favorites:hover{filter:brightness(1.15)}.member-favorites:focus-visible,.member-retry:focus-visible{outline:2px solid #f4d9a4;outline-offset:4px}
.member-game-grid{min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:12px 10px}
.member-game.hall-app{min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto;justify-items:center;gap:6px;align-items:center}
.member-game .hall-app-tile{width:auto;height:100%;max-height:70px;max-width:100%;aspect-ratio:1;border-radius:23%;overflow:hidden;padding:3px;background:linear-gradient(135deg,#94815c,#19372d 52%,#2b4431)}
.member-game .hall-app-tile:before{z-index:2;inset:1px;border-radius:22%;border-color:#ffe8b966;box-shadow:inset 1px 1px 2px #fff4dc33;pointer-events:none}
.member-game img{display:block;width:100%;height:100%;object-fit:contain;border-radius:19%;background:#112b22}
.member-game strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;height:2.4em;font:600 clamp(9px,2.65cqw,12px)/1.2 'Trebuchet MS',Arial,sans-serif;overflow-wrap:anywhere;max-width:100%}
.member-game:nth-child(5) .hall-app-tile{animation-delay:-.6s}.member-game:nth-child(6) .hall-app-tile{animation-delay:-1.8s}
.member-art-fallback{font:10px/1.2 Arial,sans-serif;color:#f6dfb3;text-align:center;overflow-wrap:anywhere}
.member-load-state{position:absolute;inset:55px 0 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#f2dfb8;text-align:center;font:12px/1.5 Arial,sans-serif;background:#0b241ccc;border:1px solid #d8b67855;border-radius:12px;padding:10px}
.member-load-state p{margin:0}.member-retry{min-height:36px;border:1px solid #d8b67888;background:#314e3c;color:#f4dfb6;border-radius:7px;padding:5px 10px}
.entry-active .hall-member-menu,.hostess-menu-open .hall-member-menu{visibility:hidden;pointer-events:none}
@container(max-height:600px){.hall-member-menu{top:50%;bottom:12%}.hall-member-funded{gap:10px}.member-game-grid{gap:10px 8px}.member-favorites{min-height:34px;padding:4px 6px}.member-favorites>span{font-size:15px}.member-game .hall-app-tile{max-height:46px}.member-game.hall-app{gap:5px}.member-game strong{font-size:9px}}
@container(max-height:430px){.hall-member-menu{top:50%;bottom:12%}.member-game-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:9px 6px}.member-favorites{min-height:30px;flex-direction:row;gap:5px;padding:3px 5px}.member-favorites>span{font-size:12px;letter-spacing:1px}.member-favorites strong{font-size:8px}.member-game strong{font-size:8px}.member-game .hall-app-tile{max-height:36px}.member-game.hall-app{gap:4px}.hall-member-empty{padding-top:12px}.hall-member-empty .hall-app strong{font-size:11px}}
.hall-member-menu[data-mode="funded"]{top:50%;bottom:9%}
@container(max-height:600px){.member-game strong{-webkit-line-clamp:1;height:1.2em}}
@container(max-height:430px){.hall-member-menu[data-mode="funded"]{bottom:11%}}

/* Foreground floor access remains available alongside every lobby menu. */
.single-lobby-arrival .hall-private-table{top:88%;height:5cqh;min-height:30px}
.hall-member-menu[data-mode="funded"]{bottom:13%}
@container(max-height:600px){.hall-member-menu[data-mode="funded"]{bottom:15%}}
@media(max-height:430px){.single-lobby-arrival .hall-private-table{top:83%;height:30px}.hall-member-menu[data-mode="funded"]{bottom:18%}}

/* A scrollable portrait gallery replaces the single-person carousel. */
.companion-gallery.companion-room{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr) auto;gap:12px;padding:20px 5% 16px}
.companion-gallery .companion-header{grid-column:1;grid-row:1}.companion-gallery .companion-header h2{font-family:Georgia,serif;letter-spacing:0}
.companion-gallery-hint{grid-row:2;margin:0;color:#c8ccb8;font:12px/1.4 Arial,sans-serif}
.companion-gallery .companion-roster{grid-column:1;grid-row:3;min-height:0;overflow-y:auto;overscroll-behavior:contain;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:12px;padding:3px 5px 10px;scrollbar-width:thin;scrollbar-color:#a89260 #11251c}
.companion-gallery .companion-choice{display:flex;flex-direction:column;min-width:0;min-height:0;padding:0;border:1px solid #b89a5c77;border-radius:14px;background:linear-gradient(145deg,#243c2e,#0a2017);color:#eee1c0;overflow:hidden;text-align:left;box-shadow:inset 0 1px 0 #edd2a633,0 4px 8px #0004;cursor:pointer}
.companion-thumbnail{position:relative;display:block;width:100%;aspect-ratio:4/3;overflow:hidden;background:radial-gradient(ellipse at 50% 5%,#c4a56e44,#233d2d 45%,#11231a 85%)}
.companion-thumbnail img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 0;filter:drop-shadow(0 4px 5px #0005)}
.companion-thumbnail-details{display:flex;flex-direction:column;gap:3px;padding:9px 10px 11px}
.companion-thumbnail-details strong{font:18px/1.2 Georgia,serif;color:var(--companion-accent,#ead1a0)}
.companion-thumbnail-details small{font:10px/1.3 Arial,sans-serif;color:#c6c9b5}
.companion-chosen-badge{display:none;position:absolute;right:5px;bottom:5px;padding:4px 6px;border:1px solid #e5c68a99;border-radius:10px;background:#153322ed;color:#ffe8b7;font:9px/1.2 Arial,sans-serif}
.companion-gallery .companion-choice[data-chosen=true] .companion-chosen-badge{display:block}.companion-gallery .companion-choice[data-chosen=true]:after{display:none}
.companion-gallery .companion-choice[aria-pressed=true]{border-color:#eed08e;box-shadow:inset 0 0 0 1px #eed08e77,0 0 12px #d3aa4a22}
.companion-gallery .companion-choice:hover{border-color:#ecd29b;background:#2b4532}
.companion-gallery .companion-choice:focus-visible{outline:2px solid #ffe5a6;outline-offset:-3px}
.companion-gallery-status{grid-row:4;margin:0;color:#c9c2a7;font:11px/1.4 Arial,sans-serif;text-align:center}
.companion-thumbnail-fallback{display:grid;place-items:center;height:100%;font:22px Georgia,serif;color:#ead5aa}
@container(min-width:480px){.companion-gallery .companion-roster{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-height:600px){.companion-gallery.companion-room{padding:12px 5%;gap:8px}.companion-gallery .companion-roster{gap:9px}.companion-thumbnail-details{padding:7px 8px}.companion-thumbnail-details strong{font-size:16px}.companion-gallery-status{font-size:10px}}
.companion-gallery .companion-roster{grid-auto-rows:max-content}
.companion-thumbnail{flex:none}
@media(max-height:430px){.hall-visitor-apps{top:49%;gap:9px 8px}.hall-visitor-apps .hall-app strong{font-size:9px;line-height:1.1}}
@media(min-height:431px) and (max-height:600px){.single-lobby-arrival .hall-private-table{top:86%}}
@media(max-height:430px){.hall-shuffle,.single-lobby #entry-switch{bottom:0}}
