/* v5.12.8: compact mobile controls; preserve the desktop stage. */
#app #acidTools { display:none!important; }
.mobile-scene-controls { display:none; }
@media (max-width:1280px), (max-height:600px) {
 body { overflow:hidden; }
 .landscape-tip { display:none!important; }
 .adventure-entry { position:relative; inset:auto; display:flex; align-items:center; justify-content:center; gap:10px; height:36px; width:100%; max-width:none; margin:0; padding:5px 12px; border-radius:0; border-width:0 0 1px; box-shadow:none; }
 .adventure-entry .adventure-kicker,.adventure-entry .adventure-invitation { display:none; }
 .adventure-entry strong { font-size:18px; line-height:1; }
 .adventure-entry strong span { margin-left:10px; font-size:16px; }
 #app { --compact-header-height:54px; height:calc(100dvh - 36px); min-height:0; display:grid; grid-template-columns:minmax(0,1fr); --mobile-footer-height:calc(106px + env(safe-area-inset-bottom,0px)); grid-template-rows:54px 52px minmax(0,1fr) var(--mobile-footer-height); gap:0; padding:0; overflow:hidden; }
 #app .topbar { grid-column:1; grid-row:1; height:54px; margin:0; padding:0 10px; gap:8px; }
 #app .brand-art { min-width:0; }
 #app .topbar .brand-art .rr-wordmark { width:100px; }
 #app .topright .iconbtn { height:38px; width:38px; min-height:38px; min-width:38px; }
 #app .mobile-scene-controls { display:flex; grid-column:1; grid-row:2; align-items:center; gap:8px; min-width:0; padding:4px 10px; z-index:12; background:#0b1020; border-bottom:1px solid #7489ff33; }
 .mobile-scene-field { display:flex; align-items:center; gap:7px; flex:1; min-width:0; }
 .mobile-scene-field span { color:#d1ff58; font-size:8px; font-weight:800; letter-spacing:.7px; }
 #mobileScene { min-width:0; flex:1; height:44px; color:#f1efff; background:#131b30; border:1px solid #768dff80; border-radius:6px; padding:0 6px; font:700 10px/1.2 "Segoe UI",sans-serif; }
 #mobilePureVisualizer { flex:0 0 100px; height:44px; min-width:0; padding:5px 8px; color:#94ffe4; border:1px solid #5aebc9; border-radius:6px; background:linear-gradient(120deg,#173a39,#0a1728); font:800 9px/1.2 "Segoe UI",sans-serif; letter-spacing:.3px; }
 #mobilePureVisualizer:focus-visible,#mobileScene:focus-visible { outline:2px solid white; outline-offset:1px; }
 #app .stage { grid-column:1; grid-row:3; position:relative; inset:auto; width:100%; height:100%; min-height:0; margin:0; }
 #app .stage-copy { top:14px; left:12px; }
 #app .stage-copy h1 { font-size:clamp(22px,6.7vw,34px); margin:8px 0; }
 #app .stage-copy .location { font-size:6px; letter-spacing:.4px; }
 #app .stage-badge { display:none; }
 #app .scene-picker.pure-mode-picker { left:10px; bottom:8px; width:calc(100% - 20px); max-width:none; gap:6px; flex-wrap:nowrap; }
 #app .pure-mode-picker .scene-btn { flex:1 1 0; width:auto; min-width:0; height:38px; min-height:38px; justify-content:center; font-size:8px; letter-spacing:.3px; padding:6px 4px; gap:5px; }
 #app .pure-mode-picker .eyebrow,#app .pure-mode-picker #pureVisualizerButton { display:none!important; }
 #app #worldPicker { display:none!important; }
 #app #musicSidebar { grid-column:1; grid-row:4; position:relative; inset:auto; display:grid; grid-template-rows:50px 46px; gap:0; width:100%; height:var(--mobile-footer-height); min-width:0; padding:3px 10px max(4px,env(safe-area-inset-bottom)); overflow:hidden; background:#0a0e19; border-top:1px solid #768dff44; }
 #app #musicSidebar .playlist-card { display:grid; grid-template-columns:38px minmax(0,1fr); gap:8px; padding:3px 0; border:0; border-radius:0; background:none; box-shadow:none; }
 #app #musicSidebar .playlist-cover { width:38px; height:38px; border-radius:5px; }
 #app #musicSidebar .playlist-track { font-size:11px; line-height:1.25; overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
 #app .player-options { display:flex; align-items:center; gap:10px; padding:0; min-width:0; border:0; border-radius:0; background:none; }
 #app .player-volume { flex:1; min-width:0; padding:0; gap:6px; }
 #app .player-volume input { min-height:36px; width:100%; }
 #app .player-option-buttons { display:flex; flex-wrap:nowrap; gap:6px; }
 #app .player-option-buttons .smallbtn { min-height:38px; height:38px; padding:6px 10px; font-size:8px; }
 #app .player-signal { display:none; }
 #app .start-overlay { top:106px; bottom:var(--mobile-footer-height); height:auto; }
 #app .popup { max-height:calc(100dvh - 24px); }
 #app.zen { height:100dvh; }
 #app.zen .mobile-scene-controls { display:none; }
 #app.pure-visualizer { height:100dvh; }
}
@media (max-width:1280px) and (max-height:500px) and (orientation:landscape) {

 #app { height:calc(100dvh - 36px); grid-template-columns:minmax(0,1fr) 260px; grid-template-rows:50px 52px minmax(0,1fr); }
 #app .topbar { grid-column:1/-1; height:50px; }
 #app .mobile-scene-controls { grid-column:2; grid-row:2; padding:4px 8px; gap:6px; }
 #app .mobile-scene-field span { display:none; }
 #mobilePureVisualizer { flex-basis:88px; }
 #app .stage { grid-column:1; grid-row:2/4; }
 #app #musicSidebar { grid-column:2; grid-row:3; height:auto; grid-template-rows:50px 84px; padding:6px 8px; border-top:0; border-left:1px solid #768dff33; }
 #app .player-options { flex-wrap:wrap; gap:6px; align-self:start; }
 #app .player-volume { flex-basis:100%; }
 #app .player-option-buttons { width:100%; }
 #app .start-overlay { top:50px; right:260px; bottom:0; }
 #app .stage-copy h1 { font-size:24px; }
}

