.region-explorer { --rx-panel: 420px; }
.rx-controls{display:grid;grid-template-columns:minmax(240px,2fr) minmax(140px,1fr) minmax(160px,1fr);gap:10px;margin:0 0 10px}
.rx-controls label{display:grid;gap:4px;color:var(--sub);font-size:12px;font-weight:700}
.rx-controls input,.rx-controls select{min-width:0;height:48px;padding:0 12px;border:1px solid var(--rule);border-radius:11px;background:var(--surface);color:var(--ink)}
.rx-controls input:focus,.rx-controls select:focus{outline:3px solid color-mix(in srgb,var(--brand-focus) 35%,transparent);border-color:var(--brand-focus)}
.rx-count{margin:0 0 12px;color:var(--sub);font-size:13px}.rx-count b{color:var(--brand-ink)}
.region-explorer-layout { display:grid; grid-template-columns:minmax(340px,var(--rx-panel)) minmax(0,1fr); min-height:620px; border:1px solid var(--rule,var(--line,#d5dad8)); border-radius:18px; overflow:hidden; background:var(--surface); }
.region-explorer-list { min-width:0; max-height:720px; overflow:auto; border-right:1px solid var(--rule,var(--line,#d5dad8)); }
.region-explorer-map { position:relative; min-height:620px; background:var(--surface-2,#eef1f3); }
.rx-map-loading { position:absolute; inset:0; display:grid; place-items:center; margin:0; padding:24px; text-align:center; color:var(--sub); background:var(--surface-2,#eef1f3); }
.rx-map-loading[hidden] { display:none; }
.region-explorer [data-rx-map] { width:100%; height:100%; min-height:620px; }
.region-explorer [data-rx-row] { scroll-margin:96px 0 16px; }
.region-explorer [data-rx-row].is-selected { background:var(--brand-soft); box-shadow:inset 3px 0 var(--brand-action); }
.region-explorer [data-rx-row][aria-selected="true"] [data-rx-select] { font-weight:800; }
.region-explorer-empty,.region-explorer-error { margin:24px; padding:18px; border:1px solid var(--rule,var(--line,#d5dad8)); border-radius:12px; }
.region-explorer-error { color:var(--danger,#a82632); background:color-mix(in srgb,var(--danger,#a82632) 7%,var(--surface)); }
.region-explorer-tabs { display:none; }
.rx-row{padding:14px 16px;border-bottom:1px solid var(--rule)}
.rx-main{display:flex;align-items:center;justify-content:space-between;gap:14px;color:var(--ink)}
.rx-main>span{display:grid;gap:3px}.rx-main small,.rx-meta{color:var(--sub);font-size:12px}.rx-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:7px}
.rx-marker { appearance:none; display:grid; grid-template-columns:auto auto; align-items:center; gap:6px; min-width:104px; padding:7px 9px; border:1.5px solid var(--rule-2,var(--line,#69747a)); border-radius:10px; background:var(--surface,#fff); color:var(--ink,#172126); box-shadow:0 3px 10px #0002; cursor:pointer; transform:translate(-50%,-50%); white-space:nowrap; }
.rx-marker-name { font-size:12px; font-weight:750; }
.rx-marker-value { font-size:11px; font-variant-numeric:tabular-nums; color:var(--muted,#657078); }
.rx-marker.rx-up { border-color:var(--high,#b72e3a); }
.rx-marker.rx-down { border-color:var(--low,#175fb8); }
.rx-marker.rx-group { min-width:auto; border-color:var(--brand-action); background:var(--surface); color:var(--brand-ink); box-shadow:0 3px 12px #003f4924; }
.rx-marker.rx-group .rx-marker-value { color:var(--brand-action); }
.rx-marker.is-selected { z-index:2; outline:3px solid color-mix(in srgb,var(--brand-focus) 55%,transparent); outline-offset:2px; }
@media (max-width:767px) {
  .rx-controls{grid-template-columns:1fr 1fr}.rx-controls label:first-child{grid-column:1/-1}
  .region-explorer-tabs { display:flex; gap:4px; position:sticky; top:104px; z-index:3; margin:0 0 8px; padding:4px; border:1px solid var(--rule); border-radius:12px; background:var(--surface-2); }
  .region-explorer-tabs button { flex:1; min-height:44px; border:0; border-radius:8px; background:transparent; color:var(--sub); font-weight:800; }
  .region-explorer-tabs button[aria-pressed="true"] { background:var(--brand-action); color:#fff; }
  .region-explorer-layout { display:block; min-height:520px; border-radius:14px; }
  .region-explorer-list { max-height:none; border-right:0; }
  .region-explorer-map { min-height:calc(100dvh - 190px); }
  .region-explorer [data-rx-map] { min-height:calc(100dvh - 190px); }
  .region-explorer.is-enhanced[data-rx-mobile-view="list"] .region-explorer-map { display:none; }
  .region-explorer.is-enhanced[data-rx-mobile-view="map"] .region-explorer-list { display:none; }
}
@media (prefers-reduced-motion:reduce) {
  .region-explorer [data-rx-row] { scroll-behavior:auto; }
}
