/* Phone workspace: a clear canvas, thumb navigation, and one sheet at a time. */
.mobile-only{display:none}
@media(max-width:760px), (max-width:980px) and (max-height:600px){
 html,body{height:100%;overflow:hidden;overscroll-behavior:none}
 body{--dock:calc(64px + env(safe-area-inset-bottom,0px));--header:calc(52px + env(safe-area-inset-top,0px))}
 .mobile-only{display:flex}
 .topbar{height:var(--header);padding:env(safe-area-inset-top,0px) max(16px,env(safe-area-inset-right,0px)) 0 max(16px,env(safe-area-inset-left,0px))}
 .topbar .brand{font-size:17px;white-space:nowrap}.top-actions{display:none}
 .topbar .workspace-name,.topbar .divider{display:none}
 .mobile-mode{margin-left:auto;font-size:14px;color:#b7c0b4}
 #studio{height:calc(100dvh - var(--header));min-height:0;width:100%}
 #studio>.viewbar,#studio>.stage-footer{display:none}
 #viewport{position:absolute;inset:0 0 var(--dock);width:100%;height:calc(100% - var(--dock))}
 #studio[data-view=airflow] #viewport,#studio[data-view=airflow3d] #viewport{top:132px;height:calc(100% - var(--dock) - 132px)}
 .airflow-tools{top:0;left:0;right:0;max-width:none;border:0;border-bottom:1px solid #343b33;border-radius:0;padding:8px 12px;background:#151915;box-shadow:none;height:132px}
 .airflow-heading,.airflow-tools #sim-running,.airflow-tools #heat-scenario-note{display:none}
 .airflow-actions{margin:0;display:flex;gap:6px;padding-right:0}.airflow-actions button{flex:1;min-height:44px;font-size:14px;padding:7px}
 #sim-toggle,#compare-open{display:none}
 .flow-layer-controls{margin:5px 0 0;gap:6px}.flow-layer-controls button{min-height:40px;font-size:14px;padding:6px 10px}
 .flow-layer-controls #sim-count{font-size:13px}.flow-legend{margin:3px 0 0;font-size:12px;flex-wrap:nowrap}
 .mobile-dock{position:absolute;z-index:22;left:0;right:0;bottom:0;min-height:var(--dock);padding:6px max(8px,env(safe-area-inset-right,0px)) calc(6px + env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px));background:#151715;border-top:1px solid #394037;gap:4px;align-items:stretch}
 .mobile-dock button{flex:1;min-width:0;min-height:50px;border-radius:10px;padding:6px 2px;font-size:14px;color:#bac2b7}
 .mobile-dock button[aria-pressed=true]{background:#233520;color:#c6ffc1;box-shadow:inset 0 0 0 1px #528d43}
 .mobile-dock button:disabled{opacity:.4;cursor:default}
 .simulation-panel,#settings,#upgrades-panel{position:absolute;top:auto;bottom:var(--dock);left:0;right:0;width:auto;max-height:68%;border-radius:20px 20px 0 0;padding:14px 16px 22px;overflow:auto;overscroll-behavior:contain;z-index:20;background:#151915;box-shadow:0 -12px 40px #0006}
 .sim-panel-head{top:-14px;background:#151915;padding:4px 0 10px;z-index:3}.sim-panel-head button,.quick-title button,.dialog-head>button,.up-head>button{min-width:44px;min-height:44px}
 .sim-tabs{position:sticky;top:44px;background:#151915;margin:0 0 16px;z-index:2}.sim-tabs button{min-height:48px;font-size:16px}
 .sim-fan-selectors{grid-template-columns:repeat(4,1fr);gap:8px}.sim-fan-selectors button{height:46px}
 input,select,textarea{font-size:16px!important}input[type=range]{min-height:44px;touch-action:pan-y}
 .fan-power-presets button,.quick-actions button,.sim-actions button,.nudge-buttons button{min-height:46px;font-size:14px}
 .sim-switch{min-height:44px}.sim-switch input{width:28px;height:28px}
 .fan-quickbar{left:8px;right:8px;bottom:calc(var(--dock) + 8px);width:auto;padding:10px 12px;z-index:18;max-height:48%;overflow:auto;background:#151915}
 .fan-quickbar .fan-power-presets button{min-height:44px}.fan-quickbar p{font-size:14px;min-height:0;margin:8px 0 0}
 .quick-title strong{font-size:16px}.quick-title button{font-size:14px}.fan-quickbar .quick-actions{gap:6px}
 .mobile-scene-tools{position:absolute;right:10px;bottom:calc(var(--dock) + 10px);z-index:3;gap:5px;background:#151915ed;padding:5px;border:1px solid #485143;border-radius:12px}
 .mobile-scene-tools button{width:44px;height:44px;font-size:22px;border-radius:8px}.mobile-scene-tools button:last-child{width:52px;font-size:14px}
 #studio[data-mobile-sheet=true] .mobile-scene-tools,#studio[data-mobile-quick=true] .mobile-scene-tools{display:none}
 #mobile-more{width:100%;max-width:none;max-height:80dvh;margin:auto 0 0;padding:0 0 calc(16px + env(safe-area-inset-bottom,0px));border-radius:20px 20px 0 0;background:#151915}
 #mobile-more .dialog-head{padding:16px;position:sticky;top:0;background:#151915;z-index:2}#mobile-more h2{font-size:20px}
 .mobile-menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 16px}.mobile-menu-grid button{min-height:50px;text-align:left;padding:12px;border:1px solid #414a3d;border-radius:10px;font-size:15px}
 .mobile-menu-grid label{grid-column:1/-1;font-size:14px;margin-bottom:8px}.mobile-menu-grid select{display:block;margin-top:6px;width:100%;padding:12px;border-radius:8px;background:#20251e;color:#f2f2f2;border:1px solid #505b49}
 .mobile-menu-note{font-size:13px;color:#b0b9aa;padding:0 16px}
 .camera-strip{bottom:calc(var(--dock) + 70px)}
 #studio:not([data-view=overview]):not([data-view=top]) .camera-caption,.camera-caption{bottom:calc(var(--dock) + 158px);top:auto;max-width:calc(100% - 32px)}
 .selection,#studio[data-view=airflow] .selection,#studio[data-view=airflow3d] .selection{bottom:calc(var(--dock) + 72px);max-width:calc(100% - 32px)}
 #up-place-bar{bottom:calc(var(--dock) + 8px);max-height:35%;overflow:auto}
 #studio[data-designer=true] .mobile-dock,#studio[data-designer=true] .mobile-scene-tools{display:none}
 #studio[data-designer=true] #viewport{top:60px;left:0;width:100%;height:calc(100% - 60px - var(--dock))}
 .ds-toolbar{top:0;left:0;right:0;border-radius:0;padding:7px 8px;height:60px;background:#151915}.ds-toolset{flex-shrink:0;width:max-content;min-width:100%}
 #designer-ui .ds-toolset button{font-size:14px;flex:none;min-height:44px}#ds-close{font-size:0!important}#ds-close:after{content:'Airflow';font-size:14px}
 .ds-mobile-tabs{bottom:0;left:0;right:0;transform:none;max-width:none;width:auto;border-radius:0;border-width:1px 0 0;padding:7px 8px calc(7px + env(safe-area-inset-bottom,0px));min-height:var(--dock);background:#151915}
 .ds-mobile-tabs button{min-height:48px!important;font-size:15px!important}
 .ds-left,.ds-right{bottom:var(--dock);left:0;right:0;max-height:64%;width:auto;border-radius:20px 20px 0 0;padding:14px 16px 22px;background:#151915;z-index:6}
 .ds-panel-close{position:sticky;top:-8px;z-index:3;min-width:80px}.ds-quick{bottom:calc(var(--dock) + 36px);overflow-x:auto;max-width:calc(100% - 16px)}
 .ds-status{bottom:var(--dock);font-size:12px;line-height:1.4;max-height:60px;overflow:auto;padding:7px 12px;background:#151915}
 .ds-left[data-open=true]~.ds-quick,.ds-right[data-open=true]~.ds-quick{visibility:hidden}
 dialog{max-height:90dvh;max-width:calc(100% - 16px);overscroll-behavior:contain}dialog .dialog-head{gap:12px}.photo-grid{padding:12px}
 #fallback{padding:16px 16px calc(var(--dock) + 16px);overflow:auto}#fallback img{height:auto;max-height:65%;object-fit:contain}
}
@media(max-width:980px) and (max-height:600px){
 .simulation-panel,#settings,#upgrades-panel,.ds-left,.ds-right{left:auto;right:0;width:55%;max-height:calc(100% - var(--dock));border-radius:16px 0 0 0}
 .airflow-tools{height:64px;display:flex;align-items:center;gap:8px}.airflow-actions{flex:1}.flow-layer-controls{flex:1;margin:0}.flow-legend{display:none}
 #studio[data-view=airflow] #viewport,#studio[data-view=airflow3d] #viewport{top:64px;height:calc(100% - var(--dock) - 64px)}
 .fan-quickbar{left:8px;right:auto;width:330px;max-height:calc(100% - var(--dock) - 72px)}
}

@media(max-width:760px), (max-width:980px) and (max-height:600px){#mobile-settings-close{min-height:44px;padding:8px 12px;border:1px solid #52614a;border-radius:8px;font-size:14px}.panel-title .detail-badge{display:none}}
