@media (max-width:980px){
 body.br-harta-classic .reader-header{min-height:58px}
 .br-map2d-shell{padding:0;min-height:calc(100svh - 58px)}
 .br-map2d-workspace{border-radius:0;border-left:0;border-right:0;box-shadow:none}
 .br-map2d-commandbar{grid-template-columns:1fr auto;gap:8px;min-height:66px;padding:8px 10px 8px 13px}.br-map2d-titleblock h1{font-size:17px}.br-map2d-titleblock p,.br-map2d-kicker{display:none}.br-maptype-switch{grid-column:1/-1;grid-row:2;min-width:0;width:100%}.br-maptype-switch button{padding:8px 6px;font-size:10px}.br-map2d-linkbtn{display:none}.br-map2d-iconbtn{width:38px;min-height:38px}
 .br-map2d-stage{height:calc(100svh - 152px);min-height:520px}
 .br-map-layers-fab{right:10px;top:10px;min-width:92px;height:38px;padding:0 10px;font-size:10px}.br-active-layers{left:10px;top:10px;max-width:calc(100% - 118px)}.br-active-empty{display:none}.br-active-chip{height:30px;font-size:9px}
 .br-source-fab{right:10px;bottom:68px;height:28px;font-size:8px}.br-map2d-quickdock{left:8px;right:8px;bottom:8px;transform:none;grid-template-columns:repeat(5,1fr);gap:2px;padding:4px;border-radius:15px}.br-quick-btn{min-width:0;min-height:48px;grid-template-columns:1fr;grid-template-rows:21px 14px;text-align:center;padding:4px 2px;gap:0}.br-quick-icon{font-size:17px}.br-quick-label{font-size:8px;overflow:hidden;text-overflow:ellipsis}
 .br-timeline-dock{left:8px;right:8px;translate:0;width:auto;bottom:70px;grid-template-columns:42px 1fr 68px;gap:5px;padding:8px}.br-timeline-dock #timeline-label{grid-column:2/4}.br-timeline-dock .rem-map-datetime-wrap{grid-column:1/-1}.br-timeline-dock #timeline-slider{grid-column:1/-1}.br-timeline-dock #timeline-reset-btn{grid-column:1/-1}.br-rotation-dock{left:8px;bottom:70px;width:calc(100% - 16px)}
 .br-map2d-panel{top:auto;left:0;right:0;bottom:0;width:100%;height:min(78svh,760px);border-radius:22px 22px 0 0;border-left:0;border-right:0;border-bottom:0;transform:translateY(calc(100% + 28px))}.br-map2d-panel.is-open{transform:none}.br-panel-head{padding:13px 14px 10px}.br-panel-tabs{padding:7px 8px}.br-panel-tab{min-height:34px;padding:0 10px}.br-panel-body{padding:10px 10px 22px}.rem-map-layer-grid{grid-template-columns:1fr}.rem-map-ol-toggle{min-height:58px}.rem-map-ol-toggle small{font-size:9px}.rem-map-layer-group{padding:10px}.br-route-actions{grid-template-columns:1fr}
 .rem-moon-hud,.rem-cloud-hud{right:10px;top:58px;max-width:255px}.rem-cloud-hud{top:116px}
 .ol-zoom{left:10px!important;top:55px!important}
 #help-overlay{padding:8px;align-items:flex-end}#help-content{max-height:86svh;border-radius:20px 20px 8px 8px}.br-help-body{padding:14px}
}
@media (max-width:560px){
 .br-map2d-titleblock h1{font-size:15px}.br-map2d-topactions{gap:5px}.br-map2d-iconbtn{width:36px}.br-map2d-stage{height:calc(100svh - 146px);min-height:500px}.br-map2d-quickdock{grid-template-columns:repeat(5,1fr)}.br-quick-label{font-size:7.5px}.rem-moon-hud,.rem-cloud-hud{max-width:210px}.rem-moon-hud-copy small,.rem-cloud-hud-copy small{font-size:8px}
}

@media (max-width:980px){
 .br-measure-slots{grid-template-columns:repeat(5,minmax(48px,1fr));overflow-x:auto;padding-bottom:2px}.br-measure-slots button{height:44px;padding:0 6px}.br-measure-actions{grid-template-columns:1fr}.br-measure-actions button:last-child{grid-column:auto}.br-measure-title{align-items:flex-start}.br-measure-power{min-width:76px}
 .br-measure-quickbar{left:8px;right:8px;bottom:68px;transform:none;grid-template-columns:repeat(4,1fr);gap:3px;padding:4px;border-radius:14px}.br-measure-quick-mode{grid-column:1/3;height:36px}.br-measure-quickbar>[data-br-measure-slot],.br-measure-quick-action{height:36px}.br-measure-quickbar>[data-br-measure-slot]{font-size:8px}.br-measure-quickbar>[data-br-measure-slot]:nth-of-type(5){grid-column:auto}.br-measure-mapcard{min-width:154px;max-width:190px}.br-measure-mapcard-body{font-size:8.5px}
 .br-map2d-quickdock{bottom:8px}
}
@media (max-width:560px){
 .br-measure-mode button{min-height:50px;padding:7px 8px}.br-measure-mode button b{font-size:11px}.br-measure-slots{gap:4px}.br-measure-slots button{grid-template-columns:8px 1fr auto;gap:3px}.br-measure-slots button i{width:7px;height:7px}.br-measure-slots button b{font-size:9px}.br-measure-quickbar{grid-template-columns:repeat(4,1fr)}
}

