/* =====================================================================
   Photo mode (26-photo-mode.js): interface hidden, camera controls in one bar
   ===================================================================== */
body.photo-mode :is(.hud,.panel,.panel-handle,.viewbar,.statbar,.tabs,.gizmo,#roomLabels,#keysCard,#walkHud,.rail,#toast){display:none!important}
.pm-bar{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:80;display:flex;align-items:center;gap:18px;
  padding:10px 10px 10px 12px;border-radius:999px;background:rgba(18,20,24,.78);color:#f4f4f2;
  backdrop-filter:blur(16px) saturate(1.2);-webkit-backdrop-filter:blur(16px) saturate(1.2);
  box-shadow:0 14px 44px rgba(0,0,0,.32),inset 0 0 0 1px rgba(255,255,255,.08);font-size:12px;white-space:nowrap}
.pm-bar[hidden]{display:none}
.pm-x{width:32px;height:32px;flex:none;border-radius:50%;border:0;background:rgba(255,255,255,.1);color:#f4f4f2;font:600 18px/1 system-ui,sans-serif;cursor:pointer}
.pm-x:hover{background:rgba(255,255,255,.18)}
.pm-f{display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;column-gap:8px;align-items:center}
.pm-l{grid-column:1;grid-row:1;color:#9ea3ab;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.pm-o{grid-column:2;grid-row:1;justify-self:end;font:600 11px/1 'JetBrains Mono',monospace;color:#f4f4f2}
.pm-f input{grid-column:1/3;grid-row:2;width:132px;margin:6px 0 0;accent-color:#f59e0b;height:4px}
.pm-tools{display:flex;gap:6px;padding-left:16px;border-left:1px solid rgba(255,255,255,.12)}
.pm-b{font:inherit;font-weight:600;color:#e9eaec;background:transparent;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:6px 12px;cursor:pointer}
.pm-b:hover{background:rgba(255,255,255,.08)}
.pm-b[aria-pressed="true"]{background:rgba(245,158,11,.22);border-color:#f59e0b;color:#fff}
.pm-shot{font:inherit;font-size:13px;font-weight:700;color:#1a1204;background:#f59e0b;border:0;border-radius:999px;padding:10px 20px;cursor:pointer;min-width:104px}
.pm-shot:hover{background:#fbbf24}.pm-shot:disabled{opacity:.7;cursor:progress}
.pm-x:focus-visible,.pm-b:focus-visible,.pm-shot:focus-visible{outline:2px solid #fbbf24;outline-offset:2px}
.pm-grid{position:fixed;inset:0;z-index:70;pointer-events:none;
  background:linear-gradient(90deg,transparent calc(33.33% - .5px),rgba(255,255,255,.45) calc(33.33% - .5px),rgba(255,255,255,.45) calc(33.33% + .5px),transparent calc(33.33% + .5px),transparent calc(66.66% - .5px),rgba(255,255,255,.45) calc(66.66% - .5px),rgba(255,255,255,.45) calc(66.66% + .5px),transparent calc(66.66% + .5px)),
  linear-gradient(0deg,transparent calc(33.33% - .5px),rgba(255,255,255,.45) calc(33.33% - .5px),rgba(255,255,255,.45) calc(33.33% + .5px),transparent calc(33.33% + .5px),transparent calc(66.66% - .5px),rgba(255,255,255,.45) calc(66.66% - .5px),rgba(255,255,255,.45) calc(66.66% + .5px),transparent calc(66.66% + .5px))}
.pm-grid[hidden],.pm-hint[hidden]{display:none}
.pm-hint{position:fixed;top:20px;left:50%;transform:translateX(-50%);z-index:80;padding:7px 14px;border-radius:999px;background:rgba(14,16,20,.6);color:#f2f2f0;font-size:12px}
@media (max-width:760px){.pm-bar{gap:10px;bottom:12px}.pm-f input{width:84px}.pm-tools{padding-left:10px}}
/* the loading screen stays up while photo assets stream in (25-photo-assets.js) */
#loader.holding{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
