.ipa-dossier-v5{margin:48px 0;padding:28px;border:1px solid #d9dfe7;background:#fff}.ipa-dossier-v5>header{display:flex;align-items:end;justify-content:space-between;border-bottom:3px solid #b49342;margin-bottom:20px}.ipa-dossier-v5>header span{font-size:12px;letter-spacing:.08em;color:#667085}.ipa-dossier-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 24px}.ipa-dossier-tabs a{padding:8px 12px;border:1px solid #d9dfe7;text-decoration:none}.ipa-dossier-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.ipa-dossier-grid section{padding:18px;background:#f7f8fa;border-left:3px solid #b49342}.ipa-dossier-grid ul{margin:0;padding-left:18px}.ipa-timeline{border-left:2px solid #b49342;margin-left:90px}.ipa-timeline article{display:grid;grid-template-columns:80px 1fr;gap:20px;margin-left:-91px;padding:12px 0}.ipa-timeline time{text-align:right;font-weight:700}.ipa-timeline article div{padding-left:18px;position:relative}.ipa-timeline article div:before{content:"";width:10px;height:10px;border-radius:50%;background:#b49342;position:absolute;left:-6px;top:5px}.ipa-advanced-search{display:grid;grid-template-columns:1fr 240px auto;gap:10px}.ipa-advanced-search input,.ipa-advanced-search select{padding:12px}.ipa-search-results article{padding:18px 0;border-bottom:1px solid #e4e7ec}.ipa-search-results p,.ipa-dossier-v5 p{text-align:justify}@media(max-width:800px){.ipa-dossier-grid{grid-template-columns:1fr}.ipa-advanced-search{grid-template-columns:1fr}.ipa-timeline{margin-left:0}.ipa-timeline article{grid-template-columns:1fr;margin-left:0}.ipa-timeline time{text-align:left}}
.ipa-observer-public{margin:2rem 0}.ipa-observer-public .ipa-eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.14em;color:#9b1c31}.ipa-observer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.2rem}.ipa-observer-grid article{border:1px solid #e2e7ec;background:#fff;padding:1.25rem}.ipa-observer-grid h3{margin:.25rem 0 .7rem}.ipa-source-label{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:#687483}
.ipa-intelligence-public{margin:2rem 0;padding:2rem;border:1px solid #dce3ec;background:#fff}.ipa-intelligence-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}.ipa-intelligence-columns article{display:flex;flex-direction:column;gap:.25rem;padding:.9rem 0;border-bottom:1px solid #e6ebf1}.ipa-intelligence-columns article span{font-size:.88rem;color:#667085}@media(max-width:760px){.ipa-intelligence-columns{grid-template-columns:1fr}}

/* IPA Core 5.6.1 – Romania Map visual refresh */
.ipa-romania-map-v561{margin:2rem 0;padding:clamp(1rem,2.5vw,2rem);background:#fff;border:1px solid #dce3ec;border-radius:14px;box-shadow:0 12px 35px rgba(10,42,82,.08)}
.ipa-romania-map-v561 .ipa-map-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:3px solid #c5262e}
.ipa-romania-map-v561 .ipa-eyebrow{margin:0 0 .35rem;color:#c5262e;font-size:.76rem;font-weight:800;letter-spacing:.14em}
.ipa-romania-map-v561 h2{margin:0;color:#0b2d57;font-size:clamp(1.55rem,3vw,2.35rem);line-height:1.1}
.ipa-romania-map-v561 .ipa-map-header p:last-child{margin:.55rem 0 0;color:#43566f}
.ipa-map-figure{margin:0;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}
.ipa-map-figure img{display:block;width:100%;height:auto;object-fit:contain;background:#fff}
.ipa-map-figure figcaption{padding:.8rem 1rem;color:#516174;font-size:.9rem;text-align:center;border-top:1px solid #e2e8f0;background:#fbfcfe}
.ipa-county-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.65rem;margin-top:1.25rem}
.ipa-county-link{display:grid;grid-template-columns:38px 1fr;grid-template-areas:"code name" "code count";align-items:center;gap:0 .65rem;padding:.75rem;background:#fff;border:1px solid #d8e0ea;border-radius:9px;text-decoration:none!important;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.ipa-county-link:hover,.ipa-county-link:focus{transform:translateY(-2px);border-color:#c5262e;box-shadow:0 8px 20px rgba(10,42,82,.10)}
.ipa-county-code{grid-area:code;display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#0b2d57;color:#fff;font-size:.76rem;font-weight:800}
.ipa-county-name{grid-area:name;color:#0b2d57;font-weight:700;line-height:1.15}
.ipa-county-count{grid-area:count;color:#69788a;font-size:.76rem}
@media(max-width:640px){.ipa-romania-map-v561{padding:.8rem}.ipa-county-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ipa-county-link{grid-template-columns:32px 1fr;padding:.6rem}.ipa-county-code{width:32px;height:32px}}

/* IPA Romania Map 5.6.2 – profile județene */
.ipa-map-stage{position:relative;max-width:1200px;margin:0 auto}.ipa-map-stage>img{display:block;width:100%;height:auto}.ipa-map-hotspots{position:absolute;inset:0;pointer-events:none}.ipa-map-hotspot{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;display:flex;align-items:center;justify-content:center;min-width:30px;height:30px;padding:0 7px;border:1px solid rgba(255,255,255,.9);border-radius:999px;background:#123a69;color:#fff!important;font-size:12px;font-weight:800;line-height:1;text-decoration:none!important;box-shadow:0 2px 8px rgba(4,31,63,.24);transition:transform .18s ease,background .18s ease,box-shadow .18s ease}.ipa-map-hotspot:hover,.ipa-map-hotspot:focus{background:#c7252d;transform:translate(-50%,-50%) scale(1.13);box-shadow:0 5px 16px rgba(4,31,63,.35);z-index:4}.ipa-map-hotspot.is-missing{background:#7d8794;color:#f7f8fa!important;cursor:not-allowed;opacity:.78}.ipa-map-hotspot.is-missing:hover{background:#7d8794;transform:translate(-50%,-50%)}.ipa-county-link.is-missing{opacity:.66;border-style:dashed}.ipa-county-link .ipa-profile-status{display:block;font-size:11px;margin-top:3px}.ipa-county-link.has-profile .ipa-profile-status{color:#167345}.ipa-county-link.is-missing .ipa-profile-status{color:#8a3434}.ipa-map-legend-inline{display:flex;gap:18px;flex-wrap:wrap;align-items:center;margin:12px 0 0;font-size:13px}.ipa-map-legend-inline span{display:inline-flex;gap:7px;align-items:center}.ipa-map-legend-dot{width:12px;height:12px;border-radius:50%;display:inline-block;background:#123a69}.ipa-map-legend-dot.missing{background:#7d8794}@media(max-width:800px){.ipa-map-hotspot{min-width:24px;height:24px;padding:0 5px;font-size:9px}.ipa-map-legend-inline{font-size:12px}}


.ipa-bucharest-map61{background:#fff;border:1px solid #dfe5eb;border-radius:18px;padding:24px;margin:24px 0}.ipa-bmap-stage{position:relative;background:#f6f8fa;border-radius:14px;padding:12px}.ipa-bmap-stage svg{display:block;width:100%;height:auto}.ipa-bmap-outline{fill:none;stroke:#7c8ea1;stroke-width:7;stroke-linejoin:round}.ipa-bmap-region path{fill:#163a5f;stroke:#fff;stroke-width:7;stroke-linejoin:round;transition:.2s}.ipa-bmap-region.is-missing path{fill:#aab4bf}.ipa-bmap-region.has-profile:hover path,.ipa-bmap-region.has-profile:focus path{fill:#b78a3a;filter:drop-shadow(0 8px 14px rgba(7,27,52,.25))}.ipa-bmap-region text{fill:#fff;font-size:52px;font-weight:800;text-anchor:middle;pointer-events:none}.ipa-bmap-region .ipa-bmap-label{font-size:17px}.ipa-bmap-river{fill:none;stroke:#93c5fd;stroke-width:14;stroke-linecap:round;pointer-events:none}.ipa-bmap-pmb path{fill:#fff;stroke:#163a5f;stroke-width:5;stroke-linejoin:round;transition:.2s}.ipa-bmap-pmb.has-profile:hover path{fill:#fff7e8;stroke:#b78a3a}.ipa-bmap-pmb text{fill:#163a5f;font-size:40px;font-weight:800;text-anchor:middle;pointer-events:none}.ipa-bmap-pmb .ipa-bmap-pmb-label{font-size:16px}.ipa-bmap-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}.ipa-bmap-list .ipa-county-link{display:grid;grid-template-columns:55px minmax(0,1fr) auto;align-items:center}.ipa-associated-files{margin:28px 0;padding:22px;border:1px solid #dfe5eb;border-radius:14px;background:#fff}.ipa-associated-files__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ipa-associated-files__grid a{display:flex;align-items:center;gap:12px;padding:13px;border:1px solid #e2e8ee;border-radius:10px;text-decoration:none;color:#163a5f}.ipa-associated-files__grid small{display:block;color:#64748b;margin-top:3px}.ipa-associated-files__grid .dashicons{font-size:28px;width:28px;height:28px}.ipa-bucharest-head h1{font-size:clamp(34px,5vw,56px)}
@media(max-width:800px){.ipa-bmap-list,.ipa-associated-files__grid{grid-template-columns:1fr}.ipa-bmap-region text{font-size:40px}.ipa-bmap-region .ipa-bmap-label{font-size:13px}}

/* IPA Core 6.2 — navigator geospațial București */
.ipa-bucharest-map62{background:#fff;border:1px solid #dfe5eb;border-radius:18px;padding:24px;margin:24px 0}
.ipa-bucharest-map62 .ipa-bmap-stage{position:relative;overflow:hidden}
.ipa-bmap-tooltip{position:absolute;z-index:20;left:20px;top:20px;width:260px;padding:14px 16px;border-radius:10px;background:rgba(11,47,87,.96);color:#fff;box-shadow:0 12px 28px rgba(0,0,0,.2);opacity:0;visibility:hidden;transform:translateY(5px);transition:.16s ease;pointer-events:none}
.ipa-bmap-tooltip.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
.ipa-bmap-tooltip strong{display:block;font-family:Georgia,serif;font-size:18px;line-height:1.2;margin-bottom:8px}
.ipa-bmap-tooltip span{display:block;font-size:13px;line-height:1.45;opacity:.92}
.ipa-bucharest-map62 .ipa-bmap-region:focus path,.ipa-bucharest-map62 .ipa-bmap-pmb:focus path{fill:#b78a3a;outline:none}

/* IPA Core 6.3 — hărți-infografic aprobate */
.ipa-romania-infographic-63 .ipa-map-header,
.ipa-romania-infographic-63 .ipa-map-legend-inline,
.ipa-romania-infographic-63 figcaption{display:none!important}
.ipa-romania-infographic-63 .ipa-map-figure{margin:0}
.ipa-romania-infographic-63 .ipa-map-stage,
.ipa-bucharest-infographic-63 .ipa-infographic-stage{
  position:relative;
  width:100%;
  overflow:hidden;
  border-radius:12px;
  background:#fff;
}
.ipa-romania-infographic-63 .ipa-map-stage img,
.ipa-bucharest-infographic-63 .ipa-infographic-stage img{
  display:block;
  width:100%;
  height:auto;
}
.ipa-romania-infographic-63 .ipa-map-hotspots{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.ipa-romania-infographic-63 .ipa-map-hotspot{
  position:absolute;
  transform:translate(-50%,-50%);
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:34px;
  min-height:30px;
  padding:5px 7px;
  background:transparent!important;
  border:0!important;
  border-radius:7px;
  box-shadow:none!important;
  text-decoration:none;
  pointer-events:auto;
  cursor:pointer;
  z-index:5;
}
.ipa-romania-infographic-63 .ipa-map-code-state{
  color:#fff;
  font-weight:800;
  font-size:clamp(10px,1.65vw,28px);
  line-height:1;
  text-shadow:0 2px 4px rgba(0,0,0,.55);
  transition:color .16s ease, transform .16s ease, text-shadow .16s ease;
}
.ipa-romania-infographic-63 .ipa-map-hotspot:hover .ipa-map-code-state,
.ipa-romania-infographic-63 .ipa-map-hotspot:focus .ipa-map-code-state{
  color:#c73535;
  transform:scale(1.08);
  text-shadow:0 1px 2px rgba(255,255,255,.9),0 2px 5px rgba(0,0,0,.4);
}
.ipa-romania-infographic-63 .ipa-map-hotspot:focus{
  outline:2px solid #c73535!important;
  outline-offset:2px;
}

/* București: hotspot mare, etichetă roșie doar la hover/focus */
.ipa-bucharest-infographic-63{margin:0}
.ipa-bucharest-hotspots{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.ipa-bucharest-hotspot{
  position:absolute;
  display:block;
  border-radius:44%;
  pointer-events:auto;
  text-decoration:none;
  background:transparent;
  z-index:8;
}
.ipa-bucharest-hotspot.has-profile{cursor:pointer}
.ipa-bucharest-hotspot.is-missing{cursor:not-allowed}
.ipa-bucharest-red-label{
  position:absolute;
  transform:translate(-50%,-50%);
  color:#c73535;
  font-weight:900;
  font-size:clamp(24px,3.2vw,56px);
  line-height:1;
  opacity:0;
  text-shadow:0 1px 2px rgba(255,255,255,.95),0 2px 5px rgba(0,0,0,.45);
  transition:opacity .15s ease, transform .15s ease;
  pointer-events:none;
}
.ipa-bucharest-red-label.is-pmb{
  font-size:clamp(18px,2.6vw,44px);
}
.ipa-bucharest-hotspot:hover .ipa-bucharest-red-label,
.ipa-bucharest-hotspot:focus .ipa-bucharest-red-label{
  opacity:1;
  transform:translate(-50%,-50%) scale(1.06);
}
.ipa-bucharest-hotspot:focus{
  outline:2px solid #c73535;
  outline-offset:2px;
}
@media(max-width:700px){
  .ipa-romania-infographic-63 .ipa-map-code-state{
    font-size:clamp(8px,1.75vw,14px);
  }
  .ipa-romania-infographic-63 .ipa-map-hotspot{
    min-width:22px;
    min-height:20px;
    padding:2px;
  }
}

/* IPA Core 6.3.1 HOTFIX
   Etichetele albe sunt deja incluse în infografic.
   Stratul HTML este invizibil implicit și apare numai roșu la hover/focus.
*/
.ipa-romania-infographic-63 .ipa-map-code-state{
  opacity:0!important;
  color:#c73535!important;
  font-size:clamp(9px,1.35vw,23px)!important;
  transform:scale(.96);
}
.ipa-romania-infographic-63 .ipa-map-hotspot:hover .ipa-map-code-state,
.ipa-romania-infographic-63 .ipa-map-hotspot:focus .ipa-map-code-state{
  opacity:1!important;
  color:#c73535!important;
  transform:scale(1);
}
.ipa-romania-infographic-63 .ipa-map-hotspot{
  background:transparent!important;
  box-shadow:none!important;
}

/* București: aceeași regulă — imaginea păstrează eticheta albă,
   iar stratul separat afișează doar starea roșie. */
.ipa-bucharest-infographic-63 .ipa-bucharest-red-label{
  opacity:0!important;
}
.ipa-bucharest-infographic-63 .ipa-bucharest-hotspot:hover .ipa-bucharest-red-label,
.ipa-bucharest-infographic-63 .ipa-bucharest-hotspot:focus .ipa-bucharest-red-label{
  opacity:1!important;
}

/* IPA Core 6.3.2 — calibrare individuală a etichetelor */
.ipa-romania-infographic-63 .ipa-map-code-state{
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:clamp(10px,1.48vw,25px)!important;
  font-weight:800!important;
  letter-spacing:0!important;
  line-height:1!important;
  color:#d32f2f!important;
  opacity:0!important;
  -webkit-text-stroke:1.4px #08294a;
  paint-order:stroke fill;
  text-shadow:
    -1px -1px 0 #08294a,
     1px -1px 0 #08294a,
    -1px  1px 0 #08294a,
     1px  1px 0 #08294a!important;
}
.ipa-romania-infographic-63 .ipa-map-hotspot:hover .ipa-map-code-state,
.ipa-romania-infographic-63 .ipa-map-hotspot:focus .ipa-map-code-state{
  opacity:1!important;
  transform:none!important;
}
.ipa-romania-infographic-63 .ipa-map-hotspot{
  min-width:28px!important;
  min-height:24px!important;
  padding:2px 4px!important;
}
@media(max-width:700px){
  .ipa-romania-infographic-63 .ipa-map-code-state{
    font-size:clamp(8px,1.5vw,13px)!important;
    -webkit-text-stroke:.8px #08294a;
  }
}
