/* Shared interface density. Loaded last in the portal, access and administration.
   Map symbols keep their measured dimensions and georeferenced hit areas. */
:root{
  --ui-control-height:36px;
  --ui-control-pad:6px 10px;
  --ui-control-font:13px;
  --ui-field-short:180px;
  --ui-field-medium:240px;
  --ui-field-long:320px;
  --ui-radius:7px;
  --ui-panel-radius:12px;
  --ui-panel-pad:14px;
  --ui-gap:10px;
  --ui-section-gap:16px;
  --radius:var(--ui-panel-radius);
}
body{font-size:14px;line-height:1.45}
:root :is(h1,.sv-heading h1,.rv-heading h1,.rf-heading h1,.lg-heading h1){font-size:24px;line-height:1.2;letter-spacing:-.45px}
h2{font-size:17px;line-height:1.3}
:root :is(.rf-panel>h2,.rf-title-row h2,.lg-title-row h2,.lg-site-heading h2){font-size:17px;line-height:1.3}
h3{font-size:14px;line-height:1.4}

/* One size for equivalent actions and fields, including module-specific controls. */
:root :is(button,select,input:not([type]),input[type=text],input[type=email],input[type=password],input[type=number],input[type=search]):where(:not(.sv-site):not(.site-map-list-button)){
  min-height:var(--ui-control-height);
  padding:var(--ui-control-pad);
  border-radius:var(--ui-radius);
  font-size:var(--control-font,var(--ui-control-font));
  line-height:1.35;
}
:root body select:is(:enabled,:disabled){
  height:var(--ui-control-height);padding:5px 30px 5px 10px;font-weight:400;
  appearance:none;-webkit-appearance:none;
  background-image:linear-gradient(45deg,transparent 50%,#486159 50%),linear-gradient(135deg,#486159 50%,transparent 50%);
  background-position:calc(100% - 16px) 50%,calc(100% - 12px) 50%;
  background-size:4px 4px;background-repeat:no-repeat;
}
:root :is(.control,.rv-filters label){gap:4px}
:root :is(.control>label,.control>span,.sv-filters label,.rv-filters label,.rf-filters label,.rf-sort,.lg-filters label,.supply-controls label){font-size:12px;line-height:1.4;font-weight:600}
:root :is(.sv-page select,.sat-unified-selectors select,.rf-filters select,.rf-sort select,.lg-filters select,.supply-controls select){margin-top:4px}
:root :is(.horizon-control,.rf-horizons){padding:3px;gap:3px;border-radius:9px}
:root :is(.horizon-control button,.rf-horizons button){padding-inline:12px}
:root :is(.chart-step,.lg-chart-controls button,.supply-time button,.supply-chart-scrub button){--control-font:21px;padding:0;min-width:var(--ui-control-height);width:var(--ui-control-height)}
:root :is(.sv-playback button[data-sv-action=previous],.sv-playback button[data-sv-action=next]){--control-font:21px;height:var(--ui-control-height);padding:0;line-height:1}
:root :is(.sv-zoom button:first-child,.sv-zoom button:last-child){--control-font:18px;height:var(--ui-control-height);padding:0;line-height:1}
:root :is(.sv-zoom button,.sv-playback button,.rv-playback button){min-width:var(--ui-control-height)}
:root :is(.sv-playback .sv-play,.rv-playback .rv-play){min-width:126px}
:root :is(.lg-chart-controls,.supply-chart-scrub){grid-template-columns:var(--ui-control-height) minmax(0,1fr) var(--ui-control-height);gap:6px}
:root :is(.chart-slider input,.lg-chart-controls input,.supply-chart-scrub input,.sv-timeline>input,.rv-timeline>input){height:var(--ui-control-height);min-height:var(--ui-control-height);margin-block:2px}
:root :is(.help-link,.lg-info,.rf-info,.sv-help,.rv-info){width:var(--ui-control-height);min-width:var(--ui-control-height);height:var(--ui-control-height);min-height:var(--ui-control-height)}
:root :is(.lg-open,.rf-open,.rf-inline-link,.admin-back,.export-actions a){min-height:var(--ui-control-height)}

/* Compact, consistent chrome; the small beta line does not add a navigation row. */
:root .app-chrome{margin-bottom:var(--ui-section-gap)}
:root :is(.app-header,.admin-header){padding-top:7px;padding-bottom:6px;column-gap:18px}
:root .app-chrome .main-nav{gap:4px;padding-bottom:6px}
:root .main-nav a{min-height:42px;padding:5px 12px;border-radius:var(--ui-radius);font-size:13px;gap:7px}
.nav-label{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2}
.nav-label small{display:block;font-size:10px;line-height:1.15;font-weight:500;margin-top:2px;letter-spacing:0;color:var(--muted)}
:root .account-menu :is(button,a){font-size:11px;min-height:var(--ui-control-height);padding:4px 7px}
:root :is(.page-head,.sv-heading,.rv-heading,.rf-heading){gap:12px;margin:0 0 12px}
:root :is(.sv-heading h1,.rv-heading h1,.rf-heading h1){margin:3px 0 5px}
:root :is(.eyebrow,.lg-eyebrow){margin-bottom:4px}
:root :is(.subline,.sv-intro,.rv-intro){font-size:13px;line-height:1.45;margin-top:4px}
:root .section-space{margin-top:var(--ui-section-gap)}
:root .section-title{margin-bottom:var(--ui-gap);gap:8px}

/* Panels, filters and disclosures use the same spacing in all application views. */
:root :is(.panel,.sv-panel,.rv-panel,.rf-panel,.lg-card,.rain-note,.site-map-detail,.supply-detail,.supply-observed-empty){padding:var(--ui-panel-pad);border-radius:var(--ui-panel-radius)}
:root :is(.rf-panel,.lg-card,.rain-note,.supply-panel){margin-block:12px}
:root :is(.filters,.sat-unified-selectors){margin-bottom:12px;border-radius:var(--ui-panel-radius)}
:root .filters>summary{min-height:var(--ui-control-height);padding:7px 12px;gap:8px;font-size:13px;line-height:1.4}
:root .filters-body{padding:0 12px 12px;gap:10px 12px}
:root :is(.sv-filters,.rv-filters,.rf-filters,.lg-filters){gap:10px 12px}
:root .sat-unified-selectors{padding:12px 14px}
:root .point-checks{gap:6px}
:root .check-card{min-height:var(--ui-control-height);padding:6px 8px;gap:7px}
:root :is(.disclosure,.sv-interpretation,.rv-interpretation){margin-top:12px;border-radius:var(--ui-panel-radius)}
:root :is(.disclosure>summary,.sv-interpretation>summary,.supply-fold>summary){min-height:var(--ui-control-height);padding:9px 14px;font-size:13px;line-height:1.4}
:root :is(.disclosure-body,.sv-interpretation>div){padding:0 14px 14px}
:root :is(.data-disclosure>summary,.lg-table-details>summary,.lg-evolution>summary,.rf-data>summary,.rf-method>summary,.site-map-method>summary,.climate-details>summary,.climate-episode-list>summary,.weather-episode-list>summary){min-height:var(--ui-control-height);padding:8px 0;font-size:12px;line-height:1.4}
:root :is(.supply-method,.rv-interpretation){padding:9px 14px;font-size:12px}
:root :is(.supply-method summary,.rv-interpretation summary,.supply-table summary){min-height:24px;font-size:13px;line-height:1.4}
:root .supply-method p{margin-top:8px}
:root :is(.notice,.sv-notice,.rv-detail,.lg-notice,.rf-notice,.supply-status){padding:9px 12px;font-size:12px;line-height:1.5}

/* Forecast summaries and charts keep their data space; trim only surrounding chrome. */
:root :is(.kpi-grid,.chart-grid,.meta-grid,.site-map-layout,.supply-charts,.admin-summary){gap:var(--ui-gap)}
:root .kpi{padding:12px}
:root .kpi-label{margin-bottom:6px}
:root .kpi-foot{margin-top:6px;line-height:1.45}
:root .kpi-value{font-size:26px}
:root .normality-legend{margin-bottom:12px}
:root .chart-panel{padding:12px 12px 9px}
:root .chart-legend{margin-top:8px;gap:4px 12px}
:root .chart-readout{padding-top:4px;min-height:40px;line-height:1.5}
:root .chart-slider{gap:6px}
:root .data-disclosure{margin-top:5px}
:root .export-actions{margin:8px 0;gap:6px}
:root :is(.meta-grid,.climate-context){margin-top:12px}
:root .narrative .prose{font-size:13px;line-height:1.6}
:root .risk-category{padding:12px}
:root :is(.risk-event>summary,.risk-event-body){padding:10px 12px}
:root .risk-count{padding:10px}
:root .local-event-group{padding:7px 12px}
:root .local-event-group>summary{min-height:var(--ui-control-height)}

/* Teledetection controls, keys and observation cards. */
:root :is(.sv-auto,.sv-layer-controls>label,.sv-bolt-toggle,.rv-check,.supply-map-options label){min-height:var(--ui-control-height);font-size:13px;gap:7px}
:root :is(.sv-auto,.sv-layer-controls,.rv-layer-controls,.supply-map-options){column-gap:16px}
:root :is(.sv-auto input,.sv-layer-controls input,.sv-bolt-toggle input,.rv-check input,.supply-map-options input){width:17px;height:17px;flex:none}
:root .sv-update{margin-top:6px;gap:6px}
:root .sv-auto-note{margin-bottom:8px}
:root .sv-status-row{padding:7px 0;gap:4px 10px}
:root .sv-layer-controls{margin-bottom:4px;row-gap:0}
:root .sv-viewer-head{margin:3px 0 8px;gap:8px}
:root .sv-observed{font-size:14px}
:root :is(.sv-timeline,.rv-timeline){padding-top:10px}
:root :is(.sv-playback,.rv-playback){gap:6px}
:root :is(.sv-bolt-legend,.sv-ir-legend,.sv-sst-legend,.rv-legend){padding-top:8px;margin-top:8px;font-size:12px}
:root .sv-bolt-legend{padding-bottom:6px}
:root .sv-bolt-legend>div{margin-top:5px;gap:6px 16px}
:root #teledetection-lightning{margin-top:var(--ui-section-gap)}
:root .lg-main{font-size:15px;line-height:1.45;margin:8px 0 4px}
:root .lg-recent-label{margin:6px 0}
:root .lg-radii{gap:6px;margin:6px 0 8px}
:root .lg-radii>div{padding:7px 5px;border-radius:var(--ui-radius)}
:root .lg-radii dd{font-size:21px;margin-top:2px}
:root .lg-trend{padding:8px 0;margin:10px 0;font-size:12px}
:root .lg-evolution{margin-top:10px}
:root .lg-evolution-radius select{margin:0;width:auto}
:root .rain-note p{margin:6px 0}
:root .rf-filters{margin:12px 0}
:root .rf-metrics{padding:6px 0 10px;gap:12px;margin-bottom:8px}
:root .rf-metrics dt{min-height:var(--ui-control-height)}
:root .rf-metrics dd{font-size:26px;margin:2px 0}

/* Cartographic canvases and measured map labels are deliberately not scaled. */
:root .site-map-main{padding:0;overflow:hidden}
:root .site-map-map-head{padding:10px 14px}
:root .site-map-tools{margin-bottom:10px;gap:10px}
:root .site-map-detail>.eyebrow{margin-bottom:12px}
:root .site-map-detail h2{font-size:21px}
:root .site-map-company{margin-bottom:12px}
:root .site-map-facts{gap:12px;margin-top:14px}
:root .site-map-detail .site-map-follow{margin-top:14px}
:root .site-map-catalog{margin-top:var(--ui-section-gap)}
:root .site-map-list-button{min-height:90px;padding:10px 12px;border-radius:var(--ui-panel-radius)}
:root .site-map-help{padding:8px 14px 12px}
:root .site-map-legend{padding:10px 14px 0}
:root .supply-controls{margin:12px 0 8px;gap:10px}
:root .supply-map-options{padding:6px 12px;row-gap:0;border-radius:var(--ui-panel-radius)}
:root .supply-observed-controls{gap:0 16px}
:root .supply-time{padding:8px 12px;gap:8px}
:root .supply-detail{border-radius:0}
:root .supply-detail h2{font-size:22px}
:root .supply-values{margin:12px 0;gap:10px}
:root .supply-values dd{margin-top:2px}
:root .supply-legend{padding:10px 14px 2px;gap:8px 12px}
:root .supply-note{margin:8px 14px 10px}
:root .supply-layer-legend{padding:10px 14px;gap:8px}
:root .supply-section-title{padding:12px 14px 0}
:root .supply-charts{padding:10px 12px}
:root .supply-chart{padding:10px 12px 8px}
:root .supply-table{padding:9px 14px}
:root .supply [data-supply-watch],:root .supply [data-supply-incidents]{padding:0 14px 12px}

/* Access and administration use the same controls as the consultation pages. */
:root .admin-summary .panel{padding:var(--ui-panel-pad)}
:root .admin-user-row{padding:10px 0;gap:10px}
:root :is(.admin-settings-panel,.admin-email-panel,.admin-service-panel){margin-bottom:12px}
:root .admin-settings-panel fieldset{margin-top:14px}
:root .admin-settings-panel legend{margin-bottom:8px}
:root .access-shell{padding-top:clamp(24px,6vh,60px)}
:root .access-card{padding:20px;border-radius:var(--ui-panel-radius)}
:root .access-intro{margin:8px 0 16px}
:root .access-card label{margin:12px 0 5px}
:root .access-card input{height:var(--ui-control-height)}
:root .access-card button{margin-top:16px}

@media(max-width:767px),(pointer:coarse){
  :root{--ui-control-height:40px;--ui-control-pad:7px 10px}
  /* Text entry remains large enough to avoid focus zoom on iOS. */
  :root :is(input:not([type]),input[type=text],input[type=email],input[type=password],input[type=number],input[type=search]){--control-font:16px}
}
@media(max-width:767px){
  :root{--ui-panel-pad:12px;--ui-gap:8px;--ui-section-gap:14px;--app-mobile-nav-height:108px}
  :root .app-chrome .main-nav{grid-template-rows:repeat(2,46px);min-height:var(--app-mobile-nav-height);padding-block:5px;gap:3px}
  :root .main-nav a{min-height:46px;padding:3px;font-size:10px;gap:3px;line-height:1.08;text-align:center}
  :root .main-nav a>span{white-space:normal;overflow-wrap:normal;text-wrap:balance}
  :root .main-nav .nav-label{align-items:center}
  :root .nav-label small{font-size:9px;margin-top:1px}
  :root :is(.page-head,.sv-heading,.rv-heading,.rf-heading){gap:10px}
  :root :is(h1,.sv-heading h1,.rv-heading h1,.rf-heading h1,.lg-heading h1){font-size:22px}
  :root :is(.horizon-control button,.rf-horizons button){padding-inline:9px;font-size:12px}
  :root .sat-unified-selectors{padding:10px 12px}
  :root .supply-time{grid-template-columns:var(--ui-control-height) minmax(0,1fr) var(--ui-control-height)}
}
/* On narrow phones, give the two long destinations room without shrinking text or touch targets. */
@media(max-width:359px){
  :root .app-chrome .main-nav{grid-template-columns:1.2fr .8fr .8fr 1.2fr}
  :root .main-nav a>span{white-space:normal;overflow-wrap:normal}
}
@media print{
  :root{--app-mobile-nav-height:0px}
  :root .app-chrome .main-nav{min-height:0}
}

/* Nine primary destinations remain on two compact rows on touch layouts. */
@media(max-width:767px){
  :root{--app-mobile-nav-height:120px}
  :root .app-chrome .main-nav{grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(2,51px);min-height:120px}
  :root .app-chrome .main-nav a{min-width:0;padding-inline:4px}
}
@media(max-width:420px){
  :root .app-chrome .main-nav a{font-size:9px;gap:3px}
  :root .app-chrome .main-nav svg{width:17px;height:17px}
}

/* Width follows the purpose of the field, not the available viewport. */
:root .filters:not([open]){width:fit-content;max-width:100%}
:root .filters-body{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 10px;padding:0 10px 10px}
:root .filters-body>.control{flex:0 1 var(--ui-field-short);width:var(--ui-field-short);max-width:100%}
:root .filters-body>.control:has(:is(#point-filter,#alert-site-filter)){flex-basis:var(--ui-field-long);width:var(--ui-field-long)}
:root .filters-body>.control:has(#risk-order){flex-basis:var(--ui-field-medium);width:var(--ui-field-medium)}
:root .filter-actions{flex:0 1 auto;flex-wrap:wrap;justify-content:flex-start;align-self:flex-end;margin:0;gap:6px}
:root .filter-wide{flex:1 1 100%;min-width:0}
:root .compare-options legend{margin-bottom:4px}
:root .compare-limit{margin:0 0 6px;font-size:12px}
:root .compare-scroll-hint{font-size:11px;color:var(--muted);margin:0 0 4px}
:root .point-checks{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:5px;max-height:260px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:3px}
:root .check-card{padding:5px 7px;min-height:var(--ui-control-height);align-items:center}
:root .check-card .legend-swatch{width:24px}
:root :is(.point-checks,.check-card):focus-within{outline-offset:1px}
:root :is(.sv-filters,.rf-filters,.lg-filters,.supply-controls){display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 10px}
:root :is(.sv-filters,.rf-filters,.lg-filters,.supply-controls)>label{flex:0 1 var(--ui-field-long);width:var(--ui-field-long);max-width:100%}
:root .sv-filters>label:has(:is([data-sat-display=product],[data-sv=product])){flex-basis:var(--ui-field-medium);width:var(--ui-field-medium)}
:root .rf-filters>label:first-child{flex-basis:var(--ui-field-short);width:var(--ui-field-short)}
:root .sat-unified-selectors{width:fit-content;max-width:100%;padding:10px}
:root .supply-controls>button{width:auto;flex:none}
:root .supply-map-options{width:fit-content;max-width:100%}
:root .supply-observed-empty{align-self:start;min-height:0}
:root .site-map-tools{flex-direction:row;justify-content:flex-start;flex-wrap:wrap;gap:8px 10px}
:root .site-map-selector{width:var(--ui-field-long);flex:0 1 var(--ui-field-long);max-width:100%}
:root .site-map-tools>button{width:auto}
:root .site-map-detail{align-self:start}
:root .site-map-detail .site-map-follow{width:fit-content;max-width:100%;min-height:var(--ui-control-height);padding:7px 12px;gap:16px}
:root .observed-alert-filters{display:flex;flex-wrap:wrap;gap:8px 18px}
:root .observed-alert-filters>div{flex:0 1 360px;max-width:100%}
:root .observed-alert-filters button{width:auto;max-width:100%;justify-content:flex-start}
:root .unified-alert-table tbody td:last-child button{width:fit-content;max-width:100%;min-height:var(--ui-control-height)}

/* A closed disclosure is a compact action. Its content can still use the full row. */
:root :is(.disclosure,.supply-fold,.supply-method,.sv-interpretation,.rv-interpretation){padding:0}
:root :is(.disclosure,.supply-fold,.supply-method,.sv-interpretation,.rv-interpretation):not([open]){display:inline-block;vertical-align:top;width:fit-content;max-width:calc(100% - 8px);margin:10px 8px 0 0}
:root :is(.disclosure,.supply-fold,.supply-method,.sv-interpretation,.rv-interpretation)>summary{min-height:var(--ui-control-height);margin:0;padding:8px 12px;line-height:1.4;font-size:13px}
:root :is(.disclosure,.supply-fold,.supply-method,.sv-interpretation,.rv-interpretation)[open]{display:block;width:auto;max-width:100%;margin-top:10px}
:root :is(.disclosure,.supply-fold,.supply-method,.sv-interpretation,.rv-interpretation)[open]>summary{margin-bottom:0}
:root .disclosure>.chart-grid{margin:0 12px 12px}
:root .disclosure>.table-caption{margin:0 12px 8px}
:root .disclosure>.table-scroll{margin:0 12px 12px;max-width:calc(100% - 24px)}
:root :is(.supply-method,.rv-interpretation)>:not(summary){margin:0 12px 10px}
:root :is(.narrative-more,.chart-event-picker)>summary{min-height:var(--ui-control-height);padding:7px 0;font-size:12px;line-height:1.4}
:root .chart-events{padding-top:6px;margin-top:6px}
:root .chart-event-hint{margin:0 0 3px;font-size:11px;line-height:1.45}
:root :is(.chart-readout,.data-disclosure){min-height:0}
:root .data-disclosure>summary{padding:7px 0}

/* Summary cards no longer reserve rows or heights for empty space. */
:root .sat-kpis{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
:root .sat-kpis .kpi{grid-column:auto;min-height:0;padding:10px 12px}
:root .sat-kpis .temperature-kpi{grid-column:1/-1}
:root .sat-kpis .temp-pair{max-width:400px;gap:12px}
:root .sat-kpis .temp-reading{flex-wrap:wrap}
:root .sat-kpis .kpi-foot{margin-top:4px}
:root .lg-radii{grid-template-columns:repeat(4,minmax(0,100px));max-width:100%;width:fit-content}
:root .lg-radii>div{min-width:70px;padding:6px 10px}
:root .lg-recent-label{margin-block:2px}
:root .rf-metrics{max-width:600px;text-align:left}
:root .rf-metrics dt{justify-content:flex-start;min-height:0}
:root .compact-counts .risk-count{min-height:var(--ui-control-height);padding:6px 10px}
:root .sv-update{justify-content:flex-start;column-gap:10px;margin-top:0}
:root .sv-status-row{justify-content:flex-start;column-gap:16px}
:root .sv-auto-note{margin-bottom:4px}
:root .sv-speed{margin-left:10px}
:root .sv-source{margin-top:10px;padding-top:8px}
:root .guide-anchor-nav{gap:6px;margin-bottom:12px}
:root .guide-anchor-nav a{min-height:var(--ui-control-height);padding:6px 10px}
:root .guide-section+.guide-section{margin-top:18px}

/* The same width scale applies to configuration fields. */
:root .admin-scope{grid-template-columns:minmax(0,var(--ui-field-short)) minmax(0,var(--ui-field-long));gap:8px 10px}
:root :is(.admin-email-fields,.admin-narrative-fields){grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),320px));gap:10px}
:root .admin-threshold-fields{gap:10px}
:root .admin-threshold-fields fieldset{padding:10px;gap:0 8px}
:root .admin-threshold-fields .control{margin-top:8px}
:root .admin-operation-status{padding:8px 10px;margin-top:10px}

@media(min-width:768px){
  :root .app-chrome .main-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:3px 8px}
  :root .main-nav a{flex:none;min-height:38px;padding:3px 10px}
}
@media(min-width:768px) and (max-width:1350px){
  :root .app-chrome .main-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px 6px;padding-bottom:4px}
  :root .main-nav a{justify-content:center;line-height:1.08;text-align:center}
  :root .main-nav a>span{white-space:normal;text-wrap:balance}
  :root .main-nav .nav-label small{font-size:8px;margin-top:0}
}
@media(min-width:768px) and (max-width:1100px){
  :root .unified-alert-table tbody tr{grid-template-columns:minmax(180px,.8fr) minmax(280px,1.7fr) auto;gap:8px 16px;padding:12px}
  :root .unified-alert-table tbody th{grid-column:auto}
  :root .unified-alert-table tbody :is(th,td){align-items:flex-start;justify-content:flex-start;text-align:left!important}
  :root .unified-alert-table tbody td:last-child{grid-column:auto;align-items:flex-end;align-self:center}
}
@media(min-width:600px){
  :root .sat-kpis .temperature-kpi{grid-column:auto}
}
@media(min-width:1000px){
  :root .sat-kpis{grid-template-columns:minmax(320px,1.65fr) repeat(3,minmax(0,1fr))}
}
@media(max-width:599px){
  :root .filters-body>.control{flex:1 1 calc(50% - 5px);width:calc(50% - 5px)}
  :root .filters-body>.control:has(:is(#point-filter,#alert-site-filter,#risk-order)){flex-basis:100%;width:100%}
  :root .filter-actions{flex-basis:100%;justify-content:flex-start}
  :root .point-checks{grid-template-columns:1fr;max-height:240px}
  :root .admin-scope{grid-template-columns:minmax(0,1fr)}
  :root .lg-radii{width:100%;grid-template-columns:repeat(4,minmax(0,1fr))}
  :root .lg-radii>div{min-width:0;padding:6px 3px}
  :root .site-map-tools{flex-direction:row}
  :root :is(.sv-filters,.rf-filters,.lg-filters,.supply-controls)>label{flex-basis:100%;width:100%}
  :root .sv-filters>label:has(:is([data-sat-display=product],[data-sv=product])),:root .rf-filters>label:first-child{flex-basis:100%;width:100%}
}
@media print{
  :root .point-checks{max-height:none;overflow:visible}
}
