/* A quiet, full-sky detour from Concept 5. */
.pillbtn.stargaze-trigger{cursor:pointer;font-style:italic;border-color:rgba(240,238,230,.25)}
.menu > .menu-stargaze{align-self:flex-start;min-height:36px;margin-top:8px;opacity:0;transform:translateX(-18px);transition:opacity .4s ease .25s,transform .5s var(--ease-out) .25s,background .3s,color .3s,border-color .3s}
.menu.open > .menu-stargaze{opacity:1;transform:none}
@media(max-width:700px){.footer .stargaze-trigger{display:none}}
@media(max-width:360px){.footer nav{gap:6px}.footer nav .pillbtn{padding:0 10px;font-size:11px;gap:5px}}
@media(max-width:700px) and (max-height:700px){
  #menu{justify-content:flex-start;gap:8px;padding-top:80px;overflow-y:auto}
  #menu > a{height:44px;flex:none}
  #menu > .menu-stargaze{flex:none}
  #menu .footer.footer-abs{position:relative;left:auto;right:auto;bottom:auto;width:100%;margin-top:24px;flex:none}
}
html.stargaze-lock,html.stargaze-lock body{overflow:hidden!important;overscroll-behavior:none;scroll-snap-type:none!important}
body > .nav{transition:opacity .45s ease}
html.stargazing main,html.stargazing body > .nav,html.stargazing .menu{opacity:0!important;pointer-events:none!important}
.stargaze{position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;overflow:hidden;background:#080f24;color:#f0eee6;opacity:0;transition:opacity .65s ease;overscroll-behavior:none;color-scheme:dark}
/* The original scene stays still while the dialog replaces it one square at a time. */
html.stargaze-entering main,html.stargaze-entering body > .nav,html.stargaze-entering .menu{opacity:1!important;transition:none!important}
html.stargaze-entering main{transform:none!important}
html.stargaze-entering.menu-open main{opacity:0!important}
.stargaze{mask-mode:alpha;mask-repeat:no-repeat;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;-webkit-mask-size:100% 100%}
.stargaze.is-pixel-entering{opacity:1;transition:none}
.stargaze::backdrop{background:transparent}
.stargaze.is-open{opacity:1}
.stargaze canvas{position:absolute;inset:0;display:block;width:100%;height:100%;touch-action:none;cursor:grab;outline-offset:-4px}
.stargaze canvas.is-dragging{cursor:grabbing}
.stargaze-header{position:absolute;z-index:1;inset:max(26px,env(safe-area-inset-top)) max(32px,env(safe-area-inset-right)) auto max(32px,env(safe-area-inset-left));display:flex;justify-content:space-between;align-items:flex-start;gap:24px;pointer-events:none}
.stargaze-title{margin:0;font:300 clamp(30px,4vw,46px)/1.1 var(--display);letter-spacing:-.035em;text-shadow:0 2px 20px #080f24}
.stargaze-kicker{display:block;margin:8px 0 0;font:350 11px/1.5 var(--text);letter-spacing:.08em;color:#c0c9dd;text-shadow:0 2px 10px #080f24}
.stargaze button,.stargaze select{font:350 12px/1.3 var(--text);color:inherit;pointer-events:auto}
.stargaze button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid rgba(222,229,245,.3);border-radius:999px;background:rgba(8,15,36,.72);cursor:pointer;transition:background .2s,border-color .2s}
.stargaze button:hover{background:#263653;border-color:#d3daea}
.stargaze .stargaze-close{padding:0 20px;gap:12px;flex-shrink:0}
.stargaze-close span[aria-hidden]{font:300 20px/1 system-ui}
.stargaze-tools{position:absolute;z-index:1;left:50%;bottom:max(28px,env(safe-area-inset-bottom));transform:translateX(-50%);width:max-content;max-width:calc(100% - 48px);text-align:center;pointer-events:none}
.stargaze-help{margin:0 0 14px;font:350 11px/1.5 var(--text);color:#c0c9dd;text-shadow:0 2px 12px #080f24}
.stargaze-controls{display:flex;align-items:center;justify-content:center;gap:8px;pointer-events:auto}
.stargaze-find{position:relative;display:block;width:230px;max-width:100%}
.stargaze select{appearance:none;width:100%;min-height:46px;padding:0 38px 0 18px;border:1px solid rgba(222,229,245,.3);border-radius:999px;background:#101c34 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23f0eee6' stroke-width='1.2'/%3E%3C/svg%3E") no-repeat right 17px center;background-size:10px 7px;cursor:pointer}
.stargaze option{background:#101c34;color:#f0eee6}
.stargaze-zoom{display:flex;gap:8px}
.stargaze .stargaze-step{width:46px;min-height:46px;font:300 25px/1 system-ui}
.stargaze .stargaze-reset{min-height:46px;padding:0 18px}
.stargaze-status{min-height:18px;margin:10px 0 0;color:#a8b7d0;font:350 10px/1.5 var(--text);letter-spacing:.06em}
.stargaze-error{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(390px,calc(100% - 56px));text-align:center;font:350 16px/1.7 var(--text)}
.stargaze .stargaze-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:600px){
  .stargaze-header{inset:max(20px,env(safe-area-inset-top)) max(22px,env(safe-area-inset-right)) auto max(22px,env(safe-area-inset-left));gap:16px}
  .stargaze-title{font-size:32px}
  .stargaze-kicker{max-width:140px;font-size:10px;letter-spacing:.03em}
  .stargaze .stargaze-close{min-height:42px;padding:0 13px;font-size:11px;gap:9px}
  .stargaze-close .stargaze-close-wide{display:none}
  .stargaze-tools{bottom:max(20px,env(safe-area-inset-bottom));max-width:calc(100% - 40px);width:350px}
  .stargaze-help{font-size:10px;margin-bottom:12px}
  .stargaze-controls{flex-wrap:wrap;gap:10px}
  .stargaze-find{width:100%}
  .stargaze-status{font-size:9px;margin-top:9px}
}
@media(prefers-reduced-motion:reduce){
  .stargaze,main,body > .nav{transition:none!important}
}
