/* OnzeUitjes.nl – aanvullingen op proto.css (prototype v0.21.1) */

/* ---------- algemeen ---------- */
.hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.section-tight{padding-top:10px;padding-bottom:10px}
.section-gap{margin-top:40px}
.help{display:block;color:var(--muted);font-size:12px;line-height:1.5;margin-top:7px}
.field .label,.field>span.label{display:block;font-size:13px;font-weight:bold;margin-bottom:7px}
.field-error{display:block;color:#2fa5a1;font-size:13px;margin-top:6px;font-weight:bold}
.error-list ul{margin:8px 0 0;padding-left:20px}
.error-list a{color:inherit}
.form-sub{margin:30px 0 14px;font-size:1.05rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.check-row{display:flex;flex-wrap:wrap;gap:4px 20px}
.check-row .check{margin:6px 0}
.small{font-size:13px;color:var(--muted)}
code{background:var(--soft);border-radius:5px;padding:1px 6px;font-size:.92em}
code.wrap{word-break:break-all}
.notice.success strong,.notice.error strong{display:inline}
.notice.error strong:first-child,.notice.success strong:first-child{display:block}

/* ---------- poster-fallback (geen flyer aangeleverd: géén nepbeeld) ---------- */
.poster-fallback{width:100%;aspect-ratio:2/3;max-height:100%;display:flex;flex-direction:column;justify-content:space-between;padding:18px 16px;background:linear-gradient(160deg,#1d343f 0%,#0f191e 70%);color:#fff;border-radius:6px;text-align:left;overflow:hidden}
.poster-fallback .pf-brand{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#e9d3a6}
.poster-fallback strong{font-family:var(--font);font-weight:normal;font-size:clamp(18px,2.2vw,30px);line-height:1.1;overflow-wrap:anywhere}
.poster-fallback .pf-date{font-size:14px;color:#e1ebee}
.poster-fallback .pf-city{font-size:12px;color:#b2c9c8;text-transform:uppercase;letter-spacing:.08em}
.card-poster .poster-fallback{max-height:180px;width:120px;padding:10px}
.card-poster .poster-fallback strong{font-size:15px}
.detail-poster .poster-fallback{min-height:420px}

/* ---------- agenda ---------- */
.hero-compact{padding:26px 0}
.hero-flyers{display:flex;gap:12px;align-items:flex-end;justify-content:flex-end}
.hero-flyer{display:block;width:150px;border-radius:8px;overflow:hidden;box-shadow:0 12px 30px #0f2c3a22;transform:rotate(-2deg);background:#0f191e}
.hero-flyer:nth-child(2){transform:rotate(2deg) translateY(-10px)}
.hero-flyer:nth-child(3){transform:rotate(-1deg)}
.hero-flyer img,.hero-flyer .poster-fallback{width:100%;aspect-ratio:2/3;object-fit:cover}
@media (max-width:760px){.hero-flyers{display:none}}
.filter-actions{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}
.filter-actions .button{min-height:46px}
.empty-state{text-align:center;padding:50px 20px;border:1px dashed var(--line);border-radius:var(--radius);background:#fff}
.empty-state h2{font-size:28px}
.pill.new{background:#e7f3eb;color:#274554;border-color:#b4d1bd}
.pill.live{background:#fff1d6;color:#7a4b00}
.button.current,.niche-nav .button.current{background:var(--groen);color:#fff;border-color:var(--groen)}
.calendar-links{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:20px 0}
.calendar-links .button{min-height:40px;padding:8px 14px;font-size:14px}
/* v1.22: woordenboekkaartje (D) */
a.term-link{text-decoration:underline dotted;text-underline-offset:3px}
.term-card{position:absolute;z-index:60;box-sizing:border-box;padding:14px 16px;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 30px #0f2c3a33;font-size:14px;line-height:1.45}
.term-card[hidden]{display:none}
.term-card strong{display:block;margin-bottom:4px}
.term-card p{margin:0 0 8px}
.term-card a{font-weight:600}
/* v1.22: regel bij de ticketknop (E1) */
.ticket-note{margin:8px 0 0}
/* v1.22: partnerblok compact (variant B) */
.partners.partners-compact{display:block;padding:22px 24px}
.partners-compact h2{font-size:22px;margin:0 0 6px}
.partner-rows{list-style:none;margin:0;padding:0}
.partner-rows li{border-bottom:1px solid var(--line)}
.partner-rows li:last-child{border-bottom:0}
.partner-rows a{min-height:48px;display:flex;justify-content:space-between;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}
.partner-rows strong{font-size:15px}
.partner-rows span{font-size:13px;color:var(--muted);text-align:right}
.partner-rows a:hover strong,.partner-rows a:focus-visible strong{text-decoration:underline}
/* v1.22: vaste clubavonden (deel B, C, F) */
.event-grid>.cn-block{grid-column:1/-1}
.cn-block{margin:8px 0;padding:18px 16px 16px;background:var(--paper);border:1px solid var(--line);border-radius:16px;display:flex;flex-direction:column;gap:12px;min-width:0}
.cn-block h2{margin:0;font-size:22px}
.cn-block .eyebrow{margin:0}
.cn-toggle{display:flex;gap:6px;padding:4px;background:var(--soft);border-radius:999px;max-width:420px}
.cn-tab{flex:1;min-height:44px;display:flex;align-items:center;justify-content:center;border-radius:999px;text-decoration:none;font-weight:600;font-size:14px;color:var(--ink)}
.cn-tab.is-on{background:var(--groen);color:#fff}
.cn-row{display:flex;gap:12px;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.cn-row[hidden]{display:none}
.cn-card{flex:none;width:236px;box-sizing:border-box;padding:14px;background:var(--soft);border:1px solid var(--line);border-radius:12px;display:flex;flex-direction:column;gap:7px;scroll-snap-align:start}
.cn-card.cn-wide{width:auto;background:var(--paper)}
.cn-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.cn-club{font-weight:bold;font-size:16px;color:var(--ink);text-decoration:none}
.cn-land{position:relative;font-size:11px;font-weight:bold;padding:2px 6px;border:1px solid var(--line);border-radius:4px;color:var(--muted)}
.cn-name{font-weight:600;color:var(--groen)}
.cn-meta{font-size:13px;color:var(--muted)}
.cn-rhythm{align-self:flex-start;font-size:12px;font-weight:600;padding:2px 8px;border-radius:4px;background:#fff1d6;color:#7a4b00}.cn-next{font-size:12px;color:var(--muted,#57666d);font-style:italic}
.cn-chips{display:flex;flex-wrap:wrap;gap:6px}
.cn-chip{font-size:12px;padding:3px 8px;border-radius:999px;background:var(--paper);border:1px solid var(--line)}
.cn-note{font-size:13px;color:var(--ink)}
.cn-link{margin-top:auto;font-size:13px;font-weight:600;min-height:32px;display:flex;align-items:flex-end}
.cn-all{align-self:flex-start}
.wp-tabs{display:flex;gap:8px;overflow-x:auto;margin:16px 0;padding-bottom:4px}
.wp-tab{flex:1 1 0;min-width:0;max-width:72px;height:64px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-decoration:none;font-size:14px}
.wp-tab span{font-size:12px;color:var(--muted)}
.wp-tab.is-on{background:var(--groen);border-color:var(--groen);color:#fff}
.wp-tab.is-on span{color:#fff}
.wp-filters{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}
.wp-filter{display:flex;flex-wrap:wrap;gap:6px}
.wp-filter .chip-f{min-height:36px;display:inline-flex;align-items:center;padding:0 12px;border:1px solid var(--line);border-radius:999px;text-decoration:none;color:var(--ink);font-size:13px}
.wp-filter .chip-f.is-on{border-color:var(--groen);background:var(--soft);font-weight:600}
.wp-day{margin-top:24px}
.wp-day-head{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--line);padding-bottom:8px;margin-bottom:10px}
.wp-day-head h2{margin:0;font-size:22px}
.wp-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}
.wp-empty{padding:20px 14px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:12px}
.wp-page.wp-js .wp-day:not(.is-on){display:none}
.wp-source{margin-top:24px}
.cw-block{display:flex;flex-direction:column;gap:12px}
.cw-legend{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.cw-key{display:inline-block;width:14px;height:14px;border-radius:4px;vertical-align:-2px;margin-right:4px;border:1px solid var(--line)}
.cw-key.cw-open{background:var(--soft)}
.cw-key.cw-night{background:var(--groen);border-color:var(--groen)}
.cw-key.cw-today{border:2px solid var(--ink)}
.cw-card{padding:16px 14px;background:var(--paper);border:1px solid var(--line);border-radius:14px;display:flex;flex-direction:column;gap:12px}
.cw-top{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}
.cw-club{font-size:17px;font-weight:bold;color:var(--ink);text-decoration:none}
.cw-days{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,minmax(0,40px));gap:6px}
.cw-day{height:40px;box-sizing:border-box;border-radius:8px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--muted)}
.cw-day.cw-open{background:var(--soft);color:var(--ink);font-weight:600}
.cw-day.cw-night{background:var(--groen);border-color:var(--groen);color:#fff;font-weight:600}
.cw-day.cw-today{border:2px solid var(--ink)}
.cw-day:not(.cw-open):not(.cw-night){border-style:dashed;text-decoration:line-through;background:transparent}
.cw-key.cw-closed{border-style:dashed;background:transparent}
.cw-nights{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.cw-nights li{display:flex;gap:10px;align-items:flex-start}
.cw-dag{flex:none;width:28px;font-size:13px;font-weight:bold;color:var(--groen)}
.cw-what{display:flex;flex-direction:column;gap:5px;min-width:0}
.cw-foot{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:10px;gap:8px;flex-wrap:wrap}
.cw-foot a{font-weight:600;min-height:32px;display:flex;align-items:center}
/* v1.21: snel antwoord op een kleine stadspagina */
.quick-answers{margin-top:18px}
.quick-answers h2{font-size:20px;margin:0 0 8px}
.quick-answers dl{margin:0}
.quick-answers dt{font-weight:bold;margin-top:10px}
.quick-answers dd{margin:3px 0 0;color:var(--muted)}
/* v1.21: gidspagina /gids/ */
.guide-group{margin-top:34px}
.guide-group h2{font-size:24px;margin:0 0 10px}
.guide-list,.prose .guide-list,.blog-body .guide-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.guide-list li,.prose .guide-list li,.blog-body .guide-list li{margin:0;border:1px solid var(--line);border-radius:10px;padding:14px 16px;background:var(--paper)}
.guide-list a{font-weight:bold}
.guide-list .small{display:block;margin-top:5px}
.guide-now{margin-top:18px}
/* v1.21: agenda en delen in één rij (eventpagina) */
.save-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:18px 0}
.save-menu{position:relative}
.save-menu>summary{list-style:none;cursor:pointer;min-height:40px;padding:8px 14px;font-size:14px;display:inline-flex;align-items:center;gap:6px}
.save-menu>summary::-webkit-details-marker{display:none}
.save-menu>summary .caret{width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin:-3px 2px 0 2px;transition:transform .15s}
.save-menu[open]>summary .caret{transform:rotate(-135deg);margin-top:3px}
.save-pop{position:absolute;z-index:20;top:calc(100% + 6px);left:0;min-width:210px;display:flex;flex-direction:column;padding:6px;background:var(--paper);border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 30px #0f2c3a29}
.save-pop a,.save-pop button{display:block;width:100%;text-align:left;padding:10px 12px;border:0;border-radius:7px;background:none;color:var(--ink);font:inherit;font-size:14px;text-decoration:none;cursor:pointer}
.save-pop a:hover,.save-pop button:hover,.save-pop a:focus-visible,.save-pop button:focus-visible{background:var(--soft)}
.save-bar .icon-btn{min-height:40px;min-width:40px;padding:8px 10px;line-height:0;display:inline-flex;align-items:center;justify-content:center}
.save-status:empty{display:none}
@media (max-width:480px){.save-pop{min-width:190px}.save-menu:last-of-type .save-pop{left:auto;right:0}}
.org-card-cover{height:120px;background:linear-gradient(135deg,#2b4e5f,#101b20)}

/* ---------- formulieren ---------- */
.rate-rows{display:grid;gap:10px}
.rate-row input{width:100%;border:1px solid #d0dede;border-radius:8px;padding:10px 12px;min-height:44px}
.upload-preview img{max-width:160px;max-height:220px;border-radius:6px;margin-top:10px}
.upload-preview{width:auto;max-height:none}
.upload-done{display:flex;gap:16px;align-items:center;margin-bottom:16px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}
.upload-done img{width:90px;height:auto;border-radius:6px}
.upload-done p{margin:0;font-size:14px}
.review-box{border:1px solid var(--line);background:var(--soft);border-radius:12px;padding:16px 18px;margin:16px 0}
.review-box dl{display:grid;grid-template-columns:150px 1fr;gap:6px 14px;margin:0;font-size:14px}
.review-box dt{color:var(--muted)}
.review-box dd{margin:0;overflow-wrap:anywhere}
.review-box ul{margin:8px 0 0;padding-left:20px}
.privacy-note{margin-top:20px}
.wizard-buttons{display:flex;justify-content:space-between;gap:12px;margin-top:20px}
[data-wizard].is-wizard .form-section{display:none}
[data-wizard].is-wizard .form-section.is-current{display:block}
.is-hidden{display:none!important}
.counter{display:block;font-size:12px;color:var(--muted);text-align:right;margin-top:4px}
.counter.bad{color:#2fa5a1;font-weight:bold}

/* ---------- inhoudspagina's ---------- */
.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin:24px 0}
.feature-grid>*{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px}
.link-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px}
.link-list{list-style:none;padding:0;margin:0}
.link-list li{padding:6px 0;border-bottom:1px solid var(--line)}
.link-list li span{color:var(--muted);font-size:13px}

/* ---------- beheer ---------- */
.admin-body{background:#f4f6f6}
.admin-header{background:#0f2c3a;color:#fff}
.admin-brand{color:#fff;text-decoration:none;font-weight:bold;font-size:20px;white-space:nowrap}
.admin-brand span{color:#e9d3a6;font-weight:normal}
.admin-header .badge{display:inline-block;min-width:20px;padding:0 6px;border-radius:10px;background:#e9d3a6;color:#0f2c3a;font-size:12px;font-weight:bold;text-align:center;line-height:20px}
.linklike{color:#dfe5e7;background:none;border:0;padding:0;text-decoration:underline;font-size:13px}
/* v1.10.0: kop in drie rijen */
.adm-row1{display:flex;align-items:center;gap:14px;padding:10px 24px;max-width:1400px;margin:auto;min-height:64px;box-sizing:border-box}
.adm-search{flex:1;display:flex;max-width:460px;margin-left:12px}
.adm-search input{flex:1;min-width:0;border:1px solid #384d58;background:#273841;color:#fff;border-radius:9px 0 0 9px;padding:9px 12px;font-size:14px;min-height:40px}
.adm-search input::placeholder{color:#a8c4c3}
.adm-search button{border:1px solid #384d58;border-left:0;background:#2d404a;color:#fff;border-radius:0 9px 9px 0;padding:0 14px;font-weight:bold;min-height:40px;cursor:pointer}
.adm-right{margin-left:auto;display:flex;align-items:center;gap:10px}
.admin-header .theme-toggle.adm-moon{order:0;width:40px;height:40px;border-radius:50%;border:1px solid #384d58;background:#273841;color:#fff;font-size:18px;display:grid;place-items:center;padding:0;margin:0;position:static;cursor:pointer}
.admin-header .theme-toggle.adm-moon[hidden]{display:none}
.adm-site{color:#dfe5e7;font-size:14px;white-space:nowrap;text-decoration:none}
.adm-site:hover{text-decoration:underline}
.adm-acct{position:relative}
.adm-acct summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:6px;color:#dfe5e7;font-size:14px;padding:8px 10px;border-radius:8px;border:1px solid #384d58;min-height:40px;box-sizing:border-box;white-space:nowrap}
.adm-acct summary::-webkit-details-marker{display:none}
.adm-acct ul{position:absolute;right:0;top:46px;background:#fff;color:#0f2c3a;list-style:none;margin:0;padding:6px;border-radius:10px;min-width:200px;box-shadow:0 8px 30px rgba(0,0,0,.3);z-index:20;border:1px solid #dfe6e9}
.adm-acct li a,.adm-acct li button{display:block;width:100%;text-align:left;padding:10px 12px;color:#0f2c3a;text-decoration:none;background:none;border:0;border-radius:6px;font-size:14px;cursor:pointer;min-height:40px;font-family:inherit}
.adm-acct li a:hover,.adm-acct li button:hover{background:#eef3f5}
.adm-menu{display:none}
.adm-menubtn{display:none}
.adm-groups{background:#223139}
.adm-groups-inner{display:flex;gap:2px;padding:0 24px;max-width:1400px;margin:auto;flex-wrap:wrap}
.adm-groups a{color:#dfe5e7;text-decoration:none;padding:11px 14px;font-size:14px;border-bottom:3px solid transparent;display:flex;gap:6px;align-items:center;min-height:44px;box-sizing:border-box}
.adm-groups a[aria-current=page]{color:#fff;border-bottom-color:#e9d3a6;font-weight:bold}
.adm-groups a:hover{background:#2d404a}
.adm-sub{background:#eef3f5;border-bottom:1px solid #dfe6e9}
.adm-sub-inner{display:flex;gap:4px;padding:6px 24px;max-width:1400px;margin:auto;flex-wrap:wrap}
.adm-sub a{color:#0f2c3a;text-decoration:none;padding:9px 12px;border-radius:7px;font-size:14px;min-height:40px;display:inline-flex;align-items:center;box-sizing:border-box}
.adm-sub a[aria-current=page]{background:#01837f;color:#fff}
.adm-sub a:hover{text-decoration:underline}
@media (max-width:760px){
  .adm-row1{flex-wrap:wrap;gap:10px;padding:10px 16px}
  .adm-search-desktop{display:none}
  .adm-site,.adm-acct{display:none}
  .adm-groups,.adm-sub{display:none}
  .adm-row1{position:relative}
  .adm-right{flex:1;justify-content:flex-end}
  .adm-menu{display:block;flex:0 0 auto;min-width:0}
  .adm-panel{position:absolute;left:0;right:0;top:100%;background:#0f2c3a;padding:4px 16px 14px;z-index:30;box-shadow:0 12px 30px rgba(0,0,0,.35);max-height:calc(100vh - 64px);overflow:auto}
  .adm-menubtn{display:inline-flex;align-items:center;gap:8px;border:1px solid #384d58;background:#273841;color:#fff;border-radius:9px;padding:8px 14px;font-weight:bold;min-height:40px;list-style:none;cursor:pointer;font-size:15px}
  .adm-menubtn::-webkit-details-marker{display:none}
  .adm-menu .adm-search{display:flex;margin:6px 0 10px;max-width:none}
  .adm-phone-nav .mg{margin:0 0 10px}
  .adm-phone-nav .mg h3{color:#a8c4c3;font:bold 12px/1.4 var(--font);text-transform:uppercase;letter-spacing:.08em;margin:12px 0 4px}
  .adm-phone-nav .mg a{display:flex;justify-content:space-between;align-items:center;color:#fff;text-decoration:none;padding:11px 10px;border-radius:8px;font-size:16px;min-height:44px;box-sizing:border-box}
  .adm-phone-nav .mg a[aria-current=page]{background:#01837f}
  .adm-acct-row{display:flex;flex-wrap:wrap;gap:8px;padding:12px 0 6px;border-top:1px solid #384d58;margin-top:8px}
  .adm-acct-row a,.adm-acct-row button{color:#dfe5e7;background:none;border:1px solid #384d58;border-radius:8px;padding:8px 12px;text-decoration:none;font-size:14px;min-height:40px;font-family:inherit;cursor:pointer}
}
form.inline{display:inline}
.admin-main{max-width:1400px;margin:auto;padding:26px 24px 80px}
.admin-main h1{font-size:34px;margin-bottom:16px}
.admin-main h1 .status{font-size:14px;vertical-align:middle;font-family:var(--font);letter-spacing:0}
.admin-main .panel h2{font-size:22px;margin-top:8px}
.admin-main .panel h2:not(:first-of-type){margin-top:28px;padding-top:18px;border-top:1px solid var(--line)}
.admin-auth{max-width:420px;margin:60px auto}
.admin-auth h1{font-size:32px}
.admin-auth .field{margin-bottom:14px}
.panel.narrow{max-width:520px}
.panel.narrow .field{margin-bottom:14px}
.admin-titlebar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.admin-titlebar h1{margin:0}
.admin-cols{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
.admin-cols.wide-left{grid-template-columns:minmax(0,2fr) minmax(280px,1fr)}
@media (max-width:980px){.admin-cols,.admin-cols.wide-left{grid-template-columns:1fr}}
.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-bottom:24px}
.stat{display:block;background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;text-decoration:none;color:var(--ink)}
.stat strong{display:block;font-size:32px;font-family:var(--font);font-weight:normal;color:var(--groen)}
.stat span{font-size:13px;color:var(--muted)}
.admin-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;font-size:14px}
.admin-table th,.admin-table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.admin-table th{background:var(--soft);font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.admin-table tr.muted td{opacity:.55}
.panel .admin-table{border:0}
@media (max-width:760px){.admin-table{display:block;overflow-x:auto}}
.admin-thumb.small{width:120px;height:40px}
.admin-main .admin-thumb{margin-bottom:8px}
.status{display:inline-block;padding:2px 9px;border-radius:12px;font-size:12px;font-weight:bold;background:#eee;color:#333}
.s-nieuw,.status.s-concept{background:#fff1d6;color:#7a4b00}
.s-aanvulling{background:#e3ecff;color:#1d3f8a}
.s-gepubliceerd,.s-published,.s-verwerkt,.s-afgehandeld{background:#e7f3eb;color:#274554}
.s-afgewezen,.s-genegeerd{background:#fbf3e4;color:#288b88}
.warn{color:#2fa5a1;font-weight:bold}
.tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:18px}
.tabs a{padding:8px 14px;border:1px solid var(--line);border-radius:8px;background:#fff;text-decoration:none;font-size:14px}
.tabs a[aria-current=page]{background:var(--groen);color:#fff;border-color:var(--groen)}
.admin-search{display:flex;gap:8px;margin-bottom:16px;max-width:520px}
.admin-search input{flex:1;border:1px solid #d0dede;border-radius:8px;padding:10px 12px}
.inline-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:10px}
.inline-form input,.inline-form select{border:1px solid #d0dede;border-radius:8px;padding:8px 10px;min-height:40px}
.inline-form input{flex:1;min-width:180px}
.inline-form .button{min-height:40px;padding:8px 14px}
.empty{padding:30px;text-align:center;color:var(--muted);background:#fff;border:1px dashed var(--line);border-radius:12px}
.plain-list{list-style:none;padding:0;margin:0}
.plain-list li{padding:8px 0;border-bottom:1px solid var(--line)}
.history{list-style:none;padding:0;margin:0}
.history li{padding:8px 0;border-bottom:1px solid var(--line);font-size:14px}
.kv{display:grid;grid-template-columns:140px 1fr;gap:6px 14px;font-size:14px}
.kv dt{color:var(--muted)}.kv dd{margin:0}
.item header{margin-bottom:10px;font-size:14px}
.secret{display:inline-block;font-size:20px;letter-spacing:.08em;margin:8px 0;padding:8px 12px}
.mail-edit{margin:18px 0;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:#fafbfc}
.mail-edit summary{cursor:pointer;font-weight:bold}
.mail-edit .field{margin-top:12px}
.admin-main aside .panel .field{margin-bottom:10px}
.admin-main .split-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
/* v1.10.0: Te doen, voorraad, compacte tegels */
.s-uit{background:#ececec;color:#555}
.todo{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.todo li{display:grid;grid-template-columns:14px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 14px;background:#fff;border:1px solid var(--line);border-radius:12px}
.todo .dot{width:12px;height:12px;border-radius:50%;background:#2bc0bb}
.todo .dot.warn{background:#d98c1f}
.todo strong{display:block;font-size:15px}.todo span.small{display:block}
.todo .button{min-height:40px;padding:8px 14px;font-size:13px;white-space:nowrap}
.todo-form{margin:0}
.todo-empty{padding:16px;border:1px dashed #b7d4d3;border-radius:12px;color:#274554;background:#f1f8f3;margin:0}
.stock{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:13px;color:var(--muted);margin:14px 0 0}
.stock a{color:#01837f}
.stat-grid.compact .stat{padding:12px 14px}.stat-grid.compact .stat strong{font-size:22px}
.small-h{font-size:14px;margin:18px 0 6px;color:var(--muted)}
.muted-h{color:var(--muted);font-weight:normal}
/* v1.10.0: één lijstopzet */
.list-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:14px}
.list-toolbar .admin-search{margin:0;flex:1;min-width:220px}
.list-toolbar .count{font-size:13px;color:var(--muted);margin-left:auto}
.row-link{font-weight:bold}
.list-more{margin:16px 0 0;text-align:center}.list-end{text-align:center;margin-top:12px}
.bulk-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 10px}
.bulk-bar .button{min-height:40px;padding:8px 14px}
.admin-table .actions{white-space:normal}.admin-table .actions .row-actions{margin:0;max-width:280px;gap:6px}
.admin-table .actions .button,.row-actions .button{min-height:40px;padding:8px 12px;font-size:13px}
.admin-table .actions form{display:inline}
.search-list{list-style:none;margin:0;padding:0}
.search-list li{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.search-list li:last-child{border-bottom:0}
.search-list .small{display:block}
.search-list .sl-right{display:flex;gap:10px;align-items:center;flex:none}
.search-list .sl-right .button{min-height:40px;padding:8px 12px;font-size:13px}
.search-group{margin-bottom:14px}
@media (max-width:760px){
  .admin-table.cards{display:block;border:0;background:transparent;overflow:visible}
  .admin-table.cards thead{display:none}
  .admin-table.cards tbody,.admin-table.cards tr{display:block}
  .admin-table.cards tr{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin-bottom:10px;display:grid;grid-template-columns:1fr 1fr;gap:4px 12px}
  .admin-table.cards tr.muted{opacity:.6}.admin-table.cards tr.muted td{opacity:1}
  .admin-table.cards td{display:block;border:0;padding:0;font-size:14px}
  .admin-table.cards td.full,.admin-table.cards td.sel{grid-column:1/-1}
  .admin-table.cards td.sel{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}
  .admin-table.cards td.sel input{width:22px;height:22px;margin:0}
  .admin-table.cards td.sel::after{content:"selecteer"}
  .admin-table.cards td[data-l]::before{content:attr(data-l);display:block;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
  .admin-table.cards td.actions{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap;margin-top:6px;white-space:normal}
  .admin-table.cards td.actions .button{min-height:44px;font-size:13px;padding:8px 12px}
  .admin-table.cards td:empty{display:none}
  .todo li{grid-template-columns:14px minmax(0,1fr)}.todo .button,.todo .todo-form{grid-column:2}
  .search-list li{flex-wrap:wrap}
}

/* ---------- correcties na visuele test ---------- */
.footer nav{flex-wrap:wrap;gap:6px 18px}
.footer-inner>div{min-width:0}
.card-poster .poster-fallback{width:118px;height:170px;aspect-ratio:auto;padding:9px 8px;gap:4px}
.card-poster .poster-fallback .pf-brand{font-size:8px;letter-spacing:.08em}
.card-poster .poster-fallback strong{font-size:13px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.card-poster .poster-fallback .pf-date{font-size:11px}
.card-poster .poster-fallback .pf-city{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hero-flyer .poster-fallback{padding:12px 10px}
.hero-flyer .poster-fallback strong{font-size:16px}

/* ---------- v1.1: herstelde onderdelen uit het prototype ---------- */
.hero-slide[hidden]{display:none}
.slideshow-controls[hidden]{display:none!important}
.rate-row{margin-bottom:8px}
.rate-row input{background:#fff}
.field input::placeholder,.field textarea::placeholder{color:#a69fa9}
.media-extras .upload-done{flex-wrap:wrap}
.media-extras .upload-done img{width:80px}
#cover-preview{margin:6px 0 10px;border-radius:14px}
.advertise-hero em{color:var(--groen)}
.format-stage svg{max-width:100%;height:auto}
.photo-zoom{border:0;padding:0;background:none;cursor:zoom-in}
.photo-dialog-image{max-width:100%;max-height:100%;object-fit:contain}
.directory-card ul{list-style:none;padding:0;margin:0 0 10px}
.directory-card li{padding:6px 0;border-bottom:1px solid var(--line)}
.directory-card li small{display:block;color:var(--muted);font-size:12px}
.submission-aside .steps-list span{display:block}

/* ---------- v1.2 ---------- */
.theme-tags{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:-6px 0 16px}
.theme-tags a{font-size:12px;padding:4px 10px;border-radius:999px;background:#e9eff1;color:var(--groen);text-decoration:none;border:1px solid #cfe6e5}
.theme-tags a:hover{background:#d9e3e7}
.related-band,.org-events-band{background:#ebeff0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:42px 0 46px;margin-top:40px}
@media (min-width:721px){.related-band .section-heading,.org-events-band .section-heading{align-items:flex-end}}
.org-events-band .event-grid,.related-band .event-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:980px){.org-events-band .event-grid,.related-band .event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.org-events-band .event-grid,.related-band .event-grid{grid-template-columns:1fr}}
a.org-card-cover{display:flex;align-items:center;justify-content:center;text-decoration:none}
a.org-card-cover img{max-height:90px;max-width:80%;object-fit:contain}
.admin-footer{max-width:1400px;margin:0 auto;padding:0 24px 30px;color:var(--muted);font-size:12px}
.upload-block{border:1px solid #c6dfde;background:#f7f9fa;border-radius:14px;padding:18px 20px;margin:18px 0}
.upload-block>h3{margin:0 0 8px;font-size:18px;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.upload-block .req{font-size:11px;font-weight:bold;color:#2fa19d;text-transform:uppercase;letter-spacing:.05em}
.upload-block .opt{font-size:12px;font-weight:normal;color:var(--muted)}
.upload-rules{margin:0 0 12px;padding-left:18px;font-size:13px;color:var(--muted)}
.upload-rules li{margin:2px 0}
.upload-preview{display:flex;flex-direction:column;gap:4px;align-items:flex-start}
.upload-done.photos{gap:14px;align-items:flex-start}
.upload-done figure{margin:0;display:flex;flex-direction:column;gap:4px}
.upload-done figure img{width:110px;height:80px;object-fit:cover}
.remove-check{margin:4px 0;font-size:12px}
.upload-done figure:has(.remove-check input:checked) img,.upload-done:has(.remove-check input:checked)>img{opacity:.3;outline:2px dashed #2fa19d}
.field-with-preview .upload-preview img{max-width:180px}
.vat-status{font-size:13px;margin-top:6px;line-height:1.5}
.vat-status.ok{color:#274554}.vat-status.bad{color:#2fa5a1}.vat-status.warn{color:#7a4b00}.vat-status.busy{color:var(--muted)}
.duration-info p{margin:0 0 6px;font-size:14px}
.pow-box{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px 14px;margin:14px 0;font-size:14px;max-width:420px}
.pow-check{width:20px;height:20px;border:2px solid #a8bfbe;border-radius:5px;flex:none;display:grid;place-items:center}
.pow-box.is-busy .pow-check{border-color:var(--groen);border-top-color:transparent;border-radius:50%;animation:powspin .8s linear infinite}
.pow-box.is-done .pow-check{background:#01837f;border-color:#01837f;animation:none;border-radius:5px}
.pow-box.is-done .pow-check:after{content:"✓";color:#fff;font-size:13px;font-weight:bold}
.pow-box.is-failed{border-color:#a3d7d5;color:#2fa5a1}
.pow-text small{color:var(--muted)}
.newsletter .pow-box{background:transparent;color:inherit;border-color:#ffffff40}
@keyframes powspin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.pow-box.is-busy .pow-check{animation:none}}
/* beheer: banners */
.wire-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
@media (max-width:900px){.wire-grid{grid-template-columns:1fr}}
.wire-card{margin:0}
.wire{border:1px solid var(--line);border-radius:10px;background:#fff;padding:8px;display:flex;flex-direction:column;gap:6px;min-height:200px}
.wire .w-head,.wire .w-foot{height:12px;background:#e4e9ea;border-radius:3px}
.wire .w-foot{margin-top:auto}
.wire .w-hero{height:34px;background:#ecf0f1;border-radius:4px}
.wire .w-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}
.wire .w-grid i{display:block;height:22px;background:#eef1f2;border-radius:3px}
.wire .w-grid.small i{height:14px}
.wire .w-cols{display:grid;grid-template-columns:2fr 1fr;gap:6px;flex:1}
.wire .w-main,.wire .w-side{display:flex;flex-direction:column;gap:4px}
.wire .w-main span,.wire .w-side span,.wire .w-line{display:block;height:9px;background:#eef1f2;border-radius:3px}
.wire span.short{width:60%}
.wire .w-partners{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.wire .w-partners i{height:12px;background:#eef1f2;border-radius:3px;display:block}
.wire .w-ad{display:grid;place-items:center;background:#01837f;color:#fff;font-size:11px;border-radius:4px;box-shadow:0 0 0 3px #f6e5c3}
.wire .w-leader{height:22px;margin:0 6%}
.wire .w-strip{height:16px;margin:0 22%}
.wire .w-side .w-ad{height:56px}
.promo-thumb{position:relative;display:inline-block;cursor:zoom-in}
.promo-thumb>img{width:140px;height:44px;object-fit:contain;background:#14232a;border-radius:6px}
.promo-full{display:none;position:absolute;z-index:20;left:0;top:calc(100% + 6px);background:#fff;padding:8px;border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 30px #0f2c3a33}
.promo-full img{max-width:min(760px,80vw);height:auto;display:block}
.promo-thumb:hover .promo-full,.promo-thumb:focus .promo-full{display:block}
.promo-upload-preview img{max-width:100%!important;max-height:none!important}
.vak-preview{outline:3px dashed #01837f;outline-offset:6px}
.vak-link{display:block;width:100%}.vak-link img{display:block;width:100%;max-width:100%;height:auto}.vak-leaderboard .vak-link{max-width:728px}.vak-strip .vak-link{max-width:468px}.vak-rectangle .vak-link{max-width:300px}
.s-spam{background:#eee;color:#555}
.cover-option{position:relative}
.cover-option input{position:absolute;opacity:0;width:1px;height:1px}
.cover-option input:focus-visible+.cover-swatch{outline:3px solid #146dc3;outline-offset:3px}
.cover-options{grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:760px){.cover-options{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---------- v1.3: blog & woordenboek ---------- */
.blog-hero{background:linear-gradient(115deg,#eef2f3,#f3eee6);border-bottom:1px solid var(--line);padding:26px 0 30px}
.blog-hero h1{margin-bottom:12px}
.blog-hero .lead{max-width:760px}
.blog-cats{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.blog-cats a{font-size:14px;padding:7px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);text-decoration:none;color:var(--ink)}
.blog-cats a span{color:var(--muted);font-size:12px}
.blog-cats a[aria-current=page]{background:var(--groen);border-color:var(--groen);color:#fff}
.blog-cats a[aria-current=page] span{color:#e6f3f2}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:10px}
.blog-grid.three{margin-top:0}
@media (max-width:980px){.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.blog-grid{grid-template-columns:1fr}}
.blog-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}
.blog-card-img img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;transition:transform .3s}
.blog-card-img{display:block;overflow:hidden}
.blog-card:hover .blog-card-img img{transform:scale(1.03)}
.blog-card-body{padding:18px 20px 20px;display:flex;flex-direction:column;gap:6px;flex:1}
.blog-card-body h2,.blog-card-body h3{font-size:22px;margin:0;line-height:1.2}
.blog-card-body h2 a,.blog-card-body h3 a{color:var(--ink);text-decoration:none}
.blog-card-body p{margin:0;font-size:14px;color:var(--muted)}
.blog-card-body .small{margin-top:auto}
.blog-card.featured{grid-column:1/-1;display:grid;grid-template-columns:1.3fr 1fr}
.blog-card.featured .blog-card-img img{height:100%;aspect-ratio:auto;min-height:280px}
.blog-card.featured h2{font-size:32px}
@media (max-width:760px){.blog-card.featured{grid-template-columns:1fr}.blog-card.featured .blog-card-img img{min-height:0;aspect-ratio:16/9}}
.blog-meta{font-size:12px;color:var(--muted);margin:0 0 6px;text-transform:uppercase;letter-spacing:.05em}
.blog-meta a{color:var(--groen);text-decoration:none;font-weight:bold}
.blog-article-head{padding-top:22px;max-width:900px}
.blog-article-head h1{font-size:clamp(2rem,4.2vw,3.4rem)}
.blog-article-img img{width:100%;max-height:440px;object-fit:cover;object-position:50% 25%;border-radius:var(--radius)} /* v1.9.0: iets boven het midden, zodat hoofden niet wegvallen */
.blog-article-img{margin:10px auto 28px}
.blog-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:40px;align-items:start;padding-bottom:40px}
@media (max-width:980px){.blog-layout{grid-template-columns:minmax(0,1fr)}}
.blog-body{max-width:760px;min-width:0;font-size:17px;line-height:1.75}
.blog-body h2,.glossary-term .prose h2{font-size:30px;margin:38px 0 12px;scroll-margin-top:20px}
.blog-body h3{font-size:20px;margin:26px 0 8px}
.blog-body ul,.blog-body ol{padding-left:22px;margin:0 0 18px}
.blog-body li{margin:6px 0}
.blog-body blockquote{margin:22px 0;padding:14px 20px;border-left:4px solid var(--groen);background:#f1f4f5;border-radius:0 10px 10px 0;font-style:italic}
.blog-body blockquote p{margin:0}
.blog-aside{position:sticky;top:20px;display:flex;flex-direction:column;gap:16px}
.blog-aside .panel{margin:0;padding:20px}
.blog-aside .panel h2{font-size:20px}
.blog-toc ol{padding-left:18px;margin:0;font-size:14px}
.blog-toc li{margin:6px 0}
.blog-faq{margin-top:40px;border-top:1px solid var(--line);padding-top:10px}
.blog-faq details{border-bottom:1px solid var(--line);padding:12px 0}
.blog-faq summary{cursor:pointer;font-weight:bold;font-size:17px}
.blog-faq details p{margin:10px 0 0}
.see-also-group{border:1px solid var(--line);border-radius:8px;padding:6px 10px;margin:0 0 6px;background:#fff}
.see-also-group summary{cursor:pointer;font-weight:bold;font-size:14px;padding:4px 0}
.city-page .city-intro{max-width:760px}.city-page .city-intro p{font-size:17px;color:var(--muted)}
.city-cols{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media (max-width:760px){.city-cols{grid-template-columns:1fr}}
.city-cols .term-list{margin:0;display:grid;gap:8px}.city-cols .term-list dt{font-weight:bold}.city-cols .term-list dd{margin:0;font-size:13px;color:var(--muted)}
.near-h{margin:26px 0 10px;font-size:20px}.near-item{position:relative}.near-km{position:absolute;top:10px;right:12px;background:var(--soft);color:var(--groen);font-size:11px;font-weight:bold;padding:3px 8px;border-radius:99px}
.city-more{margin:0 0 18px}.city-more a{font-weight:bold;text-decoration:none}.city-strip{padding:0 0 30px}
.term-link{text-decoration-style:dotted;text-underline-offset:3px}
.event-terms .term-list{margin:0;display:grid;gap:10px}.event-terms .term-list dt{font-weight:bold}.event-terms .term-list dd{margin:0;font-size:14px;color:var(--muted)}
.pill-info .info-i{text-decoration:none;font-weight:bold;margin-left:2px}.pill-info .info-i:hover{text-decoration:underline}
.site-page-img{margin:0 auto 26px}.site-page-img .page-photo,.page-photo{margin:0}.page-photo img{width:100%;height:auto;border-radius:14px;display:block}
.blog-body .page-photo{margin:18px 0 22px}
.table-wrap{overflow-x:auto;margin:14px 0 24px;-webkit-overflow-scrolling:touch}.keuzehulp{width:100%;border-collapse:collapse;font-size:14px;line-height:1.45;min-width:640px}.keuzehulp th,.keuzehulp td{text-align:left;vertical-align:top;padding:8px 10px;border-bottom:1px solid var(--line)}.keuzehulp thead th{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.keuzehulp tbody th{font-weight:bold;white-space:nowrap}
.tips-link{margin:12px 0 0}
.glossary-groups{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.glossary-groups .chip-f{text-decoration:none}
.glossary-groups .chip-f.is-on{background:var(--soft);border-color:var(--groen);color:var(--groen)}
.glossary-grp-note{margin:-6px 0 14px}
.glossary-tools{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:5;background:var(--bg);padding:12px 0;border-bottom:1px solid var(--line);margin-bottom:10px}
.az{display:flex;flex-wrap:wrap;gap:3px}
.az a,.az span{display:grid;place-items:center;width:30px;height:32px;border-radius:7px;font-weight:bold;font-size:14px;text-decoration:none}
.az a{background:#fff;border:1px solid var(--line);color:var(--groen)}
.az a:hover{background:var(--groen);color:#fff}
.az span{color:#bfd0cf}
#g-search{border:1px solid #d0dede;border-radius:9px;padding:10px 12px;min-width:240px}
.glossary-letter{scroll-margin-top:70px}
.glossary-letter h2{font-size:34px;color:var(--groen);margin:26px 0 6px;border-bottom:2px solid #e6f3f2;padding-bottom:4px}
.glossary-letter dl{margin:0}
.term{display:grid;grid-template-columns:200px 1fr;gap:6px 22px;padding:12px 0;border-bottom:1px solid var(--line);scroll-margin-top:80px}
.term:target{background:#fff2d9;border-radius:8px;padding-left:8px}
.term dt{font-weight:bold;font-size:16px}
.term dt a{color:var(--ink)}
.term dd{margin:0;font-size:15px;line-height:1.6}
.term-more{display:block;margin-top:4px;font-size:13px}
@media (max-width:640px){.term{grid-template-columns:1fr}}
.term-short{font-size:20px}
/* beheer */
.google-preview{border:1px solid var(--line);border-radius:10px;padding:14px 16px;background:#fff;font-family:var(--font);max-width:620px}
.google-preview .gp-url{color:#202124;font-size:13px}
.google-preview .gp-title{color:#1a0dab;font-size:19px;line-height:1.3;margin:3px 0}
.google-preview .gp-desc{color:#4d5156;font-size:13px;line-height:1.5}
.md-toolbar{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:6px}
.md-toolbar button{border:1px solid var(--line);background:#fff;border-radius:6px;padding:4px 10px;font-size:13px}
.md-help{font-size:12px;color:var(--muted)}
.faq-rows .faq-row{display:grid;grid-template-columns:1fr 2fr;gap:8px;margin-bottom:8px}
.faq-rows input,.faq-rows textarea{border:1px solid #d0dede;border-radius:8px;padding:8px 10px;width:100%}

/* v1.4.0 statistieken */
.stat-periods{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:14px 0 22px}
.stat-periods .inline-form{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-left:auto}
.stat-periods input[type=date]{padding:7px 9px;border:1px solid var(--line);border-radius:10px;font:inherit}
.stat .delta{display:block;margin-top:6px;font-size:12px;color:var(--muted)}
.stat .delta.up{color:#1f5c7a}
.stat .delta.down{color:#2ba39f}
.stat-chart{display:block;width:100%;height:auto;overflow:visible}
.stat-chart .grid{stroke:#e6e9ea;stroke-width:1}
.stat-chart .base{stroke:#bccbca;stroke-width:1}
.stat-chart .axis{font-size:11px;fill:#6a7a79;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
.stat-chart .bar path{fill:#01837f}
.stat-chart .bar .hit{fill:transparent}
.stat-chart .bar:hover path{fill:#12597d}
.stat-chart .bar:hover .hit{fill:rgba(1,131,127,.06)}
.stat-table-toggle{margin-top:8px;font-size:13px}
.stat-table-toggle summary{cursor:pointer;color:var(--muted)}
.stat-table-toggle table{margin-top:8px}
.admin-table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.stat-list td:first-child{position:relative}
.stat-share{position:absolute;left:0;top:4px;bottom:4px;background:rgba(1,131,127,.10);border-radius:0 4px 4px 0;pointer-events:none}
.stat-label{position:relative;word-break:break-word}

/* v1.5.0 omslagen (afbeeldingen) */
.org-cover.velvet{background:linear-gradient(90deg,rgba(12,5,12,.62),rgba(12,5,12,.05) 70%),#0b1317 url(/assets/covers/velvet.webp) center/cover no-repeat}
.org-cover.neon{background:linear-gradient(90deg,rgba(12,5,12,.62),rgba(12,5,12,.05) 70%),#0b1317 url(/assets/covers/neon.webp) center/cover no-repeat}
.org-cover.deco{background:linear-gradient(90deg,rgba(12,5,12,.62),rgba(12,5,12,.05) 70%),#0b1317 url(/assets/covers/deco.webp) center/cover no-repeat}
.org-cover.champagne{background:linear-gradient(90deg,rgba(12,5,12,.62),rgba(12,5,12,.05) 70%),#0b1317 url(/assets/covers/champagne.webp) center/cover no-repeat}
.org-cover.satijn{background:linear-gradient(90deg,rgba(12,5,12,.62),rgba(12,5,12,.05) 70%),#0b1317 url(/assets/covers/satijn.webp) center/cover no-repeat}
.org-cover.laser{background:linear-gradient(90deg,rgba(12,5,12,.62),rgba(12,5,12,.05) 70%),#0b1317 url(/assets/covers/laser.webp) center/cover no-repeat}
.org-card-cover.velvet{background:#0b1317 url(/assets/covers/velvet-thumb.webp) center/cover no-repeat}
.org-card-cover.neon{background:#0b1317 url(/assets/covers/neon-thumb.webp) center/cover no-repeat}
.org-card-cover.deco{background:#0b1317 url(/assets/covers/deco-thumb.webp) center/cover no-repeat}
.org-card-cover.champagne{background:#0b1317 url(/assets/covers/champagne-thumb.webp) center/cover no-repeat}
.org-card-cover.satijn{background:#0b1317 url(/assets/covers/satijn-thumb.webp) center/cover no-repeat}
.org-card-cover.laser{background:#0b1317 url(/assets/covers/laser-thumb.webp) center/cover no-repeat}
.org-cover.own{background-color:#0b1317;background-position:center;background-size:cover;background-repeat:no-repeat;position:relative;isolation:isolate}
.org-cover.own::before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(90deg,rgba(12,5,12,.62),rgba(12,5,12,.05) 70%);z-index:-1}
.org-card-cover[style]{background-position:center;background-size:cover}
.org-cover{min-height:220px;display:flex;flex-direction:column;justify-content:center}

/* v1.5.0 omslagkiezer */
.cover-picker{margin:6px 0 4px}
.cv-preview.org-cover{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:1920/600;min-height:150px;display:flex;align-items:center;padding:0 5%;margin:0 0 14px;color:#fff}
.cv-preview .cv-text{position:relative}
.cv-logo{width:44px;height:44px;border-radius:11px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);display:grid;place-items:center;font-weight:bold;margin-bottom:8px}
.cv-logo-img{width:48px;height:48px;object-fit:contain;border-radius:10px;background:#fff;padding:4px;margin-bottom:8px}
.cv-preview small{display:block;letter-spacing:.16em;text-transform:uppercase;font-size:10px;color:#f2e4c9;font-weight:bold}
.cv-preview strong{display:block;font:bold clamp(20px,3.4vw,30px)/1.15 var(--font)}
.cv-badge{position:absolute;right:12px;top:10px;background:rgba(0,0,0,.45);color:#fff;font-size:11px;font-weight:bold;padding:4px 9px;border-radius:99px;z-index:1}
.cv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.cv-tile{cursor:pointer;display:block;position:relative}
.cv-tile input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}
.cv-img{position:relative;display:block;aspect-ratio:1920/600;border-radius:10px;background:#0b1317 center/cover no-repeat;border:2px solid transparent;outline:1px solid var(--line);transition:transform .12s}
.cv-tile:hover .cv-img{transform:translateY(-2px)}
.cv-tile input:checked+.cv-img{border-color:#01837f;outline:3px solid #deeaee}
.cv-tile input:focus-visible+.cv-img{outline:3px solid #146dc3}
.cv-check{position:absolute;right:6px;top:6px;width:20px;height:20px;border-radius:50%;background:#01837f;color:#fff;font-size:12px;display:none;place-items:center}
.cv-tile input:checked+.cv-img .cv-check{display:grid}
.cv-name{display:block;font-size:12px;font-weight:bold;margin-top:5px}
.cv-own{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 18px;align-items:start;margin-top:14px;padding:12px 14px;border:1px dashed #b8cecd;border-radius:12px;font-size:13px}
.cv-own>div:first-child span{display:block;color:var(--muted);font-size:12.5px;margin-top:3px}
.cv-own .field{margin:0}.cv-own .upload-preview img{max-width:100%;border-radius:8px}
.cv-own-current{display:flex;gap:10px;align-items:center;font-size:12.5px}.cv-own-current img{width:120px;aspect-ratio:3.2/1;object-fit:cover;border-radius:6px}
@media(max-width:560px){.cv-grid{grid-template-columns:1fr 1fr}.cv-own{grid-template-columns:1fr}.cv-preview.org-cover{aspect-ratio:auto;min-height:170px;padding:18px}.cv-badge{font-size:10px}}
.cv-img.velvet{background-image:url(/assets/covers/velvet-thumb.webp)}
.cv-img.neon{background-image:url(/assets/covers/neon-thumb.webp)}
.cv-img.deco{background-image:url(/assets/covers/deco-thumb.webp)}
.cv-img.champagne{background-image:url(/assets/covers/champagne-thumb.webp)}
.cv-img.satijn{background-image:url(/assets/covers/satijn-thumb.webp)}
.cv-img.laser{background-image:url(/assets/covers/laser-thumb.webp)}

/* v1.5.0 compact aanmeldformulier */
.submission-page h1{font-size:clamp(2rem,3.4vw,3rem);margin-bottom:8px}
.submission-page .lead{margin-bottom:18px;font-size:15px}
.submission-page .eyebrow{margin-bottom:10px}
.submission-layout{grid-template-columns:minmax(0,1fr) 270px!important;gap:22px!important}
.submission-page .panel{padding:20px 22px}
.submission-aside .panel{padding:16px 18px;margin-bottom:12px}.submission-aside h2{font-size:19px;margin-bottom:8px}.submission-aside p{font-size:13px;margin-bottom:10px}.submission-aside .steps-list li{margin-bottom:10px;font-size:13px}.submission-aside .button{min-height:38px;padding:7px 14px;font-size:13px}
.submission-page .form-section{margin-bottom:14px}
.submission-page .form-section legend{font-size:20px;margin-bottom:12px}
.submission-page .step{width:22px;height:22px}
.submission-page .fields{gap:10px 12px}
.submission-page .fields.f3{grid-template-columns:repeat(3,minmax(0,1fr))}
.submission-page .fields .field.wide{grid-column:1/-1}.submission-page .fields .span2{grid-column:span 2}
.submission-page .field label,.submission-page .field .label{font-size:12.5px;margin-bottom:4px}
.submission-page .field input,.submission-page .field select{min-height:40px;padding:7px 10px;border-radius:8px}
.submission-page .field textarea{padding:8px 10px}
.submission-page .field small.help{font-size:11.5px;margin-top:3px}
.submission-page .form-sub{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:16px 0 8px}
.submission-page [data-counter]{font-size:11px}
.form-intro{margin-bottom:10px}
.wizard-progress{margin-bottom:14px!important}
.pill-checks{display:flex;flex-wrap:wrap;gap:6px}
.pill-checks .check{margin:0;font-size:13px;border:1px solid #cfe1e0;border-radius:99px;padding:6px 11px;background:#fff;cursor:pointer;align-items:center}
.pill-checks .check input{width:15px;height:15px;margin:0}
.pill-checks .check:has(input:checked){background:#e0e8eb;border-color:#8ac9c7;color:#016f6b}
.opt-group{margin:12px 0;border:1px dashed #c4d9d8;border-radius:12px;padding:10px 14px}
.opt-group summary{cursor:pointer;font-weight:bold;font-size:14px}.opt-group summary span{font-weight:normal;color:var(--muted);font-size:12px;margin-left:6px}
.opt-group[open] summary{margin-bottom:10px}
.privacy-line{display:flex;gap:10px;align-items:flex-start;margin-top:14px;font-size:12.5px;color:#4f6362}.privacy-line p{margin:0}
.check-inline{display:flex;flex-wrap:wrap;gap:6px 22px}.check-inline .check{margin:6px 0;font-size:13px}
@media(max-width:900px){.submission-layout{grid-template-columns:1fr!important}.submission-page .fields.f3{grid-template-columns:1fr 1fr}.submission-page .fields .span2{grid-column:1/-1}}
@media(max-width:560px){.submission-page .fields.f3{grid-template-columns:1fr}}
.submission-page .span2>.field{height:100%}
.pill-checks .check{display:inline-flex;gap:7px;line-height:1.2;min-height:0;margin:0!important;padding:7px 12px}
.pill-checks .check span{line-height:1.2}
.submission-page .field .pill-checks input{min-height:0;height:15px;width:15px;padding:0}
.submission-page .fields+.fields{margin-top:10px}

.label-row{display:flex;align-items:center;gap:6px;margin-bottom:4px}.label-row label,.label-row .label{margin-bottom:0!important}
.hint{position:relative;display:inline-block;line-height:1}
.hint-button{width:17px;height:17px;border:1px solid #b6d2d1;background:var(--soft);color:var(--groen);font-size:10px;font-weight:bold;border-radius:50%;padding:0;min-height:0!important;line-height:1}
.hint-text{display:none;position:absolute;left:-8px;bottom:24px;background:#24353d;color:#fff;font:12px/1.55 var(--font);font-weight:normal;width:min(260px,72vw);padding:10px 12px;border-radius:8px;z-index:30;box-shadow:0 5px 15px #152d2933;text-transform:none;letter-spacing:normal}
.hint:hover .hint-text,.hint:focus-within .hint-text,.hint-button[aria-expanded=true]+.hint-text{display:block}
@media(max-width:560px){.submission-page .fields.f3{grid-template-columns:1fr 1fr}.submission-page .fields.f3>.m-full,.submission-page .fields.f3>.span2,.submission-page .fields.f3>.wide{grid-column:1/-1}.submission-page .fields:not(.f3){grid-template-columns:1fr}.hint-text{left:auto;right:-60px}}

/* v1.5.0 compacte filters */
.filters.filters-compact{display:block;padding:14px;margin-bottom:14px;border-radius:14px}
.filter-row{display:grid;grid-template-columns:minmax(220px,2fr) minmax(150px,1fr) minmax(140px,1fr) auto auto auto;gap:10px;align-items:center}
.filters-compact .field input,.filters-compact .field select{min-height:42px;padding:8px 11px;border-radius:9px}
.filters-compact #f-q{padding-left:36px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23756977' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") no-repeat 12px center}
.filters-compact .button{min-height:42px;padding:8px 16px;white-space:nowrap}
.filters-compact .weekend-toggle{min-height:42px;padding:8px 13px;border-radius:9px;white-space:nowrap}
.more-toggle .badge{display:inline-grid;place-items:center;min-width:20px;height:20px;border-radius:10px;background:#01837f;color:#fff;font-size:11px;padding:0 6px}
.more-toggle .chev{transition:transform .15s}.more-toggle[aria-expanded=true] .chev{transform:rotate(180deg)}
.more-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-top:12px;padding-top:12px;border-top:1px dashed var(--line)}
.more-filters .field label{font-size:12px;margin-bottom:4px;color:var(--muted)}
.filter-chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 14px}
.chip{display:inline-flex;gap:6px;align-items:center;padding:5px 11px;border-radius:99px;background:#e0e8eb;color:#016f6b;font-size:13px;font-weight:bold;text-decoration:none;border:1px solid #b7dbda}
.chip:hover{background:#cbe5e4}
@media(max-width:1100px){.filter-row{grid-template-columns:1fr 1fr 1fr}.filter-row .field:first-child{grid-column:1/-1}.more-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.filter-row{grid-template-columns:1fr 1fr}.filter-row .field:first-child{grid-column:1/-1}.filter-row .button.primary{grid-column:1/-1}.more-filters{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.niche-nav{flex-wrap:nowrap;overflow-x:auto;gap:8px;margin:8px -18px 14px;padding:0 18px 4px;scrollbar-width:none}.niche-nav::-webkit-scrollbar{display:none}.niche-nav .button{flex:none;min-height:40px;padding:8px 15px}}

.stat .stat-note{display:block;font-size:11px;color:var(--muted);margin-top:2px}
.stat .hint{vertical-align:middle;margin-left:3px}

/* v1.5.0 headerbeelden (beheer) */
.hero-list{display:grid;gap:10px}
.hero-row{display:grid;grid-template-columns:200px minmax(0,1fr);gap:14px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:10px;background:#fff}
.hero-row.muted{opacity:.6}
.hero-thumb{width:200px;aspect-ratio:2/1;object-fit:cover;border-radius:8px}
.hero-row-body{display:grid;gap:8px;min-width:0}
.hero-alt{display:flex;gap:6px}.hero-alt input{flex:1;min-width:0;padding:7px 10px;border:1px solid #d0dede;border-radius:8px}
.hero-row .row-actions{max-width:none;justify-content:flex-start;align-items:center}
.hero-preview img{width:100%;max-width:none;aspect-ratio:2/1;object-fit:cover;border-radius:8px}
@media(max-width:700px){.hero-row{grid-template-columns:1fr}.hero-thumb{width:100%}}

/* v1.5.0 promomateriaal (beheer) */
.pm-tools{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin:16px 0 12px}.pm-tools .button{min-height:36px;padding:6px 12px;font-size:13px}.pm-sep{margin-left:10px}
.pm-sec{padding:12px 14px;margin-bottom:10px}
.pm-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;flex-wrap:wrap}.pm-head h2{font-size:19px;margin:0}
.pm-note{margin:-2px 0 8px}
.pm-grid{display:grid;gap:8px;grid-template-columns:repeat(8,minmax(0,1fr))}
.pm-grid.pm-wide{grid-template-columns:repeat(4,minmax(0,1fr))}
.pm-grid.pm-recruit{grid-template-columns:repeat(6,minmax(0,1fr))}
.pm-grid.pm-design{grid-template-columns:repeat(7,minmax(0,1fr));align-items:end}
.pm-card{margin:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff;display:flex;flex-direction:column}
.pm-img{display:grid;place-items:center;flex:1;background:repeating-linear-gradient(45deg,#f5f6f6,#f5f6f6 8px,#eef0f1 8px,#eef0f1 16px);padding:6px}
.pm-img img{max-width:100%;height:auto;display:block}
.pm-card figcaption{display:flex;flex-direction:column;gap:1px;padding:5px 7px;font-size:11px;line-height:1.35}
.pm-card figcaption strong span{font-weight:normal;color:var(--muted)}
.copy-link{background:none;border:0;padding:0;color:var(--groen);text-decoration:underline;text-underline-offset:3px;font:inherit;cursor:pointer;min-height:0}
.copy-link.copied{color:#1f5c7a;text-decoration:none}
@media(max-width:1100px){.pm-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.pm-grid.pm-wide{grid-template-columns:repeat(2,minmax(0,1fr))}.pm-grid.pm-recruit,.pm-grid.pm-design{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.pm-grid,.pm-grid.pm-recruit,.pm-grid.pm-design{grid-template-columns:repeat(2,minmax(0,1fr))}.pm-grid.pm-wide{grid-template-columns:1fr}}
.cv-preview.org-cover{align-items:flex-start;justify-content:center}

/* v1.6.0 donkere-modusknop, voorzieningen, uitgelicht, sjablonen, melden */
.theme-toggle{order:3;margin-left:10px;width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:#fff;font-size:19px;line-height:1;display:grid;place-items:center;padding:0;color:#01837f;flex:none}
.theme-toggle:hover{border-color:#a7c7c6}
.header-inner .brand{order:0}.header-inner .main-nav{order:2}.header-inner .menu-toggle{order:1}
@media(max-width:720px){.header-inner .menu-toggle{order:1}.theme-toggle{order:2;margin-left:8px}.header-inner .main-nav{order:3}}
.facility-list{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0 0 22px}
.facility-list li{display:inline-flex;gap:7px;align-items:center;border:1px solid var(--line);background:#fff;border-radius:99px;padding:6px 12px;font-size:13px}
.facility-list svg{color:#01837f;flex:none}
.facility-checks .check svg{color:#01837f}
.event-card{position:relative}
.event-card.featured{border:2px solid #38c2bd;box-shadow:0 10px 30px #01837f1f}
@media(min-width:721px){.event-grid .event-card.featured{grid-column:span 2;grid-template-columns:200px minmax(0,1fr)}.event-grid .event-card.featured h3{font-size:31px}}
.feat-label{position:absolute;top:-11px;right:16px;background:#01837f;color:#fff;font-size:11px;font-weight:bold;letter-spacing:.04em;padding:3px 10px;border-radius:99px}
.snippet-bar{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:6px}
.snippet{border:1px dashed #a9c9c8;background:#fffcf7;color:#245d7a;border-radius:99px;padding:4px 10px;font-size:12px;cursor:pointer;min-height:0}
.snippet:hover{background:#fbf4e6}.snippet.used{opacity:.55}
.wide-cell{grid-column:1/-1}
.report-link{margin-top:14px}
.snippet-bar{display:block}
.snippet-toggle{border:1px dashed #a9c9c8;background:#fffcf7;color:#245d7a;border-radius:99px;padding:4px 11px;font-size:12px;font-weight:bold;cursor:pointer;min-height:0}
.snippet-list{display:flex;flex-direction:column;align-items:flex-start;gap:5px;margin-top:6px}
.snippet{text-align:left;white-space:normal;line-height:1.35}
.facility-checks .check span,.pill-checks .check span{display:inline-flex;align-items:center;gap:5px}
@media(max-width:720px){.theme-toggle{width:38px;height:38px;margin-left:6px;font-size:17px}.brand svg{width:185px}}
@media(max-width:380px){.brand svg{width:150px}.menu-toggle{padding:6px 10px}}

/* v1.6.3 */
/* Links: maximaal 3 kolommen; bij 1 of 2 blokken vullen ze de hele breedte (geen lege plek) */
.directory-grid{grid-template-columns:repeat(auto-fit,minmax(max(260px,calc((100% - 36px)/3)),1fr))}
.directory-partners a.partner-cta{display:block;width:100%;margin-top:14px;text-align:center;background:#01837f;border:1px solid #01837f;color:#fff;font-weight:bold;font-size:16px}
.directory-partners a.partner-cta:hover,.directory-partners a.partner-cta:focus-visible{background:#2b4d5e;border-color:#2b4d5e;color:#fff}
/* Nieuwsbrief: invoerveld leesbaar (stond wit op wit in de lichte modus) */
.newsletter-input input{color:#0f2c3a}
.newsletter-input input::placeholder{color:#6f8a89;opacity:1}
/* Vaste regel onder de prijs */
.fact .price-check{display:block;margin-top:6px;font-weight:bold;color:#01837f}
.table-wrap{overflow-x:auto}

/* v1.7.0: YouTube-video, klikken om te laden */
.video-frame{position:relative;aspect-ratio:16/9;max-width:100%;border-radius:12px;overflow:hidden;background:radial-gradient(circle at 30% 30%,#21485b,#0f2c3a 70%);display:flex;align-items:center;justify-content:center}
.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-play{display:inline-flex;align-items:center;gap:10px;background:#01837f;color:#fff;border:0;border-radius:999px;padding:14px 24px;font-weight:bold;font-size:16px;cursor:pointer}
.video-play:hover,.video-play:focus-visible{background:#38c2bd}
.video-play-icon{font-size:14px}
.video-note{margin-top:10px}

/* v1.7.0: checklist voor livegang (beheer) */
.golive h2 .small{font-weight:normal;margin-left:6px}
.golive-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.golive-list li{display:flex;gap:10px;align-items:flex-start}
.golive-list .dot{flex:none;width:12px;height:12px;border-radius:50%;margin-top:5px;background:#2bc0bb}
.golive-list .is-ok .dot{background:#2e8b88}
/* v1.7.1: contrast – grijs tekstje bij de robotcontrole was te licht op het donkere nieuwsbriefblok (3,3 i.p.v. 4,5) */
.newsletter .pow-text small{color:#c4eae9}
/* v1.7.1: geen verspringen bij het laden. html.js wordt gezet door theme.js in de <head>. */
html.js .theme-toggle[hidden]{display:grid!important;visibility:hidden}
html.js .more-toggle[hidden]{display:inline-flex!important;visibility:hidden}
html.js .more-filters[data-start-closed]{display:none}

/* ---------- v1.8.0: uitjes en uitjes ---------- */
.shop-intro{max-width:760px}
.list-h{font-size:1.25rem;margin:18px 0 0}
/* v1.13.0 §F: tagline onder het logo. Weg op een telefoon: daar is de ruimte naast het logo voor het menu. */
.brand-wrap{flex:none;display:flex;flex-direction:column;gap:3px}
.tagline{font-size:12px;color:var(--muted);letter-spacing:.01em;line-height:1.3}
@media(max-width:720px){.tagline{display:none}}

/* v1.13.0 §E: footer in vier groepjes met een kopje */
.footer-inner{align-items:flex-start}
.footer-brand{flex:none;max-width:240px}
.footer-brand strong{display:block;color:var(--ink);font-size:15px;margin-bottom:6px}
.footer-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;flex:1 1 auto}
.footer-cols h2{font:bold 12px/1.4 var(--font);letter-spacing:.08em;text-transform:uppercase;color:var(--ink);margin:0 0 10px}
.footer-cols ul{list-style:none;margin:0;padding:0}
.footer-cols li{margin-bottom:7px;line-height:1.5}
.footer-bottom{border-top:1px solid var(--line);margin-top:26px;padding-top:18px}
.footer-bottom p{margin:0}
@media(max-width:950px){.footer-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}
@media(max-width:720px){.footer-inner{flex-direction:column}.footer-cols{width:100%;gap:18px}.footer-brand{max-width:none}}

/* v1.13.0: overzicht /steden/ — provincies naast elkaar, op een telefoon onder elkaar */
.prov-cols{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}
.prov-cols h3{margin:0 0 10px;font-size:17px}
.prov-cols .plain-list li:last-child{border-bottom:0}
.city-count{color:var(--muted);font-size:13px}
.city-links{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 4px}
.city-links a{display:inline-block;padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);text-decoration:none;font-size:14px}
.city-links a:hover{border-color:var(--groen);color:var(--groen)}
.map-box{position:relative;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;min-height:200px;display:grid;place-items:center;text-align:center;padding:20px;margin:14px 0 10px;background:linear-gradient(0deg,rgba(250,248,245,.86),rgba(250,248,245,.86)),repeating-linear-gradient(0deg,#e2e5e6 0 1px,transparent 1px 38px),repeating-linear-gradient(90deg,#e2e5e6 0 1px,transparent 1px 38px),#eff1f2}
.map-box p{max-width:44ch;margin:0 auto 12px;color:var(--muted)}
.map-box.is-loaded{padding:0;display:block;min-height:0}
.map-box iframe{display:block;width:100%;height:260px;border:0}
.shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:10px}
.shop-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}
.shop-card .org-card-cover{height:auto;aspect-ratio:16/9;display:grid;place-items:center}
.shop-card .body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px;flex:1}
.shop-card h3{margin:0;font-size:1.15rem}
.shop-card h3 a{color:inherit;text-decoration:none}
.shop-card p,.shop-card .eyebrow{margin:0}
.shop-card .card-teaser{color:var(--muted);font-size:.93rem;line-height:1.5}
.shop-card .more{margin-top:auto;padding-top:8px}
.shop-card .feat-label{position:absolute;top:10px;left:10px;z-index:1}
.city-cover{display:block;aspect-ratio:16/9;overflow:hidden;background:#0f191e}
.city-cover img{display:block;width:100%;height:100%;object-fit:cover}
.open-state{font-size:13px;font-weight:bold;color:var(--green)}
.open-state.closed{color:#2fa5a1}
.open-state.small{font-weight:normal;color:var(--muted)}
.hero-status{display:inline-block;justify-self:start;align-self:start;width:fit-content;margin-top:12px;background:#fff;color:var(--green);font:700 13px/1 var(--font);padding:7px 11px;border-radius:999px}
.hero-status:empty{display:none}
.hours{width:100%;border-collapse:collapse;font-size:14px;margin:6px 0 4px}
.hours th{text-align:left;font-weight:normal;padding:4px 8px 4px 0;color:var(--muted);vertical-align:top}
.hours td{text-align:right;padding:4px 0}
.hours tr.today th,.hours tr.today td{font-weight:bold;color:var(--ink)}
.addr{font-style:normal;line-height:1.55;margin:0 0 6px}
.claim{background:var(--soft);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px;margin-bottom:22px}
.claim h2{font-size:1.1rem;margin:0 0 6px}
.claim p{margin:0 0 12px;font-size:14px}
.photo-empty{border:1px dashed var(--line);border-radius:12px;padding:22px;text-align:center;color:var(--muted);font-size:14px}
.source-line{font-size:12px;color:var(--muted);margin-top:10px}
.facts{margin:0;padding-left:20px;display:grid;gap:6px}
/* v1.15.0 vast programma. LET OP: niet "program" of "programma" als losse klasse gebruiken elders —
   de testsuites werken met strikte selectors en zijn hier twee keer eerder op omgevallen. */
.program-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.program-list li{display:grid;gap:3px;padding:2px 0 2px 12px;border-left:3px solid var(--line)}
.program-day{font:700 12px/1.3 var(--font);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.program-name{font-size:15px;font-weight:700}
.prov-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 40px}
.prov-cols h3{font-size:.95rem;margin:10px 0 8px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.prov-cols ul{list-style:none;padding:0;margin:0;columns:2 160px;column-gap:24px}
.prov-cols li{margin:0 0 7px}
.promo-slim{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid var(--line);border-radius:14px;background:#fff;padding:10px 14px;margin:14px 0 22px}
.promo-slim .promo-label{position:absolute;top:-9px;left:14px;background:var(--groen);color:#fff;font:700 10px/1 var(--font);letter-spacing:.08em;text-transform:uppercase;padding:4px 8px;border-radius:999px}
.promo-slim .promo-thumb{width:64px;height:48px;border-radius:8px;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,#1d343f,#0f191e);color:#e1ebee;font:900 13px/1 var(--font);letter-spacing:-.5px}
.promo-slim .promo-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.promo-slim strong{display:block;font-size:15px}
.promo-slim div span{display:block;font-size:13px;color:var(--muted)}
.promo-slim .small-btn{font-size:13px;padding:8px 12px;white-space:nowrap}
.promo-slim.is-paid{border:2px solid var(--groen)}
/* filters */
.shop-filter{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:14px;margin:20px 0 6px;display:grid;gap:12px;box-shadow:0 6px 20px #0f2c3a0d}
.sf-top{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.sf-top input{flex:1 1 260px;min-width:0;font:inherit;font-size:16px;padding:11px 14px 11px 40px;border:1px solid var(--line);border-radius:999px;background:#f4f7f8 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23756977' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") 15px 50%/16px no-repeat;color:var(--ink)}
.sf-top input:focus{outline:3px solid #01837f33;border-color:var(--groen)}
.js .sf-submit{display:none}
.seg{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:3px;background:#f4f7f8}
.seg button{font:600 14px/1 var(--font);border:0;background:none;color:var(--muted);padding:9px 14px;border-radius:999px;cursor:pointer;white-space:nowrap}
.seg button span,.chip-f span{font-weight:400;opacity:.7;margin-left:3px}
.seg button[aria-pressed=true]{background:var(--groen);color:#fff}
.sf-chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.sf-chips::-webkit-scrollbar{display:none}
.sf-chips[hidden],.seg[hidden]{display:none}
.sf-lab{flex:0 0 auto;align-self:center;font:700 11px/1 var(--font);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);min-width:44px}
.chip-f{flex:0 0 auto;font:600 13px/1 var(--font);border:1px solid var(--line);background:#fff;color:var(--ink);padding:9px 13px;border-radius:999px;cursor:pointer}
.chip-f[aria-pressed=true]{background:var(--soft);border-color:var(--groen);color:var(--groen)}
.chip-link{text-decoration:none;color:var(--groen);border-style:dashed}
.chip-open{color:var(--green)}
.chip-open[aria-pressed=true]{background:#e6ecee;border-color:var(--green);color:var(--green)}
.sf-reset{flex:0 0 auto;font:600 13px/1 var(--font);border:0;background:none;color:var(--groen);text-decoration:underline;cursor:pointer;padding:9px 6px}
/* lijst met kaartjes */
.shop-list{list-style:none;margin:6px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.shop-row{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:border-color .15s}
.shop-row:hover{border-color:var(--groen)}
.row-thumb{display:block;width:100%;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,#1d343f,#0f191e)}
.row-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.row-thumb .mono{display:grid;place-items:center;height:100%;color:#e1ebee;font:700 34px/1 var(--font)}
.row-body{display:grid;gap:3px;min-width:0;padding:12px 16px 14px}
.row-body h3{margin:0;font-size:1.08rem;line-height:1.3}
.row-body h3 a{color:inherit;text-decoration:none}
.row-body h3 a:hover{color:var(--groen)}
.row-body h3 a::after{content:"";position:absolute;inset:0}
.row-meta{font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.row-go{display:none}
.shop-list:not(.expanded) .is-more{display:none}
.shop-list .is-hidden{display:none!important}
.sf-more{text-align:center;margin:18px 0 0}
.sf-more[hidden]{display:none}
.sf-empty{padding:24px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:14px}
/* stadstegels */
.city-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:6px 0 16px}
.city-tile{display:block;border-radius:14px;overflow:hidden;background:#fff;color:var(--ink);border:1px solid var(--line);text-decoration:none}
.city-tile:hover{border-color:var(--groen)}
.city-tile .ct-img{display:block;aspect-ratio:16/9;overflow:hidden;background:#0f191e}
.city-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
.city-tile:hover img{transform:scale(1.04)}
.city-tile .ct-cap{display:flex;justify-content:space-between;align-items:baseline;gap:8px;padding:9px 12px 10px}
.city-tile .ct-cap strong{color:var(--ink)}
.city-tile .ct-cap small{font-size:12px;color:var(--muted)}
.ct-img .tile-mono{display:grid;place-items:center;height:100%;color:#e1ebee;font:700 28px/1 var(--font);background:linear-gradient(135deg,#1d343f,#0f191e)}
.all-cities{margin-top:4px}
.all-cities summary{cursor:pointer;font-weight:600;color:var(--groen);padding:6px 0}
.place-photo-preview{display:block;width:240px;max-width:100%;height:auto;border-radius:8px;margin-top:8px}
@media (max-width:900px){.shop-grid,.shop-list{grid-template-columns:repeat(2,minmax(0,1fr))}.city-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.shop-grid,.shop-list{grid-template-columns:1fr}.seg{width:100%}.seg button{flex:1}.promo-slim{grid-template-columns:auto minmax(0,1fr)}.promo-slim .small-btn{grid-column:1/-1;justify-self:start}.prov-cols{grid-template-columns:1fr}}
/* v1.9.0: productblok "Uit onze webshop" (Uitjes.nl) */
.shop-products{margin-top:8px;max-width:760px;container-type:inline-size}
.shop-products .sp-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.shop-products .eyebrow{margin-bottom:8px}
.shop-products .sp-tag{font:10px/1.5 var(--font);letter-spacing:.07em;color:#485e5d;text-transform:uppercase}
.shop-products h2,.blog-body .shop-products h2,.glossary-term .prose .shop-products h2{font-size:27px;margin:0 0 6px}
.shop-products .sp-lead{color:var(--muted);font-size:14px;margin:0 0 18px}
.shop-products .sp-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.shop-products .sp-grid li{margin:0;padding:0}
.shop-products .sp-grid li::before{content:none}
.sp-card{display:flex;flex-direction:column;height:100%;border:1px solid var(--line);border-radius:12px;overflow:hidden;text-decoration:none;color:var(--ink);background:#fff}
.sp-card:hover{border-color:var(--groen)}
.sp-card:hover .sp-name{text-decoration:underline}
.sp-img{display:grid;place-items:center;aspect-ratio:1/1;overflow:hidden;background:#fff;border-bottom:1px solid var(--line);padding:8px}
.sp-img img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;display:block}
.sp-name{font-size:14px;line-height:1.35;font-weight:bold;margin:10px 12px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.sp-btn{margin:auto 12px 12px;min-height:38px;font-size:12.5px;padding:8px;white-space:nowrap}
.shop-products .sp-foot{font-size:12px;color:var(--muted);margin:14px 0 0}
@media (max-width:760px){.shop-products .sp-grid{grid-template-columns:1fr;gap:10px}.sp-card{display:grid;grid-template-columns:96px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px}.sp-img{grid-row:1/3;border-bottom:0;border-right:1px solid var(--line);aspect-ratio:auto;min-height:104px;max-height:none}.sp-name{margin:10px 10px 6px 0;-webkit-line-clamp:2}.sp-btn{margin:0 10px 10px 0;justify-self:start;font-size:12px;min-height:34px;padding:6px 12px}}
/* v1.9.3: is het blok zelf smaller dan 600 px (smalle kolom of tablet), dan dezelfde lijst als op een telefoon */
@container (max-width:600px){.shop-products .sp-grid{grid-template-columns:1fr;gap:10px}.sp-card{display:grid;grid-template-columns:96px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px}.sp-img{grid-row:1/3;border-bottom:0;border-right:1px solid var(--line);aspect-ratio:auto;min-height:104px}.sp-name{margin:10px 10px 6px 0;-webkit-line-clamp:2}.sp-btn{margin:0 10px 10px 0;justify-self:start;font-size:12px;min-height:34px;padding:6px 12px}}
/* v1.9.0: breder vak voor het beeldje of logo van een advertorial */
.promo-slim.is-advertorial .promo-thumb{width:150px;height:60px;background:#fff;border:1px solid var(--line);padding:4px 6px;color:var(--groen)}
.promo-slim.is-advertorial .promo-thumb img{object-fit:contain}
@media (max-width:620px){.promo-slim.is-advertorial .promo-thumb{width:104px;height:44px}}
.ws-thumb{width:48px;height:48px;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:6px}
.sp-card .sp-name{color:var(--ink)}
/* v1.9.1: label voor beelden die met AI zijn gemaakt (AI-verordening art. 50) */
.blog-card-img,.city-cover,.row-thumb,.ct-img{position:relative}

/* v1.9.2: interne links ("Verder op OnzeUitjes", "Lees ook") en live blokken in artikelen */
.site-links{margin:34px 0 8px;padding:22px 24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--soft)}
.blog-body .site-links h2{font-size:24px;margin:0 0 12px}
.site-links ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.site-links li{margin:0}
.site-links a{display:flex;flex-direction:column;gap:2px;padding:12px 14px;background:#fff;border:1px solid var(--line);border-radius:12px;text-decoration:none;color:var(--ink)}
.site-links a strong{color:var(--groen)}
.site-links a span{font-size:14px;color:var(--muted)}
.site-links a:hover{border-color:var(--groen)}
.read-also h2{margin-bottom:12px}
.read-also .eyebrow{display:block;margin-bottom:6px}
.read-also ul{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.read-also li{margin:0}
.read-also a{display:flex;gap:14px;align-items:flex-start;text-decoration:none;color:var(--ink)}
.read-also .ra-img{position:relative;flex:0 0 120px;border-radius:10px;overflow:hidden}
.read-also .ra-img img{width:120px;height:auto;aspect-ratio:16/9;object-fit:cover}
.read-also .ra-txt{display:flex;flex-direction:column;gap:3px}
.read-also .ra-txt strong{color:var(--groen);line-height:1.3}
.read-also .ra-txt span{font-size:14px;color:var(--muted);line-height:1.45}
.read-also a:hover strong{text-decoration:underline}
.section-tight .read-also,.section .read-also{margin-top:24px}
@media (max-width:520px){.read-also .ra-img{flex-basis:88px}.read-also .ra-img img{width:88px}}
/* v1.17: Lees ook en Ook van ons in de rechterkolom van de eventpagina; de kolom regelt de ruimte zelf (gap) */
.content-grid>aside>.read-also,.content-grid>aside>.also-ours{margin-top:0}
@media (min-width:721px) and (max-width:1000px){.content-grid>aside .read-also .ra-img{flex-basis:88px}.content-grid>aside .read-also .ra-img img{width:88px}}
.live-block{margin:26px 0;padding:20px 22px;border:1px solid var(--line);border-left:4px solid var(--groen);border-radius:14px;background:#fff}
.live-block .live-tag{display:inline-block;font:700 10px/1.4 var(--font);letter-spacing:.07em;text-transform:uppercase;color:var(--groen);margin-bottom:6px}
.blog-body .live-block h3{font-size:20px;margin:0 0 12px}
.blog-body .live-block h4{font-size:15px;margin:16px 0 8px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.live-list{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px}
.blog-body .live-list li{margin:0}
.live-list a{display:flex;gap:14px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:10px;text-decoration:none;color:var(--ink)}
.live-list a:hover{border-color:var(--groen)}
.live-list .ll-date{flex:0 0 92px;font-weight:700;color:var(--groen);font-size:14px;text-transform:capitalize}
.live-list .ll-main{display:flex;flex-direction:column;flex:1;min-width:0}
.live-list .ll-main strong{line-height:1.3}
.live-list .ll-main span{font-size:14px;color:var(--muted)}
.live-list .ll-side{font-size:13px;color:var(--muted);text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:2px}
.live-list .open-state{font-size:12px}
.live-table{border-collapse:collapse;width:100%;max-width:360px;margin:0 0 10px}
.live-table th,.live-table td{text-align:left;padding:6px 10px;border-bottom:1px solid var(--line)}
.live-table tr.is-today th,.live-table tr.is-today td{font-weight:700;color:var(--groen)}
.live-block .small{margin-bottom:0}
@media (max-width:520px){.live-list a{flex-wrap:wrap}.live-list .ll-date{flex-basis:100%}.live-list .ll-side{align-items:flex-start;text-align:left}}
.live-compact{list-style:none;margin:0 0 12px;padding:0}
.blog-body .live-compact li{margin:0;padding:8px 0;border-bottom:1px solid var(--line);line-height:1.6}
.live-compact strong{display:block;font-size:15px}
.live-compact a{font-weight:700}
.live-compact .lc-time{font-size:13px;color:var(--muted);white-space:nowrap}
.blog-body .live-list,.blog-body .live-compact{padding-left:0}

/* v1.9.3: "Meer tips" onder een artikel compact (kleine foto, titel, één regel tekst) */
.related-band .blog-grid.three{gap:14px}
.related-band .blog-card{flex-direction:row;align-items:center;gap:12px;padding:10px;border-radius:12px}
.related-band .blog-card-img{flex:0 0 112px;border-radius:8px}
.related-band .blog-card-img img{width:112px}
.related-band .blog-card-body{padding:0;gap:3px;min-width:0}
.related-band .blog-card-body h3{font-size:16px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.related-band .blog-card-body p{font-size:13px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media (max-width:980px){.related-band .blog-grid.three{grid-template-columns:1fr}}
@media (max-width:520px){.related-band .blog-card-img{flex-basis:88px}.related-band .blog-card-img img{width:88px}.related-band .blog-card-body h3{font-size:15px}}
.add-another .split-actions{margin-top:12px}
.title-actions{display:flex;gap:8px;flex-wrap:wrap}.cat-list{display:grid;gap:6px}.plan-table input[type=datetime-local]{border:1px solid #d0dede;border-radius:8px;padding:6px 8px;min-height:40px;font:inherit}.plan-notice{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.plan-notice .button{min-height:40px}
.tabs .badge{display:inline-block;min-width:20px;padding:0 6px;border-radius:10px;background:#e0e8eb;color:#016f6b;font-size:12px;font-weight:bold;text-align:center;line-height:20px;margin-left:4px}.tabs a[aria-current=page] .badge{background:#fff;color:#01837f}
/* v1.10.0: Inbox */
.ib-row{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:14px;align-items:start;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin-bottom:8px}
.ib-row .kind{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#01837f;font-weight:bold}
.ib-row .kind small{display:block;text-transform:none;letter-spacing:0;color:var(--muted);font-weight:normal;font-size:12px;margin-top:4px}
.ib-row h3{font-size:15px;margin:0 0 3px}.ib-row .ib-body p{margin:0;font-size:13px;color:var(--muted)}
.ib-row.is-done{opacity:.7}
.ib-row .ops{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;max-width:360px}
.ib-row .ops .button{min-height:40px;padding:8px 12px;font-size:13px}
.ib-form{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;margin:0}
.ib-form input[name=note]{flex:1 0 100%;border:1px solid #d0dede;border-radius:8px;padding:8px 10px;min-height:40px;font:inherit;font-size:13px}
.ib-text{margin-top:6px}.ib-text summary{cursor:pointer;color:var(--muted)}.ib-text .prose{font-size:14px;margin-top:6px}
@media (max-width:760px){.ib-row{grid-template-columns:1fr}.ib-row .ops,.ib-form{justify-content:flex-start;max-width:none}}
/* v1.10.0: advertorials compact, beeldbank, partners */
.promo-item{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 14px;margin-bottom:8px}
.promo-item.is-off{opacity:.65}
.promo-pic{width:96px;height:38px;object-fit:contain;background:#fff;border:1px solid #eee;border-radius:4px;display:grid;place-items:center;font-size:10px;color:var(--muted);overflow:hidden}
.promo-pic img{width:100%;height:100%;object-fit:contain}
.promo-item h3{font-size:15px;margin:0 0 2px}.promo-item p{margin:0;font-size:13px;color:var(--muted)}
.chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}
.tagchip{font-size:11px;padding:2px 8px;border-radius:99px;background:#eef3f5;color:#01837f;white-space:nowrap}
.tagchip.off{background:#eee;color:#888;text-decoration:line-through}
.promo-item .ops{display:flex;gap:8px;align-items:center}
.promo-item .ops .button{min-height:40px;padding:8px 12px;font-size:13px}
.switch{display:inline-flex;align-items:center;gap:6px;font-size:13px;background:none;border:0;padding:6px 4px;min-height:40px;cursor:pointer;color:var(--ink);font-family:inherit}
.switch i{width:38px;height:22px;border-radius:11px;background:#2e8b88;position:relative;display:inline-block}
.switch i::after{content:"";position:absolute;right:2px;top:2px;width:18px;height:18px;border-radius:50%;background:#fff}
.switch.off i{background:#bbb}.switch.off i::after{right:auto;left:2px}
.switch[disabled]{opacity:.5;cursor:not-allowed}
.imgbank{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.imgbank figure{margin:0;border:1px solid var(--line);border-radius:10px;padding:8px;background:#fff;text-align:center;display:grid;gap:6px}
.imgbank .promo-pic{width:100%;height:48px}
.imgbank figcaption{font-size:11px;color:var(--muted)}
.imgbank .inline-form{margin:0;justify-content:center}.imgbank .inline-form .button{min-height:36px;font-size:12px;padding:6px 10px}
.imgpick{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px;margin-bottom:10px}
.imgpick-opt{display:flex;gap:8px;align-items:flex-start;border:1px solid var(--line);border-radius:10px;padding:8px;background:#fff;cursor:pointer;font-size:12px}
.imgpick-opt input{margin:4px 0 0;width:18px;height:18px;flex:none}
.imgpick-opt span{display:grid;gap:4px;min-width:0}
.imgpick-opt img,.imgpick-opt .promo-pic{width:100%;height:40px;object-fit:contain;border:1px solid #eee;border-radius:4px;background:#fff}
.imgpick-opt:has(input:checked){border-color:#01837f;box-shadow:0 0 0 1px #01837f}
.sub-checks{margin:4px 0 0 28px;display:flex;flex-wrap:wrap;gap:4px 14px}
.pt-table td,.pt-table th{vertical-align:middle}
.chk{display:inline-grid;place-items:center;width:20px;height:20px;border:1px solid #8aa3a2;border-radius:4px;font-size:12px;color:#fff;background:#fff}
.chk.on{background:#01837f;border-color:#01837f}
.bl-badge{display:inline-block;padding:1px 8px;border-radius:10px;font-size:13px;border:1px solid #8aa3a2}
.bl-badge.ok{background:#e6f4ea;color:#1e5b2e;border-color:#7cb48b}
.bl-badge.rood{background:#fbf5e9;color:#1f8a86;border-color:#8cd5d3}
.example{border:1px solid #c6dfde;border-left:4px solid #01837f;background:#f5f8f9;padding:14px 18px;border-radius:10px;font-size:14px;margin-bottom:18px}
.example .mini{display:inline-block;background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 14px;margin-top:8px}
.example .mini strong{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:4px}
.example .mini a{margin-right:12px;font-size:13px}
@media (max-width:760px){.promo-item{grid-template-columns:96px minmax(0,1fr)}.promo-item .ops{grid-column:1/-1}}
/* v1.10.0: blok "Ook van ons" en het vak Uitgelicht op events, blog en woordenboek */
.also-ours{margin:26px 0 0;padding:14px 18px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}
.also-ours>strong{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:8px}
.also-links{display:flex;flex-wrap:wrap;gap:8px 18px}
.also-links a{text-decoration:none;font-weight:bold}
.also-links a span{display:block;font-weight:normal;font-size:12px;color:var(--muted)}
.promo-wrap{margin:22px 0 0}
.ref-table td:first-child{min-width:180px}
.past-notice .next-edition{font-weight:bold}
.ib-row .kind small a{color:var(--muted)}

/* v1.14.0: filterknoppen bij Beheer → Banners */
.banner-filters{margin-bottom:12px}
.banner-filters .button{font-size:12px;padding:7px 12px;min-height:36px}
.banner-filters .small{margin-right:4px}

/* v1.14.0: footergroepjes inklapbaar op de telefoon; op een breed scherm ziet het eruit als vier kopjes */
.footer-group{min-width:0}
.footer-group summary{list-style:none;cursor:default}
.footer-group summary::-webkit-details-marker{display:none}
.footer-group summary h2{display:inline}
/* v1.16: op een breed scherm 10 px ruimte onder het kopje. Sinds v1.14.0 staat de h2 inline, waardoor zijn eigen marge
   wegviel en het kopje 3 px boven de eerste link stond: Lighthouse "touch targets" (middens 21 px uit elkaar, grens 24). */
@media(min-width:721px){.footer-group summary{display:block;margin-bottom:10px}}
@media(max-width:720px){
  .footer-group{border-bottom:1px solid var(--line)}
  .footer-group:last-child{border-bottom:0}
  .footer-group summary{cursor:pointer;padding:10px 0;display:flex;align-items:center;justify-content:space-between;min-height:44px}
  .footer-group summary::after{content:"+";font-size:18px;color:var(--muted);line-height:1}
  .footer-group[open] summary::after{content:"–"}
  .footer-group[open] ul{padding-bottom:10px}
}

/* v1.14.0: documenten op de Spelregels-pagina */
.prose-doc{max-width:70ch}
.prose-doc h2{font-size:24px;margin-top:28px}
.prose-doc h3{font-size:17px;margin-top:22px}
.prose-doc table{width:100%;border-collapse:collapse;margin:16px 0;font-size:13px}
.prose-doc th,.prose-doc td{border:1px solid var(--line);padding:7px 9px;text-align:left;vertical-align:top}
.prose-doc code{background:var(--soft);padding:1px 5px;border-radius:4px;font-size:12px}
.prose-doc blockquote{border-left:3px solid var(--groen);margin:14px 0;padding:2px 0 2px 14px;color:var(--muted)}
/* v1.15.3: Partners → Links naar ons */
.il-table td,.il-table th{vertical-align:top}.il-url{overflow-wrap:anywhere}.il-check{display:block;margin:0 0 4px;padding:3px 7px;border-radius:6px;font-size:12.5px;line-height:1.35}.il-rood{background:#fdf5e4;color:#1c8a86}.il-oranje{background:#fff1d6;color:#7a4b00}

/* v1.16: paginanummers groeien mee (2–3 cijfers passen) en lopen nooit uit beeld; zie pagination_html() */
.pagination{flex-wrap:wrap;align-items:center;gap:6px}
.pagination a{width:auto;min-width:44px;height:44px;padding:0 12px}
.pagination .pg-gap{min-width:16px;text-align:center;color:var(--muted)}
@media(max-width:480px){.pagination .pg-near{display:none}}

/* v1.16: /steden/ compact: per land één blok, provincies in kolommen, elke stad op één regel */
.steden-land{columns:3 230px;column-gap:36px;padding:22px 26px}
.steden-prov{break-inside:avoid;margin:0 0 16px}
.steden-prov h3{font:bold 12px/1.4 var(--font);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 6px}
.steden-prov ul{list-style:none;margin:0;padding:0}
.steden-prov li{margin:0;padding:4px 0;line-height:1.4}
.steden-prov li a{font-weight:bold;text-decoration:none}
.steden-prov li a:hover{text-decoration:underline}
.steden-prov .city-count{font-size:12px;margin-left:4px}
@media(max-width:620px){.steden-prov li{padding:7px 0}}

/* v1.16: onderzoek: notitie en to-do-datum */
.todo-due{color:#2fa19d;font-weight:bold}
.lead-note{max-width:260px;overflow-wrap:anywhere}

/* v1.16: "Alles selecteren" in de balk "Met geselecteerde" */
.check-all{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 12px 0 4px;font-size:14px;font-weight:bold;cursor:pointer}
.check-all input{width:20px;height:20px;margin:0}
.sel-count{margin-right:8px}

/* v1.16: statistieken in tabbladen */
.stat .stat-spark{display:block;width:100%;height:34px;margin:8px 0 2px}
.stat-spark polyline{fill:none;stroke:#01837f;stroke-width:1.6;vector-effect:non-scaling-stroke;stroke-linejoin:round}
.stat-more{margin-top:8px}
.stat-more summary{cursor:pointer;font-size:13px;font-weight:bold;color:var(--groen);padding:8px 0;min-height:36px}
.stat-filter{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 12px}
.stat-filter select,.stat-filter input{min-height:40px;border:1px solid #d0dede;border-radius:8px;padding:6px 10px;background:#fff;color:var(--ink);max-width:100%}
.opv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px 28px}
.opv-grid h3{font:bold 12px/1.4 var(--font);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 8px}
.opv-grid ul{list-style:none;margin:0;padding:0}
.opv-grid li{padding:5px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere;font-size:14px}
.opv-grid .delta{font-size:12px;margin-left:4px;white-space:nowrap}
.opv-grid .delta.up{color:#1f5c7a}.opv-grid .delta.down{color:#2ba39f}
.ref-kinds{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:0 0 14px}
.ref-kind{display:block;border:1px solid var(--line);border-radius:12px;padding:10px 12px;text-decoration:none;color:var(--ink);background:#fff}
.ref-kind strong{display:block;font:normal 22px var(--font);color:var(--groen)}
.ref-kind span{font-size:12px;color:var(--muted)}
.ref-kind.on{border-color:var(--groen);box-shadow:inset 0 0 0 1px var(--groen)}

/* v1.16: compact aanmeldformulier: postcode + huisnummer op één regel */
.addr-row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:8px}
.addr-row input{width:100%;border:1px solid #d0dede;border-radius:8px;background:#fff;color:var(--ink);padding:11px 12px;min-height:46px;min-width:0}
.addr-result{margin:6px 0 0;min-height:1.2em;color:#1f5c7a;font-weight:bold}
.addr-result.addr-miss{color:#2fa19d;font-weight:normal}
.fields > .wide{grid-column:1/-1}
/* v1.17: seizoenspagina's en de verwijzing boven de agenda */
.season-events{margin:8px auto 30px}
.season-events h2{font-size:clamp(1.4rem,2.4vw,1.9rem);margin-bottom:16px}
.season-teaser{margin:-4px 0 18px;font-size:14px;font-weight:bold}
.season-teaser a{text-decoration-thickness:1px}
/* v1.17: vaste clubavonden op thema- en stadspagina's */
.club-nights-days{columns:3 260px;column-gap:28px;margin:14px 0}
.club-night-day{break-inside:avoid;margin:0 0 18px}
.club-night-day h3{font-size:15px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 6px}
.club-night-day ul{list-style:none;margin:0;padding:0}
.club-night-day li{padding:5px 0;border-bottom:1px solid var(--line);line-height:1.4}
.club-night-day li .small{display:block}
/* v1.17: alleen op papier (zie @media print hieronder) */
.print-only{display:none}
/* v1.17: afdrukken van een eventpagina. Discreet en zuinig: geen flyer, geen reclame, geen menu; zwart op wit,
   ook als de site in de donkere modus staat. bin/dev/make-dark-css.py slaat @media print bewust over. */
@media print{
html.site,html.site body{background:#fff!important}
html.site *{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}
.skip,.header,.footer,.crumb,.poster-column,.countdown-box,.theme-tags,.calendar-links,.save-bar,.content-grid>aside,.city-more,.event-terms,.read-also,.shop-products,.promo-wrap,.also-ours,.video-panel,.related-band,.button,.vak,.tips-link,.fact a.small,.facility-list svg,.past-notice .stamp{display:none!important}
.detail-layout,.content-grid{display:block!important}
.detail-copy h1{font-size:26pt;margin:0 0 6pt}
.lead{font-size:12pt}
.detail-facts{display:grid!important;grid-template-columns:1fr 1fr;gap:6pt;margin:10pt 0}
.fact,.panel{border:1px solid #999!important;border-radius:6px;padding:8pt 10pt;margin:0 0 8pt;break-inside:avoid}
.panel h2{font-size:15pt;margin-bottom:4pt}
.pill{border:1px solid #999;padding:1pt 6pt}
a{text-decoration:none}
.print-only{display:block!important}
.print-source{font-size:9pt;margin-top:12pt;border-top:1px solid #999;padding-top:6pt;overflow-wrap:anywhere}
@page{margin:15mm}
}

/* v1.19: huisregels met bron, andere edities, wat we plaatsen, beheer huisregels */
.access-rules .access-src{color:var(--muted,#5f6f6e)}
.access-rules .access-src a{text-decoration:underline}
.editions h3{font-size:1rem;margin:.6rem 0 .3rem}
.submit-rules ul li{margin-bottom:.45rem}
.promote-landing .lp-rules{padding-block:0 40px}
.promote-landing .lp-rules-box{border:1px solid var(--line);border-radius:13px;background:#fffaf7;padding:26px 28px}
.promote-landing .lp-rules-box h2{font-size:clamp(26px,2.6vw,34px)}
.promote-landing .lp-rules-box ul{margin:0;padding-left:0;list-style:none;font-size:14px;color:var(--muted)}
.promote-landing .lp-rules-box li{margin-bottom:8px}
.promote-landing .lp-rules-box strong{color:var(--ink)}
.access-edit .access-rule{border:1px solid var(--line,#dee3e5);border-radius:10px;padding:10px 14px;margin:0 0 12px}
.access-edit .access-rule legend{font-weight:700;padding:0 6px}
.place-suggest{margin-top:-6px}
/* v1.20: Lezen en kijken. Typografische kaft (boek) of neutraal vlak (video, podcast), nooit beeld van derden. */
.lk-section{margin:34px 0}
.lk-grid{display:grid;gap:18px}
.lk-card{display:grid;grid-template-columns:116px 1fr;gap:18px;padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff;scroll-margin-top:90px}
.lk-card h3{margin-bottom:4px}
.lk-sub{display:block;font-size:.92rem;font-weight:normal;color:var(--muted);margin-top:2px}
.lk-meta{margin:0 0 6px;color:var(--muted)}
.lk-labels{margin:0 0 10px;display:flex;flex-wrap:wrap;gap:6px}
.lk-labels .pill{font-size:12px}
.lk-cover{width:116px;height:164px;border-radius:6px 10px 10px 6px;padding:12px 10px;display:flex;flex-direction:column;justify-content:space-between;color:#fff;font-family:var(--font);box-shadow:inset 6px 0 0 rgba(0,0,0,.18)}
.lk-cover-t{font-size:15px;line-height:1.2;overflow-wrap:anywhere}
.lk-cover-a{font:12px/1.3 var(--font);opacity:.9}
.lk-flat{border-radius:10px;box-shadow:none;align-items:center;justify-content:center;gap:10px;height:116px}
.lk-icon{font-size:30px;line-height:1}
.lk-c0{background:#01837f}.lk-c1{background:#016f6b}.lk-c2{background:#01837f}.lk-c3{background:#3b4a7a}
.lk-actions{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin:12px 0 4px}
.lk-fee{color:var(--muted)}
.lk-checked{color:var(--muted);margin:6px 0 0}
.lk-tips{margin:10px 0;padding:12px 14px;background:var(--soft);border-radius:10px}
.lk-tips h4{margin:0 0 6px;font-size:14px}
.lk-tips li{margin-bottom:8px}
.lk-more{margin-top:14px}
.lk-more summary{cursor:pointer;font-weight:bold;color:var(--groen);padding:8px 0}
.lk-filter{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.lk-filter .chip-f{text-decoration:none}
.lk-filter .chip-f[aria-current]{background:var(--soft);border-color:var(--groen);color:var(--groen)}
.lk-topics{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.lk-topic{display:flex;flex-direction:column;gap:6px;padding:16px;border:1px solid var(--line);border-radius:14px;background:#fff;text-decoration:none;color:var(--ink)}
.lk-topic:hover{border-color:var(--groen)}
.lk-topic strong{color:var(--groen)}
.lk-toplist-mini li{margin-bottom:6px}
.lk-toplist{list-style:none;padding:0;margin:24px 0}
.lk-top-item{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;margin-bottom:22px}
.lk-card,.lk-motivatie{overflow-wrap:anywhere}
.lk-rank{font:bold 28px/1 var(--font);color:var(--groen);padding-top:6px}
.lk-motivatie{font-style:italic;margin-bottom:10px}
.lk-start ol{padding-left:20px}
.lk-start li{margin-bottom:6px}
.lk-disclosure{color:var(--muted);border-top:1px solid var(--line);padding-top:10px}
.lk-block li{margin-bottom:8px}
.lk-block-wrap{margin-top:24px;max-width:760px}
@media (max-width:560px){.lk-card{grid-template-columns:1fr}.lk-cover{width:100%;height:auto;min-height:96px;flex-direction:row;align-items:flex-end;border-radius:10px}.lk-flat{height:72px;justify-content:flex-start}.lk-top-item{grid-template-columns:30px minmax(0,1fr)}}
/* v1.23: eenvoudige adverteerpagina (zv- = zichtbaarheid; geen ad/advert/banner/promo in klassen) */
.zv-hero{padding:44px 0 8px;max-width:860px}.zv-hero h1 em{color:var(--groen)}.zv-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px}
.zv-sec{padding:28px 0}.zv-sec h2{margin-bottom:6px}.zv-sub{color:var(--muted);font-size:14px;margin:0 0 18px}
.zv-grid{display:grid;gap:14px;margin:0;padding:0;list-style:none}.zv-4{grid-template-columns:repeat(4,minmax(0,1fr))}.zv-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.zv-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;min-width:0}.zv-card h3{margin:10px 0 6px;font-size:17px}.zv-card p{margin:0;font-size:14px;color:#3e494f}
.zv-ico{width:38px;height:38px;border-radius:9px;background:#152730;color:#fff;display:grid;place-items:center;font-size:18px}
.zv-site{display:flex;gap:14px;align-items:flex-start}.zv-site h3{margin:0 0 4px}
.zv-badge{flex:0 0 44px;height:44px;border-radius:10px;color:#fff;display:grid;place-items:center;font-weight:bold;font-size:13px;background:var(--groen)}
.zv-b0{background:#6f5fc9}.zv-b1{background:#1d8f8b}.zv-b2{background:#12b3ae}.zv-b3{background:#5f7f1e}.zv-b4{background:#3f68b5}
.zv-tags{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 0;padding:0;list-style:none}.zv-tags li{font-size:12px;background:var(--soft);color:var(--groen);border-radius:20px;padding:3px 9px}
.zv-plekken{display:grid;grid-template-columns:1.1fr 1fr;gap:22px;align-items:center;margin-top:18px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px}.zv-plekken h3{margin:0 0 10px;font-size:18px}
.zv-schema{display:grid;grid-template-columns:90px 1fr;gap:10px;min-height:230px;background:var(--bg);border-radius:10px;padding:12px}
.zv-s-side{background:#e4e7e8;border-radius:8px;padding:8px;display:flex;flex-direction:column;gap:6px}.zv-s-side i,.zv-s-main i{display:block;height:8px;background:#cdd9d9;border-radius:3px}
.zv-s-main{display:flex;flex-direction:column;gap:8px}.zv-s-main i.zv-s-top{height:30px;background:#e4e7e8}.zv-w80{width:80%}.zv-w70{width:70%}
.zv-s-vak{border:2px dashed var(--groen);border-radius:6px;color:var(--groen);font-size:11px;display:grid;place-items:center;align-content:center;text-align:center;background:#fbf7ef;line-height:1.3}
.zv-s-vak span{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--groen);color:#fff;font-size:11px;margin:0 auto 2px}
.zv-s-hoog{height:96px;margin-top:auto}.zv-s-breed{height:38px;width:86%;align-self:center;display:flex;justify-content:center;align-items:center;gap:6px}.zv-s-breed span{margin:0}
.zv-ol{margin:0 0 12px;padding-left:22px;font-size:14px}.zv-ol li{margin-bottom:8px}
.zv-steps{counter-reset:zv}.zv-steps li{counter-increment:zv;position:relative;padding-left:58px}.zv-steps li:before{content:counter(zv);position:absolute;left:18px;top:18px;width:30px;height:30px;border-radius:50%;background:var(--groen);color:#fff;display:grid;place-items:center;font-weight:bold}.zv-steps h3{margin-top:2px}
.zv-h{font-size:18px!important;font-family:var(--font);letter-spacing:0;margin-bottom:8px}.zv-list{margin:0;padding-left:18px;font-size:14px}.zv-list li{margin-bottom:6px}
@media(max-width:900px){.zv-4{grid-template-columns:repeat(2,minmax(0,1fr))}.zv-3{grid-template-columns:1fr}.zv-plekken{grid-template-columns:1fr}}
@media(max-width:560px){.zv-4{grid-template-columns:1fr}.zv-schema{grid-template-columns:70px 1fr;min-height:200px}.zv-hero{padding-top:28px}}
/* v1.23 beheer: banners en advertorials (alleen desktop) */
.promo-filters{gap:12px;align-items:end;margin:12px 0 16px}.promo-filters label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:bold}.promo-filters select,.promo-filters input{min-height:40px;border:1px solid #d0dede;border-radius:8px;padding:6px 10px;background:#fff;color:var(--ink);font-weight:normal}
.promo-group>summary,details.panel>summary{cursor:pointer;list-style:revert}.promo-group>summary h2,details.panel>summary h2{display:inline;font-size:22px}
.promo-table{table-layout:fixed;width:100%}.promo-group .admin-table td{vertical-align:top;overflow-wrap:anywhere}.promo-group .row-actions{max-width:none;justify-content:flex-start;flex-wrap:nowrap}.promo-group .row-actions .button{padding:8px 10px}
.promo-cities{border:1px solid var(--line);border-radius:10px;padding:10px;margin-top:6px}.promo-cities-q{width:100%;min-height:40px;border:1px solid #d0dede;border-radius:8px;padding:6px 10px;margin-bottom:8px}
.promo-cities-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 14px;max-height:260px;overflow:auto}.promo-cities-list .check{margin:4px 0}
.promo-occ{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.promo-occ h3{font-size:15px}.promo-occ p{font-size:13px;margin:0 0 6px}

.todo-group{font:bold 13px/1.4 var(--font);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:18px 0 8px}.todo-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.todo .is-later{opacity:.65}

/* v1.23 (deel 5, H1): nieuwsbrief en "Uit ons netwerk" naast elkaar op de homepage */
.home-duo{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:20px;align-items:stretch;margin-top:16px;margin-bottom:30px}
.home-duo>.newsletter,.home-duo>.partners{margin:0}
.newsletter.nl-compact{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:22px;padding:22px 24px}
.newsletter.nl-compact h2{font-size:24px;margin-bottom:6px}.newsletter.nl-compact p{margin-bottom:0}.newsletter.nl-compact .check{margin:10px 0 2px}
.home-duo .partners-compact{padding:18px 20px}.home-duo .partners-compact h2{font-size:20px}
.home-duo .partner-rows a{min-height:34px;padding:4px 0}.home-duo .partner-rows strong{font-size:14px}.home-duo .partner-rows span{font-size:12px}
.agenda-help-more{margin:14px 0 0;font-size:14px}
@media(max-width:900px){.home-duo{grid-template-columns:1fr}.newsletter.nl-compact{grid-template-columns:1fr;gap:14px}}

/* v1.23 (beheerreview, punt 1): onderzoekstabel leesbaar op desktop */
.lead-table{table-layout:fixed;width:100%}.lead-table td{vertical-align:top;overflow-wrap:anywhere}
.lead-table .c-sel{width:34px}.lead-table .c-naam{width:170px}.lead-table .c-loc{width:140px}.lead-table .c-wie{width:130px}.lead-table .c-notitie{width:190px}.lead-table .c-status{width:100px}.lead-table .c-acties{width:190px}
.lead-acts{display:grid;grid-template-columns:1fr 1fr;gap:6px;align-content:start}.lead-acts .button.primary{grid-column:1/-1;order:-1}.lead-table td.actions .button{white-space:nowrap;min-height:40px;padding:6px 10px}
.lead-more summary{cursor:pointer;list-style:none}.lead-more summary::-webkit-details-marker{display:none}.lead-more .more{color:var(--groen);text-decoration:underline;white-space:nowrap}.lead-more[open] summary{display:none}

/* v1.23 (beheerreview, punt 4): avonden van een club als inklapbare regels */
.pv-wrap{border:1px solid var(--line);border-radius:10px;margin:8px 0;background:#fff}.pv-wrap>summary{cursor:pointer;padding:10px 14px}.pv-wrap>summary .small{margin-left:8px}.pv-wrap .pv-row{border:0;margin:0;padding:4px 14px 12px}
.sort-link{color:inherit;text-decoration:none}.sort-link:hover{text-decoration:underline}

/* v1.24 (to-do 56): /links/ als overzicht van overzichtspagina's */
.links-landen{align-items:start}
.links-land h3{font-size:1.25rem;margin-bottom:10px}
.links-land h3 .small{font-weight:normal}
.links-steden{display:block;font-size:13px;line-height:1.7;margin-top:2px}
.links-steden a{white-space:nowrap}
.links-inline{display:flex;flex-wrap:wrap;gap:6px 22px}
.links-inline li{border-bottom:0;padding:4px 0}

/* v1.24 (voorstel partnersbeheer): vinkjes als knop, formulier in blokken, plekken bij Advertorials */
.pt-table button.chk{padding:0;cursor:pointer;font:inherit;font-size:12px;line-height:1}
.pt-table button.chk:hover{border-color:#01837f}
.pt-table .pt-name{text-decoration:none}.pt-table .pt-name:hover strong{text-decoration:underline}
.pt-help>summary{cursor:pointer}
.pt-form .pt-block{border:1px solid var(--line);border-radius:12px;padding:14px 18px 6px;margin:0 0 16px}
.pt-form .pt-block legend{font-weight:bold;padding:0 6px}
.pt-form .pt-image>summary,.pt-plekken>summary{cursor:pointer;margin:6px 0}
.pt-plekken>summary.button{display:inline-flex;list-style:none}.pt-plekken>summary::-webkit-details-marker{display:none}
.pt-plekken form{margin-top:8px}
/* v1.24: banners op partnersites */
.xv-plek-checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2px 16px;margin:4px 0 8px}
.xv-plek-checks label.is-off{opacity:.45}
.xv-code{width:100%;min-height:150px;font:13px/1.5 ui-monospace,Menlo,Consolas,monospace;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--soft);color:var(--ink)}
.xv-stop{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.xv-stop.aan{border-color:#2bc0bb;background:#fdf7ea}
.xv-table td.num,.xv-table th.num{text-align:right;white-space:nowrap}
.ac-item h2.ac-name{font-size:1.25rem;margin-bottom:4px}.ac-list li{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;padding:4px 0}

/* ---------------------------------------------------------------- de zoekpagina (homepage) */
.zoek-hero{background:var(--soft);border-bottom:1px solid var(--line);padding:34px 0 26px}
.zoek-hero h1{margin-bottom:10px}
.zoek-hero .lead{max-width:62ch;color:var(--muted);margin-bottom:20px}
.zoek-form{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch;max-width:860px}
.zoek-form input[type=search]{flex:1 1 320px;min-height:48px;padding:0 14px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink)}
.zoek-form select{flex:0 1 240px;min-height:48px;padding:0 10px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink)}
.zoek-form .button{min-height:48px}
.zoek-telling{margin:14px 0 0}
.zoek-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:32px;align-items:start;padding:26px 0 40px}
.zoek-filters h2{font-size:1.2rem;margin-bottom:14px}
.zoek-filters .filter-group{margin-bottom:20px}
.zoek-filters h3{font-size:.95rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:8px}
.chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:7px}
.chip.on{background:var(--groen);border-color:var(--groen);color:#fff}
.chip.leeg{opacity:.45}
.chip-n{font-weight:400;opacity:.65;font-size:12px}
.zoek-sort{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:16px}
.zoek-resultaat .place-grid,.theme-list .place-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.pager{display:flex;gap:14px;align-items:center;justify-content:center;margin:26px 0}
.panel.why{margin-top:30px;padding:20px 22px;background:var(--soft);border:1px solid var(--line);border-radius:var(--radius)}
.panel.why h2{font-size:1.3rem;margin-bottom:10px}
.panel.why p:last-child{margin-bottom:0}
.theme-list{margin:28px 0}
.city-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 18px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
@media (max-width:980px){
  .zoek-layout{grid-template-columns:1fr;gap:20px}
  .zoek-resultaat .place-grid,.theme-list .place-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .city-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:620px){
  .zoek-resultaat .place-grid,.theme-list .place-grid{grid-template-columns:1fr}
  .city-list{grid-template-columns:1fr}
  .zoek-form input[type=search],.zoek-form select{flex:1 1 100%}
}

/* ---------------------------------------------------------------- detailpagina van een uitje */
.zeker{display:inline-block;width:1.25em;text-align:center;font-weight:bold}
.zeker.z-feit{color:var(--green)}
.zeker.z-schatting{color:var(--muted)}
.zeker.z-onbekend{color:var(--muted);opacity:.7}
.bronregel{font-size:12px;color:var(--muted)}
.bronregel a{color:var(--muted)}
.voorzieningen{list-style:none;margin:0 0 12px;padding:0}
.voorzieningen li{padding:7px 0;border-bottom:1px solid var(--line-2,var(--line))}
.voorzieningen li:last-child{border-bottom:0}
table.prijzen{width:100%;border-collapse:collapse;margin-bottom:10px}
table.prijzen th{text-align:left;font-weight:400;padding:6px 0;border-bottom:1px solid var(--line)}
table.prijzen td{text-align:right;padding:6px 0;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}
.mijn-knoppen{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0}
.mijn-knoppen .chip{border:1px solid rgba(255,255,255,.5);background:rgba(255,255,255,.12);color:#fff;cursor:pointer}
.mijn-knoppen .chip[aria-pressed=true]{background:#fff;color:var(--groen);border-color:#fff}
.mijn-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}
.mijn-tabs .chip{cursor:pointer;border:1px solid var(--line)}
.tip-card h2{font-size:1.25rem;margin-bottom:6px}
.button.small{min-height:36px;padding:0 12px;font-size:14px;margin-top:8px}

/* 1.3.5: Beheer → Onderhoud → Controlelijst */
.ctl-index{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-wrap:wrap;gap:6px 18px}
.ctl-index li{white-space:nowrap}
.ctl-uitleg{display:grid;grid-template-columns:max-content 1fr;gap:6px 12px;margin:10px 0 0}
.ctl-uitleg dd{margin:0}
.ctl-kop{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.ctl-kop h2{margin:0}
tr.ctl-klaar td{background:#f3faf5}
.admin-table .actions form.inline-form{display:inline}
@media (max-width:600px){.ctl-index li{white-space:normal}.ctl-uitleg{grid-template-columns:1fr}}
/* 1.4: beheer → Paginabeelden */
.pb-lijst { list-style: none; margin: 0; padding: 0; }
.pb-rij { display: grid; grid-template-columns: 96px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 8px 0; border-top: 1px solid var(--line); }
.pb-rij:first-child { border-top: 0; }
.pb-mini { width: 96px; height: 54px; border-radius: 6px; background: #EFEAE0; overflow: hidden; }
.pb-mini img { width: 96px; height: 54px; object-fit: cover; display: block; }
.pb-herkomst { font-weight: 600; }
.pb-voorbeeld img { max-width: 480px; width: 100%; height: auto; border-radius: 10px; display: block; }

/* 1.5: uitklapbare periodes op de uitjespagina: groot genoeg tikdoel */
.uren-periodes summary{padding:12px 0;cursor:pointer}
/* 1.6 (bouwplan G): /steden/ — het zoekveld en verborgen plaatsen ([hidden] wint van display:grid/block) */
[data-steden-zoek][hidden],.steden-tegels .city-tile[hidden],.steden-land li[hidden],.steden-prov[hidden]{display:none}
.steden-zoek{max-width:520px}
.steden-land-h{margin:22px 0 8px}
.steden-prov h3 a{color:inherit}
