.company-map{--map-empty:#e8e5ed;margin:36px 0 48px;padding-top:24px;border-top:1px solid var(--line,#dcd8e5);color:var(--text,#25222d)}
.company-map-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:18px}.company-map-heading h2{font-size:24px;line-height:1.2;margin:0 0 7px}.company-map-heading p{margin:0;color:var(--muted,#65606e);font-size:13px}
.company-map-scopes{display:flex;gap:4px;border:1px solid var(--line,#dcd8e5);border-radius:8px;padding:4px;flex-shrink:0;background:var(--surface,#fff)}
.company-map button{font:inherit;cursor:pointer}.company-map button:disabled{cursor:not-allowed;opacity:.48}.company-map-scopes button{min-width:76px;min-height:44px;padding:8px 18px;border:0;border-radius:5px;background:transparent;color:var(--text,#25222d)}.company-map-scopes button[aria-pressed=true]{background:var(--accent,#5834ac);color:#fff}
.company-map-tools{display:grid;grid-template-columns:minmax(210px,1.6fr) minmax(150px,1fr) minmax(150px,1fr) auto;align-items:end;gap:12px;padding:0 0 18px}.company-map-tools label{display:grid;gap:6px;min-width:0;font-size:12px;color:var(--muted,#65606e)}.company-map-tools .company-map-search{min-width:0}.company-map-tools input,.company-map-tools select{box-sizing:border-box;min-height:44px;width:100%;padding:9px 12px;border:1px solid var(--line,#dcd8e5);border-radius:7px;background:var(--surface,#fff);color:var(--text,#25222d);font:inherit}.company-map-tools input{font-size:16px}.company-map-tools select{padding-right:30px}.company-map-clear{min-height:44px;white-space:nowrap}.company-map-coverage{grid-column:1/-1;color:var(--muted,#65606e);font-size:12px;font-variant-numeric:tabular-nums}
.company-map-layout{display:grid;grid-template-columns:minmax(0,2.15fr) minmax(300px,1fr);gap:20px;align-items:start}.company-map-canvas{min-width:0;overflow:hidden;border:1px solid var(--line,#dcd8e5);border-radius:10px;background:var(--surface,#fff);padding:12px}.company-map-results{min-width:0;overflow:hidden}
.company-map-canvas-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;margin-bottom:8px}.company-map-zoom{display:flex;gap:4px}.company-map-zoom button{min-width:44px;min-height:44px;padding:8px 10px;border:1px solid var(--line,#dcd8e5);background:transparent;color:var(--text,#25222d);border-radius:6px}.company-map-zoom button:hover{background:var(--surface-raised,#f4f1f8)}.company-map-zoom button[data-map-zoom=reset]{min-width:62px;font-size:12px}.company-map-marker-toggle{display:flex;align-items:center;gap:7px;min-height:44px;font-size:12px;color:var(--muted,#65606e);white-space:nowrap}.company-map-marker-toggle input{width:18px;height:18px;accent-color:var(--accent,#5834ac)}
.company-map-plot{position:relative;height:clamp(300px,34vw,500px);display:grid;place-items:center;overflow:hidden;border:1px solid color-mix(in srgb,var(--line,#dcd8e5) 65%,transparent);border-radius:7px;background:color-mix(in srgb,var(--surface,#fff) 70%,var(--map-empty));touch-action:pan-y}.company-map-plot svg{display:block;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;overflow:hidden}.company-map-plot,.company-map-plot svg,.company-map-plot :is(.company-map-region,.company-map-marker){-webkit-tap-highlight-color:transparent}.company-map-plot:focus,.company-map-plot:focus-visible{outline:2px solid var(--accent,#5834ac);outline-offset:3px;box-shadow:none}.company-map-region{stroke:var(--surface,#fff);stroke-width:.7;vector-effect:non-scaling-stroke}.company-map-region[role=button]{cursor:pointer}.company-map-region[role=button]:hover{stroke:var(--accent,#5834ac);stroke-width:1.5}.company-map-region:focus,.company-map-region:focus-visible{stroke:var(--accent,#5834ac);stroke-width:2.5;outline:0 !important;box-shadow:none}.company-map-region.is-selected{stroke:var(--accent,#5834ac);stroke-width:2.25;outline:0}.company-map-label{font-size:12px;fill:#25222d;paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round}.company-map-marker{cursor:pointer}.company-map-marker:focus,.company-map-marker:focus-visible{outline:0 !important;box-shadow:none}.company-map-marker circle{fill:var(--accent,#5834ac);fill-opacity:.88;stroke:#fff;stroke-width:1.4;vector-effect:non-scaling-stroke}.company-map-marker .company-map-marker-halo,.company-map-marker .company-map-marker-ring{visibility:hidden;fill:none;pointer-events:none}.company-map-marker .company-map-marker-halo{stroke:#fff;stroke-width:5}.company-map-marker .company-map-marker-ring{stroke:var(--accent,#5834ac);stroke-width:2}.company-map-marker:focus-visible .company-map-marker-halo,.company-map-marker:focus-visible .company-map-marker-ring{visibility:visible}.company-map-marker-label{fill:#fff;font-size:11px;font-weight:700;stroke:none;stroke-linejoin:round;pointer-events:none}.company-map-tooltip{position:absolute;z-index:2;max-width:min(220px,calc(100% - 16px));padding:7px 9px;border:1px solid color-mix(in srgb,var(--accent,#5834ac) 35%,var(--line,#dcd8e5));border-radius:7px;background:color-mix(in srgb,var(--surface,#fff) 96%,var(--accent,#5834ac));color:var(--text,#25222d);font-size:12px;line-height:1.35;box-shadow:0 5px 16px rgb(37 34 45 / 18%);pointer-events:none}.company-map-tooltip[hidden]{display:none}.company-map-tooltip strong,.company-map-tooltip span{display:block}.company-map-hover{min-height:24px;margin:8px 2px 6px;font-size:13px;color:var(--text,#25222d);font-variant-numeric:tabular-nums}.company-map-legend{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;padding-top:8px;font-size:11px;color:var(--muted,#65606e)}.company-map-legend strong{font-size:12px;color:var(--text,#25222d)}.company-map-legend-items{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.company-map-legend-item{display:inline-flex;align-items:center;gap:4px;font-variant-numeric:tabular-nums}.company-map-legend-item i{display:inline-block;width:18px;height:9px;border-radius:2px;border:1px solid color-mix(in srgb,var(--line,#dcd8e5) 70%,transparent)}.company-map-legend-note{width:100%}
.company-map-result-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:14px}.company-map-result-summary>div{display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:baseline;padding:10px 11px;border-bottom:1px solid var(--line,#dcd8e5);background:var(--surface,#fff)}.company-map-result-summary strong{font-size:22px;line-height:1;font-variant-numeric:tabular-nums}.company-map-result-summary span{font-size:12px;color:var(--muted,#65606e)}.company-map-result-summary small{grid-column:2;color:var(--muted,#65606e);font-size:11px}.company-map-drilldown{grid-column:1/-1;min-height:44px;border:0;background:transparent;color:var(--accent,#5834ac);text-align:left;padding:6px 0}
.company-map-regions{margin-bottom:16px}.company-map-regions-heading,.company-map-list-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.company-map-regions-heading h3,.company-map-list-heading h3{font-size:16px;margin:0 0 8px}.company-map-regions-heading span,.company-map-list-heading>span{font-size:11px;color:var(--muted,#65606e)}.company-map-region-chips{display:flex;flex-wrap:wrap;gap:6px;max-height:126px;overflow:auto;padding:2px 1px 4px}.company-map-region-chip{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:6px 9px;border:1px solid var(--line,#dcd8e5);border-radius:6px;background:transparent;color:var(--text,#25222d);font-size:12px}.company-map-region-chip:hover,.company-map-region-chip.is-selected{border-color:var(--accent,#5834ac);background:color-mix(in srgb,var(--accent,#5834ac) 9%,transparent)}.company-map-region-chip strong{font-variant-numeric:tabular-nums}.company-map-region-chip.is-pending{color:var(--muted,#65606e)}
.company-map-list-heading{border-top:1px solid var(--line,#dcd8e5);padding-top:13px}.company-map-list-heading h3 small{font-size:11px;font-weight:400;color:var(--muted,#65606e);margin-left:5px}.company-map-company-list{list-style:none;margin:0;padding:0;max-height:545px;overflow:auto;border-bottom:1px solid var(--line,#dcd8e5)}.company-map-company-list li{padding:10px 2px;border-top:1px solid var(--line,#dcd8e5)}.company-map-company-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.company-map-company-name{display:block;min-height:30px;color:var(--text,#25222d);font-weight:650;text-decoration:none}.company-map-company-name:hover{text-decoration:underline;text-underline-offset:3px}.company-map-company-count{flex:0 0 auto;color:var(--muted,#65606e);font-size:11px;font-variant-numeric:tabular-nums}.company-map-company-meta{display:flex;align-items:center;gap:6px;min-height:30px;color:var(--muted,#65606e);font-size:11px}.company-map-company-meta>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.company-map-company-location{min-height:30px;padding:3px 0;border:0;background:none;color:var(--accent,#5834ac);font:inherit;text-align:left}.company-map-company-location:hover{text-decoration:underline;text-underline-offset:3px}.company-map-company-location.is-pending,.company-map-source.is-pending{color:var(--muted,#65606e)}.company-map-company-links{display:flex;flex-wrap:wrap;gap:5px 12px;align-items:center;font-size:11px}.company-map-company-links a{color:var(--accent,#5834ac);text-decoration:none}.company-map-company-links a:hover{text-decoration:underline;text-underline-offset:3px}.company-map-source{color:var(--accent,#5834ac);text-decoration:none}.company-map-source:hover{text-decoration:underline;text-underline-offset:3px}.company-map-pagination{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:10px;font-size:11px;color:var(--muted,#65606e)}.company-map-pagination button{min-height:44px;padding:7px 11px;border:1px solid var(--line,#dcd8e5);border-radius:6px;background:transparent;color:var(--text,#25222d)}.company-map-empty-note{display:block;padding:16px 2px;color:var(--muted,#65606e);font-size:12px}.company-map-method{margin-top:16px;font-size:12px;color:var(--muted,#65606e)}.company-map-method summary{cursor:pointer;min-height:36px;padding:8px 0}.company-map-method p{max-width:85ch;line-height:1.8}.company-map-method a{color:var(--accent,#5834ac)}.company-map-loading,.company-map-error{text-align:center;padding:24px;color:var(--muted,#65606e)}.company-map-error p{margin:0 0 12px}.company-map :is(button,input,select,a,summary):focus-visible{outline:2px solid var(--accent,#5834ac);outline-offset:3px}.company-map input::placeholder{color:var(--muted,#65606e)}
[data-theme=dark] .company-map{--map-empty:#333039}.company-map [data-map-zoom=reset]{color:var(--accent,#5834ac)}
@media(max-width:900px){.company-map-tools{grid-template-columns:minmax(180px,1.5fr) minmax(145px,1fr) minmax(145px,1fr) auto}.company-map-layout{grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);gap:14px}.company-map-company-links{gap:4px 8px}}
@media(max-width:760px){.company-map{margin-top:28px;padding-top:20px}.company-map-heading{align-items:flex-start;flex-direction:column;gap:14px}.company-map-heading h2{font-size:22px}.company-map-scopes{width:100%}.company-map-scopes button{flex:1}.company-map-tools{grid-template-columns:1fr 1fr;gap:10px}.company-map-tools .company-map-search{grid-column:1/-1}.company-map-clear{grid-column:1/-1;width:100%}.company-map-coverage{grid-column:1/-1}.company-map-layout{grid-template-columns:1fr;gap:18px}.company-map-canvas{padding:9px}.company-map-plot{height:320px}.company-map-canvas-tools{align-items:flex-start;flex-wrap:wrap}.company-map-marker-toggle{margin-left:auto}.company-map-result-summary{margin-bottom:12px}.company-map-company-list{max-height:480px}.company-map-company-name{min-height:36px}.company-map-company-location{min-height:36px}.company-map-method summary{min-height:44px}}
@media(max-width:390px){.company-map-tools label{font-size:11px}.company-map-tools input,.company-map-tools select{padding-left:9px;padding-right:23px}.company-map-plot{height:300px}.company-map-marker-toggle{width:100%;margin-left:0}.company-map-result-summary>div{padding:9px}.company-map-region-chips{max-height:115px}}

/* Fit this exploration surface to the available space, including narrow phones. */
.company-map-page .page-intro{padding:32px 0 12px}.company-map-page .page-intro h1{font-size:36px}.company-map-page .page-intro p{margin-top:10px}
.company-map-page .company-map{margin-top:18px;padding-top:18px}.company-map-heading p{font-size:13px}.company-map-result-summary .company-map-pending-link{background:none;border:0;padding:0;text-align:left;color:var(--accent,#5834ac);font-size:12px;min-height:30px}
.company-map-company-links{font-size:12px}.company-map-company-meta{font-size:12px}.company-map-region-chips{padding-right:5px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.company-map-company-list{scrollbar-width:thin;scrollbar-color:var(--line) transparent}
@media(max-width:760px){.company-map-page .page-intro{padding:24px 0 10px}.company-map-page .page-intro h1{font-size:30px}.company-map-page .company-map{margin-top:12px;padding-top:12px}.company-map-heading{gap:10px}.company-map-heading p{font-size:12px}.company-map-tools .company-map-clear{grid-column:auto;width:auto;justify-self:start;padding:8px 12px}.company-map-tools .company-map-coverage{grid-column:1/-1;font-size:12px}.company-map-company-list{max-height:none}.company-map-region-chip{min-height:44px}.company-map-company-name{min-height:44px;display:flex;align-items:center;gap:5px}.company-map-company-location{min-height:44px}.company-map-company-links{font-size:13px}.company-map-company-links a{min-height:44px;display:inline-flex;align-items:center}.company-map-result-summary .company-map-pending-link{min-height:44px}.company-map-marker-toggle{font-size:12px}.company-map-label{font-size:10px}.company-map-legend{font-size:12px}.company-map-hover{font-size:12px;line-height:1.7}}

/* Mobile view state, truthful coverage, and user-initiated map expansion. */
.company-map-heading-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.company-map-view-toggle{display:none}.company-map-canvas-actions{display:flex;align-items:center;gap:4px}.company-map-expand{min-width:44px;min-height:44px;padding:8px 10px;border:1px solid var(--line,#dcd8e5);border-radius:6px;background:transparent;color:var(--text,#25222d);font-size:18px;line-height:1}.company-map-expand:hover{background:var(--surface-raised,#f4f1f8)}.company-map-map-summary{display:flex;align-items:baseline;gap:10px;min-height:28px;margin:0 2px 4px;font-size:12px;font-variant-numeric:tabular-nums}.company-map-map-summary strong{font-size:14px;color:var(--text,#25222d)}.company-map-map-summary span{color:var(--muted,#65606e)}.company-map-hover{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-height:44px}.company-map-region-action{min-height:44px;padding:7px 11px;border:0;background:transparent;color:var(--accent,#5834ac);font:inherit;text-align:left}.company-map-region-action:hover{text-decoration:underline;text-underline-offset:3px}
.company-map-filter-disclosure{display:block;min-width:0}.company-map-filter-disclosure>summary{display:none}.company-map-filter-fields{display:grid;grid-template-columns:minmax(120px,1fr) minmax(120px,1fr) auto;align-items:end;gap:12px}
@media(min-width:761px){.company-map-tools{grid-template-columns:minmax(180px,1.6fr) minmax(380px,2.6fr)}}
.company-map[data-map-expanded]::before{content:"";position:fixed;inset:0;background:color-mix(in srgb,var(--surface,#fff) 94%,var(--accent,#5834ac));z-index:1000}.company-map[data-map-expanded] .company-map-canvas{position:fixed;inset:12px;z-index:1001;overflow:auto;max-height:calc(100vh - 24px);padding:16px;border-radius:12px;box-shadow:0 16px 48px rgb(37 34 45 / 22%)}.company-map[data-map-expanded] .company-map-plot,.company-map-canvas:fullscreen .company-map-plot{height:calc(100vh - 176px);min-height:260px;max-height:none}.company-map-canvas:fullscreen{width:100vw;height:100vh;box-sizing:border-box;overflow:auto;border:0;border-radius:0;padding:16px;background:var(--surface,#fff)}
@media(max-width:760px){.company-map-heading{align-items:flex-start;flex-direction:column;gap:10px}.company-map-heading-actions{width:100%;align-items:stretch;flex-direction:column}.company-map-scopes,.company-map-view-toggle{width:100%}.company-map-scopes button,.company-map-view-toggle button{flex:1}.company-map-view-toggle{display:flex}.company-map-tools{grid-template-columns:1fr;gap:10px}.company-map-tools .company-map-search{grid-column:1}.company-map-filter-disclosure{display:block;grid-column:1;border:1px solid var(--line,#dcd8e5);border-radius:7px;background:var(--surface,#fff)}.company-map-filter-disclosure>summary{display:flex;align-items:center;min-height:44px;padding:0 12px;color:var(--text,#25222d);font-size:13px;font-weight:650;cursor:pointer}.company-map-filter-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 10px 10px}.company-map-filter-fields .company-map-clear{grid-column:1/-1;width:max-content;justify-self:start;padding:8px 12px}.company-map-layout{display:block}.company-map-layout[data-map-view=map] .company-map-results{display:none}.company-map-layout[data-map-view=companies] .company-map-canvas{display:none}.company-map-canvas-actions{margin-left:auto}.company-map-result-summary{margin-bottom:12px}.company-map-company-list{max-height:none}.company-map-company-name,.company-map-company-location{min-height:44px}.company-map-company-name{display:flex;align-items:center;gap:5px}.company-map-company-links{font-size:13px}.company-map-company-links a{min-height:44px;display:inline-flex;align-items:center}.company-map-result-summary .company-map-pending-link{min-height:44px}.company-map-region-chip{min-height:44px}.company-map-legend{font-size:12px}.company-map-hover{font-size:12px;line-height:1.7}.company-map-method summary{min-height:44px}.company-map[data-map-expanded] .company-map-canvas{inset:8px;max-height:calc(100vh - 16px);padding:12px}.company-map[data-map-expanded] .company-map-plot,.company-map-canvas:fullscreen .company-map-plot{height:calc(100vh - 176px)}}
@media(max-width:760px){.company-map-filter-disclosure:not([open]) .company-map-filter-fields{display:none}.company-map-filter-disclosure[open] .company-map-filter-fields{display:grid}}
@media(max-width:390px){.company-map-canvas-actions{width:100%;margin-left:0;justify-content:space-between}.company-map-filter-fields{grid-template-columns:1fr}}
/* Compact mobile controls retain the existing white/purple visual language. */
.company-map-expand{flex-shrink:0;white-space:nowrap;font-size:13px;min-width:54px}
@media(max-width:760px){
 .company-map-heading-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
 .company-map-scopes{min-width:0;padding:3px}.company-map-scopes button{min-width:0;padding:7px 5px;font-size:13px;white-space:nowrap}
 .company-map-view-toggle{min-width:0;gap:2px;border-bottom:1px solid var(--line,#dcd8e5)}
 .company-map-view-toggle button{min-width:0;min-height:44px;padding:7px 4px;font-size:13px;white-space:nowrap;border:0;border-radius:0;background:transparent;color:var(--muted,#65606e)}
 .company-map-view-toggle button[aria-pressed=true]{color:var(--accent,#5834ac);box-shadow:inset 0 -2px var(--accent,#5834ac);font-weight:650}
 .company-map-view-toggle [data-map-view-count]{font-size:11px}
 .company-map-filter-disclosure>summary::after{content:'＋';margin-left:auto;color:var(--accent,#5834ac)}
 .company-map-filter-disclosure[open]>summary::after{content:'−'}
 .company-map-canvas-tools{display:grid;grid-template-columns:1fr auto;gap:6px;align-items:center}
 .company-map-canvas-actions{display:contents}.company-map-canvas-actions .company-map-expand{grid-column:2;grid-row:1}
 .company-map-canvas-actions .company-map-marker-toggle{grid-column:1/-1;grid-row:2;min-height:32px;width:auto;margin:0}
 .company-map-map-summary{flex-wrap:wrap;gap:3px}.company-map-map-summary span{display:none}
}
@media(max-width:760px){.company-map-heading>div:first-child{display:none}.company-map-map-summary{display:none}}
