:root{
  --vahb-blue:#243588;
  --vahb-blue-dark:#1d2b70;
  --vahb-orange:#e68000;
  --vahb-nav:#efefe4;
  --vahb-text:#575757;
  --vahb-muted:#777777;
  --vahb-line:#dddddd;
  --vahb-soft:#f7f7f4;
  --white:#ffffff;
  --danger:#b42318;
  --shadow:0 5px 18px rgba(36,53,136,.08);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--vahb-text);font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}.shell-wide{width:min(1530px,calc(100% - 64px));margin-inline:auto}

/* Header - matched to the supplied vahbgroup.com screenshot */
.site-header{position:sticky;top:0;z-index:50;background:#fff;box-shadow:0 1px 0 rgba(0,0,0,.05)}
.header-top{height:73px;display:grid;grid-template-columns:265px minmax(300px,440px) 1fr 74px;align-items:center;gap:26px}
.official-logo{display:flex;align-items:center;text-decoration:none;height:60px}
.official-logo img{width:247px;height:57px;object-fit:contain;object-position:left center;display:block}
.header-search{height:44px;border:1px solid var(--vahb-line);display:grid;grid-template-columns:1fr 47px;background:#fff}
.header-search input{border:0!important;outline:0!important;padding:0 12px!important;font-size:14px;color:var(--vahb-text);box-shadow:none!important;min-width:0}
.header-search input::placeholder{color:#9b9b9b}
.header-search button{border:0;background:#fff;display:grid;place-items:center;cursor:pointer;padding:0}
.header-search svg{width:22px;height:22px;fill:none;stroke:var(--vahb-blue);stroke-width:2.4}
.header-meta{display:flex;align-items:center;gap:31px;font-size:12px;color:#424242;white-space:nowrap}
.phone{display:flex;align-items:center;gap:6px}.phone svg{width:15px;height:15px;fill:var(--vahb-blue);stroke:none}
.language{display:flex;align-items:center;gap:10px}.language b{font-weight:400;border:1px solid var(--vahb-line);padding:3px 7px;color:#5d7a9c;background:#fff}
.header-admin{align-self:stretch;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;text-decoration:none;font-size:11px;color:#4a4a4a}
.header-admin svg{width:17px;height:17px;fill:var(--vahb-text);stroke:var(--vahb-text);stroke-width:1.2}.header-admin:hover{color:var(--vahb-blue)}
.nav-row{background:var(--vahb-nav)}
.nav-inner{height:56px;display:flex;align-items:stretch;gap:12px}
.nav-primary{height:42px;align-self:center;display:flex;align-items:center;gap:14px;padding:0 21px;background:var(--vahb-blue);color:#fff;text-decoration:none;border-radius:4px;font-size:16px;font-weight:700}
.hamburger{font-size:18px;line-height:1}.main-nav{display:flex;align-items:stretch}
.main-nav a{display:flex;align-items:center;padding:0 18px;text-decoration:none;color:var(--vahb-text);font-size:16px;font-weight:600;border-bottom:3px solid transparent}
.main-nav a:hover{color:var(--vahb-blue);border-bottom-color:var(--vahb-orange)}

/* Hero */
.hero-vahb{background:#fff;border-bottom:1px solid #e7e7e2}
.hero-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);gap:55px;padding:58px 0 54px}
.hero-copy{align-self:center}.eyebrow{font-size:11px;line-height:1;text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:var(--vahb-orange);margin-bottom:13px}
.hero-copy h1{margin:0;color:var(--vahb-blue);font-size:clamp(38px,4.2vw,58px);line-height:1.04;letter-spacing:-.03em;font-weight:700}
.hero-copy p{max-width:710px;margin:19px 0 0;font-size:16px;line-height:1.65;color:#676767}
.hero-actions{display:flex;gap:11px;margin-top:27px}.btn{border:0;border-radius:3px;padding:12px 20px;background:var(--vahb-blue);color:#fff;font:inherit;font-size:13px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn:hover{background:var(--vahb-blue-dark)}
.btn.secondary{background:#fff;color:var(--vahb-blue);border:1px solid var(--vahb-blue)}.btn.secondary:hover{background:#f5f6fb}
.hero-panel{background:var(--vahb-nav);padding:26px 28px 22px;border-top:4px solid var(--vahb-orange)}
.hero-panel-title{font-size:17px;font-weight:700;color:var(--vahb-blue);padding-bottom:17px;border-bottom:1px solid #d7d7cd}
.stats-list{display:grid;grid-template-columns:repeat(2,1fr)}.stat-row{min-height:76px;padding:15px 12px 12px 0;border-bottom:1px solid #d7d7cd}.stat-row:nth-child(odd){border-right:1px solid #d7d7cd}.stat-row:nth-child(even){padding-left:17px}.stat-row strong{display:block;font-size:25px;color:var(--vahb-blue);line-height:1}.stat-row span{display:block;margin-top:5px;font-size:11px;color:#686868}.loading-line{padding:22px 0;color:#777}

/* Main content */
.content-shell{padding-bottom:76px}.section{scroll-margin-top:145px;padding:62px 0}.section-first{padding-top:64px}.section-tint{background:var(--vahb-nav);margin-inline:calc(50% - 50vw);padding-inline:calc(50vw - 50%);border-top:1px solid #e2e2d8;border-bottom:1px solid #e2e2d8}
.section-head{display:grid;grid-template-columns:1fr minmax(280px,.7fr);gap:35px;align-items:end;margin-bottom:24px;padding-bottom:17px;border-bottom:1px solid var(--vahb-line)}
.section-head h2{font-size:clamp(28px,3vw,37px);line-height:1.08;letter-spacing:-.025em;margin:0;font-weight:700;color:var(--vahb-blue)}
.section-head p{margin:0;max-width:510px;justify-self:end;color:#777;font-size:14px;line-height:1.55}
.search-hit{animation:searchPulse 1.2s ease}@keyframes searchPulse{0%,100%{filter:none}35%{filter:drop-shadow(0 0 10px rgba(230,128,0,.35))}}

.meeting-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.meeting-card{min-height:190px;padding:22px;background:#fff;border:1px solid var(--vahb-line);display:grid;grid-template-columns:60px 1fr;gap:18px;position:relative;transition:.18s ease}.meeting-card:hover{box-shadow:var(--shadow);border-color:#c7c7c7;transform:translateY(-1px)}
.date-block{background:var(--vahb-blue);color:#fff;text-align:center;align-self:start;padding:11px 5px 9px;border-bottom:4px solid var(--vahb-orange)}.date-block strong{display:block;font-size:26px;line-height:1}.date-block span{display:block;margin-top:5px;font-size:10px;font-weight:700;text-transform:uppercase}
.meeting-topline{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--vahb-orange);font-weight:700}.meeting-content h3{font-size:18px;line-height:1.28;margin:8px 0 12px;color:var(--vahb-blue)}
.meta{display:flex;flex-wrap:wrap;gap:7px 12px;color:#727272;font-size:12px}.meta span+span:before{content:"•";margin-right:10px;color:var(--vahb-orange)}.desc{font-size:12px;line-height:1.55;color:#747474;margin:13px 0 0}
.docs{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.doc-card{min-height:101px;padding:17px 18px;background:#fff;border:1px solid #d7d7cf;display:grid;grid-template-columns:44px 1fr 18px;gap:15px;align-items:center;text-decoration:none;transition:.18s ease}.doc-card:hover{box-shadow:var(--shadow);border-color:#c8c8c0}.doc-icon{width:44px;height:50px;display:grid;place-items:center;background:var(--vahb-blue)}.doc-icon svg{width:21px;fill:none;stroke:#fff;stroke-width:1.6}.doc-copy small{display:block;color:var(--vahb-orange);font-size:9px;text-transform:uppercase;letter-spacing:.1em;font-weight:700;margin-bottom:5px}.doc-copy strong{display:block;font-size:15px;color:var(--vahb-blue)}.doc-copy em{display:block;font-style:normal;font-size:10px;color:#8b8b8b;margin-top:5px}.doc-arrow{color:var(--vahb-blue);font-size:27px;line-height:1}
.birthday-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.birthday-card{background:#fff;border:1px solid var(--vahb-line);padding:17px;display:flex;align-items:center;gap:15px}.avatar{width:51px;height:51px;border-radius:50%;background:var(--vahb-nav);color:var(--vahb-blue);border:1px solid #d8d8cd;display:grid;place-items:center;font-size:12px;font-weight:800;position:relative}.avatar:after{content:"";position:absolute;right:-1px;bottom:2px;width:10px;height:10px;border-radius:50%;background:var(--vahb-orange);border:3px solid #fff}.birthday-copy small{display:block;font-size:9px;color:var(--vahb-orange);font-weight:700;text-transform:uppercase;letter-spacing:.07em}.birthday-copy strong{display:block;margin-top:4px;font-size:15px;color:var(--vahb-blue)}.birthday-copy span{display:block;margin-top:3px;font-size:11px;color:#7a7a7a}
.photos{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:210px;gap:12px}.photo{margin:0;position:relative;overflow:hidden;background:#eee}.photo-featured{grid-column:span 2;grid-row:span 2}.photo img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.photo:hover img{transform:scale(1.02)}.photo figcaption{position:absolute;left:0;right:0;bottom:0;padding:36px 15px 13px;background:linear-gradient(transparent,rgba(25,35,70,.85));color:#fff;border-bottom:4px solid var(--vahb-orange)}.photo figcaption strong{display:block;font-size:13px}.photo figcaption span{display:block;margin-top:4px;font-size:10px;color:#e8e8e8}.empty{grid-column:1/-1;padding:23px;border:1px dashed #c7c7c0;background:#fafaf8;color:#777}

/* Footer */
.site-footer{background:var(--vahb-nav);border-top:4px solid var(--vahb-blue);color:#646464;margin-top:0}.footer-grid{padding:38px 0;display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:45px;font-size:11px}.footer-brand img{width:225px;height:auto;display:block}.footer-grid strong{display:block;color:var(--vahb-blue);margin-bottom:9px}.footer-grid span,.footer-grid a{display:block;text-decoration:none;margin-top:5px}.footer-grid a:hover{color:var(--vahb-orange)}

/* Admin */
.topbar{background:#fff;border-bottom:56px solid var(--vahb-nav);position:relative}.topbar-inner{width:min(1530px,calc(100% - 64px));margin:auto;height:73px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:18px;font-weight:700;color:var(--vahb-blue)}.brand img{width:230px;height:auto;display:block}.brand span{padding-left:18px;border-left:1px solid var(--vahb-line)}.nav{display:flex;gap:10px;align-items:center}.nav a{text-decoration:none;color:var(--vahb-blue);font-weight:700;padding:9px 12px}.nav a:hover{color:var(--vahb-orange)}
.admin-wrap{max-width:1180px;margin:auto;padding:42px 24px 70px}.admin-title{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;border-bottom:1px solid var(--vahb-line);padding-bottom:21px}.admin-title h1{font-size:37px!important;color:var(--vahb-blue);letter-spacing:-.025em}.tabs{display:flex;flex-wrap:wrap;gap:0;margin:27px 0;border-bottom:1px solid var(--vahb-line)}.tab{border:0;border-bottom:3px solid transparent;background:transparent;padding:12px 17px;cursor:pointer;font-weight:700;color:#666}.tab.active{color:var(--vahb-blue);border-bottom-color:var(--vahb-orange)}.panel{display:none}.panel.active{display:block}.admin-grid{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(420px,1.2fr);gap:18px}.form-card,.list-card{background:#fff;border:1px solid var(--vahb-line);padding:23px}.form-card h2,.list-card h2{margin-top:0;color:var(--vahb-blue);font-size:20px}label{display:block;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;margin:14px 0 7px;color:#666}input,textarea,select{width:100%;border:1px solid #cfcfcf;border-radius:0;padding:11px;font:inherit;background:#fff;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--vahb-blue);box-shadow:0 0 0 2px rgba(36,53,136,.1)}textarea{min-height:100px;resize:vertical}.form-actions{margin-top:17px;display:flex;gap:10px}.list{display:grid;gap:0;border-top:1px solid var(--vahb-line)}.row{border-bottom:1px solid var(--vahb-line);padding:14px 0;display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.row-info strong{display:block;color:var(--vahb-blue)}.row-info small{display:block;color:#777;margin-top:4px}.btn.danger{background:#fff;color:var(--danger);border:1px solid #e1b8b4}.btn.danger:hover{background:#fff5f4}.notice{border-radius:0;padding:12px 14px;margin:14px 0}.notice.warn{background:#fff8e7;color:#6d4b00;border:1px solid #ead99b}.notice.ok{background:#eef6ee;color:#345c37;border:1px solid #bfd5c0}.login{max-width:430px;margin:62px auto;background:#fff;border-top:5px solid var(--vahb-orange);padding:31px;border:1px solid var(--vahb-line);border-top-width:5px;box-shadow:var(--shadow)}.login h1{color:var(--vahb-blue);letter-spacing:-.02em}.hidden{display:none!important}.status{font-size:12px;color:#777;margin-top:10px}

@media(max-width:1100px){.header-top{grid-template-columns:245px minmax(260px,1fr) auto}.header-meta{display:none}.header-admin{min-width:65px}.hero-layout{grid-template-columns:1fr .65fr}.meeting-grid,.birthday-grid{grid-template-columns:repeat(2,1fr)}.photos{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){.shell-wide{width:min(100% - 32px,1530px)}.header-top{height:68px;grid-template-columns:210px 1fr 58px;gap:12px}.official-logo img{width:205px;height:auto}.header-search{height:40px}.header-admin span{display:none}.nav-inner{height:50px}.nav-primary{height:38px;font-size:14px}.main-nav a{font-size:14px;padding:0 12px}.hero-layout{grid-template-columns:1fr;gap:25px;padding:43px 0}.section-head{grid-template-columns:1fr}.section-head p{justify-self:start}.docs{grid-template-columns:1fr}.admin-grid{grid-template-columns:1fr}.topbar-inner{width:calc(100% - 32px)}.brand span{display:none}}
@media(max-width:600px){.shell-wide{width:min(100% - 24px,1530px)}.header-top{grid-template-columns:190px 1fr;height:64px}.official-logo img{width:185px}.header-search{display:none}.header-admin{justify-self:end}.nav-inner{overflow-x:auto;gap:0}.nav-primary{flex:0 0 auto;margin-right:3px}.main-nav{flex:0 0 auto}.main-nav a{white-space:nowrap;font-size:13px;padding:0 10px}.hero-copy h1{font-size:38px}.hero-panel{padding:22px}.meeting-grid,.birthday-grid{grid-template-columns:1fr}.section{padding:48px 0}.section-tint{padding-inline:calc(50vw - 50%)}.photos{grid-template-columns:repeat(2,1fr);grid-auto-rows:170px}.photo-featured{grid-column:span 2;grid-row:span 1}.footer-grid{grid-template-columns:1fr;gap:22px;padding:32px 0}.admin-wrap{padding:32px 14px 50px}.admin-title{align-items:flex-start;flex-direction:column}.login{margin:45px 14px;padding:24px}.topbar{border-bottom-width:48px}.topbar-inner{height:64px}.brand img{width:200px}}

/* Homepage agenda calendar - VAHB v4 */
.agenda-dashboard{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(330px,.75fr);gap:20px;align-items:start}
.calendar-card,.upcoming-card{background:#fff;border:1px solid var(--vahb-line);box-shadow:0 2px 8px rgba(36,53,136,.04)}
.calendar-card{padding:22px}
.calendar-toolbar,.upcoming-header{display:flex;align-items:center;justify-content:space-between;gap:18px}
.calendar-toolbar{padding-bottom:17px;border-bottom:1px solid var(--vahb-line)}
.calendar-toolbar small,.upcoming-header small{display:block;margin-bottom:4px;color:var(--vahb-orange);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}
.calendar-toolbar h3,.upcoming-header h3{margin:0;color:var(--vahb-blue);font-size:21px;line-height:1.2}
.calendar-actions{display:flex;align-items:center;gap:6px}.calendar-actions button{height:34px;min-width:34px;border:1px solid #d5d5d5;background:#fff;color:var(--vahb-blue);font-size:20px;line-height:1;cursor:pointer}.calendar-actions button:hover{border-color:var(--vahb-blue);background:#f6f7fb}.calendar-actions .calendar-today{padding:0 12px;font-size:11px;font-weight:700}
.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-top:12px;border:1px solid var(--vahb-line);border-bottom:0;background:var(--vahb-nav)}.calendar-weekdays span{padding:8px 7px;text-align:right;color:#777;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.calendar-weekdays span+span{border-left:1px solid #deded4}
.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);border-left:1px solid var(--vahb-line);border-top:1px solid var(--vahb-line)}
.calendar-day{position:relative;min-width:0;height:108px;padding:8px 7px;background:#fff;border:0;border-right:1px solid var(--vahb-line);border-bottom:1px solid var(--vahb-line);font:inherit;color:var(--vahb-text);text-align:left;cursor:pointer;overflow:hidden}.calendar-day:hover{background:#fafaf7}.calendar-day.is-outside{background:#fafafa;color:#aaa}.calendar-day.is-outside .calendar-event{opacity:.6}.calendar-day.is-selected{box-shadow:inset 0 0 0 2px var(--vahb-blue);z-index:1}.calendar-day.is-today .day-number{background:var(--vahb-orange);color:#fff}.day-number{display:grid;place-items:center;margin-left:auto;width:24px;height:24px;border-radius:50%;font-size:11px;font-weight:700}.calendar-events{display:grid;gap:3px;margin-top:5px}.calendar-event{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:4px 5px;background:#f0f2fa;border-left:3px solid var(--vahb-blue);color:#3f4b7e;font-size:9px;line-height:1.2}.calendar-event b{color:var(--vahb-blue);font-weight:800}.calendar-more{font-size:9px;color:var(--vahb-orange);font-weight:700;padding-left:5px}.mobile-event-dot{display:none}
.calendar-legend{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:12px;color:#858585;font-size:10px}.calendar-legend span{display:flex;align-items:center;gap:7px}.calendar-legend i{width:10px;height:10px;background:var(--vahb-blue);border-left:3px solid var(--vahb-orange)}.calendar-legend em{font-style:normal}
.upcoming-card{border-top:4px solid var(--vahb-orange)}.upcoming-header{padding:19px 19px 16px;border-bottom:1px solid var(--vahb-line)}.link-button{border:0;background:transparent;padding:6px 0;color:var(--vahb-blue);font-size:10px;font-weight:800;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.upcoming-list{display:grid}.upcoming-item{display:grid;grid-template-columns:51px 1fr;gap:13px;padding:16px 18px;border-bottom:1px solid var(--vahb-line);background:#fff}.upcoming-item:last-child{border-bottom:0}.upcoming-item:hover{background:#fafaf7}.upcoming-date{align-self:start;background:var(--vahb-blue);color:#fff;text-align:center;padding:8px 3px 6px;border-bottom:3px solid var(--vahb-orange)}.upcoming-date strong{display:block;font-size:20px;line-height:1}.upcoming-date span{display:block;margin-top:4px;font-size:8px;font-weight:800;text-transform:uppercase}.upcoming-copy small{display:block;color:var(--vahb-orange);font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.upcoming-copy h4{margin:5px 0 8px;color:var(--vahb-blue);font-size:14px;line-height:1.25}.upcoming-meta{display:flex;flex-wrap:wrap;gap:5px 10px;color:#777;font-size:10px}.upcoming-meta span+span:before{content:"•";margin-right:8px;color:var(--vahb-orange)}.agenda-empty{padding:24px 19px;color:#777;font-size:12px;line-height:1.5}

@media(max-width:1100px){.agenda-dashboard{grid-template-columns:minmax(0,1.35fr) minmax(310px,.75fr)}.calendar-day{height:96px}.calendar-event{font-size:8px}}
@media(max-width:820px){.agenda-dashboard{grid-template-columns:1fr}.calendar-day{height:100px}.upcoming-card{border-top-width:4px}}
@media(max-width:600px){.calendar-card{padding:14px}.calendar-toolbar{align-items:flex-start}.calendar-toolbar h3{font-size:18px}.calendar-actions{gap:3px}.calendar-actions button{height:31px;min-width:31px}.calendar-actions .calendar-today{padding:0 8px}.calendar-weekdays span{padding:7px 2px;text-align:center}.calendar-day{height:54px;padding:5px 3px;text-align:center}.day-number{margin:0 auto;width:23px;height:23px}.calendar-events{display:none}.mobile-event-dot{display:block;width:5px;height:5px;border-radius:50%;background:transparent;margin:4px auto 0}.calendar-day.has-events .mobile-event-dot{background:var(--vahb-blue)}.calendar-day.is-outside .mobile-event-dot{opacity:.35}.calendar-legend{align-items:flex-start;flex-direction:column;gap:5px}.upcoming-header{padding:16px}.upcoming-item{padding:14px 15px}}

/* VAHB v5 - nieuws, activiteiten en gecombineerde bedrijfskalender */
.announcements-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.announcement-card{position:relative;min-height:215px;background:#fff;border:1px solid var(--vahb-line);padding:22px 22px 20px;display:flex;flex-direction:column;box-shadow:0 2px 7px rgba(36,53,136,.025)}
.announcement-card:hover{border-color:#c9c9c9;box-shadow:var(--shadow)}
.announcement-card.pinned{border-top:4px solid var(--vahb-orange);padding-top:19px}
.announcement-card.featured{grid-column:span 2;background:var(--vahb-nav)}
.announcement-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}
.announcement-category{color:var(--vahb-orange);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}
.announcement-pin{background:var(--vahb-blue);color:#fff;padding:5px 8px;border-radius:2px;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.announcement-card h3{margin:0 0 10px;color:var(--vahb-blue);font-size:19px;line-height:1.25;letter-spacing:-.01em}
.announcement-card.featured h3{font-size:24px}
.announcement-card p{margin:0;color:#686868;font-size:13px;line-height:1.6;white-space:pre-line}
.announcement-date{margin-top:auto;padding-top:18px;color:#999;font-size:10px;border-top:1px solid #ececec}

.calendar-event.meeting{background:#f0f2fa;border-left-color:var(--vahb-blue);color:#3f4b7e}
.calendar-event.activity{background:var(--vahb-nav);border-left-color:var(--vahb-orange);color:#555}
.calendar-event.activity b{color:var(--vahb-blue)}
.calendar-event.birthday{background:#fff3e5;border-left-color:var(--vahb-orange);color:#925300}
.calendar-event.birthday b{color:#925300}
.legend-items{display:flex;flex-wrap:wrap;gap:13px 18px}
.calendar-legend .legend-items span{display:flex;align-items:center;gap:6px}
.calendar-legend i{border-left:0}
.calendar-legend .legend-meeting{background:var(--vahb-blue)}
.calendar-legend .legend-activity{background:var(--vahb-nav);border:1px solid var(--vahb-orange)}
.calendar-legend .legend-birthday{background:var(--vahb-orange)}
.upcoming-item.activity .upcoming-date{background:var(--vahb-nav);color:var(--vahb-blue);border:1px solid #d8d8ce;border-bottom:3px solid var(--vahb-orange)}
.upcoming-item.birthday .upcoming-date{background:var(--vahb-orange);border-bottom-color:var(--vahb-blue)}
.upcoming-item.birthday .upcoming-copy small{color:var(--vahb-orange)}
.upcoming-item.activity .upcoming-copy small{color:var(--vahb-blue)}

.check-label{display:flex;align-items:center;gap:9px;text-transform:none;letter-spacing:0;font-size:12px;font-weight:600;cursor:pointer;margin-top:17px;color:var(--vahb-text)}
.check-label input{width:auto;flex:0 0 auto;margin:0;accent-color:var(--vahb-blue)}

@media(max-width:1000px){.announcements-grid{grid-template-columns:repeat(2,1fr)}.announcement-card.featured{grid-column:span 2}}
@media(max-width:600px){.announcements-grid{grid-template-columns:1fr}.announcement-card.featured{grid-column:auto}.announcement-card{min-height:0}.announcement-card.featured h3{font-size:20px}.calendar-legend{gap:9px}.legend-items{gap:8px 12px}}

/* VAHB content expansion - medewerkers, documentfilters en fotoalbums */
.document-tools{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:0 0 18px}
.filter-chips{display:flex;flex-wrap:wrap;gap:8px}
.filter-chip{border:1px solid #d3d3cb;background:#fff;color:var(--vahb-blue);padding:9px 13px;border-radius:3px;font:inherit;font-size:11px;font-weight:700;cursor:pointer}
.filter-chip:hover{border-color:var(--vahb-blue)}
.filter-chip.active{background:var(--vahb-blue);border-color:var(--vahb-blue);color:#fff}
.document-search{display:flex;align-items:center;gap:10px;min-width:310px;color:#777;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.document-search input{width:230px;height:39px;border:1px solid #d3d3cb;background:#fff;padding:0 11px;font:inherit;font-size:13px;color:var(--vahb-text);text-transform:none;letter-spacing:0;outline:none}
.document-search input:focus{border-color:var(--vahb-blue);box-shadow:0 0 0 2px rgba(36,53,136,.08)}

.employees-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.employee-card{background:#fff;border:1px solid #d6d6ce;min-width:0;overflow:hidden;transition:.18s ease}
.employee-card:hover{border-color:#c3c3bb;box-shadow:var(--shadow);transform:translateY(-1px)}
.employee-photo{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#e8e8e1}
.employee-placeholder{display:grid;place-items:center;color:#fff;background:var(--vahb-blue);font-size:30px;font-weight:800;letter-spacing:.03em;border-bottom:5px solid var(--vahb-orange)}
.employee-info{padding:16px 17px 18px}
.employee-info small{display:block;color:var(--vahb-orange);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.09em;margin-bottom:5px}
.employee-info h3{margin:0;color:var(--vahb-blue);font-size:17px;line-height:1.25}
.employee-info p{margin:6px 0 0;color:#666;font-size:12px;line-height:1.4}
.employee-contact{display:grid;gap:4px;margin-top:13px;padding-top:11px;border-top:1px solid #ecece7}
.employee-contact a{font-size:11px;color:#666;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.employee-contact a:hover{color:var(--vahb-orange)}

.album-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.album-card{display:block;padding:0;border:1px solid #d6d6ce;background:#fff;text-align:left;font:inherit;color:inherit;cursor:pointer;overflow:hidden;transition:.18s ease}
.album-card:hover{border-color:#c3c3bb;box-shadow:var(--shadow);transform:translateY(-1px)}
.album-cover{position:relative;aspect-ratio:16/10;background:#eee;overflow:hidden}
.album-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .28s ease}
.album-card:hover .album-cover img{transform:scale(1.025)}
.album-cover span{position:absolute;right:10px;bottom:10px;background:var(--vahb-blue);color:#fff;padding:6px 9px;border-bottom:3px solid var(--vahb-orange);font-size:10px;font-weight:700}
.album-copy{display:grid;padding:15px 16px 17px}
.album-copy small{color:#8a8a8a;font-size:10px;margin-bottom:5px}
.album-copy strong{color:var(--vahb-blue);font-size:17px;line-height:1.25}
.album-copy em{margin-top:10px;color:var(--vahb-orange);font-size:11px;font-style:normal;font-weight:700}

.modal-open{overflow:hidden}
.album-modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:28px}
.album-modal.hidden{display:none}
.album-modal-backdrop{position:absolute;inset:0;background:rgba(20,28,62,.72)}
.album-modal-panel{position:relative;z-index:1;width:min(1180px,100%);max-height:calc(100vh - 56px);overflow:auto;background:#fff;border-top:5px solid var(--vahb-orange);box-shadow:0 20px 70px rgba(0,0,0,.28)}
.album-modal-head{position:sticky;top:0;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px 18px;background:#fff;border-bottom:1px solid var(--vahb-line)}
.album-modal-head h2{margin:0;color:var(--vahb-blue);font-size:30px}
.album-modal-head p{margin:6px 0 0;color:#777;font-size:12px}
.album-close{width:39px;height:39px;border:1px solid #d5d5cd;background:var(--vahb-nav);color:var(--vahb-blue);font-size:27px;line-height:1;cursor:pointer}
.album-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:20px}
.album-photo-grid figure{margin:0;background:#f2f2ee;border:1px solid #e0e0d9}
.album-photo-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.album-photo-grid figcaption{padding:9px 11px;color:#666;font-size:11px;line-height:1.4}

@media(max-width:1100px){.employees-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.album-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.album-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.document-tools{align-items:stretch;flex-direction:column}.document-search{min-width:0;justify-content:space-between}.document-search input{width:min(100%,360px)}.employees-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.employees-grid,.album-grid,.album-photo-grid{grid-template-columns:1fr}.document-search{display:grid}.document-search input{width:100%}.album-modal{padding:10px}.album-modal-panel{max-height:calc(100vh - 20px)}.album-modal-head{padding:17px}.album-modal-head h2{font-size:24px}.album-photo-grid{padding:10px}}

/* VAHB smoelenboek 2026 - compacte afdelingsweergave */
.employee-tools{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:0 0 22px}
.employee-directory{display:grid;gap:30px}
.employee-group{display:grid;gap:13px}
.employee-group-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-bottom:9px;border-bottom:2px solid var(--vahb-blue)}
.employee-group-head h3{margin:0;color:var(--vahb-blue);font-size:22px;line-height:1.15}
.employee-group-head span{color:#777;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.employees-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.employee-card{display:grid;grid-template-columns:88px minmax(0,1fr);align-items:center;gap:14px;padding:13px;background:#fff;border:1px solid #d6d6ce;min-width:0;overflow:hidden;transition:.18s ease}
.employee-card:hover{border-color:#c3c3bb;box-shadow:var(--shadow);transform:translateY(-1px)}
.employee-photo{display:block;width:88px;height:88px;aspect-ratio:1/1;object-fit:cover;object-position:center 20%;border-radius:50%;background:#e8e8e1;border:3px solid var(--vahb-orange)}
.employee-placeholder{display:grid;place-items:center;color:#fff;background:var(--vahb-blue);font-size:23px;font-weight:800;letter-spacing:.03em;border-bottom:0}
.employee-info{min-width:0;padding:0}
.employee-info small{display:block;color:var(--vahb-orange);font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;margin-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.employee-info h3{margin:0;color:var(--vahb-blue);font-size:16px;line-height:1.2}
.employee-info p{margin:5px 0 0;color:#606060;font-size:11px;line-height:1.35}
.employee-contact{display:grid;gap:3px;margin-top:9px;padding-top:8px;border-top:1px solid #ecece7}
.employee-contact a{font-size:10px;color:#666;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.employee-contact a:hover{color:var(--vahb-orange)}

@media(max-width:1050px){.employees-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.employee-tools{align-items:stretch;flex-direction:column}.employee-tools .document-search{min-width:0;justify-content:space-between}.employee-tools .document-search input{width:min(100%,360px)}}
@media(max-width:620px){.employees-grid{grid-template-columns:1fr}.employee-card{grid-template-columns:76px minmax(0,1fr)}.employee-photo{width:76px;height:76px}.employee-group-head h3{font-size:19px}.employee-tools .document-search{display:grid}.employee-tools .document-search input{width:100%}}

/* VAHB v10 - dashboard, snelkoppelingen, globale zoekfunctie en medewerkerprofielen */
.header-search{position:relative}
.global-search-results{position:absolute;left:-1px;right:-1px;top:calc(100% + 7px);z-index:80;background:#fff;border:1px solid var(--vahb-line);border-top:4px solid var(--vahb-orange);box-shadow:0 14px 35px rgba(29,43,112,.16);max-height:480px;overflow:auto}
.global-search-item{display:grid;width:100%;grid-template-columns:96px minmax(0,1fr);grid-template-areas:"kind title" "kind sub";column-gap:12px;padding:12px 14px;border:0;border-bottom:1px solid #ecece7;background:#fff;text-align:left;font:inherit;cursor:pointer}
.global-search-item:hover,.global-search-item:focus{background:var(--vahb-nav);outline:0}
.global-search-item .search-kind{grid-area:kind;align-self:center;color:var(--vahb-orange);font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.global-search-item strong{grid-area:title;color:var(--vahb-blue);font-size:12px;line-height:1.3}
.global-search-item small{grid-area:sub;margin-top:3px;color:#777;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.global-search-empty{padding:18px;color:#777;font-size:12px}.global-search-empty strong{color:var(--vahb-blue)}

.dashboard-section{padding-bottom:34px}
.dashboard-head{margin-bottom:18px}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:16px}
.dashboard-card{min-width:0;background:#fff;border:1px solid var(--vahb-line);box-shadow:0 2px 8px rgba(36,53,136,.035)}
.dashboard-card.today-card{border-top:4px solid var(--vahb-blue)}
.dashboard-card.quicklinks-card{border-top:4px solid var(--vahb-orange)}
.dashboard-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 19px 15px;border-bottom:1px solid #e8e8e3}
.dashboard-card-head small{display:block;margin-bottom:4px;color:var(--vahb-orange);font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}
.dashboard-card-head h3{margin:0;color:var(--vahb-blue);font-size:19px;line-height:1.2}
.dashboard-card-head>a{margin-top:5px;color:var(--vahb-blue);font-size:9px;font-weight:800;text-decoration:none;white-space:nowrap}
.dashboard-card-head>a:hover{color:var(--vahb-orange)}
.today-list,.dashboard-mini-list{display:grid}
.today-item{display:grid;grid-template-columns:9px minmax(0,1fr) 18px;gap:11px;align-items:center;width:100%;padding:13px 18px;border:0;border-bottom:1px solid #ededeb;background:#fff;text-align:left;font:inherit;cursor:pointer}
.today-item:last-child{border-bottom:0}.today-item:hover{background:#fafaf7}
.today-dot{width:8px;height:8px;border-radius:50%;background:var(--vahb-blue)}
.today-item.activity .today-dot{background:var(--vahb-orange)}.today-item.birthday .today-dot{background:#f1a23c}
.today-item span:nth-child(2){display:grid;gap:2px;min-width:0}.today-item small{color:#888;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.today-item strong{color:var(--vahb-blue);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.today-item em{font-style:normal;color:#888;font-size:9px}.today-item>b{color:var(--vahb-blue);font-size:20px}
.dashboard-empty{padding:20px;color:#777;font-size:11px;line-height:1.5}
.quicklinks-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
.quick-link{display:grid;grid-template-columns:42px minmax(0,1fr) 14px;gap:11px;align-items:center;min-height:76px;padding:13px 15px;border-right:1px solid #ededeb;border-bottom:1px solid #ededeb;text-decoration:none;background:#fff}
.quick-link:nth-child(even){border-right:0}.quick-link:hover{background:var(--vahb-nav)}
.quick-icon{display:grid;place-items:center;width:39px;height:39px;background:var(--vahb-blue);border-bottom:3px solid var(--vahb-orange);color:#fff;font-size:9px;font-weight:800;letter-spacing:.03em}
.quick-link span:nth-child(2){min-width:0}.quick-link small{display:block;color:#888;font-size:8px;text-transform:uppercase;font-weight:800;letter-spacing:.07em;margin-bottom:3px}.quick-link strong{display:block;color:var(--vahb-blue);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quick-link>b{color:var(--vahb-orange);font-size:19px}
.compact-card{min-height:245px}
.dashboard-mini-list a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 17px;border-bottom:1px solid #ededeb;text-decoration:none}.dashboard-mini-list a:last-child{border-bottom:0}.dashboard-mini-list a:hover{background:#fafaf7}.dashboard-mini-list span{min-width:0}.dashboard-mini-list small{display:block;color:var(--vahb-orange);font-size:8px;text-transform:uppercase;font-weight:800;letter-spacing:.06em}.dashboard-mini-list strong{display:block;margin-top:3px;color:var(--vahb-blue);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-mini-list b{color:var(--vahb-blue);font-size:18px}
.recent-employees{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:10px}
.recent-employees button{display:grid;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:10px;padding:9px;border:0;background:#fff;text-align:left;font:inherit;cursor:pointer}.recent-employees button:hover{background:var(--vahb-nav)}
.recent-employees img,.mini-avatar{width:46px;height:46px;border-radius:50%;object-fit:cover;object-position:center 20%;border:2px solid var(--vahb-orange)}.mini-avatar{display:grid;place-items:center;background:var(--vahb-blue);color:#fff;font-size:10px;font-weight:800}
.recent-employees strong{display:block;color:var(--vahb-blue);font-size:11px;line-height:1.25}.recent-employees small{display:block;margin-top:3px;color:#777;font-size:8px;line-height:1.3}

.employee-profile-link{margin-top:9px;padding:0;border:0;background:transparent;color:var(--vahb-blue);font:inherit;font-size:9px;font-weight:800;cursor:pointer}.employee-profile-link:hover{color:var(--vahb-orange)}
.employee-modal-panel{position:relative;z-index:1;width:min(760px,100%);max-height:calc(100vh - 56px);overflow:auto;background:#fff;border-top:5px solid var(--vahb-orange);box-shadow:0 20px 70px rgba(0,0,0,.28)}
.employee-modal-close{position:absolute;right:18px;top:18px;z-index:3}
.employee-profile-hero{display:grid;grid-template-columns:180px minmax(0,1fr);gap:28px;align-items:center;padding:34px 36px 28px;background:var(--vahb-nav);border-bottom:1px solid var(--vahb-line)}
.employee-profile-photo img,.employee-modal-placeholder{display:block;width:180px;height:180px;border-radius:50%;object-fit:cover;object-position:center 20%;border:5px solid var(--vahb-orange);background:#fff}
.employee-modal-placeholder{display:grid;place-items:center;background:var(--vahb-blue);color:#fff;font-size:42px;font-weight:800}
.employee-profile-hero h2{margin:0;color:var(--vahb-blue);font-size:34px;line-height:1.08;letter-spacing:-.02em}.employee-profile-hero p{margin:9px 0 0;color:#666;font-size:15px;line-height:1.45}
.employee-profile-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:24px 36px 32px}
.profile-contact{display:grid;padding:15px;border:1px solid var(--vahb-line);text-decoration:none;background:#fff}.profile-contact:hover{border-color:var(--vahb-blue);box-shadow:var(--shadow)}.profile-contact b{color:var(--vahb-orange);font-size:8px;text-transform:uppercase;letter-spacing:.08em}.profile-contact span{margin-top:5px;color:var(--vahb-blue);font-size:12px;overflow-wrap:anywhere}.profile-no-contact{grid-column:1/-1;padding:18px;background:#fafaf7;border:1px dashed #c9c9c1;color:#777;font-size:11px}

@media(max-width:1000px){.dashboard-grid{grid-template-columns:1fr}.compact-card{min-height:0}.dashboard-card.quicklinks-card{order:2}.compact-card{order:3}}
@media(max-width:820px){.global-search-results{left:auto;right:0;width:min(540px,calc(100vw - 32px))}.employee-profile-hero{grid-template-columns:130px minmax(0,1fr)}.employee-profile-photo img,.employee-modal-placeholder{width:130px;height:130px}.employee-profile-hero h2{font-size:28px}}
@media(max-width:600px){.dashboard-section{padding-top:42px}.dashboard-grid{gap:12px}.quicklinks-grid{grid-template-columns:1fr}.quick-link{border-right:0}.recent-employees{grid-template-columns:1fr}.employee-profile-hero{grid-template-columns:1fr;text-align:center;padding:28px 20px 22px}.employee-profile-photo{display:grid;place-items:center}.employee-profile-photo img,.employee-modal-placeholder{width:120px;height:120px}.employee-profile-hero .eyebrow{margin-top:4px}.employee-profile-hero h2{font-size:26px}.employee-profile-body{grid-template-columns:1fr;padding:18px 20px 24px}.employee-modal-panel{max-height:calc(100vh - 20px)}.employee-modal-close{right:10px;top:10px}}

/* VAHB v11 - documentencentrum, kennisbank en belangrijke meldingen */
.alert-stack{position:relative;z-index:35;padding-top:12px;display:grid;gap:8px}
.site-alert{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:12px;padding:11px 14px;border:1px solid #cfd4eb;border-left:5px solid var(--vahb-blue);background:#f6f7fc;box-shadow:0 2px 7px rgba(36,53,136,.06)}
.site-alert.important{border-color:#f0c68f;border-left-color:var(--vahb-orange);background:#fff8ee}.site-alert.warning{border-color:#e4b0aa;border-left-color:#b42318;background:#fff4f2}
.site-alert-icon{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--vahb-blue);color:#fff;font-weight:800;font-size:11px}.site-alert.important .site-alert-icon{background:var(--vahb-orange)}.site-alert.warning .site-alert-icon{background:#b42318}
.site-alert>span:last-child{display:flex;gap:10px;align-items:baseline;min-width:0}.site-alert strong{color:var(--vahb-blue);font-size:12px;white-space:nowrap}.site-alert em{font-style:normal;color:#626262;font-size:11px;line-height:1.45}.site-alert.warning strong{color:#922b21}

.important-doc-card{border-top:4px solid var(--vahb-orange)}
.dashboard-mini-list button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;padding:12px 17px;border:0;border-bottom:1px solid #ededeb;background:#fff;text-align:left;font:inherit;cursor:pointer}.dashboard-mini-list button:last-child{border-bottom:0}.dashboard-mini-list button:hover{background:#fafaf7}.dashboard-mini-list button span{min-width:0}.dashboard-mini-list button small{display:block;color:var(--vahb-orange);font-size:8px;text-transform:uppercase;font-weight:800;letter-spacing:.06em}.dashboard-mini-list button strong{display:block;margin-top:3px;color:var(--vahb-blue);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-mini-list button b{color:var(--vahb-blue);font-size:18px}

.docs-v11{grid-template-columns:repeat(2,minmax(0,1fr))}.doc-card-v11{background:#fff;border:1px solid #d7d7cf;display:grid;grid-template-rows:1fr auto;transition:.18s ease;min-width:0}.doc-card-v11:hover{box-shadow:var(--shadow);border-color:#c8c8c0}.doc-card-v11.important{border-top:4px solid var(--vahb-orange)}
.doc-main{display:grid;grid-template-columns:44px minmax(0,1fr) 18px;gap:15px;align-items:center;width:100%;padding:17px 18px;border:0;background:#fff;text-align:left;font:inherit;cursor:pointer}.doc-main:hover{background:#fafaf8}.doc-review{display:inline-block!important;margin-top:6px!important;padding:3px 6px;background:#eef0fa;color:var(--vahb-blue)!important;font-size:8px!important;font-weight:700}.doc-review.due{background:#fff1dd;color:#9a5b00!important}.doc-review.overdue{background:#fff0ee;color:#a52d22!important}
.doc-card-actions{display:flex;justify-content:flex-end;gap:8px;padding:9px 12px;border-top:1px solid #ecece7;background:#fafaf8}.doc-card-actions button,.doc-card-actions a{border:0;background:transparent;padding:4px 6px;color:var(--vahb-blue);font:inherit;font-size:9px;font-weight:800;text-decoration:none;cursor:pointer}.doc-card-actions button:hover,.doc-card-actions a:hover{color:var(--vahb-orange)}

.document-modal-panel,.knowledge-modal-panel{position:relative;z-index:1;width:min(1080px,100%);max-height:calc(100vh - 36px);overflow:auto;background:#fff;border-top:5px solid var(--vahb-orange);box-shadow:0 20px 70px rgba(0,0,0,.28)}.knowledge-modal-panel{width:min(820px,100%)}.document-modal-close{position:absolute;right:15px;top:15px;z-index:5}
.document-modal-head{padding:30px 34px 24px;background:var(--vahb-nav);border-bottom:1px solid var(--vahb-line)}.document-modal-head h2,.knowledge-article h2{margin:0;color:var(--vahb-blue);font-size:30px;line-height:1.12}.document-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:20px}.document-meta-grid span{display:grid;padding:10px 12px;background:#fff;border:1px solid #dddcd3;color:#656565;font-size:10px}.document-meta-grid b{margin-bottom:4px;color:var(--vahb-orange);font-size:8px;text-transform:uppercase;letter-spacing:.07em}.document-modal-actions{margin-top:18px}.pdf-preview{padding:20px 24px;background:#e8e8e3}.pdf-preview iframe{display:block;width:100%;height:min(64vh,720px);border:1px solid #c8c8c0;background:#fff}.version-history{padding:24px 34px 30px}.version-history h3{margin:0 0 12px;color:var(--vahb-blue);font-size:18px}.version-history>a{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid #ecece7;text-decoration:none}.version-history>a span{color:var(--vahb-blue);font-size:11px;font-weight:700}.version-history>a small{color:#777;font-size:9px}.version-history p{color:#777;font-size:11px}

.knowledge-tools{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}.knowledge-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.knowledge-card{display:grid;grid-template-columns:42px minmax(0,1fr);gap:13px;min-height:150px;padding:18px;border:1px solid #d7d7cf;background:#fff;text-align:left;font:inherit;cursor:pointer}.knowledge-card:hover{border-color:#bbbcb7;box-shadow:var(--shadow)}.knowledge-card.featured{border-top:4px solid var(--vahb-orange)}.knowledge-mark{display:grid;place-items:center;width:38px;height:38px;background:var(--vahb-blue);color:#fff;font-size:16px;font-weight:800}.knowledge-card.featured .knowledge-mark{background:var(--vahb-orange)}.knowledge-card small{display:block;color:var(--vahb-orange);font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.knowledge-card strong{display:block;margin-top:5px;color:var(--vahb-blue);font-size:15px;line-height:1.25}.knowledge-card p{margin:7px 0 0;color:#6d6d6d;font-size:10px;line-height:1.45}.knowledge-card em{display:block;margin-top:11px;color:var(--vahb-blue);font-size:9px;font-style:normal;font-weight:800}.knowledge-article{padding:38px 42px 44px}.knowledge-summary{margin-top:16px;padding:15px 17px;border-left:4px solid var(--vahb-orange);background:var(--vahb-nav);color:#555;font-size:13px;line-height:1.6}.knowledge-body{margin-top:22px;color:#555;font-size:13px;line-height:1.75}.knowledge-body p{margin:0}.knowledge-article>small{display:block;margin-top:24px;padding-top:15px;border-top:1px solid var(--vahb-line);color:#888;font-size:9px}

.form-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-two>div{min-width:0}.textarea-small{min-height:80px!important}.textarea-large{min-height:220px!important}.admin-current-file{margin:7px 0 11px;padding:10px 12px;background:var(--vahb-nav);border-left:4px solid var(--vahb-orange);font-size:10px;color:#666}.admin-current-file strong{color:var(--vahb-blue)}

@media(max-width:1180px){.knowledge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.main-nav a{padding-inline:13px;font-size:14px}}
@media(max-width:820px){.site-alert>span:last-child{display:grid;gap:3px}.site-alert strong{white-space:normal}.docs-v11,.knowledge-grid{grid-template-columns:1fr}.knowledge-tools{align-items:stretch;flex-direction:column}.document-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.document-modal-panel,.knowledge-modal-panel{max-height:calc(100vh - 20px)}.pdf-preview{padding:12px}.pdf-preview iframe{height:58vh}.form-two{grid-template-columns:1fr}}
@media(max-width:600px){.alert-stack{width:calc(100% - 28px);padding-top:8px}.site-alert{grid-template-columns:28px minmax(0,1fr);padding:9px}.site-alert-icon{width:24px;height:24px}.document-meta-grid{grid-template-columns:1fr}.document-modal-head,.version-history,.knowledge-article{padding-left:20px;padding-right:20px}.document-modal-head h2,.knowledge-article h2{font-size:24px}.doc-main{grid-template-columns:40px minmax(0,1fr) 14px;padding:14px}.doc-card-actions{justify-content:flex-start}.knowledge-card{min-height:0}}

/* v12 — HR, afwezigheid, jubilea en onboarding */
.calendar-event.anniversary{background:#fff4e5;border-left-color:var(--vahb-orange);color:#7d4c00;font-weight:700}
.calendar-event.absence{background:#f2f2f2;border-left-color:#777;color:#555}
.calendar-legend .legend-anniversary{background:#fff4e5;border:1px solid var(--vahb-orange)}
.calendar-legend .legend-absence{background:#777}
.upcoming-item.anniversary .upcoming-date{background:var(--vahb-orange);border-bottom-color:var(--vahb-blue)}
.upcoming-item.anniversary .upcoming-copy small{color:var(--vahb-orange)}
.upcoming-item.absence .upcoming-date{background:#6a6a6a;border-bottom-color:var(--vahb-blue)}
.upcoming-item.absence .upcoming-copy small{color:#666}
.today-item.anniversary .today-dot{background:var(--vahb-orange)}
.today-item.absence .today-dot{background:#777}

.hr-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.hr-card{background:#fff;border:1px solid var(--vahb-line);border-top:4px solid var(--vahb-blue);min-width:0}
.hr-card:nth-child(2){border-top-color:var(--vahb-orange)}
.hr-card:nth-child(3){border-top-color:var(--vahb-orange)}
.hr-card-head{display:flex;align-items:center;gap:12px;padding:17px 18px;border-bottom:1px solid var(--vahb-line)}
.hr-card-head small{display:block;color:#888;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:3px}
.hr-card-head h3{margin:0;color:var(--vahb-blue);font-size:18px}
.hr-icon{display:grid;place-items:center;min-width:42px;height:42px;padding:0 7px;background:var(--vahb-blue);color:#fff;font-size:8px;font-weight:900;letter-spacing:.04em;border-bottom:3px solid var(--vahb-orange)}
.hr-card:nth-child(2) .hr-icon,.hr-card:nth-child(3) .hr-icon{background:var(--vahb-orange);border-bottom-color:var(--vahb-blue)}
.hr-list{display:grid}
.hr-list-row{display:grid;grid-template-columns:74px minmax(0,1fr);gap:12px;align-items:center;padding:12px 16px;border:0;border-bottom:1px solid #ededeb;background:#fff;text-align:left;font:inherit;width:100%}
button.hr-list-row{cursor:pointer}.hr-list-row:last-child{border-bottom:0}button.hr-list-row:hover{background:#fafaf7}
.hr-list-row>span:last-child{display:grid;gap:2px;min-width:0}.hr-list-row strong{color:var(--vahb-blue);font-size:11px}.hr-list-row small{color:#777;font-size:9px;line-height:1.35}
.hr-date{color:var(--vahb-orange);font-size:9px;font-weight:800;text-transform:uppercase}
.hr-person-row{grid-template-columns:42px minmax(0,1fr)}
.hr-person-row .mini-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;overflow:hidden;background:var(--vahb-nav);color:var(--vahb-blue);font-size:10px;font-weight:800}
.hr-person-row .mini-avatar img{width:100%;height:100%;object-fit:cover}
.hr-privacy-note{margin:14px 0 0;padding:11px 14px;background:#f7f7f4;border-left:4px solid var(--vahb-blue);font-size:10px;line-height:1.5;color:#666}
.profile-facts{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:2px}
.profile-fact{padding:11px 12px;background:var(--vahb-nav);border-left:3px solid var(--vahb-orange)}
.profile-fact b{display:block;color:#777;font-size:8px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px}.profile-fact span{display:block;color:var(--vahb-blue);font-size:11px;font-weight:700}

.field-help{display:block;margin-top:5px;color:#888;font-size:9px;line-height:1.35;text-transform:none;letter-spacing:0;font-weight:400}
.admin-subhead{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:18px;padding:3px 0 12px;border-bottom:1px solid var(--vahb-line)}
.admin-subhead h2{margin:2px 0 4px;color:var(--vahb-blue);font-size:26px}.admin-subhead p{margin:0}
.hr-admin-second{margin-top:22px;padding-top:22px;border-top:1px solid var(--vahb-line)}
.onboarding-default-box{margin-top:18px;padding:15px;background:var(--vahb-nav);border-left:4px solid var(--vahb-orange)}
.onboarding-default-box strong{color:var(--vahb-blue);font-size:12px}.onboarding-default-box p{margin:5px 0 12px;color:#666;font-size:10px;line-height:1.45}.onboarding-default-box .btn{margin-top:0}
.admin-check-inline{margin-top:31px!important;padding:10px 0}
.list-card-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.list-card-title-row h2{margin-bottom:14px}.admin-progress-badge{padding:5px 8px;background:var(--vahb-nav);color:var(--vahb-blue);font-size:9px;font-weight:800}
.onboarding-row.is-done .row-info{opacity:.58}.onboarding-row.is-done .row-info strong{text-decoration:line-through;text-decoration-thickness:1px}

@media(max-width:1000px){.hr-overview-grid{grid-template-columns:1fr 1fr}.hr-overview-grid .hr-card:last-child{grid-column:1/-1}}
@media(max-width:700px){.hr-overview-grid{grid-template-columns:1fr}.hr-overview-grid .hr-card:last-child{grid-column:auto}.profile-facts{grid-template-columns:1fr}.hr-list-row{grid-template-columns:64px minmax(0,1fr)}}
@media(max-width:600px){.form-two{grid-template-columns:1fr}.admin-check-inline{margin-top:12px!important}.row{flex-direction:column}.row .form-actions{width:100%;flex-wrap:wrap}}

/* v13 accounts, uitnodigingen en MFA */
.auth-shell{min-height:calc(100vh - 74px);display:grid;place-items:center;padding:48px 20px;background:linear-gradient(135deg,#f7f7f3,#efefe4)}
.auth-card{width:min(100%,520px);background:#fff;border:1px solid #ddd;border-top:5px solid #243588;border-radius:8px;padding:34px;box-shadow:0 18px 48px rgba(36,53,136,.10)}
.auth-card h1{margin:5px 0 8px;color:#243588;font-size:30px}.auth-card p{color:#666;line-height:1.55}.auth-logo{height:54px;width:auto;margin-bottom:18px}.auth-form{display:grid;gap:14px;margin-top:24px}.auth-form label{font-weight:700;color:#454545}.auth-form input,.auth-form select{width:100%;box-sizing:border-box;border:1px solid #ccc;border-radius:4px;padding:12px 13px;font:inherit}.auth-form input:focus{outline:2px solid rgba(36,53,136,.18);border-color:#243588}.auth-status{min-height:22px;font-size:14px}.auth-status.error{color:#b42318}.auth-status.ok{color:#166534}.auth-help{font-size:13px;color:#777}.auth-links{display:flex;gap:16px;flex-wrap:wrap;margin-top:18px;font-size:14px}.auth-links a{color:#243588;font-weight:700}.mfa-qr{display:flex;justify-content:center;background:#fff;border:1px solid #ddd;border-radius:6px;padding:16px;margin:18px 0}.mfa-qr img{width:220px;height:220px;max-width:100%}.secret-box{background:#f5f5f0;border:1px solid #ddd;border-radius:5px;padding:12px;font-family:monospace;letter-spacing:.08em;word-break:break-all;text-align:center}.recovery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:18px 0}.recovery-grid code{background:#f5f5f0;padding:9px;border-radius:4px;text-align:center}.account-chip{display:flex;align-items:center;gap:8px;text-decoration:none;color:#243588;font-weight:700;font-size:14px}.account-chip .avatar-mini{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#243588;color:white;font-size:11px}.user-role-badge{display:inline-flex;padding:3px 8px;border-radius:999px;background:#efefe4;color:#243588;font-size:12px;font-weight:700}.auth-security-note{border-left:4px solid #e68000;background:#fff8ed;padding:12px 14px;margin:16px 0;font-size:14px}.user-admin-row{align-items:flex-start}.user-admin-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.user-admin-actions select{padding:8px;border:1px solid #ccc;border-radius:4px}.admin-auth-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border:1px solid #d8dbe8;background:#f7f8fc;border-radius:5px;margin-bottom:14px;font-size:14px}.audit-list{max-height:520px;overflow:auto}.audit-row{padding:10px 0;border-bottom:1px solid #eee}.audit-row small{display:block;color:#777;margin-top:3px}.smtp-status{padding:10px 12px;border-radius:5px;background:#f5f5f0;margin-bottom:14px}.smtp-status.good{border-left:4px solid #2e7d32}.smtp-status.bad{border-left:4px solid #e68000}.activation-link-box{margin-top:12px;padding:10px;background:#f5f5f0;border:1px dashed #bbb;border-radius:4px;word-break:break-all;font-size:12px}.hidden-v13{display:none!important}
@media(max-width:620px){.auth-card{padding:24px}.recovery-grid{grid-template-columns:1fr}.user-admin-actions{justify-content:flex-start}.admin-auth-banner{align-items:flex-start;flex-direction:column}}

/* v14 — aanvragen, formulieren en workflow */
.request-dashboard-card{border-top:4px solid var(--vahb-orange)}
.request-portal{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr);gap:20px;align-items:start}
.request-form-card,.request-list-card{background:#fff;border:1px solid var(--vahb-line);padding:22px;box-shadow:0 2px 0 rgba(36,53,136,.02)}
.request-form-card{border-top:4px solid var(--vahb-blue)}.request-list-card{border-top:4px solid var(--vahb-orange)}
.request-card-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--vahb-line)}
.request-card-head small{display:block;color:#888;font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;margin-bottom:4px}.request-card-head h3{margin:0;color:var(--vahb-blue);font-size:21px}.request-card-head select{width:auto;min-width:130px;margin:0;padding:8px 10px}
.request-form-card form{display:grid;gap:0}.request-form-card label,.request-comment-form label{display:block;margin:12px 0 6px;color:#555;font-size:11px;font-weight:700}.request-form-card input,.request-form-card select,.request-form-card textarea,.request-comment-form textarea{width:100%;border:1px solid #cfcfc8;border-radius:3px;padding:10px 11px;background:#fff;color:#444;font:inherit;font-size:13px}.request-form-card textarea,.request-comment-form textarea{resize:vertical}.field-hint{font-size:9px;color:#888;font-weight:400}.request-login-notice{display:flex;align-items:center;gap:16px;padding:18px 20px;background:#fff;border:1px solid var(--vahb-line);border-left:5px solid var(--vahb-orange)}.request-login-notice strong{color:var(--vahb-blue)}.request-login-notice span{flex:1;font-size:12px;color:#777}
.my-requests-list{display:grid;gap:8px}.my-request-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto 18px;gap:10px;align-items:center;width:100%;padding:12px 11px;border:1px solid #e1e1dc;background:#fff;text-align:left;cursor:pointer;font:inherit}.my-request-row:hover{border-color:#c8c8c0;background:#fbfbf8}.request-id{font-size:10px;color:var(--vahb-orange);font-weight:800}.request-row-main{display:grid;gap:3px;min-width:0}.request-row-main strong{color:var(--vahb-blue);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.request-row-main small{color:#777;font-size:9px;line-height:1.35}.request-arrow{color:var(--vahb-blue);font-size:20px}
.request-status{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:800;background:#efefe4;color:#555}.status-submitted{background:#edf0ff;color:#243588}.status-in_review{background:#fff4e5;color:#8a5200}.status-approved{background:#eaf6ed;color:#1f6b35}.status-rejected{background:#fdecec;color:#9b2626}.status-completed{background:#e8f4f6;color:#17636c}.status-cancelled{background:#efefef;color:#666}
.request-modal-panel{width:min(760px,calc(100% - 32px));padding:0;overflow:auto;max-height:calc(100vh - 40px)}.request-modal-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:26px 28px 18px;border-bottom:1px solid var(--vahb-line)}.request-modal-head h2{margin:5px 0;color:var(--vahb-blue);font-size:28px}.request-modal-head p{margin:0;color:#777;font-size:11px}.request-description{margin:20px 28px;padding:17px;background:#f8f8f5;border-left:4px solid var(--vahb-blue);font-size:12px;line-height:1.6;color:#555}.request-modal-actions{display:flex;gap:8px;padding:0 28px}.request-history{padding:18px 28px}.request-history h3{margin:0 0 13px;color:var(--vahb-blue);font-size:17px}.request-history-row{display:grid;grid-template-columns:15px minmax(0,1fr);gap:10px;position:relative;padding:0 0 15px}.request-history-row:not(:last-child):before{content:"";position:absolute;left:5px;top:10px;bottom:-2px;width:1px;background:#ddd}.history-dot{width:11px;height:11px;border-radius:50%;background:var(--vahb-blue);border:3px solid #eef0fb;z-index:1}.request-history-row strong{display:block;color:#555;font-size:10px}.request-history-row small{display:block;margin-top:2px;color:#999;font-size:8px}.request-history-row p{margin:5px 0 0;font-size:11px;line-height:1.45;color:#666}.request-history-row.internal{background:#fff8ed;padding:8px 8px 12px;border-left:3px solid var(--vahb-orange)}.request-comment-form{padding:0 28px 28px}.request-comment-form .form-actions{margin-top:10px}
.request-admin-layout{display:grid;grid-template-columns:minmax(430px,1.05fr) minmax(420px,.95fr);gap:18px;align-items:start}.request-admin-list-card,.request-admin-detail-card{min-height:560px}.request-admin-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;padding-bottom:14px;border-bottom:1px solid var(--vahb-line);margin-bottom:14px}.request-admin-head h2{margin:2px 0 0;color:var(--vahb-blue);font-size:27px}.request-admin-filters{display:flex;gap:7px}.request-admin-filters select{width:auto;min-width:130px;padding:8px}.request-admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}.request-admin-stats>div{background:var(--vahb-nav);padding:10px;border-bottom:3px solid var(--vahb-blue)}.request-admin-stats strong{display:block;color:var(--vahb-blue);font-size:22px}.request-admin-stats span{font-size:8px;color:#777;text-transform:uppercase;font-weight:800;letter-spacing:.05em}.admin-request-list{display:grid;gap:7px;max-height:720px;overflow:auto}.admin-request-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:9px;align-items:center;padding:11px;border:1px solid #deded8;background:#fff;text-align:left;font:inherit;cursor:pointer}.admin-request-row:hover,.admin-request-row.selected{border-color:#aeb5da;background:#f8f9fd}.request-admin-detail-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.request-admin-detail-head h2{margin:4px 0 5px;color:var(--vahb-blue);font-size:25px}.request-admin-detail-head p{margin:0;color:#777;font-size:10px}.request-admin-meta{margin:14px 0;padding:10px;background:var(--vahb-nav);font-size:10px;color:#666;border-left:4px solid var(--vahb-orange)}.request-divider{border:0;border-top:1px solid var(--vahb-line);margin:20px 0}.request-admin-detail-card form label{display:block;margin:11px 0 5px;color:#555;font-size:10px;font-weight:700}.request-admin-detail-card form select,.request-admin-detail-card form textarea{width:100%;border:1px solid #ccc;padding:9px;font:inherit}.request-admin-detail-card .request-description{margin:16px 0}.request-admin-detail-card .request-history{padding:18px 0 0}
@media(max-width:1100px){.request-portal,.request-admin-layout{grid-template-columns:1fr}.request-admin-detail-card{min-height:0}}
@media(max-width:700px){.request-card-head,.request-admin-head,.request-modal-head{align-items:flex-start;flex-direction:column}.request-card-head select{width:100%}.my-request-row{grid-template-columns:38px minmax(0,1fr) auto}.request-arrow{display:none}.request-admin-filters{width:100%;flex-direction:column}.request-admin-filters select{width:100%}.request-admin-stats{grid-template-columns:repeat(2,1fr)}.request-login-notice{align-items:flex-start;flex-direction:column}.request-modal-head,.request-description,.request-modal-actions,.request-history,.request-comment-form{margin-left:0;margin-right:0;padding-left:20px;padding-right:20px}}

/* VAHB v15 - accountheader + complete MFA UX */
.header-account-area{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}
.account-chip{display:flex;align-items:center;gap:9px;min-width:116px;max-width:180px;padding:7px 8px;text-decoration:none;color:var(--vahb-blue);border-radius:4px;transition:background .16s ease,color .16s ease}
.account-chip:hover{background:#f6f7fb}.account-chip.is-logged-in{background:#f8f8f5}.account-chip.needs-mfa{background:#fff7e9}
.account-icon{width:26px;height:26px;flex:0 0 26px;display:grid;place-items:center;color:var(--vahb-blue)}
.account-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round}
.account-chip.is-logged-in .account-icon{background:var(--vahb-blue);color:#fff;border-radius:50%}.account-chip.needs-mfa .account-icon{color:var(--vahb-orange)}
.account-copy{display:block;min-width:0;line-height:1.1}.account-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--vahb-blue)}.account-copy small{display:block;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#838383;font-size:9px;font-weight:400}
.header-account-area .header-admin{align-self:auto;height:50px;min-width:55px;padding:0 7px;border-left:1px solid #ecece7}

.auth-page-v15{min-height:100vh;background:var(--vahb-nav)}
.auth-brandbar{height:76px;background:#fff;border-bottom:1px solid var(--vahb-line);display:flex;align-items:center;justify-content:space-between;padding:0 max(28px,calc((100vw - 1160px)/2));gap:24px}
.auth-brandlink img{width:246px;max-width:52vw;height:auto;display:block}.auth-brandbar>span{font-size:12px;font-weight:700;color:var(--vahb-blue)}
.auth-shell-v15{min-height:calc(100vh - 76px);padding:46px 20px;background:linear-gradient(145deg,#f6f6f1 0%,#efefe4 62%,#f7f7f3 100%)}
.auth-card-v15{width:min(100%,530px);border-radius:3px;border:1px solid #d8d8d0;border-top:5px solid var(--vahb-orange);padding:38px 42px 36px;box-shadow:0 16px 44px rgba(36,53,136,.09)}
.auth-card-v15 h1{font-size:32px;line-height:1.08;margin:5px 0 12px}.auth-card-v15>p{margin:0;color:#707070;font-size:14px;line-height:1.6}
.auth-icon-badge{width:45px;height:45px;display:grid;place-items:center;background:var(--vahb-blue);margin-bottom:19px}.auth-icon-badge.lock{background:var(--vahb-orange)}.auth-icon-badge svg{width:25px;height:25px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.auth-form input,.auth-form select{min-height:44px}.password-field{position:relative}.password-field input{padding-right:82px!important}.password-toggle{position:absolute;right:5px;top:5px;height:34px;padding:0 9px;border:0;background:#f4f4ef;color:var(--vahb-blue);font-size:10px;font-weight:700;cursor:pointer}.password-toggle:hover{background:var(--vahb-nav)}
.auth-submit{width:100%;min-height:44px;justify-content:space-between;margin-top:2px}.auth-submit:disabled{opacity:.55;cursor:wait}
.auth-security-row{display:grid;grid-template-columns:30px 1fr;gap:12px;margin-top:24px;padding:15px 16px;background:#f8f8f4;border-left:4px solid var(--vahb-blue)}.auth-security-row svg{width:25px;height:25px;fill:none;stroke:var(--vahb-blue);stroke-width:1.8}.auth-security-row strong{display:block;color:var(--vahb-blue);font-size:12px}.auth-security-row span{display:block;margin-top:4px;color:#777;font-size:11px;line-height:1.45}
.auth-stepper{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:8px;margin-bottom:28px;color:#aaa;font-size:10px;font-weight:700}.auth-stepper span{display:flex;align-items:center;gap:5px;white-space:nowrap}.auth-stepper span b{font-weight:700}.auth-stepper i{height:1px;background:#ddd}.auth-stepper span.active{color:var(--vahb-orange)}.auth-stepper span.done{color:var(--vahb-blue)}.auth-stepper span.done+i{background:var(--vahb-blue)}
.auth-card-mfa{width:min(100%,610px)}.mfa-setup-panel{margin:22px 0 4px}.mfa-setup-grid{display:grid;grid-template-columns:200px 1fr;gap:22px;align-items:center;background:#fafaf7;border:1px solid #deded7;padding:17px}.mfa-setup-grid .mfa-qr{padding:8px;margin:0}.mfa-setup-grid .mfa-qr img{width:180px;height:180px}.mfa-setup-copy strong{display:block;color:var(--vahb-blue);font-size:12px}.mfa-setup-copy p{margin:5px 0 16px;color:#737373;font-size:11px;line-height:1.45}.mfa-setup-copy p:last-child{margin-bottom:0}.manual-secret{margin:10px 0 0;border:1px solid #ddd;padding:10px 12px;background:#fff}.manual-secret summary{cursor:pointer;color:var(--vahb-blue);font-size:11px;font-weight:700}.manual-secret p{font-size:11px;color:#777}.manual-secret .secret-box{font-size:12px}
.mfa-code-form{margin-top:21px}.mfa-code-input{text-align:center;font-size:24px!important;font-weight:700;letter-spacing:.24em;color:var(--vahb-blue)!important;font-variant-numeric:tabular-nums}.auth-text-button{border:0;background:transparent;color:var(--vahb-blue);font:inherit;font-size:11px;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer;margin:0 auto;padding:5px}.recovery-panel h2{color:var(--vahb-blue);margin:8px 0}.success-mark{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#eff7ef;color:#24722a;font-size:25px;font-weight:700}.recovery-actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 18px}

.account-page{padding:52px 0 72px}.account-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-bottom:22px;border-bottom:1px solid var(--vahb-line);margin-bottom:24px}.account-heading h1{margin:0;color:var(--vahb-blue);font-size:36px}.account-heading p{margin:8px 0 0;color:#777}.security-badge{display:flex;align-items:center;gap:8px;padding:9px 12px;background:#f4f6fb;color:var(--vahb-blue);font-size:11px;font-weight:700}.security-dot{width:8px;height:8px;border-radius:50%;background:#2f8a3d;box-shadow:0 0 0 3px #e5f3e7}
.account-grid-v15{display:grid;grid-template-columns:1fr 1fr;gap:18px}.account-panel{background:#fff;border:1px solid var(--vahb-line);border-top:4px solid var(--vahb-blue);padding:24px}.account-panel:first-child{border-top-color:var(--vahb-orange)}.account-panel-head{display:flex;align-items:center;gap:13px;padding-bottom:17px;border-bottom:1px solid #ecece7}.account-panel-head small{display:block;color:var(--vahb-orange);text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:800}.account-panel-head h2{margin:4px 0 0;color:var(--vahb-blue);font-size:19px}.account-panel-icon{width:38px;height:38px;display:grid;place-items:center;background:var(--vahb-nav)}.account-panel-icon svg{width:21px;height:21px;fill:none;stroke:var(--vahb-blue);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.security-status-list{display:grid;margin:16px 0}.security-status-list>div{display:flex;justify-content:space-between;gap:18px;padding:11px 0;border-bottom:1px solid #eee;font-size:12px}.security-status-list span{color:#777}.security-status-list strong{color:var(--vahb-blue);text-align:right}.status-good{color:#287a32!important}.status-warn{color:var(--vahb-orange)!important}.panel-help{font-size:11px!important;color:#777!important;line-height:1.5!important}.account-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.account-form{margin-top:18px}.account-bottom-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.logout-btn{background:#fff;color:#8b2e26;border:1px solid #d9bcb8}.logout-btn:hover{background:#fff5f4;color:#8b2e26}
.security-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px}.security-modal-backdrop{position:absolute;inset:0;background:rgba(24,31,65,.55)}.security-modal-card{position:relative;z-index:1;width:min(100%,490px);max-height:90vh;overflow:auto;background:#fff;border-top:5px solid var(--vahb-orange);padding:28px;box-shadow:0 22px 60px rgba(0,0,0,.23)}.security-modal-card h2{margin:3px 0 9px;color:var(--vahb-blue)}.security-modal-card>p{color:#717171;font-size:13px;line-height:1.55}.security-modal-close{position:absolute;right:12px;top:10px;border:0;background:transparent;font-size:27px;color:#777;cursor:pointer}

@media(max-width:1100px){.header-top{grid-template-columns:245px minmax(260px,1fr) auto}.header-meta{display:none}.header-account-area{grid-column:3}.header-account-area .header-admin{min-width:52px}}
@media(max-width:820px){.header-top{grid-template-columns:210px minmax(180px,1fr) auto}.account-copy small{display:none}.account-chip{min-width:auto;max-width:130px}.header-account-area .header-admin span{display:none}.account-grid-v15{grid-template-columns:1fr}}
@media(max-width:600px){.header-top{grid-template-columns:minmax(170px,1fr) auto;gap:8px}.header-search{display:none}.header-account-area{grid-column:2}.official-logo img{width:180px}.account-copy{display:none}.account-chip{padding:5px;min-width:36px}.header-account-area .header-admin{height:42px;min-width:38px;padding:0 4px}.auth-brandbar{height:66px;padding:0 18px}.auth-brandlink img{width:210px}.auth-brandbar>span{display:none}.auth-shell-v15{min-height:calc(100vh - 66px);padding:24px 12px}.auth-card-v15{padding:27px 22px}.mfa-setup-grid{grid-template-columns:1fr}.mfa-setup-grid .mfa-qr{justify-self:center}.auth-stepper span b{display:none}.account-page{width:min(100% - 24px,1530px);padding-top:32px}.account-heading{align-items:flex-start;flex-direction:column}.account-heading h1{font-size:30px}.account-panel{padding:19px}.security-status-list>div{align-items:flex-start;flex-direction:column;gap:4px}.security-status-list strong{text-align:left}.account-bottom-actions{justify-content:stretch;flex-direction:column}.account-bottom-actions .btn{width:100%}}
.account-menu-wrap{position:relative;min-width:0}.account-chip{border:0;background:transparent;font-family:inherit;text-align:left;cursor:pointer}.account-chevron{margin-left:auto;color:#8a8a8a;font-size:13px;transition:transform .15s ease}.account-chip[aria-expanded="true"] .account-chevron{transform:rotate(180deg)}
.account-menu-panel{position:absolute;right:0;top:calc(100% + 8px);width:250px;background:#fff;border:1px solid var(--vahb-line);border-top:4px solid var(--vahb-orange);box-shadow:0 16px 36px rgba(36,53,136,.16);z-index:150;padding:7px}
.account-menu-user{padding:11px 12px 12px;border-bottom:1px solid #ecece7;margin-bottom:5px}.account-menu-user strong{display:block;color:var(--vahb-blue);font-size:12px}.account-menu-user span{display:block;margin-top:4px;color:#888;font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-menu-panel a,.account-menu-panel button{width:100%;display:flex;align-items:center;min-height:38px;padding:8px 11px;border:0;background:#fff;text-decoration:none;color:#555;font:inherit;font-size:11px;font-weight:700;text-align:left;cursor:pointer}.account-menu-panel a:hover,.account-menu-panel button:hover{background:var(--vahb-nav);color:var(--vahb-blue)}.account-menu-panel button{border-top:1px solid #eee;margin-top:4px;color:#8b2e26}
@media(max-width:600px){.account-chevron{display:none}.account-menu-panel{right:-45px;width:245px}}

/* v16 - Verlofregistratie & contracturen */
.leave-section-head{align-items:center}.leave-year-control{justify-self:end;display:flex;align-items:center;gap:10px;font-size:11px;color:#777}.leave-year-control select{width:104px;min-height:38px;margin:0}
.leave-portal{display:grid;gap:18px}.leave-balance-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.leave-stat{background:#fff;border:1px solid #d8d8d0;border-top:4px solid var(--vahb-blue);padding:18px 16px;min-height:112px}.leave-stat small{display:block;color:#777;font-size:10px;text-transform:uppercase;letter-spacing:.07em;font-weight:700}.leave-stat strong{display:inline-block;margin-top:14px;color:var(--vahb-blue);font-size:29px;line-height:1}.leave-stat>span{margin-left:4px;color:#777;font-size:11px}.leave-stat-primary{border-top-color:var(--vahb-orange);background:#fffaf4}.leave-stat-primary strong{color:var(--vahb-orange)}.leave-stat-carry{border-top-color:#7380bd}
.leave-detail-grid{display:grid;grid-template-columns:.8fr 1fr 1.25fr;gap:14px}.leave-info-card{background:#fff;border:1px solid #d8d8d0;padding:21px}.leave-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;border-bottom:1px solid #ecece7;padding-bottom:13px;margin-bottom:13px}.leave-card-head small{display:block;color:var(--vahb-orange);font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.leave-card-head h3{margin:4px 0 0;color:var(--vahb-blue);font-size:18px}.leave-card-head a{font-size:10px;font-weight:700;color:var(--vahb-blue);text-decoration:none}.leave-contract-main{display:flex;align-items:baseline;gap:6px}.leave-contract-main strong{font-size:30px;color:var(--vahb-blue)}.leave-contract-main span{font-size:11px;color:#777}.leave-contract-detail>small{display:block;margin-top:12px;color:#888;font-size:10px}.leave-workweek{display:flex;gap:5px;flex-wrap:wrap;margin-top:13px}.leave-workweek>span:not(.leave-config-warning){display:grid;place-items:center;min-width:43px;padding:7px 6px;background:var(--vahb-nav);font-size:10px;color:#666}.leave-workweek b{display:block;color:var(--vahb-blue);font-size:9px;margin-bottom:3px}.leave-config-warning{font-size:11px;color:var(--vahb-orange);line-height:1.5}.leave-calc-row{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid #eee;font-size:11px}.leave-calc-row span{color:#777}.leave-calc-row strong{color:var(--vahb-blue)}.leave-calc-row.total{padding-top:10px;font-weight:700}.leave-calculation>small{display:block;margin-top:10px;color:#888;font-size:9px;line-height:1.5}.leave-history{display:grid}.leave-history-row{display:grid;grid-template-columns:78px 1fr;gap:11px;padding:10px 0;border-bottom:1px solid #eee}.leave-history-date{font-size:9px;color:var(--vahb-orange);font-weight:700}.leave-history-row strong{display:block;color:var(--vahb-blue);font-size:11px}.leave-history-row small{display:block;margin-top:3px;color:#777;font-size:9px}.leave-policy-note{margin:0;padding:12px 15px;background:#f6f6f1;border-left:4px solid var(--vahb-orange);font-size:10px;line-height:1.55;color:#777}.leave-dashboard-mini{display:grid;gap:7px}.leave-mini-balance{display:flex;align-items:baseline;gap:6px;padding-bottom:9px;border-bottom:1px solid #eee}.leave-mini-balance strong{font-size:23px;color:var(--vahb-orange)}.leave-mini-balance span{font-size:9px;color:#777}.leave-mini-row{display:flex;justify-content:space-between;font-size:10px;color:#777}.leave-mini-row b{color:var(--vahb-blue)}
.leave-hours-field{margin-top:10px}.leave-hours-input{display:flex;align-items:center;border:1px solid #ccc;background:#fff}.leave-hours-input input{border:0!important;margin:0!important;box-shadow:none!important}.leave-hours-input span{padding:0 12px;color:#777;font-size:11px;border-left:1px solid #ddd}.leave-hours-field .field-hint{display:block;margin-top:5px;color:#888;font-size:9px}

.leave-admin-shell{display:grid;gap:18px}.leave-admin-head{display:flex;justify-content:space-between;align-items:flex-end;gap:25px}.leave-admin-head h2{margin:0;color:var(--vahb-blue)}.leave-admin-year{display:grid;gap:5px;font-size:10px;color:#777}.leave-admin-year select{min-width:110px;margin:0}.leave-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.leave-admin-grid-lower{grid-template-columns:.72fr 1.28fr}.input-suffix{display:flex;align-items:stretch;border:1px solid #d2d2cc;background:#fff}.input-suffix input{border:0!important;margin:0!important;box-shadow:none!important}.input-suffix span{display:flex;align-items:center;padding:0 10px;border-left:1px solid #deded8;color:#777;font-size:9px;white-space:nowrap}.full-width{width:100%;min-height:42px}.leave-week-fields{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.leave-week-fields label{margin:0;font-size:9px;text-align:center;color:#777}.leave-week-fields input{margin-top:5px!important;padding:8px 5px!important;text-align:center}.leave-policy-warning{margin-top:15px;padding:11px 13px;border-left:4px solid var(--vahb-orange);background:#fff8ef;color:#7a6b58;font-size:9px;line-height:1.5}.leave-balance-admin-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:13px}.leave-balance-admin-head h3{margin:0;color:var(--vahb-blue)}.leave-admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}.leave-admin-stats>div{padding:10px;background:var(--vahb-nav);border-bottom:3px solid var(--vahb-blue)}.leave-admin-stats strong{display:block;color:var(--vahb-blue);font-size:17px}.leave-admin-stats span{display:block;margin-top:3px;color:#777;font-size:8px}.leave-table-wrap{overflow:auto;border:1px solid #ddd}.leave-admin-table{width:100%;border-collapse:collapse;font-size:10px;min-width:850px}.leave-admin-table th{text-align:left;padding:10px 9px;background:var(--vahb-blue);color:#fff;font-size:8px;text-transform:uppercase;letter-spacing:.05em}.leave-admin-table td{padding:10px 9px;border-bottom:1px solid #e5e5df;color:#666}.leave-admin-table tr{cursor:pointer}.leave-admin-table tr:hover,.leave-admin-table tr.selected{background:#fff8ed}.leave-admin-table td:first-child strong{display:block;color:var(--vahb-blue)}.leave-admin-table td:first-child small{display:block;margin-top:2px;color:#888}.leave-admin-table td.negative strong{color:var(--danger)}.leave-adjustment-list{margin-top:17px}.leave-adjustment-list h4{color:var(--vahb-blue);margin:0 0 8px}.leave-adjustment-row{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid #eee}.leave-adjustment-row strong{display:block;color:var(--vahb-blue);font-size:10px}.leave-adjustment-row small{display:block;color:#777;font-size:8px;margin-top:2px}.leave-adjustment-row .btn{padding:7px 9px;font-size:8px}
@media(max-width:1180px){.leave-balance-grid{grid-template-columns:repeat(3,1fr)}.leave-detail-grid{grid-template-columns:1fr 1fr}.leave-history-card{grid-column:1/-1}.leave-admin-grid,.leave-admin-grid-lower{grid-template-columns:1fr}}
@media(max-width:720px){.leave-balance-grid{grid-template-columns:repeat(2,1fr)}.leave-detail-grid{grid-template-columns:1fr}.leave-history-card{grid-column:auto}.leave-section-head{grid-template-columns:1fr}.leave-year-control{justify-self:start}.leave-admin-head{align-items:flex-start;flex-direction:column}.leave-week-fields{grid-template-columns:repeat(4,1fr)}.leave-admin-stats{grid-template-columns:repeat(2,1fr)}.leave-balance-admin-head{flex-direction:column}.leave-balance-admin-head .btn{width:100%}}

/* v17 - self-service accounts, verplichte MFA en account lifecycle */
.auth-inline-link{display:flex;justify-content:flex-end;margin-top:7px}.auth-inline-link a,.auth-bottom-link a{font-size:10px;font-weight:700;color:var(--vahb-blue);text-decoration:none}.auth-inline-link a:hover,.auth-bottom-link a:hover{text-decoration:underline;color:var(--vahb-orange)}
.auth-selfservice{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:22px 0 4px;padding:16px;background:var(--vahb-nav);border-left:4px solid var(--vahb-orange)}.auth-selfservice strong{display:block;color:var(--vahb-blue);font-size:12px}.auth-selfservice span{display:block;margin-top:4px;color:#777;font-size:9px;line-height:1.45}.auth-selfservice .btn{flex:0 0 auto;margin:0}
.auth-security-row a{color:var(--vahb-blue);font-weight:700;text-decoration:none}.auth-security-row a:hover{text-decoration:underline}.auth-success-box{margin:14px 0 19px;padding:13px 15px;background:#edf8ef;border-left:4px solid #438b52;color:#366640;font-size:10px;line-height:1.5}.auth-warning-box{display:flex;gap:12px;align-items:flex-start;margin:18px 0;padding:14px 15px;background:#fff7e9;border-left:4px solid var(--vahb-orange)}.auth-warning-box strong{color:var(--vahb-orange);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.auth-warning-box span{color:#70675b;font-size:10px;line-height:1.45}.auth-form-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.auth-complete-panel{padding:18px 0 4px;text-align:center}.auth-complete-panel h2{margin:10px 0 7px;color:var(--vahb-blue)}.auth-complete-panel p{max-width:480px;margin:0 auto 18px;color:#6d6d6d;font-size:11px;line-height:1.65}.auth-complete-panel .btn{display:inline-flex}.auth-bottom-link{margin-top:20px;padding-top:16px;border-top:1px solid #e4e4de}
.account-request-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.lifecycle-list{max-height:500px;overflow:auto}.lifecycle-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid #ecece7}.lifecycle-row>div:first-child{min-width:0}.lifecycle-row strong{display:block;color:var(--vahb-blue);font-size:11px}.lifecycle-row small{display:block;margin-top:4px;color:#858585;font-size:9px;line-height:1.45}.lifecycle-row p{margin:7px 0 0;color:#666;font-size:10px;line-height:1.5}.lifecycle-actions{display:flex;gap:6px;flex:0 0 auto}.lifecycle-actions .btn{padding:8px 10px;font-size:8px;white-space:nowrap}.lifecycle-state{flex:0 0 auto;padding:5px 8px;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;background:#eee;color:#777}.lifecycle-state.approved{background:#eaf5ec;color:#3c7946}.lifecycle-state.rejected{background:#f8eaea;color:#984343}
@media(max-width:980px){.account-request-admin-grid{grid-template-columns:1fr}}@media(max-width:600px){.auth-form-two{grid-template-columns:1fr}.auth-selfservice{align-items:stretch;flex-direction:column}.auth-selfservice .btn{width:100%;justify-content:center}.lifecycle-row{flex-direction:column}.lifecycle-actions{width:100%;flex-wrap:wrap}.lifecycle-actions .btn{flex:1}}

/* =============================================================
   VAHB v18 — compact dashboard + onderwerpweergave
   ============================================================= */
.compact-home-v18{background:#f6f6f3;color:#2f3138}
.compact-home-v18 .site-header{position:relative;z-index:30}
.compact-home-main{min-height:calc(100vh - 300px)}
.compact-welcome{background:#fff;border-bottom:1px solid #e1e2df}
.compact-welcome-inner{min-height:138px;display:flex;align-items:center;justify-content:space-between;gap:32px;padding-top:26px;padding-bottom:26px}
.compact-welcome h1{margin:5px 0 4px;color:#243588;font-size:clamp(28px,3.2vw,44px);line-height:1.06;font-weight:700;letter-spacing:-.035em}
.compact-welcome p{margin:0;color:#6a6c72;font-size:15px}
.compact-welcome-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.compact-welcome-actions .btn{min-height:44px;display:inline-flex;align-items:center;padding:0 20px}
.compact-dashboard-shell{padding-top:24px;padding-bottom:46px}
.compact-status-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr;gap:16px;align-items:stretch}
.compact-status-card,.compact-content-card{background:#fff;border:1px solid #dedfdc;border-radius:10px;box-shadow:0 4px 18px rgba(25,33,73,.045);overflow:hidden}
.compact-status-card{min-height:222px;padding:20px}
.compact-card-head,.compact-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}
.compact-card-head small{display:block;color:#8a8b8d;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px}
.compact-card-head h2,.compact-section-head h2{margin:0;color:#243588;font-size:20px;line-height:1.15}
.compact-card-head>a,.compact-section-head>a{color:#243588;font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}
.compact-card-head>a:hover,.compact-section-head>a:hover{color:#e68000}
.compact-list{margin-top:12px}
.compact-row{display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 0;border-top:1px solid #ecece8;color:inherit;text-decoration:none}
.compact-row:first-child{border-top:0}
.compact-row small{display:block;color:#85868a;font-size:11px;margin-bottom:1px}
.compact-row strong{display:block;color:#33343a;font-size:14px;line-height:1.25}
.compact-row>b{font-size:20px;color:#a5a6aa;font-weight:400}
.compact-row:hover strong{color:#243588}
.compact-dot{width:7px;height:7px;border-radius:999px;background:#e68000;display:block}
.compact-next{margin-top:8px;padding:10px 12px;border-radius:7px;background:#f1f2ec;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;text-decoration:none;color:#383a40}
.compact-next small{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#7a7b7e;font-weight:700}
.compact-next strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.compact-next span{font-size:12px;color:#6e7074;white-space:nowrap}
.leave-summary-content,.request-summary-content{margin-top:18px}
.leave-big-number{display:flex;align-items:baseline;gap:8px;margin-bottom:16px}
.leave-big-number strong{color:#243588;font-size:32px;line-height:1;font-weight:750;letter-spacing:-.035em}
.leave-big-number span{color:#77797d;font-size:12px}
.leave-mini-stats{display:grid;gap:7px}
.leave-mini-stats span{display:flex;justify-content:space-between;gap:14px;padding-top:7px;border-top:1px solid #ecece8;color:#74767a;font-size:12px}
.leave-mini-stats b{color:#33353b;font-weight:700}
.request-count{display:flex;align-items:baseline;gap:8px;margin-bottom:12px}
.request-count strong{font-size:32px;line-height:1;color:#243588;letter-spacing:-.04em}
.request-count span{font-size:12px;color:#77797d}
.request-mini-row{display:grid;grid-template-columns:7px minmax(0,1fr);gap:9px;align-items:center;border-top:1px solid #ecece8;padding:7px 0}
.request-status-dot{width:7px;height:7px;border-radius:999px;background:#e68000}
.request-mini-row small{display:block;color:#8a8b8f;font-size:10px;text-transform:uppercase;letter-spacing:.04em}
.request-mini-row strong{display:block;color:#34363b;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.compact-text-link{display:inline-block;margin-top:10px;color:#243588;font-size:12px;font-weight:700;text-decoration:none}
.compact-empty{padding:14px 0;color:#77797d;font-size:13px;line-height:1.45}
.compact-empty.inline{padding:4px 0 8px}
.compact-block{margin-top:20px;background:#fff;border:1px solid #dedfdc;border-radius:10px;padding:20px;box-shadow:0 4px 18px rgba(25,33,73,.035)}
.compact-section-head{align-items:flex-end;margin-bottom:15px}
.compact-section-head .eyebrow{font-size:10px;margin-bottom:2px}
.topic-tile-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.topic-tile{min-height:86px;border:1px solid #e1e2de;border-radius:8px;padding:13px;display:flex;align-items:flex-start;gap:11px;color:#303238;text-decoration:none;background:#fafaf8;transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease}
.topic-tile:hover{transform:translateY(-1px);border-color:#bcc3de;box-shadow:0 5px 14px rgba(36,53,136,.08)}
.topic-icon{min-width:39px;height:30px;border-radius:5px;background:#243588;color:#fff;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:800;letter-spacing:.04em}
.topic-tile:nth-child(2) .topic-icon,.topic-tile:nth-child(3) .topic-icon{background:#e68000}
.topic-tile strong{display:block;color:#243588;font-size:14px;margin:1px 0 3px}
.topic-tile small{display:block;color:#7a7c80;font-size:11px;line-height:1.3}
.custom-quick-links{margin-top:13px;padding-top:12px;border-top:1px solid #e9e9e5;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.custom-quick-links>span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#8a8b8d;font-weight:800;margin-right:3px}
.custom-quick-links a{background:#f2f2ec;border-radius:999px;padding:7px 10px;color:#4b4d52;text-decoration:none;font-size:12px;font-weight:650}
.custom-quick-links a:hover{color:#243588;background:#ededf6}
.custom-quick-links b{color:#e68000}
.compact-content-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}
.compact-content-card{padding:20px;min-height:240px}
.summary-news-list,.summary-document-list{margin-top:11px}
.summary-news-row,.summary-doc-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:11px 0;border-top:1px solid #ecece8;text-decoration:none;color:inherit}
.summary-news-row:first-child,.summary-doc-row:first-child{border-top:0}
.summary-news-row small,.summary-doc-row small{display:block;color:#8a8b8e;font-size:10px;text-transform:uppercase;letter-spacing:.035em;margin-bottom:3px}
.summary-news-row strong,.summary-doc-row strong{display:block;color:#33353a;font-size:14px;line-height:1.3}
.summary-news-row p{margin:3px 0 0;color:#727478;font-size:12px;line-height:1.35}
.summary-news-row>b,.summary-doc-row>b{align-self:center;font-size:20px;color:#a6a7aa;font-weight:400}
.summary-news-row:hover strong,.summary-doc-row:hover strong{color:#243588}
.summary-doc-row{grid-template-columns:36px minmax(0,1fr) auto;align-items:center}
.summary-doc-icon{width:34px;height:34px;border-radius:5px;background:#f0f1e8;color:#243588;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:800}
.summary-doc-row em{display:block;margin-top:2px;color:#85868a;font-size:11px;font-style:normal}
.compact-footer{margin-top:0}
.compact-home-v18 .main-nav a.active{color:#243588;font-weight:800;border-bottom:3px solid #e68000}

/* Onderwerppagina's: dezelfde complete v17-functionaliteit, maar slechts één sectie zichtbaar. */
.topic-context{margin-top:22px;background:#fff;border:1px solid #dedfdc;border-radius:8px;padding:11px 14px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:#64666b;font-size:13px}
.topic-context a{color:#243588;text-decoration:none;font-weight:700}
.topic-context span{font-weight:800;color:#33353a}
body.topic-page .topic-hidden{display:none!important}
body.topic-page .content-shell{padding-top:16px}
body.topic-page .content-shell>.section{display:none!important}
body.topic-page .content-shell>.section.topic-active{display:block!important;margin-top:0!important}
body.topic-page .content-shell>.section.topic-active .section-head{margin-top:0}
body.topic-page .dashboard-section{display:none!important}

@media(max-width:1100px){
  .compact-status-grid{grid-template-columns:1.2fr 1fr}.compact-status-card:last-child{grid-column:1/-1;min-height:auto}
  .topic-tile-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
  .compact-welcome-inner{min-height:auto;align-items:flex-start;flex-direction:column;gap:14px;padding-top:22px;padding-bottom:20px}
  .compact-welcome h1{font-size:30px}.compact-welcome-actions{width:100%;justify-content:flex-start}
  .compact-status-grid,.compact-content-grid{grid-template-columns:1fr}.compact-status-card:last-child{grid-column:auto}.compact-status-card{min-height:auto}
  .topic-tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topic-tile{min-height:78px}
  .compact-next{grid-template-columns:auto 1fr}.compact-next span{grid-column:2;white-space:normal}
  .topic-context{margin-top:12px;flex-wrap:wrap}.topic-context span{order:-1;width:100%}
}
@media(max-width:480px){
  .topic-tile-grid{grid-template-columns:1fr}.compact-dashboard-shell{padding-top:14px}.compact-block,.compact-status-card,.compact-content-card{padding:16px}
  .compact-welcome-actions .btn{flex:1;justify-content:center}.leave-big-number strong,.request-count strong{font-size:28px}
}
body.topic-page .main-nav a.active{color:#243588;font-weight:800;border-bottom:3px solid #e68000}

/* v19 · SMTP-beheer */
.smtp-admin-grid{align-items:start}.smtp-inline-link{margin-top:24px;padding-top:18px;border-top:1px solid var(--vahb-line)}.smtp-inline-link p{margin:6px 0 0}.smtp-inline-link .link-button{font-size:inherit;padding:0}.smtp-password-state{display:block;margin-top:5px}.smtp-security-note{display:flex;gap:10px;align-items:flex-start;margin-top:18px;padding:13px 14px;border-left:4px solid var(--vahb-blue);background:#f7f8fc;color:#5f6270;font-size:11px;line-height:1.5}.smtp-security-note strong{color:var(--vahb-blue);white-space:nowrap}.smtp-help-card{margin-top:20px;padding:16px;border:1px solid var(--vahb-line);background:#fafaf7}.smtp-help-card h3{margin:0 0 10px;color:var(--vahb-blue)}.smtp-help-card p{margin:8px 0;line-height:1.55}.smtp-help-card code{padding:2px 5px;background:#efefe4;color:#243588;border-radius:3px}.smtp-purpose-list{display:flex;flex-wrap:wrap;gap:7px}.smtp-purpose-list span{padding:6px 9px;background:#efefe4;color:#243588;font-size:10px;font-weight:800}.admin-progress-badge.is-good{background:#e9f5ec;color:#166534}.smtp-admin-grid input[type=password]{letter-spacing:.04em}
@media (max-width:760px){.smtp-security-note{display:block}.smtp-security-note strong{display:block;margin-bottom:4px}}

/* v20 - VAHB beeldbanner op de compacte startpagina */
.compact-home-v18 .compact-welcome{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:210px;
  border-bottom:0;
  background-image:
    linear-gradient(90deg,rgba(21,34,101,.88) 0%,rgba(29,43,112,.72) 42%,rgba(28,39,87,.28) 70%,rgba(20,28,61,.08) 100%),
    url('/static/vahb-hero-camping.png');
  background-size:cover;
  background-position:center 54%;
  background-repeat:no-repeat;
}
.compact-home-v18 .compact-welcome::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:4px;
  background:var(--vahb-orange);
  z-index:-1;
}
.compact-home-v18 .compact-welcome-inner{
  min-height:210px;
  position:relative;
  z-index:1;
  padding-top:30px;
  padding-bottom:30px;
}
.compact-home-v18 .compact-welcome .eyebrow{color:#f3a322;text-shadow:0 1px 2px rgba(0,0,0,.18)}
.compact-home-v18 .compact-welcome h1{color:#fff;text-shadow:0 2px 14px rgba(8,16,54,.32)}
.compact-home-v18 .compact-welcome p{color:rgba(255,255,255,.92);text-shadow:0 1px 5px rgba(8,16,54,.28)}
.compact-home-v18 .compact-welcome-actions .btn{
  background:#fff;
  color:var(--vahb-blue);
  box-shadow:0 7px 22px rgba(12,20,55,.18);
}
.compact-home-v18 .compact-welcome-actions .btn:hover{background:#f6f6f2;color:var(--vahb-blue-dark)}
.compact-home-v18 .compact-welcome-actions .btn.secondary{
  background:var(--vahb-orange);
  color:#fff;
  border-color:var(--vahb-orange);
}
.compact-home-v18 .compact-welcome-actions .btn.secondary:hover{background:#cf7400;color:#fff}

@media(max-width:760px){
  .compact-home-v18 .compact-welcome{min-height:190px;background-position:43% center}
  .compact-home-v18 .compact-welcome-inner{min-height:190px;padding-top:26px;padding-bottom:24px}
  .compact-home-v18 .compact-welcome::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    background:rgba(25,39,112,.18);
  }
}

/* v21 - Microsoft 365 Graph Mail */
.mail-admin-shell{display:grid;gap:18px}.mail-overview-card{padding-bottom:18px}.mail-provider-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.mail-provider-option{appearance:none;text-align:left;border:1px solid var(--vahb-line);background:#fff;padding:16px;cursor:pointer;display:grid;gap:5px;font:inherit}.mail-provider-option strong{color:var(--vahb-blue);font-size:14px}.mail-provider-option span{color:#6b6b6b;font-size:11px;line-height:1.4}.mail-provider-option:hover{border-color:#aab0cf}.mail-provider-option.active{border:2px solid var(--vahb-blue);padding:15px;background:#f7f8fc;box-shadow:inset 0 -3px 0 var(--vahb-orange)}.mail-config-panel code{background:#efefe4;color:#243588;padding:2px 5px;border-radius:3px}.mail-setup-steps{margin:15px 0 0;padding-left:22px;color:#555;line-height:1.55}.mail-setup-steps li{margin:9px 0}.mail-test-card{max-width:none}.mail-test-card #testEmailForm{max-width:620px}.mail-test-card .smtp-help-card{max-width:760px}.mail-provider-option.active strong:after{content:' · actief';color:var(--vahb-orange);font-size:10px;text-transform:uppercase;letter-spacing:.08em}
@media(max-width:760px){.mail-provider-switch{grid-template-columns:1fr}.mail-provider-option{padding:14px}.mail-provider-option.active{padding:13px}}

/* v22 — HR inzichten, teamkalender en rapportage */
.v22-hr-page{background:#f6f6f2;color:#3f4145}.hr-header-title{margin-left:auto;margin-right:28px;display:flex;flex-direction:column;line-height:1.15}.hr-header-title small{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#777}.hr-header-title strong{color:#243588;font-size:18px}.v22-back-chip{text-decoration:none}.v22-hr-main{padding-top:34px;padding-bottom:70px}.v22-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:24px}.v22-page-head h1{margin:3px 0 6px;font-size:34px;color:#243588}.v22-page-head p{margin:0;color:#6a6d70}.v22-head-actions{display:flex;align-items:flex-end;gap:10px}.v22-head-actions label{font-size:12px;color:#666;display:grid;gap:5px}.v22-head-actions select,.v22-export-actions input,.v22-calendar-controls select,.v22-settings-form input{height:42px;border:1px solid #d9d9d2;background:#fff;border-radius:4px;padding:0 12px;color:#414348}.v22-stat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:18px}.v22-stat-card{background:#fff;border:1px solid #e0e0da;border-top:3px solid #243588;text-decoration:none;color:inherit;padding:17px 16px;min-height:112px;display:flex;flex-direction:column;box-shadow:0 2px 9px rgba(30,39,86,.04)}.v22-stat-card.attention{border-top-color:#e68000}.v22-stat-card small{text-transform:uppercase;letter-spacing:.05em;font-size:10px;color:#7a7b7d}.v22-stat-card strong{font-size:30px;color:#243588;margin:7px 0 4px}.v22-stat-card span{font-size:12px;color:#74767a}.v22-split-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:18px 0}.v22-panel{background:#fff;border:1px solid #e0e0da;box-shadow:0 2px 10px rgba(30,39,86,.035);padding:22px;margin:18px 0}.v22-split-grid>.v22-panel{margin:0}.v22-panel-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:17px}.v22-panel-head small{text-transform:uppercase;letter-spacing:.06em;color:#818181;font-size:10px}.v22-panel-head h2{margin:3px 0 0;color:#243588;font-size:21px}.v22-attention-list{display:grid;gap:7px}.v22-attention-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:10px 9px;border-bottom:1px solid #eee;text-decoration:none;color:inherit}.v22-attention-row:last-child{border-bottom:0}.v22-attention-row strong{display:block;font-size:14px}.v22-attention-row small{display:block;color:#777;margin-top:2px}.v22-attention-row>b{color:#243588}.v22-tag{font-size:10px;font-weight:700;text-transform:uppercase;background:#eef0f8;color:#243588;padding:5px 7px;border-radius:3px;min-width:62px;text-align:center}.v22-tag.danger{background:#fff1e1;color:#a65500}.v22-date-badge{width:43px;height:43px;background:#efefe4;color:#243588;display:grid;place-items:center;align-content:center;line-height:1}.v22-date-badge b{font-size:18px}.v22-date-badge small{font-size:9px;text-transform:uppercase}.v22-ok-state{padding:24px;color:#55715d;background:#f5faf6;border-left:3px solid #789d82}.v22-calendar-panel{padding-bottom:18px}.v22-calendar-controls{display:flex;align-items:center;gap:9px}.v22-calendar-controls strong{min-width:155px;text-align:center;color:#243588}.icon-btn{width:38px;height:38px;border:1px solid #d9d9d2;background:#fff;color:#243588;font-size:23px;cursor:pointer}.v22-calendar-legend{display:flex;gap:22px;font-size:11px;color:#6d6e70;margin:0 0 12px}.v22-calendar-legend span{display:flex;align-items:center;gap:6px}.v22-dot{width:8px;height:8px;border-radius:50%;display:inline-block;background:#243588}.v22-dot.birthday{background:#e68000}.v22-dot.anniversary{background:#767676}.v22-cal-weekdays,.v22-cal-grid{display:grid;grid-template-columns:repeat(7,1fr)}.v22-cal-weekdays span{padding:8px;text-align:right;font-size:10px;text-transform:uppercase;color:#838383;border-bottom:1px solid #ddd}.v22-cal-day{min-height:106px;border-right:1px solid #e5e5e0;border-bottom:1px solid #e5e5e0;padding:7px;background:#fff;overflow:hidden}.v22-cal-day:nth-child(7n){border-right:0}.v22-cal-day.muted{background:#fafaf8}.v22-cal-day.today{box-shadow:inset 0 0 0 2px #e68000}.v22-cal-day>b{display:block;text-align:right;font-size:12px;color:#5b5d60}.v22-cal-events{display:grid;gap:3px;margin-top:5px}.v22-cal-events span{display:block;font-size:9px;line-height:1.2;padding:4px 5px;background:#eef0f8;color:#243588;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-left:2px solid #243588}.v22-cal-events span.birthday{background:#fff4e7;color:#995300;border-left-color:#e68000}.v22-cal-events span.anniversary{background:#f0f0f0;color:#555;border-left-color:#777}.v22-cal-events small{font-size:9px;color:#888}.v22-export-actions{display:flex;gap:8px;align-items:center}.v22-export-actions input{width:200px}.btn.small{min-height:38px;padding:8px 11px;font-size:11px}.v22-table-wrap{overflow:auto}.v22-table{width:100%;border-collapse:collapse;font-size:12px}.v22-table th{text-align:left;padding:10px 9px;border-bottom:2px solid #243588;color:#4f5154;white-space:nowrap}.v22-table td{padding:11px 9px;border-bottom:1px solid #ecece7;white-space:nowrap}.v22-table tbody tr:hover{background:#fafaf7}.v22-table tr.v22-low-balance{background:#fff8ee}.v22-table tr.v22-low-balance td:nth-last-child(2) strong{color:#b05f00}.v22-settings-summary{display:flex;gap:8px;margin-bottom:14px}.v22-settings-summary>div{flex:1;background:#f6f6f2;padding:12px}.v22-settings-summary strong,.v22-settings-summary span{display:block}.v22-settings-summary strong{color:#243588}.v22-settings-summary span{font-size:10px;color:#777;margin-top:3px}.v22-settings-form{border-top:1px solid #e6e6e2;padding-top:15px;display:grid;gap:12px}.v22-settings-form>label,.v22-settings-pair label{display:grid;gap:5px;font-size:11px;color:#555}.v22-settings-form .check-line{display:flex;align-items:center;gap:8px}.v22-settings-form .check-line input{height:auto}.input-suffix{display:flex}.input-suffix input{flex:1;min-width:0;border-radius:4px 0 0 4px}.input-suffix b{display:flex;align-items:center;padding:0 10px;background:#efefe8;border:1px solid #d9d9d2;border-left:0;font-size:10px;border-radius:0 4px 4px 0}.v22-settings-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.v22-form-actions{display:flex;gap:8px;flex-wrap:wrap}.form-message{font-size:11px}.form-message.success{color:#47704f}.form-message.error{color:#a03a2b}.v22-notification-log{margin-top:15px;border-top:1px solid #eee;padding-top:12px}.v22-notification-log h3{font-size:12px;color:#243588;margin:0 0 8px}.v22-notification-log>div{display:flex;justify-content:space-between;gap:10px;font-size:10px;padding:5px 0;border-bottom:1px solid #f0f0ec}.v22-notification-log small{color:#808080}.v22-error{padding:20px;background:#fff2ed;color:#9a3f29}
@media(max-width:1100px){.v22-stat-grid{grid-template-columns:repeat(3,1fr)}.v22-cal-day{min-height:88px}.v22-export-actions{flex-wrap:wrap;justify-content:flex-end}}
@media(max-width:760px){.v22-page-head,.v22-panel-head{align-items:stretch;flex-direction:column}.v22-stat-grid{grid-template-columns:repeat(2,1fr)}.v22-split-grid{grid-template-columns:1fr}.v22-calendar-controls{flex-wrap:wrap}.v22-cal-day{min-height:70px;padding:4px}.v22-cal-events span{font-size:0;height:7px;padding:0;border-left:0;border-radius:4px}.v22-export-actions{justify-content:flex-start}.v22-export-actions input{width:100%}.hr-header-title{display:none}}


/* v23 · BHV op compacte homepage */
.bhv-home-block{padding-top:18px;padding-bottom:18px}
.bhv-live-label{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:700;color:#2e6b42;background:#eef7f0;border:1px solid #d5eadb;border-radius:999px;padding:7px 10px}
.bhv-live-label i,.bhv-available-dot{width:8px;height:8px;border-radius:50%;background:#35a65a;box-shadow:0 0 0 3px rgba(53,166,90,.13);display:inline-block}
.bhv-home-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}
.bhv-person-card{position:relative;display:flex;align-items:center;gap:12px;min-width:0;padding:12px 14px;background:#fff;border:1px solid #e2e2dc;border-radius:8px;box-shadow:0 2px 10px rgba(36,53,136,.04)}
.bhv-person-card>img,.bhv-home-initials{width:52px;height:52px;flex:0 0 52px;border-radius:50%;object-fit:cover;border:2px solid #f0f0e8}
.bhv-home-initials{display:grid;place-items:center;background:#243588;color:#fff;font-size:14px;font-weight:800;letter-spacing:.04em}
.bhv-person-copy{display:flex;flex-direction:column;min-width:0;line-height:1.3}
.bhv-person-copy strong{font-size:14px;color:#243588;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bhv-person-copy small{font-size:11px;color:#6a6a66;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bhv-person-copy a{font-size:11px;font-weight:700;color:#e68000;text-decoration:none;margin-top:3px;width:max-content}
.bhv-person-copy a:hover{text-decoration:underline}
.bhv-available-dot{position:absolute;right:12px;top:12px}
.bhv-admin-row{align-items:center}.bhv-admin-person{display:flex;align-items:center;gap:12px;min-width:0}
.bhv-admin-avatar{width:46px;height:46px;flex:0 0 46px;border-radius:50%;object-fit:cover;border:1px solid #deded7}
.bhv-admin-initials{display:grid;place-items:center;background:#243588;color:#fff;font-weight:800;font-size:12px}
@media(max-width:980px){.bhv-home-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.bhv-home-list{grid-template-columns:1fr}.bhv-home-block{padding-top:14px;padding-bottom:14px}.bhv-person-card{padding:10px 12px}.bhv-person-card>img,.bhv-home-initials{width:46px;height:46px;flex-basis:46px}}


/* v24 · BHV medewerkerkiezer */
.bhv-employee-picker{position:relative;margin-bottom:14px}.bhv-employee-search-row{display:flex;gap:8px;align-items:center}.bhv-employee-search-row input{flex:1}.bhv-selected-employee{display:flex;align-items:center;gap:10px;padding:10px 12px;margin:0 0 8px;background:#f7f8fc;border:1px solid #d9dced;border-left:3px solid #243588;border-radius:6px}.bhv-selected-employee>div{display:grid;min-width:0}.bhv-selected-employee strong{font-size:13px;color:#243588}.bhv-selected-employee small{font-size:10px;color:#707174;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bhv-selected-check{margin-left:auto;font-size:9px;text-transform:uppercase;letter-spacing:.06em;font-weight:800;color:#2f7046;background:#ecf7ef;padding:5px 7px;border-radius:999px}.bhv-picker-avatar{width:40px;height:40px;flex:0 0 40px;border-radius:50%;object-fit:cover;border:1px solid #dcdcd5}.bhv-employee-results{position:absolute;left:0;right:0;top:calc(100% - 18px);z-index:30;background:#fff;border:1px solid #d7d8df;box-shadow:0 12px 28px rgba(31,40,86,.16);max-height:340px;overflow:auto;border-radius:6px;padding:5px}.bhv-employee-result{width:100%;display:flex;align-items:center;gap:10px;text-align:left;border:0;border-bottom:1px solid #eee;background:#fff;padding:9px 10px;cursor:pointer;font:inherit}.bhv-employee-result:last-child{border-bottom:0}.bhv-employee-result:hover{background:#f5f6fb}.bhv-employee-result>span:not(.bhv-picker-avatar){display:grid;min-width:0}.bhv-employee-result strong{font-size:12px;color:#243588}.bhv-employee-result small{font-size:10px;color:#747474;margin-top:2px}.bhv-employee-noresult{padding:14px;color:#777;font-size:11px}.bhv-linked-badge{font-size:8px;vertical-align:middle;text-transform:uppercase;letter-spacing:.05em;background:#efefe4;color:#243588;padding:3px 5px;border-radius:3px;margin-left:5px}@media(max-width:620px){.bhv-employee-search-row{align-items:stretch}.bhv-employee-search-row .btn{padding-left:10px;padding-right:10px}.bhv-selected-check{display:none}}

/* v25 - trusted devices */
.trust-device-option{display:flex;gap:12px;align-items:flex-start;padding:13px 14px;border:1px solid #d8dbe6;border-radius:10px;background:#f8f9fc;cursor:pointer;margin:2px 0 4px}.trust-device-option input{width:18px;height:18px;margin-top:2px;accent-color:#243588;flex:none}.trust-device-option span{display:flex;flex-direction:column;gap:3px;line-height:1.35}.trust-device-option strong{font-size:14px;color:#243588}.trust-device-option small{font-size:12px;color:#6b6b6b}.trusted-devices-panel{margin-top:22px}.trusted-device-list{display:grid;gap:8px;margin:12px 0}.trusted-device-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid #e0e0e0;border-radius:10px;background:#fafafa}.trusted-device-item>div{display:flex;flex-direction:column;gap:3px}.trusted-device-item strong{font-size:14px;color:#343434}.trusted-device-item span{font-size:12px;color:#747474}.trusted-device-item>.status-good{color:#1f7a43;font-weight:700}.muted{color:#777;font-size:14px}

/* v26 - compactere MFA verificatie */
.auth-card-mfa{
  width:min(100%,520px);
  padding:29px 34px 27px;
}
.auth-card-mfa .auth-stepper{
  margin-bottom:20px;
  font-size:9px;
}
.auth-card-mfa .auth-icon-badge{
  width:38px;
  height:38px;
  margin-bottom:13px;
}
.auth-card-mfa .auth-icon-badge svg{
  width:20px;
  height:20px;
}
.auth-card-mfa .eyebrow{
  margin-bottom:9px;
  font-size:9px;
  letter-spacing:.11em;
}
.auth-card-mfa h1{
  margin:3px 0 8px;
  font-size:26px;
  line-height:1.1;
}
.auth-card-mfa>p{
  font-size:12px;
  line-height:1.45;
}
.auth-card-mfa .mfa-code-form{
  margin-top:16px;
  gap:10px;
}
.auth-card-mfa .mfa-code-form>div>label{
  margin:8px 0 5px;
  font-size:9px;
}
.auth-card-mfa .mfa-code-input{
  min-height:46px;
  padding:8px 12px;
  font-size:20px!important;
  font-weight:600;
  letter-spacing:.19em;
}
.auth-card-mfa .auth-help{
  margin-top:2px;
  font-size:10px;
  line-height:1.35;
}
.auth-card-mfa .trust-device-option{
  gap:9px;
  margin:0;
  padding:10px 11px;
  border-radius:6px;
}
.auth-card-mfa .trust-device-option input{
  width:16px;
  height:16px;
  margin-top:1px;
}
.auth-card-mfa .trust-device-option span{
  gap:2px;
}
.auth-card-mfa .trust-device-option strong{
  font-size:11px;
  line-height:1.25;
  text-transform:none;
  letter-spacing:0;
}
.auth-card-mfa .trust-device-option small{
  font-size:9.5px;
  line-height:1.35;
  text-transform:none;
  letter-spacing:0;
}
.auth-card-mfa .auth-submit{
  min-height:40px;
  font-size:11px;
}
.auth-card-mfa .auth-text-button{
  padding:3px;
  font-size:9.5px;
}
.auth-card-mfa .auth-inline-link{
  margin-top:2px;
}
.auth-card-mfa .auth-inline-link a{
  font-size:9px;
}
.auth-card-mfa .auth-status{
  min-height:12px;
  font-size:10px;
}
.auth-card-mfa .mfa-setup-panel{
  margin:16px 0 2px;
}
.auth-card-mfa .mfa-setup-grid{
  grid-template-columns:170px 1fr;
  gap:16px;
  padding:13px;
}
.auth-card-mfa .mfa-setup-grid .mfa-qr img{
  width:150px;
  height:150px;
}
.auth-card-mfa .mfa-setup-copy strong{
  font-size:11px;
}
.auth-card-mfa .mfa-setup-copy p{
  margin:4px 0 11px;
  font-size:10px;
}
.auth-card-mfa .manual-secret{
  margin-top:8px;
  padding:8px 10px;
}

@media(max-width:600px){
  .auth-card-mfa{padding:23px 19px 21px}
  .auth-card-mfa h1{font-size:23px}
  .auth-card-mfa .mfa-code-input{font-size:19px!important}
  .auth-card-mfa .mfa-setup-grid{grid-template-columns:1fr}
}

/* v27 · meldingen en teamworkflow */
.notification-wrap{position:relative;display:flex;align-items:center}.notification-bell{position:relative;width:42px;height:42px;border:1px solid #d9dce8;background:#fff;border-radius:6px;display:grid;place-items:center;color:#243588;cursor:pointer}.notification-bell:hover{border-color:#243588;background:#f8f9fd}.notification-bell svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.notification-count{position:absolute;right:-5px;top:-6px;min-width:19px;height:19px;padding:0 5px;border-radius:12px;background:#e68000;color:#fff;font-size:10px;font-weight:800;display:grid;place-items:center;border:2px solid #fff}.notification-count.hidden{display:none}.notification-panel{position:absolute;right:0;top:50px;width:min(390px,calc(100vw - 24px));max-height:520px;background:#fff;border:1px solid #d9dce8;box-shadow:0 16px 44px rgba(25,37,83,.16);z-index:80;border-radius:7px;overflow:hidden}.notification-panel.hidden{display:none}.notification-panel-head{padding:14px 16px;border-bottom:1px solid #eceef4;display:flex;align-items:center;justify-content:space-between;gap:12px}.notification-panel-head small{display:block;color:#e68000;text-transform:uppercase;letter-spacing:.08em;font-weight:800;font-size:9px}.notification-panel-head strong{color:#243588}.notification-panel-head button{border:0;background:none;color:#243588;text-decoration:underline;font-size:11px;cursor:pointer}.notification-list{max-height:430px;overflow:auto}.notification-item{display:grid;grid-template-columns:10px 1fr;gap:8px;padding:12px 15px;border-bottom:1px solid #f0f1f5;text-decoration:none;color:#333}.notification-item:hover{background:#fafaf6}.notification-item.unread{background:#f6f7fc}.notification-dot{width:7px;height:7px;border-radius:50%;background:transparent;margin-top:6px}.notification-item.unread .notification-dot{background:#e68000}.notification-item strong,.notification-item small,.notification-item em{display:block}.notification-item strong{font-size:12px;color:#243588}.notification-item small{font-size:11px;line-height:1.4;color:#5e6067;margin-top:2px}.notification-item em{font-size:9px;color:#92949b;font-style:normal;margin-top:4px}.notification-empty{padding:28px 16px;text-align:center;color:#73757d;font-size:12px}
.v27-team-main{padding-top:34px;padding-bottom:60px}.v27-team-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.v27-team-head h1{margin:3px 0 4px;color:#243588}.v27-team-head p{margin:0;color:#666}.v27-team-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 22px}.v27-team-stat{background:#fff;border:1px solid #dedfe6;border-top:3px solid #243588;padding:16px;border-radius:5px}.v27-team-stat strong{display:block;color:#243588;font-size:28px}.v27-team-stat span{font-size:11px;color:#6b6c72}.v27-team-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1.4fr);gap:18px;margin-bottom:18px}.v27-panel{background:#fff;border:1px solid #dedfe6;border-radius:5px;padding:18px}.v27-panel-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}.v27-panel-head h2{margin:0;color:#243588;font-size:20px}.v27-team-member{display:grid;grid-template-columns:46px 1fr;align-items:center;gap:11px;padding:9px 0;border-bottom:1px solid #eee}.v27-team-member:last-child{border-bottom:0}.v27-team-member img,.v27-team-avatar{width:46px;height:46px;border-radius:50%;object-fit:cover;background:#eef0f7;display:grid;place-items:center;color:#243588;font-weight:800}.v27-team-member strong,.v27-team-member small{display:block}.v27-team-member small{color:#777;margin-top:2px}.v27-request-card{border:1px solid #e1e2e8;border-left:4px solid #e68000;border-radius:5px;padding:14px;margin-bottom:11px}.v27-request-card h3{margin:2px 0 5px;color:#243588;font-size:15px}.v27-request-card p{font-size:11px;color:#666;margin:4px 0}.v27-request-meta{display:flex;gap:9px;flex-wrap:wrap;font-size:10px;color:#575757}.v27-request-actions{display:flex;gap:8px;margin-top:11px;flex-wrap:wrap}.v27-request-actions textarea{width:100%;min-height:58px;resize:vertical;border:1px solid #d4d5dc;border-radius:4px;padding:8px;font:inherit}.v27-conflict{margin:9px 0;padding:8px 10px;background:#fff6e8;border:1px solid #f1c987;border-radius:4px;color:#774b0b;font-size:10px}.v27-team-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid #e0e1e7}.v27-team-calendar .weekday{padding:8px;background:#f4f4ed;color:#575757;font-size:10px;font-weight:700}.v27-team-calendar .day{min-height:96px;padding:7px;border-top:1px solid #ececf1;border-right:1px solid #ececf1;background:#fff}.v27-team-calendar .day.muted{background:#fafafa}.v27-team-calendar .day>b{font-size:11px;color:#243588}.v27-team-calendar .cal-item{display:block;margin-top:4px;padding:3px 5px;border-radius:3px;background:#eef1fb;color:#243588;font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v27-team-calendar .cal-item.birthday{background:#fff1df;color:#a45a00}.v27-calendar-controls{display:flex;gap:7px;align-items:center}.v27-calendar-controls button{width:31px;height:31px;border:1px solid #d8d9df;background:#fff;color:#243588;border-radius:4px;cursor:pointer}.leave-approval-badge{display:inline-flex;padding:3px 7px;border-radius:12px;background:#eef1fb;color:#243588;font-size:9px;font-weight:800}.leave-approval-badge.pending{background:#fff2df;color:#a25c00}
@media(max-width:900px){.notification-panel{position:fixed;right:12px;top:68px}.v27-team-grid{grid-template-columns:1fr}.v27-team-stats{grid-template-columns:1fr 1fr 1fr}.v27-team-calendar{font-size:9px}.v27-team-calendar .day{min-height:75px}}
@media(max-width:620px){.notification-bell{width:38px;height:38px}.v27-team-stats{grid-template-columns:1fr}.v27-team-head{align-items:flex-start;flex-direction:column}.v27-team-calendar{overflow-x:auto;min-width:620px}.v27-calendar-scroll{overflow-x:auto}}

/* v28 — declaraties & onkosten */
.expense-page-main,.finance-expense-main{padding-top:34px;padding-bottom:54px}.expense-page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px}.expense-page-head h1{margin:3px 0 6px;color:#243588;font-size:clamp(30px,3vw,44px);line-height:1.05}.expense-page-head p{margin:0;color:#666;max-width:720px}.expense-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:22px}.expense-stat-grid>article{border:1px solid #e0e0da;background:#fff;border-radius:7px;padding:18px 20px;box-shadow:0 3px 14px rgba(36,53,136,.045);display:flex;flex-direction:column;gap:3px}.expense-stat-grid small{text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:800;color:#737373}.expense-stat-grid strong{font-size:25px;color:#243588;line-height:1.1}.expense-stat-grid span{font-size:12px;color:#777}.expense-main-grid{display:grid;grid-template-columns:minmax(340px,.88fr) minmax(460px,1.35fr);gap:20px;align-items:start}.expense-form-card,.expense-list-card,.finance-expense-list-card,.finance-expense-detail-card{background:#fff;border:1px solid #deded7;border-radius:7px;box-shadow:0 5px 20px rgba(40,47,60,.05)}.expense-form-card,.expense-list-card{padding:22px}.expense-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.expense-card-head small{display:block;color:#e68000;text-transform:uppercase;font-weight:800;letter-spacing:.08em;font-size:10px;margin-bottom:2px}.expense-card-head h2{color:#243588;font-size:22px;margin:0}.expense-card-head select{width:auto;min-width:135px}.expense-help-badge{font-size:9px;letter-spacing:.07em;font-weight:800;background:#f6f4ea;color:#715b29;border:1px solid #e2dcc8;border-radius:4px;padding:7px 9px}.expense-file-preview{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0 2px}.expense-file-preview span{display:inline-flex;gap:5px;align-items:center;padding:6px 8px;border:1px solid #e2e2dc;background:#fafafa;border-radius:4px;font-size:11px;color:#414141}.expense-file-preview small{color:#888}.expense-item{border:1px solid #e1e1dc;border-radius:6px;margin-bottom:9px;background:#fff;overflow:hidden}.expense-item summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 15px}.expense-item summary::-webkit-details-marker{display:none}.expense-item summary:hover{background:#fafaf6}.expense-item summary>div:first-child{display:flex;flex-direction:column;min-width:0;gap:2px}.expense-item summary strong{color:#303030;font-size:14px}.expense-item summary small,.expense-date{font-size:11px;color:#777}.expense-date{color:#e68000;font-weight:700}.expense-summary-right{display:flex;align-items:flex-end;flex-direction:column;gap:5px;flex-shrink:0}.expense-summary-right>strong{color:#243588;font-size:15px}.expense-stage{display:inline-flex;align-items:center;border-radius:99px;padding:4px 8px;font-size:9px;font-weight:800;line-height:1.15;text-transform:uppercase;letter-spacing:.04em;background:#f2f2ef;color:#666}.expense-stage.pending{background:#fff4df;color:#9a5c00}.expense-stage.approved{background:#edf6ee;color:#246b2d}.expense-stage.paid{background:#eaf3ff;color:#24558a}.expense-stage.rejected,.expense-stage.cancelled{background:#fff0ef;color:#a33028}.expense-item-body{border-top:1px solid #ecece7;background:#fcfcfa;padding:16px}.expense-item-body>p{font-size:13px;line-height:1.55;color:#555;margin:13px 0}.expense-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.expense-detail-grid>div{border:1px solid #e8e8e2;background:#fff;border-radius:5px;padding:10px}.expense-detail-grid small{display:block;color:#888;font-size:9px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px}.expense-detail-grid strong{font-size:12px;color:#333;word-break:break-word}.expense-workflow{display:flex;flex-direction:column;gap:6px;margin:13px 0}.expense-step{display:flex;align-items:center;gap:8px;font-size:11px;color:#666;padding:7px 9px;border-radius:5px;background:#f4f4f1}.expense-step b{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#ddd;color:#555;font-size:9px}.expense-step.approved,.expense-step.paid{background:#edf6ee;color:#296b31}.expense-step.approved b,.expense-step.paid b{background:#3f8a49;color:white}.expense-step.pending,.expense-step.waiting_manager,.expense-step.queued{background:#fff4df;color:#8a5707}.expense-step.pending b,.expense-step.waiting_manager b,.expense-step.queued b{background:#e68000;color:#fff}.expense-step.rejected{background:#fff0ef;color:#9d332b}.expense-receipts{display:flex;flex-wrap:wrap;gap:7px;margin:13px 0}.expense-receipts>a{font-size:11px;color:#243588;text-decoration:none;border:1px solid #d9dce9;background:#fff;border-radius:4px;padding:7px 9px}.expense-receipts>a:hover{text-decoration:underline}.expense-history{margin-top:15px;border-top:1px solid #e4e4de;padding-top:13px}.expense-history h3,.expense-history h4{margin:0 0 8px;color:#243588;font-size:13px}.expense-history-row{display:grid;grid-template-columns:9px 1fr;gap:8px;padding:6px 0}.expense-history-row>span{width:7px;height:7px;border-radius:50%;background:#e68000;margin-top:5px}.expense-history-row.internal>span{background:#777}.expense-history-row strong{display:block;font-size:11px;color:#444}.expense-history-row small{display:block;font-size:9px;color:#888;margin-top:1px}.expense-item-actions{border-top:1px solid #e6e6e0;margin-top:13px;padding-top:13px;display:flex;align-items:flex-end;flex-wrap:wrap;gap:7px}.expense-item-actions textarea{flex:1 1 240px;min-height:52px;margin:0}.section-inline-link{font-size:12px;font-weight:700;color:#243588}.finance-toolbar{display:flex;align-items:flex-end;gap:10px}.finance-toolbar label{font-size:10px;font-weight:800;color:#666;text-transform:uppercase;letter-spacing:.05em}.finance-toolbar select{display:block;min-width:90px;margin-top:3px}.finance-expense-layout{display:grid;grid-template-columns:minmax(390px,.85fr) minmax(500px,1.25fr);gap:18px;align-items:start}.finance-expense-list-card{padding:18px;position:sticky;top:14px;max-height:calc(100vh - 30px);overflow:auto}.finance-expense-detail-card{padding:22px;min-height:360px}.finance-expense-row{width:100%;border:0;border-top:1px solid #ecece7;background:transparent;text-align:left;padding:12px 7px;display:flex;align-items:center;justify-content:space-between;gap:14px;cursor:pointer}.finance-expense-row:first-of-type{border-top:0}.finance-expense-row:hover,.finance-expense-row.selected{background:#f7f7f1}.finance-expense-row.selected{box-shadow:inset 3px 0 #e68000}.finance-expense-row>span:first-child{display:flex;flex-direction:column;gap:2px;min-width:0}.finance-expense-row small{font-size:9px;color:#e68000}.finance-expense-row strong{font-size:12px;color:#333}.finance-expense-row em{font-style:normal;font-size:9px;color:#777}.finance-row-right{display:flex;align-items:flex-end;flex-direction:column;gap:4px;flex-shrink:0}.finance-row-right>strong{color:#243588;font-size:13px}.finance-detail-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.finance-detail-head h2{font-size:25px;color:#243588;margin:3px 0}.finance-detail-head p{margin:0;font-size:11px;color:#777}.finance-amount-block{display:flex;align-items:baseline;gap:10px;padding:17px 0;border-bottom:1px solid #e6e6e0}.finance-amount-block strong{font-size:29px;color:#243588}.finance-amount-block span{font-size:10px;color:#777}.finance-detail-grid{margin:14px 0}.finance-receipts{align-items:center}.finance-receipts h3{width:100%;margin:0 0 3px;color:#243588;font-size:13px}.finance-workflow-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0}.finance-workflow-summary>span{padding:10px;border:1px solid #e4e4de;background:#fafaf7;border-radius:5px}.finance-workflow-summary small{display:block;font-size:9px;color:#888;text-transform:uppercase}.finance-workflow-summary strong{font-size:11px;color:#333}.finance-decision-box,.finance-payment-box{margin:18px 0;padding:15px;background:#f6f6f0;border:1px solid #deded5;border-radius:6px}.finance-decision-box textarea,.finance-payment-box input{margin-bottom:0}.expense-admin-shell{display:flex;flex-direction:column;gap:18px}.expense-settings-grid{grid-template-columns:minmax(340px,.8fr) minmax(480px,1.2fr)}.expense-admin-note{font-size:11px;color:#756b50;background:#faf7ea;border:1px solid #e8dfc3;border-radius:5px;padding:10px;margin:12px 0}.expense-approver-list{display:grid;gap:6px;max-height:430px;overflow:auto}.expense-approver-option{display:flex;gap:10px;align-items:center;border:1px solid #e5e5df;border-radius:5px;padding:9px 10px;background:#fff;cursor:pointer}.expense-approver-option:hover{background:#fafaf6}.expense-approver-option input{width:auto;margin:0}.expense-approver-option span{display:flex;flex-direction:column}.expense-approver-option strong{font-size:12px;color:#333}.expense-approver-option small{font-size:9px;color:#777}.v28-team-receipts{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 10px}.v28-expense-manager-card{border-left:3px solid #e68000}
@media(max-width:980px){.expense-main-grid,.finance-expense-layout,.expense-settings-grid{grid-template-columns:1fr}.finance-expense-list-card{position:static;max-height:none}.expense-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-expense-detail-card{min-height:0}}
@media(max-width:650px){.expense-page-main,.finance-expense-main{padding-top:22px}.expense-page-head{align-items:flex-start;flex-direction:column}.finance-toolbar{width:100%;justify-content:space-between}.expense-stat-grid{grid-template-columns:1fr 1fr}.expense-stat-grid>article{padding:14px}.expense-stat-grid strong{font-size:20px}.expense-main-grid{display:block}.expense-form-card,.expense-list-card{padding:15px;margin-bottom:14px}.expense-detail-grid,.finance-workflow-summary{grid-template-columns:1fr 1fr}.expense-item summary{padding:12px 10px}.expense-summary-right{max-width:42%}.finance-expense-detail-card{padding:15px}.finance-expense-list-card{padding:12px}}

/* v29: declaraties automatisch doorsturen naar administratie */
.admin-divider{border:0;border-top:1px solid #e4e4de;margin:22px 0}
.invoice-forward-state{margin:18px 0;padding:14px 16px;border-radius:8px;display:flex;gap:10px;align-items:center;flex-wrap:wrap;border:1px solid #d8d8d0;background:#f7f7f3}
.invoice-forward-state strong{color:#243588}
.invoice-forward-state small{flex:1;min-width:180px;color:#666}
.invoice-forward-state.ok{border-left:4px solid #2f7d4a}
.invoice-forward-state.error{border-left:4px solid #b42318;background:#fff7f5}
.invoice-forward-state.error strong{color:#9f1d15}
.invoice-forward-state.pending{border-left:4px solid #e68000}

/* v30 · Microsoft Entra SSO */
.sso-login-block{margin-top:18px}.microsoft-login-btn{width:100%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;text-decoration:none;background:#243588;color:#fff;border-color:#243588}.microsoft-login-btn:hover{filter:brightness(.96);transform:translateY(-1px)}
.ms-mark{display:grid;grid-template-columns:repeat(2,8px);grid-template-rows:repeat(2,8px);gap:2px;width:18px;height:18px}.ms-mark i{display:block;background:#fff;border-radius:1px}.sso-login-note{font-size:12px!important;line-height:1.45!important;margin:9px 0 0!important;color:#6b7280!important}.auth-divider{display:flex;align-items:center;gap:12px;margin:16px 0;color:#8a8f98;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:#e2e4e8;flex:1}.auth-divider span{white-space:nowrap}.auth-status.hidden{display:none}
.sso-admin-shell{display:grid;gap:18px}.sso-overview-card{border-top:4px solid #243588}.sso-admin-grid{align-items:start}.sso-copy-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.sso-copy-row input{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.sso-warning{display:grid;gap:4px;margin-top:14px;padding:12px 14px;border:1px solid #e7c28b;background:#fff8ec;border-radius:10px;font-size:12px;line-height:1.5;color:#5d4b35}.sso-warning strong{color:#243588}.sso-mfa-confirm{margin-top:14px;padding:11px 12px;border-radius:10px;background:#f5f7ff;border:1px solid #d9def7}.sso-link-row small{line-height:1.45}.admin-progress-badge.ok{background:#e8f5ec;color:#166534}.sso-overview-card .smtp-status{margin-top:10px}
@media(max-width:760px){.sso-copy-row{grid-template-columns:1fr}.sso-copy-row .btn{width:100%}.microsoft-login-btn{grid-template-columns:auto 1fr auto}}

/* =============================================================
   VAHB v34 — Dashboard 2.0
   ============================================================= */
.dashboard-v34{background:#f4f4f0}
.dashboard-v34 .compact-home-main{overflow:visible}
.dashboard-v34 .v34-hero{min-height:232px;background-position:center 55%;border-bottom:0}
.dashboard-v34 .v34-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(20,35,103,.84) 0%,rgba(27,43,113,.68) 43%,rgba(21,34,87,.16) 72%,rgba(21,34,87,.08) 100%)}
.dashboard-v34 .v34-hero::after{height:5px}
.dashboard-v34 .v34-hero-inner{min-height:232px;padding-top:34px;padding-bottom:52px}
.v34-hero-copy{max-width:720px}.v34-hero-copy h1{font-size:clamp(31px,3.4vw,48px)!important}.v34-hero-copy p{font-size:14px!important;font-weight:500}
.v34-hero-actions .btn{border-radius:7px;font-weight:750}
.v34-dashboard-shell{position:relative;z-index:4;margin-top:-38px;padding-bottom:52px}
.v34-metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}
.v34-metric-card{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) 24px;align-items:center;gap:14px;min-height:112px;padding:16px 17px;background:#fff;border:1px solid #dedfd9;border-radius:12px;color:inherit;text-decoration:none;box-shadow:0 11px 32px rgba(30,40,88,.10);overflow:hidden;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.v34-metric-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#243588}.v34-metric-card:nth-child(2)::before{background:#e68000}
.v34-metric-card:hover{transform:translateY(-2px);border-color:#c2c6d6;box-shadow:0 15px 36px rgba(30,40,88,.14)}
.v34-metric-icon,.v34-topic-icon{display:grid;place-items:center;background:#eef0f8;color:#243588;border-radius:10px}.v34-metric-icon{width:48px;height:48px}.v34-metric-icon.orange,.v34-topic-icon.orange{background:#fff0df;color:#d67100}
.v34-metric-icon svg,.v34-topic-icon svg,.v34-doc-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.v34-metric-copy{display:flex;flex-direction:column;min-width:0}.v34-metric-copy>small{color:#777a80;font-size:10px;text-transform:uppercase;letter-spacing:.085em;font-weight:800;margin-bottom:3px}.v34-metric-copy>strong,.v34-metric-dynamic>strong{font-size:27px;line-height:1;color:#243588;letter-spacing:-.035em;font-weight:800}.v34-metric-copy>span:not(.v34-metric-dynamic),.v34-metric-dynamic>span{margin-top:4px;color:#666a70;font-size:12px;font-weight:600}.v34-metric-dynamic{display:flex;flex-direction:column;min-width:0}.v34-metric-dynamic small{margin-top:5px;color:#8a8b8f;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v34-metric-dynamic small b{color:#52555b}.v34-metric-arrow{color:#b4b6bd;font-size:19px;font-weight:500;transition:transform .15s ease}.v34-metric-card:hover .v34-metric-arrow{transform:translateX(3px);color:#e68000}
.v34-focus-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);gap:18px;margin-bottom:18px}
.v34-panel{background:#fff;border:1px solid #dedfd9;border-radius:12px;box-shadow:0 5px 20px rgba(30,40,88,.05);padding:20px;min-width:0}.v34-panel-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}.v34-panel-head .eyebrow{font-size:9px;letter-spacing:.11em;margin-bottom:4px}.v34-panel-head h2{margin:0;color:#243588;font-size:20px;line-height:1.15}.v34-panel-head>a{font-size:11px;font-weight:800;color:#243588;text-decoration:none;white-space:nowrap}.v34-panel-head>a:hover{color:#e68000}
.v34-timeline{display:grid}.v34-timeline-row{display:grid;grid-template-columns:48px 14px minmax(0,1fr) 18px;align-items:center;gap:9px;min-height:50px;padding:8px 0;border-top:1px solid #eeeeea;color:inherit;text-decoration:none}.v34-timeline-row:first-child{border-top:0}.v34-time{color:#243588;font-size:11px;font-weight:800;text-align:right}.v34-timeline-marker{position:relative;width:9px;height:9px;border-radius:50%;background:#e68000;box-shadow:0 0 0 4px #fff3e3}.v34-timeline-copy small{display:block;color:#8b8c90;font-size:9px;text-transform:uppercase;letter-spacing:.06em}.v34-timeline-copy strong{display:block;margin-top:2px;color:#35373d;font-size:13px;line-height:1.3}.v34-timeline-row>b{color:#c0c1c4}.v34-timeline-row:hover .v34-timeline-copy strong{color:#243588}.v34-next-event{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:9px;padding:11px 13px;border-radius:8px;background:#f2f3ed;color:inherit;text-decoration:none;border-left:3px solid #243588}.v34-next-event span{min-width:0}.v34-next-event small{display:block;color:#85878b;font-size:9px;text-transform:uppercase;letter-spacing:.06em}.v34-next-event strong{display:block;margin-top:2px;color:#243588;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v34-next-event>b{color:#65686d;font-size:10px;white-space:nowrap}
.v34-empty-state{display:flex;align-items:center;gap:12px;padding:20px 4px;color:#73767b}.v34-empty-state>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:50%;background:#eff4ef;color:#3e7750;font-weight:800}.v34-empty-state strong{display:block;color:#45474c;font-size:13px}.v34-empty-state small{display:block;margin-top:3px;font-size:11px}.v34-empty-state.compact{padding:12px 0}
.v34-bhv-panel{background:linear-gradient(155deg,#243588 0%,#1d2b70 100%);border-color:#243588;color:#fff;box-shadow:0 10px 28px rgba(36,53,136,.18)}.v34-bhv-panel .eyebrow{color:#f2a02b}.v34-bhv-panel .v34-panel-head h2{color:#fff}.v34-bhv-panel .bhv-live-label{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.16);color:#fff}.v34-bhv-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v34-bhv-person{position:relative;display:flex;align-items:center;gap:9px;min-width:0;padding:9px 9px;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.10);border-radius:9px}.v34-bhv-person>img,.v34-bhv-person>.bhv-home-initials{width:42px;height:42px;flex:0 0 42px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.35)}.v34-bhv-person>.bhv-home-initials{display:grid;place-items:center;background:#fff;color:#243588;font-size:11px;font-weight:800}.v34-bhv-copy{display:flex;flex-direction:column;min-width:0;padding-right:8px}.v34-bhv-copy strong{font-size:11px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v34-bhv-copy small{margin-top:2px;font-size:9px;color:rgba(255,255,255,.72);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v34-bhv-copy a{margin-top:2px;color:#ffd195;font-size:9px;font-weight:700;text-decoration:none}.v34-bhv-status{position:absolute;right:8px;top:8px;width:7px;height:7px;border-radius:50%;background:#58d27a;box-shadow:0 0 0 3px rgba(88,210,122,.14)}.v34-bhv-panel .v34-empty-state{color:#fff}.v34-bhv-panel .v34-empty-state strong{color:#fff}.v34-bhv-panel .v34-empty-state>span{background:rgba(255,255,255,.14);color:#fff}
.v34-quick-section{margin-bottom:18px;padding:20px;background:#fff;border:1px solid #dedfd9;border-radius:12px;box-shadow:0 5px 20px rgba(30,40,88,.045)}.v34-quick-head{margin-bottom:13px}.v34-topic-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.v34-topic-tile{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr) 14px;align-items:center;gap:9px;min-height:72px;padding:10px 11px;border:1px solid #e5e5e0;border-radius:9px;background:#fafaf8;color:inherit;text-decoration:none;transition:.15s ease}.v34-topic-tile:hover{background:#fff;border-color:#c7cbda;box-shadow:0 7px 18px rgba(36,53,136,.08);transform:translateY(-1px)}.v34-topic-icon{width:38px;height:38px;border-radius:9px}.v34-topic-icon svg{width:19px;height:19px}.v34-topic-tile strong{display:block;color:#243588;font-size:12px}.v34-topic-tile small{display:block;margin-top:2px;color:#7c7f84;font-size:9px;line-height:1.25}.v34-topic-tile>b{color:#b7b8bc;font-size:13px}.v34-topic-tile:hover>b{color:#e68000}.v34-quick-section .custom-quick-links{margin-top:12px}
.v34-content-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.v34-content-grid .v34-panel{min-height:250px}.v34-news-list{display:grid}.v34-news-feature{display:block;padding:13px 14px;margin-bottom:5px;border-radius:9px;background:linear-gradient(135deg,#f2f3f9,#f8f8f5);border-left:4px solid #e68000;color:inherit;text-decoration:none}.v34-news-feature small,.v34-news-row small,.v34-doc-row small{color:#85878b;font-size:9px;text-transform:uppercase;letter-spacing:.055em}.v34-news-feature strong{display:block;margin-top:4px;color:#243588;font-size:15px;line-height:1.25}.v34-news-feature p{margin:5px 0 7px;color:#6c6f74;font-size:11px;line-height:1.42}.v34-news-feature>span{font-size:10px;color:#243588;font-weight:800}.v34-news-row{display:grid;grid-template-columns:minmax(0,1fr) 16px;align-items:center;gap:10px;padding:9px 4px;border-top:1px solid #ecece8;color:inherit;text-decoration:none}.v34-news-row strong{display:block;margin-top:2px;color:#393b40;font-size:12px}.v34-news-row>b{color:#bbb}.v34-news-row:hover strong{color:#243588}.v34-document-list{display:grid}.v34-doc-row{display:grid;grid-template-columns:38px minmax(0,1fr) 16px;align-items:center;gap:10px;padding:10px 0;border-top:1px solid #ecece8;color:inherit;text-decoration:none}.v34-doc-row:first-child{border-top:0}.v34-doc-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:8px;background:#eef0f8;color:#243588}.v34-doc-icon svg{width:18px;height:18px}.v34-doc-row strong{display:block;margin-top:2px;color:#393b40;font-size:12px}.v34-doc-row em{display:block;margin-top:2px;color:#898b90;font-size:9px;font-style:normal}.v34-doc-row>b{color:#bbb}.v34-doc-row:hover strong{color:#243588}
@media(max-width:1180px){.v34-topic-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.v34-focus-grid{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr)}}
@media(max-width:900px){.v34-metric-grid{grid-template-columns:1fr 1fr}.v34-metric-card:first-child{grid-column:1/-1}.v34-focus-grid,.v34-content-grid{grid-template-columns:1fr}.v34-bhv-list{grid-template-columns:repeat(4,minmax(0,1fr))}.v34-bhv-copy small,.v34-bhv-copy a{display:none}}
@media(max-width:700px){.dashboard-v34 .v34-hero,.dashboard-v34 .v34-hero-inner{min-height:205px}.dashboard-v34 .v34-hero-inner{padding-bottom:46px}.v34-dashboard-shell{margin-top:-30px}.v34-metric-grid{grid-template-columns:1fr}.v34-metric-card:first-child{grid-column:auto}.v34-bhv-list{grid-template-columns:repeat(2,minmax(0,1fr))}.v34-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v34-panel,.v34-quick-section{padding:16px}.v34-panel-head{align-items:flex-start}.v34-next-event{align-items:flex-start;flex-direction:column;gap:5px}.v34-hero-copy p{font-size:12px!important}}
@media(max-width:460px){.v34-topic-grid{grid-template-columns:1fr}.v34-bhv-list{grid-template-columns:1fr}.v34-metric-card{min-height:96px;padding:13px}.v34-metric-icon{width:42px;height:42px}.v34-metric-copy>strong,.v34-metric-dynamic>strong{font-size:23px}.v34-timeline-row{grid-template-columns:40px 12px minmax(0,1fr) 14px}.v34-time{font-size:10px}.v34-hero-actions{display:none}}

/* v46 - alleen fotografie op bestaande v34-homepage.
   Hero gebruikt de bestaande assetnaam vahb-hero-camping.png, die nu de echte kantoor-foto bevat. */
.dashboard-v34 .compact-home-main{
  background:
    linear-gradient(180deg, rgba(244,244,240,.92) 0%, rgba(244,244,240,.94) 40%, rgba(244,244,240,.78) 68%, rgba(244,244,240,.92) 100%),
    url('/static/vahb-magazijn.jpg') right bottom / 58% auto no-repeat,
    #f4f4f0;
}
/* Houd de bestaande hero-layout exact gelijk; alleen beeldpositionering aanpassen. */
.dashboard-v34 .compact-welcome.v34-hero{
  background-image:
    linear-gradient(90deg,rgba(21,34,101,.78) 0%,rgba(29,43,112,.56) 40%,rgba(28,39,87,.16) 70%,rgba(20,28,61,.03) 100%),
    url('/static/vahb-hero-camping.png');
  background-size:cover;
  background-position:center 46%;
  background-repeat:no-repeat;
}

/* v47 - kantoorpand iets kleiner in hero zodat logo en volledige hoek beter zichtbaar zijn. */
.dashboard-v34 .compact-welcome.v34-hero{
  background-color:#23316f;
  background-image:
    linear-gradient(90deg,rgba(21,34,101,.82) 0%,rgba(29,43,112,.62) 38%,rgba(28,39,87,.18) 67%,rgba(20,28,61,.04) 100%),
    url('/static/vahb-hero-camping.png');
  background-size:100% 100%, 74% auto;
  background-position:center center, 26% 28%;
  background-repeat:no-repeat,no-repeat;
}
@media(max-width:1200px){
  .dashboard-v34 .compact-welcome.v34-hero{
    background-size:100% 100%, 86% auto;
    background-position:center center, 30% 28%;
  }
}

/* v48 - hero compacter: pand en gevel-logo beter zichtbaar, zonder wijziging aan homepage-structuur. */
.dashboard-v34 .compact-welcome.v34-hero{
  background-color:#e9eef6;
  background-image:
    linear-gradient(90deg,
      rgba(21,34,101,.78) 0%,
      rgba(24,38,107,.58) 17%,
      rgba(28,43,112,.28) 34%,
      rgba(28,43,112,.10) 52%,
      rgba(28,43,112,.03) 70%,
      rgba(28,43,112,0) 100%),
    url('/static/vahb-hero-camping.png');
  background-size:100% 100%,100% 100%;
  background-position:center center,center center;
  background-repeat:no-repeat,no-repeat;
}
@media(max-width:1200px){
  .dashboard-v34 .compact-welcome.v34-hero{
    background-size:100% 100%,100% 100%;
    background-position:center center,center center;
  }
}

/* v49 - kantoorhero duidelijker zichtbaar.
   De hero gebruikt een vooraf samengestelde brede uitsnede van de echte kantoorfoto,
   zodat de gevelhoek en het VAHB-logo volledig zichtbaar blijven. */
.dashboard-v34 .compact-welcome.v34-hero{
  background-color:#e8eef7;
  background-image:
    linear-gradient(90deg,
      rgba(20,35,103,.78) 0%,
      rgba(20,35,103,.62) 18%,
      rgba(20,35,103,.32) 34%,
      rgba(20,35,103,.10) 48%,
      rgba(20,35,103,.02) 62%,
      rgba(20,35,103,0) 76%),
    url('/static/vahb-hero-camping.png');
  background-size:100% 100%,100% 100%;
  background-position:center center,center center;
  background-repeat:no-repeat,no-repeat;
}
@media(max-width:1200px){
  .dashboard-v34 .compact-welcome.v34-hero{
    background-size:100% 100%,100% 100%;
    background-position:center center,center center;
  }
}

/* v50 - kantoorpand compacter en meer centraal in de blauwe hero.
   Alleen de hero-foto/positionering wordt aangepast; homepage-structuur blijft gelijk. */
.dashboard-v34 .compact-welcome.v34-hero{
  background-color:#dce7f5;
  background-image:
    linear-gradient(90deg,
      rgba(20,35,103,.82) 0%,
      rgba(20,35,103,.70) 20%,
      rgba(20,35,103,.44) 42%,
      rgba(20,35,103,.18) 63%,
      rgba(20,35,103,.05) 82%,
      rgba(20,35,103,0) 100%),
    url('/static/vahb-hero-camping.png');
  background-size:100% 100%,100% 100%;
  background-position:center center,center center;
  background-repeat:no-repeat,no-repeat;
}
@media(max-width:1200px){
  .dashboard-v34 .compact-welcome.v34-hero{
    background-size:100% 100%,100% 100%;
    background-position:center center,center center;
  }
}

/* v51 — fotografische afwerking op de bestaande v34-homepage.
   Geen structuurwijzigingen: alleen magazijnsfeer onderin, hero-contrast en subtiele kaart-polish. */
.dashboard-v34 .compact-home-main{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#f4f4f0;
}
.dashboard-v34 .compact-home-main::after{
  content:"";
  position:absolute;
  z-index:0;
  right:-2%;
  bottom:0;
  width:min(760px,52vw);
  height:650px;
  pointer-events:none;
  background:
    linear-gradient(90deg,#f4f4f0 0%,rgba(244,244,240,.83) 14%,rgba(244,244,240,.34) 42%,rgba(244,244,240,.08) 70%,rgba(244,244,240,0) 100%),
    linear-gradient(180deg,#f4f4f0 0%,rgba(244,244,240,.58) 12%,rgba(244,244,240,.05) 32%,rgba(244,244,240,.04) 78%,#f4f4f0 100%),
    url('/static/vahb-magazijn.jpg') center right / cover no-repeat;
  opacity:.44;
  filter:saturate(.78) contrast(.94);
}
.dashboard-v34 .compact-welcome.v34-hero,
.dashboard-v34 .v34-dashboard-shell{
  position:relative;
  z-index:2;
}

/* Hero: foto zichtbaar houden, maar tekst links rustig en leesbaar. */
.dashboard-v34 .compact-welcome.v34-hero{
  background-image:
    linear-gradient(90deg,
      rgba(20,35,103,.84) 0%,
      rgba(20,35,103,.72) 19%,
      rgba(20,35,103,.46) 39%,
      rgba(20,35,103,.19) 61%,
      rgba(20,35,103,.05) 80%,
      rgba(20,35,103,0) 100%),
    url('/static/vahb-hero-camping.png');
  background-size:100% 100%,100% 100%;
  background-position:center center,center center;
  background-repeat:no-repeat,no-repeat;
  box-shadow:inset 0 -1px rgba(255,255,255,.16);
}
.dashboard-v34 .v34-hero-copy h1{
  text-shadow:0 2px 12px rgba(9,23,76,.18);
}
.dashboard-v34 .v34-hero-actions .btn{
  box-shadow:0 7px 18px rgba(25,37,83,.13);
  transition:transform .16s ease,box-shadow .16s ease;
}
.dashboard-v34 .v34-hero-actions .btn:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 23px rgba(25,37,83,.18);
}

/* Kaarten: iets rustiger en consistenter, zonder afmetingen/indeling te veranderen. */
.dashboard-v34 .v34-metric-card,
.dashboard-v34 .v34-panel,
.dashboard-v34 .v34-quick-section{
  border-color:rgba(211,213,207,.92);
}
.dashboard-v34 .v34-metric-card{
  box-shadow:0 10px 28px rgba(30,40,88,.085);
}
.dashboard-v34 .v34-panel,
.dashboard-v34 .v34-quick-section{
  box-shadow:0 7px 22px rgba(30,40,88,.055);
}
.dashboard-v34 .v34-topic-tile{
  background:rgba(250,250,248,.94);
}

@media(max-width:900px){
  .dashboard-v34 .compact-home-main::after{
    width:74vw;
    height:520px;
    opacity:.30;
  }
}
@media(max-width:700px){
  .dashboard-v34 .compact-home-main::after{display:none}
}

/* v52 — kaartconsistentie, interactie en toegankelijkheid.
   Geen structuur- of inhoudswijzigingen; alleen polish op de bestaande homepage. */
.dashboard-v34 .v34-metric-card,
.dashboard-v34 .v34-panel,
.dashboard-v34 .v34-quick-section,
.dashboard-v34 .v34-topic-tile{
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background-color .18s ease;
}
.dashboard-v34 .v34-metric-card:hover,
.dashboard-v34 .v34-panel:hover,
.dashboard-v34 .v34-quick-section:hover{
  border-color:#c9ccda;
  box-shadow:0 12px 30px rgba(30,40,88,.085);
}
.dashboard-v34 .v34-topic-tile:hover{
  transform:translateY(-2px);
  box-shadow:0 9px 22px rgba(36,53,136,.10);
}
.dashboard-v34 .v34-topic-tile:focus-visible,
.dashboard-v34 .v34-metric-card:focus-visible,
.dashboard-v34 .v34-panel-head>a:focus-visible,
.dashboard-v34 .v34-hero-actions .btn:focus-visible{
  outline:3px solid rgba(230,128,0,.32);
  outline-offset:3px;
}

/* Metrics iets consistenter en rustiger uitlijnen. */
.dashboard-v34 .v34-metric-grid{align-items:stretch}
.dashboard-v34 .v34-metric-card{height:100%}
.dashboard-v34 .v34-metric-copy>small{color:#6f7380}
.dashboard-v34 .v34-metric-copy>strong,
.dashboard-v34 .v34-metric-dynamic>strong{font-variant-numeric:tabular-nums}

/* Planningpaneel en BHV visueel op één lijn houden. */
.dashboard-v34 .v34-focus-grid{align-items:stretch}
.dashboard-v34 .v34-focus-grid>.v34-panel{height:100%}
.dashboard-v34 .v34-bhv-panel{
  box-shadow:0 12px 30px rgba(26,42,118,.20);
}
.dashboard-v34 .v34-bhv-person{
  transition:background-color .16s ease,border-color .16s ease,transform .16s ease;
}
.dashboard-v34 .v34-bhv-person:hover{
  background:rgba(255,255,255,.11);
  border-color:rgba(255,255,255,.18);
  transform:translateY(-1px);
}
.dashboard-v34 .v34-bhv-status{
  box-shadow:0 0 0 3px rgba(88,210,122,.16),0 0 10px rgba(88,210,122,.25);
}

/* Snel naar: betere hiërarchie zonder layout te veranderen. */
.dashboard-v34 .v34-topic-grid{align-items:stretch}
.dashboard-v34 .v34-topic-tile{height:100%}
.dashboard-v34 .v34-topic-tile strong{line-height:1.2}
.dashboard-v34 .v34-topic-tile small{color:#747882}
.dashboard-v34 .v34-topic-tile:hover .v34-topic-icon{
  transform:scale(1.03);
}
.dashboard-v34 .v34-topic-icon{transition:transform .16s ease}

/* Rustige hover op links in panelen. */
.dashboard-v34 .v34-panel-head>a,
.dashboard-v34 .v34-news-row,
.dashboard-v34 .v34-doc-row,
.dashboard-v34 .v34-timeline-row{
  transition:color .16s ease,background-color .16s ease;
}
.dashboard-v34 .v34-news-row:hover,
.dashboard-v34 .v34-doc-row:hover,
.dashboard-v34 .v34-timeline-row:hover{
  background:rgba(244,245,249,.55);
}

@media (prefers-reduced-motion: reduce){
  .dashboard-v34 .v34-metric-card,
  .dashboard-v34 .v34-panel,
  .dashboard-v34 .v34-quick-section,
  .dashboard-v34 .v34-topic-tile,
  .dashboard-v34 .v34-bhv-person,
  .dashboard-v34 .v34-topic-icon,
  .dashboard-v34 .v34-hero-actions .btn{
    transition:none!important;
    transform:none!important;
  }
}

/* =========================================================
   v53 — BHV functioneler zonder de homepage-layout te wijzigen
   ========================================================= */
.dashboard-v34 .v34-bhv-person.v53-bhv-clickable{
  color:inherit;
  text-decoration:none;
  cursor:pointer;
  padding-right:48px;
}
.dashboard-v34 .v53-bhv-phone{
  display:block;
  margin-top:3px;
  font-size:9px;
  font-weight:700;
  color:#ffd195;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.dashboard-v34 .v53-bhv-call{
  position:absolute;
  right:8px;
  bottom:8px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:30px;
  height:20px;
  padding:0 7px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  background:rgba(255,255,255,.10);
  color:#fff;
  font-size:8px;
  font-weight:800;
  letter-spacing:.02em;
  transition:background-color .16s ease,border-color .16s ease,transform .16s ease;
}
.dashboard-v34 .v53-bhv-clickable:hover .v53-bhv-call,
.dashboard-v34 .v53-bhv-clickable:focus-visible .v53-bhv-call{
  background:#fff;
  border-color:#fff;
  color:#243588;
  transform:translateY(-1px);
}
.dashboard-v34 .v53-bhv-clickable:focus-visible{
  outline:3px solid rgba(255,209,149,.62);
  outline-offset:3px;
}
.dashboard-v34 .v34-bhv-head .bhv-live-label{
  white-space:nowrap;
  font-variant-numeric:tabular-nums;
}
@media(max-width:900px){
  .dashboard-v34 .v53-bhv-phone,.dashboard-v34 .v53-bhv-call{display:none}
  .dashboard-v34 .v34-bhv-person.v53-bhv-clickable{padding-right:9px}
}
@media(prefers-reduced-motion:reduce){
  .dashboard-v34 .v53-bhv-call{transition:none!important;transform:none!important}
}


/* =========================================================
   v54 — moderne hoofdnavigatie
   ========================================================= */
.dashboard-v34 .nav-row{
  background:rgba(248,248,243,.96);
  border-top:1px solid rgba(36,53,136,.04);
  border-bottom:1px solid rgba(36,53,136,.08);
  box-shadow:0 3px 14px rgba(24,37,96,.045);
}
.dashboard-v34 .nav-inner{
  height:58px;
  align-items:center;
  gap:0;
}
.dashboard-v34 .main-nav{
  display:flex;
  align-items:center;
  gap:5px;
  height:100%;
}
.dashboard-v34 .main-nav a{
  height:40px;
  padding:0 15px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:9px;
  color:#3d414c;
  font-size:15px;
  font-weight:700;
  line-height:1;
  white-space:nowrap;
  transition:background-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.dashboard-v34 .main-nav a:hover{
  color:#243588;
  background:#fff;
  box-shadow:0 3px 12px rgba(36,53,136,.08);
  border-bottom:0;
  transform:translateY(-1px);
}
.dashboard-v34 .main-nav a.active{
  color:#243588;
  background:#fff;
  border-bottom:0;
  box-shadow:0 4px 15px rgba(36,53,136,.11);
  position:relative;
}
.dashboard-v34 .main-nav a.active::after{
  content:"";
  position:absolute;
  left:13px;
  right:13px;
  bottom:-9px;
  height:3px;
  border-radius:3px 3px 0 0;
  background:#e68000;
}
.dashboard-v34 .main-nav .nav-home{
  gap:8px;
  padding-left:13px;
  padding-right:17px;
}
.dashboard-v34 .nav-home-icon{
  width:19px;
  height:19px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#243588;
}
.dashboard-v34 .nav-home-icon svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
@media(max-width:1180px){
  .dashboard-v34 .main-nav{gap:2px}
  .dashboard-v34 .main-nav a{font-size:14px;padding-inline:11px}
}
@media(max-width:820px){
  .dashboard-v34 .nav-inner{height:54px;overflow-x:auto;scrollbar-width:none}
  .dashboard-v34 .nav-inner::-webkit-scrollbar{display:none}
  .dashboard-v34 .main-nav{flex:0 0 auto}
  .dashboard-v34 .main-nav a{height:38px;font-size:13px;padding-inline:11px}
  .dashboard-v34 .main-nav a.active::after{bottom:-8px}
}
@media(prefers-reduced-motion:reduce){
  .dashboard-v34 .main-nav a{transition:none!important;transform:none!important}
}

/* === v55: uniforme moderne hoofdnavigatie op ALLE pagina's === */
.nav-row{
  background:#f2f2eb;
  border-top:1px solid rgba(36,53,136,.05);
  border-bottom:1px solid rgba(36,53,136,.08);
}
.nav-inner{
  min-height:56px;
  height:56px;
  display:flex;
  align-items:center;
  gap:0;
}
/* De oude losse Intranet-knop is overal overbodig. */
.nav-primary{display:none!important}
.main-nav{
  display:flex;
  align-items:center;
  gap:6px;
  min-width:0;
  height:100%;
}
.main-nav a{
  position:relative;
  height:40px;
  padding:0 15px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:0!important;
  border-radius:9px;
  text-decoration:none;
  color:#3d414c;
  font-size:15px;
  font-weight:700;
  line-height:1;
  white-space:nowrap;
  transition:background-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.main-nav a:hover{
  color:#243588;
  background:#fff;
  box-shadow:0 3px 12px rgba(36,53,136,.08);
  transform:translateY(-1px);
}
.main-nav a.active,
.main-nav a[aria-current="page"]{
  color:#243588;
  background:#fff;
  box-shadow:0 4px 15px rgba(36,53,136,.11);
}
.main-nav a.active::after,
.main-nav a[aria-current="page"]::after{
  content:"";
  position:absolute;
  left:13px;
  right:13px;
  bottom:-9px;
  height:3px;
  border-radius:3px 3px 0 0;
  background:#e68000;
}
.main-nav .nav-home{
  gap:8px;
  padding-left:13px;
  padding-right:17px;
}
.nav-home-icon{
  width:19px;
  height:19px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#243588;
  flex:0 0 auto;
}
.nav-home-icon svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
@media(max-width:1180px){
  .main-nav{gap:2px}
  .main-nav a{font-size:14px;padding-inline:11px}
}
@media(max-width:820px){
  .nav-inner{height:54px;min-height:54px;overflow-x:auto;scrollbar-width:none}
  .nav-inner::-webkit-scrollbar{display:none}
  .main-nav{flex:0 0 auto}
  .main-nav a{height:38px;font-size:13px;padding-inline:11px}
  .main-nav a.active::after,.main-nav a[aria-current="page"]::after{bottom:-8px}
}

/* === v56: Home terug op alle pagina's + fotografie doorgetrokken === */
/* Op subpagina's bestaat de oude nav-primary nog als link naar /. Gebruik die nu als moderne Home-knop. */
.nav-primary{
  display:inline-flex!important;
  align-self:center;
  height:40px;
  min-width:auto;
  padding:0 16px;
  gap:8px;
  border:0;
  border-radius:9px;
  background:#fff;
  color:#243588;
  box-shadow:0 4px 15px rgba(36,53,136,.10);
  font-size:0;
  font-weight:700;
  line-height:1;
  text-decoration:none;
  transition:background-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.nav-primary:hover{
  background:#fff;
  color:#243588;
  box-shadow:0 6px 18px rgba(36,53,136,.14);
  transform:translateY(-1px);
}
.nav-primary .hamburger{display:none!important}
.nav-primary::before{
  content:"";
  width:18px;
  height:18px;
  flex:0 0 18px;
  background:no-repeat center/18px 18px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23243588' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 11.2 12 4l8.5 7.2'/%3E%3Cpath d='M5.8 10.2V20h12.4v-9.8M9.5 20v-5.7h5V20'/%3E%3C/svg%3E");
}
.nav-primary::after{
  content:"Home";
  font-size:15px;
  font-weight:700;
  color:#243588;
}
/* Op de echte homepage staat Home al in main-nav; daar is nav-primary niet aanwezig. */

/* Kantoorpand als visuele hero op alle inhoudspagina's. */
body:not(.dashboard-v34) .hero-vahb{
  background-color:#e8eef7;
  background-image:
    linear-gradient(90deg,rgba(255,255,255,.91) 0%,rgba(255,255,255,.72) 38%,rgba(255,255,255,.35) 72%,rgba(255,255,255,.18) 100%),
    url('/static/vahb-hero-camping.png');
  background-size:100% 100%,cover;
  background-position:center center,center 42%;
  background-repeat:no-repeat,no-repeat;
  border-bottom:3px solid #e68000;
}
body:not(.dashboard-v34) .hero-vahb .hero-copy h1,
body:not(.dashboard-v34) .hero-vahb .hero-copy p,
body:not(.dashboard-v34) .hero-vahb .hero-panel{
  position:relative;
  z-index:1;
}
/* Magazijn subtiel als onderste paginalaag, zonder kaarten te wijzigen. */
body:not(.dashboard-v34) .content-shell{
  position:relative;
  background-color:rgba(247,247,244,.96);
  background-image:
    linear-gradient(180deg,rgba(247,247,244,.98) 0%,rgba(247,247,244,.93) 46%,rgba(247,247,244,.78) 72%,rgba(247,247,244,.88) 100%),
    url('/static/vahb-magazijn.jpg');
  background-size:100% 100%,58% auto;
  background-position:center center,right bottom;
  background-repeat:no-repeat,no-repeat;
}
body:not(.dashboard-v34) .content-shell .section-tint{
  background:rgba(239,239,228,.90);
  backdrop-filter:blur(2px);
  -webkit-backdrop-filter:blur(2px);
}
body:not(.dashboard-v34) .content-shell .section:not(.section-tint){
  background:transparent;
}

@media(max-width:820px){
  .nav-primary{height:38px;padding:0 12px}
  .nav-primary::after{font-size:13px}
  body:not(.dashboard-v34) .hero-vahb{background-position:center center,42% 42%}
  body:not(.dashboard-v34) .content-shell{background-size:100% 100%,95% auto}
}
@media(prefers-reduced-motion:reduce){.nav-primary{transition:none!important;transform:none!important}}

/* === v57: Home werkelijk op alle subpagina's + dezelfde fotolijn als homepage === */
body.vahb-photo-page{
  position:relative;
  min-height:100vh;
  background:#f5f5f1;
}
body.vahb-photo-page::before,
body.vahb-photo-page::after{
  content:"";
  position:fixed;
  left:0;right:0;
  pointer-events:none;
  z-index:-2;
  background-repeat:no-repeat;
}
body.vahb-photo-page::before{
  top:112px;
  height:360px;
  background-image:
    linear-gradient(90deg,rgba(20,40,105,.80) 0%,rgba(35,57,135,.62) 32%,rgba(255,255,255,.26) 70%,rgba(255,255,255,.55) 100%),
    url('/static/vahb-hero-camping.png');
  background-size:100% 100%,cover;
  background-position:center,center 46%;
}
body.vahb-photo-page::after{
  top:430px;
  bottom:0;
  background-image:
    linear-gradient(180deg,rgba(247,247,244,.97) 0%,rgba(247,247,244,.92) 38%,rgba(247,247,244,.76) 74%,rgba(247,247,244,.86) 100%),
    url('/static/vahb-magazijn.jpg');
  background-size:100% 100%,58% auto;
  background-position:center,right bottom;
}
body.vahb-photo-page main,
body.vahb-photo-page .content-shell,
body.vahb-photo-page .page-shell{
  background:transparent!important;
}
body.vahb-photo-page .section-tint{
  background:rgba(239,239,228,.88)!important;
  backdrop-filter:blur(2px);
  -webkit-backdrop-filter:blur(2px);
}
body.vahb-photo-page .main-nav a[data-v57-home]{
  gap:8px;
  padding-left:13px;
  padding-right:17px;
}
body.vahb-photo-page .nav-primary{display:none!important}
@media(max-width:820px){
  body.vahb-photo-page::before{top:108px;height:300px;background-position:center,42% 45%}
  body.vahb-photo-page::after{top:390px;background-size:100% 100%,95% auto}
}

/* === v58: proportionele subpagina-shell + footer altijd onderaan === */
html{min-height:100%}
body.vahb-photo-page{
  min-height:100vh;
  display:flex;
  flex-direction:column;
  overflow-x:hidden;
}
body.vahb-photo-page > .site-header,
body.vahb-photo-page > #alertStack{
  flex:0 0 auto;
}
body.vahb-photo-page > main,
body.vahb-photo-page > .content-shell,
body.vahb-photo-page > .page-shell{
  flex:1 0 auto;
  width:100%;
  box-sizing:border-box;
}
body.vahb-photo-page > .site-footer{
  flex:0 0 auto;
  width:100%;
  margin-top:auto!important;
  position:relative;
  z-index:3;
  background:rgba(239,239,228,.97);
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}
body.vahb-photo-page .footer-grid{
  width:min(100% - 48px,1530px);
  margin-inline:auto;
  padding-top:28px;
  padding-bottom:28px;
  align-items:center;
}
/* De fotografielaag vult alleen de vrije paginaruimte en veroorzaakt geen extra lege zone onder de footer. */
body.vahb-photo-page::after{
  bottom:0;
}
/* Zorg dat korte inhoudspagina's visueel in verhouding blijven. */
body.vahb-photo-page main .shell-wide,
body.vahb-photo-page .content-shell .shell-wide,
body.vahb-photo-page .page-shell .shell-wide{
  width:min(100% - 48px,1530px);
  margin-inline:auto;
}
@media(max-width:820px){
  body.vahb-photo-page .footer-grid,
  body.vahb-photo-page main .shell-wide,
  body.vahb-photo-page .content-shell .shell-wide,
  body.vahb-photo-page .page-shell .shell-wide{
    width:min(100% - 28px,1530px);
  }
}


/* === v59: bredere, volledige menubalk === */
.nav-row{overflow:visible}
.nav-inner{
  height:60px;
  width:min(100% - 64px,1680px);
  max-width:none;
  margin-inline:auto;
  padding-inline:0;
  gap:0;
}
.main-nav.main-nav-v59{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:4px;
  min-width:0;
}
.main-nav.main-nav-v59 a{
  min-width:0;
  flex:0 1 auto;
  height:44px;
  margin:8px 0;
  padding:0 12px;
  border:1px solid transparent;
  border-bottom:3px solid transparent;
  border-radius:10px;
  white-space:nowrap;
  font-size:14px;
  font-weight:700;
  line-height:1;
  transition:background .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.main-nav.main-nav-v59 a:hover{
  background:rgba(255,255,255,.72);
  border-color:rgba(26,51,132,.10);
  border-bottom-color:var(--vahb-orange);
  color:var(--vahb-blue);
}
.main-nav.main-nav-v59 a.active{
  background:#fff;
  color:var(--vahb-blue);
  border-color:rgba(26,51,132,.08);
  border-bottom-color:var(--vahb-orange);
  box-shadow:0 5px 16px rgba(22,44,108,.08);
}
.main-nav.main-nav-v59 .nav-home{gap:7px;padding-left:11px}
.main-nav.main-nav-v59 .nav-home-icon{width:16px;height:16px;display:inline-flex;flex:0 0 16px}
.main-nav.main-nav-v59 .nav-home-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:1280px){
  .nav-inner{width:100%;padding-inline:18px;overflow-x:auto;scrollbar-width:thin}
  .main-nav.main-nav-v59{justify-content:flex-start;gap:4px;width:max-content;min-width:100%}
  .main-nav.main-nav-v59 a{flex:0 0 auto;padding-inline:11px;font-size:13px}
}
@media(max-width:820px){
  .nav-inner{height:54px;padding-inline:12px}
  .main-nav.main-nav-v59 a{height:40px;margin:7px 0;padding-inline:10px;font-size:12.5px;border-radius:8px}
}
\n\n/* === v60: compactere menubalk, zonder 'Alle onderdelen' === */
.nav-row{overflow:visible}
.nav-inner{
  height:56px;
  width:min(100% - 56px,1500px);
  max-width:none;
  margin-inline:auto;
  padding-inline:0;
  overflow-x:auto;
  scrollbar-width:none;
}
.nav-inner::-webkit-scrollbar{display:none}
.main-nav.main-nav-v60{
  width:max-content;
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:6px;
}
.main-nav.main-nav-v60 a{
  min-width:0;
  flex:0 0 auto;
  height:40px;
  margin:8px 0;
  padding:0 11px;
  border:1px solid transparent;
  border-bottom:3px solid transparent;
  border-radius:9px;
  white-space:nowrap;
  font-size:13.5px;
  font-weight:700;
  line-height:1;
  transition:background .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.main-nav.main-nav-v60 a:hover{
  background:rgba(255,255,255,.72);
  border-color:rgba(26,51,132,.10);
  border-bottom-color:var(--vahb-orange);
  color:var(--vahb-blue);
}
.main-nav.main-nav-v60 a.active{
  background:#fff;
  color:var(--vahb-blue);
  border-color:rgba(26,51,132,.08);
  border-bottom-color:var(--vahb-orange);
  box-shadow:0 4px 14px rgba(22,44,108,.07);
}
.main-nav.main-nav-v60 .nav-home{gap:6px;padding-left:10px}
.main-nav.main-nav-v60 .nav-home-icon{width:15px;height:15px;display:inline-flex;flex:0 0 15px}
.main-nav.main-nav-v60 .nav-home-icon svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:1280px){
  .nav-inner{width:100%;padding-inline:16px}
  .main-nav.main-nav-v60{gap:4px}
  .main-nav.main-nav-v60 a{padding-inline:9px;font-size:13px}
}
@media(max-width:820px){
  .nav-inner{height:52px;padding-inline:10px}
  .main-nav.main-nav-v60 a{height:38px;margin:7px 0;padding-inline:9px;font-size:12.5px;border-radius:8px}
}

/* === v61: herstel verhoudingen inhoudspagina's ===
   v58 zette ieder direct <main>-element op 100% breed. Op pagina's zoals
   Declaraties is <main> zelf ook .shell-wide, waardoor de bestaande
   maximale contentbreedte werd overschreven. Deze regels herstellen de
   oorspronkelijke containerbreedte zonder menu/fotolagen te wijzigen. */
body.vahb-photo-page > main.shell-wide{
  width:min(1530px,calc(100% - 64px))!important;
  max-width:1530px;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box;
}
body.vahb-photo-page > main.expense-page-main,
body.vahb-photo-page > main.finance-expense-main{
  width:min(1530px,calc(100% - 64px))!important;
  max-width:1530px;
  margin-left:auto!important;
  margin-right:auto!important;
}
/* Pagina-inhoud hoort binnen de contentkolom te blijven; fotolagen mogen
   nooit de gridbreedtes of overflow bepalen. */
body.vahb-photo-page .expense-stat-grid,
body.vahb-photo-page .expense-main-grid,
body.vahb-photo-page .finance-expense-layout,
body.vahb-photo-page .expense-settings-grid{
  width:100%;
  max-width:100%;
  min-width:0;
}
body.vahb-photo-page .expense-main-grid > *,
body.vahb-photo-page .finance-expense-layout > *{
  min-width:0;
}
body.vahb-photo-page .expense-form-card,
body.vahb-photo-page .expense-list-card,
body.vahb-photo-page .finance-expense-list-card,
body.vahb-photo-page .finance-expense-detail-card{
  max-width:100%;
  box-sizing:border-box;
}
@media(max-width:820px){
  body.vahb-photo-page > main.shell-wide,
  body.vahb-photo-page > main.expense-page-main,
  body.vahb-photo-page > main.finance-expense-main{
    width:min(100% - 32px,1530px)!important;
  }
}
@media(max-width:600px){
  body.vahb-photo-page > main.shell-wide,
  body.vahb-photo-page > main.expense-page-main,
  body.vahb-photo-page > main.finance-expense-main{
    width:min(100% - 24px,1530px)!important;
  }
}

/* === v62: betere leesbaarheid van paginatitels op de blauwe fotolaag ===
   Alleen kopteksten boven de witte kaarten worden aangepast. */
body.vahb-photo-page .expense-page-head h1,
body.vahb-photo-page .finance-expense-main .expense-page-head h1{
  color:#fff!important;
  text-shadow:0 2px 8px rgba(12,28,82,.52);
}
body.vahb-photo-page .expense-page-head p,
body.vahb-photo-page .finance-expense-main .expense-page-head p{
  color:rgba(255,255,255,.92)!important;
  text-shadow:0 1px 5px rgba(12,28,82,.46);
}
body.vahb-photo-page .expense-page-head .eyebrow,
body.vahb-photo-page .expense-page-head small:first-child{
  color:#ffad32!important;
  text-shadow:0 1px 4px rgba(10,24,70,.45);
}
/* Ook algemene paginakoppen die rechtstreeks op de hero/fotolaag staan. */
body.vahb-photo-page .hero-copy h1,
body.vahb-photo-page .page-hero h1,
body.vahb-photo-page .page-head h1{
  color:#fff!important;
  text-shadow:0 2px 8px rgba(12,28,82,.52);
}
body.vahb-photo-page .hero-copy p,
body.vahb-photo-page .page-hero p,
body.vahb-photo-page .page-head p{
  color:rgba(255,255,255,.92)!important;
  text-shadow:0 1px 5px rgba(12,28,82,.44);
}

/* === v63: consistente, compactere paginakop op alle subpagina's ===
   De bovenste paginatitel krijgt overal hetzelfde contrast en formaat,
   zonder kaarttitels/formulierkoppen te raken. */
body.vahb-photo-page .vahb-page-heading{
  position:relative;
  z-index:2;
}
body.vahb-photo-page .vahb-page-title{
  margin-top:0!important;
  margin-bottom:7px!important;
  color:#fff!important;
  font-size:clamp(28px,2.35vw,36px)!important;
  line-height:1.06!important;
  letter-spacing:-.022em!important;
  font-weight:750!important;
  text-shadow:0 2px 8px rgba(10,25,75,.48)!important;
}
body.vahb-photo-page .vahb-page-heading > p,
body.vahb-photo-page .vahb-page-heading .vahb-page-subtitle{
  color:rgba(255,255,255,.94)!important;
  font-size:clamp(13px,1.05vw,16px)!important;
  line-height:1.45!important;
  text-shadow:0 1px 5px rgba(10,25,75,.42)!important;
}
body.vahb-photo-page .vahb-page-heading .eyebrow,
body.vahb-photo-page .vahb-page-heading > small:first-child{
  color:#ffae2f!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  text-shadow:0 1px 4px rgba(10,25,75,.38)!important;
}
/* Bestaande specifieke paginakoppen volgen hetzelfde compactere formaat. */
body.vahb-photo-page .expense-page-head h1,
body.vahb-photo-page .page-head h1,
body.vahb-photo-page .page-hero h1,
body.vahb-photo-page .account-heading h1,
body.vahb-photo-page .admin-title h1{
  font-size:clamp(28px,2.35vw,36px)!important;
  line-height:1.06!important;
}
@media(max-width:820px){
  body.vahb-photo-page .vahb-page-title,
  body.vahb-photo-page .expense-page-head h1,
  body.vahb-photo-page .page-head h1,
  body.vahb-photo-page .page-hero h1,
  body.vahb-photo-page .account-heading h1,
  body.vahb-photo-page .admin-title h1{
    font-size:clamp(26px,7vw,32px)!important;
  }
}

/* === v64: één visueel systeem voor alle subpagina's ===
   Normaliseert typografie, knoppen, formulieren en kaarten zonder de inhoudslogica te wijzigen. */
body.vahb-photo-page{
  font-family:Arial,"Helvetica Neue",Helvetica,sans-serif!important;
  color:#4f5562;
}
body.vahb-photo-page .vahb-page-title,
body.vahb-photo-page .expense-page-head h1,
body.vahb-photo-page .page-head h1,
body.vahb-photo-page .page-hero h1,
body.vahb-photo-page .account-heading h1,
body.vahb-photo-page .admin-title h1{
  font-family:inherit!important;
  font-size:clamp(27px,2vw,32px)!important;
  line-height:1.08!important;
  font-weight:750!important;
  letter-spacing:-.018em!important;
}
body.vahb-photo-page .vahb-page-heading > p,
body.vahb-photo-page .vahb-page-subtitle,
body.vahb-photo-page .expense-page-head p,
body.vahb-photo-page .page-head p,
body.vahb-photo-page .page-hero p{
  font-family:inherit!important;
  font-size:14px!important;
  line-height:1.5!important;
  font-weight:400!important;
}
body.vahb-photo-page .eyebrow,
body.vahb-photo-page .expense-card-head small,
body.vahb-photo-page .vahb-page-heading > small:first-child{
  font-family:inherit!important;
  font-size:10px!important;
  line-height:1.2!important;
  font-weight:800!important;
  letter-spacing:.09em!important;
}

/* Kaartkoppen */
body.vahb-photo-page .form-card h2,
body.vahb-photo-page .list-card h2,
body.vahb-photo-page .expense-card-head h2,
body.vahb-photo-page .account-panel h2,
body.vahb-photo-page .leave-admin-head h2,
body.vahb-photo-page .finance-detail-head h2{
  font-family:inherit!important;
  color:var(--vahb-blue)!important;
  font-size:20px!important;
  line-height:1.18!important;
  font-weight:750!important;
  letter-spacing:-.012em!important;
}

/* Eén knopstijl. Alleen echte actieknoppen; navigatie blijft apart. */
body.vahb-photo-page .btn,
body.vahb-photo-page .vahb-standard-action{
  min-height:40px!important;
  padding:0 16px!important;
  border-radius:8px!important;
  border:1px solid var(--vahb-blue)!important;
  background:var(--vahb-blue)!important;
  color:#fff!important;
  box-shadow:none!important;
  font-family:inherit!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:750!important;
  letter-spacing:0!important;
  text-transform:none!important;
  text-decoration:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  cursor:pointer!important;
  transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease!important;
}
body.vahb-photo-page .btn:hover,
body.vahb-photo-page .vahb-standard-action:hover{
  background:var(--vahb-blue-dark)!important;
  border-color:var(--vahb-blue-dark)!important;
  color:#fff!important;
  box-shadow:0 5px 14px rgba(36,53,136,.13)!important;
}
body.vahb-photo-page .btn.secondary,
body.vahb-photo-page .btn.ghost,
body.vahb-photo-page .vahb-standard-action.is-secondary{
  background:#fff!important;
  color:var(--vahb-blue)!important;
  border-color:#b9c1e3!important;
}
body.vahb-photo-page .btn.secondary:hover,
body.vahb-photo-page .btn.ghost:hover,
body.vahb-photo-page .vahb-standard-action.is-secondary:hover{
  background:#f5f7fd!important;
  color:var(--vahb-blue-dark)!important;
  border-color:var(--vahb-blue)!important;
}
body.vahb-photo-page .btn.danger{
  background:#fff!important;
  color:var(--danger)!important;
  border-color:#e2b5b1!important;
}

/* Formuliervelden overal dezelfde maat en typografie */
body.vahb-photo-page label{
  font-family:inherit!important;
  font-size:10px!important;
  line-height:1.25!important;
  font-weight:800!important;
  letter-spacing:.065em!important;
}
body.vahb-photo-page input:not([type="checkbox"]):not([type="radio"]),
body.vahb-photo-page select,
body.vahb-photo-page textarea{
  font-family:inherit!important;
  font-size:14px!important;
  color:#333!important;
  border:1px solid #cfd2d8!important;
  border-radius:7px!important;
  background:#fff!important;
}
body.vahb-photo-page input:not([type="checkbox"]):not([type="radio"]),
body.vahb-photo-page select{
  min-height:42px!important;
  padding:9px 11px!important;
}
body.vahb-photo-page textarea{
  padding:10px 11px!important;
  line-height:1.45!important;
}
body.vahb-photo-page input:focus,
body.vahb-photo-page select:focus,
body.vahb-photo-page textarea:focus{
  border-color:var(--vahb-blue)!important;
  box-shadow:0 0 0 3px rgba(36,53,136,.09)!important;
  outline:none!important;
}

/* Panelen en kaarten krijgen dezelfde afronding en rand. */
body.vahb-photo-page .form-card,
body.vahb-photo-page .list-card,
body.vahb-photo-page .expense-form-card,
body.vahb-photo-page .expense-list-card,
body.vahb-photo-page .finance-expense-list-card,
body.vahb-photo-page .finance-expense-detail-card,
body.vahb-photo-page .account-panel,
body.vahb-photo-page .expense-stat-grid > article,
body.vahb-photo-page .notice,
body.vahb-photo-page .panel-card{
  border-radius:10px!important;
  border-color:#dfe1e5!important;
  box-shadow:0 5px 18px rgba(30,45,105,.055)!important;
}

/* Statistiekkaarten */
body.vahb-photo-page .expense-stat-grid > article strong{
  font-family:inherit!important;
  font-size:24px!important;
  font-weight:750!important;
  line-height:1.05!important;
}
body.vahb-photo-page .expense-stat-grid > article small,
body.vahb-photo-page .expense-stat-grid > article span{
  font-family:inherit!important;
}

/* Bovenste actieknop van een pagina op dezelfde lijn en stijl. */
body.vahb-photo-page .vahb-page-heading .vahb-standard-action,
body.vahb-photo-page .expense-page-head .vahb-standard-action,
body.vahb-photo-page .page-head .vahb-standard-action,
body.vahb-photo-page .page-hero .vahb-standard-action,
body.vahb-photo-page .account-heading .vahb-standard-action,
body.vahb-photo-page .admin-title .vahb-standard-action{
  min-width:0!important;
  white-space:nowrap!important;
}

@media(max-width:820px){
  body.vahb-photo-page .vahb-page-title,
  body.vahb-photo-page .expense-page-head h1,
  body.vahb-photo-page .page-head h1,
  body.vahb-photo-page .page-hero h1,
  body.vahb-photo-page .account-heading h1,
  body.vahb-photo-page .admin-title h1{
    font-size:27px!important;
  }
  body.vahb-photo-page .btn,
  body.vahb-photo-page .vahb-standard-action{min-height:39px!important;padding-inline:13px!important;font-size:12.5px!important}
}

/* === v65: identieke subpagina-header op alle pagina's behalve Home === */
body.vahb-photo-page .vahb-v65-page-shell{
  position:relative;
  z-index:2;
  width:100%;
  margin:0;
  font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;
}
body.vahb-photo-page .vahb-v65-context-band{
  position:relative;
  padding:22px 0 16px;
  background:
    linear-gradient(90deg,rgba(27,48,119,.92) 0%,rgba(42,67,145,.72) 38%,rgba(231,237,248,.72) 100%),
    url('/static/vahb-hero-camping.png') center 42%/cover no-repeat;
}
body.vahb-photo-page .vahb-v65-context{
  width:min(1530px,calc(100% - 64px));
  min-height:42px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:18px;
  padding:0 14px;
  border:1px solid rgba(29,48,119,.14);
  border-radius:10px;
  background:rgba(255,255,255,.97);
  box-shadow:0 3px 10px rgba(26,40,95,.06);
  box-sizing:border-box;
}
body.vahb-photo-page .vahb-v65-context a,
body.vahb-photo-page .vahb-v65-context strong{
  min-height:40px;
  display:inline-flex;
  align-items:center;
  color:var(--vahb-blue);
  font-size:12px;
  line-height:1;
  font-weight:750;
  text-decoration:none;
  white-space:nowrap;
}
body.vahb-photo-page .vahb-v65-context a:hover{color:var(--vahb-orange)}
body.vahb-photo-page .vahb-v65-context .v65-current{justify-self:center;color:#181818;font-weight:750}
body.vahb-photo-page .vahb-v65-context .v65-all{justify-self:end}

body.vahb-photo-page .vahb-v65-hero{
  position:relative;
  min-height:170px;
  display:flex;
  align-items:center;
  overflow:hidden;
  border-bottom:1px solid rgba(31,48,111,.08);
  background:
    linear-gradient(90deg,rgba(239,240,232,.96) 0%,rgba(239,240,232,.93) 50%,rgba(247,247,241,.88) 100%),
    url('/static/vahb-hero-camping.png') 34% 48%/760px auto no-repeat;
}
body.vahb-photo-page .vahb-v65-hero-inner{
  width:min(1530px,calc(100% - 64px));
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);
  align-items:center;
  gap:64px;
  padding:28px 0 30px;
  box-sizing:border-box;
}
body.vahb-photo-page .vahb-v65-eyebrow{
  margin:0 0 10px;
  color:var(--vahb-orange);
  font-size:10px;
  line-height:1;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
body.vahb-photo-page .vahb-v65-title{
  margin:0;
  color:var(--vahb-blue)!important;
  font-size:clamp(28px,2.2vw,36px)!important;
  line-height:1.08!important;
  font-weight:750!important;
  letter-spacing:-.022em!important;
  text-shadow:none!important;
}
body.vahb-photo-page .vahb-v65-copy{
  justify-self:end;
  width:min(100%,470px);
  color:#6b6d70;
  font-size:14px;
  line-height:1.55;
}
body.vahb-photo-page .vahb-v65-copy p{margin:0 0 10px;color:#6b6d70!important;text-shadow:none!important}
body.vahb-photo-page .vahb-v65-copy a{
  color:var(--vahb-blue);
  font-size:12px;
  font-weight:750;
  text-decoration:underline;
  text-underline-offset:2px;
}
body.vahb-photo-page .vahb-v65-copy a:hover{color:var(--vahb-orange)}

/* Verberg alleen de oude bovenste paginakop/crumbs, nooit formulier- of kaartinhoud. */
body.vahb-photo-page .vahb-v65-hide-old-head{display:none!important}
body.vahb-photo-page .vahb-page-title.vahb-v65-old-title,
body.vahb-photo-page .vahb-page-subtitle.vahb-v65-old-title{display:none!important}

/* Vanaf v65 begint echte pagina-inhoud op een rustig, voorspelbaar ritme. */
body.vahb-photo-page .vahb-v65-page-shell + main,
body.vahb-photo-page .vahb-v65-page-shell + .content-shell,
body.vahb-photo-page .vahb-v65-page-shell + .page-shell{
  margin-top:0!important;
}
body.vahb-photo-page main,
body.vahb-photo-page .content-shell,
body.vahb-photo-page .page-shell{
  position:relative;
  z-index:1;
}

/* Houd buttons en velden op alle subpagina's op exact dezelfde schaal. */
body.vahb-photo-page .btn,
body.vahb-photo-page .vahb-standard-action,
body.vahb-photo-page button:not(.vahb-lang-btn):not(.main-nav button){
  font-family:Arial,"Helvetica Neue",Helvetica,sans-serif!important;
}

@media(max-width:1000px){
  body.vahb-photo-page .vahb-v65-hero-inner{grid-template-columns:1fr;gap:16px;padding:24px 0 26px}
  body.vahb-photo-page .vahb-v65-copy{justify-self:start;width:100%;max-width:720px}
}
@media(max-width:820px){
  body.vahb-photo-page .vahb-v65-context,
  body.vahb-photo-page .vahb-v65-hero-inner{width:min(100% - 28px,1530px)}
  body.vahb-photo-page .vahb-v65-context{grid-template-columns:1fr auto;padding:0 10px}
  body.vahb-photo-page .vahb-v65-context .v65-current{display:none}
  body.vahb-photo-page .vahb-v65-hero{min-height:148px;background-size:620px auto}
  body.vahb-photo-page .vahb-v65-title{font-size:28px!important}
}
@media(max-width:520px){
  body.vahb-photo-page .vahb-v65-context-band{padding:12px 0}
  body.vahb-photo-page .vahb-v65-context .v65-all{display:none}
  body.vahb-photo-page .vahb-v65-context{grid-template-columns:1fr}
  body.vahb-photo-page .vahb-v65-hero-inner{padding:20px 0 22px}
  body.vahb-photo-page .vahb-v65-title{font-size:25px!important}
}

/* === v66: dubbele oude hero definitief verbergen === */
body.vahb-photo-page .vahb-v66-legacy-hero{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
}

/* === v67: Mijn verlof inhoud nooit verbergen === */
body.vahb-photo-page .vahb-v67-old-leave-head,
body.vahb-photo-page .vahb-v67-old-leave-title{display:none!important}
body.vahb-photo-page .leave-portal{
  display:grid!important;
  visibility:visible!important;
  height:auto!important;
  min-height:0!important;
  overflow:visible!important;
  opacity:1!important;
}

/* === v68: homepage overzicht na verwijderen Mijn aanvragen === */
.compact-home-main .v34-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1040px;}
@media(max-width:760px){.compact-home-main .v34-metric-grid{grid-template-columns:1fr;max-width:none;}}

/* === v69: beheeromgeving leesbaar op bedrijfsachtergrond === */
body.vahb-photo-page .admin-wrap .admin-title{
  position:relative;
  z-index:2;
  border-bottom-color:rgba(255,255,255,.28)!important;
}
body.vahb-photo-page .admin-wrap .admin-title h1{
  color:#fff!important;
  font-size:clamp(30px,2.2vw,38px)!important;
  line-height:1.08!important;
  text-shadow:0 2px 8px rgba(8,24,78,.46)!important;
}
body.vahb-photo-page .admin-wrap .admin-title p,
body.vahb-photo-page .admin-wrap .admin-title .subtitle,
body.vahb-photo-page .admin-wrap > p{
  color:rgba(255,255,255,.95)!important;
  text-shadow:0 1px 4px rgba(8,24,78,.42)!important;
}

/* De beheer-tabs staan voortaan op een lichte, rustige balk zodat ieder item leesbaar is. */
body.vahb-photo-page .admin-wrap .tabs{
  position:relative;
  z-index:3;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:4px!important;
  margin:22px 0 26px!important;
  padding:7px!important;
  border:1px solid rgba(36,53,136,.12)!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 5px 18px rgba(25,39,94,.08)!important;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
body.vahb-photo-page .admin-wrap .tab{
  min-height:38px!important;
  margin:0!important;
  padding:0 13px!important;
  border:0!important;
  border-radius:7px!important;
  background:transparent!important;
  color:#394052!important;
  font-family:Arial,"Helvetica Neue",Helvetica,sans-serif!important;
  font-size:12.5px!important;
  line-height:1!important;
  font-weight:700!important;
  text-shadow:none!important;
  white-space:nowrap!important;
}
body.vahb-photo-page .admin-wrap .tab:hover{
  background:#f3f5fb!important;
  color:var(--vahb-blue)!important;
}
body.vahb-photo-page .admin-wrap .tab.active,
body.vahb-photo-page .admin-wrap .tab[aria-selected="true"]{
  position:relative;
  background:#f5f7fd!important;
  color:var(--vahb-blue)!important;
  box-shadow:0 2px 7px rgba(36,53,136,.08)!important;
}
body.vahb-photo-page .admin-wrap .tab.active::after,
body.vahb-photo-page .admin-wrap .tab[aria-selected="true"]::after{
  content:"";
  position:absolute;
  left:12px;
  right:12px;
  bottom:0;
  height:3px;
  border-radius:3px 3px 0 0;
  background:var(--vahb-orange);
}

/* Kleine account/statusbalk boven de tabs blijft helder en rustig. */
body.vahb-photo-page .admin-wrap .admin-auth-banner,
body.vahb-photo-page .admin-wrap .admin-session,
body.vahb-photo-page .admin-wrap .account-status{
  background:rgba(255,255,255,.96)!important;
  color:#555!important;
  border-color:rgba(36,53,136,.14)!important;
  box-shadow:0 3px 12px rgba(25,39,94,.06)!important;
}

@media(max-width:820px){
  body.vahb-photo-page .admin-wrap .tabs{
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    scrollbar-width:none;
  }
  body.vahb-photo-page .admin-wrap .tabs::-webkit-scrollbar{display:none}
  body.vahb-photo-page .admin-wrap .tab{flex:0 0 auto!important;font-size:12px!important;padding-inline:11px!important}
}

/* === v70: zichtbare terugknop in beheeromgeving === */
body.vahb-photo-page .admin-wrap .vahb-admin-back{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  min-height:38px!important;
  padding:0 14px!important;
  margin:0 10px 10px 0!important;
  border:1px solid rgba(36,53,136,.22)!important;
  border-radius:8px!important;
  background:rgba(255,255,255,.96)!important;
  color:var(--vahb-blue)!important;
  font-family:Arial,"Helvetica Neue",Helvetica,sans-serif!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:700!important;
  text-decoration:none!important;
  text-shadow:none!important;
  box-shadow:0 3px 10px rgba(25,39,94,.08)!important;
  position:relative!important;
  z-index:6!important;
  opacity:1!important;
  visibility:visible!important;
}
body.vahb-photo-page .admin-wrap .vahb-admin-back:hover{
  background:#f3f5fb!important;
  border-color:rgba(36,53,136,.38)!important;
  color:#14236e!important;
}

/* === v70: terug naar intranet-knop in beheer altijd zichtbaar === */
body.vahb-photo-page .admin-wrap .admin-title{
  position:relative!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:18px!important;
  flex-wrap:wrap!important;
}
body.vahb-photo-page .admin-wrap .admin-title a[href="/"],
body.vahb-photo-page .admin-wrap .admin-title .admin-back,
body.vahb-photo-page .admin-wrap .admin-title .back-link,
body.vahb-photo-page .admin-wrap .admin-title .vahb-standard-action,
body.vahb-photo-page .admin-wrap .admin-title .btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:40px!important;
  padding:0 15px!important;
  border:1px solid rgba(36,53,136,.24)!important;
  border-radius:8px!important;
  background:rgba(255,255,255,.97)!important;
  color:#243588!important;
  font-family:Arial,"Helvetica Neue",Helvetica,sans-serif!important;
  font-size:13px!important;
  font-weight:750!important;
  line-height:1!important;
  text-decoration:none!important;
  text-shadow:none!important;
  box-shadow:0 3px 12px rgba(24,39,92,.08)!important;
  opacity:1!important;
  visibility:visible!important;
  position:relative!important;
  z-index:10!important;
  white-space:nowrap!important;
}
body.vahb-photo-page .admin-wrap .admin-title a[href="/"]:hover,
body.vahb-photo-page .admin-wrap .admin-title .admin-back:hover,
body.vahb-photo-page .admin-wrap .admin-title .back-link:hover,
body.vahb-photo-page .admin-wrap .admin-title .vahb-standard-action:hover,
body.vahb-photo-page .admin-wrap .admin-title .btn:hover{
  border-color:#243588!important;
  background:#fff!important;
  color:#182660!important;
}
/* Als de teruglink buiten admin-title staat maar binnen beheer, geef hem dezelfde zichtbare stijl. */
body.vahb-photo-page .admin-wrap > a[href="/"]:first-child{
  display:inline-flex!important;
  align-items:center!important;
  min-height:40px!important;
  padding:0 15px!important;
  margin-bottom:14px!important;
  border:1px solid rgba(36,53,136,.24)!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#243588!important;
  font-size:13px!important;
  font-weight:750!important;
  text-decoration:none!important;
  text-shadow:none!important;
  opacity:1!important;
  visibility:visible!important;
  position:relative!important;
  z-index:10!important;
}
@media(max-width:820px){
  body.vahb-photo-page .admin-wrap .admin-title{gap:12px!important}
  body.vahb-photo-page .admin-wrap .admin-title a[href="/"],
  body.vahb-photo-page .admin-wrap .admin-title .admin-back,
  body.vahb-photo-page .admin-wrap .admin-title .back-link,
  body.vahb-photo-page .admin-wrap .admin-title .vahb-standard-action,
  body.vahb-photo-page .admin-wrap .admin-title .btn{min-height:38px!important;padding:0 12px!important;font-size:12px!important}
}

/* === v71: beheer terugknop gegarandeerd zichtbaar rechtsboven === */
.vahb-admin-top-actions{
  position:fixed!important;
  top:8px!important;
  right:16px!important;
  z-index:2147483000!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  width:auto!important;
  max-width:calc(100vw - 24px)!important;
  pointer-events:auto!important;
}
.vahb-admin-top-back{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  height:36px!important;
  padding:0 12px!important;
  box-sizing:border-box!important;
  border:1px solid rgba(36,53,136,.22)!important;
  border-radius:7px!important;
  background:#243588!important;
  color:#fff!important;
  font-family:Arial,"Helvetica Neue",Helvetica,sans-serif!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1!important;
  text-decoration:none!important;
  text-shadow:none!important;
  box-shadow:0 3px 12px rgba(20,35,110,.18)!important;
  opacity:1!important;
  visibility:visible!important;
  white-space:nowrap!important;
}
.vahb-admin-top-back:hover{
  background:#182660!important;
  color:#fff!important;
}
.vahb-admin-top-actions .vahb-floating-lang,
.vahb-admin-top-actions .vahb-admin-lang-inline{
  position:static!important;
  top:auto!important;
  right:auto!important;
  left:auto!important;
  bottom:auto!important;
  margin:0!important;
  z-index:auto!important;
  display:block!important;
  background:#fff!important;
  padding:4px!important;
  border:1px solid #ddd!important;
  border-radius:7px!important;
  box-shadow:0 3px 12px rgba(0,0,0,.07)!important;
}
.admin-wrap .vahb-admin-old-back-hidden{display:none!important}
@media(max-width:720px){
  .vahb-admin-top-actions{right:8px!important;top:8px!important;gap:5px!important}
  .vahb-admin-top-back{height:34px!important;padding:0 9px!important;font-size:11px!important}
  .vahb-admin-top-actions .vahb-lang-name{display:none!important}
}

/* === v72: beheer topacties rustiger uitlijnen === */
.vahb-admin-top-actions{
  gap:18px!important;
  right:22px!important;
}
.vahb-admin-top-back{
  margin-right:2px!important;
  padding-left:14px!important;
  padding-right:14px!important;
}
.vahb-admin-top-actions .vahb-floating-lang,
.vahb-admin-top-actions .vahb-admin-lang-inline{
  margin-left:0!important;
}
body .vahb-admin-old-back-hidden{display:none!important}
@media(max-width:720px){
  .vahb-admin-top-actions{gap:10px!important;right:10px!important}
}

/* === v73: Documenten inhoud altijd zichtbaar === */
body.vahb-photo-page .docs,
body.vahb-photo-page .docs-v11,
body.vahb-photo-page .document-tools,
body.vahb-photo-page [data-documents],
body.vahb-photo-page #documentList,
body.vahb-photo-page #documentsList,
body.vahb-photo-page .documents-grid,
body.vahb-photo-page .document-list{
  visibility:visible!important;
  opacity:1!important;
}

/* === v74: document preview status === */
iframe.vahb-doc-preview-loading{opacity:.55!important;background:#f5f6f8!important}
iframe.vahb-doc-preview-ready{opacity:1!important;background:#fff!important}
iframe.vahb-doc-preview-unavailable{display:none!important}
.vahb-doc-preview-fallback{
  min-height:320px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;
  border:1px solid #d9dce6;background:#f7f8fb;color:#243588;text-align:center;padding:28px;box-sizing:border-box
}
.vahb-doc-preview-fallback strong{font-size:18px}.vahb-doc-preview-fallback span{font-size:13px;color:#666}

/* === v75: Documenten pagina compacter — dubbele titel verwijderen === */
/* De uniforme v65 paginakop toont al 'Documenten'. Verberg daarom alleen de
   tweede contentkop ('Documentatie / Documentencentrum') op de documentenpagina. */
body.vahb-photo-page:has(.main-nav a[href="/documenten"].active) main .section-head,
body.vahb-photo-page:has(.main-nav a[href="/documenten"][aria-current="page"]) main .section-head {
  display:none!important;
}
body.vahb-photo-page:has(.main-nav a[href="/documenten"].active) .document-tools,
body.vahb-photo-page:has(.main-nav a[href="/documenten"][aria-current="page"]) .document-tools {
  margin-top:0!important;
}
/* Iets compacter ritme tussen hero en documentenlijst. */
body.vahb-photo-page:has(.main-nav a[href="/documenten"].active) main,
body.vahb-photo-page:has(.main-nav a[href="/documenten"][aria-current="page"]) main {
  padding-top:26px!important;
}

/* === v76: één paginatitel, rustiger subpagina-opbouw === */
body.vahb-v76-single-title .vahb-v65-context{
  grid-template-columns:1fr!important;
  justify-items:start!important;
  min-height:42px!important;
}
body.vahb-v76-single-title .vahb-v65-context .v65-current,
body.vahb-v76-single-title .vahb-v65-context .v65-all{
  display:none!important;
}
body.vahb-v76-single-title .vahb-v76-redundant-head{
  display:none!important;
}
body.vahb-v76-single-title main{
  padding-top:24px!important;
}
/* Agenda en documenten: content direct laten aansluiten onder de uniforme hero. */
body.vahb-v76-single-title .calendar-grid,
body.vahb-v76-single-title .docs,
body.vahb-v76-single-title .docs-v11,
body.vahb-v76-single-title .document-tools{
  margin-top:0!important;
}

/* === v77: beheer Meldingen en Nieuws beter bruikbaar === */
.vahb-v77-alert-help{
  margin:14px 0 2px;padding:12px 13px;border:1px solid #d8dbe8;border-left:4px solid #e68000;
  background:rgba(255,255,255,.94);color:#4e5360;font-size:12px;line-height:1.45;border-radius:6px
}
.vahb-v77-alert-help strong{display:block;color:#243588;margin-bottom:3px;font-size:12px}
.vahb-v77-alert-help span{display:block}
.admin-wrap .vahb-v77-news-panel{visibility:visible!important;opacity:1!important}
.admin-wrap .vahb-v77-news-panel.vahb-v77-news-panel.active{display:block!important}
.admin-wrap .vahb-v77-news-panel .vahb-v77-news-visible{
  visibility:visible!important;opacity:1!important
}
.admin-wrap .vahb-v77-news-panel .admin-grid{
  display:grid!important;grid-template-columns:minmax(300px,.8fr) minmax(420px,1.2fr)!important;gap:18px!important
}
.admin-wrap .vahb-v77-news-panel .form-card,
.admin-wrap .vahb-v77-news-panel .list-card{display:block!important;background:rgba(255,255,255,.97)!important}
@media(max-width:900px){
  .admin-wrap .vahb-v77-news-panel .admin-grid{grid-template-columns:1fr!important}
}

/* === v78: agenda-meldingen + verplichte loginmelding === */
.vahb-v78-alert-options{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:14px 0;padding:14px 16px;border:1px solid #d9deea;border-radius:10px;background:rgba(255,255,255,.82)}
.vahb-v78-check{display:flex;align-items:flex-start;gap:10px;flex:1;min-width:280px;cursor:pointer;color:#17244b}.vahb-v78-check input{margin-top:3px;width:17px;height:17px;accent-color:#23398f}.vahb-v78-check span{display:grid;gap:3px}.vahb-v78-check strong{font-size:13px}.vahb-v78-check small{font-size:11px;color:#6e7482;line-height:1.35}
.vahb-v78-month-btn{border:1px solid #23398f;background:#fff;color:#23398f;border-radius:9px;padding:9px 13px;font-weight:700;cursor:pointer}.vahb-v78-month-btn:hover{background:#f4f6ff}
.vahb-v78-agenda-alerts{max-width:calc(100% - 0px);margin:0 0 22px;background:rgba(255,255,255,.95);border:1px solid #dfe3eb;border-top:4px solid #f28c00;border-radius:12px;box-shadow:0 8px 24px rgba(25,41,89,.08);overflow:hidden}
.vahb-v78-agenda-head{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 20px 14px;border-bottom:1px solid #eceef2}.vahb-v78-agenda-head span{display:grid;gap:4px}.vahb-v78-agenda-head small{font-size:9px;letter-spacing:.08em;font-weight:800;color:#e87900}.vahb-v78-agenda-head strong{font-size:19px;color:#20388b}.vahb-v78-agenda-head em{font-style:normal;font-size:11px;font-weight:700;color:#687083;background:#f3f5f9;border-radius:999px;padding:6px 10px}
.vahb-v78-agenda-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:0}.vahb-v78-agenda-alert{display:grid;grid-template-columns:38px 1fr;gap:12px;padding:16px 20px;border-right:1px solid #eceef2}.vahb-v78-agenda-alert:last-child{border-right:0}.vahb-v78-agenda-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#eaf0ff;color:#23398f;font-weight:900}.vahb-v78-agenda-alert.important .vahb-v78-agenda-icon{background:#fff0dd;color:#df7800}.vahb-v78-agenda-alert.warning .vahb-v78-agenda-icon{background:#fff0ed;color:#c53b27}.vahb-v78-agenda-alert strong{display:block;color:#20388b;font-size:14px}.vahb-v78-agenda-alert p{margin:4px 0 7px;color:#5e6572;font-size:12px;line-height:1.45}.vahb-v78-agenda-alert small{color:#8a909b;font-size:10px}
.vahb-v78-modal-open{overflow:hidden}.vahb-v78-login-backdrop{position:fixed;inset:0;z-index:2147483000;background:rgba(14,27,68,.72);backdrop-filter:blur(6px);display:grid;place-items:center;padding:24px}.vahb-v78-login-modal{position:relative;width:min(580px,calc(100vw - 36px));background:#fff;border-radius:16px;box-shadow:0 28px 80px rgba(0,0,0,.28);padding:34px 36px 30px;overflow:hidden}.vahb-v78-login-accent{position:absolute;inset:0 0 auto;height:6px;background:#f28c00}.vahb-v78-login-modal>small{display:block;color:#e87900;font-weight:800;letter-spacing:.08em;font-size:10px;margin-bottom:9px}.vahb-v78-login-modal h2{margin:0 0 12px;color:#20388b;font-size:28px;line-height:1.15}.vahb-v78-login-modal p{margin:0;color:#4f5664;font-size:15px;line-height:1.6;white-space:pre-line}.vahb-v78-login-period{margin-top:18px;padding:10px 12px;border-radius:8px;background:#f5f6f9;color:#687083;font-size:11px}.vahb-v78-login-ack{margin-top:24px;width:100%;border:0;border-radius:10px;background:#23398f;color:white;padding:13px 18px;font-weight:800;font-size:14px;cursor:pointer}.vahb-v78-login-ack:hover{background:#172b78}.vahb-v78-login-ack:focus{outline:3px solid rgba(242,140,0,.35);outline-offset:3px}
@media(max-width:700px){.vahb-v78-login-modal{padding:30px 22px 24px}.vahb-v78-login-modal h2{font-size:23px}.vahb-v78-agenda-list{grid-template-columns:1fr}.vahb-v78-agenda-alert{border-right:0;border-bottom:1px solid #eceef2}.vahb-v78-agenda-alert:last-child{border-bottom:0}}

/* === v79: meldingen uitsluitend in Agenda / login-popup === */
body.home-page #alertStack,
#alertStack.site-alert-stack{display:none !important;}
/* Agenda-mededelingen iets prominenter, maar rustig in de pagina. */
.vahb-v78-agenda-alerts{margin-top:0;margin-bottom:24px}
.vahb-v78-agenda-head strong{font-size:20px}

/* === v80: Nieuws & updates prominenter + meldingen optioneel als nieuws === */
.vahb-v80-news-option{margin:10px 0 14px;padding:12px 14px;border:1px solid #dfe3eb;border-radius:10px;background:#f8f9fc}
.v80-priority-content{margin-top:18px;margin-bottom:18px}
.v80-news-alerts-home{display:grid;gap:8px;margin-bottom:9px}
.v80-news-alert-row{display:grid;grid-template-columns:34px minmax(0,1fr);gap:11px;padding:12px 13px;border-radius:9px;background:linear-gradient(135deg,#fff7eb,#fffdf8);border:1px solid #f2d4aa;border-left:4px solid #e68000}
.v80-news-alert-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#f28c00;color:#fff;font-weight:900}
.v80-news-alert-row small{display:block;color:#b66500!important;font-size:9px!important;font-weight:800;text-transform:uppercase;letter-spacing:.045em}.v80-news-alert-row strong{display:block;margin-top:2px;color:#243588;font-size:13px}.v80-news-alert-row p{margin:4px 0 0;color:#5f6268;font-size:11px;line-height:1.4}
.v80-news-page-alerts{margin:0 0 24px;background:rgba(255,255,255,.96);border:1px solid #dfe3eb;border-top:4px solid #f28c00;border-radius:12px;box-shadow:0 8px 24px rgba(25,41,89,.08);overflow:hidden}.v80-news-page-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #eceef2}.v80-news-page-head span{display:grid;gap:3px}.v80-news-page-head small{color:#e87900;font-size:9px;font-weight:800;letter-spacing:.08em}.v80-news-page-head strong{color:#20388b;font-size:19px}.v80-news-page-head em{font-style:normal;display:grid;place-items:center;min-width:30px;height:30px;border-radius:999px;background:#f1f3f8;color:#20388b;font-weight:800}.v80-news-page-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.v80-news-alert-card{padding:17px 20px;border-right:1px solid #eceef2}.v80-news-alert-card:last-child{border-right:0}.v80-news-alert-label{color:#e87900;font-size:9px;font-weight:800;letter-spacing:.07em}.v80-news-alert-card h3{margin:5px 0 7px;color:#20388b;font-size:16px}.v80-news-alert-card p{margin:0 0 9px;color:#5f6268;font-size:12px;line-height:1.5}.v80-news-alert-card small{color:#8a909b;font-size:10px}
@media(max-width:760px){.v80-news-page-list{grid-template-columns:1fr}.v80-news-alert-card{border-right:0;border-bottom:1px solid #eceef2}.v80-news-alert-card:last-child{border-bottom:0}}


/* === v81: volledig Nieuws & updates systeem === */
.vahb-v81-news-options{margin:14px 0;padding:15px;border:1px solid #dde2ec;border-radius:12px;background:#f8f9fc;display:grid;gap:13px}.vahb-v81-opt-head{display:grid;gap:3px}.vahb-v81-opt-head strong{color:#20388b;font-size:14px}.vahb-v81-opt-head small{color:#737986;font-size:11px}.vahb-v81-important{display:flex;gap:10px;align-items:flex-start}.vahb-v81-important input{width:17px;height:17px;margin-top:2px;accent-color:#e68000}.vahb-v81-important span{display:grid;gap:2px}.vahb-v81-important b{font-size:12px;color:#243588}.vahb-v81-important small{font-size:10px;color:#777}.vahb-v81-img{display:grid;gap:6px}.vahb-v81-img>span{font-size:11px;font-weight:750;color:#424957}.vahb-v81-img input{height:40px;border:1px solid #cfd4df;border-radius:8px;padding:0 11px;background:#fff}.vahb-v81-admin-preview{padding:13px 14px;background:#fff;border:1px solid #e0e4ec;border-left:4px solid #e68000;border-radius:8px;display:grid;gap:4px}.vahb-v81-admin-preview small{color:#e68000;font-weight:800;font-size:9px;letter-spacing:.06em}.vahb-v81-admin-preview strong{color:#20388b;font-size:14px}.vahb-v81-admin-preview p{margin:0;color:#606672;font-size:11px;line-height:1.45}.vahb-v81-admin-preview em{font-size:10px;color:#35824b;font-style:normal;font-weight:700}
.vahb-v81-home-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:10px}.vahb-v81-home-grid .vahb-v81-news-card:not(.feature){min-height:0}.vahb-v81-home-grid .vahb-v81-news-card:not(.feature):nth-child(n+3){grid-column:2}.vahb-v81-news-card{background:#fff;border:1px solid #e0e4ea;border-radius:11px;overflow:hidden;display:grid;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease;min-width:0}.vahb-v81-news-card:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(28,42,90,.12)}.vahb-v81-news-card.feature{grid-row:span 3}.vahb-v81-news-card.important{border-top:4px solid #e68000}.vahb-v81-news-image{height:150px;background-size:cover;background-position:center}.vahb-v81-news-card.feature .vahb-v81-news-image{height:190px}.vahb-v81-news-copy{padding:14px 16px;min-width:0}.vahb-v81-news-copy>small{display:block;color:#7d8491;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.045em}.vahb-v81-news-copy h3{margin:5px 0 6px;color:#20388b;font-size:16px;line-height:1.2}.vahb-v81-news-card.feature h3{font-size:20px}.vahb-v81-news-copy p{margin:0;color:#5d6470;font-size:11px;line-height:1.48}.vahb-v81-news-copy button{border:0;background:none;color:#20388b;font-size:10px;font-weight:800;padding:9px 0 0;cursor:pointer}.vahb-v81-badge{display:inline-flex;width:max-content;margin-bottom:5px;background:#fff0dc;color:#bd6500;border-radius:999px;padding:4px 7px;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.vahb-v81-news-hub{max-width:1530px;margin:24px auto 44px;padding:0 28px;box-sizing:border-box}.vahb-v81-news-tools{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:18px}.vahb-v81-news-tools small{color:#e68000;font-size:9px;font-weight:850;letter-spacing:.08em}.vahb-v81-news-tools h2{margin:4px 0 0;color:#20388b;font-size:26px}.vahb-v81-controls{display:flex;gap:9px}.vahb-v81-controls input,.vahb-v81-controls select{height:42px;border:1px solid #d5d9e3;border-radius:9px;background:#fff;padding:0 12px;font:inherit;font-size:12px;color:#3f4652}.vahb-v81-controls input{width:250px}.vahb-v81-news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.vahb-v81-news-grid .vahb-v81-news-card.feature{grid-column:span 2;grid-row:span 2}.vahb-v81-news-empty{padding:40px;text-align:center;background:#fff;border:1px solid #e2e5eb;border-radius:12px;color:#6f7580}.vahb-v81-old-news{display:none!important}
.vahb-v81-modal.hidden{display:none}.vahb-v81-modal{position:fixed;inset:0;z-index:2147483300;background:rgba(13,25,63,.72);backdrop-filter:blur(5px);display:grid;place-items:center;padding:24px}.vahb-v81-modal-open{overflow:hidden}.vahb-v81-modal-card{width:min(760px,calc(100vw - 36px));max-height:88vh;overflow:auto;background:#fff;border-radius:16px;box-shadow:0 30px 90px rgba(0,0,0,.3);position:relative}.vahb-v81-close{position:absolute;right:13px;top:13px;width:38px;height:38px;border:1px solid rgba(0,0,0,.1);border-radius:50%;background:rgba(255,255,255,.94);color:#20388b;font-size:24px;cursor:pointer;z-index:2}.vahb-v81-modal-media img{display:block;width:100%;max-height:340px;object-fit:cover}.vahb-v81-modal-copy{padding:28px 32px 34px}.vahb-v81-modal-copy>small{display:block;color:#7a818e;font-size:10px;margin-bottom:7px}.vahb-v81-modal-copy h2{margin:0 0 14px;color:#20388b;font-size:28px}.vahb-v81-modal-copy p{margin:0;color:#535a66;font-size:14px;line-height:1.7}
@media(max-width:900px){.vahb-v81-home-grid{grid-template-columns:1fr}.vahb-v81-home-grid .vahb-v81-news-card.feature{grid-row:auto}.vahb-v81-home-grid .vahb-v81-news-card:not(.feature):nth-child(n+3){grid-column:auto}.vahb-v81-news-grid{grid-template-columns:1fr 1fr}.vahb-v81-news-grid .vahb-v81-news-card.feature{grid-column:span 2}.vahb-v81-news-tools{align-items:stretch;flex-direction:column}.vahb-v81-controls{width:100%}.vahb-v81-controls input{width:100%;flex:1}}
@media(max-width:620px){.vahb-v81-news-hub{padding:0 15px}.vahb-v81-news-grid{grid-template-columns:1fr}.vahb-v81-news-grid .vahb-v81-news-card.feature{grid-column:auto}.vahb-v81-controls{flex-direction:column}.vahb-v81-modal-copy{padding:23px 20px 28px}.vahb-v81-modal-copy h2{font-size:23px}}

/* === v82: centrale agenda === */
.v82-superseded{display:none!important}
.v82-agenda-hub{max-width:1180px;margin:22px auto 26px;padding:0 22px;box-sizing:border-box}
.v82-hub-head{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(460px,1.22fr);gap:24px;align-items:end;padding:22px 24px;background:rgba(255,255,255,.96);border:1px solid #e2e5ec;border-radius:14px;box-shadow:0 10px 30px rgba(25,41,89,.08)}
.v82-hub-head>div:first-child{display:grid;gap:5px}.v82-hub-head small{font-size:10px;font-weight:850;letter-spacing:.09em;color:#ed7d00}.v82-hub-head h2{margin:0;color:#243588;font-size:26px;line-height:1.08}.v82-hub-head p{margin:3px 0 0;color:#6a7180;font-size:13px;line-height:1.5}
.v82-view-switch{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}.v82-view-switch button{border:1px solid #d7dce8;background:#f8f9fc;color:#4a5267;border-radius:999px;padding:8px 11px;font-size:11px;font-weight:750;cursor:pointer}.v82-view-switch button:hover,.v82-view-switch button.active{background:#243588;border-color:#243588;color:#fff}.v82-view-switch b{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;margin-left:4px;padding:0 4px;border-radius:9px;background:rgba(255,255,255,.2);font-size:9px}
.v82-agenda-list{margin-top:12px;background:rgba(255,255,255,.94);border:1px solid #e1e4ec;border-radius:14px;overflow:hidden;box-shadow:0 8px 25px rgba(25,41,89,.06)}
.v82-group{padding:11px 18px 7px;background:#f7f8fb;border-top:1px solid #eceef3}.v82-group:first-child{border-top:0}.v82-group span{font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:#7a8090}
.v82-event{appearance:none;width:100%;display:grid;grid-template-columns:38px 1fr 22px;gap:12px;align-items:center;text-align:left;border:0;border-top:1px solid #eef0f4;background:transparent;padding:14px 18px;color:#202b50;cursor:pointer;font-family:inherit}.v82-group+.v82-event{border-top:0}.v82-event:hover{background:#f8faff}.v82-event-icon{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:#eef2ff;color:#243588;font-size:15px;font-weight:850}.v82-event.activity .v82-event-icon{background:#fff2df;color:#df7500}.v82-event.birthday .v82-event-icon{background:#fff1f6;color:#b72f66}.v82-event.notice .v82-event-icon{background:#fff0df;color:#d96d00}.v82-event-copy{display:grid;gap:2px;min-width:0}.v82-event-copy small{color:#7b8190;font-size:10px}.v82-event-copy strong{color:#22316d;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v82-event-copy em{font-style:normal;color:#6a7180;font-size:10px}.v82-event>b{color:#a0a6b5;font-size:15px}.v82-event:hover>b{color:#243588;transform:translateX(2px)}
.v82-agenda-empty{margin-top:12px;padding:28px;text-align:center;background:#fff;border:1px solid #e3e6ed;border-radius:12px;color:#737987}.v82-agenda-empty.hidden{display:none}
.v82-home-agenda{display:grid!important;gap:5px!important}.v82-home-agenda .v82-event.compact{grid-template-columns:30px 1fr 18px;padding:9px 8px;border:0;border-radius:9px;background:rgba(255,255,255,.58)}.v82-home-agenda .v82-event.compact:hover{background:#fff}.v82-home-agenda .v82-event-icon{width:28px;height:28px;border-radius:8px;font-size:12px}.v82-home-agenda .v82-event-copy strong{font-size:11px}.v82-home-agenda .v82-event-copy small{font-size:9px}
.v82-modal{position:fixed;inset:0;z-index:2147482000;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(13,22,55,.62);backdrop-filter:blur(5px)}.v82-modal.hidden{display:none}.v82-modal-card{position:relative;width:min(560px,calc(100vw - 32px));display:grid;grid-template-columns:54px 1fr;gap:18px;padding:28px;background:#fff;border-radius:16px;box-shadow:0 26px 80px rgba(7,16,55,.32)}.v82-modal-close{position:absolute;top:12px;right:12px;width:34px;height:34px;border:0;border-radius:50%;background:#f2f4f8;color:#485066;font-size:21px;cursor:pointer}.v82-modal-icon{width:54px;height:54px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:#eef2ff;color:#243588;font-size:20px;font-weight:850}.v82-modal-copy{padding-right:16px}.v82-type{display:inline-flex;margin-bottom:7px;padding:4px 7px;border-radius:6px;background:#eef2ff;color:#243588;font-size:9px!important;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.v82-type.notice{background:#fff1e1;color:#d86b00}.v82-type.birthday{background:#fff0f5;color:#b72f66}.v82-modal-copy h2{margin:0 0 10px;color:#202f72;font-size:24px}.v82-meta{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:14px;color:#747a88;font-size:11px}.v82-modal-copy p{margin:0;color:#4f5666;font-size:13px;line-height:1.65}.v82-modal-open{overflow:hidden!important}
@media(max-width:900px){.v82-hub-head{grid-template-columns:1fr}.v82-view-switch{justify-content:flex-start}.v82-agenda-hub{padding:0 14px}.v82-hub-head{padding:18px}.v82-event{padding:12px 14px}}
@media(max-width:600px){.v82-view-switch{flex-wrap:nowrap;overflow-x:auto;padding-bottom:3px}.v82-view-switch button{flex:0 0 auto}.v82-modal-card{grid-template-columns:1fr;padding:24px 20px}.v82-modal-icon{width:44px;height:44px}.v82-event-copy strong{white-space:normal}.v82-hub-head h2{font-size:22px}}

/* === v84: Mijn verlof — centraal en functioneel === */
.v84-leave-hub{max-width:1180px;margin:22px auto 42px;padding:0 22px;box-sizing:border-box;display:grid;gap:14px}
.v84-leave-top{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:22px 24px;background:rgba(255,255,255,.97);border:1px solid #e1e5ed;border-radius:14px;box-shadow:0 10px 28px rgba(28,43,89,.08)}
.v84-leave-top>div{display:grid;gap:4px}.v84-leave-top small,.v84-panel-head small,.v84-form-title small,.v84-link-card small{color:#e68000;font-size:9px;font-weight:850;letter-spacing:.09em}.v84-leave-top h2{margin:0;color:#243588;font-size:27px}.v84-leave-top p{margin:2px 0 0;color:#6b7280;font-size:12px}
.v84-new-request{border:0;border-radius:9px;background:#e68000;color:#fff;padding:12px 17px;font:inherit;font-size:12px;font-weight:800;cursor:pointer;box-shadow:0 7px 18px rgba(230,128,0,.18)}.v84-new-request:hover{filter:brightness(.96)}
.v84-balance-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.v84-stat{background:rgba(255,255,255,.97);border:1px solid #e1e4eb;border-top:4px solid #243588;border-radius:12px;padding:17px 18px;display:grid;gap:5px;min-height:106px}.v84-stat.primary{border-top-color:#e68000;background:linear-gradient(145deg,#fffaf3,#fff)}.v84-stat small{color:#7a808d;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.v84-stat strong{color:#243588;font-size:26px;line-height:1.1}.v84-stat.primary strong{color:#d87300}.v84-stat span{color:#858a95;font-size:10px}
.v84-leave-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:14px}.v84-panel{background:rgba(255,255,255,.97);border:1px solid #e1e4eb;border-radius:12px;padding:18px 20px}.v84-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid #eceef2}.v84-panel-head h3{margin:3px 0 0;color:#243588;font-size:18px}.v84-panel-head>span{display:grid;place-items:center;min-width:29px;height:29px;border-radius:999px;background:#eef1f8;color:#243588;font-size:11px;font-weight:850}
.v84-request-list{display:grid}.v84-request-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #edf0f3}.v84-request-row:last-child{border-bottom:0}.v84-request-row>div{display:grid;gap:2px}.v84-request-row small{color:#858b97;font-size:9px}.v84-request-row strong{color:#253572;font-size:12px}.v84-request-row em{font-style:normal;color:#727986;font-size:9px}.v84-status{flex:0 0 auto;padding:5px 8px;border-radius:999px;background:#fff2df;color:#aa6100;font-size:9px;font-weight:800}.v84-status.approved{background:#eaf7ee;color:#287743}.v84-status.rejected,.v84-status.cancelled{background:#fbecec;color:#a33a3a}
.v84-empty{display:flex;gap:10px;align-items:center;padding:22px 4px;color:#75808a}.v84-empty>span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#edf7f0;color:#2e8250}.v84-empty strong,.v84-empty small{display:block}.v84-empty strong{color:#38445b;font-size:12px}.v84-empty small{margin-top:2px;font-size:10px}
.v84-detail-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #edf0f3;font-size:11px}.v84-detail-row span{color:#777e8b}.v84-detail-row strong{color:#243588}.v84-details p{margin:14px 0 0;color:#7c828e;font-size:10px;line-height:1.55}
.v84-request-form-wrap{background:rgba(255,255,255,.98);border:1px solid #dfe3eb;border-top:4px solid #e68000;border-radius:12px;padding:18px 20px;scroll-margin-top:90px}.v84-request-form-wrap[hidden]{display:none!important}.v84-form-title{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid #eceef2}.v84-form-title h3{margin:3px 0 0;color:#243588}.v84-form-title>button{border:0;width:34px;height:34px;border-radius:50%;background:#f1f3f7;color:#45506b;font-size:21px;cursor:pointer}.v84-live-form{display:block!important;visibility:visible!important;opacity:1!important;max-width:none!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
.v84-link-card,.v84-leave-error{display:grid;grid-template-columns:44px 1fr;gap:15px;padding:23px 25px;background:rgba(255,255,255,.97);border:1px solid #e1e5ed;border-radius:14px;box-shadow:0 10px 28px rgba(28,43,89,.08)}.v84-link-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#eef1fb;color:#243588;font-weight:850}.v84-link-card h2{margin:4px 0 7px;color:#243588;font-size:23px}.v84-link-card p{margin:0;color:#69717f;font-size:12px;line-height:1.55}.v84-leave-error{grid-template-columns:1fr;color:#606775}.v84-leave-error strong{color:#243588}
body.vahb-photo-page .v84-legacy-secondary{display:none!important}
@media(max-width:900px){.v84-balance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v84-leave-grid{grid-template-columns:1fr}.v84-leave-top{align-items:flex-start;flex-direction:column}.v84-new-request{width:100%}}
@media(max-width:560px){.v84-leave-hub{padding:0 14px}.v84-balance-grid{grid-template-columns:1fr 1fr}.v84-stat{padding:14px}.v84-stat strong{font-size:21px}.v84-request-row{align-items:flex-start;flex-direction:column}.v84-link-card{grid-template-columns:1fr}.v84-leave-top{padding:18px}.v84-panel{padding:16px}}

/* === v85: Verlof goedkeuringsflow === */
.v85-top-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.v85-open-approvals{border:1px solid #d8deea;border-radius:9px;background:#fff;color:#243588;padding:11px 14px;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.v85-open-approvals span{display:inline-grid;place-items:center;min-width:20px;height:20px;margin-left:5px;padding:0 5px;border-radius:999px;background:#e68000;color:#fff;font-size:9px}.v85-approval-panel{background:rgba(255,255,255,.98);border:1px solid #dfe3eb;border-top:4px solid #243588;border-radius:13px;padding:20px 22px;scroll-margin-top:90px;box-shadow:0 10px 26px rgba(28,43,89,.07)}.v85-approval-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:14px;border-bottom:1px solid #eceef2}.v85-approval-head small{color:#e68000;font-size:9px;font-weight:850;letter-spacing:.09em}.v85-approval-head h3{margin:4px 0 4px;color:#243588;font-size:21px}.v85-approval-head p{margin:0;color:#737b89;font-size:11px}.v85-count{display:grid;place-items:center;min-width:36px;height:36px;border-radius:999px;background:#eef1f8;color:#243588;font-size:13px;font-weight:850}.v85-approval-list{display:grid}.v85-approval-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:15px 0;border-bottom:1px solid #edf0f3}.v85-approval-card:last-child{border-bottom:0}.v85-approval-main{display:grid;gap:3px}.v85-approval-main small{color:#8a909a;font-size:9px}.v85-approval-main h4{margin:0;color:#243588;font-size:14px}.v85-approval-main p{margin:0;color:#666f7d;font-size:10px}.v85-approval-main em{font-style:normal;color:#7d8490;font-size:9px}.v85-actions{display:flex;gap:7px}.v85-actions button{border-radius:8px;padding:9px 12px;font:inherit;font-size:10px;font-weight:800;cursor:pointer}.v85-approve{border:0;background:#2d7a48;color:#fff}.v85-reject{border:1px solid #e4c6c6;background:#fff5f5;color:#a13c3c}.v85-empty{display:flex;align-items:center;gap:10px;padding:22px 3px}.v85-empty>span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#edf7f0;color:#2e8250}.v85-empty strong,.v85-empty small{display:block}.v85-empty strong{color:#39445a;font-size:12px}.v85-empty small{margin-top:2px;color:#7d8490;font-size:10px}.v85-flow-note{display:flex;align-items:center;gap:10px;margin-top:12px;padding:11px 13px;border-radius:9px;background:#f7f8fb;color:#737b89;font-size:9px}.v85-flow-note b{color:#243588}.v85-decision-modal{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:20px;background:rgba(18,26,50,.55);backdrop-filter:blur(3px)}.v85-modal-card{position:relative;width:min(520px,100%);background:#fff;border-radius:14px;padding:23px 24px;box-shadow:0 24px 70px rgba(0,0,0,.25)}.v85-modal-card>small{color:#e68000;font-size:9px;font-weight:850;letter-spacing:.09em}.v85-modal-card h3{margin:5px 0 15px;color:#243588;font-size:22px}.v85-modal-x{position:absolute;right:14px;top:13px;border:0;width:34px;height:34px;border-radius:50%;background:#f1f3f7;color:#44506b;font-size:20px;cursor:pointer}.v85-modal-summary{display:flex;justify-content:space-between;gap:12px;padding:11px 12px;margin-bottom:14px;border-radius:9px;background:#f7f8fb;font-size:10px}.v85-modal-summary strong{color:#243588}.v85-modal-summary span{color:#737b89}.v85-modal-card label{display:grid;gap:6px;color:#4d5668;font-size:10px;font-weight:750}.v85-modal-card textarea{width:100%;box-sizing:border-box;resize:vertical;border:1px solid #d9deea;border-radius:9px;padding:10px 11px;font:inherit;color:#2d3442;outline:none}.v85-modal-card textarea:focus{border-color:#8d9ac8;box-shadow:0 0 0 3px rgba(36,53,136,.08)}.v85-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.v85-modal-actions button{border-radius:8px;padding:10px 14px;font:inherit;font-size:10px;font-weight:800;cursor:pointer}.v85-cancel{border:1px solid #dce0e8;background:#fff;color:#536078}.v85-confirm{border:0;background:#2d7a48;color:#fff}.v85-confirm.danger{background:#a84444}.v85-confirm:disabled{opacity:.55;cursor:wait}.v85-modal-msg{margin-top:10px;padding:9px 10px;border-radius:8px;background:#f7f8fb;color:#586174;font-size:10px}.v85-modal-msg[hidden]{display:none!important}
@media(max-width:700px){.v85-approval-card{grid-template-columns:1fr}.v85-actions{width:100%}.v85-actions button{flex:1}.v85-top-actions{width:100%}.v85-top-actions>*{flex:1}.v85-flow-note{align-items:flex-start;flex-direction:column}.v85-modal-summary{flex-direction:column}}

/* === v86: strak en leesbaar inlogscherm === */
body:has(.auth-shell-v15) .auth-shell-v15{padding:30px 20px!important;align-items:center!important;background:linear-gradient(90deg,rgba(244,245,240,.96),rgba(244,246,251,.88))!important}
body:has(.auth-shell-v15) .auth-card-v15{width:min(100%,560px)!important;padding:30px 40px 32px!important;border-radius:10px!important;border-top:5px solid var(--vahb-orange)!important;box-shadow:0 18px 48px rgba(31,45,98,.14)!important}
body:has(.auth-shell-v15) .auth-card-v15 h1{color:var(--vahb-blue)!important;text-shadow:none!important;font-size:30px!important;line-height:1.12!important;margin:3px 0 8px!important}
body:has(.auth-shell-v15) .auth-card-v15>p{color:#606773!important;text-shadow:none!important;font-size:13px!important;line-height:1.5!important;max-width:440px}
body:has(.auth-shell-v15) .auth-icon-badge{margin-bottom:14px!important}
body:has(.auth-shell-v15) .auth-form{gap:12px!important;margin-top:20px!important}
body:has(.auth-shell-v15) .auth-form label{color:#3f4650!important;font-size:10px!important;margin:0 0 6px!important}
body:has(.auth-shell-v15) .auth-form input{min-height:46px!important;border-radius:8px!important;padding:11px 13px!important}
body:has(.auth-shell-v15) .password-field{display:block!important}
body:has(.auth-shell-v15) .password-field input{padding-right:88px!important}
body:has(.auth-shell-v15) .password-toggle{top:5px!important;right:5px!important;height:36px!important;border-radius:7px!important;padding:0 14px!important;background:var(--vahb-blue)!important;color:#fff!important;z-index:2}
body:has(.auth-shell-v15) .auth-inline-link{display:flex!important;justify-content:flex-end!important;margin:7px 0 0!important;min-height:34px!important;align-items:center!important}
body:has(.auth-shell-v15) .auth-inline-link a{display:inline-flex!important;align-items:center!important;min-height:34px!important;padding:0 12px!important;border:1px solid #d7dbea!important;border-radius:7px!important;background:#fff!important;color:var(--vahb-blue)!important;text-decoration:none!important}
body:has(.auth-shell-v15) .auth-submit{margin-top:2px!important;border-radius:8px!important;min-height:44px!important}
body:has(.auth-shell-v15) .microsoft-login-btn{border-radius:8px!important;min-height:42px!important}
body:has(.auth-shell-v15) .auth-selfservice{margin:22px 0 0!important;padding:14px 16px!important;border-radius:8px!important;align-items:center!important;background:#f6f5ed!important}
body:has(.auth-shell-v15) .auth-selfservice strong{font-size:12px!important}
body:has(.auth-shell-v15) .auth-selfservice span{font-size:10px!important;line-height:1.45!important}
body:has(.auth-shell-v15) .auth-selfservice .btn{min-width:150px!important;white-space:nowrap!important;border-radius:8px!important}
body:has(.auth-shell-v15) .auth-security-row{margin-top:16px!important;padding:14px 16px!important;border-radius:8px!important;grid-template-columns:28px minmax(0,1fr)!important}
body:has(.auth-shell-v15) .auth-security-row strong{font-size:12px!important}
body:has(.auth-shell-v15) .auth-security-row span{font-size:10px!important;line-height:1.5!important}
body:has(.auth-shell-v15) .auth-security-row a{display:inline-flex!important;margin-top:8px!important;padding:8px 10px!important;border:1px solid #d7dbea!important;border-radius:7px!important;background:#fff!important;text-decoration:none!important}
@media(max-width:620px){body:has(.auth-shell-v15) .auth-shell-v15{padding:16px 10px!important}body:has(.auth-shell-v15) .auth-card-v15{padding:24px 20px!important}body:has(.auth-shell-v15) .auth-selfservice{align-items:stretch!important;flex-direction:column!important}body:has(.auth-shell-v15) .auth-selfservice .btn{width:100%!important}.auth-inline-link{justify-content:stretch!important}.auth-inline-link a{width:100%!important;justify-content:center!important}}

/* === v87: login meer contrast, minder wit, alle acties leesbaar === */
body:has(.auth-shell-v15) .auth-shell-v15{
  background:linear-gradient(110deg,rgba(230,233,241,.98),rgba(242,244,248,.94))!important;
}
body:has(.auth-shell-v15) .auth-card-v15{
  background:#f7f8fb!important;
  border-color:#cfd4df!important;
  box-shadow:0 22px 54px rgba(31,45,98,.18)!important;
}
/* Forceer donkere tekst in de login-kaart; oude foto/page-regels maakten delen wit. */
body:has(.auth-shell-v15) .auth-card-v15 p,
body:has(.auth-shell-v15) .auth-card-v15 span:not(.ms-mark):not(.ms-mark *),
body:has(.auth-shell-v15) .auth-card-v15 small,
body:has(.auth-shell-v15) .auth-card-v15 label{
  color:#4f5968!important;
  text-shadow:none!important;
}
body:has(.auth-shell-v15) .auth-card-v15 h1,
body:has(.auth-shell-v15) .auth-card-v15 h2,
body:has(.auth-shell-v15) .auth-card-v15 h3,
body:has(.auth-shell-v15) .auth-card-v15 strong{
  color:#243588!important;
  text-shadow:none!important;
}
body:has(.auth-shell-v15) .auth-card-v15 .eyebrow{
  color:#e87900!important;
}
body:has(.auth-shell-v15) .auth-card-v15>p,
body:has(.auth-shell-v15) .auth-card-v15 h1 + p{
  color:#596474!important;
  opacity:1!important;
}
body:has(.auth-shell-v15) .auth-form input{
  background:#fff!important;
  color:#202938!important;
  border:1px solid #bdc5d2!important;
}
body:has(.auth-shell-v15) .auth-form input::placeholder{color:#7f8792!important;opacity:1!important}
body:has(.auth-shell-v15) .auth-form input:focus{border-color:#243588!important;box-shadow:0 0 0 3px rgba(36,53,136,.12)!important}

/* Primaire knoppen altijd donkerblauw met witte tekst. */
body:has(.auth-shell-v15) .auth-card-v15 .btn:not(.secondary):not(.ghost),
body:has(.auth-shell-v15) .auth-card-v15 .auth-submit,
body:has(.auth-shell-v15) .auth-card-v15 .microsoft-login-btn,
body:has(.auth-shell-v15) .auth-card-v15 button.password-toggle{
  background:#243588!important;
  color:#fff!important;
  border-color:#243588!important;
  text-shadow:none!important;
}
body:has(.auth-shell-v15) .auth-card-v15 .btn:not(.secondary):not(.ghost) *,
body:has(.auth-shell-v15) .auth-card-v15 .auth-submit *,
body:has(.auth-shell-v15) .auth-card-v15 .microsoft-login-btn *{
  color:#fff!important;
}
/* Secundaire acties: witte knop, maar altijd blauwe tekst en duidelijke rand. */
body:has(.auth-shell-v15) .auth-card-v15 .btn.secondary,
body:has(.auth-shell-v15) .auth-card-v15 .btn.ghost,
body:has(.auth-shell-v15) .auth-inline-link a,
body:has(.auth-shell-v15) .auth-security-row a{
  background:#fff!important;
  color:#243588!important;
  border:1px solid #b9c3e2!important;
  text-shadow:none!important;
  opacity:1!important;
}
body:has(.auth-shell-v15) .auth-card-v15 .btn.secondary *,
body:has(.auth-shell-v15) .auth-card-v15 .btn.ghost *,
body:has(.auth-shell-v15) .auth-security-row a *{
  color:#243588!important;
}

/* De twee onderste informatieblokken krijgen duidelijk onderscheid. */
body:has(.auth-shell-v15) .auth-selfservice{
  background:#fff7e8!important;
  border:1px solid #eadfc9!important;
  border-left:4px solid #e87900!important;
}
body:has(.auth-shell-v15) .auth-security-row{
  background:#eef2fb!important;
  border:1px solid #d8deee!important;
  border-left:4px solid #243588!important;
}
body:has(.auth-shell-v15) .auth-security-row a{
  display:inline-flex!important;
  width:auto!important;
  min-height:36px!important;
  padding:8px 13px!important;
  margin-top:9px!important;
  border-radius:7px!important;
  font-weight:700!important;
  line-height:1.2!important;
}
/* voorkom dat acties in het MFA-blok over tekst heen vallen */
body:has(.auth-shell-v15) .auth-security-row>div{min-width:0!important}
body:has(.auth-shell-v15) .auth-security-row p{margin:5px 0 0!important;line-height:1.5!important}

@media(max-width:620px){
  body:has(.auth-shell-v15) .auth-card-v15{border-radius:8px!important}
  body:has(.auth-shell-v15) .auth-security-row a{width:100%!important;justify-content:center!important}
}

/* === v88: bovenste login-intro altijd goed leesbaar === */
/* De introductieregel direct onder 'Inloggen' werd door oudere hero-regels wit
   met tekstschaduw. Forceer hier lokaal de VAHB-tekstkleur, ongeacht elementtype. */
body:has(.auth-shell-v15) .auth-card-v15 h1 + *,
body:has(.auth-shell-v15) .auth-card-v15 h1 + * *,
body:has(.auth-shell-v15) .auth-card-v15 .auth-subtitle,
body:has(.auth-shell-v15) .auth-card-v15 .auth-intro,
body:has(.auth-shell-v15) .auth-card-v15 .auth-lead,
body:has(.auth-shell-v15) .auth-card-v15 [class*="subtitle"],
body:has(.auth-shell-v15) .auth-card-v15 [class*="intro"]{
  color:#586273!important;
  text-shadow:none!important;
  opacity:1!important;
  -webkit-text-fill-color:#586273!important;
}

/* === v89: gebruikers uitschakelen / verwijderen === */
.v89-user-actions{display:flex!important;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.v89-user-actions button{border-radius:7px;padding:8px 11px;font:inherit;font-size:9px;font-weight:800;cursor:pointer;white-space:nowrap}.v89-user-toggle{border:1px solid #d6dceb;background:#fff;color:#243588}.v89-user-toggle:hover{background:#f3f5fa}.v89-user-delete{border:1px solid #e3c5c5;background:#fff7f7;color:#a43f3f}.v89-user-delete:hover{background:#fdeeee}.v89-user-modal{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:20px;background:rgba(19,27,52,.58);backdrop-filter:blur(3px)}.v89-user-modal-card{position:relative;width:min(500px,100%);box-sizing:border-box;background:#fff;border-top:4px solid #e68000;border-radius:13px;padding:23px 24px;box-shadow:0 25px 75px rgba(0,0,0,.28)}.v89-user-modal-card>small{color:#e68000;font-size:9px;font-weight:850;letter-spacing:.09em}.v89-user-modal-card h3{margin:5px 0 9px;color:#243588;font-size:21px}.v89-user-modal-card p{margin:0 0 16px;color:#667085;font-size:11px;line-height:1.55}.v89-user-modal-card label{display:grid;gap:6px;margin:12px 0;color:#4b5567;font-size:10px}.v89-user-modal-card input{width:100%;box-sizing:border-box;border:1px solid #d5dbe7;border-radius:8px;padding:10px 11px;font:inherit;color:#26324d}.v89-user-x{position:absolute;right:13px;top:12px;width:34px;height:34px;border:0;border-radius:50%;background:#f1f3f7;color:#44506b;font-size:20px;cursor:pointer}.v89-user-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.v89-user-modal-actions button{border-radius:8px;padding:10px 14px;font:inherit;font-size:10px;font-weight:800;cursor:pointer}.v89-cancel{border:1px solid #d9dee8;background:#fff;color:#536078}.v89-confirm{border:0;background:#243588;color:#fff}.v89-confirm.danger{background:#a53f3f}.v89-confirm:disabled{opacity:.55;cursor:wait}.v89-user-msg{margin-top:11px;padding:9px 10px;border-radius:8px;background:#f6f7fa;color:#596174;font-size:10px}.v89-user-msg[hidden]{display:none!important}@media(max-width:620px){.v89-user-actions{justify-content:flex-start!important;width:100%}.v89-user-actions button{flex:1}.v89-user-modal-actions{flex-direction:column}.v89-user-modal-actions button{width:100%}}


/* === v91: hard-delete knop altijd zichtbaar in Accounts === */
.v91-user-delete{display:inline-flex!important;align-items:center!important;justify-content:center!important;visibility:visible!important;opacity:1!important;background:#fff5f5!important;border:1px solid #d8a6a6!important;color:#9d2f2f!important;font-weight:800!important;min-width:96px!important}
.v91-user-delete:hover{background:#fbe6e6!important;border-color:#bd7777!important}

/* === v92: hard-delete knop gebruikersbeheer === */
.v92-user-delete{appearance:none!important;border:1px solid #c62828!important;background:#fff!important;color:#b71c1c!important;border-radius:9px!important;padding:10px 15px!important;font:inherit!important;font-weight:700!important;cursor:pointer!important;min-height:40px!important}
.v92-user-delete:hover{background:#fff1f1!important;border-color:#a91515!important;color:#961010!important}

/* === v100: responsive desktop density / automatisch schalen ===
   Houdt de bestaande v34-homepage intact, maar laat breedte, typografie en
   verticale dichtheid meeschalen met de beschikbare viewport. */
html,body{max-width:100%;overflow-x:hidden}
.dashboard-v34 .shell-wide,
.dashboard-v34 .v34-dashboard-shell{
  width:min(1530px,calc(100vw - clamp(24px,4vw,64px)))!important;
  max-width:100%!important;
}
.dashboard-v34 .site-header .shell-wide{
  width:min(1530px,calc(100vw - clamp(20px,3vw,64px)))!important;
}
.dashboard-v34 .header-top{
  grid-template-columns:clamp(190px,16vw,265px) minmax(250px,clamp(280px,28vw,440px)) minmax(0,1fr) 64px!important;
  gap:clamp(12px,1.6vw,26px)!important;
}
.dashboard-v34 .official-logo img{width:clamp(185px,15vw,247px)!important;height:auto!important}
.dashboard-v34 .header-meta{gap:clamp(12px,1.8vw,31px)!important;font-size:clamp(10px,.78vw,12px)!important}
.dashboard-v34 .nav-inner{gap:clamp(2px,.65vw,12px)!important;min-width:0!important}
.dashboard-v34 .main-nav{min-width:0!important;flex:1 1 auto!important;justify-content:flex-start!important}
.dashboard-v34 .main-nav a{padding-inline:clamp(9px,1.05vw,18px)!important;font-size:clamp(12px,.92vw,16px)!important;white-space:nowrap!important}
.dashboard-v34 .compact-welcome.v34-hero{min-height:clamp(190px,15vw,232px)!important}
.dashboard-v34 .v34-hero-inner{min-height:clamp(190px,15vw,232px)!important;padding-top:clamp(24px,2.2vw,34px)!important;padding-bottom:clamp(42px,3.25vw,52px)!important}
.dashboard-v34 .v34-hero-copy h1{font-size:clamp(34px,3vw,48px)!important}
.dashboard-v34 .v34-dashboard-shell{margin-top:clamp(-38px,-2.4vw,-30px)!important;padding-bottom:clamp(30px,3vw,52px)!important}
.dashboard-v34 .v34-metric-grid{gap:clamp(10px,1vw,14px)!important;margin-bottom:clamp(12px,1.2vw,18px)!important}
.dashboard-v34 .v34-metric-card{min-height:clamp(92px,7vw,112px)!important;padding:clamp(12px,1vw,16px) clamp(13px,1.1vw,17px)!important}
.dashboard-v34 .v34-focus-grid,
.dashboard-v34 .v34-content-grid{gap:clamp(12px,1.2vw,18px)!important;margin-bottom:clamp(12px,1.2vw,18px)!important}
.dashboard-v34 .v34-panel,
.dashboard-v34 .v34-quick-section{padding:clamp(15px,1.3vw,20px)!important}
.dashboard-v34 .v34-panel-head{margin-bottom:clamp(9px,1vw,14px)!important}
.dashboard-v34 .v34-topic-grid{gap:clamp(7px,.7vw,9px)!important}
.dashboard-v34 .v34-topic-tile{min-height:clamp(62px,4.7vw,72px)!important;padding:clamp(8px,.7vw,10px) clamp(8px,.8vw,11px)!important}
.dashboard-v34 .v34-content-grid .v34-panel{min-height:clamp(210px,16vw,250px)!important}

/* Compacte desktopmodus: laptops / 1366–1600px en schermen met minder hoogte. */
@media (min-width:1000px) and (max-width:1600px),
       (min-width:1000px) and (max-height:920px){
  .dashboard-v34 .header-top{height:64px!important}
  .dashboard-v34 .official-logo{height:52px!important}
  .dashboard-v34 .nav-inner{height:50px!important}
  .dashboard-v34 .compact-welcome.v34-hero,
  .dashboard-v34 .v34-hero-inner{min-height:198px!important}
  .dashboard-v34 .v34-hero-inner{padding-top:25px!important;padding-bottom:45px!important}
  .dashboard-v34 .v34-hero-copy h1{font-size:38px!important}
  .dashboard-v34 .v34-hero-copy p{font-size:12px!important;margin-top:8px!important}
  .dashboard-v34 .v34-dashboard-shell{margin-top:-34px!important}
  .dashboard-v34 .v34-metric-card{min-height:94px!important;padding:12px 14px!important}
  .dashboard-v34 .v34-metric-icon{width:42px!important;height:42px!important}
  .dashboard-v34 .v34-metric-copy>strong,
  .dashboard-v34 .v34-metric-dynamic>strong{font-size:23px!important}
  .dashboard-v34 .v34-focus-grid{grid-template-columns:minmax(0,1.5fr) minmax(330px,.72fr)!important}
  .dashboard-v34 .v34-panel{padding:15px!important}
  .dashboard-v34 .v34-panel-head h2{font-size:18px!important}
  .dashboard-v34 .v34-timeline-row{min-height:43px!important;padding:6px 0!important}
  .dashboard-v34 .v34-bhv-person{padding:7px 8px!important}
  .dashboard-v34 .v34-bhv-person>img,
  .dashboard-v34 .v34-bhv-person>.bhv-home-initials{width:36px!important;height:36px!important;flex-basis:36px!important}
  .dashboard-v34 .v34-quick-section{padding:15px!important}
  .dashboard-v34 .v34-topic-tile{min-height:61px!important}
  .dashboard-v34 .v34-content-grid .v34-panel{min-height:215px!important}
}

/* Smallere laptops: navigatie blijft binnen het scherm en hoofdblokken stapelen
   voordat horizontaal scrollen nodig zou zijn. */
@media (max-width:1250px){
  .dashboard-v34 .header-top{grid-template-columns:190px minmax(230px,1fr) auto 56px!important}
  .dashboard-v34 .phone{display:none!important}
  .dashboard-v34 .main-nav a{padding-inline:9px!important;font-size:12px!important}
  .dashboard-v34 .v34-topic-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media (max-width:1020px){
  .dashboard-v34 .header-meta .language{gap:5px!important}
  .dashboard-v34 .header-search{min-width:0!important}
  .dashboard-v34 .main-nav{overflow-x:auto!important;scrollbar-width:none!important}
  .dashboard-v34 .main-nav::-webkit-scrollbar{display:none!important}
}

/* === v101: veilige responsive fit — niets buiten beeld ===
   v100 maakte de desktop compacter, maar een bewaarde horizontale scrollpositie
   kon delen links buiten beeld laten. Gebruik 100% van de echte contentbreedte
   en clip alleen wat decoratief buiten de viewport valt. */
html,body{
  width:100%!important;
  max-width:100%!important;
  overflow-x:clip!important;
}
body.dashboard-v34,
.dashboard-v34 .site-header,
.dashboard-v34 .compact-home-main,
.dashboard-v34 .compact-welcome.v34-hero{
  width:100%!important;
  max-width:100%!important;
  overflow-x:clip!important;
  box-sizing:border-box!important;
}
.dashboard-v34 .shell-wide,
.dashboard-v34 .v34-dashboard-shell,
.dashboard-v34 .site-header .shell-wide{
  width:calc(100% - clamp(24px,4vw,64px))!important;
  max-width:1530px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
.dashboard-v34 .header-top,
.dashboard-v34 .header-top > *,
.dashboard-v34 .nav-inner,
.dashboard-v34 .main-nav,
.dashboard-v34 .v34-hero-inner,
.dashboard-v34 .v34-metric-grid,
.dashboard-v34 .v34-focus-grid,
.dashboard-v34 .v34-content-grid{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.dashboard-v34 .header-search,
.dashboard-v34 .header-meta,
.dashboard-v34 .header-account-area{min-width:0!important}

/* Op laptopbreedte houden we alle hoofdcontent volledig binnen de viewport. */
@media (min-width:1000px) and (max-width:1500px){
  .dashboard-v34 .shell-wide,
  .dashboard-v34 .v34-dashboard-shell,
  .dashboard-v34 .site-header .shell-wide{
    width:calc(100% - 36px)!important;
  }
  .dashboard-v34 .header-top{
    grid-template-columns:minmax(175px,220px) minmax(220px,1fr) minmax(380px,auto) minmax(52px,auto)!important;
    gap:14px!important;
  }
  .dashboard-v34 .official-logo img{max-width:210px!important}
  .dashboard-v34 .header-meta{gap:12px!important}
  .dashboard-v34 .main-nav a{padding-inline:10px!important}
}

/* Zeer lage laptops: compacter, maar zonder elementen af te snijden. */
@media (min-width:1000px) and (max-height:760px){
  .dashboard-v34 .header-top{height:58px!important}
  .dashboard-v34 .nav-inner{height:46px!important}
  .dashboard-v34 .compact-welcome.v34-hero,
  .dashboard-v34 .v34-hero-inner{min-height:178px!important}
  .dashboard-v34 .v34-hero-inner{padding-top:20px!important;padding-bottom:38px!important}
  .dashboard-v34 .v34-hero-copy h1{font-size:34px!important}
  .dashboard-v34 .v34-dashboard-shell{margin-top:-30px!important}
  .dashboard-v34 .v34-metric-card{min-height:86px!important}
}


/* === v103: Actiecentrum beheer === */
.v103-action-center{margin:18px 0 22px;padding:20px;border:1px solid rgba(36,53,136,.12);border-top:4px solid #e68000;border-radius:14px;background:rgba(255,255,255,.94);box-shadow:0 10px 32px rgba(24,40,90,.08);box-sizing:border-box}
.v103-action-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:16px}
.v103-action-head small{display:block;color:#e68000;font-size:10px;font-weight:900;letter-spacing:.1em;margin-bottom:4px}.v103-action-head h2{margin:0;color:#243588;font-size:24px}.v103-action-head p{margin:4px 0 0;color:#667085;font-size:13px}.v103-action-status{padding:7px 10px;border-radius:999px;background:#f1f3fa;color:#243588;font-size:10px;font-weight:800;white-space:nowrap}
.v103-action-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.v103-action-card{position:relative;display:grid;grid-template-columns:38px 1fr auto;grid-template-rows:auto auto;column-gap:10px;align-items:center;min-width:0;padding:13px 12px;border:1px solid #dfe4ef;border-radius:11px;background:#fff;color:#243588;text-align:left;cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;font:inherit}.v103-action-card:hover{transform:translateY(-1px);border-color:#b9c3df;box-shadow:0 8px 20px rgba(36,53,136,.09)}.v103-action-icon{grid-row:1/3;display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:#f1f3fa;color:#243588;font-size:12px;font-weight:900}.v103-action-copy{min-width:0}.v103-action-copy strong{display:block;font-size:12px;line-height:1.25}.v103-action-copy small{display:block;margin-top:4px;color:#6c7487;font-size:9.5px;line-height:1.35}.v103-action-count,.v103-action-open{align-self:start;justify-self:end;border-radius:999px;padding:3px 7px;font-size:9px;font-weight:900}.v103-action-count{background:#fff1e1;color:#b85f00}.v103-action-open{background:#f3f5f9;color:#778096}.v103-action-arrow{position:absolute;right:10px;bottom:8px;color:#9aa3b5;font-size:12px}
@media(max-width:1250px){.v103-action-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){.v103-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v103-action-center{padding:15px}}@media(max-width:560px){.v103-action-grid{grid-template-columns:1fr}.v103-action-head{flex-direction:column;gap:8px}}

/* === v104: Notificatiecentrum & persoonlijke taken === */
.v104-notification-wrap{z-index:120!important}
.v104-notification-bell{position:relative!important}
.v104-notification-panel{width:min(430px,calc(100vw - 24px))!important;max-height:min(650px,calc(100vh - 90px))!important;border-radius:14px!important;box-shadow:0 24px 70px rgba(24,35,78,.22)!important;overflow:hidden!important}
.v104-notification-head{padding:16px 17px 13px!important;align-items:flex-start!important;background:#fff!important}
.v104-notification-head>div{display:grid;gap:2px}.v104-notification-head strong{font-size:16px!important}.v104-notification-head .v104-unread-copy{font-size:10px;color:#747b8f}
.v104-mark-all{white-space:nowrap!important;text-decoration:none!important;border:1px solid #d8deed!important;border-radius:8px!important;padding:7px 9px!important;font-weight:750!important;background:#fff!important}
.v104-filterbar{display:flex;gap:7px;padding:10px 13px;border-bottom:1px solid #eceef4;background:#fafbfe}
.v104-filterbar button{border:1px solid #d8deed;background:#fff;color:#49546e;border-radius:999px;padding:6px 10px;font-size:10px;font-weight:750;cursor:pointer}
.v104-filterbar button.active{background:#243588;border-color:#243588;color:#fff}
.v104-notification-list{max-height:min(470px,calc(100vh - 230px))!important}
.v104-notification-item{grid-template-columns:9px 1fr 20px!important;align-items:start!important;padding:13px 15px!important;gap:9px!important}
.v104-notification-item.unread{background:#f7f8fd!important}.v104-notification-item.action.unread{background:#fffaf3!important}.v104-notification-item.important.unread{background:#fffdf8!important}
.v104-notification-item:hover{background:#f4f6fb!important}
.v104-note-copy{min-width:0}.v104-note-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px}.v104-note-meta em{font-size:9px;color:#9196a3;font-style:normal;white-space:nowrap}
.v104-priority{font-size:8px;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:3px 6px;background:#eef1f8;color:#46516d}.v104-priority.action{background:#fff0df;color:#a55a00}.v104-priority.important{background:#eef0ff;color:#243588}
.v104-notification-item strong{font-size:12px!important;line-height:1.35}.v104-notification-item small{font-size:10.5px!important;line-height:1.45!important;color:#6c7280!important}.v104-note-arrow{color:#8992aa;margin-top:18px}
.v104-notification-item.action .notification-dot{background:#e68000!important}.v104-notification-item.important.unread .notification-dot{background:#243588!important}
.v104-notification-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;border-top:1px solid #eceef4;background:#fafbfe;font-size:9px;color:#89909f}.v104-notification-foot button{border:0;background:none;color:#243588;font-size:10px;font-weight:750;cursor:pointer}
.notification-empty{display:grid;gap:4px}.notification-empty strong{color:#243588}.notification-empty span{font-size:10px;color:#7d8492}
@media(max-width:620px){.v104-notification-panel{position:fixed!important;right:8px!important;left:8px!important;top:62px!important;width:auto!important}.v104-filterbar{overflow:auto}.v104-mark-all{font-size:9px!important}}

/* === v105: Mijn team cockpit === */
.v105-team-cockpit{margin:18px auto 24px;max-width:1180px;padding:0 18px;box-sizing:border-box;color:#25324d}
.v105-team-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-bottom:15px}
.v105-team-stat{display:flex;align-items:center;gap:12px;min-height:82px;padding:14px 15px;border:1px solid #dfe4ef;border-radius:12px;background:rgba(255,255,255,.96);box-shadow:0 7px 22px rgba(30,45,92,.06)}
.v105-team-stat i{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#f1f3fa;color:#243588;font-style:normal;font-size:16px}.v105-team-stat.warn i{background:#fff2e4;color:#bb6200}.v105-team-stat strong{display:block;color:#243588;font-size:22px;line-height:1}.v105-team-stat span{display:block;margin-top:4px;color:#70798e;font-size:10px;font-weight:700}
.v105-team-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:14px;align-items:start}.v105-team-panel{border:1px solid #dfe4ef;border-top:3px solid #243588;border-radius:13px;background:rgba(255,255,255,.97);box-shadow:0 10px 28px rgba(28,42,86,.07);overflow:hidden}.v105-team-panel.action{border-top-color:#e68000}.v105-team-panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 16px;border-bottom:1px solid #eceef4}.v105-team-panel-head small{display:block;color:#e68000;font-size:9px;font-weight:900;letter-spacing:.1em}.v105-team-panel-head h2{margin:3px 0 0;color:#243588;font-size:19px}.v105-team-panel-head input{width:min(240px,38vw);border:1px solid #d8deea;border-radius:9px;padding:9px 11px;font:inherit;font-size:11px;color:#27334f;background:#fff}
.v105-team-members{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:12px}.v105-member{display:grid;grid-template-columns:44px 1fr;gap:10px;align-items:center;padding:11px;border:1px solid #e6e9f0;border-radius:10px;background:#fff}.v105-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;background:#eef1f7;display:grid;place-items:center;color:#243588;font-weight:900;font-size:14px;overflow:hidden}.v105-avatar img{width:100%;height:100%;object-fit:cover}.v105-member-main{min-width:0}.v105-member-main strong{display:block;color:#243588;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v105-member-main small{display:block;color:#727b8c;font-size:9.5px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v105-member-meta{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.v105-pill{padding:3px 6px;border-radius:999px;background:#f1f3f8;color:#5e687d;font-size:8px;font-weight:800}.v105-pill.away{background:#fff0df;color:#a85a00}.v105-pill.birthday{background:#eef0ff;color:#243588}.v105-member-links{display:flex;gap:8px;margin-top:7px}.v105-member-links a{font-size:9px;font-weight:800;color:#243588;text-decoration:none}
.v105-side-stack{display:grid;gap:14px}.v105-action-list,.v105-upcoming-list{display:grid;gap:0}.v105-action-row,.v105-upcoming-row{display:grid;grid-template-columns:1fr auto;gap:10px;padding:12px 15px;border-bottom:1px solid #eef0f4;text-decoration:none;color:inherit}.v105-action-row:last-child,.v105-upcoming-row:last-child{border-bottom:0}.v105-action-row:hover,.v105-upcoming-row:hover{background:#fafbfe}.v105-action-row strong,.v105-upcoming-row strong{display:block;color:#243588;font-size:11px}.v105-action-row small,.v105-upcoming-row small{display:block;color:#757d8d;font-size:9px;line-height:1.4;margin-top:3px}.v105-action-row b{align-self:center;padding:4px 7px;border-radius:999px;background:#fff0df;color:#ac5c00;font-size:8px}.v105-datebox{align-self:center;min-width:44px;text-align:center;padding:5px 6px;border-radius:8px;background:#f2f4f9;color:#243588;font-size:9px;font-weight:800}.v105-team-empty{padding:20px;text-align:center;color:#7b8290;font-size:10px}.v105-team-error{padding:14px 16px;border-radius:10px;background:#fff7ee;color:#935300;font-size:10px;margin-bottom:12px}
@media(max-width:1000px){.v105-team-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.v105-team-grid{grid-template-columns:1fr}.v105-team-members{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.v105-team-cockpit{padding:0 10px}.v105-team-overview,.v105-team-members{grid-template-columns:1fr}.v105-team-panel-head{align-items:flex-start;flex-direction:column}.v105-team-panel-head input{width:100%;box-sizing:border-box}}

/* === v106: consistente en duidelijkere typografie === */
:root{
  --vahb-font-ui:"Segoe UI Variable","Segoe UI",Roboto,Arial,sans-serif;
  --vahb-font-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;
}
html{font-size:16px}
body,
button,input,select,textarea{
  font-family:var(--vahb-font-ui)!important;
  font-kerning:normal;
  font-variant-ligatures:common-ligatures;
}
body{
  font-size:14px;
  line-height:1.5;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
button,input,select,textarea{letter-spacing:0}
code,pre,kbd,samp,.secret-box,.sso-copy-row input{font-family:var(--vahb-font-mono)!important}

/* Heldere hiërarchie zonder de compacte layout weer groter te maken. */
h1,h2,h3,h4,h5,h6,
.section-head h2,
.v34-hero-copy h1,
.v103-action-head h2,
.v105-team-panel-head h2,
.expense-page-head h1,
.v22-page-head h1{
  font-family:var(--vahb-font-ui)!important;
  color:#243588;
  font-weight:700!important;
  letter-spacing:-.018em;
  text-wrap:balance;
}
h1{line-height:1.12}h2{line-height:1.18}h3,h4,h5,h6{line-height:1.24}

/* Navigatie en knoppen: dezelfde gewichtsklasse door het hele intranet. */
.main-nav a,
.btn,
button,
.account-chip,
.v103-action-card,
.v104-filterbar button,
.v104-mark-all{
  font-family:var(--vahb-font-ui)!important;
}
.main-nav a{font-weight:600!important;letter-spacing:-.005em}
.btn,button{font-weight:600}

/* Lopende tekst en subtitels iets beter leesbaar. */
p,.muted,.section-head p,.v34-hero-copy p,
.v103-action-head p,.v105-team-panel-head p,
.v104-notification-item small{
  line-height:1.55;
}
small{line-height:1.4}

/* Labels, badges en metadata consequent compact maar scherp. */
label,
.eyebrow,
.v103-action-head small,
.v105-team-panel-head small,
.expense-card-head small,
.v22-card-head small{
  font-family:var(--vahb-font-ui)!important;
  font-weight:700!important;
}
.v34-metric-label,
.v105-team-stat span,
.v105-pill,
.v104-priority,
.user-role-badge,
.expense-stage{
  font-weight:700!important;
  letter-spacing:.015em;
}

/* Formulieren: overal dezelfde leesbaarheid. */
input,select,textarea{
  color:#28324a;
  font-size:13px;
  line-height:1.35;
}
input::placeholder,textarea::placeholder{color:#8a91a1;opacity:1}

/* Tabellen/lijsten en kaarten: vermijd te lichte, minieme tekst. */
.v103-action-copy strong,
.v104-notification-item strong,
.v105-member-main strong,
.v105-action-row strong,
.v105-upcoming-row strong,
.expense-item summary strong,
.finance-expense-row strong{
  font-weight:650!important;
}
.v103-action-copy small,
.v105-member-main small,
.v105-action-row small,
.v105-upcoming-row small,
.expense-item summary small,
.finance-expense-row small{
  color:#667085!important;
}

/* Iets meer contrast op beheer- en contentpagina's. */
body:not(.dashboard-v34){color:#313845}
body:not(.dashboard-v34) p,
body:not(.dashboard-v34) .muted{color:#626b7a}

/* Kleine laptop: typografie blijft proportioneel en past in v100/v101 layout. */
@media (min-width:1000px) and (max-height:760px){
  body{font-size:13.5px}
  .dashboard-v34 .v34-hero-copy h1{letter-spacing:-.025em}
}

/* === v107: dubbele notificatiebel voorkomen === */
/* Het notificatiecentrum hoort uitsluitend in het accountgedeelte rechtsboven. */
.site-header > .notification-wrap,
.site-header > .v104-notification-wrap,
body > .notification-wrap,
body > .v104-notification-wrap{
  display:none!important;
}
.header-account-area .notification-wrap,
.header-account-area .v104-notification-wrap{
  display:flex!important;
}

/* === v110: duidelijke verlofaanvraag bovenin === */
.v110-leave-actionbar{max-width:1180px;margin:22px auto 14px;padding:17px 20px;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:22px;background:rgba(255,255,255,.98);border:1px solid #dfe3ec;border-left:4px solid var(--vahb-orange,#e68000);border-radius:10px;box-shadow:0 7px 22px rgba(31,45,91,.08)}
.v110-leave-action-copy{min-width:0;display:grid;gap:2px}.v110-leave-action-copy small{font-size:9px;font-weight:850;letter-spacing:.09em;color:var(--vahb-orange,#e68000)}.v110-leave-action-copy strong{font-size:20px;line-height:1.2;color:var(--vahb-blue,#243588)}.v110-leave-action-copy span{margin-top:2px;font-size:11px;line-height:1.45;color:#666d79}
.v110-leave-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:8px;background:var(--vahb-orange,#e68000);color:#fff!important;text-decoration:none!important;font-weight:800;font-size:12px;white-space:nowrap;box-shadow:0 6px 16px rgba(230,128,0,.2);transition:filter .15s ease,transform .15s ease}.v110-leave-cta:hover{filter:brightness(.96);transform:translateY(-1px)}
@media(max-width:720px){.v110-leave-actionbar{margin:14px 14px 12px;flex-direction:column;align-items:stretch;padding:15px 16px}.v110-leave-cta{width:100%;box-sizing:border-box}}

/* === v111: direct en duidelijk verlofaanvraagformulier === */
body .v103-action-center{ }
.v111-leave-request-focus{scroll-margin-top:95px!important;border-top:4px solid var(--vahb-orange,#e68000)!important;box-shadow:0 10px 28px rgba(36,53,136,.10)!important}
.v111-leave-form-head{display:grid;gap:3px;margin:-4px -1px 18px;padding:16px 18px 14px;background:#fff8ee;border-bottom:1px solid #f0dfc9}
.v111-leave-form-head small{font-size:9px;font-weight:850;letter-spacing:.09em;color:var(--vahb-orange,#e68000)}
.v111-leave-form-head strong{font-size:22px;line-height:1.15;color:var(--vahb-blue,#243588)}
.v111-leave-form-head span{font-size:11px;color:#676d78}
@media(max-width:700px){.v111-leave-form-head{padding:14px 15px}.v111-leave-form-head strong{font-size:19px}}


/* === v113: gerichte duplicate-intro fix === */
.v113-hide-old-request-intro-piece{display:none!important}
.request-form-card,.request-list-card{visibility:visible!important;opacity:1!important}

/* === v114: openstaande verlofaanvragen in Actiecentrum === */
.v114-leave-actions{margin:0 0 16px;border:1px solid #e2e6f0;border-left:4px solid #e68000;border-radius:11px;background:#fff;overflow:hidden}
.v114-leave-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border-bottom:1px solid #eef0f5;background:#fffaf3}
.v114-leave-head small{display:block;color:#e68000;font-size:10px;font-weight:900;letter-spacing:.1em}.v114-leave-head h3{margin:3px 0 2px;color:#243588;font-size:18px}.v114-leave-head p{margin:0;color:#667085;font-size:11px}.v114-leave-count{display:grid;place-items:center;min-width:34px;height:34px;border-radius:999px;background:#243588;color:#fff;font-size:14px;font-weight:900}
.v114-leave-list{display:grid}.v114-leave-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:14px 16px;border-top:1px solid #eef0f5}.v114-leave-row:first-child{border-top:0}.v114-leave-row.busy{opacity:.55;pointer-events:none}.v114-leave-main{display:grid;gap:3px;min-width:0}.v114-leave-main small{color:#6c7487;font-size:10px;text-transform:capitalize}.v114-leave-main strong{color:#243588;font-size:14px}.v114-leave-main span{color:#4b5567;font-size:11px}.v114-leave-main span b{color:#243588}.v114-leave-main em{color:#7a8291;font-size:10px;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v114-leave-buttons{display:flex;gap:8px}.v114-leave-buttons button{border-radius:8px;padding:9px 12px;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.v114-approve{border:1px solid #243588;background:#243588;color:#fff}.v114-reject{border:1px solid #d8dde8;background:#fff;color:#a23b3b}.v114-empty{display:flex;flex-direction:column;gap:4px;padding:18px;color:#6b7280;font-size:11px}.v114-empty b{color:#243588}.v114-empty.error b{color:#9b3131}
@media(max-width:720px){.v114-leave-row{grid-template-columns:1fr}.v114-leave-buttons{justify-content:flex-start}.v114-leave-head{align-items:flex-start}}

/* === v118: Mijn verlof annuleren === */
.v118-leave-cancel-panel{max-width:1180px;margin:18px auto 28px;background:#fff;border:1px solid #dfe3ec;border-top:4px solid #f28c00;box-shadow:0 3px 12px rgba(28,43,92,.05);padding:20px 22px}
.v118-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:12px}.v118-head small{display:block;color:#f28c00;font-size:10px;font-weight:900;letter-spacing:.11em}.v118-head h2{margin:3px 0 5px;color:#243588;font-size:20px}.v118-head p{margin:0;color:#697181;font-size:12px}.v118-list{display:grid}.v118-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:14px 0;border-top:1px solid #edf0f4}.v118-main{min-width:0;flex:1}.v118-title{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.v118-title strong{color:#243588;font-size:13px}.v118-meta{display:flex;gap:14px;flex-wrap:wrap;margin-top:5px;color:#697181;font-size:11px}.v118-main p{margin:6px 0 0;color:#7b8290;font-size:11px}.v118-status{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:9px;font-weight:900;background:#eef0f6;color:#536078}.v118-status.approved{background:#eaf6ed;color:#1f6b35}.v118-status.rejected,.v118-status.cancelled{background:#f6eded;color:#993535}.v118-status.submitted{background:#edf0ff;color:#243588}.v118-status.in_review{background:#fff3df;color:#9b5a00}.v118-actions{flex:0 0 auto}.v118-cancel{border:1px solid #c84a4a;background:#fff;color:#a52f2f;border-radius:6px;padding:8px 11px;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.v118-cancel:hover{background:#fff2f2}.v118-cancel:disabled{opacity:.55;cursor:wait}.v118-loading,.v118-empty,.v118-error{padding:14px 0;color:#747c89;font-size:12px}.v118-error{color:#a12f2f}@media(max-width:720px){.v118-leave-cancel-panel{margin:12px;padding:16px}.v118-row{align-items:flex-start;flex-direction:column}.v118-actions{width:100%}.v118-cancel{width:100%}}

/* === v120: één consistente header, hoofdnavigatie en pagina-uitlijning ===
   Gebaseerd op de maatvoering van de v34-homepage. Geldt voor Home én alle subpagina's. */
:root{--vahb-shell:1530px}

/* Eén horizontale referentielijn voor logo, menu, hero en inhoud. */
.site-header .shell-wide,
.nav-inner,
body.vahb-photo-page .vahb-v65-context,
body.vahb-photo-page .vahb-v65-hero-inner,
body.vahb-photo-page > main.shell-wide,
body.vahb-photo-page main .shell-wide,
body.vahb-photo-page .content-shell .shell-wide,
body.vahb-photo-page .page-shell .shell-wide,
.dashboard-v34 .shell-wide,
.dashboard-v34 .v34-dashboard-shell,
.dashboard-v34 .site-header .shell-wide{
  width:min(var(--vahb-shell),calc(100% - clamp(24px,4vw,64px)))!important;
  max-width:var(--vahb-shell)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}

/* Identieke bovenste header op iedere pagina. */
.site-header .header-top{
  height:73px!important;
  grid-template-columns:clamp(190px,16vw,265px) minmax(250px,clamp(280px,28vw,440px)) minmax(0,1fr) 64px!important;
  gap:clamp(12px,1.6vw,26px)!important;
  align-items:center!important;
  box-sizing:border-box!important;
}
.site-header .official-logo{height:60px!important;display:flex!important;align-items:center!important}
.site-header .official-logo img{width:clamp(185px,15vw,247px)!important;max-width:247px!important;height:auto!important}
.site-header .header-meta{gap:clamp(12px,1.8vw,31px)!important;font-size:clamp(10px,.78vw,12px)!important}
.site-header .header-search,
.site-header .header-meta,
.site-header .header-account-area{min-width:0!important}

/* Eén menuhoogte, lettergrootte en knopmaat op alle routes. */
.nav-row{
  background:rgba(248,248,243,.96)!important;
  border-top:1px solid rgba(36,53,136,.04)!important;
  border-bottom:1px solid rgba(36,53,136,.08)!important;
  box-shadow:0 3px 14px rgba(24,37,96,.045)!important;
  overflow:visible!important;
}
.nav-inner{
  height:58px!important;
  min-height:58px!important;
  padding-inline:0!important;
  overflow-x:auto!important;
  scrollbar-width:none!important;
  display:flex!important;
  align-items:center!important;
}
.nav-inner::-webkit-scrollbar{display:none!important}
.main-nav,
.main-nav.main-nav-v59,
.main-nav.main-nav-v60,
.dashboard-v34 .main-nav{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:5px!important;
  width:max-content!important;
  min-width:0!important;
  height:100%!important;
}
.main-nav a,
.main-nav.main-nav-v59 a,
.main-nav.main-nav-v60 a,
.dashboard-v34 .main-nav a{
  flex:0 0 auto!important;
  height:40px!important;
  margin:9px 0!important;
  padding:0 clamp(11px,1vw,15px)!important;
  border:0!important;
  border-radius:9px!important;
  color:#3d414c!important;
  font-family:"Segoe UI Variable","Segoe UI",Roboto,Arial,sans-serif!important;
  font-size:clamp(13px,.92vw,15px)!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:0!important;
  white-space:nowrap!important;
  text-decoration:none!important;
  box-sizing:border-box!important;
}
.main-nav a:hover,
.main-nav.main-nav-v59 a:hover,
.main-nav.main-nav-v60 a:hover,
.dashboard-v34 .main-nav a:hover{
  color:#243588!important;
  background:#fff!important;
  box-shadow:0 3px 12px rgba(36,53,136,.08)!important;
  transform:translateY(-1px)!important;
}
.main-nav a.active,
.main-nav a[aria-current="page"],
.main-nav.main-nav-v59 a.active,
.main-nav.main-nav-v60 a.active,
.dashboard-v34 .main-nav a.active{
  color:#243588!important;
  background:#fff!important;
  box-shadow:0 4px 15px rgba(36,53,136,.11)!important;
  position:relative!important;
}
.main-nav a.active::after,
.main-nav a[aria-current="page"]::after,
.main-nav.main-nav-v59 a.active::after,
.main-nav.main-nav-v60 a.active::after,
.dashboard-v34 .main-nav a.active::after{
  content:""!important;
  position:absolute!important;
  left:13px!important;
  right:13px!important;
  bottom:-9px!important;
  height:3px!important;
  border-radius:3px 3px 0 0!important;
  background:#e68000!important;
}
.main-nav .nav-home,
.main-nav.main-nav-v59 .nav-home,
.main-nav.main-nav-v60 .nav-home,
.dashboard-v34 .main-nav .nav-home{gap:8px!important;padding-left:13px!important;padding-right:17px!important}
.nav-home-icon,
.main-nav.main-nav-v59 .nav-home-icon,
.main-nav.main-nav-v60 .nav-home-icon{width:18px!important;height:18px!important;flex:0 0 18px!important}
.nav-home-icon svg,
.main-nav.main-nav-v59 .nav-home-icon svg,
.main-nav.main-nav-v60 .nav-home-icon svg{width:18px!important;height:18px!important}

/* Subpagina-shell exact onder dezelfde kolommen als header/menu. */
body.vahb-photo-page .vahb-v65-context-band{padding-left:0!important;padding-right:0!important}
body.vahb-photo-page .vahb-v65-context,
body.vahb-photo-page .vahb-v65-hero-inner{padding-left:0!important;padding-right:0!important}
body.vahb-photo-page .vahb-v65-hero-inner{grid-template-columns:minmax(0,1fr) minmax(320px,420px)!important}
body.vahb-photo-page .vahb-v65-title{font-family:"Segoe UI Variable","Segoe UI",Roboto,Arial,sans-serif!important}
body.vahb-photo-page .vahb-v65-copy{justify-self:end!important;width:100%!important;max-width:420px!important}

/* Laptopbreedte: dezelfde responsive maatvoering voor Home en subpagina's. */
@media (min-width:1000px) and (max-width:1500px){
  .site-header .shell-wide,
  .nav-inner,
  body.vahb-photo-page .vahb-v65-context,
  body.vahb-photo-page .vahb-v65-hero-inner,
  body.vahb-photo-page > main.shell-wide,
  body.vahb-photo-page main .shell-wide,
  body.vahb-photo-page .content-shell .shell-wide,
  body.vahb-photo-page .page-shell .shell-wide,
  .dashboard-v34 .shell-wide,
  .dashboard-v34 .v34-dashboard-shell,
  .dashboard-v34 .site-header .shell-wide{width:calc(100% - 36px)!important}
  .site-header .header-top{
    grid-template-columns:minmax(175px,220px) minmax(220px,1fr) minmax(380px,auto) minmax(52px,auto)!important;
    gap:14px!important;
  }
  .site-header .official-logo img{max-width:210px!important}
  .site-header .header-meta{gap:12px!important}
  .main-nav a,.main-nav.main-nav-v60 a,.dashboard-v34 .main-nav a{padding-inline:10px!important;font-size:13.5px!important}
}
@media (min-width:1000px) and (max-height:760px){
  .site-header .header-top{height:58px!important}
  .site-header .official-logo{height:52px!important}
  .nav-inner{height:46px!important;min-height:46px!important}
  .main-nav a,.main-nav.main-nav-v60 a,.dashboard-v34 .main-nav a{height:36px!important;margin:5px 0!important;font-size:13px!important}
  .main-nav a.active::after,.main-nav a[aria-current="page"]::after{bottom:-5px!important}
}
@media(max-width:820px){
  .site-header .shell-wide,
  .nav-inner,
  body.vahb-photo-page .vahb-v65-context,
  body.vahb-photo-page .vahb-v65-hero-inner,
  body.vahb-photo-page > main.shell-wide,
  body.vahb-photo-page main .shell-wide,
  body.vahb-photo-page .content-shell .shell-wide,
  body.vahb-photo-page .page-shell .shell-wide{width:min(100% - 28px,var(--vahb-shell))!important}
  .site-header .header-top{height:68px!important;grid-template-columns:210px minmax(180px,1fr) auto!important;gap:12px!important}
  .site-header .header-meta{display:none!important}
  .nav-inner{height:52px!important;min-height:52px!important}
  .main-nav a,.main-nav.main-nav-v60 a{height:38px!important;margin:7px 0!important;padding-inline:10px!important;font-size:12.5px!important}
  body.vahb-photo-page .vahb-v65-hero-inner{grid-template-columns:1fr!important}
  body.vahb-photo-page .vahb-v65-copy{justify-self:start!important;max-width:720px!important}
}

/* === v121: Nieuws exact binnen dezelfde gecentreerde contentkolom ===
   v80/v81 injecteren onderdelen rechtstreeks in <main>; die kregen daardoor
   niet automatisch de v120 shell-breedte mee. Alleen de Nieuws-blokken worden
   hier gericht begrensd, zonder andere pagina's te raken. */
body.vahb-photo-page .v80-news-page-alerts,
body.vahb-photo-page .vahb-v81-news-hub{
  width:min(var(--vahb-shell),calc(100% - clamp(24px,4vw,64px)))!important;
  max-width:var(--vahb-shell)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
body.vahb-photo-page .vahb-v81-news-hub{
  padding-left:0!important;
  padding-right:0!important;
}
@media (min-width:1000px) and (max-width:1500px){
  body.vahb-photo-page .v80-news-page-alerts,
  body.vahb-photo-page .vahb-v81-news-hub{
    width:calc(100% - 36px)!important;
  }
}
@media(max-width:820px){
  body.vahb-photo-page .v80-news-page-alerts,
  body.vahb-photo-page .vahb-v81-news-hub{
    width:min(100% - 28px,var(--vahb-shell))!important;
  }
}


/* === v122: secundaire Startpagina-contextbalk verwijderd ===
   De hoofdnav bevat al een vaste Home-knop; subpagina's starten direct met hun hero. */
body.vahb-photo-page .vahb-v65-context-band,
body.vahb-photo-page .vahb-v65-context{
  display:none!important;
}

/* === v123: compact Actiecentrum in Beheer === */
.v103-action-center.v123-action-compact{position:relative;transition:padding .18s ease,margin .18s ease,box-shadow .18s ease}
.v103-action-center.v123-action-compact .v123-action-toggle{appearance:none;border:1px solid #d9deea;background:#fff;color:#243588;border-radius:9px;padding:7px 10px;font:inherit;font-size:11px;font-weight:800;cursor:pointer;white-space:nowrap}
.v103-action-center.v123-action-compact .v123-action-toggle:hover{background:#f7f8fc;border-color:#bbc4dc}
.v103-action-center.v123-action-compact .v123-action-toggle:focus-visible{outline:2px solid #243588;outline-offset:2px}
.v103-action-center.v123-action-compact.v123-collapsed{margin:12px 0 14px;padding:11px 14px;border-top-width:3px;box-shadow:0 4px 14px rgba(24,40,90,.06)}
.v103-action-center.v123-action-compact.v123-collapsed .v103-action-head{align-items:center;margin-bottom:0}
.v103-action-center.v123-action-compact.v123-collapsed .v103-action-head small,
.v103-action-center.v123-action-compact.v123-collapsed .v103-action-head p{display:none!important}
.v103-action-center.v123-action-compact.v123-collapsed .v103-action-head h2{font-size:17px!important;line-height:1.2}
.v103-action-center.v123-action-compact.v123-collapsed .v103-action-grid,
.v103-action-center.v123-action-compact.v123-collapsed .v114-leave-actions{display:none!important}
.v103-action-center.v123-action-compact .v123-action-head-tools{display:flex;align-items:center;gap:8px;margin-left:auto}
.v103-action-center.v123-action-compact .v103-action-status{margin-left:0}
@media(max-width:700px){.v103-action-center.v123-action-compact .v123-action-head-tools{width:100%;justify-content:space-between;margin-left:0}.v103-action-center.v123-action-compact.v123-collapsed .v103-action-head{flex-direction:row;align-items:center}.v103-action-center.v123-action-compact.v123-collapsed .v103-action-status{display:none}}


/* === v127: beheerheader + notificaties exact uitlijnen ===
   De beheeromgeving gebruikt geen lege navigatiebalk onder de topbar.
   Alle acties rechtsboven (terug, meldingen, taal) staan in één vaste groep
   die binnen dezelfde 1530px contentlijn valt als logo en beheerinhoud. */
body.v127-admin-page .topbar{
  border-bottom:0!important;
}
body.v127-admin-page .topbar-inner{
  width:min(var(--vahb-shell,1530px),calc(100% - 64px))!important;
  height:73px!important;
  margin-inline:auto!important;
  display:flex!important;
  align-items:center!important;
}
body.v127-admin-page .vahb-admin-top-actions{
  position:static!important;
  inset:auto!important;
  margin:0 0 0 auto!important;
  gap:10px!important;
  min-height:38px!important;
  align-items:center!important;
  justify-content:flex-end!important;
  max-width:none!important;
}
body.v127-admin-page .vahb-admin-top-actions .vahb-admin-top-back{
  height:38px!important;
  margin:0!important;
}
body.v127-admin-page .vahb-admin-top-actions .v127-admin-notification,
body.v127-admin-page .vahb-admin-top-actions .notification-wrap,
body.v127-admin-page .vahb-admin-top-actions .v104-notification-wrap{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  margin:0!important;
  inset:auto!important;
  float:none!important;
}
body.v127-admin-page .vahb-admin-top-actions .notification-bell{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  margin:0!important;
  padding:0!important;
  border-radius:7px!important;
}
body.v127-admin-page .vahb-admin-top-actions .notification-count{
  right:-5px!important;
  top:-6px!important;
}
body.v127-admin-page .vahb-admin-top-actions .notification-panel{
  position:absolute!important;
  top:46px!important;
  right:0!important;
  left:auto!important;
  margin:0!important;
}
body.v127-admin-page .vahb-admin-top-actions .vahb-floating-lang,
body.v127-admin-page .vahb-admin-top-actions .vahb-admin-lang-inline{
  margin:0!important;
  position:static!important;
}
@media(max-width:820px){
  body.v127-admin-page .topbar-inner{width:calc(100% - 32px)!important}
  body.v127-admin-page .vahb-admin-top-actions{
    gap:7px!important;
  }
}
@media(max-width:600px){
  body.v127-admin-page .topbar-inner{width:calc(100% - 24px)!important;height:64px!important}
  body.v127-admin-page .vahb-admin-top-actions{
    gap:6px!important;
  }
  body.v127-admin-page .vahb-admin-top-actions .notification-bell,
  body.v127-admin-page .vahb-admin-top-actions .vahb-admin-top-back{
    height:34px!important;
    min-height:34px!important;
  }
  body.v127-admin-page .vahb-admin-top-actions .notification-bell{
    width:34px!important;
    min-width:34px!important;
  }
}

/* === v128: professionele UI-polish / strakkere VAHB designlijn ===
   Behoudt de v34-structuur en bestaande fotografie. Alleen maatvoering,
   typografie, belijning, witruimte en kaartafwerking worden aangescherpt. */
:root{
  --vahb-shell:1480px;
  --v128-ink:#273247;
  --v128-muted:#697386;
  --v128-line:#dce2eb;
  --v128-line-soft:#e9edf3;
  --v128-surface:#ffffff;
  --v128-canvas:#f5f6f8;
  --v128-radius:10px;
  --v128-shadow:0 8px 26px rgba(31,45,87,.065);
  --v128-shadow-hover:0 12px 30px rgba(31,45,87,.09);
}

/* Algemene scherpte: rustiger contrast en een eenduidige contentlijn. */
body{
  color:var(--v128-ink);
  letter-spacing:-.003em;
}
.shell-wide,
.dashboard-v34 .shell-wide,
.dashboard-v34 .v34-dashboard-shell,
.dashboard-v34 .site-header .shell-wide,
body.vahb-photo-page .vahb-v65-context,
body.vahb-photo-page .vahb-v65-hero-inner,
body.vahb-photo-page > main.shell-wide,
body.vahb-photo-page main .shell-wide{
  max-width:var(--vahb-shell)!important;
}

/* Header: minder 'webshop', meer zakelijke applicatiebalk. */
.site-header{
  border-bottom:0!important;
  box-shadow:0 1px 0 rgba(36,53,136,.07)!important;
}
.site-header .header-top{
  height:68px!important;
}
.site-header .official-logo{
  height:56px!important;
}
.site-header .official-logo img{
  max-height:50px!important;
}
.site-header .header-search{
  height:40px!important;
  border:1px solid #d6dce6!important;
  border-radius:9px!important;
  overflow:visible!important;
  box-shadow:0 1px 2px rgba(30,44,85,.025)!important;
  transition:border-color .16s ease,box-shadow .16s ease!important;
}
.site-header .header-search:focus-within{
  border-color:#aeb8d3!important;
  box-shadow:0 0 0 3px rgba(36,53,136,.07)!important;
}
.site-header .header-search input{
  font-size:13px!important;
  color:#30384b!important;
}
.site-header .header-search button{
  border-radius:0 8px 8px 0!important;
}
.site-header .header-meta{
  color:#465064!important;
  font-weight:500!important;
}
.site-header .language b{
  border:1px solid #d7dce6!important;
  border-radius:7px!important;
  padding:4px 8px!important;
  color:#243588!important;
  box-shadow:0 1px 2px rgba(30,44,85,.03)!important;
}
.site-header .account-chip{
  min-height:40px!important;
  border:1px solid transparent!important;
  border-radius:9px!important;
  padding:6px 8px!important;
  background:#f8f9fb!important;
}
.site-header .account-chip:hover,
.site-header .account-chip[aria-expanded="true"]{
  border-color:#dce2eb!important;
  background:#fff!important;
  box-shadow:0 4px 14px rgba(31,45,87,.06)!important;
}
.site-header .account-copy strong{font-size:11.5px!important;line-height:1.15!important}
.site-header .account-copy small{font-size:8.8px!important;color:#788195!important;line-height:1.25!important}
.site-header .notification-bell{
  width:40px!important;
  height:40px!important;
  border-color:#d7dde8!important;
  border-radius:9px!important;
  box-shadow:0 1px 2px rgba(31,45,87,.03)!important;
}
.site-header .notification-bell:hover{
  background:#f7f8fc!important;
  border-color:#aeb8d3!important;
}

/* Hoofdnavigatie: strakke 52px balk en precieze actieve lijn. */
.nav-row{
  background:#f8f8f4!important;
  border-top:1px solid #f0f1ee!important;
  border-bottom:1px solid #dfe3e8!important;
  box-shadow:none!important;
}
.nav-inner{
  height:52px!important;
  min-height:52px!important;
}
.main-nav,
.main-nav.main-nav-v59,
.main-nav.main-nav-v60,
.dashboard-v34 .main-nav{
  gap:4px!important;
}
.main-nav a,
.main-nav.main-nav-v59 a,
.main-nav.main-nav-v60 a,
.dashboard-v34 .main-nav a{
  height:38px!important;
  margin:7px 0!important;
  border-radius:8px!important;
  font-size:14px!important;
  font-weight:650!important;
  letter-spacing:-.01em!important;
  color:#3a4355!important;
}
.main-nav a:hover,
.main-nav.main-nav-v59 a:hover,
.main-nav.main-nav-v60 a:hover,
.dashboard-v34 .main-nav a:hover{
  transform:none!important;
  box-shadow:none!important;
  background:#fff!important;
}
.main-nav a.active,
.main-nav a[aria-current="page"],
.main-nav.main-nav-v59 a.active,
.main-nav.main-nav-v60 a.active,
.dashboard-v34 .main-nav a.active{
  box-shadow:0 3px 12px rgba(31,45,87,.07)!important;
}
.main-nav a.active::after,
.main-nav a[aria-current="page"]::after,
.main-nav.main-nav-v59 a.active::after,
.main-nav.main-nav-v60 a.active::after,
.dashboard-v34 .main-nav a.active::after{
  left:12px!important;
  right:12px!important;
  bottom:-7px!important;
  height:3px!important;
}

/* Dashboard: corporate canvas, maar bestaande magazijnfoto blijft intact. */
.dashboard-v34{background:var(--v128-canvas)!important}
.dashboard-v34 .compact-home-main{
  background-color:var(--v128-canvas)!important;
}
.dashboard-v34 .compact-home-main::after{
  opacity:.34!important;
}
.dashboard-v34 .compact-welcome.v34-hero{
  border-bottom:3px solid #e68000!important;
  box-shadow:none!important;
}
.dashboard-v34 .v34-hero-inner{
  padding-top:28px!important;
  padding-bottom:47px!important;
}
.dashboard-v34 .v34-hero-copy{
  max-width:760px!important;
}
.dashboard-v34 .v34-hero-copy .eyebrow{
  margin-bottom:9px!important;
  font-size:9.5px!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
}
.dashboard-v34 .v34-hero-copy h1{
  line-height:1.02!important;
  font-weight:760!important;
  letter-spacing:-.035em!important;
  text-shadow:0 2px 10px rgba(9,23,76,.13)!important;
}
.dashboard-v34 .v34-hero-copy p{
  margin-top:8px!important;
  font-size:12.5px!important;
  font-weight:600!important;
  color:rgba(255,255,255,.96)!important;
  letter-spacing:-.005em!important;
}
.dashboard-v34 .v34-hero-actions .btn{
  min-height:40px!important;
  padding:0 17px!important;
  border-radius:8px!important;
  border:1px solid rgba(255,255,255,.2)!important;
  box-shadow:0 5px 16px rgba(25,37,83,.10)!important;
  font-size:11.5px!important;
  font-weight:700!important;
}

/* Dashboardgrid: overal dezelfde lijnen, radius en optische hoogte. */
.dashboard-v34 .v34-dashboard-shell{
  margin-top:-31px!important;
  padding-bottom:48px!important;
}
.dashboard-v34 .v34-metric-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  max-width:none!important;
  gap:16px!important;
  margin-bottom:16px!important;
}
.dashboard-v34 .v34-metric-card,
.dashboard-v34 .v34-panel,
.dashboard-v34 .v34-quick-section{
  background:rgba(255,255,255,.97)!important;
  border:1px solid var(--v128-line)!important;
  border-radius:var(--v128-radius)!important;
  box-shadow:var(--v128-shadow)!important;
}
.dashboard-v34 .v34-metric-card{
  min-height:106px!important;
  padding:15px 17px!important;
}
.dashboard-v34 .v34-metric-card::before{width:3px!important}
.dashboard-v34 .v34-metric-card:hover,
.dashboard-v34 .v34-panel:hover,
.dashboard-v34 .v34-quick-section:hover{
  transform:none!important;
  border-color:#cfd6e2!important;
  box-shadow:var(--v128-shadow-hover)!important;
}
.dashboard-v34 .v34-metric-icon{
  width:46px!important;
  height:46px!important;
  border-radius:9px!important;
}
.dashboard-v34 .v34-metric-copy>small{
  margin-bottom:4px!important;
  font-size:9px!important;
  letter-spacing:.12em!important;
  color:#697386!important;
}
.dashboard-v34 .v34-metric-copy>strong,
.dashboard-v34 .v34-metric-dynamic>strong{
  font-size:26px!important;
  line-height:1!important;
  font-weight:750!important;
  letter-spacing:-.03em!important;
}
.dashboard-v34 .v34-metric-copy>span:not(.v34-metric-dynamic),
.dashboard-v34 .v34-metric-dynamic>span{
  margin-top:5px!important;
  color:#586276!important;
  font-size:10.5px!important;
  font-weight:500!important;
}
.dashboard-v34 .v34-metric-dynamic small{
  margin-top:5px!important;
  color:#838b99!important;
  font-size:8.8px!important;
}

.dashboard-v34 .v34-focus-grid,
.dashboard-v34 .v34-content-grid{
  gap:16px!important;
  margin-bottom:16px!important;
}
.dashboard-v34 .v34-focus-grid{
  grid-template-columns:minmax(0,1.45fr) minmax(345px,.68fr)!important;
}
.dashboard-v34 .v34-content-grid{
  grid-template-columns:1.15fr .85fr!important;
}
.dashboard-v34 .v34-panel,
.dashboard-v34 .v34-quick-section{
  padding:18px 19px!important;
}
.dashboard-v34 .v34-panel-head{
  align-items:center!important;
  margin-bottom:10px!important;
  padding-bottom:12px!important;
  border-bottom:1px solid var(--v128-line-soft)!important;
}
.dashboard-v34 .v34-panel-head .eyebrow{
  margin-bottom:4px!important;
  color:#e07b00!important;
  font-size:8.5px!important;
  font-weight:800!important;
  letter-spacing:.12em!important;
}
.dashboard-v34 .v34-panel-head h2{
  font-size:18.5px!important;
  line-height:1.18!important;
  font-weight:720!important;
  letter-spacing:-.022em!important;
}
.dashboard-v34 .v34-panel-head>a{
  color:#243588!important;
  font-size:9.5px!important;
  font-weight:750!important;
}
.dashboard-v34 .v34-timeline-row{
  min-height:48px!important;
  padding:8px 2px!important;
  border-top-color:var(--v128-line-soft)!important;
}
.dashboard-v34 .v34-timeline-copy strong{
  color:#343d50!important;
  font-size:11.5px!important;
  font-weight:650!important;
}
.dashboard-v34 .v34-timeline-copy small{
  color:#8790a0!important;
  font-size:8.5px!important;
}
.dashboard-v34 .v34-empty-state{
  padding:18px 3px!important;
}
.dashboard-v34 .v34-empty-state strong{
  color:#3e475a!important;
  font-size:11.5px!important;
}
.dashboard-v34 .v34-empty-state small{
  color:#7a8393!important;
  font-size:9.5px!important;
}

/* BHV blijft visueel onderscheidend, maar volgt exact dezelfde maatvoering. */
.dashboard-v34 .v34-bhv-panel{
  border-color:#233786!important;
  box-shadow:0 9px 24px rgba(28,43,112,.16)!important;
}
.dashboard-v34 .v34-bhv-panel .v34-panel-head{
  border-bottom-color:rgba(255,255,255,.13)!important;
}
.dashboard-v34 .v34-bhv-person{
  border-radius:8px!important;
  padding:8px 9px!important;
  background:rgba(255,255,255,.065)!important;
}
.dashboard-v34 .v34-bhv-copy strong{font-size:10px!important;font-weight:650!important}
.dashboard-v34 .v34-bhv-copy small{font-size:8.5px!important}
.dashboard-v34 .bhv-live-label{
  border-radius:999px!important;
  font-size:9px!important;
  font-weight:700!important;
}

/* Snelkoppelingen en onderste panelen: duidelijkere kolomlijnen. */
.dashboard-v34 .v34-quick-section{
  margin-bottom:16px!important;
}
.dashboard-v34 .v34-topic-grid{
  gap:8px!important;
}
.dashboard-v34 .v34-topic-tile{
  min-height:68px!important;
  border:1px solid #e2e6ed!important;
  border-radius:8px!important;
  background:#fafbfc!important;
  box-shadow:none!important;
}
.dashboard-v34 .v34-topic-tile:hover{
  transform:none!important;
  background:#fff!important;
  border-color:#cfd6e2!important;
  box-shadow:0 5px 16px rgba(31,45,87,.055)!important;
}
.dashboard-v34 .v34-topic-icon{
  border-radius:8px!important;
}
.dashboard-v34 .v34-topic-tile strong{
  color:#2d3b79!important;
  font-size:10.5px!important;
  font-weight:700!important;
}
.dashboard-v34 .v34-topic-tile small{
  color:#7d8696!important;
  font-size:8.5px!important;
}
.dashboard-v34 .v34-content-grid .v34-panel{
  min-height:235px!important;
}
.dashboard-v34 .v34-news-row,
.dashboard-v34 .v34-doc-row{
  border-top-color:var(--v128-line-soft)!important;
}
.dashboard-v34 .v34-news-row strong,
.dashboard-v34 .v34-doc-row strong{
  color:#374154!important;
  font-size:10.8px!important;
  font-weight:650!important;
}
.dashboard-v34 .v34-doc-icon{
  border-radius:8px!important;
  background:#f0f2f8!important;
}

/* Subpagina's krijgen dezelfde zakelijke contentlijn/typografie zonder hun inhoud te verbergen. */
body.vahb-photo-page .vahb-v65-hero-inner{
  padding-top:38px!important;
  padding-bottom:38px!important;
}
body.vahb-photo-page .vahb-v65-title{
  font-weight:740!important;
  letter-spacing:-.03em!important;
}
body.vahb-photo-page .vahb-v65-copy{
  color:#687285!important;
  font-size:13px!important;
  line-height:1.55!important;
}
body.vahb-photo-page main{
  color:var(--v128-ink)!important;
}

/* Laptop: professioneel compact zonder informatie te laten botsen. */
@media (min-width:1000px) and (max-width:1600px){
  .site-header .header-top{height:64px!important}
  .site-header .official-logo{height:52px!important}
  .site-header .official-logo img{max-height:47px!important}
  .nav-inner{height:49px!important;min-height:49px!important}
  .main-nav a,.main-nav.main-nav-v59 a,.main-nav.main-nav-v60 a,.dashboard-v34 .main-nav a{
    height:36px!important;
    margin:6px 0!important;
    font-size:13px!important;
  }
  .main-nav a.active::after,.main-nav a[aria-current="page"]::after{bottom:-7px!important}
  .dashboard-v34 .v34-hero-inner{padding-top:24px!important;padding-bottom:44px!important}
  .dashboard-v34 .v34-dashboard-shell{margin-top:-30px!important}
  .dashboard-v34 .v34-metric-card{min-height:98px!important}
  .dashboard-v34 .v34-panel,.dashboard-v34 .v34-quick-section{padding:16px 17px!important}
  .dashboard-v34 .v34-panel-head{padding-bottom:10px!important}
  .dashboard-v34 .v34-panel-head h2{font-size:17.5px!important}
}
@media(max-width:900px){
  .dashboard-v34 .v34-focus-grid,
  .dashboard-v34 .v34-content-grid{grid-template-columns:1fr!important}
  .dashboard-v34 .v34-metric-grid{grid-template-columns:1fr 1fr!important}
}
@media(max-width:700px){
  .dashboard-v34 .v34-metric-grid{grid-template-columns:1fr!important}
  .dashboard-v34 .v34-panel-head{align-items:flex-start!important}
  :root{--v128-radius:9px}
}

/* === v129: gerichte BHV-herstelpatch na v128 UI-polish ===
   De generieke v128 .v34-panel-regel maakte ook het BHV-paneel wit,
   terwijl de BHV-teksten bewust wit zijn. Daardoor verdwenen naam/rol/telefoon.
   Deze regels herstellen uitsluitend het BHV-paneel en de kaartuitlijning. */
.dashboard-v34 .v34-panel.v34-bhv-panel{
  background:linear-gradient(155deg,#243588 0%,#1d2b70 100%)!important;
  color:#fff!important;
  border:1px solid #243588!important;
  box-shadow:0 9px 24px rgba(28,43,112,.16)!important;
  overflow:hidden!important;
}
.dashboard-v34 .v34-bhv-panel .v34-panel-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  border-bottom:1px solid rgba(255,255,255,.14)!important;
}
.dashboard-v34 .v34-bhv-panel .v34-panel-head .eyebrow{
  color:#f2a02b!important;
}
.dashboard-v34 .v34-bhv-panel .v34-panel-head h2{
  color:#fff!important;
}
.dashboard-v34 .v34-bhv-panel .bhv-live-label{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  flex:0 0 auto!important;
  color:#fff!important;
  background:rgba(255,255,255,.10)!important;
  border:1px solid rgba(255,255,255,.17)!important;
  padding:6px 9px!important;
  white-space:nowrap!important;
}
.dashboard-v34 .v34-bhv-panel .bhv-live-label i{
  width:7px!important;
  height:7px!important;
  flex:0 0 7px!important;
  background:#58d27a!important;
  box-shadow:0 0 0 3px rgba(88,210,122,.15)!important;
}
.dashboard-v34 .v34-bhv-list{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
  align-content:start!important;
}
.dashboard-v34 .v34-bhv-person,
.dashboard-v34 a.v34-bhv-person{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  min-width:0!important;
  min-height:58px!important;
  padding:8px 44px 8px 9px!important;
  border:1px solid rgba(255,255,255,.11)!important;
  border-radius:8px!important;
  background:rgba(255,255,255,.075)!important;
  color:#fff!important;
  text-decoration:none!important;
  box-sizing:border-box!important;
}
.dashboard-v34 .v34-bhv-person:not(.v53-bhv-clickable){
  padding-right:26px!important;
}
.dashboard-v34 .v34-bhv-person:hover,
.dashboard-v34 a.v34-bhv-person:hover{
  background:rgba(255,255,255,.115)!important;
  border-color:rgba(255,255,255,.19)!important;
}
.dashboard-v34 .v34-bhv-person>img,
.dashboard-v34 .v34-bhv-person>.bhv-home-initials{
  width:40px!important;
  height:40px!important;
  flex:0 0 40px!important;
  border-radius:50%!important;
  object-fit:cover!important;
  border:2px solid rgba(255,255,255,.34)!important;
}
.dashboard-v34 .v34-bhv-copy{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-width:0!important;
  padding-right:0!important;
  line-height:1.25!important;
}
.dashboard-v34 .v34-bhv-copy strong{
  display:block!important;
  color:#fff!important;
  font-size:10.5px!important;
  font-weight:700!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.dashboard-v34 .v34-bhv-copy small{
  display:block!important;
  margin-top:2px!important;
  color:rgba(255,255,255,.74)!important;
  font-size:8.5px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.dashboard-v34 .v53-bhv-phone{
  display:block!important;
  margin-top:3px!important;
  color:#ffd195!important;
  font-size:8.5px!important;
  font-weight:700!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.dashboard-v34 .v53-bhv-call{
  right:8px!important;
  bottom:8px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:28px!important;
  height:19px!important;
  padding:0 6px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  background:rgba(255,255,255,.10)!important;
  color:#fff!important;
  border-radius:999px!important;
  font-size:7.5px!important;
  font-weight:800!important;
}
.dashboard-v34 .v34-bhv-status{
  position:absolute!important;
  right:8px!important;
  top:8px!important;
  width:7px!important;
  height:7px!important;
  border-radius:50%!important;
  background:#58d27a!important;
  box-shadow:0 0 0 3px rgba(88,210,122,.16),0 0 10px rgba(88,210,122,.24)!important;
}
@media(max-width:900px){
  .dashboard-v34 .v34-bhv-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .dashboard-v34 .v53-bhv-phone,.dashboard-v34 .v53-bhv-call{display:none!important}
  .dashboard-v34 .v34-bhv-person,.dashboard-v34 a.v34-bhv-person{padding-right:26px!important}
}
@media(max-width:520px){
  .dashboard-v34 .v34-bhv-list{grid-template-columns:1fr!important}
}

/* === v131: strak en uniform menu in Beheer ===
   Het beheerportaal gebruikt voortaan dezelfde Segoe UI-typografie als de rest
   van het intranet en een gebalanceerd raster. Dit verandert alleen de
   beheer-navigatie; inhoud/panels en autorisaties blijven ongemoeid. */
body.vahb-photo-page .admin-wrap .tabs{
  display:grid!important;
  grid-template-columns:repeat(9,minmax(0,1fr))!important;
  align-items:stretch!important;
  gap:5px!important;
  margin:20px 0 24px!important;
  padding:7px!important;
  border:1px solid #dfe4ec!important;
  border-radius:11px!important;
  background:rgba(255,255,255,.975)!important;
  box-shadow:0 8px 24px rgba(31,45,87,.075)!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
}
body.vahb-photo-page .admin-wrap .tabs .tab,
body.vahb-photo-page .admin-wrap .tabs .v130mt-btn{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  min-height:40px!important;
  height:40px!important;
  margin:0!important;
  padding:0 9px!important;
  border:1px solid transparent!important;
  border-radius:7px!important;
  background:transparent!important;
  color:#3b4354!important;
  font-family:var(--vahb-font-ui,"Segoe UI Variable","Segoe UI",Roboto,Arial,sans-serif)!important;
  font-size:12.25px!important;
  line-height:1.1!important;
  font-weight:650!important;
  letter-spacing:-.008em!important;
  text-align:center!important;
  text-shadow:none!important;
  white-space:nowrap!important;
  cursor:pointer!important;
  box-shadow:none!important;
  transition:background .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease!important;
}
body.vahb-photo-page .admin-wrap .tabs .tab:hover,
body.vahb-photo-page .admin-wrap .tabs .v130mt-btn:hover{
  background:#f6f8fc!important;
  border-color:#e1e6ef!important;
  color:#243588!important;
}
body.vahb-photo-page .admin-wrap .tabs .tab.active,
body.vahb-photo-page .admin-wrap .tabs .tab[aria-selected="true"]{
  background:#f1f4fb!important;
  border-color:#d9e0ef!important;
  color:#243588!important;
  font-weight:700!important;
  box-shadow:0 2px 6px rgba(36,53,136,.055)!important;
}
body.vahb-photo-page .admin-wrap .tabs .tab.active::after,
body.vahb-photo-page .admin-wrap .tabs .tab[aria-selected="true"]::after{
  content:""!important;
  position:absolute!important;
  left:10px!important;
  right:10px!important;
  bottom:-1px!important;
  height:3px!important;
  border-radius:3px 3px 0 0!important;
  background:var(--vahb-orange,#e68000)!important;
}
/* De statusbalk en het compacte Actiecentrum sluiten exact op dezelfde lijn aan. */
body.vahb-photo-page .admin-wrap .admin-auth-banner{
  border-radius:8px!important;
  font-family:var(--vahb-font-ui,"Segoe UI Variable","Segoe UI",Roboto,Arial,sans-serif)!important;
  font-size:13px!important;
}
body.vahb-photo-page .admin-wrap .v103-action-center.v123-action-compact.v123-collapsed{
  border-radius:10px!important;
}
body.vahb-photo-page .admin-wrap .v123-action-toggle{
  font-family:var(--vahb-font-ui,"Segoe UI Variable","Segoe UI",Roboto,Arial,sans-serif)!important;
  font-weight:650!important;
}
@media (max-width:1100px) and (min-width:821px){
  body.vahb-photo-page .admin-wrap .tabs{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
  }
}
@media(max-width:820px){
  body.vahb-photo-page .admin-wrap .tabs{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:4px!important;
    overflow-x:auto!important;
    padding:6px!important;
    scrollbar-width:none!important;
  }
  body.vahb-photo-page .admin-wrap .tabs::-webkit-scrollbar{display:none!important}
  body.vahb-photo-page .admin-wrap .tabs .tab,
  body.vahb-photo-page .admin-wrap .tabs .v130mt-btn{
    flex:0 0 auto!important;
    min-width:max-content!important;
    padding:0 12px!important;
  }
}


/* === v140: VAHB homepage volgens het goedgekeurde dashboardbeeld === */
body.v150-home{background:#f4f7fb!important;color:#0b3189}
body.v150-home .site-header{position:relative!important;background:#fff!important;box-shadow:0 2px 0 #e3e9f2!important}
body.v150-home .site-header .shell-wide{max-width:none!important;width:100%!important;padding-left:27px!important;padding-right:27px!important}
body.v150-home .header-top{height:66px!important;display:flex!important;align-items:center!important;gap:28px!important}
body.v150-home .official-logo{width:264px!important;height:56px!important;flex:0 0 264px!important;display:flex!important;align-items:center!important}
body.v150-home .official-logo img{width:207px!important;max-width:207px!important;height:auto!important}
body.v150-home .header-search{height:41px!important;flex:0 1 440px!important;border:1px solid #d7dfed!important;border-radius:8px!important;background:#fff!important}
body.v150-home .header-search input{font-size:13px!important}
body.v150-home .header-search svg{width:20px!important;height:20px!important}
body.v150-home .header-meta{display:flex!important;gap:30px!important;align-items:center!important;color:#4c5772!important;font-size:12px!important;white-space:nowrap!important}
body.v150-home .header-meta .phone{display:flex!important;align-items:center!important;gap:8px!important}
body.v150-home .header-meta .phone svg{height:12px!important;width:12px!important}
body.v150-home .language-options{display:flex;align-items:center;gap:4px}
body.v150-home .language-options button{border:1px solid transparent;background:#fff;padding:5px 7px;border-radius:5px;color:#3c4964;font-size:11px;white-space:nowrap;cursor:pointer}
body.v150-home .language-options button.active{border-color:#d9e0ec;box-shadow:0 1px 3px #dce3ed}
body.v150-home .language-options button span{font-size:18px;vertical-align:-3px;margin-right:3px}
body.v150-home .header-account-area{margin-left:auto!important;gap:8px!important}
body.v150-home .account-chip{height:43px!important;border-radius:10px!important;background:#f7f8fa!important;border:0!important;min-width:166px!important}
body.v150-home .account-copy strong{color:#1d348a!important;font-size:12px!important}
body.v150-home .account-copy small{font-size:9px!important}
body.v150-home .nav-row{height:53px!important;background:#fff!important;border-top:1px solid #f1f3f6!important}
body.v150-home .nav-inner{height:53px!important}
body.v150-home .main-nav,body.v150-home .main-nav.main-nav-v59,body.v150-home .main-nav.main-nav-v60{height:53px!important;gap:5px!important;align-items:stretch!important}
body.v150-home .main-nav a,body.v150-home .main-nav.main-nav-v59 a,body.v150-home .main-nav.main-nav-v60 a{height:53px!important;padding:0 14px!important;color:#354057!important;font-size:14px!important;font-weight:700!important;border:0!important;border-radius:0!important;background:transparent!important}
body.v150-home .main-nav a.active,body.v150-home .main-nav.main-nav-v59 a.active,body.v150-home .main-nav.main-nav-v60 a.active{color:#213c91!important;background:#fafbfe!important}
body.v150-home .main-nav a.active::after,body.v150-home .main-nav.main-nav-v59 a.active::after,body.v150-home .main-nav.main-nav-v60 a.active::after{height:3px!important;bottom:0!important;background:#ef8b00!important}
body.v150-home .compact-home-main{padding:21px 26px 28px!important;background:#f4f7fb!important}
body.v150-home .compact-home-main::after{display:none!important}
body.v150-home .compact-welcome.v34-hero{position:relative!important;width:100%!important;max-width:none!important;height:270px!important;min-height:270px!important;margin:0!important;overflow:hidden!important;border:0!important;border-radius:17px!important;background:#dce9f8 url('/static/vahb-hero-camping.png') center center/cover no-repeat!important;box-shadow:0 16px 32px rgba(26,45,93,.12)!important}
body.v150-home .compact-welcome.v34-hero::before{content:""!important;position:absolute!important;inset:0!important;background:linear-gradient(90deg,#172e68 0%,rgba(23,48,111,.96) 28%,rgba(36,72,145,.58) 52%,rgba(225,238,252,.4) 84%,rgba(225,238,252,.18) 100%)!important;z-index:0!important}
body.v150-home .compact-welcome.v34-hero::after{display:none!important}
body.v150-home .v34-hero-inner{position:relative!important;z-index:1!important;height:270px!important;min-height:270px!important;max-width:none!important;width:100%!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;padding:0 48px!important}
body.v150-home .v34-hero-copy{max-width:720px!important}
body.v150-home .v34-hero-copy .eyebrow{color:#ff9b09!important;font-weight:900!important;font-size:12px!important;letter-spacing:.13em!important;margin:0 0 12px!important;text-transform:uppercase!important}
body.v150-home .v34-hero-copy h1{color:white!important;font-size:clamp(34px,2.7vw,44px)!important;font-weight:800!important;line-height:1.08!important;letter-spacing:-.045em!important;margin:0 0 10px!important;text-shadow:none!important}
body.v150-home .v34-hero-copy p{color:#fff!important;font-size:13px!important;font-weight:700!important;line-height:1.4!important;margin:0 0 23px!important}
body.v150-home .v140-hero-cta{display:inline-flex!important;align-items:center!important;gap:10px!important;height:42px!important;padding:0 18px!important;border:0!important;border-radius:9px!important;background:#f19100!important;color:#fff!important;font-size:12px!important;font-weight:800!important;box-shadow:none!important;text-decoration:none!important}
body.v150-home .v34-dashboard-shell{max-width:none!important;width:100%!important;margin:18px 0 0!important;padding:0!important;position:relative!important;z-index:1!important}
body.v150-home .v34-metric-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;margin:0 0 18px!important}
body.v150-home .v34-metric-card{display:grid!important;grid-template-columns:54px minmax(0,1fr) 18px!important;align-items:center!important;gap:18px!important;height:126px!important;min-height:126px!important;padding:17px 20px!important;border:1px solid #d4e3fa!important;border-radius:16px!important;background:#f8fbff!important;box-shadow:0 7px 20px rgba(25,48,86,.035)!important;color:#0d3287!important}
body.v150-home .v34-metric-card::before{display:none!important}
body.v150-home .v34-metric-card[href="/verlof"]{border-color:#d4ebdc!important;background:#f6fcf8!important}
body.v150-home .v140-action-card{border-color:#f3d8b4!important;background:#fffaf4!important}
body.v150-home .v34-metric-icon{width:54px!important;height:54px!important;border-radius:50%!important;background:#e6efff!important;color:#1865bd!important}
body.v150-home .v34-metric-card[href="/verlof"] .v34-metric-icon{background:#e0f5e8!important;color:#159450!important}
body.v150-home .v140-action-icon{background:#fff0d9!important;color:#ee7100!important}
body.v150-home .v34-metric-icon svg{width:24px!important;height:24px!important}
body.v150-home .v34-metric-copy>small{font-size:11px!important;font-weight:900!important;color:#113786!important;letter-spacing:.02em!important;margin-bottom:6px!important}
body.v150-home .v140-action-card .v34-metric-copy>small{color:#e36e00!important}
body.v150-home .v34-metric-copy>strong,body.v150-home .v34-metric-dynamic>strong{font-size:28px!important;font-weight:800!important;line-height:1.08!important;color:#0b3189!important}
body.v150-home .v34-metric-copy>span:not(.v34-metric-dynamic),body.v150-home .v34-metric-dynamic>span{font-size:12px!important;font-weight:500!important;color:#1c397e!important;margin-top:3px!important}
body.v150-home .v34-metric-dynamic small{font-size:10px!important;margin-top:4px!important;color:#607198!important}
body.v150-home .v34-metric-arrow{font-size:20px!important;color:#164897!important;font-weight:400!important}
body.v150-home .v34-focus-grid{display:grid!important;grid-template-columns:minmax(0,1.52fr) minmax(0,1fr)!important;gap:18px!important;margin:0 0 18px!important;align-items:stretch!important}
body.v150-home .v34-panel,body.v150-home .v34-quick-section{background:#fff!important;border:1px solid #dfe7f2!important;border-radius:17px!important;box-shadow:0 6px 18px rgba(29,48,80,.045)!important;color:#0a3188!important}
body.v150-home .v34-panel{padding:20px 21px!important}
body.v150-home .v34-agenda-panel,body.v150-home .v34-bhv-panel{min-height:353px!important}
body.v150-home .v34-panel-head{display:flex!important;align-items:center!important;min-height:38px!important;margin:0 0 12px!important;padding:0 0 14px!important;border-bottom:1px solid #e2e8f1!important}
body.v150-home .v140-heading{display:flex!important;align-items:center!important;gap:13px!important}
body.v150-home .v140-heading-icon{color:#1a58b1;font-size:21px;line-height:1}
body.v150-home .v34-panel-head h2{font-size:19px!important;font-weight:800!important;line-height:1.2!important;letter-spacing:-.03em!important;color:#0b3187!important;margin:0!important}
body.v150-home .v34-panel-head>a{font-size:11px!important;font-weight:700!important;color:#134594!important}
body.v150-home .v34-timeline{display:grid!important;align-content:start!important}
body.v150-home .v34-timeline-row{min-height:58px!important;border-top:1px solid #e7edf4!important}
body.v150-home .v34-empty-state{min-height:60px!important;padding:14px 3px!important;display:flex!important;align-items:center!important;gap:12px!important;color:#22334e!important}
body.v150-home .v34-empty-state>span{height:35px!important;width:35px!important;flex:0 0 35px!important;display:grid!important;place-items:center!important;background:#edf3ee!important;color:#138a4c!important;border-radius:50%!important;font-size:20px!important}
body.v150-home .v34-empty-state strong{font-size:13px!important;color:#22334e!important}
body.v150-home .v34-empty-state small{font-size:11px!important;color:#69788d!important;margin-top:5px!important}
body.v150-home .v34-panel.v34-bhv-panel{background:#fff!important;color:#0b3187!important;overflow:hidden!important}
body.v150-home .v34-bhv-head .bhv-live-label{background:#eaf8ef!important;border:1px solid #d0ebda!important;border-radius:20px!important;color:#18864b!important;padding:6px 10px!important;font-size:10px!important;font-weight:700!important}
body.v150-home .v34-bhv-head .bhv-live-label i{background:#1aa664!important}
body.v150-home .v34-bhv-list{display:grid!important;grid-template-columns:1fr!important;gap:0!important}
body.v150-home .v34-bhv-person,body.v150-home a.v34-bhv-person{display:grid!important;grid-template-columns:8px 38px minmax(0,1fr) auto!important;align-items:center!important;gap:11px!important;min-height:57px!important;padding:7px 2px!important;border:0!important;border-bottom:1px solid #e8edf4!important;border-radius:0!important;background:transparent!important;color:#153780!important;box-shadow:none!important}
body.v150-home .v34-bhv-status{position:static!important;grid-column:1!important;width:8px!important;height:8px!important;background:#20a862!important;box-shadow:0 0 0 3px #e7f5ec!important}
body.v150-home .v34-bhv-person>img,body.v150-home .v34-bhv-person>.bhv-home-initials{grid-column:2!important;width:38px!important;height:38px!important;flex:0 0 38px!important;border-radius:50%!important}
body.v150-home .v34-bhv-copy{grid-column:3!important;min-width:0!important;padding:0!important}
body.v150-home .v34-bhv-copy strong{color:#0c3184!important;font-size:12px!important;font-weight:700!important}
body.v150-home .v34-bhv-copy small{color:#75829a!important;font-size:10px!important;margin-top:3px!important}
body.v150-home .v53-bhv-phone,body.v150-home .v53-bhv-call{display:none!important}
body.v150-home .v140-bhv-availability{grid-column:4!important;display:inline-flex!important;align-items:center!important;padding:6px 9px!important;border-radius:20px!important;background:#eaf8ef!important;color:#078646!important;font-size:10px!important;font-weight:700!important}
body.v150-home .v140-bhv-summary{display:flex!important;align-items:center!important;gap:7px!important;margin-top:10px!important;padding:10px 12px!important;border-radius:9px!important;background:#edf4ff!important;color:#173e93!important;font-size:10px!important}
body.v150-home .v140-bhv-summary>span{color:#20a862!important}
body.v150-home .v34-content-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important;margin:0 0 18px!important}
body.v150-home .v34-content-grid .v34-panel{min-height:280px!important}
body.v150-home .v34-quick-section{padding:20px!important;margin:0!important}
body.v150-home .v34-topic-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:10px!important}
body.v150-home .v34-topic-tile{border-radius:10px!important;background:#f9fbff!important;border-color:#e0e8f3!important}
body.v150-home .site-footer{margin:0!important;background:#fff!important;border-top:1px solid #e2e8f1!important}
@media(max-width:1350px){body.v150-home .header-top{gap:15px!important}body.v150-home .official-logo{flex-basis:220px!important;width:220px!important}body.v150-home .header-meta{gap:10px!important}body.v150-home .language-options button{font-size:0!important}body.v150-home .language-options button span{font-size:20px!important}}
@media(max-width:1050px){body.v150-home .header-meta .phone{display:none!important}body.v150-home .main-nav,body.v150-home .main-nav.main-nav-v59,body.v150-home .main-nav.main-nav-v60{overflow-x:auto!important;white-space:nowrap!important}body.v150-home .v34-focus-grid{grid-template-columns:1.3fr 1fr!important}body.v150-home .v34-topic-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:800px){body.v150-home .header-top{height:auto!important;min-height:68px!important;flex-wrap:wrap!important;padding-top:10px!important;padding-bottom:10px!important}body.v150-home .official-logo{flex:1 0 auto!important}body.v150-home .header-search{order:5!important;flex:1 0 100%!important}body.v150-home .header-meta{margin-left:auto!important}body.v150-home .compact-home-main{padding:15px!important}body.v150-home .v34-focus-grid,body.v150-home .v34-content-grid{grid-template-columns:1fr!important}body.v150-home .v34-metric-grid{grid-template-columns:1fr!important}body.v150-home .compact-welcome.v34-hero{height:265px!important;min-height:265px!important}body.v150-home .v34-hero-inner{height:265px!important;min-height:265px!important;padding:0 28px!important}body.v150-home .v34-hero-copy h1{font-size:34px!important}body.v150-home .v34-hero-copy p{max-width:370px!important}body.v150-home .v34-dashboard-shell{margin-top:12px!important}}
@media(max-width:520px){body.v150-home .site-header .shell-wide{padding-left:14px!important;padding-right:14px!important}body.v150-home .official-logo img{width:165px!important}body.v150-home .official-logo{flex-basis:165px!important;width:165px!important}body.v150-home .language-options{display:none!important}body.v150-home .header-account-area{margin-left:auto!important}body.v150-home .account-chip{min-width:0!important}body.v150-home .compact-welcome.v34-hero{height:270px!important;min-height:270px!important}body.v150-home .v34-hero-inner{height:270px!important;min-height:270px!important;padding:0 22px!important}body.v150-home .v34-hero-copy h1{font-size:30px!important}body.v150-home .v34-hero-copy p{font-size:12px!important}body.v150-home .v34-metric-card{height:105px!important;min-height:105px!important}body.v150-home .v34-bhv-person,body.v150-home a.v34-bhv-person{grid-template-columns:8px 38px minmax(0,1fr)!important}body.v150-home .v140-bhv-availability{display:none!important}body.v150-home .v34-topic-grid{grid-template-columns:1fr 1fr!important}}
/* Referentiebreedte: de dashboardkolommen stoppen na 1480px. */
body.v150-home .compact-welcome.v34-hero,body.v150-home .v34-dashboard-shell{max-width:1480px!important}

/* === v141: indeling van het nieuwe dashboardbeeld === */
body.v150-home .site-header{box-shadow:none!important}
body.v150-home .site-header .shell-wide{padding-left:24px!important;padding-right:24px!important}
body.v150-home .header-top{height:72px!important;gap:22px!important}
body.v150-home .official-logo{flex:0 0 480px!important;width:480px!important}
body.v150-home .official-logo img{width:175px!important;max-width:175px!important}
body.v150-home .header-search{flex:0 1 580px!important;height:46px!important;border-radius:28px!important;background:#f6f8fd!important}
body.v150-home .header-search input,body.v150-home .header-search button{background:transparent!important}
body.v150-home .header-meta .phone{display:none!important}
body.v150-home .language-options button:not(.active){display:none!important}
body.v150-home .language-options button.active{font-size:13px!important;padding:8px 14px!important;border:0!important;border-radius:12px!important;background:#f4f6fc!important;box-shadow:none!important;color:#12295f!important}
body.v150-home .language-options button.active span{font-size:23px!important}
body.v150-home .nav-row{height:53px!important;border:0!important}
body.v150-home .main-nav,body.v150-home .main-nav.main-nav-v59,body.v150-home .main-nav.main-nav-v60{gap:6px!important}
body.v150-home .main-nav a,body.v150-home .main-nav.main-nav-v59 a,body.v150-home .main-nav.main-nav-v60 a{padding:0 14px!important;color:#112964!important;font-size:14px!important}
body.v150-home .main-nav a:not(.nav-home)::before{content:"▣";margin-right:9px;color:#13358b;font-size:17px;font-weight:400}
body.v150-home .main-nav a:nth-child(3)::before{content:"▤"}body.v150-home .main-nav a:nth-child(4)::before{content:"♧"}body.v150-home .main-nav a:nth-child(5)::before{content:"☑"}body.v150-home .main-nav a:nth-child(6)::before{content:"▤"}body.v150-home .main-nav a:nth-child(7)::before{content:"♟"}body.v150-home .main-nav a:nth-child(8)::before{content:"❧"}
body.v150-home .main-nav a.active,body.v150-home .main-nav.main-nav-v59 a.active,body.v150-home .main-nav.main-nav-v60 a.active{background:#e8f0ff!important;border-radius:12px!important;height:40px!important;margin-top:6px!important}
body.v150-home .main-nav a.active::after,body.v150-home .main-nav.main-nav-v59 a.active::after,body.v150-home .main-nav.main-nav-v60 a.active::after{display:none!important}
body.v150-home .compact-home-main{padding:0 20px 25px!important;background:#f7faff!important}
body.v150-home .compact-welcome.v34-hero{max-width:none!important;height:250px!important;min-height:250px!important;margin:0!important;border-radius:17px!important;background-position:center 44%!important}
body.v150-home .compact-welcome.v34-hero::before{background:linear-gradient(90deg,rgba(4,39,120,.98) 0%,rgba(7,48,137,.95) 24%,rgba(12,63,155,.58) 51%,rgba(52,107,186,.19) 78%,rgba(207,230,251,.28) 100%)!important}
body.v150-home .v141-hero-layout{position:relative!important;z-index:1!important;display:flex!important;justify-content:space-between!important;align-items:center!important;gap:24px!important;width:100%!important;height:250px!important;padding:16px 17px 16px 49px!important}
body.v150-home .v34-hero-copy{flex:1 1 auto!important;max-width:760px!important}
body.v150-home .v34-hero-copy h1{font-size:clamp(34px,3.2vw,48px)!important;letter-spacing:-.04em!important;margin:0 0 10px!important}
body.v150-home .v34-hero-copy p{font-size:14px!important;margin:0 0 19px!important}
body.v150-home .v140-hero-cta{height:44px!important;padding:0 21px!important;font-size:13px!important;background:#ff9200!important}
body.v150-home .v141-hero-shortcuts{flex:0 0 462px!important;height:219px!important;padding:18px!important;border-radius:13px!important;background:rgba(255,255,255,.97)!important;box-shadow:0 12px 26px rgba(16,52,116,.18)!important;color:#081f61!important}
body.v150-home .v141-hero-shortcuts h2{font-size:17px!important;margin:0 0 12px!important;color:#091f63!important}
body.v150-home .v141-shortcut-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
body.v150-home .v141-shortcut-grid a{height:72px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;text-decoration:none!important;border-radius:10px!important;background:#eff5fe!important;font-size:12px!important;font-weight:700!important;color:#102866!important}
body.v150-home .v141-shortcut-grid a:nth-child(2){background:#eaf9f5!important}body.v150-home .v141-shortcut-grid a:nth-child(3){background:#f0effd!important}body.v150-home .v141-shortcut-grid a:nth-child(4){background:#fff7eb!important}body.v150-home .v141-shortcut-grid a:nth-child(5){background:#fff0f0!important}body.v150-home .v141-shortcut-grid a:nth-child(6){background:#f0f2fc!important}
body.v150-home .v141-shortcut-icon{font-size:27px!important;line-height:1!important}.v141-shortcut-icon.blue{color:#0963dc}.v141-shortcut-icon.green{color:#009b5b}.v141-shortcut-icon.purple{color:#5635c7}.v141-shortcut-icon.orange{color:#f17e00}.v141-shortcut-icon.red{color:#d5080d}.v141-shortcut-icon.indigo{color:#0e368b}
body.v150-home .v34-dashboard-shell{max-width:none!important;margin:17px 0 0!important}
body.v150-home .v34-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;margin-bottom:18px!important}
body.v150-home .v34-metric-card{height:102px!important;min-height:102px!important;padding:12px 20px!important;grid-template-columns:65px minmax(0,1fr) 42px!important;gap:19px!important;border-radius:14px!important;background:linear-gradient(135deg,#fff,#f7fbff)!important}
body.v150-home .v34-metric-card[href="/verlof"]{background:linear-gradient(135deg,#fff,#f0faf8)!important}
body.v150-home .v140-action-card{background:linear-gradient(135deg,#fff,#fff9f0)!important}
body.v150-home .v141-news-metric{border-color:#e0d4fb!important;background:linear-gradient(135deg,#fff,#f9f7ff)!important}
body.v150-home .v34-metric-icon{width:65px!important;height:65px!important;font-size:32px!important}
body.v150-home .v34-metric-icon svg{width:32px!important;height:32px!important;stroke-width:2.3!important}
body.v150-home .v141-news-metric .v34-metric-icon{color:#5a35d4!important;background:#eee6ff!important}
body.v150-home .v34-metric-copy>small{font-size:12px!important;margin:0 0 3px!important}
body.v150-home .v34-metric-copy>strong,body.v150-home .v34-metric-dynamic>strong{font-size:27px!important}
body.v150-home .v34-metric-copy>span:not(.v34-metric-dynamic),body.v150-home .v34-metric-dynamic>span{font-size:13px!important}
body.v150-home .v34-metric-arrow{width:42px!important;height:42px!important;border-radius:50%!important;background:#e7efff!important;display:grid!important;place-items:center!important;color:#1250ca!important;font-size:23px!important}
body.v150-home .v141-leave-card .v34-metric-arrow{background:#dcf4eb!important;color:#009659!important}body.v150-home .v140-action-card .v34-metric-arrow{background:#ffecd3!important;color:#f47b00!important}body.v150-home .v141-news-metric .v34-metric-arrow{background:#efe8ff!important;color:#5130c9!important}
body.v150-home .v141-workspace{display:grid!important;grid-template-columns:minmax(0,1.26fr) minmax(0,1.13fr) minmax(0,1fr)!important;gap:17px!important;align-items:start!important}
body.v150-home .v141-column{display:grid!important;gap:17px!important;min-width:0!important}
body.v150-home .v34-panel{border-radius:14px!important;padding:17px 20px!important;min-width:0!important;box-shadow:0 8px 24px rgba(24,49,84,.07)!important}
body.v150-home .v34-panel-head{min-height:41px!important;margin-bottom:8px!important;padding:0 0 13px!important}
body.v150-home .v34-panel-head h2{font-size:18px!important;white-space:nowrap!important}
body.v150-home .v140-heading{gap:14px!important;min-width:0!important}
body.v150-home .v140-heading-icon{font-size:24px!important;color:#1251c5!important}
body.v150-home .v34-panel-head>a{font-size:12px!important;white-space:nowrap!important}
body.v150-home .v34-agenda-panel{min-height:425px!important;display:flex!important;flex-direction:column!important}
body.v150-home .v34-timeline{flex:1!important;position:relative!important;padding-left:36px!important}
body.v150-home .v34-timeline:has(.v141-agenda-row)::before{content:"";position:absolute;left:11px;top:26px;bottom:20px;width:2px;background:#c4d8fa}
body.v150-home .v141-agenda-row{position:relative;display:grid;grid-template-columns:115px minmax(0,1fr) auto;align-items:center;gap:13px;min-height:78px;border-bottom:1px solid #e8edf4;color:#233454;text-decoration:none}
body.v150-home .v141-agenda-dot{position:absolute;left:-32px;width:17px;height:17px;border:4px solid #4a82ef;border-radius:50%;background:white;z-index:1}
body.v150-home .v141-agenda-row:last-child .v141-agenda-dot{border-color:#a6a9ae;background:#a6a9ae}
body.v150-home .v141-agenda-time{color:#697281;font-size:14px;line-height:1.45;white-space:nowrap}
body.v150-home .v141-agenda-info strong{display:block;font-size:14px;color:#102461!important;line-height:1.3}
body.v150-home .v141-agenda-info small{display:block;color:#5d677c;font-size:13px;margin-top:4px}
body.v150-home .v141-agenda-row em{font-style:normal;border-radius:20px;background:#6c9af3;color:#fff;padding:6px 10px;font-size:11px}
body.v150-home .v141-panel-footer{display:block!important;background:#eaf2ff!important;border-radius:10px!important;padding:12px!important;text-align:center!important;color:#0946bd!important;text-decoration:none!important;font-size:13px!important;font-weight:700!important;margin-top:10px!important}
body.v150-home .v141-task-panel{min-height:208px!important}
body.v150-home .v141-task-list{padding:1px 8px!important}
body.v150-home .v141-task-row{display:grid!important;grid-template-columns:25px minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important;min-height:32px!important;color:#192d60!important;font-size:13px!important}
body.v150-home .v141-task-check{width:23px;height:23px;border:2px solid #d0d8e6;border-radius:50%;display:grid;place-items:center;color:#007b50;font-weight:bold}
body.v150-home .v141-task-row.done{color:#777;text-decoration:line-through}
body.v150-home .v141-task-row.done .v141-task-check{background:#ccefe1;border-color:#ccefe1}
body.v150-home .v141-task-row small{font-size:12px;color:#6f7789}
body.v150-home .v141-task-empty{padding:21px 8px;color:#69788e;font-size:13px}
body.v150-home .v34-news-panel{min-height:214px!important}
body.v150-home .v34-news-feature{display:grid!important;grid-template-columns:95px minmax(0,1fr)!important;gap:12px!important;padding:7px 0!important;background:none!important;border:0!important;margin:0!important}
body.v150-home .v34-news-feature strong{font-size:13px!important;margin-top:0!important}
body.v150-home .v34-news-feature p{font-size:12px!important;margin:3px 0!important}
body.v150-home .v34-news-list .v34-news-row{padding:7px 0!important}
body.v150-home .v34-news-row strong{font-size:13px!important}
body.v150-home .vahb-v81-home-grid{display:grid!important;grid-template-columns:1fr!important;gap:7px!important}
body.v150-home .vahb-v81-news-card{display:grid!important;grid-template-columns:95px minmax(0,1fr)!important;gap:12px!important;min-height:62px!important;padding:0!important;border:0!important;box-shadow:none!important;background:transparent!important}
body.v150-home .vahb-v81-news-image{width:95px!important;height:62px!important;border-radius:8px!important;background-size:cover!important}
body.v150-home .vahb-v81-news-copy{padding:0!important;min-width:0!important}
body.v150-home .vahb-v81-news-copy h3{font-size:13px!important;line-height:1.2!important;margin:0 0 3px!important}
body.v150-home .vahb-v81-news-copy p{font-size:11px!important;line-height:1.25!important;margin:0!important;max-height:30px!important;overflow:hidden!important}
body.v150-home .vahb-v81-news-copy small,body.v150-home .vahb-v81-news-copy button{display:none!important}
body.v150-home .v34-panel.v34-bhv-panel{min-height:282px!important}
body.v150-home .v34-bhv-panel .v34-panel-head h2{font-size:16px!important}
body.v150-home .v34-bhv-head .bhv-live-label{font-size:10px!important;white-space:nowrap!important}
body.v150-home .v34-bhv-person,body.v150-home a.v34-bhv-person{min-height:44px!important;padding:3px 2px!important}
body.v150-home .v34-bhv-person>img,body.v150-home .v34-bhv-person>.bhv-home-initials{width:36px!important;height:36px!important}
body.v150-home .v34-bhv-copy strong{font-size:12px!important}
body.v150-home .v34-doc-panel{min-height:149px!important}
body.v150-home .v34-doc-panel .v34-panel-head{margin-bottom:3px!important}
body.v150-home .v34-doc-panel .v34-panel-head h2{font-size:16px!important}
body.v150-home .v141-document-row{display:grid;grid-template-columns:31px minmax(0,1fr);gap:9px;align-items:center;min-height:34px;color:#192b5e;text-decoration:none;padding:2px 18px}
body.v150-home .v141-document-row strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500}
body.v150-home .v141-document-row small{display:block;color:#858b98;font-size:11px}
body.v150-home .v141-file{border-radius:3px;background:#1557bd;color:#fff;font-size:8px;font-weight:bold;padding:6px 2px;text-align:center}
body.v150-home .v141-file.pdf{background:#d52220}body.v150-home .v141-file.xls{background:#0e9252}
body.v150-home .v141-optional-links:empty,body.v150-home .v141-optional-links:not(:has(a:not(.hidden),.custom-quick-links:not(.hidden))){display:none!important}
body.v150-home .v141-optional-links{display:flex;gap:14px;padding:18px 0}
body.v150-home .v141-optional-links>a:not(.hidden){background:#fff;border:1px solid #dfe7f2;border-radius:10px;padding:12px;color:#153e9b;text-decoration:none}
@media(max-width:1450px){body.v150-home .official-logo{flex-basis:320px!important;width:320px!important}body.v150-home .v141-hero-shortcuts{flex-basis:410px!important}body.v150-home .v141-workspace{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)!important}body.v150-home .v141-workspace>.v141-column:last-child{grid-column:1/-1!important;grid-template-columns:1fr 1fr!important}}
@media(max-width:1080px){body.v150-home .official-logo{flex-basis:190px!important;width:190px!important}body.v150-home .v141-hero-shortcuts{flex-basis:345px!important}body.v150-home .v141-shortcut-grid a{font-size:11px!important}body.v150-home .v34-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}body.v150-home .v141-workspace{grid-template-columns:1fr 1fr!important}}
@media(max-width:800px){body.v150-home .header-top{height:auto!important}body.v150-home .official-logo{flex-basis:auto!important}body.v150-home .compact-home-main{padding:12px!important}body.v150-home .compact-welcome.v34-hero{height:auto!important;min-height:0!important}body.v150-home .v141-hero-layout{height:auto!important;min-height:250px!important;flex-direction:column!important;align-items:stretch!important;padding:28px!important}body.v150-home .v141-hero-shortcuts{flex-basis:auto!important;width:100%!important;height:auto!important}body.v150-home .v141-workspace{grid-template-columns:1fr!important}body.v150-home .v141-workspace>.v141-column:last-child{grid-column:auto!important;grid-template-columns:1fr!important}}
@media(max-width:540px){body.v150-home .v141-hero-layout{padding:23px 18px!important}body.v150-home .v34-hero-copy h1{font-size:31px!important}body.v150-home .v34-metric-grid{grid-template-columns:1fr!important;gap:10px!important}body.v150-home .v34-metric-card{height:95px!important;min-height:95px!important}body.v150-home .v141-hero-shortcuts{padding:14px!important}body.v150-home .v141-shortcut-grid{gap:6px!important}body.v150-home .v141-shortcut-grid a{height:68px!important;font-size:10px!important}body.v150-home .v141-agenda-row{grid-template-columns:92px minmax(0,1fr)!important}body.v150-home .v34-panel-head h2{font-size:15px!important}body.v150-home .v34-panel-head>a{font-size:10px!important}body.v150-home .v34-panel{padding:15px!important}}
body.v150-home .language-options{position:relative;z-index:60}
body.v150-home .language-options.open{background:#fff;border-radius:12px;box-shadow:0 8px 20px #173c7526}
body.v150-home .language-options.open button:not(.active){display:inline-flex!important;align-items:center;font-size:12px!important}

/* === v142: gedeelde layout op Home en subpagina's === */
body{font-family:"Segoe UI Variable","Segoe UI",Arial,sans-serif!important;background:#f6f9ff!important;color:#10265e!important}
.site-header{position:relative!important;z-index:100!important;background:#fff!important;border-bottom:1px solid #e8eef8!important;box-shadow:none!important}
.site-header .header-top{width:100%!important;max-width:none!important;min-height:72px!important;height:72px!important;padding:0 24px!important;margin:0!important;display:grid!important;grid-template-columns:clamp(170px,25vw,480px) minmax(270px,580px) minmax(130px,1fr) auto!important;gap:22px!important;align-items:center!important}
.site-header .official-logo{height:58px!important;min-width:0!important}
.site-header .official-logo img{width:175px!important;max-width:175px!important;height:auto!important}
.site-header .header-search{height:46px!important;max-width:580px!important;width:100%!important;min-width:0!important;border:1px solid #dce5f5!important;border-radius:25px!important;background:#f6f8fd!important;box-shadow:none!important;overflow:visible!important}
.site-header .header-search input,.site-header .header-search button{background:transparent!important}
.site-header .header-meta{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:0!important;min-width:0!important}
.site-header .header-meta .phone,.site-header .header-meta .language{display:none!important}
.site-header .header-account-area{margin:0!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:14px!important;min-width:0!important}
.site-header .notification-wrap,.site-header .v104-notification-wrap{position:relative!important;flex:0 0 auto!important}
.site-header .notification-bell{width:42px!important;height:42px!important;border:1px solid #dce5f5!important;border-radius:10px!important}
.site-header .account-chip{height:46px!important;min-height:46px!important;min-width:180px!important;max-width:220px!important;padding:6px 12px!important;border:0!important;border-radius:13px!important;background:#f5f7fc!important;display:flex!important;align-items:center!important;gap:10px!important}
.site-header .account-copy{display:block!important;min-width:0!important}
.site-header .account-copy strong{font-size:13px!important;line-height:1.2!important}
.site-header .account-copy small{font-size:10px!important;line-height:1.2!important}
.v142-language-slot{display:flex!important;align-items:center!important;min-height:42px!important;min-width:125px!important;position:relative!important;white-space:nowrap!important}
.v142-language-slot>.v142-language-fallback{display:inline-flex;align-items:center;gap:6px;border-radius:12px;background:#f4f7fc;padding:10px 14px;color:#14285f;font-size:13px;font-weight:600}
body:has(.vahb-lang-btn) .v142-language-fallback{display:none!important}
.v142-language-slot>div,.v142-language-slot>nav{position:relative!important;inset:auto!important;transform:none!important;margin:0!important;display:flex!important;align-items:center!important;gap:5px!important;background:transparent!important;box-shadow:none!important}
.v142-language-slot .vahb-lang-btn{border-radius:10px!important;min-height:38px!important}
.nav-row{height:53px!important;background:#fff!important;border:0!important;box-shadow:none!important}
.nav-inner,.site-header .nav-inner{width:100%!important;max-width:none!important;height:53px!important;min-height:53px!important;margin:0!important;padding:0 24px!important;display:flex!important;align-items:center!important;overflow-x:auto!important}
.main-nav,.main-nav.main-nav-v59,.main-nav.main-nav-v60{height:53px!important;align-items:center!important;gap:6px!important}
.main-nav a,.main-nav.main-nav-v59 a,.main-nav.main-nav-v60 a{height:40px!important;margin:0!important;padding:0 14px!important;display:flex!important;align-items:center!important;border-radius:11px!important;border:0!important;box-shadow:none!important;color:#142b66!important;font-size:14px!important;font-weight:700!important;white-space:nowrap!important}
.main-nav a:hover,.main-nav a.active,.main-nav a[aria-current="page"]{background:#eaf1ff!important;color:#0e44ad!important;box-shadow:none!important;transform:none!important}
.main-nav a.active::after,.main-nav a[aria-current="page"]::after{display:none!important}
.main-nav a:not(.nav-home)::before{content:"▣";margin-right:9px;color:#1747a7;font-size:16px;font-weight:400}
.main-nav a:nth-child(3)::before{content:"▤"}.main-nav a:nth-child(4)::before{content:"♧"}.main-nav a:nth-child(5)::before{content:"☑"}.main-nav a:nth-child(6)::before{content:"▤"}.main-nav a:nth-child(7)::before{content:"♟"}.main-nav a:nth-child(8)::before{content:"❧"}
/* De taalkeuze gebruikt het bestaande menu uit de shell; de tijdelijke homepageknoppen zijn verwijderd. */
body.v150-home .header-top{grid-template-columns:clamp(170px,25vw,480px) minmax(270px,580px) minmax(130px,1fr) auto!important}
body.v150-home .header-meta{margin:0!important}
body.v150-home .header-account-area{margin:0!important}
body.v150-home .v34-metric-card{min-height:118px!important;height:118px!important;align-items:center!important;overflow:visible!important}
body.v150-home .v34-metric-copy,body.v150-home .v34-metric-dynamic{display:flex!important;flex-direction:column!important;justify-content:center!important;gap:2px!important;min-width:0!important;line-height:1.15!important}
body.v150-home .v34-metric-copy>small{margin:0!important;line-height:1.15!important}
body.v150-home .v34-metric-dynamic>strong{font-size:27px!important;line-height:1.05!important;white-space:nowrap!important}
body.v150-home .v34-metric-dynamic>span{margin:0!important;line-height:1.2!important}
body.v150-home .v34-metric-dynamic small{margin:2px 0 0!important;font-size:10px!important;white-space:normal!important;overflow:visible!important;line-height:1.2!important}
body.v150-home .v34-metric-arrow{align-self:center!important;justify-self:end!important}
body.v150-home .v141-leave-card .v34-metric-icon{font-size:29px!important}
/* Dezelfde blauwe fotobanner en witte kaarten volgen de gebruiker naar de subpagina's. */
body.vahb-photo-page{background:#f6f9ff!important;font-family:"Segoe UI Variable","Segoe UI",Arial,sans-serif!important}
body.vahb-photo-page .vahb-v65-page-shell{padding:0 20px!important;background:#f6f9ff!important}
body.vahb-photo-page .vahb-v65-context-band{padding:12px 0 0!important;background:none!important}
body.vahb-photo-page .vahb-v65-context{width:100%!important;max-width:1600px!important;min-height:42px!important;margin:0 auto 12px!important;padding:0 16px!important;border:1px solid #e2eaf7!important;border-radius:10px!important;background:#fff!important;box-shadow:0 3px 10px #153c7010!important}
body.vahb-photo-page .vahb-v65-hero{min-height:190px!important;max-width:1600px!important;margin:0 auto 17px!important;border:0!important;border-radius:16px!important;overflow:hidden!important;background:linear-gradient(90deg,rgba(5,39,119,.97),rgba(13,65,155,.75) 46%,rgba(112,161,217,.28) 100%),url('/static/vahb-hero-camping.png') center center/cover no-repeat!important;box-shadow:0 10px 25px #0e367625!important}
body.vahb-photo-page .vahb-v65-hero-inner{width:100%!important;max-width:none!important;min-height:190px!important;padding:28px 42px!important;gap:28px!important;grid-template-columns:minmax(0,1fr) minmax(250px,.7fr)!important}
body.vahb-photo-page .vahb-v65-eyebrow{color:#ffa526!important;font-size:11px!important}
body.vahb-photo-page .vahb-v65-title{color:#fff!important;font-size:clamp(30px,2.6vw,42px)!important;font-weight:800!important;text-shadow:none!important}
body.vahb-photo-page .vahb-v65-copy,body.vahb-photo-page .vahb-v65-copy p,body.vahb-photo-page .vahb-v65-copy a{color:#fff!important;text-shadow:none!important}
body.vahb-photo-page main,body.vahb-photo-page .content-shell,body.vahb-photo-page .page-shell{font-family:"Segoe UI Variable","Segoe UI",Arial,sans-serif!important}
body.vahb-photo-page > main.shell-wide,body.vahb-photo-page main .shell-wide,body.vahb-photo-page .content-shell .shell-wide,body.vahb-photo-page .page-shell .shell-wide{width:min(1600px,calc(100% - 40px))!important;max-width:1600px!important;margin-left:auto!important;margin-right:auto!important}
body.vahb-photo-page :is(.expense-form-card,.expense-list-card,.finance-expense-list-card,.finance-expense-detail-card,.request-form-card,.request-list-card,.account-panel,.v27-panel,.admin-card,.page-card){background:#fff!important;border:1px solid #e0e9f6!important;border-radius:14px!important;box-shadow:0 7px 22px #173c7012!important}
body.vahb-photo-page :is(.expense-stat-grid>article,.v27-team-stat,.finance-workflow-summary>span){background:#f8fbff!important;border:1px solid #dce8fb!important;border-radius:12px!important;box-shadow:none!important}
body.vahb-photo-page :is(.expense-page-head,.finance-expense-head,.account-heading,.v27-team-head) h1{color:#102c7b!important;font-weight:800!important;letter-spacing:-.03em!important}
body.vahb-photo-page :is(.expense-form-card,.expense-list-card,.finance-expense-list-card,.finance-expense-detail-card,.request-form-card,.request-list-card) :is(h2,h3){color:#123784!important}
body.vahb-photo-page :is(input,select,textarea):not([type="checkbox"]):not([type="radio"]){border-radius:9px!important;border-color:#d4e0f1!important;max-width:100%!important;box-sizing:border-box!important}
body.vahb-photo-page :is(.btn,.vahb-standard-action,.v110-leave-cta){border-radius:9px!important;font-weight:700!important}
@media(max-width:1250px){.site-header .header-top,body.v150-home .header-top{grid-template-columns:190px minmax(260px,1fr) auto auto!important;gap:12px!important}.site-header .header-meta{min-width:120px!important}.site-header .account-chip{min-width:120px!important}}
@media(max-width:850px){.site-header .header-top,body.v150-home .header-top{height:auto!important;min-height:70px!important;grid-template-columns:1fr auto auto!important;padding-top:10px!important;padding-bottom:10px!important}.site-header .official-logo{grid-column:1!important}.site-header .header-search{grid-column:1/-1!important;grid-row:2!important;max-width:none!important}.site-header .header-meta{grid-column:2!important;grid-row:1!important}.site-header .header-account-area{grid-column:3!important;grid-row:1!important}body.vahb-photo-page .vahb-v65-hero-inner{grid-template-columns:1fr!important;padding:25px!important}body.vahb-photo-page .vahb-v65-copy{justify-self:start!important}}
@media(max-width:560px){.site-header .header-top,body.v150-home .header-top{grid-template-columns:1fr auto!important}.site-header .header-meta{display:none!important}.site-header .header-account-area{grid-column:2!important}.site-header .account-chip{min-width:44px!important}.site-header .account-copy{display:none!important}body.vahb-photo-page .vahb-v65-page-shell{padding:0 12px!important}body.vahb-photo-page .vahb-v65-hero-inner{padding:22px!important}body.vahb-photo-page > main.shell-wide,body.vahb-photo-page main .shell-wide{width:calc(100% - 24px)!important}body.v150-home .v34-metric-card{min-height:105px!important;height:auto!important}}
body.v150-home .header-top{display:grid!important}
body.v150-home .official-logo{width:100%!important;min-width:0!important}

/* === v143: één fotobanner op subpagina's; taalbediening terug === */
body.vahb-photo-page::before,body.vahb-photo-page::after{content:none!important;display:none!important;background:none!important}
body.vahb-photo-page .content-shell{background:#f6f9ff!important;background-image:none!important}
body.vahb-photo-page .content-shell .section-tint{background:#f6f9ff!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
body.vahb-photo-page .hero-vahb:not(.vahb-v65-hero){background-image:none!important;background-color:transparent!important;border:0!important}
body.vahb-photo-page .vahb-v65-page-shell + main,body.vahb-photo-page .vahb-v65-page-shell + .content-shell,body.vahb-photo-page .vahb-v65-page-shell + .page-shell{background:#f6f9ff!important;margin-top:0!important}
body.vahb-photo-page .site-header .header-meta{display:flex!important;align-items:center!important;justify-content:flex-start!important;min-width:100px!important}
body.vahb-photo-page .site-header .header-meta .language{display:inline-flex!important;align-items:center!important;gap:8px!important;padding:7px 11px!important;border-radius:11px!important;background:#f4f7fc!important;color:#153472!important;font-size:12px!important;font-weight:700!important;white-space:nowrap!important}
body.vahb-photo-page .site-header .header-meta .language b{border:0!important;padding:0!important;box-shadow:none!important;background:transparent!important;color:#153472!important;font-weight:800!important}
body.vahb-photo-page .site-header .header-meta .phone{display:none!important}
@media(max-width:850px){body.vahb-photo-page .site-header .header-meta{grid-column:2!important;grid-row:1!important}}
@media(max-width:560px){body.vahb-photo-page .site-header .header-meta{display:flex!important;min-width:0!important}body.vahb-photo-page .site-header .header-meta .language{font-size:11px!important;padding:7px!important}}

/* === v144: medewerkers en inhoudskaarten in dashboardstijl === */
body.vahb-photo-page .vahb-v65-hero{margin-bottom:0!important}
body.vahb-photo-page .content-shell{padding-bottom:55px!important}
body.vahb-photo-page .content-shell>.section:first-child,
body.vahb-photo-page .content-shell>.section.section-first,
body.vahb-photo-page .content-shell .section-first{padding-top:25px!important}
body.vahb-photo-page .content-shell .section{scroll-margin-top:130px!important}
body.vahb-photo-page .employee-tools{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;margin:0 0 21px!important;padding:13px 15px!important;background:#fff!important;border:1px solid #e0e9f5!important;border-radius:14px!important;box-shadow:0 6px 19px #173d7010!important}
body.vahb-photo-page .filter-chips{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:7px!important}
body.vahb-photo-page .filter-chip{min-height:36px!important;padding:7px 12px!important;border:1px solid #dbe6f6!important;border-radius:9px!important;background:#f8fbff!important;color:#153c8d!important;font-family:inherit!important;font-size:12px!important;font-weight:700!important;line-height:1.2!important;box-shadow:none!important}
body.vahb-photo-page .filter-chip:hover{border-color:#a7c0e9!important;background:#eff5ff!important}
body.vahb-photo-page .filter-chip.active{background:#1b43a0!important;border-color:#1b43a0!important;color:#fff!important}
body.vahb-photo-page .employee-tools .document-search{display:flex!important;align-items:center!important;gap:10px!important;min-width:0!important;color:#65728c!important;font-size:11px!important}
body.vahb-photo-page .employee-tools .document-search input{width:230px!important;height:40px!important;border:1px solid #d6e2f2!important;border-radius:9px!important;background:#fff!important;padding:0 12px!important;font-family:inherit!important;font-size:13px!important;color:#17336d!important}
body.vahb-photo-page .employee-directory{gap:24px!important}
body.vahb-photo-page .employee-group{gap:13px!important}
body.vahb-photo-page .employee-group-head{align-items:center!important;padding:0 1px 10px!important;border-bottom:1px solid #cbdafa!important}
body.vahb-photo-page .employee-group-head h3{font-size:20px!important;font-weight:800!important;letter-spacing:-.025em!important;color:#103681!important}
body.vahb-photo-page .employee-group-head span{padding:5px 9px!important;border-radius:20px!important;background:#eaf1ff!important;color:#30529a!important;font-size:10px!important;letter-spacing:.02em!important}
body.vahb-photo-page .employees-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}
body.vahb-photo-page .employee-card{grid-template-columns:76px minmax(0,1fr)!important;gap:14px!important;min-height:112px!important;padding:15px!important;border:1px solid #dce7f5!important;border-radius:14px!important;background:#fff!important;box-shadow:0 6px 20px #173d7010!important;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease!important}
body.vahb-photo-page .employee-card:hover{transform:translateY(-2px)!important;border-color:#b9d0f1!important;box-shadow:0 10px 25px #173d7020!important}
body.vahb-photo-page .employee-photo,body.vahb-photo-page .employee-placeholder{width:76px!important;height:76px!important;border:2px solid #f29513!important;border-radius:50%!important;object-fit:cover!important;box-shadow:0 0 0 4px #fff4e4!important}
body.vahb-photo-page .employee-info small{margin-bottom:4px!important;color:#e27800!important;font-size:10px!important;line-height:1.25!important}
body.vahb-photo-page .employee-info h3{color:#123482!important;font-size:16px!important;font-weight:800!important;line-height:1.2!important}
body.vahb-photo-page .employee-info p{color:#67738b!important;font-size:12px!important;margin:4px 0 0!important}
body.vahb-photo-page .employee-profile-link{margin-top:7px!important;color:#1647a7!important;font-size:11px!important;font-weight:700!important}
body.vahb-photo-page .employee-contact{margin-top:7px!important;padding-top:7px!important;border-top:1px solid #e8edf5!important}
body.vahb-photo-page .employee-modal-panel{border:1px solid #d9e4f4!important;border-radius:16px!important;overflow:auto!important;box-shadow:0 24px 70px #102b6b38!important}
body.vahb-photo-page .employee-profile-hero{background:#eef4ff!important;border-bottom:1px solid #dce7f6!important}
@media(max-width:1150px){body.vahb-photo-page .employees-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}body.vahb-photo-page .employee-tools{align-items:stretch!important;flex-direction:column!important}body.vahb-photo-page .employee-tools .document-search input{width:min(100%,320px)!important}}
@media(max-width:680px){body.vahb-photo-page .employees-grid{grid-template-columns:1fr!important}body.vahb-photo-page .employee-card{grid-template-columns:68px minmax(0,1fr)!important}body.vahb-photo-page .employee-photo,body.vahb-photo-page .employee-placeholder{width:68px!important;height:68px!important}body.vahb-photo-page .employee-tools{padding:12px!important}body.vahb-photo-page .employee-tools .document-search{width:100%!important}body.vahb-photo-page .employee-tools .document-search input{width:100%!important}}

/* === v145: Mijn verlof en overige inhoudskaarten volgens het dashboard === */
body.vahb-photo-page .content-shell .section{padding-top:28px!important;padding-bottom:40px!important}
body.vahb-photo-page .content-shell .section:first-child{padding-top:20px!important}
body.vahb-photo-page .leave-portal{width:100%!important;max-width:1600px!important;margin:0 auto!important;gap:18px!important;min-width:0!important}
body.vahb-photo-page .v110-leave-actionbar{width:100%!important;max-width:1600px!important;margin:0 auto 18px!important;padding:18px 22px!important;border:1px solid #f0dec3!important;border-left:4px solid #f19000!important;border-radius:14px!important;background:linear-gradient(110deg,#fff,#fffaf2)!important;box-shadow:0 7px 22px #173d7010!important;min-height:86px!important}
body.vahb-photo-page .v110-leave-action-copy strong{font-size:20px!important;color:#10357e!important}
body.vahb-photo-page .v110-leave-action-copy span{font-size:12px!important;color:#66748d!important}
body.vahb-photo-page .v110-leave-cta,body.vahb-photo-page .v84-new-request{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:43px!important;border-radius:9px!important;background:#ee8900!important;color:#fff!important;font-size:12px!important;white-space:nowrap!important;box-shadow:0 7px 15px #b46a0020!important}
body.vahb-photo-page .leave-balance-grid,body.vahb-photo-page .v84-balance-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important}
body.vahb-photo-page .leave-stat,body.vahb-photo-page .v84-stat{position:relative!important;min-width:0!important;min-height:112px!important;padding:16px 19px!important;border:1px solid #d9e6f6!important;border-radius:14px!important;background:linear-gradient(135deg,#fff,#f7fbff)!important;box-shadow:0 7px 20px #173d700d!important;overflow:hidden!important}
body.vahb-photo-page .leave-stat::before,body.vahb-photo-page .v84-stat::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:0 3px 3px 0;background:#4f80d8}
body.vahb-photo-page .leave-stat:nth-child(2),body.vahb-photo-page .v84-stat:nth-child(2){border-color:#d2ece0!important;background:linear-gradient(135deg,#fff,#f2faf6)!important}
body.vahb-photo-page .leave-stat:nth-child(2)::before,body.vahb-photo-page .v84-stat:nth-child(2)::before{background:#19a263}
body.vahb-photo-page .leave-stat:nth-child(4),body.vahb-photo-page .v84-stat:nth-child(4){border-color:#e5dafa!important;background:linear-gradient(135deg,#fff,#f9f7ff)!important}
body.vahb-photo-page .leave-stat:nth-child(4)::before,body.vahb-photo-page .v84-stat:nth-child(4)::before{background:#7551d2}
body.vahb-photo-page .leave-stat-primary,body.vahb-photo-page .v84-stat.primary{border-color:#f3d9b5!important;background:linear-gradient(135deg,#fff,#fff8ef)!important}
body.vahb-photo-page .leave-stat-primary::before,body.vahb-photo-page .v84-stat.primary::before{background:#f18a00}
body.vahb-photo-page .leave-stat small,body.vahb-photo-page .v84-stat small{color:#39548a!important;font-size:11px!important;font-weight:800!important;letter-spacing:.045em!important;line-height:1.2!important}
body.vahb-photo-page .leave-stat strong,body.vahb-photo-page .v84-stat strong{margin-top:7px!important;color:#103787!important;font-size:28px!important;font-weight:800!important;line-height:1.1!important}
body.vahb-photo-page .leave-stat-primary strong,body.vahb-photo-page .v84-stat.primary strong{color:#d87500!important}
body.vahb-photo-page .leave-stat>span,body.vahb-photo-page .v84-stat span{color:#6c7891!important;font-size:11px!important}
body.vahb-photo-page .leave-detail-grid{display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) minmax(0,1.25fr)!important;gap:14px!important}
body.vahb-photo-page .leave-info-card,body.vahb-photo-page .v84-panel,body.vahb-photo-page .v84-leave-top,body.vahb-photo-page .v84-request-form-wrap,body.vahb-photo-page .v84-link-card,body.vahb-photo-page .v118-leave-cancel-panel{background:#fff!important;border:1px solid #dce7f6!important;border-radius:14px!important;padding:20px!important;box-shadow:0 7px 20px #173d7010!important;min-width:0!important}
body.vahb-photo-page .leave-card-head,body.vahb-photo-page .v84-panel-head{border-bottom:1px solid #e6edf7!important;padding-bottom:13px!important;margin-bottom:13px!important}
body.vahb-photo-page .leave-card-head h3,body.vahb-photo-page .v84-panel-head h3{color:#103681!important;font-size:18px!important;font-weight:800!important;letter-spacing:-.02em!important}
body.vahb-photo-page .leave-card-head small,body.vahb-photo-page .v84-panel-head small{color:#e07b00!important;font-size:10px!important}
body.vahb-photo-page .leave-contract-main strong{color:#103786!important}
body.vahb-photo-page .leave-workweek>span:not(.leave-config-warning){background:#edf4ff!important;border:1px solid #dce8f7!important;border-radius:8px!important}
body.vahb-photo-page .leave-calc-row,body.vahb-photo-page .leave-history-row,body.vahb-photo-page .v84-request-row,body.vahb-photo-page .v84-detail-row{border-bottom-color:#e8eef7!important}
body.vahb-photo-page .v84-leave-hub{width:100%!important;max-width:1600px!important;margin:0 auto 32px!important;padding:0!important;gap:16px!important}
body.vahb-photo-page .v84-request-form-wrap{scroll-margin-top:90px!important}
body.vahb-photo-page .v118-leave-cancel-panel{max-width:1600px!important;margin:18px auto!important}
/* Andere bekende subpagina-panelen gebruiken dezelfde zachte rand en hoek. */
body.vahb-photo-page :is(.expense-form-card,.expense-list-card,.finance-expense-list-card,.finance-expense-detail-card,.v27-panel,.account-panel,.document-card,.knowledge-card,.album-card,.v82-hub-head,.v82-event){border:1px solid #dce7f6!important;border-radius:14px!important;background:#fff!important;box-shadow:0 7px 20px #173d700f!important}
body.vahb-photo-page :is(.document-tools,.v82-view-switch){border-radius:12px!important}
@media(max-width:1120px){body.vahb-photo-page .leave-balance-grid,body.vahb-photo-page .v84-balance-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}body.vahb-photo-page .leave-detail-grid{grid-template-columns:1fr 1fr!important}body.vahb-photo-page .leave-history-card{grid-column:1/-1!important}}
@media(max-width:690px){body.vahb-photo-page .leave-detail-grid{grid-template-columns:1fr!important}body.vahb-photo-page .leave-history-card{grid-column:auto!important}body.vahb-photo-page .v110-leave-actionbar{align-items:stretch!important;flex-direction:column!important}body.vahb-photo-page .v110-leave-cta{width:100%!important}body.vahb-photo-page .leave-stat,body.vahb-photo-page .v84-stat{min-height:100px!important;padding:14px!important}body.vahb-photo-page .leave-stat strong,body.vahb-photo-page .v84-stat strong{font-size:24px!important}}

/* === v146: beheeromgeving met leesbare kop, navigatie en werkkaarten === */
body.vahb-photo-page .admin-wrap{max-width:1380px!important;padding:32px 24px 70px!important;color:#263956!important}
body.vahb-photo-page .admin-wrap .admin-title{align-items:center!important;border-bottom:1px solid #dbe5f2!important;padding-bottom:18px!important}
body.vahb-photo-page .admin-wrap .admin-title h1{color:#113780!important;-webkit-text-fill-color:#113780!important;text-shadow:none!important;font-size:clamp(31px,2.4vw,40px)!important;line-height:1.16!important}
body.vahb-photo-page .admin-wrap .admin-title p,
body.vahb-photo-page .admin-wrap .admin-title .subtitle,
body.vahb-photo-page .admin-wrap > p{color:#52637e!important;-webkit-text-fill-color:#52637e!important;text-shadow:none!important;font-size:14px!important;line-height:1.5!important}
body.vahb-photo-page .admin-wrap .tabs{display:flex!important;flex-wrap:wrap!important;justify-content:flex-start!important;gap:7px!important;margin:20px 0 24px!important;padding:10px!important;border:1px solid #d9e4f4!important;border-radius:14px!important;background:#fff!important;box-shadow:0 8px 22px #173d7010!important}
body.vahb-photo-page .admin-wrap .tabs .tab,
body.vahb-photo-page .admin-wrap .tabs .v130mt-btn{flex:0 0 auto!important;width:auto!important;min-width:110px!important;min-height:43px!important;height:auto!important;padding:9px 14px!important;border:1px solid #e2e9f4!important;border-radius:9px!important;background:#f8faff!important;color:#203659!important;font-size:13.5px!important;line-height:1.25!important;white-space:normal!important}
body.vahb-photo-page .admin-wrap .tabs .tab:hover,
body.vahb-photo-page .admin-wrap .tabs .v130mt-btn:hover{background:#edf4ff!important;border-color:#bdd1f1!important}
body.vahb-photo-page .admin-wrap .tabs .tab.active,
body.vahb-photo-page .admin-wrap .tabs .tab[aria-selected="true"]{background:#eaf2ff!important;border-color:#bcd0f1!important;color:#0f398c!important}
body.vahb-photo-page .admin-wrap .admin-auth-banner{min-height:43px!important;padding:11px 14px!important;color:#293b58!important;font-size:13.5px!important;line-height:1.45!important}
body.vahb-photo-page .admin-wrap :is(.form-card,.list-card,.request-admin-list-card,.request-admin-detail-card){border:1px solid #dbe5f3!important;border-radius:13px!important;background:#fff!important;box-shadow:0 8px 22px #173d700e!important}
body.vahb-photo-page .admin-wrap :is(.form-card,.list-card) h2{color:#123780!important;font-size:20px!important;line-height:1.25!important}
body.vahb-photo-page .admin-wrap :is(.v103-action-center,.request-admin-list-card,.request-admin-detail-card) :is(h2,h3){color:#123780!important}
body.vahb-photo-page .admin-wrap .request-admin-head{align-items:center!important;flex-wrap:wrap!important;gap:12px!important}
body.vahb-photo-page .admin-wrap .request-admin-head h2{font-size:23px!important}
body.vahb-photo-page .admin-wrap .request-admin-filters{flex-wrap:wrap!important;gap:8px!important}
body.vahb-photo-page .admin-wrap :is(input,select,textarea){min-height:41px!important;border:1px solid #cbd9ed!important;border-radius:8px!important;color:#233654!important;background:#fff!important;font-size:13.5px!important}
body.vahb-photo-page .admin-wrap label{color:#3d4c66!important;font-size:12px!important;line-height:1.35!important}
body.vahb-photo-page .admin-wrap .request-admin-stats{gap:9px!important}
body.vahb-photo-page .admin-wrap .request-admin-stats>div{min-width:0!important;padding:13px 14px!important;border:1px solid #dce8f8!important;border-bottom:3px solid #3861b4!important;border-radius:9px!important;background:#f3f7ff!important}
body.vahb-photo-page .admin-wrap .request-admin-stats strong{font-size:24px!important;line-height:1.1!important;color:#103780!important}
body.vahb-photo-page .admin-wrap .request-admin-stats span{display:block!important;margin-top:6px!important;color:#465a78!important;font-size:11px!important;line-height:1.3!important}
body.vahb-photo-page .admin-wrap .admin-request-row{border-color:#dce5f1!important;border-radius:9px!important;padding:13px!important}
body.vahb-photo-page .admin-wrap :is(.admin-request-row,.request-admin-meta,.request-admin-detail-head p,.row-info small){color:#52627b!important;font-size:13px!important;line-height:1.45!important}
body.vahb-photo-page .admin-wrap .request-status{font-size:11px!important;padding:6px 9px!important}
body.vahb-photo-page .admin-wrap .v103-action-center.v123-action-compact.v123-collapsed{padding:13px 16px!important}
body.vahb-photo-page .admin-wrap .v103-action-center .v103-action-head h2{font-size:18px!important}
body.vahb-photo-page .admin-wrap .v123-action-toggle{min-height:34px!important;padding:7px 12px!important;font-size:12px!important}
body.vahb-photo-page .admin-wrap .v103-action-status{font-size:11px!important}
@media(max-width:820px){body.vahb-photo-page .admin-wrap .tabs{flex-wrap:wrap!important;overflow:visible!important}body.vahb-photo-page .admin-wrap .tabs .tab,body.vahb-photo-page .admin-wrap .tabs .v130mt-btn{min-width:0!important;flex:1 1 125px!important}}
@media(max-width:600px){body.vahb-photo-page .admin-wrap{padding:24px 14px 50px!important}body.vahb-photo-page .admin-wrap .admin-title{align-items:flex-start!important;gap:14px!important}body.vahb-photo-page .admin-wrap .tabs .tab,body.vahb-photo-page .admin-wrap .tabs .v130mt-btn{flex:1 1 calc(50% - 7px)!important}body.vahb-photo-page .admin-wrap .request-admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* === v147: scherpere bovenbalk en fotobanner op inhoudspagina's === */
.site-header{border-bottom:1px solid #dbe5f4!important;box-shadow:0 2px 10px rgba(16,42,92,.06)!important}
.site-header .header-search{background:#fff!important;border-color:#cbd9ef!important}
.site-header .header-search input{color:#18356d!important;font-size:14px!important}
.site-header .main-nav a{color:#0e2d72!important;font-size:14px!important;font-weight:750!important}
.site-header .main-nav a:hover,.site-header .main-nav a.active,.site-header .main-nav a[aria-current="page"]{color:#063eae!important;background:#eaf2ff!important}
.site-header .header-account-area .account-chip{color:#102e72!important;background:#f1f5fc!important}
.site-header .v142-language-slot,.site-header .language-options{color:#173474!important}
body.vahb-photo-page .vahb-v65-hero{
  background-image:linear-gradient(90deg,rgba(5,35,105,.96) 0%,rgba(7,45,125,.78) 27%,rgba(7,51,134,.30) 53%,rgba(7,55,134,.38) 100%),url('/static/vahb-hero-camping.png')!important;
  background-position:center center!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
}
body.vahb-photo-page .vahb-v65-title{font-weight:800!important;letter-spacing:-.026em!important}
body.vahb-photo-page .vahb-v65-copy{font-weight:600!important;line-height:1.5!important}
/* Declaraties/Administratie kan een eigen sjabloon zonder de gedeelde banner hebben. */
body:not(:has(.vahb-v65-page-shell)) :is(.expense-page-main,.finance-expense-main) .expense-page-head{
  box-sizing:border-box!important;
  min-height:190px!important;
  margin:0 0 22px!important;
  padding:28px 42px!important;
  align-items:center!important;
  border-radius:16px!important;
  overflow:hidden!important;
  background-image:linear-gradient(90deg,rgba(5,35,105,.96) 0%,rgba(7,45,125,.78) 27%,rgba(7,51,134,.30) 53%,rgba(7,55,134,.38) 100%),url('/static/vahb-hero-camping.png')!important;
  background-position:center center!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  box-shadow:0 10px 25px rgba(14,54,118,.14)!important;
}
body:not(:has(.vahb-v65-page-shell)) :is(.expense-page-main,.finance-expense-main) .expense-page-head h1{color:#fff!important;-webkit-text-fill-color:#fff!important;text-shadow:none!important;font-size:clamp(30px,2.6vw,42px)!important}
body:not(:has(.vahb-v65-page-shell)) :is(.expense-page-main,.finance-expense-main) .expense-page-head p{color:#fff!important;text-shadow:0 1px 4px rgba(3,30,90,.5)!important}
body:not(:has(.vahb-v65-page-shell)) :is(.expense-page-main,.finance-expense-main) .expense-page-head :is(.eyebrow,small:first-child){color:#ffad32!important}
@media(max-width:850px){body:not(:has(.vahb-v65-page-shell)) :is(.expense-page-main,.finance-expense-main) .expense-page-head{padding:25px!important;gap:14px!important}}
@media(max-width:560px){body:not(:has(.vahb-v65-page-shell)) :is(.expense-page-main,.finance-expense-main) .expense-page-head{min-height:165px!important;padding:20px!important}}

/* === v148: gedeelde stylesheet ook met nieuwe versie op serverpagina’s === */

/* === v149: volledige bovenbalk in de echte subpagina-HTML === */
.site-header .header-top .header-meta{min-width:125px!important}
.site-header .header-top .header-search{border-color:#cbd9ef!important;background:#fff!important}
.site-header .header-top .header-search svg{stroke:#12377e!important}

/* === v150: dezelfde kop als Home op alle reguliere inhoudspagina's === */
body.v150-shared-header .site-header{background:#fff!important;border-bottom:1px solid #e8eef8!important;box-shadow:none!important}
body.v150-shared-header .site-header .header-top{display:grid!important;grid-template-columns:clamp(170px,25vw,480px) minmax(270px,580px) minmax(130px,1fr) auto!important;gap:22px!important;align-items:center!important;width:100%!important;max-width:none!important;height:72px!important;min-height:72px!important;padding:0 24px!important;margin:0!important}
body.v150-shared-header .site-header .official-logo{display:flex!important;align-items:center!important;width:100%!important;height:58px!important;min-width:0!important}
body.v150-shared-header .site-header .official-logo img{width:175px!important;max-width:175px!important;height:auto!important}
body.v150-shared-header .site-header .header-search{height:46px!important;width:100%!important;max-width:580px!important;min-width:0!important;border:1px solid #dce5f5!important;border-radius:28px!important;background:#f6f8fd!important;box-shadow:none!important}
body.v150-shared-header .site-header .header-search input,body.v150-shared-header .site-header .header-search button{background:transparent!important}
body.v150-shared-header .site-header .header-meta{display:flex!important;align-items:center!important;min-width:125px!important;margin:0!important;white-space:nowrap!important}
body.v150-shared-header .site-header .header-meta .phone,body.v150-shared-header .site-header .header-meta .language{display:none!important}
body.v150-shared-header .site-header .v142-language-slot{display:flex!important;align-items:center!important;min-height:42px!important;min-width:125px!important;background:transparent!important}
body.v150-shared-header .site-header .language-options{display:flex!important;align-items:center!important;gap:4px!important;background:transparent!important;border:0!important;box-shadow:none!important}
body.v150-shared-header .site-header .language-options button{background:transparent!important;border:1px solid transparent!important;border-radius:5px!important;padding:5px 7px!important;color:#283b67!important;font-size:11px!important}
body.v150-shared-header .site-header .language-options button.active{background:#fff!important;border-color:#d9e0ec!important;box-shadow:0 1px 3px #dce3ed!important}
body.v150-shared-header .site-header .header-account-area{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:14px!important;min-width:0!important;margin:0!important}
body.v150-shared-header .site-header .notification-bell{width:42px!important;height:42px!important;border-radius:10px!important}
body.v150-shared-header .site-header .account-chip{display:flex!important;align-items:center!important;gap:10px!important;height:46px!important;min-height:46px!important;min-width:180px!important;max-width:220px!important;padding:6px 12px!important;background:#f5f7fc!important;border:0!important;border-radius:13px!important}
body.v150-shared-header .site-header .account-copy strong{font-size:13px!important;line-height:1.2!important}
body.v150-shared-header .site-header .account-copy small{font-size:10px!important;line-height:1.2!important}
body.v150-shared-header .site-header .nav-row{height:53px!important;background:#fff!important;border:0!important}
body.v150-shared-header .site-header .nav-inner{width:100%!important;max-width:none!important;height:53px!important;min-height:53px!important;margin:0!important;padding:0 24px!important;display:flex!important;align-items:center!important;overflow-x:auto!important}
body.v150-shared-header .site-header .nav-primary{display:none!important}
body.v150-shared-header .site-header .main-nav{display:flex!important;align-items:center!important;gap:6px!important;height:53px!important;min-width:max-content!important}
body.v150-shared-header .site-header .main-nav a{display:flex!important;align-items:center!important;height:40px!important;margin:0!important;padding:0 14px!important;color:#142b66!important;font-size:14px!important;font-weight:700!important;border:0!important;border-radius:11px!important;background:transparent!important;box-shadow:none!important;white-space:nowrap!important}
body.v150-shared-header .site-header .main-nav a:hover,body.v150-shared-header .site-header .main-nav a.active,body.v150-shared-header .site-header .main-nav a[aria-current="page"]{background:#eaf1ff!important;color:#0e44ad!important}
body.v150-shared-header .site-header .main-nav a.active::after,body.v150-shared-header .site-header .main-nav a[aria-current="page"]::after{display:none!important}
@media(max-width:1250px){body.v150-shared-header .site-header .header-top{grid-template-columns:190px minmax(260px,1fr) auto auto!important;gap:12px!important}body.v150-shared-header .site-header .account-chip{min-width:120px!important}}
@media(max-width:850px){body.v150-shared-header .site-header .header-top{height:auto!important;min-height:70px!important;grid-template-columns:1fr auto auto!important;padding-top:10px!important;padding-bottom:10px!important}body.v150-shared-header .site-header .official-logo{grid-column:1!important}body.v150-shared-header .site-header .header-search{grid-column:1/-1!important;grid-row:2!important;max-width:none!important}body.v150-shared-header .site-header .header-meta{grid-column:2!important;grid-row:1!important}body.v150-shared-header .site-header .header-account-area{grid-column:3!important;grid-row:1!important}}
@media(max-width:650px){body.v150-shared-header .site-header .header-top{grid-template-columns:1fr auto!important}body.v150-shared-header .site-header .header-meta{grid-column:1!important;grid-row:2!important}body.v150-shared-header .site-header .header-search{grid-row:3!important}body.v150-shared-header .site-header .header-account-area{grid-column:2!important}body.v150-shared-header .site-header .account-chip{min-width:44px!important}body.v150-shared-header .site-header .account-copy{display:none!important}body.v150-shared-header .site-header .language-options button:not(.active){display:none!important}}

/* === v152: één zoekbalk, zonder formulierkader binnen de header === */
body:not(.v150-home) .site-header .header-search input,
body:not(.v150-home) .site-header .header-search input:focus{
  min-height:0!important;
  height:100%!important;
  padding:0 12px!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
body:not(.v150-home) .site-header .header-search button,
body:not(.v150-home) .site-header .header-search button:focus{
  min-height:0!important;
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
}

/* === v153: witte zoekbalk op subpagina's, gelijk aan Home === */
body:not(.v150-home) .site-header .header-search{
  background:#fff!important;
}

/* === v154: identieke zoektekst op Home en alle subpagina's === */
body.v150-home .site-header .header-search input,
body.v150-shared-header .site-header .header-search input,
body.vahb-photo-page .site-header .header-search input,
body.v150-home .site-header .header-search input::placeholder,
body.v150-shared-header .site-header .header-search input::placeholder,
body.vahb-photo-page .site-header .header-search input::placeholder{
  font-family:"Segoe UI Variable","Segoe UI",Arial,sans-serif!important;
  font-size:14px!important;
  font-weight:400!important;
  line-height:1.3!important;
  letter-spacing:0!important;
}
body.v150-home .site-header .header-search input,
body.v150-shared-header .site-header .header-search input,
body.vahb-photo-page .site-header .header-search input{
  height:100%!important;
  min-height:0!important;
  padding:0 12px!important;
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
}

/* v155: home photo albums link and clear multi-upload guidance. */
body.v150-home .v155-hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
body.v150-home .v155-photo-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 19px;border:1px solid rgba(255,255,255,.8);border-radius:10px;background:rgba(255,255,255,.13);color:#fff;font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}
body.v150-home .v155-photo-cta:hover,body.v150-home .v155-photo-cta:focus-visible{background:rgba(255,255,255,.25);outline:2px solid rgba(255,255,255,.7);outline-offset:2px}
#panel-photos .v155-upload-hint{font-size:13px;line-height:1.5;color:#485a75;margin:6px 0 14px}
@media(max-width:540px){body.v150-home .v155-hero-actions{gap:8px}body.v150-home .v155-photo-cta{height:40px;padding:0 14px}}

/* v156: photo albums in the shared primary navigation. */
.site-header .main-nav a.nav-photos::before{content:"▧"!important;margin-right:9px;color:#1747a7;font-size:16px;font-weight:400}

/* v161: Home and content pages use one fixed header and navigation geometry. */
@media(min-width:851px){
  body.v150-home .site-header .header-top,
  body.v150-shared-header .site-header .header-top{
    display:grid!important;
    grid-template-columns:clamp(170px,25vw,480px) minmax(270px,580px) minmax(130px,1fr) auto!important;
    align-items:center!important;
    gap:22px!important;
    width:100%!important;
    max-width:none!important;
    height:72px!important;
    min-height:72px!important;
    padding:0 24px!important;
    margin:0!important;
  }
  body.v150-home .site-header .official-logo,
  body.v150-shared-header .site-header .official-logo{display:flex!important;align-items:center!important;width:100%!important;height:58px!important;min-width:0!important}
  body.v150-home .site-header .official-logo img,
  body.v150-shared-header .site-header .official-logo img{width:175px!important;max-width:175px!important;height:auto!important}
  body.v150-home .site-header .header-search,
  body.v150-shared-header .site-header .header-search{width:100%!important;max-width:580px!important;height:46px!important;min-width:0!important;border-radius:28px!important;background:#fff!important}
  body.v150-home .site-header .header-meta,
  body.v150-shared-header .site-header .header-meta{display:flex!important;align-items:center!important;min-width:125px!important;margin:0!important}
  body.v150-home .site-header .header-account-area,
  body.v150-shared-header .site-header .header-account-area{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:14px!important;margin:0!important}
}
@media(min-width:851px) and (max-width:1250px){
  body.v150-home .site-header .header-top,
  body.v150-shared-header .site-header .header-top{grid-template-columns:190px minmax(260px,1fr) auto auto!important;gap:12px!important}
}
body.v150-home .site-header .nav-row,
body.v150-shared-header .site-header .nav-row{height:53px!important}
body.v150-home .site-header .nav-inner,
body.v150-shared-header .site-header .nav-inner{width:100%!important;max-width:none!important;height:53px!important;min-height:53px!important;padding:0 24px!important;margin:0!important;display:flex!important;align-items:center!important;overflow-x:auto!important}
body.v150-home .site-header .main-nav,
body.v150-shared-header .site-header .main-nav{display:flex!important;flex:0 0 auto!important;align-items:center!important;gap:6px!important;height:53px!important;min-width:max-content!important;overflow:visible!important}
body.v150-home .site-header .main-nav a,
body.v150-shared-header .site-header .main-nav a,
body.v150-home .site-header .main-nav a.active,
body.v150-shared-header .site-header .main-nav a.active{display:flex!important;align-items:center!important;box-sizing:border-box!important;height:40px!important;margin:0!important;padding:0 14px!important;border:0!important;border-radius:11px!important;font-size:14px!important;font-weight:700!important;line-height:1!important;white-space:nowrap!important}
body.v150-home .site-header .main-nav .nav-home,
body.v150-shared-header .site-header .main-nav .nav-home{gap:8px!important;padding:0 14px!important}

/* v162: restore the building banner on overview routes without an injected banner. */
body.topic-page:not(:has(.vahb-v65-hero)) #topicContext{
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:8px!important;
  width:min(1600px,calc(100% - 40px))!important;
  max-width:1600px!important;
  min-height:190px!important;
  margin:0 auto 18px!important;
  padding:28px 42px!important;
  border:0!important;
  border-radius:16px!important;
  background:linear-gradient(90deg,rgba(5,35,105,.97) 0%,rgba(7,45,125,.83) 30%,rgba(7,51,134,.32) 61%,rgba(116,158,209,.32) 100%),url('/static/vahb-hero-camping.png') center center/cover no-repeat!important;
  box-shadow:0 10px 25px rgba(14,54,118,.14)!important;
}
body.topic-page:not(:has(.vahb-v65-hero)) #topicContext::before{
  content:"VAHB INTRANET";
  color:#ff9e15!important;
  font-size:11px!important;
  font-weight:850!important;
  letter-spacing:.13em!important;
}
body.topic-page:not(:has(.vahb-v65-hero)) #topicContext a{display:none!important}
body.topic-page:not(:has(.vahb-v65-hero)) #topicContextLabel{
  color:#fff!important;
  font-size:clamp(30px,2.6vw,42px)!important;
  font-weight:800!important;
  letter-spacing:-.03em!important;
  line-height:1.12!important;
  text-shadow:none!important;
}
body.topic-page:has(.vahb-v65-hero) #topicContext{display:none!important}
body.v150-shared-header:not(:has(.vahb-v65-page-shell)) :is(.v27-team-head,.v22-page-head){
  box-sizing:border-box!important;
  min-height:190px!important;
  margin:0 0 22px!important;
  padding:28px 42px!important;
  display:flex!important;
  align-items:center!important;
  gap:20px!important;
  border:0!important;
  border-radius:16px!important;
  background:linear-gradient(90deg,rgba(5,35,105,.97) 0%,rgba(7,45,125,.83) 30%,rgba(7,51,134,.32) 61%,rgba(116,158,209,.32) 100%),url('/static/vahb-hero-camping.png') center center/cover no-repeat!important;
  box-shadow:0 10px 25px rgba(14,54,118,.14)!important;
}
body.v150-shared-header:not(:has(.vahb-v65-page-shell)) :is(.v27-team-head,.v22-page-head) :is(h1,p){color:#fff!important;-webkit-text-fill-color:#fff!important;text-shadow:none!important}
body.v150-shared-header:not(:has(.vahb-v65-page-shell)) :is(.v27-team-head,.v22-page-head) .eyebrow{color:#ffad32!important}
body.v150-shared-header:not(:has(.vahb-v65-page-shell)) :is(.v27-team-head,.v22-page-head) :is(.btn.secondary,.v22-head-actions){background:rgba(255,255,255,.94)!important;border-radius:9px!important;color:#12377e!important;padding:10px 14px!important}
@media(max-width:850px){
  body.topic-page:not(:has(.vahb-v65-hero)) #topicContext{width:calc(100% - 24px)!important;min-height:160px!important;padding:24px!important}
  body.v150-shared-header:not(:has(.vahb-v65-page-shell)) :is(.v27-team-head,.v22-page-head){min-height:160px!important;padding:24px!important;flex-wrap:wrap!important}
}
body.topic-page #topicContext.hidden{display:none!important}

/* v163: één inhoudslijn voor de fotobanner en kaarten op alle subpagina's. */
body.v150-shared-header:not(.v150-home) > main.shell-wide:is(.expense-page-main,.finance-expense-main,.v27-team-main,.v22-hr-main),
body.topic-page #topicContext,
body.topic-page .content-shell.shell-wide,
body.vahb-photo-page .vahb-v65-hero{
  box-sizing:border-box!important;
  width:min(1530px,calc(100% - 64px))!important;
  max-width:1530px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.topic-page:not(:has(.vahb-v65-hero)) #topicContext{
  margin-top:34px!important;
  margin-bottom:18px!important;
}
@media(max-width:850px){
  body.v150-shared-header:not(.v150-home) > main.shell-wide:is(.expense-page-main,.finance-expense-main,.v27-team-main,.v22-hr-main),
  body.topic-page #topicContext,
  body.topic-page .content-shell.shell-wide,
  body.vahb-photo-page .vahb-v65-hero{width:calc(100% - 32px)!important}
  body.topic-page:not(:has(.vahb-v65-hero)) #topicContext{margin-top:22px!important}
}
@media(max-width:560px){
  body.v150-shared-header:not(.v150-home) > main.shell-wide:is(.expense-page-main,.finance-expense-main,.v27-team-main,.v22-hr-main),
  body.topic-page #topicContext,
  body.topic-page .content-shell.shell-wide,
  body.vahb-photo-page .vahb-v65-hero{width:calc(100% - 24px)!important}
}

/* v164: Declaraties gebruikt een eigen main; plaats die banner op dezelfde lijn. */
body > main.shell-wide:is(.expense-page-main,.finance-expense-main){
  box-sizing:border-box!important;
  width:min(1530px,calc(100% - 64px))!important;
  max-width:1530px!important;
  margin:0 auto!important;
  padding-top:34px!important;
}
body > main.shell-wide:is(.expense-page-main,.finance-expense-main) > .expense-page-head{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  min-height:190px!important;
  margin:0 0 22px!important;
  padding:28px 42px!important;
  border:0!important;
  border-radius:16px!important;
  background:linear-gradient(90deg,rgba(5,35,105,.97) 0%,rgba(7,45,125,.83) 30%,rgba(7,51,134,.32) 61%,rgba(116,158,209,.32) 100%),url('/static/vahb-hero-camping.png') center center/cover no-repeat!important;
  box-shadow:0 10px 25px rgba(14,54,118,.14)!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(260px,.45fr)!important;
  align-content:center!important;
  align-items:center!important;
  column-gap:24px!important;
}
body > main.shell-wide:is(.expense-page-main,.finance-expense-main) > .expense-page-head > div:first-child{display:contents!important}
body > main.shell-wide:is(.expense-page-main,.finance-expense-main) > .expense-page-head .eyebrow{grid-column:1;grid-row:1;color:#ffad32!important}
body > main.shell-wide:is(.expense-page-main,.finance-expense-main) > .expense-page-head h1{grid-column:1;grid-row:2;color:#fff!important;-webkit-text-fill-color:#fff!important;margin:5px 0 0!important;font-size:clamp(30px,2.6vw,42px)!important}
body > main.shell-wide:is(.expense-page-main,.finance-expense-main) > .expense-page-head p{grid-column:2;grid-row:1 / 3;max-width:none!important;color:#fff!important;-webkit-text-fill-color:#fff!important;line-height:1.5!important}
body > main.shell-wide:is(.expense-page-main,.finance-expense-main) > .expense-page-head > :is(a,.finance-toolbar){grid-column:2;grid-row:3;justify-self:start;margin-top:10px}
@media(max-width:850px){
  body > main.shell-wide:is(.expense-page-main,.finance-expense-main){width:calc(100% - 32px)!important;padding-top:22px!important}
  body > main.shell-wide:is(.expense-page-main,.finance-expense-main) > .expense-page-head{min-height:160px!important;padding:24px!important;grid-template-columns:1fr!important;gap:8px!important}
  body > main.shell-wide:is(.expense-page-main,.finance-expense-main) > .expense-page-head p{grid-column:1;grid-row:3}
  body > main.shell-wide:is(.expense-page-main,.finance-expense-main) > .expense-page-head > :is(a,.finance-toolbar){grid-column:1;grid-row:4}
}
@media(max-width:560px){body > main.shell-wide:is(.expense-page-main,.finance-expense-main){width:calc(100% - 24px)!important}}

/* v169: grote albumfoto, downloaden en diavoorstelling. */
#albumModalGrid figure{cursor:zoom-in}
#albumModalGrid figure:focus-visible{outline:3px solid #f28c00;outline-offset:3px}
.vahb-photo-viewer{position:fixed;inset:0;z-index:250;display:grid;place-items:center;padding:18px;color:#fff;font-family:var(--vahb-font-ui,"Segoe UI Variable","Segoe UI",Arial,sans-serif)}
.vahb-photo-viewer[hidden]{display:none!important}
.vahb-photo-viewer-backdrop{position:absolute;inset:0;background:rgba(3,12,37,.93)}
.vahb-photo-viewer-panel{position:relative;display:flex;flex-direction:column;width:min(1440px,100%);height:min(940px,calc(100dvh - 36px));min-height:0;background:#0b1530;border:1px solid #5374ad;border-radius:14px;overflow:hidden;box-shadow:0 22px 70px #0008}
.vahb-photo-viewer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 18px;border-bottom:1px solid #ffffff24}
.vahb-photo-viewer-info{display:flex;flex-direction:column;gap:2px;min-width:0}.vahb-photo-viewer-info strong{font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vahb-photo-viewer-info span{font-size:12px;color:#c5d6fb}
.vahb-photo-viewer-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.vahb-photo-viewer-actions :is(button,a),.vahb-photo-viewer-stage button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 12px;background:#1d3264;border:1px solid #6685bc;border-radius:8px;color:#fff;text-decoration:none;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.vahb-photo-viewer-actions :is(button,a):hover,.vahb-photo-viewer-stage button:hover{background:#31519b}
.vahb-photo-viewer-actions [data-photo-close]{min-width:40px;font-size:22px;line-height:1;padding:4px}
.vahb-photo-viewer-stage{position:relative;display:flex;align-items:center;justify-content:center;flex:1;min-height:0;overflow:auto;padding:14px 58px}
.vahb-photo-viewer-stage img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}
.vahb-photo-viewer-stage.is-zoomed{align-items:flex-start;justify-content:flex-start}
.vahb-photo-viewer-stage.is-zoomed img{flex:none;width:160%;height:auto;max-width:none;max-height:none}
.vahb-photo-viewer-stage button{position:fixed;top:50%;width:42px;height:52px;padding:0;font-size:31px;line-height:1;z-index:1}
.vahb-photo-viewer-prev{left:max(28px,calc((100vw - 1440px)/2 + 14px))}.vahb-photo-viewer-next{right:max(28px,calc((100vw - 1440px)/2 + 14px))}
.vahb-photo-viewer-caption{min-height:42px;padding:10px 18px;text-align:center;color:#e2eafa;font-size:13px;line-height:1.45}
@media(max-width:700px){.vahb-photo-viewer{padding:6px}.vahb-photo-viewer-panel{height:calc(100dvh - 12px)}.vahb-photo-viewer-toolbar{align-items:flex-start;flex-direction:column;padding:10px}.vahb-photo-viewer-actions{justify-content:flex-start;gap:5px}.vahb-photo-viewer-actions :is(button,a){font-size:11px;min-height:34px;padding:6px 8px}.vahb-photo-viewer-stage{padding:12px 42px}.vahb-photo-viewer-stage button{width:32px;height:42px;font-size:25px}.vahb-photo-viewer-prev{left:10px}.vahb-photo-viewer-next{right:10px}}

/* v168: identieke typografie in de subpagina-fotobanners. */
body.topic-page #topicContext,
body.v150-shared-header > main.shell-wide.expense-page-main > .expense-page-head,
body.v150-shared-header > main.shell-wide.finance-expense-main > .expense-page-head,
body.v150-shared-header :is(.v27-team-head,.v22-page-head),
body.vahb-photo-page .vahb-v65-hero{
  font-family:var(--vahb-font-ui,"Segoe UI Variable","Segoe UI",Roboto,Arial,sans-serif)!important;
}
body.topic-page #topicContextLabel,
body.v150-shared-header > main.shell-wide.expense-page-main > .expense-page-head h1,
body.v150-shared-header > main.shell-wide.finance-expense-main > .expense-page-head h1,
body.v150-shared-header :is(.v27-team-head,.v22-page-head) h1,
body.vahb-photo-page .vahb-v65-title{
  font-family:var(--vahb-font-ui,"Segoe UI Variable","Segoe UI",Roboto,Arial,sans-serif)!important;
  font-size:clamp(30px,2.6vw,42px)!important;
  font-weight:800!important;
  line-height:1.12!important;
  letter-spacing:-.03em!important;
}
body.v150-shared-header > main.shell-wide.expense-page-main > .expense-page-head{
  row-gap:8px!important;
}
body.v150-shared-header > main.shell-wide.expense-page-main > .expense-page-head .eyebrow{
  margin:0!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:850!important;
  letter-spacing:.13em!important;
}
body.v150-shared-header > main.shell-wide.expense-page-main > .expense-page-head h1{margin:0!important}

/* v167: Declaraties exact op de fotobanner-lijn, zonder rechtertekst of knop. */
body.v150-shared-header:not(.v150-home) > main.shell-wide.expense-page-main{
  width:min(1600px,calc(100% - 40px))!important;
  max-width:1600px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.v150-shared-header > main.expense-page-main > .expense-page-head{
  width:100%!important;
  height:190px!important;
  min-height:190px!important;
  max-height:190px!important;
  grid-template-columns:1fr!important;
  align-content:center!important;
}
body.v150-shared-header > main.expense-page-main > .expense-page-head p{display:none!important}
.expense-list-tools{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.expense-list-tools .btn{min-height:42px;display:inline-flex;align-items:center;text-decoration:none;white-space:nowrap}
.expense-list-tools .btn.hidden{display:none!important}
@media(max-width:850px){
  body.v150-shared-header:not(.v150-home) > main.shell-wide.expense-page-main{width:calc(100% - 32px)!important}
}
@media(max-width:560px){
  body.v150-shared-header:not(.v150-home) > main.shell-wide.expense-page-main{width:calc(100% - 24px)!important}
  .expense-list-card .expense-card-head{flex-wrap:wrap}
  .expense-list-tools{width:100%;justify-content:flex-start}
}

/* v166: Declaraties-banner exact even breed en hoog als de overige fotobanners. */
body > main.shell-wide:is(.expense-page-main,.finance-expense-main){
  width:min(1600px,calc(100% - 40px))!important;
  max-width:1600px!important;
}
body > main.shell-wide:is(.expense-page-main,.finance-expense-main) > .expense-page-head{
  position:relative!important;
  height:190px!important;
  min-height:190px!important;
  max-height:190px!important;
  overflow:hidden!important;
}
body > main.shell-wide:is(.expense-page-main,.finance-expense-main) > .expense-page-head > :is(a,.finance-toolbar){
  position:absolute!important;
  right:42px!important;
  bottom:28px!important;
  margin:0!important;
}
@media(max-width:850px){
  body > main.shell-wide:is(.expense-page-main,.finance-expense-main){width:calc(100% - 32px)!important}
  body > main.shell-wide:is(.expense-page-main,.finance-expense-main) > .expense-page-head{
    height:auto!important;min-height:160px!important;max-height:none!important;overflow:visible!important;
  }
  body > main.shell-wide:is(.expense-page-main,.finance-expense-main) > .expense-page-head > :is(a,.finance-toolbar){
    position:static!important;margin-top:10px!important;
  }
}
@media(max-width:560px){body > main.shell-wide:is(.expense-page-main,.finance-expense-main){width:calc(100% - 24px)!important}}

/* v170: rustige, compacte presentatie voor de foto-diavoorstelling. */
.vahb-photo-viewer{z-index:300;padding:24px;background:transparent}
.vahb-photo-viewer-backdrop{background:rgba(6,14,33,.88);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.vahb-photo-viewer-panel{width:min(1380px,100%);height:min(900px,calc(100dvh - 48px));background:#0c172d;border:1px solid #ffffff2b;border-radius:18px;box-shadow:0 26px 90px #0009}
.vahb-photo-viewer-toolbar{flex:0 0 auto;min-height:70px;padding:12px 18px 12px 22px;background:#14213b;border-bottom:1px solid #ffffff1a}
.vahb-photo-viewer-info strong{font-size:16px;font-weight:800;letter-spacing:-.01em;color:#fff}
.vahb-photo-viewer-info span{font-size:12px;color:#a9b9d7}
.vahb-photo-viewer-actions{gap:7px;flex-wrap:nowrap}
.vahb-photo-viewer-actions :is(button,a){display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:8px 13px;border:1px solid #ffffff30;border-radius:9px;background:#ffffff0d;color:#edf3ff;font-family:inherit;font-size:12px;font-weight:700;line-height:1.2;white-space:nowrap;box-shadow:none;transition:background .15s,border-color .15s}
.vahb-photo-viewer-actions :is(button,a):hover{background:#ffffff22;border-color:#ffffff80}
.vahb-photo-viewer-actions svg,.vahb-photo-viewer-stage button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none}
.vahb-photo-viewer-actions .vahb-viewer-play-button{background:#f28c00;border-color:#f28c00;color:#10204a}
.vahb-photo-viewer-actions .vahb-viewer-play-button:hover{background:#ffab35;border-color:#ffab35}
.vahb-viewer-play-button .vahb-viewer-play-icon{fill:currentColor;stroke:none}
.vahb-viewer-play-button .vahb-viewer-pause-icon{display:none}
.vahb-viewer-play-button.is-playing .vahb-viewer-play-icon{display:none}
.vahb-viewer-play-button.is-playing .vahb-viewer-pause-icon{display:block}
.vahb-photo-viewer-actions .vahb-viewer-close{min-width:38px;padding:8px;margin-left:5px;background:#ffffff10}
.vahb-photo-viewer-stage{background:radial-gradient(ellipse at center,#1b2b48 0%,#0b1426 72%);padding:16px 68px}
.vahb-photo-viewer-stage img{max-width:100%;max-height:100%;border-radius:3px;box-shadow:0 12px 35px #0007}
.vahb-photo-viewer-stage button{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:52px;min-height:0;padding:0;border:1px solid #ffffff3d;border-radius:10px;background:#152747d9;color:#fff;box-shadow:0 6px 20px #0006;z-index:2}
.vahb-photo-viewer-stage button:hover{background:#2c4f85}
.vahb-photo-viewer-stage button svg{width:23px;height:23px}
.vahb-photo-viewer-prev{left:16px}.vahb-photo-viewer-next{right:16px}
.vahb-viewer-progress{height:3px;background:#ffffff13;flex:none}.vahb-viewer-progress span{display:block;width:100%;height:100%;background:#f28c00;transform:scaleX(0);transform-origin:left}
@keyframes vahb-viewer-progress{to{transform:scaleX(1)}}
.vahb-photo-viewer-footer{display:flex;align-items:center;gap:16px;min-height:84px;padding:10px 18px;background:#14213b;border-top:1px solid #ffffff19}
.vahb-photo-viewer-footer [data-photo-caption]{flex:1;min-width:0;color:#d9e4f7;font-size:12px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vahb-photo-viewer-thumbs{display:flex;justify-content:flex-end;gap:7px;max-width:66%;min-width:0;overflow-x:auto;scrollbar-width:thin;padding:3px 0}
.vahb-photo-viewer-thumbs button{flex:0 0 58px;width:58px;height:51px;border:2px solid transparent;border-radius:7px;padding:2px;background:#ffffff16;cursor:pointer;overflow:hidden;opacity:.68;transition:opacity .15s,border-color .15s}
.vahb-photo-viewer-thumbs button:hover,.vahb-photo-viewer-thumbs button.is-active{opacity:1}
.vahb-photo-viewer-thumbs button.is-active{border-color:#f28c00}
.vahb-photo-viewer-thumbs img{width:100%;height:100%;object-fit:cover;border-radius:3px}
.vahb-photo-viewer :is(button,a):focus-visible{outline:3px solid #f6a536;outline-offset:2px}
@media(max-width:750px){.vahb-photo-viewer{padding:8px}.vahb-photo-viewer-panel{height:calc(100dvh - 16px);border-radius:12px}.vahb-photo-viewer-toolbar{align-items:flex-start;gap:8px;min-height:0;padding:12px;flex-direction:column}.vahb-photo-viewer-actions{width:100%;justify-content:space-between;gap:5px}.vahb-photo-viewer-actions :is(button,a){min-height:35px;padding:7px 9px;font-size:11px}.vahb-photo-viewer-actions .vahb-viewer-close{margin-left:0}.vahb-photo-viewer-actions .vahb-viewer-icon-button .vahb-viewer-button-text{display:none}.vahb-photo-viewer-stage{padding:10px 43px}.vahb-photo-viewer-stage button{width:32px;height:42px}.vahb-photo-viewer-prev{left:6px}.vahb-photo-viewer-next{right:6px}.vahb-photo-viewer-footer{min-height:70px;padding:8px;gap:6px}.vahb-photo-viewer-thumbs{max-width:72%}.vahb-photo-viewer-thumbs button{flex-basis:48px;width:48px;height:43px}}
@media(max-width:420px){.vahb-photo-viewer-actions .vahb-viewer-download span{display:none}.vahb-photo-viewer-actions .vahb-viewer-play-button{flex:1}.vahb-photo-viewer-footer [data-photo-caption]:empty{display:none}.vahb-photo-viewer-thumbs{max-width:100%}}

/* v171: eigen verlofaanvragen bekijken, wijzigen en annuleren. */
.v171-leave-panel{margin:22px 0 28px;padding:22px;border:1px solid #dce7f6;border-radius:14px;background:#fff;box-shadow:0 7px 22px #173c7012;color:#142d68;font-family:var(--vahb-font-ui,"Segoe UI",Arial,sans-serif)}
.v171-leave-panel-head{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:14px;border-bottom:1px solid #e4ebf7}
.v171-leave-panel-head small,.v171-edit-head small{font-size:10px;font-weight:850;letter-spacing:.11em;color:#e68000}
.v171-leave-panel-head h3{margin:4px 0;font-size:21px;color:#142d68}.v171-leave-panel-head p{margin:0;color:#617089;font-size:12px;line-height:1.4}
.v171-leave-panel-head a{flex:none;color:#1745a0;font-size:12px;font-weight:800;text-decoration:none}
.v171-leave-list{max-height:640px;overflow:auto}.v171-leave-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:15px 2px;border-bottom:1px solid #e9eef7}.v171-leave-row:last-child{border-bottom:0}
.v171-leave-row-heading{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.v171-leave-row-heading strong{font-size:14px;color:#102c70}.v171-leave-row-info p{margin:5px 0 0;color:#69788e;font-size:12px}
.v171-leave-status{padding:5px 9px;border-radius:99px;background:#eef2fa;color:#455f8b;font-size:10px;font-weight:800}.v171-leave-status.approved{background:#e6f6ec;color:#117a41}.v171-leave-status.submitted,.v171-leave-status.in_review{background:#fff2df;color:#a35a00}.v171-leave-status.rejected,.v171-leave-status.cancelled{background:#f4edf0;color:#864254}
.v171-leave-row-actions{display:flex;gap:8px;flex:none}.v171-leave-row-actions button{border:1px solid #cedcf2;background:#f5f8fe;color:#1745a0;border-radius:8px;min-height:36px;padding:7px 11px;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.v171-leave-row-actions button:hover{background:#e7effd}.v171-leave-row-actions .v171-cancel{background:#fff;color:#a23a36;border-color:#e8c9c5}.v171-leave-row-actions .v171-cancel:hover{background:#fff3f1}.v171-leave-row-actions button:disabled{opacity:.5;cursor:wait}
.v171-leave-message,.v171-edit-error{color:#aa3030;font-size:12px;margin-top:8px}
.v171-edit-overlay{position:fixed;inset:0;z-index:400;display:grid;place-items:center;padding:18px}.v171-edit-overlay[hidden]{display:none!important}.v171-edit-backdrop{position:absolute;inset:0;background:#0b1d42ae;backdrop-filter:blur(3px)}
.v171-edit-dialog{position:relative;width:min(560px,100%);max-height:calc(100dvh - 36px);overflow:auto;background:#fff;border-radius:15px;box-shadow:0 22px 70px #101f4a4a;color:#142d68;font-family:var(--vahb-font-ui,"Segoe UI",Arial,sans-serif)}
.v171-edit-head{display:flex;justify-content:space-between;align-items:center;padding:20px 22px;border-bottom:1px solid #e2e9f5}.v171-edit-head h2{margin:4px 0 0;font-size:22px;color:#142d68}.v171-edit-head button{width:36px;height:36px;border:1px solid #dce5f3;border-radius:8px;background:#f6f8fc;color:#142d68;font-size:23px;cursor:pointer}
.v171-edit-form{display:grid;gap:14px;padding:22px}.v171-edit-form label{display:grid;gap:6px;font-size:12px;font-weight:800;color:#405271}.v171-edit-form :is(input,textarea){width:100%;border:1px solid #cad8eb;border-radius:8px;padding:10px 12px;font:inherit;font-size:14px;color:#102c70;background:#fff}.v171-edit-form textarea{resize:vertical}.v171-edit-dates{display:grid;grid-template-columns:1fr 1fr;gap:12px}.v171-edit-form p{margin:0;color:#64748b;font-size:12px;line-height:1.4}
.v171-edit-actions{display:flex;justify-content:flex-end;gap:9px}.v171-edit-actions button{min-height:40px;padding:9px 14px;border:1px solid #ccd8e8;border-radius:8px;background:#fff;color:#173d85;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.v171-edit-actions [type=submit]{background:#f28c00;border-color:#f28c00;color:#fff}.v171-edit-actions button:disabled{opacity:.5;cursor:wait}
@media(max-width:700px){.v171-leave-panel{padding:16px}.v171-leave-panel-head,.v171-leave-row{align-items:flex-start;flex-direction:column}.v171-leave-row-actions{width:100%}.v171-edit-form{padding:16px}.v171-edit-dates{grid-template-columns:1fr}}
/* v172: beheeracties delen dezelfde regel als logo en terugknop. */
body.v172-admin-page .topbar{border-bottom:1px solid #e3e9f2!important;background:#fff!important}
body.v172-admin-page .topbar-inner{width:min(1530px,calc(100% - 48px))!important;max-width:1530px!important;min-height:74px!important;height:auto!important;margin:0 auto!important;padding:9px 0!important;display:flex!important;align-items:center!important;gap:18px!important}
body.v172-admin-page .topbar-inner .brand{min-width:0!important;flex:0 1 auto!important}
body.v172-admin-page .topbar-inner .brand img{max-width:min(230px,32vw)!important;height:auto!important}
body.v172-admin-page .topbar-inner .vahb-admin-top-actions{position:static!important;inset:auto!important;float:none!important;z-index:auto!important;width:auto!important;max-width:none!important;min-height:38px!important;margin:0 0 0 auto!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:12px!important}
body.v172-admin-page .topbar-inner .vahb-admin-top-actions .vahb-admin-top-back{height:38px!important;margin:0!important;padding:0 13px!important;order:0!important}
body.v172-admin-page .topbar-inner .vahb-admin-top-actions .vahb-floating-lang,
body.v172-admin-page .topbar-inner .vahb-admin-top-actions .vahb-admin-lang-inline{position:static!important;inset:auto!important;margin:0!important;order:2!important;white-space:nowrap!important}
body.v172-admin-page .admin-wrap .tabs a.v172-leave-admin-link{display:inline-flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important;visibility:visible!important;opacity:1!important}
@media(max-width:760px){body.v172-admin-page .topbar-inner{width:calc(100% - 24px)!important;flex-wrap:wrap!important;gap:8px!important}body.v172-admin-page .topbar-inner .vahb-admin-top-actions{flex-wrap:wrap!important;gap:6px!important}body.v172-admin-page .topbar-inner .brand img{max-width:175px!important}body.v172-admin-page .topbar-inner .brand span{display:none!important}}
/* v173: leg vast waarom bijzonder verlof wel een afwezigheidsduur heeft. */
.v173-special-leave-note{margin:8px 0 0;padding:9px 12px;border:1px solid #c7e6d5;border-radius:8px;background:#effaf4;color:#196447;font-size:12px;line-height:1.45}
.v173-special-leave-note[hidden]{display:none!important}
