/* Boot overlay for the hidden text-mode trigger. */
/* Boot overlay */
#pb-boot{
  position:fixed;inset:0;z-index:10000;background:#00080d;color:#4fd8ff;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8em;overflow:hidden;
  font-family:"Geist Mono Variable","Geist Mono",ui-monospace,Menlo,monospace;
  font-size:clamp(10px,min(1.9vw,2.2vh),18px);line-height:1.35;
  transition:opacity .35s;cursor:pointer;
}
#pb-boot.pb-out{opacity:0}
#pb-boot pre{margin:0;font:inherit;text-shadow:0 0 6px rgba(79,216,255,.6);white-space:pre}
#pb-boot .pb-art{font-size:clamp(4px,min(1.05vw,1.1vh),10px);line-height:1.08}
#pb-boot .pb-txt{min-height:12em;align-self:center}
#pb-boot .pb-cur{display:inline-block;width:.6em;background:#4fd8ff;margin-left:1px;animation:pb-blink .5s steps(1) infinite}
#pb-boot .pb-cur::before{content:"\00a0"}
@keyframes pb-blink{50%{opacity:0}}
@media (prefers-reduced-motion:reduce){
  #pb-boot{transition:none}
  #pb-boot .pb-cur{animation:none}
}

/* Hard-coded white utilities become phosphor / dark panel */
html.pipboy [class*="text-white"]{color:var(--pb-fg)}
html.pipboy [class~="bg-white"]{background-color:color-mix(in srgb,var(--pb-fg) 8%,var(--pb-bg))}

/* Text-only: collapse boxes that only existed to frame an image */
html.pipboy :has(> img[data-pb]),
html.pipboy :has(> picture > img[data-pb]){
  aspect-ratio:auto!important;height:auto!important;min-height:0!important;
}

/* Leaflet chrome */
html.pipboy .leaflet-bar a,
html.pipboy .leaflet-control-attribution{
  background:var(--pb-bg)!important;color:var(--pb-fg)!important;border-color:var(--border)!important;
}
html.pipboy .leaflet-control-attribution a{color:var(--pb-fg)!important}
html.pipboy .leaflet-popup-content-wrapper,
html.pipboy .leaflet-popup-tip{background:var(--popover)!important;color:var(--pb-fg)!important}

/* Full-screen photo heroes collapse to their text */
html.pipboy [class*="h-screen"]:has(img[data-pb]),
html.pipboy [class*="h-[100svh]"]:has(img[data-pb]),
html.pipboy [class*="h-[100vh]"]:has(img[data-pb]),
html.pipboy [class*="min-h-screen"]:has(img[data-pb]){height:auto!important;min-height:0!important}
html.pipboy .category-tile{height:auto!important;min-height:0!important;padding:5rem 0 1.5rem}
html.pipboy .category-tile > .absolute{position:static!important;background:none!important;padding:0 1.5rem!important}
html.pipboy .category-tile{display:block}
