/* PSS-WORLD-01.Q6 / MOBILE-CINEMA-HUD. Additive replacement for stacked mobile overlays. */
.mobile-toolbar,.mobile-panel{display:none}
.mobile-toolbar button,.mobile-panel button{font:inherit;color:inherit}
.mobile-toolbar .mobile-hud-icon{border:1px solid #e2b7f05c;background:#201329ad;backdrop-filter:blur(9px);min-width:45px;height:45px;border-radius:13px;color:#ffe2bc;display:flex;justify-content:center;align-items:center;font-size:22px}
.mobile-toolbar .mobile-hud-icon[aria-expanded=true]{background:#6f375eeb}
.mobile-toolbar .mobile-hud-quest{background:#211228a6;border:1px solid #cda3d053;color:#ffe2ba;min-width:72px;height:45px;border-radius:13px;font-size:13px;font-weight:700;letter-spacing:.2px}
.mobile-panel{background:#1a102ce9;border:1px solid #dab8e96c;color:#f8e9ef;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);box-shadow:0 15px 60px #08010cd9;border-radius:17px;padding:14px}
.mobile-panel .hud-head{display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:1.25px;color:#e9c5e8;margin:0 0 10px}
.mobile-panel .hud-head button{border:0;background:transparent;min-width:40px;min-height:38px;font-size:22px}
.mobile-panel .hud-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.mobile-panel button{min-height:43px;background:#392246;color:#fae4ef;border:1px solid #9877a850;border-radius:10px;font-size:12px}
.mobile-panel button[aria-pressed=true]{background:#ffcb91;color:#291628}
.mobile-panel .hud-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:8px}
.mobile-panel .hud-option-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.mobile-panel label{display:block;font-size:11px;color:#f1d6e3}
.mobile-panel select{display:block;max-width:100%;min-width:0;width:100%;height:43px;border:1px solid #9973ab;background:#2a1b3c;color:#ffe6c5;border-radius:10px;margin-top:5px;padding:0 7px}
.mobile-panel .hud-foot{margin:11px 2px 1px;color:#cdb3c9;font-size:10px;line-height:1.5}
.mobile-toolbar .hud-place{flex:1;text-align:center;min-width:0;color:#f9dbb8;text-shadow:0 2px 8px #170c20;font:600 9px/1.35 var(--sans);letter-spacing:1.45px}
.mobile-toolbar .hud-place strong{display:block;font:400 13px/1.2 var(--serif);letter-spacing:.1px;color:#fff0dc}
@media (max-width:760px), (max-height:550px) and (pointer:coarse){
  html,body{overflow:hidden;height:100%;width:100%;overscroll-behavior:none}
  #world{height:100dvh;min-height:0!important;width:100%;overflow:hidden;overscroll-behavior:contain}
  body:not(.exploring):not(.walking):not(.flying):not(.touring) #world{min-height:0!important}
  .masthead,.quest-card,.mode-switch,.world-tools,.spook-control,.scene-bottom,.scene-credits,.walk-hint,.district-badge,.fallback,.art-tools{display:none!important}
  .mobile-toolbar{position:absolute;left:max(9px,env(safe-area-inset-left));right:max(9px,env(safe-area-inset-right));top:calc(env(safe-area-inset-top) + 7px);height:46px;display:flex;gap:8px;align-items:center;z-index:8;pointer-events:auto}
  .mobile-panel:not([hidden]){position:absolute;left:max(9px,env(safe-area-inset-left));right:max(9px,env(safe-area-inset-right));top:calc(env(safe-area-inset-top) + 61px);max-height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 78px);overflow-y:auto;display:block;z-index:9}
  .hud-minimal .mobile-toolbar>:not(#hud-toggle){display:none}
  .hud-minimal .mobile-toolbar{right:auto}
  .hud-minimal .mobile-toolbar #hud-toggle{opacity:.6}
  .hud-minimal .mobile-panel{display:none!important}
  .invitation{left:18px;right:17px;bottom:calc(env(safe-area-inset-bottom) + clamp(33px,8dvh,95px));max-width:min(420px,calc(100% - 35px));padding:15px 16px 16px;border-radius:17px;background:linear-gradient(90deg,#14091fdb,#1107187a 82%,transparent);pointer-events:auto}
  .invitation .eyebrow{font-size:8px;letter-spacing:1px;margin:0 0 7px}
  .invitation h1{font-size:clamp(36px,10vw,52px);line-height:1.02;margin:0;letter-spacing:-.9px}
  .invitation .intro-copy{font-size:11px;line-height:1.45;margin:9px 0 10px;max-width:300px}
  .invitation .intro-copy br{display:none}
  .invitation .intro-actions{display:flex;flex-wrap:nowrap;gap:7px}
  .invitation .intro-actions .button{min-width:0;flex:1;padding:8px 9px;font-size:10px;min-height:43px;gap:5px}
  .invitation .intro-actions .button:last-child{max-width:130px}
  .invitation .scene-label{display:none}
  .walking .invitation,.flying .invitation,.touring .invitation,.exploring .invitation{display:none!important}
  .vignette{background:linear-gradient(0deg,#0a061585 0,transparent 32%,transparent 86%,#0a07115e 100%);pointer-events:none}
  .render-fallback .vignette{background:linear-gradient(0deg,#0a061174 0,transparent 40%,transparent 84%,#0a06113f 100%)}
  .move-pad:not([hidden]),.look-pad:not([hidden]){width:98px;height:98px;bottom:calc(env(safe-area-inset-bottom) + 16px);z-index:7;border:1px solid #f4c6e779;background:#21143155;box-shadow:0 0 20px #240b292a,inset 0 0 14px #06020950;opacity:.56;display:flex}
  .move-pad{left:max(14px,env(safe-area-inset-left))}
  .move-pad span{width:44px;height:44px;top:26px;left:26px;border:1.5px solid #ffe5c0;background:#edb66c88;box-shadow:0 0 10px #ffb6695b}
  .move-pad small,.look-pad small{font-size:8px;letter-spacing:1px;bottom:3px}
  .look-pad{right:max(14px,env(safe-area-inset-right))}
  .look-pad .look-ring{font-size:39px;opacity:.7}
  .fly-controls:not([hidden]){right:calc(env(safe-area-inset-right) + 17px);bottom:calc(env(safe-area-inset-bottom) + 124px);z-index:7}
  .fly-controls button{width:54px;min-height:43px;font-size:11px;background:#372247a8}
  .button-controls .touch-controls:not([hidden]){display:grid;left:12px;bottom:calc(env(safe-area-inset-bottom) + 14px);z-index:7;grid-template-columns:44px 44px 44px;grid-template-rows:44px 44px}
  .touch-controls button{min-width:44px;min-height:44px;width:44px;height:44px}
  .loading{top:auto;bottom:calc(env(safe-area-inset-bottom) + 24px);left:50%;right:auto;transform:translateX(-50%);max-width:calc(100vw - 40px);padding:10px 12px;min-width:0;width:auto;white-space:nowrap;font-size:10px}
  .loading small{font-size:9px}
  .drawer,.town-map-drawer{height:min(92dvh,820px);max-height:92dvh;margin:auto 0 0;padding:23px 17px env(safe-area-inset-bottom);overflow-y:auto}
  #crosshair{opacity:.7}
  #toast{z-index:10;bottom:calc(env(safe-area-inset-bottom) + 118px);max-width:calc(100% - 36px);pointer-events:none}
  #xr-overlay{z-index:20}
}
@media(max-height:560px) and (max-width:900px){
  .invitation{bottom:calc(env(safe-area-inset-bottom) + 15px);max-width:340px;padding:12px}
  .invitation h1{font-size:32px}
  .invitation .intro-copy{display:none}
  .mobile-panel:not([hidden]){max-width:430px;right:auto}
}
@media(prefers-reduced-motion:reduce){.move-pad,.look-pad{transition:none!important}}
