/* ---------- CITY SELECTOR ---------- */
.city-bar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:28px}
.city-bar label{font-size:13px;font-weight:600;color:var(--ink-mute)}
select{font-family:'Inter';font-size:15px;font-weight:600;padding:10px 38px 10px 14px;border:1.5px solid var(--line);border-radius:10px;background:var(--card) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23101826' stroke-width='2' fill='none'/%3E%3C/svg%3E") no-repeat right 14px center;appearance:none;cursor:pointer;color:var(--ink)}
select:focus{outline:2px solid var(--accent);outline-offset:1px}
.cluster-chip{font-family:var(--mono);font-size:11px;letter-spacing:.08em;padding:6px 12px;border-radius:99px;background:var(--accent-soft);color:#9A2E74}


/* ---------- STICKY LOCAL ORAȘ SELECTAT ---------- */
.profile-city-sticky{display:none;align-items:center;gap:7px;margin-left:auto;max-width:min(42vw,420px);box-sizing:border-box;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;color:var(--ink-soft);overflow:visible}
.profile-city-sticky.is-visible{display:inline-flex}
.profile-city-sticky__label{font-size:0;font-weight:800;text-transform:none;letter-spacing:.08em;color:var(--ink-mute);white-space:nowrap;flex:none}
.profile-city-sticky__label::after{content:"Oraș selectat:";font-size:12px}
.profile-city-sticky__city{position:relative;font-family:var(--mono);font-size:12.5px;font-weight:900;color:#9A2E74;white-space:nowrap;flex:none;padding:6px 11px;border:1px solid #EFC7E2;border-radius:999px;background:var(--accent-soft);line-height:1}
.profile-city-sticky__city::after{content:"";position:absolute;left:10px;right:10px;bottom:-5px;height:2px;border-radius:999px;background:var(--accent);pointer-events:none}
.profile-city-sticky__cluster{display:none}
@media(max-width:980px){.profile-city-sticky{max-width:34vw}.profile-city-sticky__label{display:none}}
@media(max-width:720px){.profile-city-sticky{display:none!important}}

/* ---------- CITY PROFILE HERO (componentă inspirată din mockup) ---------- */
.city-profile-hero{margin:0 0 18px;background:linear-gradient(135deg,#fff,rgba(86,177,182,.10));border:1px solid var(--line);border-radius:18px;padding:22px 24px;display:grid;grid-template-columns:1fr auto;gap:20px;align-items:start;position:relative;overflow:hidden;box-shadow:0 1px 3px rgba(19,51,60,.04)}
.city-profile-hero::after{content:"";position:absolute;right:0;bottom:0;width:min(68%,820px);height:86%;background-image:url("../assets/cityscape.png");background-repeat:no-repeat;background-position:right bottom;background-size:contain;opacity:.28;pointer-events:none;z-index:0}
.city-profile-hero > *{position:relative;z-index:1}
.city-profile-hero h2{font-size:clamp(26px,3.4vw,38px);max-width:760px;margin-bottom:10px}
.city-profile-hero p{max-width:720px;color:var(--ink-soft);font-size:15.5px}
.city-badges{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;position:relative;z-index:1;min-width:260px}
.city-badge{display:inline-flex;align-items:center;gap:7px;border-radius:999px;border:1px solid var(--line);background:#fff;padding:8px 12px;font-size:12px;font-weight:700;color:var(--ink-soft);box-shadow:0 1px 2px rgba(19,51,60,.04)}
.city-badge svg{width:15px;height:15px;color:var(--petrol)}
.city-badge.cluster{background:rgba(86,177,182,.13);border-color:rgba(86,177,182,.35);color:#0E5A6E}
.city-badge.demo{background:#FBF1DC;border-color:#F0DCAE;color:#8A5E0A}
.metric-cell{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:92px}
.metric-cell .num{font-family:var(--mono);font-weight:700;white-space:nowrap}
.mini-track{width:48px;height:5px;border-radius:99px;background:#E6EEF1;overflow:hidden;display:inline-block;flex:none}
.mini-track i{display:block;height:100%;border-radius:99px}
.peer-table tr.me .mini-track{background:#fff}

/* ---------- PROFILE GRID ---------- */
.profile{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}

/* Block 1: score */
#scoreCard{grid-column:span 12}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.kpi{border:1px solid var(--line);border-radius:14px;padding:13px 13px 9px;background:#fff;display:flex;flex-direction:column;gap:7px;box-shadow:0 1px 2px rgba(19,51,60,.04)}
.k-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.k-lbl{font-size:13.2px;font-weight:800;color:var(--ink-soft);line-height:1.2;padding-top:2px;display:flex;align-items:center;gap:6px;min-width:0}
.k-lbl-text{min-width:0}
.info-dot{width:17px;height:17px;border-radius:50%;border:1px solid #B9C9CF;background:#fff;color:var(--navy);font-family:var(--mono);font-size:10px;font-weight:800;display:inline-grid;place-items:center;line-height:1;cursor:help;position:relative;flex:none;padding:0}
.info-dot:hover,.info-dot:focus{border-color:var(--petrol);outline:none;background:#EFF7F8}
.info-dot::after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%);width:max-content;max-width:260px;background:var(--ink);color:#fff;border-radius:8px;padding:8px 10px;font-family:'Inter';font-size:12px;font-weight:600;line-height:1.35;letter-spacing:0;text-transform:none;box-shadow:0 8px 18px rgba(19,51,60,.18);opacity:0;pointer-events:none;transition:opacity .12s;z-index:20}
.info-dot::before{content:"";position:absolute;left:50%;bottom:calc(100% + 3px);transform:translateX(-50%);border:5px solid transparent;border-top-color:var(--ink);opacity:0;transition:opacity .12s;z-index:21}
.info-dot:hover::after,.info-dot:focus::after,.info-dot:hover::before,.info-dot:focus::before{opacity:1}
.k-ico{width:30px;height:30px;border-radius:50%;flex:none;display:grid;place-items:center}
.k-ico svg{width:16px;height:16px}
.k-val{font-family:var(--mono);font-size:25px;font-weight:700;line-height:1;letter-spacing:-.02em}
.k-val small{font-size:12px;font-weight:700;color:var(--ink-mute);margin-left:2px}
.k-sub{font-size:11px;color:var(--ink-mute);margin-top:-3px}
.k-cmp{display:flex;justify-content:space-between;align-items:baseline;gap:6px;font-size:10.5px;color:var(--ink-mute)}
.k-cmp .delta{font-size:11px}
.k-spark{margin-top:auto;padding-top:4px}
.k-years{font-family:var(--mono);font-size:9px;color:var(--ink-mute);letter-spacing:.04em;display:flex;justify-content:space-between;margin-top:2px}
.delta{font-family:var(--mono);font-weight:700}
.delta.up{color:var(--pos)} .delta.down{color:var(--neg)} .delta.flat{color:var(--ink-mute)}
.k-nat{color:var(--ink-mute)}

/* Block 1b: structură pe filiere */
#filieraCard{grid-column:span 12}
.filiera-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:4px}
.filiera-mini{border:1px solid var(--line);border-radius:14px;background:#fff;padding:14px;display:flex;flex-direction:column;gap:9px;box-shadow:0 1px 2px rgba(19,51,60,.04);min-height:172px}
.filiera-title{font-size:13.5px;font-weight:850;color:var(--ink);display:flex;align-items:center;gap:7px;line-height:1.2}
.filiera-dot{width:9px;height:9px;border-radius:50%;background:var(--petrol);flex:none}.filiera-mini.tech .filiera-dot{background:#DB9418}.filiera-mini.voc .filiera-dot{background:#3F9C45}.filiera-mini.gap .filiera-dot{background:var(--accent)}
.filiera-main{font-family:var(--mono);font-size:24px;font-weight:800;line-height:1;color:var(--navy)}
.filiera-main small{font-size:11px;color:var(--ink-mute);font-weight:700;margin-left:2px}
.filiera-lines{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--ink-soft)}
.filiera-lines b{font-family:var(--mono);color:var(--ink);font-weight:800}
.filiera-fingerprint{margin-top:auto;padding-top:7px;border-top:1px dashed var(--line)}
.filiera-fp-label{font-size:10.5px;font-weight:750;color:var(--ink-mute);text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px}
.filiera-fp-bars{height:25px;display:flex;align-items:flex-end;gap:4px}
.filiera-fp-bars i{display:block;flex:1;min-width:0;border-radius:4px 4px 2px 2px;background:#B9C9CF;opacity:.92}
.filiera-fp-bars i.b56{background:var(--accent)}
.filiera-fp-bars i.b67{background:#DB9418}
.filiera-fp-bars i.b78{background:#78C6CA}
.filiera-fp-bars i.b89{background:#56B1B6}
.filiera-fp-bars i.b910{background:var(--petrol)}
.filiera-fp-axis{display:flex;justify-content:space-between;margin-top:3px;font-size:9px;color:var(--ink-mute)}
.gap-bars{display:flex;flex-direction:column;gap:8px;margin-top:2px}
.gap-row{display:grid;grid-template-columns:82px 1fr 42px;align-items:center;gap:8px;font-size:11.5px;color:var(--ink-soft)}
.gap-track{height:8px;background:#E6EEF1;border-radius:99px;overflow:hidden}.gap-track i{display:block;height:100%;border-radius:99px;background:var(--petrol)}
.gap-row.tech .gap-track i{background:#DB9418}.gap-val{font-family:var(--mono);font-weight:800;text-align:right;color:var(--ink)}
.gap-number{font-family:var(--mono);font-size:18px;font-weight:850;color:var(--accent);margin-top:4px}
.gap-context{margin-top:auto;padding-top:10px;border-top:1px dashed var(--line);display:flex;flex-direction:column;gap:7px}
.gap-tag{align-self:flex-start;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:850;letter-spacing:.02em}
.gap-tag.low{background:rgba(63,156,69,.12);color:#2F7A35;border:1px solid rgba(63,156,69,.25)}
.gap-tag.mid{background:#FBF1DC;color:#8A5E0A;border:1px solid #F0DCAE}
.gap-tag.high{background:#FBE6DC;color:#A34A18;border:1px solid #F2C6B2}
.gap-tag.severe{background:#F9E9F3;color:#9A2E74;border:1px solid #EFC7E2}
.gap-metrics{display:flex;flex-direction:column;gap:4px}
.gap-metric{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-size:11.5px;color:var(--ink-soft)}
.gap-metric b{font-family:var(--mono);font-size:12px;font-weight:850;color:var(--ink)}
.gap-metric b.good{color:var(--pos)}.gap-metric b.bad{color:var(--neg)}.gap-metric b.flat{color:var(--ink-mute)}
.filiera-interpret{margin-top:14px;border-radius:12px;background:rgba(86,177,182,.10);border:1px solid rgba(86,177,182,.28);padding:12px 14px;font-size:13.5px;color:var(--ink-soft);line-height:1.5}
.filiera-interpret strong{color:var(--navy)}
.filiera-empty{border:1px dashed #B9C9CF;border-radius:13px;background:#FBFDFD;color:var(--ink-mute);padding:18px;font-size:13.5px}
.profil-detail{margin-top:14px;border-top:1px solid var(--line);padding-top:13px}.profil-detail summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:850;color:var(--navy);font-size:13.5px}.profil-detail summary::-webkit-details-marker{display:none}.profil-detail summary::after{content:"+";width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#EFF7F8;color:var(--navy);font-family:var(--mono);font-weight:800}.profil-detail[open] summary::after{content:"−"}
.profil-table-wrap{margin-top:12px;overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:#fff}.profil-table{width:100%;border-collapse:collapse;min-width:760px}.profil-table th{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-mute);font-weight:800;text-align:right;padding:9px 10px;border-bottom:1.5px solid var(--line);white-space:nowrap}.profil-table th:first-child,.profil-table th:nth-child(2){text-align:left}.profil-table th.sortable{cursor:pointer;color:var(--navy);user-select:none}.profil-table th.sortable:hover{background:#F8FBFC}.sort-ind{font-family:var(--mono);font-size:9px;color:var(--accent);margin-left:4px}.profil-table td{font-family:var(--mono);font-size:12.5px;font-weight:650;text-align:right;padding:9px 10px;border-bottom:1px dashed var(--line);white-space:nowrap}.profil-table td:first-child,.profil-table td:nth-child(2){font-family:'Inter';font-weight:700;text-align:left;color:var(--ink-soft)}.profil-table tbody tr:last-child td{border-bottom:none}.profil-table tr.total td{background:#EFF7F8;font-weight:850;color:var(--ink)}.profil-delta.pos{color:var(--pos)}.profil-delta.neg{color:var(--neg)}.profil-delta.flat{color:var(--ink-mute)}.profil-note{margin-top:10px;font-size:13px;color:var(--ink-soft);line-height:1.5}.profil-note strong{color:var(--navy)}

/* Block 2: diagnostic (panou dublu) */
#diagCard{grid-column:span 12}
.diag-wrap{display:grid;grid-template-columns:1fr 1.1fr;gap:34px;align-items:start}
.diag-badge{display:flex;align-items:center;gap:14px;margin:14px 0 16px;padding:16px 18px;border-radius:14px;border:1px solid var(--line)}
.diag-dot{width:48px;height:48px;border-radius:12px;flex:none;display:grid;place-items:center;color:#fff}
.diag-dot svg{width:24px;height:24px}
.diag-name{font-family:'Archivo';font-variation-settings:'wdth' 115;font-weight:850;font-size:23px;line-height:1.1}
.diag-bullets{list-style:none;display:flex;flex-direction:column;gap:9px}
.diag-bullets li{display:flex;gap:9px;font-size:13.5px;color:var(--ink-soft);line-height:1.45}
.diag-bullets .bm{flex:none;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:800;color:#fff;margin-top:1px}
.bm.ok{background:#3F9C45}.bm.warn{background:#DB9418}.bm.bad{background:#C94A2E}
/* sub-scoruri */
.ss-row{display:grid;grid-template-columns:118px 1fr 70px;align-items:center;gap:14px;padding:11px 0}
.ss-lbl{font-size:13px;font-weight:600;color:var(--ink-soft)}
.ss-track{position:relative;height:8px;background:#E6EEF1;border-radius:99px}
.ss-fill{position:absolute;left:0;top:0;bottom:0;border-radius:99px;opacity:.55}
.ss-dot{position:absolute;top:50%;width:15px;height:15px;border-radius:50%;transform:translate(-50%,-50%);border:2.5px solid #fff;box-shadow:0 1px 3px rgba(19,51,60,.3)}
.ss-ref{position:absolute;top:-5px;bottom:-5px;width:0;border-left:2px dotted var(--ink-mute);opacity:.55}
.ss-val{font-family:var(--mono);font-size:17px;font-weight:700;text-align:right}
.ss-val small{font-size:10.5px;color:var(--ink-mute);font-weight:500}
.ss-axis{display:flex;justify-content:space-between;font-family:var(--mono);font-size:10px;color:var(--ink-mute);grid-column:2;margin-top:2px}
.ss-foot{font-size:11.5px;color:var(--ink-mute);margin-top:10px}
.ss-foot i{display:inline-block;width:14px;border-top:2px dotted var(--ink-mute);vertical-align:middle;margin-right:5px}

/* Block 3: distribution */
#distCard{grid-column:span 6}
.legend{display:flex;gap:18px;font-size:12px;color:var(--ink-mute);margin-bottom:6px;flex-wrap:wrap}
.legend span{display:flex;align-items:center;gap:6px}
.legend .sw{width:14px;height:10px;border-radius:3px}
svg text{font-family:'Inter'}

/* Block 4: tabel orase similare */
#peerCard{grid-column:span 6;display:flex;flex-direction:column}
.peer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.cluster-pill{font-size:11px;font-weight:600;color:#9A2E74;background:var(--accent-soft);border:1px solid #EFC7E2;border-radius:9px;padding:6px 11px;text-align:right;line-height:1.3;flex:none}
.peer-table{width:100%;border-collapse:collapse;margin-top:10px}
.peer-table th{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-mute);font-weight:700;text-align:right;padding:7px 8px;border-bottom:1.5px solid var(--line)}
.peer-table th:first-child{text-align:left}
.peer-table td{font-family:var(--mono);font-size:13px;font-weight:600;text-align:right;padding:10px 8px;border-bottom:1px dashed var(--line)}
.peer-table td:first-child{font-family:'Inter';font-weight:600;text-align:left}
.peer-table tr.me td{background:var(--accent-soft)}
.peer-table tr.me td:first-child{border-radius:9px 0 0 9px}
.peer-table tr.me td:last-child{border-radius:0 9px 9px 0}
.peer-table tbody tr{cursor:pointer}
.peer-table tbody tr:hover td:first-child{color:var(--accent)}
.peer-table .star{color:var(--accent);margin-right:4px}
.c-promo{color:var(--petrol)}.c-medie{color:#0E5A6E}.c-p9{color:#2E9AA0}.c-abs{color:#C94A2E}
.foot{font-size:10.5px;color:var(--ink-mute);margin-top:auto;padding-top:12px}
/* Evolutie + concentrare */
#evoCard{grid-column:span 6}
#concCard{grid-column:span 6;display:flex;flex-direction:column}
.evo-legend{display:flex;gap:18px;font-size:12px;color:var(--ink-soft);margin:4px 0 6px;flex-wrap:wrap}
.evo-legend span{display:flex;align-items:center;gap:6px}
.evo-legend .dotl{width:10px;height:10px;border-radius:50%}
.conc-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.conc-chip{font-size:11.5px;font-weight:600;color:#8a5e0a;background:#FBF1DC;border:1px solid #F0DCAE;border-radius:9px;padding:7px 11px;line-height:1.35;max-width:170px;flex:none}
.conc-chip b{font-family:var(--mono);font-size:14px}
.conc-bars{margin-top:14px;display:flex;flex-direction:column;gap:9px}
.conc-row{display:grid;grid-template-columns:172px 1fr 50px;align-items:center;gap:10px;font-size:12.5px}
.conc-name{color:var(--ink-soft);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.conc-bar{height:13px;background:#E6EEF1;border-radius:4px;overflow:hidden}
.conc-bar i{display:block;height:100%;border-radius:4px;background:linear-gradient(90deg,#0E5A6E,#2E9AA0)}
.conc-row.others .conc-bar i{background:#B9C9CF}
.conc-row.others .conc-name{font-style:italic}
.conc-val{font-family:var(--mono);font-size:12.5px;font-weight:700;text-align:right}

/* Block 5: interpretation */
#interpCard{grid-column:span 12;background:var(--navy);color:#fff;border:none}
#interpCard h3{color:#fff}
#interpCard .hint{color:#9CCBD2}
.interp-text{font-size:16.5px;line-height:1.7;max-width:920px}
.interp-text strong{color:#F3AEDC}
.interp-foot{margin-top:14px;font-family:var(--mono);font-size:11px;color:#8FB9C2;letter-spacing:.06em}
.ss-est{display:inline-block;margin-left:6px;border-radius:999px;background:#EFF7F8;border:1px solid #DCE8EB;color:var(--ink-mute);font-family:var(--mono);font-size:9px;font-weight:800;letter-spacing:.03em;padding:2px 5px;vertical-align:middle}
.ss-row.risk-row .ss-lbl{color:#9A3A28}

/* Diagnostic submodul: titlu + explicații metodologice scurte */
.diag-title-row{display:flex;align-items:center;gap:8px;position:relative;margin-bottom:8px;flex-wrap:wrap}
.diag-title-row h3{margin-bottom:0}
.diag-info-trigger,.diag-score-info{width:19px;height:19px;border-radius:50%;border:1px solid #B9C9CF;background:#fff;color:var(--navy);font-family:var(--mono);font-size:10px;font-weight:800;display:inline-grid;place-items:center;line-height:1;cursor:help;padding:0;flex:none}
.diag-info-trigger{cursor:pointer;margin-top:1px}
.diag-info-trigger:hover,.diag-info-trigger:focus,.diag-score-info:hover,.diag-score-info:focus{border-color:var(--petrol);background:#EFF7F8;outline:none}
.diag-info-popover{position:absolute;left:0;top:calc(100% + 9px);z-index:30;width:min(420px,calc(100vw - 48px));background:#fff;border:1px solid var(--line);border-radius:12px;padding:13px 14px;box-shadow:0 12px 28px rgba(19,51,60,.16);font-size:12.5px;color:var(--ink-soft);line-height:1.45}
.diag-info-popover p{margin:0 0 8px;color:var(--ink)}
.diag-info-popover ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.diag-info-popover b{color:var(--navy)}
.ss-lbl{display:flex;align-items:center;gap:5px;flex-wrap:wrap;line-height:1.22}
.ss-lbl-text{min-width:0}
.diag-score-info{width:17px;height:17px;font-size:9px;position:relative}
.diag-score-info::after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%);width:max-content;max-width:270px;background:var(--ink);color:#fff;border-radius:8px;padding:8px 10px;font-family:'Inter';font-size:12px;font-weight:600;line-height:1.35;box-shadow:0 8px 18px rgba(19,51,60,.18);opacity:0;pointer-events:none;transition:opacity .12s;z-index:35;text-align:left}
.diag-score-info::before{content:"";position:absolute;left:50%;bottom:calc(100% + 3px);transform:translateX(-50%);border:5px solid transparent;border-top-color:var(--ink);opacity:0;transition:opacity .12s;z-index:36}
.diag-score-info:hover::after,.diag-score-info:focus::after,.diag-score-info:hover::before,.diag-score-info:focus::before{opacity:1}
@media(max-width:900px){.diag-info-popover{position:static;width:100%;margin-top:8px}.diag-title-row{align-items:flex-start}}

/* Nucleul de excelență 9+ */
.conc-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}
.conc-summary-item{border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:#fff}
.conc-summary-item b{font-family:var(--mono);font-size:15px;color:var(--navy)}
.conc-summary-item span{display:block;font-size:10.5px;color:var(--ink-mute);margin-top:2px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.conc-note{margin-top:12px;font-size:12px;line-height:1.45;color:var(--ink-soft);background:#F7FAFB;border:1px solid var(--line);border-radius:10px;padding:10px 12px}
.conc-row{grid-template-columns:minmax(150px,190px) 1fr 56px;position:relative}
.conc-row.has-count{grid-template-columns:minmax(150px,190px) 1fr 56px}
.conc-count{display:block;grid-column:2 / 4;margin-top:-4px;font-size:10.5px;color:var(--ink-mute);font-family:var(--mono)}
.conc-row.others .conc-count{display:none}
@media(max-width:720px){.conc-summary{grid-template-columns:1fr}.conc-row,.conc-row.has-count{grid-template-columns:minmax(120px,1fr) 1fr 52px}.conc-count{grid-column:1 / 4;margin-top:-2px}}

/* Istoric real în KPI / Evoluție */
.k-spark-empty{height:42px;display:flex;align-items:center;justify-content:center;border:1px dashed #C9D8DD;border-radius:9px;background:#F8FBFC;color:var(--ink-mute);font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;text-align:center;padding:0 6px}
.evo-empty{border:1px dashed #C9D8DD;border-radius:12px;background:#F8FBFC;color:var(--ink-soft);font-size:13px;line-height:1.45;padding:28px 22px;text-align:center;margin-top:10px}
.evo-empty b{font-family:var(--mono);color:var(--navy)}

@media(max-width:720px){.city-profile-hero::after{width:96%;height:64%;opacity:.16}}
/* Ascunde doar badge-ul de tipologie: „Oraș mic / compact” */
.city-profile-hero .city-badges .city-badge:not(.cluster):not(.demo) {
  display: none !important;
}
