/* Scoped to the physical cabinet. Lucky Pocket's illustrated arcade is unchanged. */
body:has(>.physical-claw--city)>.plate,
body:has(>.physical-claw--city)>.hud,
body:has(>.physical-claw--city)>.rail,
body:has(>.physical-claw--city)>#tools-toggle,
body:has(>.physical-claw--city)>#shop-actions,
body:has(>.physical-claw--city)>#walk-controls,
body:has(>.physical-claw--city)>#objects-toggle,
body:has(>.physical-claw--city)>#detail-toggle{visibility:hidden}
.physical-claw[hidden]{display:none!important}
.physical-claw{--pc-cream:#ffe9cf;--pc-teal:#a3ead9;--pc-coral:#f5a092;position:fixed;inset:0;z-index:1200;display:grid;grid-template-rows:auto minmax(240px,1fr) auto;background:#14282f;color:var(--pc-cream);font:14px/1.45 'DM Sans',sans-serif;isolation:isolate}
.physical-claw *{box-sizing:border-box}
.physical-claw button,.physical-claw select{font:inherit;color:inherit;min-height:44px;cursor:pointer;border:1px solid #ffe9cf35;border-radius:9px;background:#213e45;padding:9px 14px}
.physical-claw button:hover{background:#35525a}.physical-claw button:focus-visible,.physical-claw select:focus-visible,.physical-claw canvas:focus-visible{outline:3px solid var(--pc-teal);outline-offset:3px}
.physical-claw button:disabled{opacity:.45;cursor:default}
.physical-claw header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 26px;border-bottom:1px solid #ffe9cf22;background:#11272e}
.physical-claw h2{font:800 24px/1 'DM Sans',sans-serif;letter-spacing:-1px;margin:5px 0}
.physical-claw .pc-eyebrow{color:var(--pc-teal);font-size:12px;letter-spacing:2px;text-transform:uppercase}
.physical-claw .pc-header-actions{display:flex;gap:8px}
.physical-claw .pc-stage{position:relative;min-height:0;overflow:hidden}
.physical-claw canvas{display:block;width:100%;height:100%;touch-action:none}
.physical-claw .pc-status{position:absolute;top:18px;left:26px;max-width:290px;padding:12px 16px;border:1px solid #c7e5de33;border-radius:12px;background:#11272eda;pointer-events:none}
.physical-claw .pc-status strong{display:block;font-size:20px;margin-bottom:5px}
.physical-claw .pc-status p{margin:0;color:#c5d7d4}
.physical-claw .pc-perf{display:block;margin-top:8px;font-size:12px;color:#b0ccc6;font-variant-numeric:tabular-nums}
.physical-claw .pc-collection{position:absolute;right:22px;top:18px;width:180px;padding:14px;background:#11272ee8;border:1px solid #c7e5de33;border-radius:12px}
.physical-claw .pc-collection h3{font-size:14px;margin:0 0 10px}
.physical-claw .pc-collection summary{cursor:pointer;min-height:30px;font-size:14px;font-weight:700}
.physical-claw .pc-prizes{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.physical-claw .pc-prizes span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid #a3ead940;color:#9eb7b3;background:#284248;font-size:12px}
.physical-claw .pc-prizes span[data-won=true]{background:var(--pc-teal);color:#143e3c;border-color:var(--pc-teal)}
.physical-claw .pc-counter{font-size:12px;color:#b0ccc6;margin:12px 0 0}
.physical-claw .pc-camera{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);display:flex;gap:6px;padding:5px;background:#11272edc;border-radius:12px}
.physical-claw .pc-camera button{white-space:nowrap;min-height:38px;padding:7px 10px;font-size:12px}
.physical-claw .pc-camera button[aria-pressed=true]{background:var(--pc-teal);color:#173b3e}
.physical-claw .pc-controls{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 26px;background:#11272e;border-top:1px solid #ffe9cf22}
.physical-claw .pc-dpad{display:grid;grid-template-columns:repeat(3,44px);grid-template-rows:repeat(2,44px);gap:4px;flex-shrink:0}
.physical-claw .pc-dpad button{padding:0;font-size:20px;touch-action:none}
.physical-claw .pc-dpad button:first-child{grid-column:2}
.physical-claw .pc-dpad button:nth-child(2){grid-row:2;grid-column:1}
.physical-claw .pc-dpad button:nth-child(3){grid-row:2;grid-column:2}
.physical-claw .pc-dpad button:nth-child(4){grid-row:2;grid-column:3}
.physical-claw .pc-instructions{max-width:340px;color:#c5d7d4}
.physical-claw .pc-instructions strong{display:block;color:var(--pc-cream);font-size:16px;margin-bottom:4px}
.physical-claw .pc-main-actions{display:flex;gap:10px;align-items:center}
.physical-claw .pc-drop{background:var(--pc-coral);color:#2f3232;font-weight:800;min-width:150px;min-height:64px;font-size:18px;border:0}
.physical-claw .pc-drop:hover{background:#ffb5a7}
.physical-claw .pc-message{position:absolute;bottom:78px;left:50%;transform:translateX(-50%);text-align:center;width:min(90%,420px);padding:10px;background:#11272ef0;border-radius:9px;color:#ffe9cf}
.physical-claw .pc-message:empty{display:none}
.physical-claw .pc-loading{position:absolute;inset:0;display:grid;place-content:center;text-align:center;background:#152b32;gap:15px}
.physical-claw .pc-loading[hidden]{display:none}
@media(max-width:760px){
 .physical-claw header{padding:10px 12px}.physical-claw h2{font-size:21px}.physical-claw .pc-eyebrow{font-size:12px;letter-spacing:1px}
 .physical-claw .pc-header-actions{gap:4px}.physical-claw .pc-header-actions button{padding:7px 10px}
 .physical-claw .pc-status{top:10px;left:10px;max-width:180px;padding:8px 10px}.physical-claw .pc-status strong{font-size:16px}
 .physical-claw .pc-status p{font-size:12px}.physical-claw .pc-perf{font-size:12px}
 .physical-claw .pc-collection{right:10px;top:10px;width:110px;padding:9px}.physical-claw .pc-prizes{gap:4px}
 .physical-claw .pc-prizes span{width:26px;height:26px}.physical-claw .pc-collection h3{font-size:12px}
 .physical-claw .pc-collection summary{font-size:12px}
 .physical-claw .pc-counter{margin-top:7px}.physical-claw .pc-controls{padding:10px 12px;gap:10px}
 .physical-claw .pc-instructions{display:none}.physical-claw .pc-main-actions{flex-direction:column;gap:5px}
 .physical-claw .pc-drop{min-height:48px;min-width:165px;font-size:16px}.physical-claw .pc-release{min-height:38px;padding:7px 10px}
 .physical-claw .pc-camera{bottom:10px;gap:3px}.physical-claw .pc-camera button{padding:7px 8px}
}
@media(max-height:570px){.physical-claw{position:fixed;overflow:auto;grid-template-rows:70px 360px 112px}.physical-claw .pc-stage{min-height:360px}}
/* In-world controls: the city's existing canvas remains visible underneath. */
.physical-claw--city{--pc-cream:#eeeaf7;--pc-teal:#f5a6c8;--pc-coral:#f5a6c8;background:transparent;grid-template-rows:auto minmax(0,1fr) auto;font-family:inherit}
.physical-claw--city *{border-radius:0!important}
.physical-claw--city header,.physical-claw--city .pc-controls{background:#191522ed;border-color:#f5a6c855}
.physical-claw--city h2{font-family:inherit;letter-spacing:-.035em}
.physical-claw--city :is(button,select){background:#2b2338;border-color:#80637c;color:#eeeaf7}
.physical-claw--city button:hover:not(:disabled){background:#463047;border-color:#f5a6c8}
.physical-claw--city :is(.pc-status,.pc-collection,.pc-camera,.pc-message){background:#191522ed;border-color:#80637c;color:#eeeaf7}
.physical-claw--city :is(.pc-status p,.pc-perf,.pc-counter,.pc-instructions){color:#d3c4d6}
.physical-claw--city .pc-prizes span{background:#30263a;color:#d3c4d6;border-color:#80637c}
.physical-claw--city .pc-prizes span[data-won=true]{background:#f5a6c8;color:#261e31;border-color:#f5a6c8}
.physical-claw--city .pc-camera button[aria-pressed=true]{background:#f5a6c8;color:#261e31;border-color:#f5a6c8}
.physical-claw--city .pc-drop{background:#f5a6c8;color:#261e31;box-shadow:0 4px 0 #8c587a}
.physical-claw--city .pc-drop:hover:not(:disabled){background:#ffd2e6;color:#261e31}
.physical-claw--city .pc-camera button{min-height:44px}
.physical-claw--city .pc-city-input{position:absolute;inset:0;touch-action:none;outline:none}
.physical-claw--city .pc-city-input:focus-visible{outline:2px solid #f5a6c866;outline-offset:-3px}
.physical-claw--city .pc-loading{inset:auto;top:50%;left:50%;transform:translate(-50%,-50%);width:min(90%,380px);padding:24px;border:1px solid #80637c;background:#191522ed}
.physical-claw--city .pc-loading span{font-size:13px}
.physical-claw .pc-mode-label{display:block;margin-bottom:12px;font-size:12px;letter-spacing:.04em}
.physical-claw .pc-mode-label select{display:block;width:100%;margin-top:4px;pointer-events:auto}
.physical-claw .pc-status [data-pc=precision]{pointer-events:auto;min-height:44px;padding:5px 9px;margin-top:8px;font-size:12px}
.physical-claw [data-pc=precision][aria-pressed=true]{background:#f5a6c8;color:#261e31}
.physical-claw .pc-collection{width:220px;max-height:calc(100% - 90px);overflow:hidden}
.physical-claw .pc-collection[open]{width:270px;bottom:70px;max-height:580px;display:flex;flex-direction:column}
.physical-claw .pc-collection[open]::details-content{display:contents}
.physical-claw .pc-collection summary{min-height:44px;padding:6px 0;flex:none}
.physical-claw .pc-collection-body{min-height:0;flex:1;overflow:auto;overscroll-behavior:contain;scroll-padding-block:4px}
@supports not selector(details::details-content){
 .physical-claw .pc-collection[open]{display:block;overflow:auto;scroll-padding-top:52px}
 .physical-claw .pc-collection summary{position:sticky;top:0;background:inherit;z-index:1}
 .physical-claw .pc-collection-body{overflow:visible}
}
.physical-claw .pc-collection label{display:block;margin-top:12px;font-size:12px}
.physical-claw .pc-earned{width:100%;display:block;margin-top:4px;min-width:0}
.physical-claw .pc-prizes{grid-template-columns:repeat(5,1fr)}
.physical-claw .pc-prizes span{width:100%;height:33px}
.physical-claw .pc-shelf-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.physical-claw .pc-shelf-actions button{padding:6px;font-size:12px}
.physical-claw .pc-held,.physical-claw .pc-shelf-hint{font-size:12px}
.physical-claw .pc-cubbies{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:8px 0}
.physical-claw .pc-cubbies [data-filled=true]{border-color:#f5a6c8;background:#493047}
.physical-claw .pc-collection-body>[data-view],.physical-claw .pc-collection-body>[data-pc=reset]{width:100%;margin-top:8px;font-size:12px}
@media(max-width:760px){
 .physical-claw .pc-status{max-width:calc(100% - 144px)}
 .physical-claw .pc-mode-label{font-size:12px;margin-bottom:6px}
 .physical-claw .pc-mode-label select{font-size:12px;padding:7px 3px}
 .physical-claw .pc-collection{width:120px;right:8px}
 .physical-claw .pc-collection[open]{width:min(270px,calc(100% - 20px));z-index:3}
 .physical-claw .pc-status .pc-perf{display:none}
}
@media(max-height:570px){
 .physical-claw--city{overflow:hidden;grid-template-rows:64px minmax(0,1fr) 90px}
 .physical-claw--city .pc-stage{min-height:0}
 .physical-claw--city .pc-status{top:4px;padding:5px 10px}
 .physical-claw--city .pc-status p,.physical-claw--city .pc-instructions{display:none}
 .physical-claw--city .pc-controls{padding:5px 12px}
 .physical-claw--city .pc-dpad{grid-template-rows:repeat(2,36px)}
 .physical-claw--city .pc-dpad button{min-height:36px}
 .physical-claw--city .pc-main-actions{flex-direction:row}
}
