#company-map [hidden]{display:none!important}
#company-map{--cm-muted:color-mix(in oklab,var(--color-base-content) 58%,transparent);--cm-line:var(--color-base-300)}
#company-map [data-map-identity]{display:flex;align-items:center;gap:.75rem;min-width:0}
#company-map img[data-map-emblem]{display:block;object-fit:contain;width:32px;height:36px;flex:none}
#cm-map-emblem:empty{display:none}
#cm-map-emblem img[data-map-emblem]{width:38px;height:44px}
#company-map [data-map-emblem-note]{display:block;font-size:.65rem;color:var(--cm-muted);margin-top:.2rem}
#cm-svg image[data-map-emblem]{pointer-events:none;filter:drop-shadow(0 1px 1px var(--color-base-100))}
#company-map label>span:first-child{display:block;font-size:.8rem;font-weight:500;margin-bottom:.45rem}
#cm-filter-grid{display:grid;grid-template-columns:1fr 1fr 1.2fr auto;gap:1rem;align-items:end}
#cm-filter-grid>*{min-width:0}#cm-filters .card-body{padding:1.35rem;gap:1rem}
#cm-dates,#cm-activity-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:.8rem;align-items:end}#cm-dates{grid-template-columns:1fr 1fr auto;max-width:650px}
#cm-activity-fields>label{min-width:0}#cm-activity-detail summary{color:var(--cm-muted)}
#cm-map-toolbar,#cm-map-controls,#cm-table-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
#cm-map-toolbar [data-map-identity]{flex:1 1 340px;min-width:0}#cm-map-toolbar [data-map-identity]>div{min-width:0}
#cm-map-location ul{display:flex;flex-wrap:wrap;row-gap:.15rem}#cm-map-location li{white-space:normal;line-height:1.4}#cm-map-location button{color:var(--cm-muted);font-size:.82rem;cursor:pointer}#cm-map-location button:hover{color:var(--color-primary);text-decoration:underline}#cm-map-location [aria-current="location"]{color:var(--color-base-content);font-size:1.125rem;font-weight:700}
#cm-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;border-radius:var(--radius-box)}
#cm-stats .stat{padding:1.2rem 1.35rem;min-width:0}#cm-stats .stat-value{font-size:clamp(1.5rem,2.3vw,2.15rem);font-variant-numeric:tabular-nums;margin:.35rem 0}#cm-stats .stat-desc{white-space:normal}
#cm-map-toolbar,#cm-table-heading{padding:1.25rem 1.35rem;border-bottom:1px solid var(--cm-line)}
#cm-explore-grid{display:grid;grid-template-columns:minmax(0,1fr) 290px}
#cm-map-panel{padding:1.3rem;min-width:0}#cm-map-canvas{position:relative;isolation:isolate;background:radial-gradient(ellipse at 50% 60%,color-mix(in oklab,var(--color-primary) 4%,transparent),transparent 68%);min-height:280px;display:flex;align-items:center}
#cm-svg{display:block;width:100%;height:360px;overflow:visible}#cm-svg [data-area]{cursor:pointer;stroke:var(--color-base-100);stroke-width:1.8;vector-effect:non-scaling-stroke;outline:none;fill-rule:evenodd;transition:fill .12s}
#cm-svg [data-map-outlines]{pointer-events:none}
#cm-svg [data-outline]{fill:none;stroke:var(--color-primary);stroke-width:2.5;stroke-linejoin:round;vector-effect:non-scaling-stroke;pointer-events:none}
#cm-svg [data-outline="hover-halo"]{stroke:var(--color-base-100);stroke-width:4.5}
#cm-svg [data-outline="selected"]{stroke-width:3}
#cm-svg text{font-family:inherit;fill:var(--color-base-content);text-anchor:middle;pointer-events:none;paint-order:stroke;stroke:var(--color-base-100);stroke-width:3;stroke-linejoin:round}
#cm-svg [data-map-bar]{cursor:pointer;pointer-events:visiblePainted}#cm-svg [data-map-label]{font-weight:600}
#cm-svg[data-map-level="district"]{height:500px;max-height:65vh}
#cm-svg [data-map-bar]:focus{outline:none;filter:drop-shadow(0 0 2px var(--color-base-content))}
#cm-svg[data-map-level="district"] [data-area]{cursor:default}
#cm-tooltip{position:absolute;left:0;top:0;width:min(18rem,calc(100% - 1rem));max-width:calc(100% - 1rem);padding:0;overflow:hidden;border:1px solid color-mix(in oklab,var(--color-base-content) 13%,transparent);background:color-mix(in oklab,var(--color-base-100) 96%,transparent);border-radius:var(--radius-box);font-size:.78rem;line-height:1.4;box-shadow:0 1px 2px color-mix(in oklab,var(--color-base-content) 8%,transparent),0 16px 40px color-mix(in oklab,var(--color-base-content) 16%,transparent);pointer-events:none;z-index:4}
#cm-tooltip{background:var(--color-base-100);contain:layout paint;will-change:transform}
#cm-tooltip>[data-map-identity]{align-items:center;gap:.65rem;padding:.85rem .9rem .5rem}
#cm-tooltip strong{display:block;margin:0;font-size:.86rem;line-height:1.3;letter-spacing:-.01em}
#cm-tooltip>[data-map-identity]+span{display:block;padding:0 .9rem .7rem;font-size:.67rem;line-height:1.45}
#cm-legend{display:flex;gap:.6rem;align-items:center;justify-content:center;flex-wrap:wrap;font-size:.7rem;color:var(--cm-muted);min-height:30px}#cm-legend [data-scale]{width:135px;height:7px;border-radius:4px;background:linear-gradient(90deg,color-mix(in oklab,var(--color-primary) 10%,var(--color-base-100)),var(--color-primary))}#cm-legend [data-scale][data-diverging]{background:linear-gradient(90deg,var(--color-error),var(--color-base-300) 50%,var(--color-success))}
#cm-place-pickers{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin-top:1rem}#cm-place-pickers label{min-width:0}
#cm-ranking{padding:1.5rem 1.2rem;border-left:1px solid var(--cm-line);background:color-mix(in oklab,var(--color-base-200) 32%,transparent);border-bottom-right-radius:var(--radius-box)}
#cm-ranking-items{display:flex;flex-direction:column;gap:1.25rem;margin-top:1.65rem}#cm-ranking-items button,#cm-ranking-items [data-rank-row]{display:block;width:100%;text-align:left;font-size:.8rem}#cm-ranking-items button{cursor:pointer}#cm-ranking-items button:hover strong{text-decoration:underline}#cm-ranking-items [data-rank-title]{display:flex;align-items:baseline;justify-content:space-between;gap:.65rem}#cm-ranking-items strong{font-weight:500}#cm-ranking-items [data-rank-value]{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}#cm-ranking-items [data-track]{height:5px;background:var(--color-base-300);border-radius:9px;margin-top:.65rem;overflow:hidden}#cm-ranking-items [data-fill]{height:100%;background:var(--color-primary);border-radius:9px}
#cm-coverage{padding:.9rem 1.35rem;border-top:1px solid var(--cm-line);line-height:1.7}
#cm-trend-wrap{min-width:0}#cm-trend{width:100%;height:225px;display:block}#cm-trend text{fill:var(--cm-muted);font-size:11px;font-family:inherit}#cm-trend line{stroke:var(--cm-line);stroke-width:1}#cm-trend [data-series=births]{fill:var(--color-success)}#cm-trend [data-series=deaths]{fill:var(--color-error)}
#cm-trend-legend{display:flex;gap:1rem;color:var(--cm-muted)}#cm-trend-legend span{display:flex;gap:.4rem;align-items:center}#cm-trend-legend i{width:9px;height:9px;border-radius:2px;background:var(--color-success)}#cm-trend-legend [data-series=deaths]{background:var(--color-error)}
#cm-table{font-variant-numeric:tabular-nums}#cm-table th:not(:first-child),#cm-table td:not(:first-child){text-align:right}#cm-table td,#cm-table th{padding:.9rem 1.25rem}#cm-table td:first-child{min-width:180px}#cm-table tbody tr[data-selected=true]{background:color-mix(in oklab,var(--color-primary) 8%,transparent)}
#cm-table button{text-align:left;cursor:pointer}#cm-table button:hover{text-decoration:underline}#cm-table th{white-space:normal}#cm-method{padding:1.25rem 1.35rem}#cm-method>div{padding-top:1rem;line-height:1.7}
#cm-results[aria-busy=true]{opacity:.45;pointer-events:none}#cm-map-empty{text-align:center;padding:.7rem}
@media(min-width:1600px){#cm-svg{height:420px}#cm-explore-grid{grid-template-columns:minmax(0,1fr) 330px}}
@media(max-width:1150px){#cm-filter-grid{grid-template-columns:1fr 1fr}#cm-explore-grid{grid-template-columns:minmax(0,1fr)}#cm-ranking{border-left:0;border-top:1px solid var(--cm-line)}#cm-ranking-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:1rem}#cm-stats .stat{padding:1rem}#cm-stats .stat-title{font-size:.8rem}}
@media(max-width:640px){#cm-filter-grid,#cm-activity-fields{grid-template-columns:1fr}#cm-dates{grid-template-columns:1fr 1fr}#cm-stats{grid-template-columns:1fr 1fr;grid-auto-flow:row}#cm-stats .stat:nth-child(3){border-left:0}#cm-stats .stat:nth-child(n+3){border-top:1px solid var(--cm-line)}#cm-ranking-items{grid-template-columns:1fr 1fr}#cm-map-toolbar{padding:1rem}#cm-map-controls{gap:.6rem;width:100%}#cm-map-panel{padding:1rem .6rem}#cm-map-canvas{min-height:210px}#cm-svg{height:245px}#cm-map-controls .select{max-width:165px}#cm-place-pickers{grid-template-columns:1fr}#cm-trend{height:185px}#cm-filters .card-body{padding:1rem}}
@media(prefers-reduced-motion:reduce){#cm-svg [data-area]{transition:none}}
#cm-filters{position:relative;z-index:20;overflow:visible}
#cm-filter-grid{align-items:start}#cm-filter-grid>label{padding-top:0}#cm-apply{align-self:start;margin-top:1.65rem}
#cm-activity-picker{position:relative;min-width:0}
#cm-activity-picker .dropdown-content{position:static;width:100%;max-width:100%;z-index:60}
#cm-activity-picker .portal-company-activity-panel{display:flex;max-height:var(--portal-activity-panel-max-height,32rem);flex-direction:column;overflow:hidden;border-radius:inherit;overscroll-behavior:contain}
#cm-activity-picker .portal-company-activity-options{min-height:0;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
#cm-activity-picker [data-add-activity-filter]{cursor:pointer}#cm-activity-picker [data-add-activity-filter]:disabled{cursor:default}
#cm-activity-picker #portal-company-activity-trigger-label{display:block;margin:0;font-weight:400;font-size:.85rem}
#cm-activity-picker #portal-company-activity-selected{min-width:0}#cm-activity-picker #portal-company-activity-selected>button{max-width:100%}
#cm-activity-picker #portal-company-activity-match-wrap>div:last-child{display:flex;flex-direction:column}
@media(max-width:640px){#cm-apply{margin-top:0}#cm-activity-picker .dropdown-content{min-width:0;width:100%;max-width:100%}#cm-svg{height:285px}}
/* Map workspace: filters stay folded, company results remain beside the map. */
#company-map{display:flex;flex-direction:column;gap:1rem}#company-map>*{margin:0}
#cm-filter-disclosure{position:relative;z-index:20;overflow:visible}
#cm-filter-toggle{display:flex;align-items:center;gap:1rem;padding:.85rem 1.1rem;cursor:pointer;list-style:none;font-size:.875rem}
#cm-filter-toggle::-webkit-details-marker{display:none}#cm-filter-toggle>span:first-child{display:flex;align-items:center;gap:.5rem;font-weight:600}
#cm-filter-toggle>i{margin-left:auto;font-size:.65rem}#cm-filter-disclosure[open] #cm-filter-toggle>i{transform:rotate(180deg)}
#cm-filter-disclosure[open] #cm-filter-toggle{border-bottom:1px solid var(--cm-line)}
#cm-filter-grid{grid-template-columns:1fr 1fr 1fr 1.5fr}
#cm-filter-actions{display:flex;gap:.65rem;align-items:center}#cm-apply{margin:0;align-self:auto}
#cm-explore-grid{grid-template-columns:minmax(0,1fr) minmax(320px,34%)}
#cm-map-panel{display:flex;flex-direction:column;padding:1rem 1.25rem}
#cm-map-canvas{flex:1;min-height:370px}#cm-svg{height:440px;max-height:55vh}
#cm-map-toolbar{padding:1rem 1.25rem}#cm-map-controls{gap:.6rem}
#cm-companies{display:flex;flex-direction:column;min-width:0;max-height:610px;border-left:1px solid var(--cm-line);background:color-mix(in oklab,var(--color-base-200) 25%,var(--color-base-100))}
#cm-companies-heading{padding:1rem 1.15rem;border-bottom:1px solid var(--cm-line)}#cm-companies-title{margin:.25rem 0 .45rem}#cm-companies-totals{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem}#cm-companies-count-context{margin:0;line-height:1.5}#cm-companies-scope{margin-top:.6rem;line-height:1.55}
#cm-company-list{flex:1;min-height:120px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
#cm-company-list [data-company]{display:block;padding:.85rem 1.15rem;border-bottom:1px solid var(--cm-line)}
#cm-company-list a{display:block;line-height:1.45;font-size:.85rem;font-weight:600;color:var(--color-base-content);text-decoration:none}
#cm-company-list a:hover{color:var(--color-primary);text-decoration:underline}
#cm-company-list [data-company-meta]{display:flex;flex-wrap:wrap;gap:.35rem .55rem;margin-top:.4rem;font-size:.72rem;color:var(--cm-muted)}
#cm-company-list [data-company-status]{display:inline-flex;align-items:center;gap:.3rem}
#cm-company-list [data-company-status]::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--color-base-content);opacity:.35}
#cm-company-list [data-company-status=active]::before{background:var(--color-success);opacity:1}
#cm-company-loading,#cm-company-error{margin:1rem}#cm-company-empty{padding:2rem 1rem;line-height:1.7;text-align:center;font-size:.85rem;color:var(--cm-muted)}
#cm-company-pagination{padding:.8rem 1.1rem;border-top:1px solid var(--cm-line);display:flex;align-items:center;justify-content:space-between;gap:.65rem;flex-wrap:wrap}
#cm-company-pagination label{display:flex;align-items:center;gap:.4rem;color:var(--cm-muted)}#cm-company-jump{width:4.5rem}
#cm-stats{margin-top:1.25rem}#cm-stats .stat{padding:.85rem 1.1rem}#cm-stats .stat-value{font-size:1.65rem}
#cm-analysis-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:1.25rem;margin-top:1.25rem}#cm-analysis-grid>*{min-width:0}
#cm-ranking{padding:0;border:1px solid var(--cm-line);background:var(--color-base-100);border-radius:var(--radius-box)}
#cm-ranking-wrap,#cm-trend-wrap{position:relative;height:260px;min-width:0}#cm-trend,#cm-ranking-chart{width:100%;height:100%}
#cm-analysis-grid .card-body{padding:1.25rem;gap:.8rem}#cm-trend-legend{display:none}
#cm-territory-table>summary{padding:1rem 1.25rem}#cm-territory-table[open]>summary{border-bottom:1px solid var(--cm-line)}
@media(max-width:1200px){#cm-filter-grid{grid-template-columns:1fr 1fr}#cm-explore-grid{grid-template-columns:minmax(0,1fr) 310px}#cm-svg{height:370px}#cm-map-canvas{min-height:320px}#cm-analysis-grid{grid-template-columns:1fr}}
@media(max-width:900px){#cm-explore-grid{grid-template-columns:1fr}#cm-companies{border-left:0;border-top:1px solid var(--cm-line);max-height:530px}#cm-svg{height:380px}#cm-map-canvas{min-height:280px}}
@media(max-width:640px){#cm-filter-grid{grid-template-columns:1fr}#cm-filter-toggle{gap:.5rem}#cm-map-panel{padding:.8rem .6rem}#cm-map-canvas{min-height:240px}#cm-svg{height:270px;max-height:none}#cm-map-controls{justify-content:flex-start}#cm-map-toolbar{padding:1rem}#cm-company-list [data-company]{padding:.85rem 1rem}#cm-analysis-grid{gap:1rem}#cm-stats .stat-value{font-size:1.4rem}#cm-activity-picker .dropdown-content{max-width:100%}}
@media(max-width:640px){#cm-svg[data-map-level="district"]{height:360px;max-height:none}}
#cm-finance-filters { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.85rem; align-items:end; margin-top:.8rem; }
#cm-profile-context .card-body { padding:1.2rem 1.25rem;gap:1rem; }
#cm-profile-fields { display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:1.5rem;align-items:start; }
#cm-profile-fields > * { min-width:0; }
#cm-profile-label { margin:.35rem 0;font-size:1rem;line-height:1.5;font-weight:600; }
#cm-profile-form { font-size:.8rem;line-height:1.6;color:var(--cm-muted); }
@media(max-width:700px) { #cm-profile-fields { grid-template-columns:1fr;gap:1.1rem; } }
#cm-tooltip [data-tooltip-values]{display:grid;gap:.1rem;min-width:0;margin:0 .45rem .5rem;padding:.35rem .4rem;background:color-mix(in oklab,var(--color-base-200) 72%,transparent);border-radius:calc(var(--radius-box) - 3px)}
#cm-tooltip [data-tooltip-row]{display:flex;justify-content:space-between;align-items:baseline;gap:1.25rem;padding:.3rem .4rem;border-radius:var(--radius-field)}
#cm-tooltip [data-tooltip-row]>span:first-child{color:var(--cm-muted)}
#cm-tooltip [data-tooltip-row][data-current=true]{background:color-mix(in oklab,var(--color-primary) 9%,var(--color-base-100));font-weight:600}
#cm-tooltip [data-tooltip-row][data-current=true]>span:first-child{color:var(--color-base-content)}
#cm-tooltip [data-tooltip-row] b{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
#cm-tooltip [data-tooltip-values]+span{display:block;padding:.15rem .9rem .8rem;font-size:.67rem;line-height:1.45}
#cm-finance-filters label { min-width:0; font-size:.8rem; }
#cm-finance-filters label:not(:first-child) { display:flex;flex-direction:column;gap:.4rem; }
#cm-sort-label { display:block;padding:0 1.2rem .8rem; }
#cm-place-pickers { grid-template-columns:repeat(3,minmax(0,1fr)); }
[data-profile-map-embed] { margin:0; min-height:0; }
[data-profile-map-embed] #company-map > header, [data-profile-map-embed] #cm-stats, [data-profile-map-embed] #cm-analysis-grid, [data-profile-map-embed] #analytics-activities, [data-profile-map-embed] #region-density, [data-profile-map-embed] #cm-results > details { display:none; }
[data-profile-map-embed] #company-map { padding:0 1px 8px; }
[data-profile-map-embed] #cm-explore-grid { grid-template-columns:minmax(0,1.45fr) minmax(285px,1fr); }
[data-profile-map-embed] #cm-map-canvas { height:430px; }
@media(max-width:800px) { #cm-finance-filters { grid-template-columns:repeat(2,minmax(0,1fr)); } [data-profile-map-embed] #cm-explore-grid { grid-template-columns:1fr; } [data-profile-map-embed] #cm-map-canvas { height:340px; } }
@media(max-width:500px) { #cm-place-pickers { grid-template-columns:1fr; } #cm-finance-filters { grid-template-columns:1fr; } }
#cm-map-canvas>#cm-filter-bar{position:absolute;left:.35rem;bottom:.6rem;z-index:3;display:block;margin:0;padding:0;border:0;background:transparent;box-shadow:none}
#cm-filter-toggle{display:inline-flex;padding:.5rem .85rem}
#cm-filter-dialog .modal-box{width:min(72rem,calc(100vw - 2rem));max-width:72rem;height:auto;max-height:90dvh;padding:0;display:flex;flex-direction:column;overflow:hidden}
#cm-dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.5rem;border-bottom:1px solid var(--color-base-300);flex-shrink:0}
#cm-filters{display:flex;min-height:0;overflow:hidden;border-radius:0}
#cm-filters>[data-filter-scroll]{overflow-y:auto;overscroll-behavior:contain;min-height:0;padding:1.5rem;gap:1.25rem}
#cm-filter-dialog #cm-filter-actions{padding:1rem 1.5rem;border-top:1px solid var(--color-base-300);margin:0;flex-shrink:0}
#cm-filters .cm-register-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1rem}
#cm-filters .cm-register-grid>label{display:flex;flex-direction:column;gap:.4rem;font-size:.875rem;min-width:0}
#cm-filters details.collapse{visibility:visible}
#cm-register-filters .collapse-title,#cm-amount-filters .collapse-title{font-size:.95rem}
#cm-register-filters .collapse-content,#cm-amount-filters .collapse-content{padding-top:0}
#cm-filter-dialog .select,#cm-filter-dialog .input{max-width:100%;min-width:0}
.cm-registry-badges{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.6rem}
.cm-registry-badges .badge{gap:.3rem}
#cm-map-controls #cm-metric{max-width:20rem}
@media(max-width:767px){#cm-filters .cm-register-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:639px){#cm-filter-dialog .modal-box{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0}#cm-filters{flex:1}#cm-filters>[data-filter-scroll]{padding:1rem}#cm-dialog-heading,#cm-filter-dialog #cm-filter-actions{padding:1rem}#cm-filters .cm-register-grid{grid-template-columns:minmax(0,1fr)}#cm-map-controls #cm-metric{max-width:100%;width:100%}#cm-map-controls>label{width:100%}}
#cm-filters>[data-filter-scroll]>*{flex-shrink:0}
#cm-filters details[open]::details-content{height:auto;overflow:visible}
#cm-filter-dialog #cm-apply{margin-top:0}
#cm-filter-toggle>i{margin-left:0;font-size:.85rem}
/* Use the directory's side sheet and inline activity picker in profile frames too. */
html[data-portal-ui="vristo"] #cm-filter-dialog #cm-filters{flex:1;min-height:0;border:0;border-radius:0}
html[data-portal-ui="vristo"] #cm-filter-dialog :is(#cm-filter-grid,#cm-finance-filters,.cm-register-grid){grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}
html[data-portal-ui="vristo"] #cm-filter-dialog #cm-activity-picker{grid-column:1/-1}
html[data-portal-ui="vristo"] #cm-filter-dialog #cm-finance-filters{margin:0}
html[data-portal-ui="vristo"] #cm-filter-dialog #cm-filter-actions{background:var(--color-base-100)}
@media(max-width:639px){html[data-portal-ui="vristo"] #cm-filter-dialog :is(#cm-filter-grid,#cm-finance-filters,.cm-register-grid){grid-template-columns:minmax(0,1fr)}}
