/*
 * Vristo: Mapa podnikania (/portal/mapa). Loaded only by the Vristo portal page, never
 * by the classic portal or the profile map embed. Same page skeleton as Registre a
 * Štatistiky (portal-vristo-registry.css: .vw-registry-layout heading and buttons):
 * breadcrumb heading, four summary cards, panels with 18/600 headings, button groups
 * like the statistics periods and collapsible notes like "Zdroje a význam údajov".
 * Markup and ids are shared with the classic page and portal-company-map.js; the
 * summary cards are the existing #cm-stats moved above the map with `order`.
 */

html[data-portal-ui="vristo"] #portal-main-container #company-map {--vm-muted:var(--vristo-page-muted);--vm-line:var(--vristo-page-line);--vm-subtle:var(--vristo-subtle);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-results {display:flex;flex-direction:column;gap:24px;min-width:0;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-results > * {margin:0;}
html[data-portal-ui="vristo"] #portal-main-container #company-map :is(#cm-registry-updated,#cm-registry-applied,#cm-finance-applied) {font-size:12px;color:var(--vm-muted);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-loading {min-height:120px;justify-content:center;border-radius:6px;background:var(--vristo-panel);box-shadow:var(--vristo-panel-shadow);}

/* Summary cards (registry .rx-summary-card, statistics 4-card row) */
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-stats {order:-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;width:100%;margin:0;padding:0;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-stats .stat {display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto auto;column-gap:16px;row-gap:0;align-items:center;min-width:0;padding:20px;border:0;border-radius:6px;background:var(--vristo-panel);box-shadow:var(--vristo-panel-shadow);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-stats .stat-figure {grid-column:1;grid-row:1 / span 3;display:grid;place-items:center;width:54px;height:54px;margin:0;border-radius:6px;background:color-mix(in srgb,currentColor 12%,transparent);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-stats .stat-figure i {font-size:24px;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-stats .stat:nth-child(4) .stat-figure {color:var(--color-info);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-stats :is(.stat-title,.stat-value,.stat-desc) {grid-column:2;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-stats .stat-title {font-size:12px;color:var(--vm-subtle);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-stats .stat-value {margin:0;font-size:22px;line-height:1.4;font-weight:700;color:var(--vristo-ink);font-variant-numeric:tabular-nums;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-stats .stat-desc {font-size:11px;line-height:1.5;color:var(--vm-subtle);}

/* Panels (.panel: 6 px radius, shadow, no border) */
html[data-portal-ui="vristo"] #portal-main-container #company-map :is(#cm-explore,#cm-analysis-grid > .card,#analytics-activities,#region-density,#cm-territory-table,#cm-method) {border:0;border-radius:6px;background:var(--vristo-panel);box-shadow:var(--vristo-panel-shadow);color:var(--vristo-ink);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-explore {overflow:hidden;}
html[data-portal-ui="vristo"] #portal-main-container #company-map :is(#cm-analysis-grid,#analytics-activities,#region-density) .card-body {padding:20px;gap:12px;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-analysis-grid {gap:24px;margin:0;}
html[data-portal-ui="vristo"] #portal-main-container #company-map :is(#cm-analysis-grid h2,#analytics-activities .card-title,#rd-title,#cm-companies-title) {margin:0;font-size:18px;line-height:28px;font-weight:600;color:var(--vristo-ink);}
html[data-portal-ui="vristo"] #portal-main-container #company-map :is(#cm-analysis-grid h2,#analytics-activities .card-title,#rd-title) > i {color:var(--color-primary);}
html[data-portal-ui="vristo"] #portal-main-container #company-map :is(#cm-ranking-description,#cm-ranking-hint,#cm-analysis-grid .card-body p,#analytics-activities [data-analytics-heading] p,#rd-context) {font-size:12px;line-height:18px;color:var(--vm-muted);}

/* Map panel */
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-map-toolbar {padding:16px 20px;border-bottom:1px solid var(--vm-line);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-map-hint {font-size:12px;color:var(--vm-muted);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-map-controls .join {display:flex;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-map-controls .join .btn {height:32px;min-height:32px;margin:0;padding:0 12px;border:1px solid var(--color-primary);border-radius:0;background:transparent;box-shadow:none;color:var(--color-primary);font-size:12px;font-weight:600;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-map-controls .join .btn + .btn {margin-left:-1px;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-map-controls .join .btn:first-child {border-radius:6px 0 0 6px;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-map-controls .join .btn:last-child {border-radius:0 6px 6px 0;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-map-controls .join .btn:hover {background:color-mix(in srgb,var(--color-primary) 10%,transparent);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-map-controls .join .btn[aria-pressed="true"] {position:relative;z-index:1;background:var(--color-primary);color:var(--color-primary-content);box-shadow:0 10px 20px -10px var(--color-primary);}
html[data-portal-ui="vristo"] #portal-main-container #company-map :is(#cm-metric,#cm-sort,#cm-place-pickers .select,#cm-company-jump) {height:36px;min-height:36px;border:1px solid var(--vristo-line);border-radius:6px;background-color:var(--vristo-panel);box-shadow:none;color:var(--vristo-ink);font-size:13px;font-weight:600;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-metric {width:auto;min-width:11rem;}
html[data-portal-ui="vristo"] #portal-main-container #company-map :is(#cm-metric,#cm-sort,#cm-place-pickers .select):focus {border-color:var(--color-primary);outline:0;}
html[data-portal-ui="vristo"] #portal-main-container #company-map :is(#cm-place-pickers .select:disabled) {opacity:.6;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-map-panel {padding:16px 20px 20px;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-legend {color:var(--vm-muted);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-coverage {padding:12px 20px;border-top:1px solid var(--vm-line);font-size:12px;color:var(--vm-muted);}

/* Companies beside the map */
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-companies {border-left:1px solid var(--vm-line);background:transparent;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-companies-heading {padding:16px 20px;border-bottom:1px solid var(--vm-line);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-companies-area {font-size:12px;color:var(--vm-subtle);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-companies-title {font-size:16px;line-height:24px;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-sort-label {padding:12px 20px;font-size:12px;color:var(--vm-subtle);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-company-list [data-company] {padding:12px 20px;border-bottom:1px solid var(--vm-line);transition:background-color 160ms ease;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-company-list [data-company]:hover {background:color-mix(in srgb,var(--color-primary) 4%,transparent);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-company-list a {font-size:14px;font-weight:600;color:var(--color-primary);text-decoration:none;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-company-list a:hover {text-decoration:underline;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-company-list [data-company-meta] {font-size:12px;color:var(--vm-subtle);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-company-pagination {padding:12px 20px;border-top:1px solid var(--vm-line);font-size:12px;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-company-pagination .join {gap:5px;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-company-pagination .join .btn {min-width:30px;height:30px;min-height:30px;padding:0 8px;border:1px solid var(--vristo-line);border-radius:4px;background:var(--vristo-panel);box-shadow:none;color:var(--vristo-ink);font-size:12px;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-company-pagination .join .btn:disabled {opacity:.45;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-company-page {border-color:var(--color-primary);background:var(--color-primary);color:var(--color-primary-content);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-company-jump {height:30px;min-height:30px;width:4.5rem;}

/* Charts, activities, density */
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-analysis-grid details > summary {width:max-content;font-size:12px;font-weight:600;color:var(--vm-subtle);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-analysis-grid details > summary:hover {color:var(--color-primary);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #analytics-activities [data-analytics-heading] .badge {height:auto;padding:3px 8px;border:0;border-radius:4px;background:var(--vristo-primary-soft);color:var(--color-primary);font-size:11px;font-weight:600;}
html[data-portal-ui="vristo"] #portal-main-container #company-map :is(#analytics-activities [data-action="retry"],#rd-retry) {align-self:flex-start;width:auto;height:32px;min-height:32px;padding:0 14px;border:1px solid var(--vristo-line);border-radius:6px;background:var(--vristo-panel);box-shadow:none;color:var(--vristo-ink);font-size:12px;}
html[data-portal-ui="vristo"] #portal-main-container #company-map :is(#analytics-activities [data-action="retry"],#rd-retry):hover {background:var(--vristo-canvas);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #analytics-activities details.collapse {border:1px solid var(--vm-line);border-radius:6px;background:transparent;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #analytics-activities details.collapse > .collapse-title {min-height:0;padding:12px 40px 12px 16px;font-size:13px;font-weight:600;color:var(--vristo-ink);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #analytics-activities .select {height:36px;min-height:36px;border-color:var(--vristo-line);border-radius:6px;background-color:var(--vristo-panel);font-size:13px;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #region-density [data-rd-controls] {display:flex;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #region-density [data-rd-controls] .btn {height:32px;min-height:32px;padding:6px 12px;border:1px solid var(--color-neutral);border-radius:0;background:transparent;box-shadow:none;color:var(--color-neutral);font-size:12px;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #region-density [data-rd-controls] .btn:first-child {border-radius:6px 0 0 6px;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #region-density [data-rd-controls] .btn:last-child {margin-left:-1px;border-radius:0 6px 6px 0;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #region-density [data-rd-controls] .btn[aria-pressed="true"] {background:var(--color-neutral);color:var(--color-neutral-content);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #region-density [data-rd-detail] {border-radius:6px;background:var(--vristo-canvas);}

/* Collapsible notes (registry "Zdroje a význam údajov") */
html[data-portal-ui="vristo"] #portal-main-container #company-map :is(#cm-territory-table,#cm-method) {padding:0;}
html[data-portal-ui="vristo"] #portal-main-container #company-map :is(#cm-territory-table,#cm-method) > summary {padding:16px 20px;font-size:14px;font-weight:600;color:var(--vristo-ink);}
html[data-portal-ui="vristo"] #portal-main-container #company-map :is(#cm-territory-table,#cm-method) > summary > i {color:var(--color-primary);opacity:1;}
html[data-portal-ui="vristo"] #portal-main-container #company-map :is(#cm-territory-table,#cm-method)[open] > summary {border-bottom:1px solid var(--vm-line);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-method > div {padding:16px 20px 20px;font-size:13px;line-height:22px;color:var(--vm-muted);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-table-heading {padding:16px 20px;border-bottom:1px solid var(--vm-line);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-table thead tr {background:var(--vristo-canvas);}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-table th {color:var(--vm-subtle);font-size:12px;}
html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-table td {border-color:var(--vm-line);font-size:13px;}
html[data-portal-ui="vristo"][data-theme="graphite"] #portal-main-container #company-map #cm-table thead tr {background:#1a2941;}

@media (max-width:1279px) {
  html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-stats .stat {column-gap:12px;padding:16px;}
  html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-stats .stat-figure {width:40px;height:40px;}
  html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-stats .stat-figure i {font-size:18px;}
  html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-stats .stat-value {font-size:18px;}
}
@media (max-width:767px) {
  html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-results {gap:16px;}
  html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-stats {grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
  html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-stats .stat {padding:14px 16px;}
  html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-stats .stat-value {font-size:20px;}
  html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-analysis-grid {gap:16px;}
  html[data-portal-ui="vristo"] #portal-main-container #company-map :is(#cm-map-toolbar,#cm-companies-heading,#cm-company-list [data-company],#cm-company-pagination,#cm-coverage,#cm-table-heading) {padding-inline:16px;}
  html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-map-panel {padding:12px;}
  html[data-portal-ui="vristo"] #portal-main-container #company-map :is(#cm-analysis-grid,#analytics-activities,#region-density) .card-body {padding:16px;}
  html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-companies {border-left:0;border-top:1px solid var(--vm-line);}
}
@media (max-width:479px) {
  html[data-portal-ui="vristo"] #portal-main-container #company-map #cm-stats {grid-template-columns:1fr;}
}
