/* AI Rechtshulp gemeenteregels-kaart v1.0.3 */
.airgr,.airgr-balk{--gr-navy:#172c46;--gr-blauw:#174e80;--gr-licht:#7aa7d1;--gr-bleek:#b9cde0;--gr-rood:#b3261e;--gr-leeg:#e6ebf1;--gr-lijn:#cfdae5;--gr-muted:#42546b;font-family:"Source Sans 3",system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--gr-navy)}

/* kleurklassen: kaart, legenda en balk delen ze */
.airgr-kl--geen{background:var(--gr-leeg)}
.airgr-kl--vloek-ja,.airgr-kl--bedel-overal{background:var(--gr-rood)}
.airgr-kl--bedel-gebied,.airgr-kl--ballon-alle,.airgr-kl--duiven-tijdvak{background:var(--gr-blauw)}
.airgr-kl--bedel-gedrag,.airgr-kl--ballon-wens,.airgr-kl--duiven-aanzegging{background:var(--gr-licht)}
.airgr-kl--ballon-evenement{background:var(--gr-bleek)}

.airgr.airgr{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(20px,4vw,48px);align-items:start;margin:40px 0 48px!important;box-sizing:border-box;width:min(1120px,calc(100vw - 32px))!important;max-width:none!important;position:relative;left:50%;transform:translateX(-50%);padding:clamp(20px,3vw,32px) 0;border-top:1px solid var(--gr-lijn);border-bottom:1px solid var(--gr-lijn)}
.airgr .airgr__eye{margin:0 0 6px;font-size:13px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--gr-blauw)}
.airgr.airgr .airgr__kop{margin:0 0 18px!important;font:700 clamp(24px,2.6vw,32px)/1.15 "Source Sans 3",system-ui,sans-serif!important;color:var(--gr-navy)!important}
.airgr .airgr__tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-bottom:14px}
.airgr .airgr__tab{appearance:none;border:1px solid var(--gr-lijn);background:#fff;border-radius:6px;padding:8px 6px;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:2px;color:var(--gr-navy);font:inherit;transition:background .2s ease,border-color .2s ease,color .2s ease}
.airgr .airgr__tab:hover{border-color:var(--gr-blauw)}
.airgr .airgr__tab:focus-visible{outline:2px solid var(--gr-blauw);outline-offset:2px}
.airgr .airgr__tab[aria-selected="true"]{background:var(--gr-navy);border-color:var(--gr-navy);color:#fff}
.airgr .airgr__tabnaam{font-size:14px;font-weight:600;line-height:1.2}
.airgr .airgr__tabgetal{font-size:22px;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums}
.airgr .airgr__legenda ul{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:5px;font-size:15px;line-height:1.35;color:var(--gr-muted)}
.airgr .airgr__legenda ul[hidden]{display:none}
.airgr .airgr__legenda li{margin:0;display:flex;align-items:flex-start;gap:8px}
.airgr .airgr__legenda i{flex:0 0 14px;height:14px;border-radius:3px;margin-top:3px}
.airgr .airgr__legenda b{color:var(--gr-navy);font-variant-numeric:tabular-nums}
.airgr .airgr__zoeklabel{display:block;font-size:14px;font-weight:600;margin:0 0 6px}
.airgr .airgr__zoek input{width:100%;box-sizing:border-box;font:inherit;font-size:16px;padding:10px 12px;border:1px solid var(--gr-lijn);border-radius:6px;background:#fff;color:var(--gr-navy)}
.airgr .airgr__zoek input:focus{outline:2px solid var(--gr-blauw);outline-offset:1px;border-color:var(--gr-blauw)}
.airgr .airgr__detail{margin-top:16px;min-height:120px}
.airgr .airgr__hint{margin:0;font-size:15px;line-height:1.5;color:var(--gr-muted)}
.airgr .airgr__gemeente{margin:0 0 10px;font-size:20px;font-weight:700}
.airgr .airgr__regels{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.airgr .airgr__regel{margin:0;padding:0 0 10px;border-bottom:1px solid var(--gr-lijn);animation:airgr-in .28s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--n,0) * 50ms)}
.airgr .airgr__regel:last-child{border-bottom:0}
.airgr .airgr__regelkop{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600}
.airgr .airgr__regelkop i{flex:0 0 12px;height:12px;border-radius:3px}
.airgr .airgr__status{font-weight:400;color:var(--gr-muted)}
.airgr .airgr__citaat{margin:4px 0 2px 20px;font-size:14px;line-height:1.45;color:var(--gr-muted)}
.airgr .airgr__link{margin-left:20px;font-size:14px;color:var(--gr-blauw)!important;text-underline-offset:3px}
@keyframes airgr-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.airgr .airgr__kaart{position:relative}
.airgr .airgr__kaart svg{display:block;width:100%;height:auto;max-height:78vh}
.airgr .airgr__kaart path{fill:var(--gr-leeg);stroke:#fff;stroke-width:.5;transition:fill .45s ease;transition-delay:var(--d,0ms);cursor:pointer}
.airgr .airgr__kaart path:hover{stroke:var(--gr-navy);stroke-width:1.2}
.airgr .airgr__kaart path.is-gekozen{stroke:var(--gr-navy);stroke-width:2}
.airgr .airgr__kaart path.k-rood{fill:var(--gr-rood)}
.airgr .airgr__kaart path.k-blauw{fill:var(--gr-blauw)}
.airgr .airgr__kaart path.k-licht{fill:var(--gr-licht)}
.airgr .airgr__kaart path.k-bleek{fill:var(--gr-bleek)}
.airgr .airgr__fallback{display:block;width:100%;height:auto}
.airgr .airgr__tip{position:absolute;pointer-events:none;background:var(--gr-navy);color:#fff;font-size:13px;padding:4px 8px;border-radius:4px;white-space:nowrap;transform:translate(-50%,-130%);opacity:0;transition:opacity .15s ease}
.airgr .airgr__tip.is-zichtbaar{opacity:1}
.airgr .airgr__bron{grid-column:1/-1;margin:0!important;font-size:13px!important;line-height:1.5!important;color:#526274}

/* eenhedenbalk: 342 vakjes, één per gemeente */
.airgr-balk.airgr-balk{margin:24px 0 28px!important}
.airgr-balk .airgr-balk__cellen{display:grid;grid-template-columns:repeat(38,minmax(0,1fr));gap:3px}
.airgr-balk .airgr-balk__cellen i{display:block;aspect-ratio:1;border-radius:2px;background:var(--gr-leeg)}
.airgr-balk i.is-ja,.airgr-balk i.is-overal{background:var(--gr-rood)}
.airgr-balk i.is-gebied,.airgr-balk i.is-alle,.airgr-balk i.is-tijdvak{background:var(--gr-blauw)}
.airgr-balk i.is-gedrag,.airgr-balk i.is-wens,.airgr-balk i.is-aanzegging{background:var(--gr-licht)}
.airgr-balk i.is-evenement{background:var(--gr-bleek)}
.airgr-balk--js .airgr-balk__cellen i[class]{transform:scale(.2);opacity:0}
.airgr-balk--js.is-zichtbaar .airgr-balk__cellen i[class]{transform:none;opacity:1;transition:transform .3s cubic-bezier(.2,.7,.2,1),opacity .3s ease;transition-delay:calc(var(--i) * 4ms)}
.airgr-balk figcaption{margin-top:10px;font-size:15px;line-height:1.45;color:var(--gr-muted)}
.airgr-balk figcaption strong{color:var(--gr-navy);font-size:20px;font-variant-numeric:tabular-nums}
.airgr-balk .airgr-balk__legenda{display:flex;flex-wrap:wrap;gap:4px 16px;margin-top:4px}
.airgr-balk .airgr-balk__legenda span{display:inline-flex;align-items:center;gap:6px}
.airgr-balk .airgr-balk__legenda i{display:inline-block;width:11px;height:11px;border-radius:2px}
.airgr-balk .airgr-balk__legenda i:not([class]){background:var(--gr-leeg)}

.airgr-tabel table{font-size:15px}
.airgr-tabel td:first-child{font-weight:600;white-space:normal}

@media (max-width:860px){
  .airgr.airgr{grid-template-columns:1fr}
  .airgr .airgr__kaart{order:-1}
  .airgr .airgr__kaart svg{max-height:none}
  .airgr-balk .airgr-balk__cellen{grid-template-columns:repeat(19,minmax(0,1fr))}
}
@media (max-width:420px){
  .airgr .airgr__tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (prefers-reduced-motion:reduce){
  .airgr *,.airgr-balk *{transition:none!important;animation:none!important}
  .airgr-balk--js .airgr-balk__cellen i[class]{transform:none;opacity:1}
}
