 
.desk>*{min-width:0}
@media (max-width:900px),(max-aspect-ratio:1/1){
  html,body{height:100%;overflow:hidden}
  #room{height:100dvh;min-height:0;overflow:hidden}
  .wall{flex:none;height:clamp(150px,25vh,220px)}
  .vent,.notice,.observation-window{display:none}
  .wall-caption{right:3%;bottom:6%;width:42vw}
  .gauge-panel{width:98%;height:auto;bottom:auto;top:50%;transform:translate(-50%,-50%);padding:8px 8px 6px;gap:5px 6px;grid-template-rows:auto auto auto;align-items:center}
  .gauge,#g-charge,#g-integ{height:auto;width:100%}
  #g-charge,#g-integ{width:86%}
  .desk{height:calc(100dvh - clamp(150px,25vh,220px));display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr) 190px auto;
    grid-template-areas:"mon mon" "lev btn" "strip strip";padding:12px 10px 26px;gap:12px}
  .monitor{grid-area:mon;height:auto;min-height:0}
  .lever-box{grid-area:lev;height:190px}
  .button-box{grid-area:btn;height:190px}
  .desk-strip{grid-area:strip}
  .screen{font-size:13px}
  .key.tiny{display:block}
  .lever-track{min-height:0}
  .lever-track{--lx:26%}
  .lever-handle{width:56px}.lever-handle .shaft{width:56px}
  .detent{font-size:11px;left:calc(var(--lx) + 34px)}
  .key{min-height:46px;padding:10px 14px}
  .key.wide{min-width:100%;order:-1}
  .monitor.full{position:fixed;inset:0;z-index:60;height:100dvh;padding:0}
  .monitor.full .bezel{border-radius:0;padding:6px 6px 4px}
  .monitor.full .screen{border-radius:8px}
  .row{grid-template-columns:12px auto 1fr}
  .row .sr,.row .rl{grid-column:3;justify-self:start}
  .icons{grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}
  .ico{min-height:92px}
  .tb{min-height:42px}
  .nv{padding:9px 10px}
  .digital{font-size:9px;gap:6px 10px;padding:3px 8px}
  .lp span{font-size:6px}
}

@media (max-width:900px) and (max-height:560px){
  .wall{height:110px}
  .desk{height:calc(100dvh - 110px);grid-template-rows:minmax(0,1fr) 150px 38px;padding:6px 8px 8px;gap:6px}
  .lever-box,.button-box{height:150px;padding:6px 8px;gap:4px}
  .desk-strip{gap:6px;flex-wrap:nowrap}
  .desk-strip .key{min-height:32px;padding:5px 7px;font-size:9px}
  .wall-caption{bottom:4%;width:48vw}
  .wall-caption strong{font-size:10px}
  .digital{font-size:8px}
}
@media (max-width:480px){
  #scr-head span:first-child{display:none}
  #scr-head{justify-content:flex-end}
  .lp span{display:none}
  .lamp-row{gap:14px}
  .desk-strip .key{flex:1 1 30%}
}
 
@media (min-width:901px) and (max-height:640px){
  .wall{flex-basis:34%}
  .screen{font-size:11px}
  .notice{display:none}
  .lever-track{min-height:110px}
}
