/* Scoped region UI; desktop picker is anchored to its header slot. */
.sr-regions.sr-in-header { background:transparent; border:0; min-width:150px; position:relative; }
.sr-in-header details { padding:0; }
.sr-in-header summary { font-size:14px; font-weight:600; }
.sr-in-header .sr-regions-panel { position:absolute; z-index:1100; top:100%; left:0; width:360px; max-width:80vw; background:#fff; padding:16px; border:1px solid #d5dfe6; border-radius:6px; box-shadow:0 8px 24px #0002; }
.sr-in-header summary { font-size:0; }
.sr-in-header summary::before { content:'⌖ Город: '; font-size:14px; color:#70a83b; }
.sr-in-header [data-sr-current] { font-size:14px; }
.sr-regions { box-sizing:border-box; width:100%; color:#202b36; background:#f3f6f8; font:14px/1.5 Arial,sans-serif; border-bottom:1px solid #d5dfe6; }
.sr-regions *, .sr-region-page * { box-sizing:border-box; }
.sr-regions details { max-width:1200px; margin:0 auto; padding:8px 16px; }
.sr-regions summary { cursor:pointer; padding:4px 0; min-height:32px; }
.sr-regions-panel { max-width:720px; padding:4px 0 12px; }
.sr-regions p { margin:8px 0; }
.sr-regions label { display:block; font-weight:600; }
.sr-regions input, .sr-regions select, .sr-regions button { font:inherit; min-height:44px; max-width:100%; padding:8px 12px; margin:6px 8px 6px 0; border:1px solid #526a7b; border-radius:4px; color:#202b36; background:#fff; }
.sr-regions button { cursor:pointer; }
.sr-regions [hidden] { display:none!important; }
.sr-regions a, .sr-region-page a { color:#095996; text-decoration:underline; }
.sr-regions :focus-visible, .sr-region-page a:focus-visible { outline:3px solid #126cb5; outline-offset:3px; }
.sr-region-page { max-width:980px; padding:24px 16px; margin:0 auto; color:#202b36; font:16px/1.65 Arial,sans-serif; overflow-wrap:break-word; }
.sr-region-page h1 { font-size:clamp(24px,4vw,34px); line-height:1.25; margin:0 0 24px; }
.sr-region-page h2 { font-size:22px; line-height:1.35; margin:28px 0 12px; }
.sr-region-page li { margin-bottom:12px; }
.sr-city-nav { max-height:360px; overflow:auto; border:1px solid #d5dfe6; padding:8px 16px; }
.sr-regions input, .sr-regions select { display:block; width:100%; }
.sr-regions-panel { max-height:75vh; overflow:auto; overscroll-behavior:contain; }
@media(max-width:480px) { .sr-regions select { display:block; width:100%; } .sr-regions button { width:100%; margin-right:0; } }
