/* RMS Hauntings: owned static assets, accessible overlays, mobile route cards. */
html{scrollbar-gutter:stable}
body.dialog-open{overflow:hidden}
.skip-link{position:fixed;top:10px;left:12px;z-index:100;transform:translateY(-180%);padding:12px 16px;background:#e9c9a0;color:#15100f;font:600 13px var(--sans)}
.skip-link:focus{transform:none}
.drawer,.sheet{overscroll-behavior:contain}
.drawer{max-height:100dvh;padding-bottom:env(safe-area-inset-bottom)}
.dr-body,.sheet-body{min-height:0;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.dr-close{width:44px;height:44px;z-index:5}
.dr-tabs button,.btn,.dock-open,#sheet-close,.tt .rm,.nrow{min-height:44px}
.dr-tabs button{flex:1}
.nrow:focus-visible{outline-offset:-3px}
.sheet{max-height:82dvh}
.sheet-acts{padding-bottom:max(18px,env(safe-area-inset-bottom))}
.sheet-body{overflow-x:auto}
.dock{bottom:max(18px,env(safe-area-inset-bottom));max-width:calc(100% - 24px)}
.dock-pill .dc{white-space:normal;line-height:1.4}
.dock-pill{gap:10px}
.sheet-note{margin:0 24px 12px;font:400 12px/1.5 var(--sans);color:var(--dim)}
.toast{max-width:calc(100% - 32px);text-align:center;bottom:max(22px,env(safe-area-inset-bottom));overflow-wrap:anywhere}
.hero.motion-paused,.hero.motion-paused *,.hero.motion-paused::before,.hero.motion-paused::after,.stage.motion-paused::before,.stage.motion-paused .map-scan{animation-play-state:paused!important}
body.page-backgrounded *,body.page-backgrounded *::before,body.page-backgrounded *::after{animation-play-state:paused!important}
@media(max-width:720px){
  .searchwrap input,.rform input,.rform select,.rform textarea{font-size:16px}
  .hero{min-height:clamp(570px,calc(100svh - 172px),660px)}
  .drawer{width:100%}
  .dr-head{padding:22px 20px 0}
  .dr-body{padding-left:20px;padding-right:20px}
  .dr-name{font-size:32px;line-height:1.12}
  .file-band{margin-bottom:20px;padding-right:34px;font-size:8px}
  .case-classification{font-size:8px;margin-bottom:12px}
  .dr-tabs{margin-left:-20px;margin-right:-20px;padding-left:14px;padding-right:14px}
  .dr-tabs button{min-width:0;padding:12px 8px;font-size:11px}
  .sheet{width:100%;max-height:86dvh}
  .sheet-head{padding:14px 16px 10px;gap:8px}
  .sheet-head h2{font-size:27px}
  .sheet-head .sm{order:3;width:100%;font-size:11px}
  .sheet-body{padding:0 16px}
  .sheet-note{margin:0 16px 12px}
  .sheet-acts{padding:12px 16px max(16px,env(safe-area-inset-bottom));gap:8px}
  .sheet-acts .btn{flex:1 1 calc(50% - 8px);padding:11px 8px;text-align:center;font-size:10px}
  .tt{min-width:0;width:100%}
  .tt thead{display:none}
  .tt tbody{display:grid;gap:10px;padding-bottom:8px}
  .tt tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:14px;border:1px solid var(--line)}
  .tt td{display:block;padding:0;border:none;min-width:0;overflow-wrap:anywhere}
  .tt td:nth-child(1){grid-column:2;grid-row:1;color:#f2c596}
  .tt td:nth-child(2){grid-column:1;grid-row:1/3;font:400 19px/1.25 var(--disp)}
  .tt td:nth-child(2) .sig{display:flex;margin-top:8px}
  .tt td:nth-child(3),.tt td:nth-child(4){grid-column:1/-1;font-size:12px}
  .tt td:nth-child(5){grid-column:1;display:flex;gap:8px;align-items:center}
  .tt td:nth-child(6){grid-column:2;align-self:center}
  .tt .rm{min-width:44px;min-height:44px;border:1px solid var(--line)}
  .tt .rm:disabled{opacity:.35}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}

/* Inactive status messages must not paint empty borders in any viewport. */
.toast{visibility:hidden;opacity:0;pointer-events:none}
.toast.show{visibility:visible;opacity:1}

/* A saved stop remains a direct path back to its research record. */
.route-record{display:block;background:none;border:0;color:inherit;font:inherit;text-align:left;padding:7px 0;min-height:44px;cursor:pointer;max-width:100%;overflow-wrap:anywhere}
.route-record:hover{color:#f2c596}
.route-open-label{display:block;font:500 10px/1.4 var(--sans);letter-spacing:.07em;color:#d6aa7d;margin-top:5px}
.tt .order-controls{white-space:nowrap}
