/* Phone navigation stays anchored while the full-size town scrolls underneath. */
@media (max-width:760px) {
 body[data-page="town"] .app-shell {height:100dvh; overflow:auto; scroll-snap-type:none; touch-action:pan-x pan-y; padding-bottom:160px; box-sizing:border-box;}
 body[data-page="town"] .town-stage {width:calc(max(100vw, (100dvh - 156px) * var(--public-map-aspect, 1.68)) * var(--public-map-zoom, 1)); margin:0; border:0;}
 body[data-page="town"] .signal-guide,
 body[data-page="town"] .signal-guide.is-collapsed {left:8px!important; right:8px!important; top:auto!important; bottom:max(8px,env(safe-area-inset-bottom))!important; width:auto!important; height:auto!important; max-height:65dvh!important; display:flex; flex-direction:column; box-sizing:border-box; padding:12px!important; border-radius:20px; touch-action:auto; overflow:hidden; background:rgba(12,20,32,.97);}
 body[data-page="town"] .signal-guide-top,
 body[data-page="town"] .signal-guide.is-collapsed .signal-guide-top {display:grid; grid-template-columns:1fr; gap:8px; margin-bottom:8px;}
 body[data-page="town"] .signal-guide-top p {display:none;}
 body[data-page="town"] .signal-guide-top h2 {font-size:16px!important;}
 body[data-page="town"] .signal-guide-top h2::after {content:"Swipe the town to explore"; display:block; margin-top:4px; font-size:11px; font-weight:400; color:#a7b6cc;}
 body[data-page="town"] .signal-guide-actions,
 body[data-page="town"] .signal-guide.is-collapsed .signal-guide-actions {display:grid; grid-template-columns:1fr 1fr; gap:8px;}
 body[data-page="town"] .signal-guide-actions > *,
 body[data-page="town"] .signal-guide.is-collapsed .signal-guide-actions > * {min-height:44px; font-size:12px; padding:8px;}
 body[data-page="town"] .signal-admin-action,
 body[data-page="town"] #signalMapButton,
 body[data-page="town"] #signalDeckResizeHandle {display:none!important;}
 body[data-page="town"] .signal-deck-tools {margin:0;}
 body[data-page="town"] .map-zoom-controls button,
 body[data-page="town"] .signal-guide.is-collapsed .map-zoom-controls button {min-width:44px; height:44px; font-size:18px;}
 body[data-page="town"] .map-zoom-controls [data-map-zoom-reset],
 body[data-page="town"] .signal-guide.is-collapsed .map-zoom-controls [data-map-zoom-reset] {min-width:76px; font-size:12px;}
 body[data-page="town"] .signal-guide-list {max-height:calc(65dvh - 250px); min-height:0; flex:1 1 auto; overflow:auto; overscroll-behavior:contain; touch-action:pan-y; grid-template-columns:1fr;}
 body[data-page="town"] .signal-guide-item {min-height:48px; padding:10px; gap:10px;}
 body[data-page="town"] .signal-guide-name {font-size:14px; line-height:1.35;}
 body[data-page="town"] .signal-guide-index {font-size:11px;}
 body[data-page="town"] .portal-ring {animation:none!important;}
 body[data-page="town"] .onboarding {padding:16px; overflow:auto; align-items:start;}
 body[data-page="town"] .onboarding-panel {margin:auto; padding:20px; gap:16px; max-height:none;}
 body[data-page="town"] .onboarding-panel h1 {font-size:32px; margin:8px 0;}
 body[data-page="town"] .onboarding-notes {display:none;}
 body[data-page="town"] .onboarding-logo {width:64px; height:64px;}
 body[data-page="town"] .onboarding-actions {grid-template-columns:1fr; margin-top:8px; gap:8px;}
 body[data-page="town"] .onboarding-actions button {min-height:48px; font-size:15px;}
 body[data-page="town"] .onboarding-actions a {min-height:44px;}
 body[data-page="town"] .video-dock {height:90dvh; max-height:90dvh; padding-bottom:max(16px,env(safe-area-inset-bottom));}
 body[data-page="town"] .collection {padding-bottom:24px;}
 body[data-page="town"] .dock-header h1 {font-size:22px;}
 body[data-page="town"] .icon-button {min-width:44px; min-height:44px;}
}
@media (prefers-reduced-motion:reduce) { .portal-ring {animation:none!important;} }
@media (max-width:760px) {
 body[data-page="town"] .signal-guide.is-collapsed {padding:8px 12px!important; max-height:none!important;}
 body[data-page="town"] .signal-guide.is-collapsed .signal-guide-top {grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:8px; margin:0;}
 body[data-page="town"] .signal-guide.is-collapsed .signal-guide-top h2 {font-size:14px!important;}
 body[data-page="town"] .signal-guide.is-collapsed .signal-guide-top h2::after,
 body[data-page="town"] .signal-guide.is-collapsed .signal-deck-tools,
 body[data-page="town"] .signal-guide.is-collapsed .signal-guide-list,
 body[data-page="town"] .signal-guide.is-collapsed .signal-guide-actions > :not(#signalGuideToggle) {display:none!important;}
 body[data-page="town"] .signal-guide.is-collapsed .signal-guide-actions {display:block;}
 body[data-page="town"] #signalGuideToggle {min-width:110px;}
}
