/* Phone and tablet navigation share one shell; desktop keeps the split map. */
.primary-nav-links{display:contents}
.nav-icon,.nav-contribute-icon{display:none}
.skip-link{z-index:1100}
.account-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.account-menu button,.account-menu .button{min-height:44px;white-space:normal}

@media(max-width:1023px){
  :root{--mobile-header-height:64px;--mobile-nav-height:64px;--mobile-bottom-inset:calc(var(--mobile-nav-height) + env(safe-area-inset-bottom,0px));--explore-tabs-height:61px}
  body{padding-bottom:var(--mobile-bottom-inset)}
  .site-header{position:sticky;top:0;z-index:1001;height:calc(var(--mobile-header-height) + env(safe-area-inset-top,0px));min-height:var(--mobile-header-height);padding:env(safe-area-inset-top,0px) max(12px,env(safe-area-inset-right,0px)) 0 max(12px,env(safe-area-inset-left,0px));gap:10px;flex-wrap:nowrap}
  .site-header .brand{gap:8px;max-width:none;min-width:0;flex:none;margin-right:0}
  .site-header .brand-logo{width:38px;height:38px}
  .site-header .brand strong{font-size:12px;line-height:1.22;letter-spacing:0}
  .site-header .brand small{display:none}
  .site-header .site-nav{width:auto;min-width:0;flex-wrap:nowrap;gap:6px;order:0;margin:0 0 0 auto;padding:0}
  .site-header .site-nav>.nav-owner{display:none}
  .site-header .site-nav>.nav-contribute{width:44px;height:44px;padding:0;flex:none}
  .nav-contribute-label{display:none}
  .nav-contribute-icon{display:block;font-size:26px;font-weight:400;line-height:1}
  .site-header .site-nav>.nav-account{display:block;max-width:92px;min-height:44px;margin:0;padding:10px;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .site-header .primary-nav-links{position:fixed;z-index:1002;inset:auto 0 0;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:4px;height:var(--mobile-bottom-inset);padding:4px max(8px,env(safe-area-inset-right,0px)) calc(4px + env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px));border-top:1px solid #4c421c;background:#101010;box-shadow:0 -4px 16px #0004}
  .site-header .primary-nav-links>button{display:flex;flex-direction:column;justify-content:center;gap:4px;min-width:0;min-height:0;margin:0;padding:5px 2px;border-radius:8px;white-space:normal;font-size:12px;line-height:1.15;text-align:center;background:transparent;color:#c9c9c9}
  .site-header .primary-nav-links>button.active{background:#302a0c;color:var(--gold)}
  .primary-nav-links .nav-icon{display:block;width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}
  .site-header button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
  .today-mobile-tabs{position:sticky;top:calc(var(--mobile-header-height) + env(safe-area-inset-top,0px));z-index:1000}
  .map-layout.public-explore{display:flex;flex-direction:column;height:auto;min-height:0}
  .public-explore>.map-column{min-height:0}
  .public-explore .map-wrap{height:clamp(320px,62dvh,640px);min-height:320px;flex:none}
  .public-explore>.story-panel{width:100%;max-height:none;overflow:visible;border-left:0;padding:24px clamp(20px,calc((100vw - 700px)/2),162px)}
  #main{scroll-margin-top:calc(var(--mobile-header-height) + env(safe-area-inset-top,0px) + 12px)}
  .public-explore>.map-column,.public-explore>.story-panel,.public-explore #nyfe-directions{scroll-margin-top:calc(var(--mobile-header-height) + env(safe-area-inset-top,0px) + var(--explore-tabs-height) + 12px)}
  #notice{bottom:calc(var(--mobile-bottom-inset) + 12px);max-width:calc(100vw - 24px)}
}
