/* DETPACK mobile layer: loaded after exhibit styles. */
.det-mobile-dock{display:none}
@media(max-width:720px){
  html{scroll-padding-bottom:92px}
  body{padding-bottom:calc(78px + env(safe-area-inset-bottom,0px));-webkit-text-size-adjust:100%}
  button,a,input,textarea{touch-action:manipulation}
  .det-mobile-dock{position:fixed;z-index:99999;left:8px;right:8px;bottom:calc(7px + env(safe-area-inset-bottom,0px));display:grid;grid-template-columns:repeat(5,1fr);gap:3px;padding:5px;border:1px solid #4cf7ff55;border-radius:15px;background:#04050aed;box-shadow:0 8px 30px #000b,0 0 22px #4cf7ff18;backdrop-filter:blur(10px);font:700 9px ui-monospace,SFMono-Regular,Menlo,monospace}
  .det-mobile-dock a{min-width:0;min-height:51px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#a8b2c7;text-decoration:none;border-radius:10px;-webkit-tap-highlight-color:transparent}
  .det-mobile-dock a:active,.det-mobile-dock a.current{background:#152035;color:#69f6ff}
  .det-mobile-dock .ico{font-size:19px;line-height:1}
  .det-mobile-dock .lbl{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}

  /* Main neon ops console: turn dense decks into thumb-swipe shelves. */
  .shell{width:calc(100% - 14px)!important;padding-top:10px!important}
  .mast{margin-inline:4px!important}.logo{font-size:.7rem!important}.mastRight{font-size:.56rem!important}.mastRight .clock{display:none!important}
  .hero{min-height:0!important;border-radius:18px!important}.heroCopy{padding:26px 18px!important}.hero h1{font-size:clamp(4rem,21vw,6.1rem)!important;margin-block:18px 24px!important}.hero p{font-size:.91rem!important;line-height:1.6!important}.heroTags b,.heroTags a{min-height:39px;display:inline-flex;align-items:center;font-size:.62rem!important}
  .orbital{min-height:300px!important}.globe{width:220px!important}.o1,.o2{width:290px!important}.orbitLabel{font-size:.56rem!important}
  .vitals{grid-template-columns:1fr 1fr!important;gap:7px!important}.vitals article{display:block!important;min-height:0!important;padding:11px!important;text-align:center}.dial{margin:0 auto 9px;width:68px!important;height:68px!important}.vitals h3{font-size:.68rem!important}.vitals p{font-size:.58rem!important}
  .counts{grid-template-columns:1fr 1fr!important}.counts div{padding:11px!important}.counts b{font-size:1.05rem!important}.subsystems{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:7px!important;padding-bottom:5px;scrollbar-width:none}.subsystems::-webkit-scrollbar{display:none}.subsystems .sub{min-width:67vw;scroll-snap-align:start}
  .matrix{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:8px!important;padding-bottom:6px;scrollbar-width:none}.matrix::-webkit-scrollbar{display:none}.matrix .node{min-width:86vw;scroll-snap-align:center}
  .split{display:block!important}.split>section{margin-bottom:16px}.terminal,.radar{height:310px!important}
  .vaultGrid{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory}.vaultGrid .file{min-width:84vw;scroll-snap-align:start;border-right:1px solid #1b1025!important}.triple{display:block!important}.triple>section{margin-bottom:16px}.handles,.pressure,.deck{height:300px!important}.world{min-height:280px!important}
  .sectionTitle{margin-top:24px!important}.sectionTitle small{display:none!important}

  /* Museum lobby + exhibits. */
  .wrap{width:calc(100% - 16px)!important;padding-top:14px!important}
  .nav{gap:8px!important;align-items:flex-start!important;font-size:9px!important}.nav span{text-align:right}
  .hero{padding:26px 18px!important}.hero h1{font-size:clamp(3rem,18vw,5rem)!important}.hero p{font-size:13px!important}
  .grid{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:9px!important;padding:0 2px 8px;scrollbar-width:none}.grid::-webkit-scrollbar{display:none}.grid .card{min-width:84vw;scroll-snap-align:center;min-height:235px!important}.grid .card a,.grid .button{min-height:44px;display:inline-flex;align-items:center}
  .panel{padding:14px!important}.downloads a,.button{min-height:44px;display:inline-flex!important;align-items:center!important}.source{padding:14px 0!important}.source a{min-height:44px;display:inline-flex;align-items:center}
  audio{min-height:48px}.scope{height:145px!important}

  /* 1997 page: retain crimes against design, remove crimes against thumbs. */
  body>table,body table{font-size:13px}.box{padding:10px!important}.nav a{min-height:42px;display:inline-flex;align-items:center}.counter{font-size:20px!important}

  /* Virtual beige machine. */
  .page{width:calc(100% - 4px)!important;padding-top:4px!important}.museumNav{padding:0 7px;margin-bottom:8px!important}
  .machine{border-radius:12px!important}.bezelTop{padding:8px 9px!important;gap:7px!important}.badge{font-size:10px}.machineButtons{gap:4px!important}.machineButtons button{min-height:38px;min-width:48px;font-size:8px!important}.power{display:none!important}
  .screenFrame{margin:0 4px!important;border-width:6px!important;border-radius:10px!important}.screen{height:620px!important;min-height:620px!important;max-height:none!important}.dosView{padding:10px!important;font-size:15px!important}.dosOut{padding-bottom:4px}.prompt{position:sticky;bottom:0;background:#020402;padding-top:7px}.prompt input{font-size:16px!important;min-height:32px}
  .bezelBottom{padding:7px!important}.quick{display:flex!important;overflow-x:auto;flex-wrap:nowrap!important;gap:5px!important;padding-bottom:2px;scrollbar-width:none}.quick::-webkit-scrollbar{display:none}.quick button{flex:0 0 auto;min-height:44px;min-width:58px;font-size:10px!important;padding:6px 10px!important}
  .manual{margin-top:10px!important;padding:13px!important}.manual h1{font-size:18px!important}.featureGrid{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:7px!important;scrollbar-width:none}.featureGrid::-webkit-scrollbar{display:none}.featureGrid article{min-width:78vw;scroll-snap-align:center;min-height:120px!important}
  .winTopbar{height:31px!important}.winTopbar button{min-width:43px;min-height:27px}.programManager{left:0!important;top:31px!important;width:100%!important;max-width:100%!important;height:calc(100% - 31px)!important}.titlebar{height:31px!important}.titlebar button{width:31px!important;height:27px!important}.titlebar b{font-size:13px!important}.menu{height:28px!important;font-size:12px!important;overflow:hidden;white-space:nowrap}.groupTitle{font-size:12px!important}.icons{grid-template-columns:repeat(3,1fr)!important;gap:7px!important;padding:8px!important}.icons button{min-height:86px!important;font-size:12px!important;padding:5px!important}.icons span{font-size:30px!important}
  #windows .window{left:0!important;top:31px!important;width:100%!important;max-width:100%!important;height:calc(100% - 31px)!important;box-shadow:none!important}.appBody{max-height:none!important}.notepad textarea{height:calc(100% - 48px)!important;min-height:390px}.fileLayout{min-height:500px!important}.treePane{display:none}.fileLayout{grid-template-columns:1fr!important}.dosPromptWin .appBody{height:520px!important}.mineWin{width:100%!important}.mineGrid{justify-content:center}.control,.about,.notepad,.fileman,.dosPromptWin,.skiWin{width:100%!important;max-width:100%!important}
  .skiBody{padding:4px!important}.skiHud{grid-template-columns:1fr 1fr!important}.skiStage canvas{height:300px!important;max-height:300px!important}.skiControls{grid-template-columns:repeat(3,1fr)!important;gap:6px!important}.skiControls .skiHint{grid-column:1/-1!important;order:10}.skiControls button{min-height:50px!important;font-size:12px!important}.skiFooter{font-size:9px!important}
}
@media(max-width:720px){
  .det-mobile-hint{margin:6px 4px 12px;padding:9px 11px;border:1px solid #4cf7ff38;border-radius:10px;background:#071018d9;color:#9cb3c8;font:700 10px/1.35 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.06em;text-align:center}
  body:has(.construction) table,body:has(.construction) tbody,body:has(.construction) tr,body:has(.construction) td{display:block!important;width:100%!important}
  body:has(.construction) td{margin-bottom:3px!important}
}
