/* Both categories use the same persistent map + scrollable directory. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.hub-header{padding:8px 12px;height:54px;gap:8px}
.hub-brand{font-size:10px;gap:6px;letter-spacing:1px}
.hub-brand svg{width:27px;height:27px}
.hub-brand small{font-size:6px;letter-spacing:1px}
.header-stats{gap:0;font-size:9px}
.header-stats>span:first-child{display:none}
.header-stats .ready-stat strong{font-size:14px;margin-right:4px}
.hub-header>.icon-button{height:32px;width:32px;font-size:13px}
.journey-tabs{top:57px;left:12px;right:12px;padding:3px}
.journey-tabs button{flex:1;min-height:34px;font-size:11px;padding:5px 8px}
.hub-intro,.map-status,.map-legend,.mobile-map-hint,.list-toggle,.mountain-detail{display:none}
#hubMap{top:100px;bottom:calc(292px + env(safe-area-inset-bottom));height:auto}
#hubViewer{height:100%}
.world-tools{top:108px;left:12px;right:12px;gap:2px;padding:2px;background:#0a191dcc}
.world-tools button{flex:1;min-height:32px;font-size:10px;padding:4px;white-space:nowrap}
.mountain-map-hint{display:block;position:absolute;left:14px;top:48px;margin:0;font-size:9px;color:#d2dddd;text-shadow:0 1px 4px #000;pointer-events:none}
.map-vignette{background:linear-gradient(180deg,rgba(3,15,21,.6),transparent 30%,transparent 68%,rgba(3,15,21,.5))}
.mountain-panel{display:flex;top:auto;bottom:calc(12px + env(safe-area-inset-bottom));left:10px;right:10px;width:auto;height:270px;padding:10px;border-radius:12px;z-index:6;overflow:hidden}
.panel-top{min-height:28px;margin:0 0 5px;flex-shrink:0}
.panel-top .eyebrow{font-size:11px;color:var(--ink);letter-spacing:0}
.panel-expand{display:block;margin-left:auto;min-height:28px;border:0;background:none;font-size:10px;color:var(--gold)}
.panel-top #listClose,.search-label,#regionFilter,.directory-note{display:none}
.search-wrap{display:none}
.list-open .search-wrap{display:flex}
.search-wrap input{height:38px;font-size:16px}
.status-filters{margin-top:5px;gap:2px}
.status-filters button{min-height:30px;padding:5px 3px;font-size:10px}
.list-caption{margin:7px 2px 4px;font-size:9px}
.mountain-list li{margin:1px 0}
.mountain-item{min-height:44px;padding:6px 5px;gap:8px}
.item-text strong{font-size:12px;overflow-wrap:anywhere}
.item-text small{font-size:9px;margin-top:2px}
.item-text em{font-size:8px}
.item-height{font-size:10px}
.row-enter{min-height:38px;font-size:10px}
.row-routes a{min-height:32px;padding:7px;font-size:10px}
.sheet-backdrop{position:fixed;inset:0;border:0;background:rgba(2,12,16,.45);z-index:9}
.list-open .sheet-backdrop{display:block}
.list-open .mountain-panel{z-index:10;bottom:calc(12px + env(safe-area-inset-bottom) + var(--mobile-viewport-bottom,0px));height:min(600px,calc(var(--mobile-viewport-height,100dvh) - 120px))}
.list-open #panelExpand{display:none}
.list-open .panel-top #listClose{display:block;height:32px;width:32px}
.list-open #regionFilter{display:block;min-height:36px;padding:6px 8px;font-size:16px}
.keyboard-open #regionFilter,.keyboard-open .status-filters{display:none}
.empty-list{font-size:11px;padding:8px 0}
.cesium-viewer-bottom{font-size:8px!important}
dialog{padding:21px}dialog form .icon-button{width:44px;height:44px}
@media(max-width:350px){.hub-brand svg{width:23px}.header-stats .ready-stat{font-size:8px}.item-text strong{font-size:11px}.item-height{display:none}}
@media(max-height:560px) and (min-width:500px){
  #hubMap{top:100px;bottom:0;right:290px;width:auto}
  .mountain-panel,.list-open .mountain-panel{top:108px;bottom:12px;left:auto;right:10px;width:274px;height:auto}
  .world-tools{right:302px}
}
