/* Circuit Rescue stays inside its own solo room. */
.robot-room .robot-scene{position:relative;top:0;display:flex;flex-direction:column;height:calc(100dvh - 180px);min-height:640px;max-height:920px;background:#050a10;border-color:#e19b5940}
.robot-hud{display:grid;grid-template-columns:1.4fr 1.4fr .6fr .6fr .75fr .75fr;gap:12px;padding:16px 20px;border-bottom:1px solid #e19b5929;background:#0e1825;flex:none;z-index:2}
.robot-hud>div{display:flex;flex-direction:column;gap:4px}
.robot-hud span{font-size:8px;letter-spacing:1.5px;color:#a7b7c8}
.robot-hud output{font:21px/1.15 Consolas,monospace;color:#f3e5cf;font-variant-numeric:tabular-nums}
.robot-hud #robot-best{color:#efbb84}.robot-hud #robot-rescued{color:#8bdcc7}
.robot-viewport{position:relative;flex:1;min-height:0;overflow:hidden;background:#05090f}
.robot-scene #robot-canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;outline-offset:-6px;z-index:1}
.robot-overlay{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:22px;background:linear-gradient(#070d18b0,#090f1bee 30%,#090f1bee 75%,#070d18a0)}
.robot-overlay .eyebrow{font-size:9px;color:#a9d4c7}
.robot-overlay h2{font:clamp(30px,4.5vw,57px)/1.1 Consolas,monospace;letter-spacing:-2px;margin:17px 0;color:#f0c394}
.robot-overlay>p:not(.eyebrow){font-size:13px;color:#b7c1d0;line-height:1.85}
.robot-room kbd{display:inline-block;font:11px/1.25 Consolas,monospace;border:1px solid #435369;border-bottom-width:3px;background:#172536;color:#e7e4dc;padding:5px 7px;border-radius:4px;min-width:24px;text-align:center}
.robot-key-hints{display:flex;gap:27px;margin:22px 0 26px;color:#a9bac6;font-size:9px;letter-spacing:1px}
.robot-key-hints>span{display:flex;flex-direction:column;gap:7px;align-items:center}
.robot-key-hints kbd{font-size:13px;letter-spacing:4px;padding:8px 12px}
.robot-key-hints small{font-size:9px;letter-spacing:0;color:#97a7ba}
.robot-banner{position:absolute;top:43%;left:10px;right:10px;z-index:2;pointer-events:none;text-align:center;font:20px/1.5 Consolas,monospace;color:#f5c88e;text-shadow:0 2px 6px #000}
.robot-controls{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:10px 16px;background:#101c2a;border-top:1px solid #e19b5929;flex:none;z-index:2}
.robot-controls-hint{font-size:10px;color:#a4b3c5;white-space:nowrap}
.robot-controls-hint kbd{font-size:9px;letter-spacing:1px;min-width:0;padding:4px}
.robot-options{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.robot-options .button{font-size:11px;min-height:42px;padding:8px 12px}
.robot-options button:disabled{cursor:default}
.robot-mix{display:grid;gap:2px}
.robot-mix label{display:flex;align-items:center;gap:9px;color:#b0bfce;font-size:10px}
.robot-mix label>span{min-width:78px;white-space:nowrap}
.robot-mix output{display:inline-block;min-width:30px;color:#efbb84;text-align:right;font-variant-numeric:tabular-nums}
.robot-mix input{width:90px;accent-color:var(--accent);margin:0}
.robot-touch-controls{display:none;justify-content:space-between;gap:18px;padding:9px 18px;background:#0d1723;flex:none;z-index:2}
.robot-pad-group{display:flex;align-items:center;gap:12px}
.robot-pad-group>span{color:#97aabd;letter-spacing:1px;font-size:8px}
.robot-pad{display:grid;grid-template-columns:repeat(3,1fr);width:108px;height:108px;gap:3px;touch-action:none;user-select:none}
.robot-pad button,.robot-pad-centre{display:grid;place-items:center;border-radius:6px;background:#1d2d42;border:1px solid #3b4d62;color:#c9dce0;font:19px/1 Consolas,monospace;min-width:0;padding:0;touch-action:none}
.robot-pad button.active{background:#46616b;border-color:#b6d8be}
.robot-pad[data-pad=fire] button{color:#edc195;border-color:#715741}
.robot-pad[data-pad=fire] button.active{background:#775540}
.robot-pad-centre{color:#748b9b;background:#111c2b;border-color:#2a3b50;font-size:15px}
.robot-guide h2{font-size:24px;margin:9px 0 16px}
.robot-guide p{font-size:12px;color:#b0bece;line-height:1.85;margin-top:13px}
.robot-guide .eyebrow{font-size:8px;margin-top:0}
.robot-guide dl{margin:20px 0;display:grid;gap:13px}.robot-guide dl>div{display:flex;align-items:center;gap:10px}
.robot-guide dt{width:65px;flex:none;font-size:11px;color:#e0bd93}.robot-guide dd{margin:0;font-size:11px;line-height:2;color:#b3c1ce}
.robot-guide kbd{font-size:9px;min-width:21px;padding:4px}
.robot-legend{list-style:none;padding:0;margin:18px 0;display:grid;gap:11px}
.robot-legend li{font-size:11px;color:#bbc6d0;display:flex;gap:9px;align-items:flex-start}
.robot-legend i{display:block;width:8px;height:8px;margin-top:5px;flex:none}.robot-legend .grunt{background:#fa6963}.robot-legend .hulk{background:#6ce687}.robot-legend .generator{background:#78daef}.robot-legend .brain{background:#e49bff}.robot-legend .tank{background:#ffc064}
.robot-guide .text-link{display:block;margin-top:20px}
.robot-room.room-expanded .experience-grid{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}
.robot-room.room-expanded .robot-scene{height:100%;min-height:0;max-height:none}
.robot-room.room-expanded .room-sidebar{display:none}.robot-room.room-expanded .fullscreen-room-settings{right:12px}
@media(max-width:800px){.robot-room .robot-scene{height:820px;min-height:0}.robot-room .room-sidebar{grid-template-columns:1fr 1fr}}
@media(pointer:coarse),(max-width:800px){.robot-touch-controls{display:flex}.robot-pad-group{flex-direction:column;gap:6px}.robot-controls-hint{display:none}}
@media(max-width:520px){
 .robot-room .robot-scene{height:750px}.robot-room .room-sidebar{grid-template-columns:1fr}
 .robot-hud{grid-template-columns:1.25fr 1.25fr .7fr;padding:12px 14px;gap:10px}
 .robot-hud span{font-size:7px;letter-spacing:1px}.robot-hud output{font-size:18px}
 .robot-overlay{padding:15px}.robot-overlay h2{font-size:33px;letter-spacing:-1px}
 .robot-key-hints{gap:18px}.robot-key-hints small{font-size:8px}
 .robot-controls{padding:8px 10px}.robot-options{width:100%;justify-content:space-between;gap:6px}
 .robot-options .button{font-size:10px;min-height:40px;padding:8px}
 .robot-mix label{gap:5px;font-size:9px}.robot-mix label>span{min-width:69px}.robot-mix input{width:83px}
 .robot-touch-controls{padding:8px 14px}.robot-pad{width:108px;height:108px}
}
@media(max-width:350px){.robot-options .button{padding:7px}.robot-mix input{width:65px}.robot-pad{width:99px;height:99px}.robot-pad button{font-size:18px}}
@media(max-height:500px){
 .robot-room.room-expanded .robot-hud{padding:6px 14px;gap:8px;grid-template-columns:1.4fr 1.4fr .6fr .6fr .75fr .75fr}
 .robot-room.room-expanded .robot-hud output{font-size:16px}.robot-room.room-expanded .robot-hud span{font-size:7px}
 .robot-room.room-expanded .robot-controls{padding:5px 12px}.robot-room.room-expanded .robot-controls .button{min-height:35px;padding:6px 10px}
 .robot-room.room-expanded .robot-touch-controls{position:absolute;bottom:70px;left:0;right:0;background:none;padding:0 18px;pointer-events:none}
 .robot-room.room-expanded .robot-pad{width:90px;height:90px;pointer-events:auto;opacity:.88}
 .robot-room.room-expanded .robot-pad-group>span{display:none}
 .robot-room.room-expanded .robot-overlay h2{font-size:26px;margin:7px 0}
 .robot-room.room-expanded .robot-overlay>p:not(.eyebrow){font-size:10px;line-height:1.4}
 .robot-room.room-expanded .robot-key-hints{margin:10px 0;gap:18px}.robot-room.room-expanded .robot-key-hints small{display:none}
 .robot-room.room-expanded .robot-key-hints kbd{padding:5px;font-size:11px}
 .robot-room.room-expanded .robot-overlay .button{min-height:35px;padding:8px 12px}
 .robot-room.room-expanded .robot-banner{font-size:16px}
}
