/* Controls are painted things on the table, not a dashboard. */
#game button.painted-control{position:relative;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;flex:none;width:68px;min-width:56px;min-height:58px;padding:4px!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:10px;color:#234b62!important;touch-action:manipulation;vertical-align:middle;overflow:visible}
#game .painted-control .control-art{display:block;width:46px;height:46px;object-fit:contain;image-rendering:auto;filter:drop-shadow(0 3px 2px #6b492a30);pointer-events:none;transition:transform .15s,filter .15s}
#game .control-art.flipped{transform:scaleX(-1)}
#game .painted-control:hover .control-art,#game .painted-control:focus-visible .control-art{filter:drop-shadow(0 0 5px #f5c874) drop-shadow(0 2px 2px #6b492a30)}
#game .painted-control:focus-visible{outline:3px solid #325b76!important;outline-offset:1px}
#game .painted-control:active{transform:translateY(2px)}
#game .painted-control .control-label{font-size:13px;line-height:1.25;font-weight:700;text-align:center;max-width:100%;white-space:normal;display:none}
#game .show-control-labels .painted-control .control-label{display:block}
#game .painted-control[aria-pressed=true]:after,#game .painted-control.selected:after{content:'';position:absolute;bottom:1px;width:20px;height:4px;background:#285b6a;border-radius:60%}
#game .painted-control.control-off .control-art{opacity:.58}
#game .painted-control.control-off:before{content:'';position:absolute;z-index:1;top:26px;left:20px;right:20px;border-top:3px solid #925140;transform:rotate(-35deg);pointer-events:none}
#game .play-audio .painted-control .control-label{display:block;font-size:11px;font-weight:400;line-height:1.2}
#game .play-audio .painted-control{width:76px;min-height:66px}
#game .play-audio .control-art{width:35px;height:35px}
#game .play-audio .control-off:before{top:20px;left:22px;right:22px}
#painted-tooltip{position:fixed;z-index:100;pointer-events:none;max-width:min(290px,calc(100vw - 16px));padding:9px 14px;background:#fff1d4;border:1px solid #bca47e;border-radius:5px 10px 7px 12px;box-shadow:1px 4px 9px #60452f30;color:#294b5c;font:15px/1.5 Thmanyah;direction:rtl;text-align:center}
#game button.paper-choice{background:#f9edcde8!important;color:#264e64!important;border:0!important;border-radius:5px 10px 6px 12px!important;box-shadow:0 2px 0 #b5986c55!important;min-height:44px;padding:8px 13px;line-height:1.4}
#game .paper-choice.primary{background:#e6bc70!important}#game .paper-choice.danger{color:#8e3931!important}
#game .paper-choice.correct{background:#c4ddb3!important}#game .paper-choice.wrong{background:#e9c4a9!important}
#game .paper-choice[aria-pressed=true],#game .paper-choice.active{box-shadow:inset 0 -3px #30596b!important;background:#f2d395!important}
#game .paper-choice:focus-visible{outline-color:#315976}
.play-head,#cozy-panel header{align-items:center;gap:10px}.play-head>div,#cozy-panel header>div{min-width:0}
.play-head h1,#cozy-panel header b{font-size:24px;line-height:1.3;margin:0 0 5px}
.play-head p,#cozy-panel header p{position:relative;margin:0;padding:8px 43px 8px 12px;background:#fff1d4d9;color:#3c554e;border-radius:5px 12px 8px 4px;font-size:16px;line-height:1.5;box-shadow:0 2px 0 #c5a87730}
.play-head p:before,#cozy-panel header p:before{content:'';position:absolute;right:9px;top:50%;transform:translateY(-50%);width:27px;height:35px;background:url('assets/controls/flag.webp') center/contain no-repeat}
#playroom-focus{background:radial-gradient(ellipse at 50% 0,#f4e6c8,#dcc39c 90%)!important}
#play-tools,#cozy-controls{gap:8px;padding:5px 6px;align-items:center;justify-content:center;flex-wrap:wrap;max-width:1080px;margin:0 auto;flex:none}
#play-tools .ramp-select{flex-basis:auto;gap:3px;border-inline-end:1px solid #ad916a65;padding-inline-end:8px;margin-inline-end:4px}
#game .ramp-select .painted-control{min-width:56px;width:56px}#game .ramp-select .control-label{display:block}#game .ramp-select .control-art{width:45px;height:23px}
#play-feedback,#cozy-feedback{color:#45605b;font-size:15px;line-height:1.45;padding:2px 8px;min-height:28px;max-width:940px;margin:0 auto}
.play-head .play-audio{flex-basis:auto;gap:2px}.play-save{margin:3px 0 0;padding:0 3px;font-size:11px}
#game .back-to-room.painted-control{min-width:52px;width:54px!important}.play-head>#control-help{width:46px;min-width:46px}.play-head>#control-help .control-art{width:29px;height:36px}
#game .ink-tray{background:transparent;box-shadow:none;padding:4px;gap:3px;flex-wrap:wrap;max-width:100%}
#game #play-tools .ink{flex:none;min-width:44px;width:44px;height:48px;min-height:48px;border:0;border-radius:8px 8px 40% 40%;background:linear-gradient(#ffffff00 65%,#ecd6a9 66% 87%,#ffffff00 88%),var(--ink);box-shadow:inset 3px 0 #fff4,inset -3px 0 #0001,0 2px #6b4c3133;clip-path:polygon(0 15%,50% 0,100% 15%,100% 100%,0 100%)}
#game #play-tools .ink.selected{outline:0;transform:translateY(-4px);filter:drop-shadow(0 3px #294f65)}
#game .draw-actions{gap:5px;justify-content:center;flex-wrap:wrap}.draw-actions .painted-control{width:72px!important}
#game .activity-book #play-tools{display:flex;direction:ltr;flex-wrap:wrap;gap:12px}
#game .activity-book #book-shelf{grid-column:auto;min-height:58px;max-width:none}#book-count{order:0;font-size:16px;min-width:65px}#book-prev{order:1}#book-next{order:-1}#book-shelf{order:2;margin-left:16px}
#game .activity-book #play-tools .control-label{display:block}
#playroom-nav{background:#f0dbb5e8!important;border:0!important;box-shadow:0 3px 8px #6e472633!important;border-radius:55% 45% 30% 25% / 15% 18% 15% 18%;padding:2px 12px!important;width:auto!important;gap:6px}
#game #playroom-nav .painted-control{width:68px;min-height:55px}#game #playroom-nav .control-art{width:36px;height:36px}#game #playroom-nav .control-label{display:block;font-size:12px}
#game .hud{background:#f2e3c7e8;border:0;border-radius:8px 17px 10px 14px;padding:2px 8px;gap:8px}
#game .hud .painted-control{width:48px;min-width:44px;min-height:48px}#game .hud .control-art{width:35px;height:35px}#game .hud .control-label{display:none}
#game #money{background:#ecd09a;border-radius:50% 45% 40% 48%;color:#725331}
#game .needs{background:#f8eacbdf;color:#355766;box-shadow:none;border-radius:7px 17px 8px 12px;padding:5px 12px;top:78px}.quest-next small{color:#61756c!important}
#game .needs .painted-control{width:50px;min-width:44px;min-height:45px}#game .needs .control-art{width:35px;height:35px}#game .needs .control-label{display:none}
#map-controls{top:153px}#game #map-controls .painted-control{width:46px;min-width:44px}#game #map-controls .control-art{width:36px;height:36px}
#game .speech{background:#fff0d7ee;color:#304d5b;border:0;border-radius:10px 20px 12px 6px;box-shadow:0 3px 0 #b4977250}#game .speech small{color:#986c34}
#game .speech button.paper-choice{background:#e6cca4!important}
#game .character-card{border:0;background:transparent;box-shadow:none}#game .character-card img{image-rendering:auto;filter:drop-shadow(0 5px 3px #38576144)}#game .character-card:hover{background:#fff1ce66;border-radius:44% 42% 15% 17%}
#game #city-tray{background:#f5e7cbbd;border-radius:15px 5px 11px 9px}#game #city-tray button{border:0;background:transparent;box-shadow:none}#game #city-tray .current-destination{background:#f4d491a8}
#game .world-product img,#game #city-tray img,#game .atlas-entry img{image-rendering:auto}
#game .decor-inventory button{background:transparent;box-shadow:none;border:0}#game .decor-inventory button[aria-pressed=true]{filter:drop-shadow(0 0 4px #f2bf66)}
#game .board .answers button{min-height:44px;text-align:right}#game .count-dots button{min-width:44px;min-height:44px}#game .fraction button{min-width:44px;min-height:44px}#game .count-dots{gap:6px}
#game .paper-choice:disabled,#game .painted-control:disabled{opacity:.42;filter:grayscale(.25)}
@media(max-width:800px){.play-head{flex-wrap:wrap;gap:6px}.play-head>div{flex:1;min-width:calc(100% - 74px)}.play-head .play-audio{margin-left:auto;flex-basis:auto}.play-head>#control-help{order:3}.play-head h1{font-size:21px}.play-head p{font-size:14px;padding:6px 36px 6px 9px}.play-head p:before{width:23px;right:7px}.play-head .play-save{font-size:11px}.play-head .play-audio .painted-control{min-height:53px}.play-head .play-audio .control-art{height:29px;width:29px}}
@media(hover:none),(max-width:650px){#game .painted-control .control-label{display:block}#game .painted-control{width:64px;min-width:52px;min-height:68px;gap:2px}#game .painted-control .control-art{width:41px;height:41px}#game .painted-control .control-label{font-size:12px;line-height:1.2}#game .play-audio .control-label{font-size:11px}#play-tools,#cozy-controls{gap:4px;padding:3px 0}#game .draw-actions .painted-control{width:66px!important}#game #play-tools .ink{width:38px;min-width:38px;height:46px;min-height:46px}.ink-tray{gap:3px!important;padding:3px!important}#play-feedback{font-size:14px;min-height:28px}#game .ramp-select .painted-control{min-width:53px;width:53px}#play-tools .ramp-select{flex-basis:100%;justify-content:center;border:0;padding:0;margin:0}.play-head h1{font-size:20px}#game .hud .control-label,#game .needs .control-label{display:none}#game .needs{top:69px;min-height:63px;gap:5px;padding:4px 8px}.quest-next b{font-size:13px}.quest-next small{font-size:11px}#game .needs .painted-control{width:44px}#game .hud{gap:4px}.place-name b{font-size:15px}#game #money{font-size:12px;padding:5px}#cozy-panel header{gap:6px}#cozy-panel header b{font-size:20px}#cozy-panel header p{font-size:14px;padding:6px 35px 6px 9px}#cozy-panel header p:before{width:22px;right:6px}#cozy-panel header .painted-control{width:49px;min-width:44px}#cozy-panel header{flex-wrap:wrap}#cozy-panel header>div{flex:1;min-width:calc(100% - 66px)}#cozy-panel header>#control-help{margin-left:auto;min-height:45px}#cozy-panel header>#control-help .control-label{display:none}#cozy-panel header>#control-help .control-art{width:29px;height:33px}#cozy-feedback{font-size:14px;min-height:38px}#game .activity-book #play-tools{gap:6px}#game #book-shelf{margin-left:4px}#game #playroom-nav .control-art{width:32px;height:32px}}
@media(max-height:560px){#game .painted-control .control-art{width:34px;height:34px}#game .painted-control{min-height:48px}.play-head p{font-size:13px}.play-head h1{font-size:18px}.play-head .play-audio{margin-left:0}.play-head>div{min-width:0}.play-head{flex-wrap:nowrap}#game .play-audio .painted-control{width:60px;min-width:52px}.play-head>#control-help{display:none}#cozy-panel header p{font-size:13px}#game .needs{top:61px}}
@media(prefers-reduced-motion:reduce){#game .control-art{transition:none!important}}
#game #play-tools .ink{min-width:44px;width:44px}
#room-objective{position:absolute;z-index:3;top:76px;left:14px;right:14px;max-width:820px;margin:auto;padding:9px 48px 9px 15px;border-radius:8px 16px 9px 5px;background:#fff1d7ef;color:#36575d;box-shadow:0 2px 0 #ba9b7050;font-size:16px;line-height:1.45;text-align:right;pointer-events:none}
#room-objective:before{content:'';position:absolute;right:11px;top:50%;transform:translateY(-50%);width:27px;height:35px;background:url('assets/controls/flag.webp') center/contain no-repeat}
.world-activity .needs,.world-activity #map-controls{display:none!important}
@media(hover:hover){.scene-caption,.world-product.physical .object-caption{opacity:0}.hotspot:hover .scene-caption,.hotspot:focus-visible .scene-caption,.world-product:hover .object-caption,.world-product:focus-visible .object-caption{opacity:1}}
@media(max-width:650px){#room-objective{top:67px;font-size:14px;left:8px;right:8px;padding:7px 39px 7px 10px}#room-objective:before{right:8px;width:22px;height:30px}}
@media(max-width:360px){#game .ink-tray{display:grid;grid-template-columns:repeat(4,44px);gap:5px!important}}
@media(max-height:540px){#room-objective{top:59px;font-size:13px;padding-top:5px;padding-bottom:5px}}
#game .pause-options .painted-control,#game .speech .painted-control{width:auto;max-width:240px;min-width:80px;flex-direction:row;gap:7px;padding:4px 8px!important}
#game .pause-options .painted-control .control-label,#game .speech .painted-control .control-label{display:block;font-size:14px;line-height:1.4}
#game .pause-options .painted-control .control-art,#game .speech .painted-control .control-art{width:34px;height:34px;flex:none}
#game #rings-three .control-label,#game #rings-four .control-label{display:block;font-size:13px}
/* An explicit header grid keeps help/audio placement stable after wrapping. */
#game .play-head{display:grid;grid-template-columns:54px minmax(0,1fr) auto 46px;direction:ltr;gap:8px;width:100%}
#game .play-head>.back-to-room{grid-column:1;grid-row:1}#game .play-head>div{grid-column:2;grid-row:1;min-width:0}#game .play-head>.play-audio{grid-column:3;grid-row:1;margin:0;justify-self:end}#game .play-head>#control-help{grid-column:4;grid-row:1;display:inline-flex}
#game #cozy-panel header{display:grid;grid-template-columns:54px minmax(0,1fr) 46px;direction:ltr;gap:8px;width:100%}#cozy-panel header>div{direction:rtl;text-align:right;min-width:0!important}#cozy-panel header>#control-help{margin:0}
@media(max-width:800px){#game .play-head{grid-template-columns:54px minmax(0,1fr);gap:5px 8px}#game .play-head>div{grid-column:2;grid-row:1}#game .play-head>.play-audio{grid-column:2;grid-row:2}#game .play-head>#control-help{grid-column:1;grid-row:2;justify-self:center;min-height:45px}#game .play-head>.back-to-room{align-self:start}#game #cozy-panel header{grid-template-columns:54px minmax(0,1fr);gap:5px 8px}#game #cozy-panel header>div{grid-column:2;grid-row:1}#game #cozy-panel header>#control-help{grid-column:1;grid-row:2;justify-self:center}}
@media(max-height:560px) and (min-width:651px){#game .play-head{grid-template-columns:46px minmax(0,1fr) auto 38px}#game .play-head>div,#game .play-head>.play-audio,#game .play-head>#control-help{grid-row:1}#game .play-head>.play-audio{grid-column:3}#game .play-head>#control-help{grid-column:4}}
/* Physical steering stays spatial, even in the Arabic interface. */
#cozy-controls:has(#kite-left){direction:ltr}#cozy-controls:has(#kite-left) .control-label{direction:rtl}

#game .play-audio [data-stamp-album-open]{width:64px;min-width:54px}#game .play-audio [data-stamp-album-open] .control-label{font-size:11px}#game .hud .place-name{min-width:0;flex:1}#game .hud .place-name b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:400px){#game .hud{gap:2px;padding:2px 6px}#game .hud .painted-control{width:44px;min-width:44px}#game #money{max-width:46px;padding:4px;font-size:11px}#game .place-name b{font-size:13px}}
