#room{background:#fff9f0;color:#55425d;--hud-height:62px}
#room .stage,#room.portrait .stage{top:calc(var(--edge-t) + var(--hud-height));bottom:0;height:auto;background:#ebe0f3}
#room #game{pointer-events:auto}
#room .game-top{height:48px;display:grid;grid-template-columns:auto minmax(100px,1fr) auto auto;gap:8px}
#room .game-top button,#room #game-menu button{background:#fff9f0;color:#705780;border:1px solid #ddcadf;border-radius:16px;font-size:13px;min-height:42px}
#room .game-wallet{background:#fff1da;border:1px solid #ebd7b1;color:#755b4a;border-radius:18px;gap:7px;min-width:0}
#room .game-wallet strong{font-size:20px;font-variant-numeric:tabular-nums}#room .game-wallet span{display:block;font-size:11px}
#room .machine-title{display:flex;gap:10px;text-shadow:none;color:#65506f;font-size:14px;min-width:0}
#room #machine-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
#room #phase{display:none}#room .game-status{display:none}
#room .hud-state{display:flex;align-items:center;gap:8px;min-width:0}#room #hud-role{font-size:11px;white-space:nowrap;color:#907ba0}
#room #hud-timer{min-width:48px;padding:8px;border-radius:13px;background:#f0e4f7;color:#805c9b;white-space:nowrap;text-align:center;font-size:14px;font-weight:750;font-variant-numeric:tabular-nums}
#room #game-menu{position:absolute;z-index:106;right:var(--edge-r);top:calc(var(--edge-t) + var(--hud-height) + 5px);width:205px;padding:12px;display:grid;gap:7px;background:#fffaf5f5;border:1px solid #e2cedd;border-radius:20px;box-shadow:0 8px 24px #5e41652a;max-height:calc(100% - 130px);overflow:auto;touch-action:pan-y}
#room #game-menu p{font-size:11px;color:#907ba0;margin:4px}
#room #ledger{top:calc(var(--edge-t) + var(--hud-height) + 8px);left:var(--edge-x);right:auto;width:min(430px,65%);background:#fff9f5;color:#705780;border-color:#dcc8df;z-index:107}
#room .pad{display:none!important}
#room .game-actions,#room.portrait .game-actions{right:var(--edge-r);bottom:var(--edge-b);width:auto;max-width:190px;gap:8px;display:flex;align-items:flex-end;flex-direction:column;pointer-events:none}
#room .game-actions button{pointer-events:auto;border-radius:22px;box-shadow:0 4px 0 #76546826;background:#fff8ef;color:#75577e;border:1px solid #d9c2d7;min-height:44px}
#room .game-actions #drop,#room.portrait .game-actions #drop{width:86px;height:86px;border-radius:50%;font-size:18px;background:linear-gradient(#ffac96,#f58087);color:#fff;border:4px solid #fff4e5;box-shadow:0 5px 0 #bd7b8a65}
#room .game-actions #start{background:#fff6e5;font-size:12px;white-space:nowrap}#room .game-actions #release{width:auto;font-size:12px}
#room #drag-tutorial{position:absolute;inset:45% 18% auto;z-index:4;text-align:center;pointer-events:none;color:#fff;text-shadow:0 1px 4px #423748;background:#55406072;border:1px solid #ffffff66;border-radius:24px;padding:15px;transition:opacity .25s}
#room #drag-tutorial .ghost-stick{display:block;margin:0 auto 10px;width:55px;height:55px;border:2px solid #fff8;border-radius:50%;background:#ffffff22;position:relative}#room #drag-tutorial .ghost-stick:after{content:'';position:absolute;inset:13px;border-radius:50%;background:#fff7}
#room #drag-tutorial p{font-size:13px;color:white;margin:0}#room #drag-tutorial button{pointer-events:auto;width:auto;background:#ffffffdd;color:#735983;margin-top:8px;padding:6px 14px;font-size:11px;min-height:32px}
#room .claw-bgm{top:calc(var(--edge-t) + var(--hud-height) + 5px);right:var(--edge-r);z-index:105}#room:has(#game-menu:not([hidden])) .claw-bgm{visibility:hidden}
#room.portrait{--hud-height:108px}#room.portrait .game-top{height:94px;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:44px 42px;gap:7px}
#room.portrait .game-wallet{grid-column:2;grid-row:1;justify-self:end}#room.portrait #menu-toggle{grid-column:3;grid-row:1}#room.portrait .machine-title{grid-column:1/4;grid-row:2;display:flex;justify-content:space-between}#room.portrait .hud-state{flex-shrink:0}#room.portrait #machine-name{max-width:55%;font-size:13px}
@media(orientation:landscape){#room .machine-title{justify-content:space-between}#room #machine-name{max-width:50%}#room .game-actions #drop{width:70px;height:70px;font-size:16px}#room .game-actions{flex-direction:row;align-items:center;max-width:none}#room #drag-tutorial{inset:40% 30% auto;padding:10px}#room #drag-tutorial .ghost-stick{display:none}}
@media(max-width:360px){#room .game-wallet{padding:4px 6px;gap:4px}#room .game-wallet strong{font-size:17px}#room.portrait #machine-name{max-width:43%}#room #hud-role{font-size:10px}}

#room .game-status{display:block!important;top:calc(var(--edge-t) + var(--hud-height) + 8px);bottom:auto;left:var(--edge-x);right:220px;height:auto;z-index:5;text-shadow:none}#room .game-status #role,#room .game-status #status{display:none}#room .game-status #room-message:empty{display:none}#room .game-status #room-message{color:#75577e;background:#fff9efed;border-radius:12px;padding:6px;font-size:11px;white-space:normal;max-height:65px}

#room #drag-tutorial.dismissed{opacity:0;visibility:hidden;transition:opacity .25s,visibility 0s .25s}#room #drag-tutorial.dismissed button{pointer-events:none}

/* Game-only finishing layer: dimensional controls matching approved platform. */
#room{color:#272344;--hud-height:74px}
#room .game-top{height:58px;grid-template-columns:auto minmax(120px,1fr) auto auto auto;gap:12px}
#room .game-top button,#room #game-menu button{height:46px;min-height:46px;border:2px solid #fff;border-radius:23px;background:linear-gradient(#fffdf6,#f5e8db);color:#8e6d80;font-weight:750;box-shadow:inset 0 2px 0 #fff,0 4px 0 #dfcabc80;font-size:14px}
#room #back{padding:8px 20px;min-width:88px;background:linear-gradient(#ffa28c,#ff7b85);color:#fff;border-color:#ffe6d3;box-shadow:inset 0 2px 0 #ffcab4,0 4px 0 #d6979555}
#room #menu-toggle{min-width:46px;width:46px;font-size:21px;padding:7px;background:linear-gradient(#f5eafa,#dbc2ef);color:#7c5896;border-color:#fff4ff;box-shadow:inset 0 2px 0 #fff9,0 4px 0 #baa1cb66}
#room .game-wallet{padding:7px 15px 7px 10px;gap:8px;border:2px solid #ffead5;background:linear-gradient(#fffaf0,#fff0d7);border-radius:28px;box-shadow:inset 0 2px 0 #fff,0 3px 0 #e8cbaf55;color:#846351}
#room .game-wallet:before{content:'✦';display:grid;place-items:center;flex-shrink:0;width:27px;height:27px;border:2px solid #e4a92e;outline:2px solid #ffe5a0;outline-offset:1px;border-radius:50%;background:linear-gradient(#ffe58b,#ffc447);color:#c48b26;font-size:20px;text-shadow:0 1px #fff1b7;box-shadow:inset 0 0 0 2px #fff1b1}
#room .game-wallet strong{font-size:22px;line-height:1.2;color:#73524b}#room .game-wallet span{font-size:11px;white-space:nowrap}
#room .machine-title{font-weight:750;color:#78608c;font-size:15px;gap:14px}#room #hud-role{padding:7px 11px;border-radius:18px;background:#f1e7f8;font-size:11px;color:#9670ad}#room #hud-timer{min-width:62px;padding:9px 12px;border:2px solid #fff6e7;border-radius:20px;background:linear-gradient(#ffe5a0,#ffd889);color:#9f7037;box-shadow:inset 0 2px 0 #fff2c8,0 3px 0 #e7c69555;font-size:16px}
#room #game-menu{border:2px solid #fff;border-radius:26px;box-shadow:0 6px 0 #d8c5e480,0 12px 30px #684b7226;padding:15px;gap:10px;background:#fffaf3}#room #game-menu button{font-size:13px;background:linear-gradient(#fffdf8,#f0e4f7);color:#88659f}
#room .game-actions #start{min-height:48px;border:2px solid #ffe7d4;border-radius:27px;padding:12px 22px;background:linear-gradient(#ffa38e,#ff7d85);color:#fff;font-size:14px;box-shadow:inset 0 2px 0 #ffcebb,0 5px 0 #cc8b9455}
#room .game-actions #drop,#room.portrait .game-actions #drop{width:92px;height:92px;border:4px solid #fff4e4;border-radius:50%;background:linear-gradient(#ffb29b,#ff7886);color:#fff;font-weight:850;font-size:21px;box-shadow:inset 0 3px 0 #ffd7bf,0 6px 0 #c9879477,0 8px 15px #6b455326}
#room .game-actions button:disabled{opacity:1;filter:saturate(.45);color:#aa8b96!important;background:linear-gradient(#f5e6e4,#e1ced5)!important;box-shadow:inset 0 2px 0 #fff8,0 4px 0 #cbb3c055!important;cursor:default}
#room.portrait{--hud-height:120px}#room.portrait .game-top{height:104px;grid-template-columns:auto minmax(0,1fr) 46px 46px;grid-template-rows:48px 46px;gap:10px 7px}#room.portrait #menu-toggle{grid-column:4;grid-row:1}#room.portrait .machine-title{grid-column:1/5;grid-row:2;padding:0 3px}#room.portrait #back{min-width:64px;padding:8px 10px;font-size:13px}#room.portrait .game-wallet{padding:6px 9px;gap:5px}#room.portrait .game-wallet:before{display:none}#room.portrait .game-wallet strong{font-size:19px}#room.portrait .game-wallet span{font-size:10px}#room.portrait #machine-name{max-width:48%;font-size:14px}#room.portrait #hud-role{padding:6px 9px}
@media(max-width:370px){#room.portrait .game-top{grid-template-columns:58px minmax(0,1fr) 40px 40px;gap:8px 5px}#room.portrait #back{min-width:58px;padding:8px 6px}#room.portrait #menu-toggle,#room.portrait .game-top .claw-bgm>button{width:40px;min-width:40px}#room.portrait .game-wallet strong{font-size:17px}#room.portrait .game-wallet{padding:6px;gap:3px}#room.portrait .hud-state{gap:5px}#room.portrait #hud-role{font-size:10px}#room.portrait #machine-name{max-width:43%}}
@media(max-height:400px) and (orientation:landscape){#room{--hud-height:62px}#room .game-top{height:48px;gap:6px}#room #back{min-width:64px;padding:7px 10px;font-size:12px}#room .game-wallet{padding:6px 9px;gap:4px}#room .game-wallet:before{display:none}#room .game-wallet strong{font-size:17px}#room .game-wallet span{font-size:10px}#room #hud-role{padding:5px;font-size:10px}#room #hud-timer{min-width:46px;padding:7px;font-size:13px}#room .machine-title{gap:5px;font-size:12px}#room #machine-name{max-width:42%}#room .hud-state{gap:4px}#room .game-actions #drop{width:66px;height:66px;font-size:16px}#room .game-actions #start{min-height:42px;font-size:12px;padding:9px 15px}}

#room .game-actions #drop,#room.portrait .game-actions #drop{white-space:nowrap;line-height:1;padding:0;display:grid;place-items:center}
#room{font-family:"Microsoft JhengHei","Microsoft YaHei",sans-serif;color-scheme:light}#room button,#room .claw-bgm{font-family:inherit}
#room .game-actions #drop{flex:0 0 92px;min-width:92px;aspect-ratio:1}#room.portrait .game-actions #drop{flex:0 0 auto}
#room #hud-timer:before{content:'◷';margin-right:5px;font-size:17px}
@media(max-height:400px) and (orientation:landscape){#room .game-actions #drop{flex-basis:66px;min-width:66px}#room #hud-timer:before{display:none}}