/* C3 contextual controls — mobile is intentionally separate */
@media (max-width:720px){
 .br-sky-console,.br-time-console,.br-orientation-console{padding:10px;margin-bottom:9px;border-radius:14px}.br-context-head{margin-bottom:8px}.br-context-head h3{font-size:12px}.br-context-open{min-height:29px;font-size:7.5px}
 .br-sky-readouts{grid-template-columns:1fr 1fr}.br-sky-readouts>div:last-child{grid-column:1/-1}.br-sky-readouts>div{padding:7px}.br-sky-readouts b{font-size:10px}.br-preset-strip{grid-template-columns:1fr 1fr}.br-preset-strip button{min-height:32px}
 .br-time-stepper{grid-template-columns:repeat(3,1fr)}.br-time-stepper button{min-height:31px}.br-play-speed{align-items:stretch;flex-direction:column;gap:5px}.br-play-speed>div{grid-template-columns:repeat(3,1fr)}
 .br-calendar-status{grid-template-columns:1fr}.br-calendar-main b{font-size:14px}.br-compass-presets{gap:4px}.br-compass-presets button{min-height:46px}.br-compass-presets button b{font-size:13px}
}


/* C4 mobile premium fit */
@media (max-width:980px){
 .br-map2d-commandbar{background:linear-gradient(180deg,rgba(10,18,26,.98),rgba(7,14,21,.97));border-bottom:1px solid rgba(255,181,90,.14)}
 .br-map-layers-fab{border-color:rgba(255,181,90,.28)}
 .br-map2d-quickdock{box-shadow:0 16px 36px rgba(0,0,0,.34)}
 .br-panel-tab.is-active{background:linear-gradient(135deg,#bff4ff,#ffd08a)}
 .br-map2d-panel{background:linear-gradient(180deg,#091824,#06111a)}
 .br-timeline-dock,.br-rotation-dock,.br-measure-quickbar{box-shadow:0 16px 36px rgba(0,0,0,.42)}
}


/* C5 — mobile uses the same fixed viewport, but keeps its bottom-sheet UI */
@media (max-width:980px){
 body.br-harta-classic{height:100svh;min-height:100svh;overflow:hidden;grid-template-rows:auto minmax(0,1fr) auto}
 body.br-harta-classic .footer{min-height:24px;max-height:28px;padding:5px 8px;font-size:8px}
 .br-map2d-shell{height:100%;min-height:0!important;padding:0;overflow:hidden}
 .br-map2d-workspace{
   height:100%;min-height:0;
   display:grid;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto minmax(0,1fr);
 }
 .br-map2d-commandbar{grid-column:1;grid-row:1}
 .br-map2d-stage{grid-column:1;grid-row:2;height:auto!important;min-height:0!important}
 .br-map2d-panel{
   display:grid;position:fixed!important;z-index:200;grid-column:auto;grid-row:auto;
   top:auto!important;left:0!important;right:0!important;bottom:0!important;
   width:100%!important;height:min(78svh,760px);min-height:0;
   border-radius:22px 22px 0 0;border:1px solid rgba(255,181,90,.22);border-bottom:0;
   transform:translateY(calc(100% + 28px));opacity:0;visibility:hidden;pointer-events:none;
   transition:transform .22s ease,opacity .18s ease,visibility .18s ease;
   box-shadow:0 -24px 65px rgba(0,0,0,.52);
 }
 .br-map2d-panel.is-open{transform:none;opacity:1;visibility:visible;pointer-events:auto}
 body.br-harta-classic:not(.br-map-panel-open) .br-map2d-panel{opacity:0;visibility:hidden;pointer-events:none;border:1px solid rgba(255,181,90,.22);border-bottom:0}
 .br-map2d-backdrop{display:block!important;position:fixed;z-index:190;inset:0;background:rgba(0,6,11,.62);opacity:0;visibility:hidden;pointer-events:none}
 .br-map2d-backdrop.is-open{opacity:1;visibility:visible;pointer-events:auto}
}


/* C6 — mobile fit audit */
@media (max-width:980px){
 body.br-harta-classic .footer{height:24px;min-height:24px;max-height:24px;flex-basis:24px;padding:0 8px}
 .br-panel-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:7px}
 .br-panel-tab{min-height:36px;padding:5px 4px;font-size:9px}
 .br-panel-body{overflow-x:hidden;scrollbar-gutter:stable;padding-right:9px}
 .br-map2d-quickdock{left:8px;right:8px;bottom:8px;width:auto;max-width:none;transform:none}
 .br-source-fab{right:10px;bottom:68px}
 .br-map-layers-fab{right:10px;top:10px}
 .br-active-layers{left:10px;top:10px;max-width:calc(100% - 118px)}
 .br-timeline-dock,.br-rotation-dock,.br-measure-quickbar{max-width:calc(100% - 16px)}
 .br-help-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:390px){
 .br-panel-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
 .br-help-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* C7 — location and measurement fit on mobile */
@media (max-width:980px){
 .br-location-primary{grid-template-columns:repeat(3,minmax(0,1fr))}.br-location-primary button{min-height:40px;padding:0 5px}.br-location-primary button b{font-size:8px}.br-location-more{grid-template-columns:1fr;gap:4px}
 .br-measure-mapcard{min-width:220px;max-width:min(270px,calc(100vw - 28px))}.br-measure-metric strong{font-size:7.5px}.br-measure-metric em{font-size:6px}
}
@media (max-width:420px){
 .br-location-primary{grid-template-columns:1fr}.br-location-primary button{grid-template-columns:20px 1fr;min-height:38px}.br-location-primary button b{font-size:9px}
 .br-measure-mapcard{min-width:210px}.br-measure-metric>div{gap:3px}.br-measure-metric span{padding:4px 2px}.br-measure-metric strong{font-size:7px}
}


/* C8 — adaptive mobile UI: phones, tablets, landscape, short viewports, safe areas */
@media (max-width:980px){
 :root{
   --br-mobile-header-h:58px;
   --br-mobile-footer-h:24px;
   --br-mobile-gap:8px;
 }
 html{width:100%;height:100%;overflow:hidden;overscroll-behavior:none}
 body.br-harta-classic{
   width:100%;height:var(--br-app-height,100dvh)!important;min-height:var(--br-app-height,100dvh)!important;
   max-height:var(--br-app-height,100dvh);overflow:hidden;overscroll-behavior:none;
   grid-template-rows:auto minmax(0,1fr) auto;
   padding-left:0!important;padding-right:0!important;
 }
 body.br-harta-classic .reader-header{
   height:var(--br-mobile-header-h);min-height:var(--br-mobile-header-h)!important;max-height:var(--br-mobile-header-h);
   grid-template-columns:auto minmax(0,1fr) auto!important;
   padding:4px max(6px,env(safe-area-inset-right)) 4px max(6px,env(safe-area-inset-left))!important;
   gap:5px!important;overflow:visible;
 }
 body.br-harta-classic .reader-brand.reader-brand--image{min-width:0!important;max-width:76px!important}
 body.br-harta-classic .reader-brand.reader-brand--image img{width:64px!important;height:40px!important;max-width:64px!important;object-fit:contain}
 body.br-harta-classic .reader-header .theme-select{display:none!important}
 body.br-harta-classic .reader-header .header-actions{min-width:0;gap:3px!important}
 body.br-harta-classic .reader-header .calendar-header-btn{padding:0!important;justify-content:center!important}
 body.br-harta-classic .reader-header .calendar-header-btn span:last-child{display:none!important}
 body.br-harta-classic .reader-header .hamburger-btn,
 body.br-harta-classic .reader-header .calendar-header-btn,
 body.br-harta-classic .reader-header .profile-link{
   width:40px!important;min-width:40px!important;max-width:40px!important;
   height:40px!important;min-height:40px!important;max-height:40px!important;
 }
 body.br-harta-classic .footer{
   height:calc(var(--br-mobile-footer-h) + env(safe-area-inset-bottom));
   min-height:calc(var(--br-mobile-footer-h) + env(safe-area-inset-bottom));
   max-height:calc(var(--br-mobile-footer-h) + env(safe-area-inset-bottom));
   flex-basis:calc(var(--br-mobile-footer-h) + env(safe-area-inset-bottom));
   padding:0 6px env(safe-area-inset-bottom);font-size:7.5px;gap:4px;
   white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
 }
 body.br-harta-classic .footer strong{font-size:7.5px;letter-spacing:.08em}
 body.br-harta-classic .footer span:last-child{overflow:hidden;text-overflow:ellipsis}

 .br-map2d-shell,.br-map2d-workspace,.br-map2d-stage{width:100%;min-width:0;min-height:0!important}
 .br-map2d-shell{height:100%!important;padding:0!important}
 .br-map2d-workspace{height:100%;grid-template-rows:auto minmax(0,1fr)!important;border:0;border-radius:0}
 .br-map2d-commandbar{
   min-height:72px;height:auto;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;
   gap:5px 7px;padding:6px 8px;
 }
 .br-map2d-titleblock{min-width:0;padding:0}.br-map2d-titleblock h1{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .br-map2d-titleblock p,.br-map2d-kicker{display:none}
 .br-map2d-topactions{grid-column:2;grid-row:1;gap:4px}.br-map2d-iconbtn{width:36px!important;min-width:36px!important;min-height:36px!important;height:36px!important}
 .br-maptype-switch{grid-column:1/-1;grid-row:2;width:100%;min-width:0;padding:3px;border-radius:11px}
 .br-maptype-switch button{min-width:0;min-height:32px!important;height:32px;padding:0 5px;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .br-map2d-stage{height:auto!important;overflow:hidden;contain:layout paint}

 .br-map-layers-fab{right:max(8px,env(safe-area-inset-right));top:8px;min-width:84px;height:36px;padding:0 9px;border-radius:11px;font-size:9px}
 .br-active-layers{left:max(8px,env(safe-area-inset-left));top:8px;max-width:calc(100% - 108px);gap:4px}
 .br-active-chip{height:28px;padding:0 6px;font-size:8px;border-radius:9px}.br-active-chip-x{font-size:13px}.br-active-empty{display:none}
 .br-source-fab{right:max(8px,env(safe-area-inset-right));bottom:62px;width:32px;min-width:32px;height:32px;padding:0;font-size:0;border-radius:10px}
 .br-source-fab::after{content:"ⓘ";font-size:14px;color:#ffd18a}
 .br-source-fab::before{display:none}

 .br-map2d-quickdock{
   left:max(6px,env(safe-area-inset-left));right:max(6px,env(safe-area-inset-right));bottom:6px;
   width:auto;max-width:none;transform:none;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;padding:3px;border-radius:13px;
 }
 .br-quick-btn{min-height:48px;padding:3px 1px;grid-template-columns:1fr;grid-template-rows:21px 13px;gap:0;text-align:center;border-radius:10px}
 .br-quick-icon{font-size:16px;line-height:20px}.br-quick-label{font-size:7.3px;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .br-quick-btn.has-active::after{right:5px;top:5px;width:5px;height:5px}

 .br-timeline-dock{
   left:6px;right:6px;bottom:62px;translate:0;width:auto;max-width:none;max-height:min(44dvh,330px);overflow-y:auto;overflow-x:hidden;
   grid-template-columns:40px minmax(0,1fr) 66px;gap:5px;padding:7px;border-radius:14px;scrollbar-width:thin;
 }
 .br-timeline-dock #timeline-label{grid-column:2/4;min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:9px}
 .br-timeline-dock .rem-map-datetime-wrap{grid-column:1/-1}.br-timeline-dock #timeline-slider{grid-column:1/-1}.br-timeline-dock #timeline-reset-btn{grid-column:1/-1}
 .br-timeline-dock button,.br-timeline-dock select,.br-timeline-dock input{min-height:38px!important}
 .br-timeline-dock input[type="datetime-local"],.br-timeline-dock select{font-size:16px!important}
 .br-rotation-dock{left:6px;right:6px;bottom:62px;width:auto;max-width:none;padding:7px;border-radius:14px}
 .br-rotation-dock button{min-width:40px;min-height:40px}.br-rotation-dock input{min-width:0}

 .br-measure-quickbar{
   left:6px;right:6px;bottom:62px;transform:none;max-width:none;
   grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:38px;gap:3px;padding:4px;border-radius:13px;
 }
 .br-measure-quick-mode{grid-column:auto!important;height:38px;min-width:0;padding:2px}
 .br-measure-quick-mode button{min-width:0;padding:0 2px;font-size:7px;white-space:nowrap;overflow:hidden;text-overflow:clip}
 .br-measure-quickbar>[data-br-measure-slot],.br-measure-quick-action{height:38px;min-width:0;padding:0 3px;font-size:8px}
 .br-measure-quick-action{font-size:13px}

 .rem-moon-hud,.rem-cloud-hud{right:max(8px,env(safe-area-inset-right));max-width:min(220px,calc(100% - 16px));border-radius:11px}
 .rem-moon-hud{top:50px}.rem-cloud-hud{top:104px}
 .rem-moon-hud-copy small,.rem-cloud-hud-copy small{font-size:7.5px;line-height:1.2}
 .ol-zoom{left:max(8px,env(safe-area-inset-left))!important;top:50px!important}

 /* Bottom-sheet stays above the persistent page footer and inside the true visual viewport. */
 .br-map2d-panel{
   top:auto!important;left:0!important;right:0!important;bottom:calc(var(--br-mobile-footer-h) + env(safe-area-inset-bottom))!important;
   width:100%!important;height:min(76dvh,720px)!important;
   max-height:calc(var(--br-app-height,100dvh) - var(--br-mobile-header-h) - var(--br-mobile-footer-h) - env(safe-area-inset-bottom) - 6px)!important;
   border-radius:18px 18px 0 0!important;overflow:hidden;
 }
 .br-map2d-panel::after{content:"";position:absolute;z-index:4;top:5px;left:50%;translate:-50% 0;width:42px;height:4px;border-radius:999px;background:linear-gradient(90deg,rgba(111,224,251,.62),rgba(255,181,90,.72));pointer-events:none}
 .br-panel-head{position:relative;padding:15px 12px 9px}.br-panel-head h2{font-size:15px}.br-panel-head small{font-size:9px}.rem-map-ol-close{width:42px;height:42px;min-width:42px;min-height:42px}
 .br-panel-tabs{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:4px;padding:6px;overflow:visible}
 .br-panel-tab{min-width:0;min-height:42px;padding:4px 3px;font-size:8.3px;line-height:1.08;overflow-wrap:anywhere}
 .br-panel-body{min-height:0;overflow-y:auto!important;overflow-x:hidden!important;padding:8px 8px calc(14px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-gutter:auto}
 .rem-map-layer-group{padding:9px;border-radius:13px;gap:8px}.rem-map-layer-grid{grid-template-columns:1fr;gap:6px}
 .rem-map-ol-toggle{min-height:54px;padding:8px 9px;border-radius:11px}.rem-map-ol-toggle b{font-size:10px}.rem-map-ol-toggle small{font-size:8px;line-height:1.25}.rem-map-ol-pill{font-size:7.5px}
 .br-sky-console,.br-time-console,.br-orientation-console{padding:9px;border-radius:13px}.br-context-head h3{font-size:11px}.br-context-kicker{font-size:7px}
 .br-preset-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.br-preset-strip button{min-height:38px;font-size:8px}
 .br-time-stepper{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.br-time-stepper button{min-height:38px;font-size:8px}
 .br-play-speed{gap:5px}.br-play-speed>div{grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.br-play-speed button{min-height:36px}
 .br-calendar-status{grid-template-columns:1fr;gap:5px}.br-compass-presets{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.br-compass-presets button{min-height:48px}
 .rem-cloud-setting{font-size:9px}.rem-cloud-setting input{min-height:32px}

 /* Forms never trigger iOS automatic zoom and remain touch-friendly. */
 .br-map-ol-search{grid-template-columns:minmax(0,1fr) 44px;gap:5px}
 .br-map-ol-search input,.br-route-point input,.br-location-more select,.br-timeline-dock input[type="datetime-local"],.br-timeline-dock select{font-size:16px!important}
 .br-map-ol-search input,.br-route-point input{height:44px}.br-map-ol-search button{min-width:44px;min-height:44px}
 .br-search-mode button{min-height:42px;font-size:9px}.br-route-point{grid-template-columns:24px minmax(0,1fr) 38px}.br-route-point>span{width:24px;height:24px}.br-route-remove{height:38px;min-width:38px}
 .br-route-actions{grid-template-columns:1fr 1fr;gap:5px}.br-route-actions button{height:auto;min-height:44px;padding:5px;font-size:9px}
 .br-location-quick{padding:8px;gap:6px}.br-location-head b{font-size:9px}.br-location-head small{font-size:7.5px}
 .br-location-primary{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:4px}
 .br-location-primary button{min-width:0;min-height:46px!important;display:grid!important;grid-template-columns:1fr!important;grid-template-rows:18px auto;place-items:center;gap:1px;padding:4px 2px!important;text-align:center}
 .br-location-primary button span{font-size:13px}.br-location-primary button b{width:100%;font-size:7.6px!important;text-align:center!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .br-location-more{grid-template-columns:auto minmax(0,1fr);gap:5px;font-size:8px}.br-location-more select{height:42px}

 .br-measure-title{align-items:flex-start;gap:6px}.br-measure-title h3{font-size:11px}.br-measure-title small{font-size:7.5px;line-height:1.25}.br-measure-power{min-width:74px;height:40px;padding:0 7px;font-size:8px}
 .br-measure-mode{grid-template-columns:1fr 1fr;gap:5px}.br-measure-mode button{min-height:52px;padding:7px 8px}.br-measure-mode button b{font-size:10px}.br-measure-mode button small{font-size:7px}
 .br-measure-slots{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:3px;overflow:visible!important;padding:0!important}
 .br-measure-slots button{height:50px;min-width:0;grid-template-columns:1fr;grid-template-rows:8px 13px 16px;place-items:center;gap:1px;padding:4px 1px;border-radius:9px}
 .br-measure-slots button i{width:7px;height:7px}.br-measure-slots button b{font-size:8px}.br-measure-slots button span{min-width:17px;height:16px;font-size:7px}
 .br-measure-actions{grid-template-columns:1fr 1fr;gap:5px}.br-measure-actions button{min-height:44px;padding:5px;font-size:8px}.br-measure-actions button:last-child{grid-column:1/-1}
 .br-measure-status{font-size:8px;padding:7px 8px}
 .br-measure-mapcard{min-width:0!important;width:min(286px,calc(100vw - 20px));max-width:calc(100vw - 20px)!important}.br-measure-mapcard-body{padding:7px;gap:5px}.br-measure-metric{padding:6px}.br-measure-metric>div{gap:3px}.br-measure-metric span{padding:4px 2px}.br-measure-metric strong{font-size:7.2px}.br-measure-metric em{font-size:6px}

 #help-overlay{padding:0;align-items:flex-end}.br-help-body{padding:11px 10px calc(12px + env(safe-area-inset-bottom))}
 #help-content{width:100%;max-width:none;max-height:calc(var(--br-app-height,100dvh) - var(--br-mobile-header-h) - 6px);border-radius:18px 18px 0 0}
 .br-help-head{padding:12px 12px 8px}.br-help-head h2{font-size:15px}#help-close-btn{width:42px;height:42px}
 .br-help-tabs{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:4px;padding:6px}.br-help-tabs button{min-height:40px;height:auto;padding:4px 2px;font-size:8px;white-space:normal}
 .br-help-pane{font-size:10px;line-height:1.5}.br-help-pane h3{font-size:13px}

 .br-map2d-backdrop{inset:var(--br-mobile-header-h) 0 calc(var(--br-mobile-footer-h) + env(safe-area-inset-bottom)) 0!important}
}

/* Phones: use the vertical space efficiently without making controls microscopic. */
@media (max-width:520px){
 :root{--br-mobile-header-h:52px;--br-mobile-footer-h:22px}
 body.br-harta-classic .reader-header{padding:3px 5px!important}
 body.br-harta-classic .reader-brand.reader-brand--image{max-width:62px!important}
 body.br-harta-classic .reader-brand.reader-brand--image img{width:54px!important;height:34px!important}
 body.br-harta-classic .reader-header .hamburger-btn,
 body.br-harta-classic .reader-header .calendar-header-btn,
 body.br-harta-classic .reader-header .profile-link{width:38px!important;min-width:38px!important;max-width:38px!important;height:38px!important;min-height:38px!important;max-height:38px!important}
 .br-map2d-commandbar{min-height:68px;padding:5px 6px}.br-map2d-titleblock h1{font-size:13px}.br-map2d-iconbtn{width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important}
 .br-maptype-switch button{font-size:8.3px}
 .br-map-layers-fab{min-width:76px;height:34px;font-size:8.5px}.br-active-layers{max-width:calc(100% - 96px)}
 .br-quick-btn{min-height:46px}.br-quick-icon{font-size:15px}.br-quick-label{font-size:6.9px}
 .br-panel-head{padding-inline:10px}.br-panel-head h2{font-size:14px}.br-panel-head small{font-size:8px}
 .br-panel-tab{font-size:7.8px;min-height:40px}
 .br-panel-body{padding:7px 7px calc(12px + env(safe-area-inset-bottom))}
 .br-location-more{grid-template-columns:1fr}.br-location-more>span{display:none}
 .br-route-actions{grid-template-columns:1fr}
 .br-measure-actions{grid-template-columns:1fr}.br-measure-actions button:last-child{grid-column:auto}
}

/* Extra-narrow phones: keep 3x2 category tabs; only truly tiny legacy widths fall to 2 columns. */
@media (max-width:319px){
 .br-panel-tabs,.br-help-tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .br-map2d-titleblock{display:none}.br-map2d-commandbar{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto}.br-maptype-switch{grid-column:1;grid-row:1}.br-map2d-topactions{grid-column:2;grid-row:1}
 .br-location-primary{grid-template-columns:1fr 1fr!important}.br-location-primary button:last-child{grid-column:1/-1}
}

/* Very short portrait screens: remove decorative height, never the controls themselves. */
@media (max-width:980px) and (orientation:portrait) and (max-height:640px){
 :root{--br-mobile-header-h:48px;--br-mobile-footer-h:20px}
 body.br-harta-classic .reader-header{height:48px;min-height:48px!important;max-height:48px}
 body.br-harta-classic .reader-brand.reader-brand--image img{width:50px!important;height:32px!important}
 body.br-harta-classic .reader-header .hamburger-btn,
 body.br-harta-classic .reader-header .calendar-header-btn,
 body.br-harta-classic .reader-header .profile-link{width:36px!important;min-width:36px!important;max-width:36px!important;height:36px!important;min-height:36px!important;max-height:36px!important}
 .br-map2d-commandbar{min-height:44px;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto;padding:4px 5px}.br-map2d-titleblock{display:none}.br-maptype-switch{grid-column:1;grid-row:1}.br-map2d-topactions{grid-column:2;grid-row:1}.br-maptype-switch button{min-height:34px!important;height:34px}
 .br-map2d-panel{height:min(80dvh,520px)!important}.br-panel-head{padding-top:13px;padding-bottom:7px}.br-panel-tabs{padding:4px}.br-panel-tab{min-height:36px}
 .br-map2d-quickdock{bottom:4px}.br-quick-btn{min-height:42px;grid-template-rows:18px 12px}.br-source-fab{bottom:52px}
 .br-timeline-dock,.br-rotation-dock,.br-measure-quickbar{bottom:54px}
}

/* Phone/tablet landscape: the panel becomes a right drawer so the map stays visible. */
@media (max-width:980px) and (orientation:landscape) and (max-height:620px){
 :root{--br-mobile-header-h:46px;--br-mobile-footer-h:20px}
 body.br-harta-classic .reader-header{height:46px;min-height:46px!important;max-height:46px;padding:3px 6px!important}
 body.br-harta-classic .reader-brand.reader-brand--image img{width:52px!important;height:32px!important}
 body.br-harta-classic .reader-header .hamburger-btn,
 body.br-harta-classic .reader-header .calendar-header-btn,
 body.br-harta-classic .reader-header .profile-link{width:36px!important;min-width:36px!important;max-width:36px!important;height:36px!important;min-height:36px!important;max-height:36px!important}
 .br-map2d-commandbar{min-height:44px;height:44px;grid-template-columns:minmax(230px,1fr) auto;grid-template-rows:1fr;padding:4px 6px}.br-map2d-titleblock{display:none}.br-maptype-switch{grid-column:1;grid-row:1;max-width:480px}.br-map2d-topactions{grid-column:2;grid-row:1}.br-maptype-switch button{height:34px;min-height:34px!important}
 .br-map2d-panel{
   top:var(--br-mobile-header-h)!important;right:0!important;bottom:calc(var(--br-mobile-footer-h) + env(safe-area-inset-bottom))!important;left:auto!important;
   width:min(430px,58vw)!important;height:auto!important;max-height:none!important;
   border-radius:16px 0 0 16px!important;border-bottom:1px solid rgba(255,181,90,.22)!important;
   transform:translateX(calc(100% + 24px));
 }
 .br-map2d-panel.is-open{transform:none}.br-map2d-panel::after{display:none}
 .br-map2d-backdrop{inset:var(--br-mobile-header-h) 0 calc(var(--br-mobile-footer-h) + env(safe-area-inset-bottom)) 0!important}
 .br-panel-head{padding:9px 10px 7px}.br-panel-head h2{font-size:13px}.br-panel-head small{display:none}.rem-map-ol-close{width:38px;height:38px;min-width:38px;min-height:38px}
 .br-panel-tabs{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:3px;padding:4px}.br-panel-tab{min-height:34px;font-size:7.5px}
 .br-panel-body{padding:6px 7px 9px}.rem-map-layer-group{padding:7px}.rem-map-ol-toggle{min-height:48px}
 .br-map2d-quickdock{left:50%;right:auto;width:min(440px,calc(100% - 110px));translate:-50% 0;bottom:4px;grid-template-columns:repeat(5,minmax(62px,1fr))}.br-quick-btn{min-height:40px;grid-template-columns:18px 1fr;grid-template-rows:1fr;text-align:left;padding:2px 5px}.br-quick-icon{font-size:14px}.br-quick-label{font-size:7px}
 .br-source-fab{right:8px;bottom:49px;width:30px;height:30px}
 .br-timeline-dock{left:50%;right:auto;translate:-50% 0;bottom:50px;width:min(720px,calc(100% - 70px));max-width:calc(100% - 70px);max-height:94px;overflow:hidden;grid-template-columns:38px minmax(90px,.8fr) 66px minmax(150px,1fr) minmax(95px,1fr) 56px;gap:4px;padding:5px}.br-timeline-dock #timeline-label,.br-timeline-dock .rem-map-datetime-wrap,.br-timeline-dock #timeline-slider,.br-timeline-dock #timeline-reset-btn{grid-column:auto}.br-timeline-dock .rem-map-datetime-wrap span{display:none}.br-timeline-dock button,.br-timeline-dock select,.br-timeline-dock input{min-height:34px!important;height:34px!important}
 .br-rotation-dock{left:50%;right:auto;translate:-50% 0;bottom:50px;width:min(420px,calc(100% - 100px));padding:5px}
 .br-measure-quickbar{left:50%;right:auto;translate:-50% 0;transform:none;bottom:50px;width:min(560px,calc(100% - 80px));max-width:calc(100% - 80px);grid-template-columns:104px repeat(5,minmax(40px,1fr)) 38px 38px;grid-auto-rows:36px;gap:3px;padding:4px}.br-measure-quick-mode{height:36px}.br-measure-quickbar>[data-br-measure-slot],.br-measure-quick-action{height:36px}
 .rem-moon-hud,.rem-cloud-hud{max-width:190px}.rem-moon-hud{top:44px}.rem-cloud-hud{top:94px}.ol-zoom{top:44px!important}
 #help-overlay{align-items:center;padding:6px 8px}.br-help-body{padding:9px}#help-content{width:min(720px,94vw);max-width:94vw;max-height:calc(var(--br-app-height,100dvh) - var(--br-mobile-header-h) - var(--br-mobile-footer-h) - 12px);border-radius:15px}
}

@media (pointer:coarse) and (max-width:980px){
 .br-panel-tab,.rem-map-ol-toggle,.br-search-mode button,.br-route-actions button,.br-measure-actions button,.br-context-open,.br-preset-strip button,.br-time-stepper button,.br-compass-presets button{touch-action:manipulation}
 .br-panel-body{touch-action:pan-y}
}
@media (hover:none) and (max-width:980px){
 .br-map2d-iconbtn:hover,.br-map2d-linkbtn:hover,.br-quick-btn:hover,.rem-map-ol-toggle:hover,.br-location-primary button:hover{transform:none}
}
@media (prefers-reduced-motion:reduce){
 .br-map2d-panel,.br-map2d-backdrop,.br-timeline-dock,.br-rotation-dock,.br-map2d-stage #intro-tilt{transition:none!important;animation:none!important}
}

/* C8 final readability / overlay isolation */
@media (max-width:980px){
 .br-timeline-dock,.br-rotation-dock,.br-measure-quickbar{background:linear-gradient(180deg,rgba(8,20,30,.995),rgba(5,15,23,.995))}
}
@media (max-width:360px){
 .br-measure-mode button{min-height:44px;display:grid;place-items:center;text-align:center;padding:5px}
 .br-measure-mode button b{font-size:10.5px}
 .br-measure-mode button small{display:none}
}

/* BRW032 — adaptive CMAP MobileUI + compact Map3D-style PLAY */
@media (max-width:980px){
 body.br-harta-classic.br-mobile-ui .br-map2d-stage{touch-action:pan-x pan-y;min-height:0!important}
 body.br-harta-classic.br-mobile-ui .br-map2d-commandbar{padding-left:max(8px,env(safe-area-inset-left));padding-right:max(8px,env(safe-area-inset-right))}
 body.br-harta-classic.br-mobile-ui .br-map2d-stage .cinematic-play-arc{left:max(6px,env(safe-area-inset-left));bottom:62px;width:104px;height:82px;filter:drop-shadow(0 10px 24px rgba(0,0,0,.5))}
 body.br-harta-classic.br-mobile-ui .br-map2d-stage .cinematic-play-main{left:34px;top:22px;width:42px;height:42px;min-width:42px;min-height:42px;grid-template-rows:10px 7px 8px;padding-top:3px}
 body.br-harta-classic.br-mobile-ui .br-map2d-stage .cinematic-play-wing-toggle{left:44px;top:2px;width:16px;height:16px;min-width:16px;min-height:16px;font-size:7px}
 body.br-harta-classic.br-mobile-ui .br-map2d-stage .cinematic-play-wing{width:104px;height:82px}
 body.br-harta-classic.br-mobile-ui .br-map2d-stage .cinematic-play-rate{width:28px;min-width:28px;height:18px;min-height:18px;font-size:7px;padding:0 3px}
 body.br-harta-classic.br-mobile-ui .br-map2d-stage .cinematic-play-wing.is-left .cinematic-play-rate:nth-child(1){left:13px;top:59px}body.br-harta-classic.br-mobile-ui .br-map2d-stage .cinematic-play-wing.is-left .cinematic-play-rate:nth-child(2){left:3px;top:44px}body.br-harta-classic.br-mobile-ui .br-map2d-stage .cinematic-play-wing.is-left .cinematic-play-rate:nth-child(3){left:3px;top:25px}body.br-harta-classic.br-mobile-ui .br-map2d-stage .cinematic-play-wing.is-left .cinematic-play-rate:nth-child(4){left:13px;top:10px}
 body.br-harta-classic.br-mobile-ui .br-map2d-stage .cinematic-play-wing.is-right .cinematic-play-rate:nth-child(1){right:13px;top:10px}body.br-harta-classic.br-mobile-ui .br-map2d-stage .cinematic-play-wing.is-right .cinematic-play-rate:nth-child(2){right:3px;top:25px}body.br-harta-classic.br-mobile-ui .br-map2d-stage .cinematic-play-wing.is-right .cinematic-play-rate:nth-child(3){right:3px;top:44px}body.br-harta-classic.br-mobile-ui .br-map2d-stage .cinematic-play-wing.is-right .cinematic-play-rate:nth-child(4){right:13px;top:59px}
 body.br-harta-classic.br-mobile-ui .br-map2d-stage .cinematic-time-premium-button,body.br-harta-classic.br-mobile-ui .br-map2d-stage .cinematic-play-reverse-button{top:34px;width:24px;height:24px;min-width:24px;min-height:24px;transform:none;border-radius:7px}body.br-harta-classic.br-mobile-ui .br-map2d-stage .cinematic-time-premium-button{left:1px}body.br-harta-classic.br-mobile-ui .br-map2d-stage .cinematic-play-reverse-button{right:1px}
 body.br-harta-classic.br-mobile-ui .br-map2d-stage .cinematic-time-premium-icon,body.br-harta-classic.br-mobile-ui .br-map2d-stage .cinematic-play-reverse-icon{width:15px;height:15px;transform:none}.br-map2d-stage .cinematic-play-reverse-label{display:none!important}
 body.br-harta-classic.br-mobile-ui .br-map2d-stage .cinematic-play-now{left:35px;top:66px;min-width:36px;height:16px;font-size:6px}
 body.br-harta-classic.br-mobile-ui .br-map2d-quickdock{padding-left:108px;grid-template-columns:repeat(5,minmax(0,1fr))}
 body.br-harta-classic.br-mobile-ui .br-quick-btn{min-height:48px}
 body.br-harta-classic.br-mobile-ui .br-map-layers-fab{z-index:64}
 body.br-harta-classic.br-mobile-ui .rem-moon-hud,body.br-harta-classic.br-mobile-ui .rem-cloud-hud{pointer-events:auto}
 body.br-harta-classic.br-mobile-ui.rem-map-native-fullscreen .mobile-quick-nav{display:none!important}
}
@media (max-width:560px){
 body.br-harta-classic.br-phone-ui .br-map2d-commandbar{min-height:66px;grid-template-columns:minmax(0,1fr) auto}
 body.br-harta-classic.br-phone-ui .br-maptype-switch button{font-size:8px}
 body.br-harta-classic.br-phone-ui .br-map2d-stage .cinematic-play-arc{bottom:60px}
 body.br-harta-classic.br-phone-ui .br-map2d-quickdock{padding-left:104px}
 body.br-harta-classic.br-phone-ui .br-quick-label{font-size:6.8px}
}
@media (max-width:390px){
 body.br-harta-classic.br-small-phone-ui .br-map2d-titleblock h1{font-size:13px}
 body.br-harta-classic.br-small-phone-ui .br-map2d-stage .cinematic-play-arc{width:92px;height:74px;bottom:59px}
 body.br-harta-classic.br-small-phone-ui .br-map2d-stage .cinematic-play-main{left:30px;top:20px;width:38px;height:38px;min-width:38px;min-height:38px}
 body.br-harta-classic.br-small-phone-ui .br-map2d-stage .cinematic-play-wing-toggle{left:39px;top:2px}
 body.br-harta-classic.br-small-phone-ui .br-map2d-stage .cinematic-play-wing{width:92px;height:74px}
 body.br-harta-classic.br-small-phone-ui .br-map2d-stage .cinematic-play-rate{width:25px;min-width:25px;height:16px;min-height:16px;font-size:6.5px;padding:0 2px}
 body.br-harta-classic.br-small-phone-ui .br-map2d-quickdock{padding-left:92px}
 body.br-harta-classic.br-small-phone-ui .br-quick-icon{font-size:14px}.br-quick-label{font-size:6.2px}
}
@media (max-width:980px) and (orientation:landscape){
 body.br-harta-classic.br-mobile-landscape .br-map2d-commandbar{min-height:52px;grid-template-columns:minmax(0,1fr) auto auto;grid-template-rows:1fr;padding:5px 8px}
 body.br-harta-classic.br-mobile-landscape .br-maptype-switch{grid-column:2;grid-row:1;width:min(310px,38vw)}
 body.br-harta-classic.br-mobile-landscape .br-map2d-topactions{grid-column:3;grid-row:1}
 body.br-harta-classic.br-mobile-landscape .br-map2d-stage .cinematic-play-arc{bottom:5px}
 body.br-harta-classic.br-mobile-landscape .br-map2d-quickdock{left:118px;right:8px;padding-left:4px;bottom:6px}
 body.br-harta-classic.br-mobile-landscape .br-map2d-panel{height:min(90dvh,620px)!important;width:min(520px,72vw)!important;left:auto!important;border-radius:18px 0 0 18px!important}
}
@media (max-width:980px) and (max-height:560px){
 body.br-harta-classic.br-short-ui .br-map2d-commandbar{min-height:50px}.br-map2d-titleblock p,.br-map2d-kicker{display:none!important}
 body.br-harta-classic.br-short-ui .br-map2d-stage .cinematic-play-arc{bottom:4px}
 body.br-harta-classic.br-short-ui .br-map2d-quickdock{bottom:4px}
 body.br-harta-classic.br-short-ui .rem-moon-hud,body.br-harta-classic.br-short-ui .rem-cloud-hud{display:none!important}
}

/* BRW032 viewport authority: on mobile CMAP owns the available app row.
   This intentionally outranks cmap-shell-adapter's desktop clamp so short
   landscape screens never inherit the old 520px minimum canvas. */
@media (max-width:980px){
 body.br-harta-classic.br-cmap-page.br-mobile-ui .br-map2d-workspace{height:calc(var(--br-app-height,100dvh) - var(--header-h,68px))!important;min-height:0!important;grid-template-rows:auto minmax(0,1fr)!important}
 body.br-harta-classic.br-cmap-page.br-mobile-ui .br-map2d-stage{height:auto!important;min-height:0!important}
}
@media (max-width:980px) and (orientation:landscape){
 body.br-harta-classic.br-cmap-page.br-mobile-landscape .br-map2d-quickdock{
   left:118px!important;right:8px!important;width:auto!important;max-width:none!important;
   translate:0 0!important;transform:none!important;padding-left:4px!important;
 }
}

/* Keep CMAP controls clear of the site-wide 72px mobile navigation (shell.css). */
@media (max-width:680px){
 body.br-harta-classic.br-cmap-page.br-mobile-ui .br-map2d-quickdock,
 body.br-harta-classic.br-cmap-page.br-mobile-ui .br-map2d-stage .cinematic-play-arc{
   bottom:calc(78px + env(safe-area-inset-bottom,0px))!important;
 }
 body.br-harta-classic.br-cmap-page.br-mobile-ui .br-map2d-panel{
   bottom:calc(72px + env(safe-area-inset-bottom,0px))!important;
   max-height:calc(var(--br-app-height,100dvh) - var(--br-mobile-header-h) - 72px - env(safe-area-inset-bottom,0px) - 6px)!important;
 }
 body.br-harta-classic.br-cmap-page.br-mobile-ui .br-map2d-backdrop{
   bottom:calc(72px + env(safe-area-inset-bottom,0px))!important;
 }
 body.br-harta-classic.br-cmap-page.br-mobile-ui .br-rotation-dock,
 body.br-harta-classic.br-cmap-page.br-mobile-ui .br-measure-quickbar{
   bottom:calc(78px + env(safe-area-inset-bottom,0px))!important;
 }
}

