/* De deploybuild kopieert deze bestanden uit de gedeelde themabron. */
@import url('/assets/tokens.css');
@font-face{font-family:Inter;src:url('/assets/fonts/inter-var.woff2') format('woff2');font-weight:400 600;font-display:swap}
@font-face{font-family:Rajdhani;src:url('/assets/fonts/rajdhani-600.woff2') format('woff2');font-weight:600;font-display:swap}
:root{--p-bg:#F3F3EF;--p-panel:var(--bz-surface);--p-text:var(--bz-text-on-surface);--p-title:var(--bz-heading-on-surface);--p-accent:var(--bz-brand);--p-line:#CBD0D2;--p-focus:#1E5C8C;--p-dark:var(--bz-surface-inverse);--p-on-dark:var(--bz-text-on-ink);--p-muted-dark:#B8C5D3;--p-large-radius:20px}
*{box-sizing:border-box}body{margin:0;background:var(--p-bg);color:var(--p-text);font:14px/1.6 Inter,system-ui,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--p-focus);outline-offset:3px}[hidden]{display:none!important}.preview{text-align:center;font-size:12px;background:#E7E7DE;color:var(--p-title);padding:7px 16px}.skip{position:fixed;top:-80px;left:12px;background:white;padding:12px;z-index:100}.skip:focus{top:10px}.shell{display:grid;grid-template-columns:244px 1fr;min-height:calc(100vh - 33px)}.sidebar{background:var(--p-dark);color:var(--p-on-dark);padding:40px 22px 28px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none;font:600 25px/1 Rajdhani,sans-serif;letter-spacing:.03em}.brand small{display:block;font:10px/1.7 Inter,sans-serif;letter-spacing:.19em;margin-top:5px}.brand-mark{border:1px solid #84919E;border-radius:10px;padding:10px;font-size:28px}.nav-label{font-size:10px;letter-spacing:.13em;color:var(--p-muted-dark);margin:60px 12px 16px}.nav-item{display:flex;align-items:center;gap:12px;text-align:left;width:100%;border:0;background:none;color:var(--p-muted-dark);padding:14px 12px;border-radius:8px;margin:4px 0;font-size:13px}.nav-item span{font-size:20px}.nav-item.active{background:#27364A;color:white}.nav-item:hover{background:#223147;color:white}.sidebar-bottom{margin-top:auto;padding:80px 12px 0;font-size:9px;letter-spacing:.1em;color:var(--p-muted-dark)}.dot{display:inline-block;width:6px;height:6px;background:#CBB490;border-radius:50%;margin-right:5px}.sidebar-bottom p{font:600 21px/1.4 Rajdhani,sans-serif;color:white;letter-spacing:0}.sidebar-note{font-size:10px;letter-spacing:0}.workspace{min-width:0}.topbar{height:80px;border-bottom:1px solid var(--p-line);display:flex;align-items:center;justify-content:space-between;padding:0 48px;font-size:12px}.slash{padding:0 16px;color:var(--p-accent)}.account{display:flex;align-items:center;gap:10px;border:0;background:none;color:inherit;padding:6px;border-radius:8px}.account:hover{background:#E7E7DE}.avatar{display:grid;place-items:center;border:1px solid var(--p-line);background:var(--p-panel);width:32px;height:32px;border-radius:50%;color:var(--p-title)}main{max-width:1450px;margin:auto;padding:48px}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px}.eyebrow{font-size:10px;letter-spacing:.16em;font-weight:600;color:var(--p-accent);margin:0 0 14px}h1,h2,h3{font-family:Rajdhani,sans-serif;font-weight:600;color:var(--p-title);line-height:1.08;margin:0}h1{font-size:clamp(38px,4.2vw,62px);letter-spacing:-.03em}h2{font-size:30px;letter-spacing:-.015em}h3{font-size:22px}.intro{font-size:14px;line-height:1.75;margin:16px 0 0}.heading-number{font:600 110px/1 Rajdhani,sans-serif;color:#D2D2C7;align-self:flex-end;padding-right:20px}.heading-number span{display:block;text-align:center;font:10px Inter,sans-serif;letter-spacing:.18em;color:var(--p-text)}.form-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:28px;align-items:start}.steps{display:flex;list-style:none;padding:0;margin:0 0 24px;gap:12px}.steps li{flex:1;min-width:0}.steps button{width:100%;border:0;border-bottom:2px solid var(--p-line);background:none;text-align:left;padding:14px 0;color:var(--p-text);font-size:12px;white-space:nowrap}.steps b{font-weight:400;margin-right:10px}.steps [aria-current]{border-color:var(--p-accent);color:var(--p-accent);font-weight:600}.panel{background:var(--p-panel);border:1px solid #DFE1DA;border-radius:var(--p-large-radius);padding:32px}.section-heading{margin-bottom:28px}.section-heading p{margin:10px 0 0;font-size:13px}.section-index{float:right;font-size:10px;letter-spacing:.12em;color:var(--p-text);padding-top:8px}fieldset{border:0;padding:0;margin:0 0 28px;min-width:0}legend{font-weight:600;color:var(--p-title);font-size:12px;margin-bottom:14px}.request-kind{display:grid;grid-template-columns:1fr 1fr;gap:12px}.choice{border:1px solid var(--p-line);border-radius:10px;display:flex;align-items:flex-start;gap:8px;padding:16px;cursor:pointer}.choice:has(input:checked){border-color:var(--p-accent);background:#F6F3EE}.choice input{accent-color:var(--p-accent);margin-top:4px}.choice strong{display:block;font-size:12px;color:var(--p-title)}.choice small{display:block;font-size:10px;margin-top:4px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px 18px}label{font-size:12px;font-weight:500;color:var(--p-title)}label input:not([type=radio]):not([type=file]),label select,label textarea{display:block;width:100%;margin-top:7px;border:1px solid var(--p-line);border-radius:8px;min-height:46px;padding:11px 12px;color:var(--p-title);background:var(--p-panel);font-size:13px}input::placeholder,textarea::placeholder{color:#68717A;opacity:1;font-size:12px}.full{grid-column:1/-1}.required{color:var(--p-accent)}.optional{font-size:10px;font-weight:400;color:var(--p-text);padding-left:5px}.hint{font-size:11px;line-height:1.65;color:var(--p-text);margin:16px 0 22px}.block{display:block;margin-top:24px}.form-actions{display:flex;align-items:center;gap:12px;margin-top:22px;flex-wrap:wrap}.primary,.secondary,.text-button{border-radius:8px;min-height:44px;padding:11px 16px;font-size:12px;font-weight:600}.primary{background:var(--p-accent);color:var(--bz-text-on-brand);border:1px solid var(--p-accent);display:inline-flex;justify-content:center;align-items:center;gap:20px}.primary:hover{background:var(--bz-brand-dark)}.secondary{background:white;color:var(--p-title);border:1px solid var(--p-line)}.secondary:hover{border-color:var(--p-accent)}.text-button{background:none;border:0;color:var(--p-accent);text-decoration:underline;text-underline-offset:4px;padding-inline:0}#next{margin-left:auto}.feedback{font-size:12px;min-height:20px}.guide{margin-top:5px;border-radius:var(--p-large-radius);overflow:hidden;background:#EAECE4}.guide-top{background:var(--p-dark);color:var(--p-muted-dark);padding:28px}.guide-top .eyebrow{color:#CBB490}.guide-top h2{color:white;font-size:36px}.guide-top svg{width:100%;margin:28px 0 8px}.guide-top p{font-size:12px;line-height:1.8;margin:0}.guide-bottom{padding:24px}.guide-bottom h3{font-size:20px;line-height:1.25}.guide-bottom ul{list-style:none;padding:0;font-size:12px;line-height:1.6}.guide-bottom li{padding:10px 0;border-bottom:1px solid var(--p-line)}.guide-bottom li::before{content:'↗';color:var(--p-accent);margin-right:10px}.guide-bottom .hint{margin-bottom:0}.work-item{padding:18px;border:1px solid var(--p-line);border-radius:12px;margin-top:16px}.work-item legend{padding:0 8px}.work-item .hint{margin-bottom:0}.remove-work{font-size:11px}.upload{border:1px dashed var(--p-line);padding:32px 20px;text-align:center;border-radius:12px;background:#F8F8F5}.upload-icon{display:block;font-size:32px;color:var(--p-accent);margin-bottom:12px}.upload p{font-size:12px}.file-label{display:inline-block;padding:10px 16px;background:white;border:1px solid var(--p-line);border-radius:8px;cursor:pointer;position:relative}.file-label input{display:block;margin-top:12px;max-width:100%;font-size:11px}.upload .hint{margin-bottom:0}.file-list{padding:0;list-style:none;font-size:12px}.file-list li{display:flex;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid var(--p-line);overflow-wrap:anywhere}.file-list button{border:0;background:none;color:var(--p-accent);min-height:44px}.info{padding:16px;border:1px solid var(--p-line);border-left:3px solid var(--p-accent);border-radius:8px;font-size:12px;margin:24px 0;background:#F8F7F4}dl{display:grid;grid-template-columns:1fr 1.6fr;gap:0;margin:18px 0 28px}dt,dd{padding:10px 0;margin:0;border-bottom:1px solid var(--p-line);font-size:12px;overflow-wrap:anywhere}dd{color:var(--p-title)}.review-section{margin:24px 0}.review-section button{margin-top:8px}.empty{margin-top:30px;padding:72px 24px;text-align:center}.empty>span{font-size:36px;color:var(--p-accent)}.empty h2{margin:20px 0}.empty p{font-size:14px}.view>h1{margin-bottom:20px}footer{display:flex;justify-content:space-between;gap:16px;font-size:9px;letter-spacing:.12em;border-top:1px solid var(--p-line);margin-top:52px;padding:24px 0}footer span{letter-spacing:0;font-size:11px}#draft-card{margin-top:28px}#draft-card p{margin:12px 0 22px}.draft-list{list-style:none;padding:0;margin:0}.draft-list li{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid var(--p-line)}.draft-list li:last-child{border-bottom:0}.draft-list span{min-width:0}.draft-list strong,.draft-list small{display:block}.draft-list strong{color:var(--p-title);font:600 21px/1.25 Rajdhani,sans-serif}.draft-list small{margin-top:5px;color:var(--p-text)}
.new-draft{margin-top:20px}@media(min-width:1550px){main{padding:64px}.form-layout{grid-template-columns:minmax(0,1fr) 320px}}
@media(max-width:1150px){.shell{grid-template-columns:200px 1fr}.sidebar{padding:32px 16px}.brand{font-size:22px}.brand-mark{padding:7px}.topbar{padding:0 28px}main{padding:32px 28px}.form-layout{grid-template-columns:minmax(0,1fr)}.guide{display:none}.heading-number{font-size:90px}.nav-item{font-size:12px;gap:8px}.account{font-size:11px}}
@media(max-width:700px){.shell{display:block}.sidebar{padding:18px 20px}.brand{font-size:23px}.brand-mark{padding:7px}.nav-label,.sidebar-bottom{display:none}.sidebar nav{display:flex;gap:4px;margin-top:18px}.nav-item{font-size:11px;padding:9px 8px;justify-content:center;margin:0}.nav-item span{display:none}.topbar{height:58px;padding:0 20px;font-size:11px}.account{display:none}main{padding:28px 20px}.heading-number{display:none}h1{font-size:44px}.intro{font-size:13px}.desktop-break{display:none}.page-heading{margin-bottom:22px}.steps{gap:8px;margin-bottom:18px}.steps button{font-size:10px}.steps b{display:block;margin:0 0 4px}.panel{padding:22px 18px;border-radius:14px}.fields,.request-kind{grid-template-columns:1fr}.choice{padding:14px}.choice strong{font-size:13px}.choice small{font-size:11px}.section-index{font-size:9px}h2{font-size:28px}.form-actions{gap:8px}#save{order:3;width:100%;text-align:center}.primary,.secondary{font-size:12px;padding:11px 14px}#back{margin-right:auto}footer{font-size:8px}footer span{font-size:10px}dl{grid-template-columns:1fr 1fr}.empty{padding:36px 18px}.work-item{padding:12px}.draft-list li{align-items:stretch;flex-direction:column}.draft-list .secondary{width:100%}}
/* Login */
.login-page { min-height: 100vh; background: #f3f0e9; }
.login-shell { max-width: none; min-height: 100vh; margin: 0; padding: 0; display: grid; grid-template-columns: minmax(300px, .9fr) minmax(420px, 1.1fr); }
.login-brand { background: var(--p-dark); color: #fff; padding: clamp(2rem, 5vw, 5rem); display: flex; flex-direction: column; justify-content: space-between; gap: 4rem; }
.login-brand .brand { color: #fff; align-self: flex-start; }
.login-brand h1 { color: #fff; font-size: clamp(3rem, 6vw, 5.5rem); line-height: .9; margin: .65rem 0 1.5rem; }
.login-brand p { max-width: 34rem; color: #d9dfdf; }
.login-note { font-size: .75rem; letter-spacing: .12em; text-transform: uppercase; }
.login-card { width: min(100% - 3rem, 34rem); margin: auto; padding: clamp(2rem, 5vw, 4rem); background: #fff; border-top: 5px solid var(--p-accent); box-shadow: 0 1.5rem 5rem rgba(23,33,43,.12); }
.login-card h2 { font-size: clamp(2.25rem, 5vw, 3.75rem); line-height: 1; margin: .5rem 0 1rem; }
.login-intro { margin-bottom: 2rem; color: #56616b; }
.login-card label { display: grid; gap: .5rem; margin: 0 0 1.15rem; font-weight: 700; }
.login-card input { width: 100%; min-height: 3.25rem; border: 1px solid #aeb7bd; padding: .75rem; font: inherit; }
.login-card input:focus { outline: 3px solid rgba(73,125,145,.28); border-color: #497d91; }
.login-submit { width: 100%; justify-content: center; margin-top: .5rem; }
.captcha { min-height: 65px; margin: 1rem 0; }
.enroll { padding: 1rem; background: #edf3f3; border-left: 4px solid #497d91; }
.enroll-steps { padding-left: 1.25rem; margin: 0; }
.enroll-steps li { margin-bottom: .85rem; }
.enroll-qr { display: block; width: min(100%, 240px); height: auto; margin: 1rem auto; background: white; padding: 10px; }
.enroll .secondary { margin: .4rem 0; text-align: center; }
.enroll details { margin-top: 1rem; }
.enroll summary { cursor: pointer; font-weight: 600; }
.enroll #enroll-secret { font-family: monospace; font-size: .85rem; }
.login-card #mfa-title { font-size: clamp(2rem, 4vw, 2.75rem); }
.login-card:has(#mfa-step:not([hidden])) { margin-top: 2rem; margin-bottom: 2rem; }
.login-support { margin: 2rem 0 0; padding-top: 1.25rem; border-top: 1px solid #d9dfdf; color: #68727a; font-size: .875rem; }
@media (max-width: 760px) {
  .login-shell { grid-template-columns: 1fr; }
  .login-brand { min-height: 38vh; gap: 2rem; padding: 2rem; }
  .login-brand h1 { font-size: clamp(2.75rem, 14vw, 4.5rem); }
  .login-card { margin: -2rem auto 2rem; position: relative; width: min(100% - 2rem, 34rem); padding: 2rem; }
}
/* Mailcode: snel bij het invoerveld op een telefoon, zonder hoge merkintro. */
.email-login #code-step > .text-button { display: block; width: 100%; text-align: left; }
.email-login .login-card input[name="code"] { font-size: 1.125rem; font-variant-numeric: tabular-nums; letter-spacing: .15em; }
.email-login .remember-login { display: flex; grid-template-columns: none; align-items: flex-start; gap: .7rem; margin: .35rem 0 1rem; font-weight: 600; cursor: pointer; }
.email-login .remember-login input { width: 1.15rem; min-height: 1.15rem; height: 1.15rem; margin: .15rem 0 0; padding: 0; accent-color: var(--p-accent); flex: 0 0 auto; }
.email-login .remember-login span { line-height: 1.4; }
.email-login .remember-login small { display: block; color: #68727a; font-weight: 400; }
@media (max-width: 760px) {
  .email-login .login-brand { min-height: 0; padding: 1.25rem 2rem 3rem; gap: 0; }
  .email-login .login-brand > div, .email-login .login-note { display: none; }
  .email-login .login-card { padding: 1.75rem; }
  .email-login .login-card input { font-size: 1rem; }
}

/* Mailcode-login: gecentreerde kaart, compacte merkregel en een echte checkboxmaat. */
.email-login .login-shell {
  width: 100%;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0;
  padding: clamp(24px, 5vw, 48px) 20px;
}
.email-login .login-brand {
  width: min(100%, 560px);
  min-height: 0;
  padding: 0 0 18px;
  background: transparent;
  color: var(--p-title);
  display: block;
}
.email-login .login-brand .brand { color: var(--p-title); }
.email-login .login-brand > div,
.email-login .login-note { display: none; }
.email-login .login-card {
  width: min(100%, 560px);
  margin: 0;
  padding: clamp(32px, 6vw, 56px);
  border: 1px solid rgba(21, 34, 56, .06);
  border-top: 5px solid var(--p-accent);
  border-radius: 4px;
  box-shadow: 0 24px 70px rgba(27, 34, 43, .09);
}
.email-login .login-card h2 {
  max-width: 440px;
  margin: .5rem 0 1rem;
  font-size: clamp(2.4rem, 7vw, 3.35rem);
  line-height: 1.03;
  letter-spacing: -.045em;
}
.email-login .login-intro {
  margin: 18px 0 30px;
  color: var(--p-text);
  font-size: 1rem;
  line-height: 1.7;
}
.email-login .login-card label {
  margin-bottom: 1.15rem;
  font-weight: 600;
}
.email-login .login-card label input[name="code"],
.email-login .login-card label input[name="email"] {
  min-height: 58px;
  margin-top: 10px;
  padding: 0 16px;
  border-color: var(--p-line);
  border-radius: 9px;
  background: #fff;
  font-size: 1.1rem;
}
.email-login .login-card label input[name="code"] {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-variant-numeric: tabular-nums;
  letter-spacing: .24em;
}
.email-login .login-card label.remember-login {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin: 20px 0 26px;
  font-weight: 400;
  cursor: pointer;
}
.email-login .login-card label.remember-login input[type="checkbox"] {
  width: 19px;
  min-width: 19px;
  height: 19px;
  min-height: 19px;
  flex: 0 0 19px;
  margin: 2px 0 0;
  padding: 0;
  accent-color: var(--p-accent);
}
.email-login .remember-login span { line-height: 1.4; }
.email-login .remember-login small {
  display: block;
  margin-top: 4px;
  color: var(--p-text);
  font-size: .82rem;
  font-weight: 400;
}
.email-login .login-submit {
  min-height: 50px;
  margin-top: 0;
  border-radius: 8px;
  font-size: .94rem;
}
.email-login #code-step > .text-button {
  margin-top: 14px;
  font-size: .88rem;
  text-align: left;
}
.email-login #code-step > .text-button + .text-button { margin-top: 8px; }
.email-login .login-support {
  margin-top: 28px;
  padding-top: 22px;
  font-size: .92rem;
  line-height: 1.6;
}
@media (max-width: 480px) {
  .email-login .login-shell { padding: 20px 12px; }
  .email-login .login-card { padding: 32px 24px; }
  .email-login .login-card h2 { font-size: 2.45rem; }
  .email-login .login-intro { margin: 18px 0 28px; font-size: .95rem; }
}

.file-list strong,.file-list small{display:block}.file-list small{margin-top:5px}.file-list li>span{min-width:0}.upload select{display:block;margin:8px auto 16px;min-height:44px;max-width:100%;padding:8px;border:1px solid var(--p-line);border-radius:8px;background:var(--p-panel);color:var(--p-title)}
.upload.is-dragging{border-color:var(--route);background:var(--route-soft);box-shadow:0 0 0 3px color-mix(in srgb,var(--route) 22%,transparent)}.dropzone-hint{margin:14px 0 4px!important;color:var(--p-title)}.dropzone-hint strong{color:var(--route)}
.form-type-switcher{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 8px}.form-type{border:1px solid var(--p-line);border-radius:999px;background:var(--p-panel);color:var(--p-title);padding:10px 14px;font-size:12px;font-weight:600}.form-type:hover,.form-type.active{border-color:var(--p-accent);background:#F6F3EE;color:var(--p-accent)}.form-type-help{font-size:12px;margin:0 0 24px}.work-type{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}.offer-choice{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px;padding-top:24px;border-top:1px solid var(--p-line)}.submission-status{border:1px solid var(--p-line);border-left:3px solid var(--p-accent);border-radius:8px;background:#F8F7F4;padding:16px;margin-top:12px;font-size:12px}.submission-status p{margin:6px 0 0}.draft-filter{display:flex;align-items:center;gap:9px;padding-bottom:18px;margin-bottom:2px;border-bottom:1px solid var(--p-line);color:var(--p-title);font-weight:600}.draft-filter input{width:18px;height:18px;accent-color:var(--p-accent)}
@media(max-width:700px){.work-type,.offer-choice{grid-template-columns:1fr}}
.session-profile{padding:18px;border:1px solid var(--p-line);border-radius:12px;background:#F8F7F4;margin-bottom:28px}.session-profile h3{font-size:22px}.session-profile .hint{margin-bottom:14px}.session-profile input[readonly]{background:#ECEDE8;color:var(--p-title);cursor:not-allowed}.session-profile details{margin-top:18px;border-top:1px solid var(--p-line);padding-top:14px}.session-profile summary{cursor:pointer;color:var(--p-accent);font-size:12px;font-weight:600}.location-map{height:320px;border:1px solid var(--p-line);border-radius:12px;background:#DCE5E0;position:relative;overflow:hidden;margin:22px 0 0;touch-action:none;z-index:0}.location-map .leaflet-control-zoom a{color:#2b3b45}.location-map .leaflet-control-attribution{font-size:9px}.map-caption{margin:0 0 12px;background:#F8F7F4;border:1px solid var(--p-line);border-top:0;border-radius:0 0 8px 8px;padding:7px 10px;font-size:11px;color:var(--p-title)}.permit-fields{border-top:1px solid var(--p-line);padding-top:24px}.site-contact{border-top:1px solid var(--p-line);padding-top:24px}.site-contact>label{display:block;margin-bottom:18px}

/* Form route and step identities. Leaflet owns tile positioning and dimensions. */
body{--route:#75b3cf;--route-soft:#eaf4f8}body[data-form-type="concept"]{--route:#7e705e;--route-soft:#f1eee9}body[data-form-type="offerteaanvraag"]{--route:#a5cc79;--route-soft:#f0f7e9}
.form-type-switcher{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.form-type{display:flex;align-items:center;gap:12px;text-align:left;padding:18px 16px;border:1px solid #d5dcd8;border-radius:12px;position:relative;transition:background .18s,border-color .18s}.form-type span:not(.route-icon){line-height:1.4}.form-type small{display:block;font-size:11px;font-weight:400;color:#64716d;margin-top:4px}.route-icon{font-size:27px;line-height:1;background:#f0f2ed;border-radius:8px;width:40px;height:40px;display:grid;place-items:center;flex-shrink:0}.form-type.active{background:var(--route-soft);border:2px solid var(--route);padding:17px 15px;box-shadow:0 4px 16px #1d373410;color:var(--route)}.form-type.active .route-icon{background:var(--route);color:white}.form-type.active:after{content:'✓';position:absolute;top:5px;right:9px;font-size:12px}.form-type-help{color:var(--route);font-size:11px;letter-spacing:.045em;margin:14px 0 24px}.steps button[aria-current="step"]{color:var(--route);border-color:var(--route)}.steps button[aria-current="step"] b{background:var(--route);color:#fff}.heading-number{color:var(--route)}.guide-top{background:var(--route-soft)}.guide-top .eyebrow{color:var(--route)}.guide-art{background:var(--route-soft);padding:0 26px 18px}.guide-art svg{width:100%;height:125px;fill:none;stroke:var(--route);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.section-index{color:var(--route)}.primary{background:var(--route);border-color:var(--route)}.session-profile{border-left:3px solid var(--route);background:#f7f8f5}.session-profile input[readonly]{background:#fff;color:#233f36;font-weight:500;cursor:default}.location-point{min-width:0;margin-top:26px}.point-heading{display:flex;gap:12px;align-items:center}.point-heading h3{font-size:23px;margin:0}.point-heading p{font-size:11px;margin:3px 0 0}.point-badge{background:#176e79;color:white;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;font-weight:600;flex-shrink:0}.point-badge.exit{background:#b66737}.location-map{height:340px;isolation:isolate;margin-top:14px;touch-action:auto}.location-map img.leaflet-tile{max-width:none!important;max-height:none!important;width:256px;height:256px;padding:0;border:0;border-radius:0}.location-map .leaflet-pane img{box-sizing:content-box}.map-pin{background:none;border:0}.map-pin span{display:grid;place-items:center;width:34px;height:34px;background:#176e79;color:#fff;border:3px solid #fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 2px 6px #0006;font:700 15px Arial}.map-pin.exit span{background:#b66737}.profile-preview{position:relative;margin:32px 0 18px;padding:28px 8px 0;background:var(--route-soft);border-radius:12px}.profile-preview svg{width:100%;height:150px;fill:var(--route)}.ground-line{stroke:#a9bcb4;stroke-width:2}.bore-line{fill:none;stroke:var(--route);stroke-width:5}.profile-preview>span{position:absolute;top:15px;font-size:10px;letter-spacing:.09em;color:var(--route)}.profile-preview>span:last-child{right:12px}.location-point>label{display:block;margin-top:14px}#outsmart-worktype{white-space:normal;max-width:100%;font-size:13px;min-height:52px}#outsmart-worktype option{white-space:pre}.panel{min-width:0}.form-layout>div{min-width:0}[hidden]{display:none!important}
@media(min-width:1400px){body[data-form-type="concept"] .location-points{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"entry-heading exit-heading" "location-map location-map" "entry-caption exit-caption" "entry-fields exit-fields";gap:20px}.location-points .location-point{min-width:0}.location-points .location-point{display:contents}.location-points .entry-point-heading{grid-area:entry-heading}.location-points #location-map{grid-area:location-map;width:100%;height:340px;margin-top:0}.location-points .entry-map-caption{grid-area:entry-caption}.location-points .exit-point-heading{grid-area:exit-heading}.location-points .exit-map-caption{grid-area:exit-caption}.location-points .entry-coordinate-fields{grid-area:entry-fields;margin:0}.location-points .exit-coordinate-fields{grid-area:exit-fields;margin:0}}
@media(max-width:700px){.form-type-switcher{grid-template-columns:1fr}.form-type{padding:13px 15px}.form-type.active{padding:12px 14px}.form-type small{font-size:11px}.location-map{height:310px}.heading-number{font-size:64px}#outsmart-worktype{font-size:11px}}

.guide-top h2{color:var(--route)}.guide-top p{color:#4e655f}.map-pin span b{transform:rotate(45deg)}

.profile-field-status{display:block;font-size:11px;font-weight:400;color:#675747;line-height:1.5;margin-top:6px}
.pipe-fields{margin-top:18px;border-top:1px solid var(--p-line);padding-top:14px}.pipe-fields-row{display:grid;grid-template-columns:auto repeat(4,minmax(0,1fr));align-items:end;gap:12px;padding:12px 0;border-bottom:1px solid var(--p-line)}.pipe-fields-row strong{font:600 16px/1 Rajdhani,sans-serif;color:var(--p-title);padding-bottom:13px;white-space:nowrap}.pipe-fields-row label{min-width:0}.pe-delivery-note{display:block;margin-top:6px;color:#7b3f2c;font-size:10px;line-height:1.4}.concept-distance{margin:18px 0 0;padding:18px 20px;border:2px solid #4f463c;border-radius:10px;background:#6f6254;color:#fff;font:600 26px/1.2 Rajdhani,sans-serif;box-shadow:0 5px 15px #352f2926}.concept-distance::before{content:'BEREKENDE TRACÉAFSTAND';display:block;margin-bottom:6px;font:600 10px/1.3 Inter,sans-serif;letter-spacing:.11em;color:#fff}
.submit-progress{margin-top:18px;padding:16px;border:1px solid var(--p-line);border-radius:10px;background:#f8f7f4}.progress-track{height:4px;overflow:hidden;border-radius:4px;background:#dfe3df}.progress-track span{display:block;width:35%;height:100%;background:var(--route);animation:progress-move 1.4s ease-in-out infinite}.submit-progress ol{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;list-style:none;padding:0;margin:14px 0 8px}.submit-progress li{font-size:10px;color:#6c7470}.submit-progress li::before{content:'○';margin-right:5px}.submit-progress li.done,.submit-progress li.active{color:var(--p-title);font-weight:600}.submit-progress li.done::before{content:'✓';color:var(--route)}.submit-progress li.active::before{content:'●';color:var(--route)}.submit-progress p{margin:7px 0 0;font-size:11px}.submission-dialog{width:min(92vw,520px);border:0;border-top:5px solid var(--route);border-radius:12px;padding:0;box-shadow:0 24px 80px #16201955}.submission-dialog::backdrop{background:#17221fbf}.submission-dialog form{padding:30px;position:relative}.submission-dialog strong{display:block;padding-right:30px;font:600 28px/1.1 Rajdhani,sans-serif;color:var(--p-title)}.submission-dialog p{line-height:1.7;margin:14px 0 22px}.dialog-close{position:absolute;right:14px;top:12px;border:0;background:none;font-size:26px;color:var(--p-text)}
.concept-distance-review{grid-column:1/-1;border:2px solid #4f463c;border-radius:10px;background:#6f6254;color:#fff;padding:14px 18px;font:600 24px/1.2 Rajdhani,sans-serif}.concept-distance-review::before{content:'BEREKENDE TRACÉAFSTAND';display:block;margin-bottom:4px;font:600 9px/1.3 Inter,sans-serif;letter-spacing:.11em}
@keyframes progress-move{0%{transform:translateX(-110%)}50%{transform:translateX(160%)}100%{transform:translateX(310%)}}
.address-derived{grid-column:1/-1;margin:-8px 0 0;color:var(--p-text);font-size:11px}
@media(max-width:700px){.pipe-fields-row{grid-template-columns:1fr 1fr}.pipe-fields-row strong{grid-column:1/-1;padding-bottom:0}.submit-progress ol{grid-template-columns:1fr 1fr}.submission-dialog form{padding:24px}}

.location-points{padding-top:32px}
.field-note{display:block;margin-top:6px;color:var(--p-text);font-size:10px;font-weight:400}
.concept-overview{margin-top:28px;border-left:4px solid var(--p-accent)}
.concept-overview h2,#draft-card h2{margin-bottom:8px}
.concept-customer{font-weight:600;color:var(--p-title)}
#draft-card{margin-top:18px}
.draft-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 12px;padding-bottom:16px;border-bottom:1px solid var(--p-line)}
.draft-tabs button[aria-pressed="true"]{background:var(--p-dark);border-color:var(--p-dark);color:#fff}
.draft-loading{padding:20px 0;color:var(--p-text)}
.draft-list li.draft-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:16px 14px;border:1px solid #e1e3dd;border-radius:10px;margin:10px 0;background:#fff}
.draft-list li.draft-row:nth-child(even){background:#fafaf7}
.draft-list .draft-row strong{font-size:19px}
.draft-list .draft-row small{font-size:11px;line-height:1.5}
.draft-list .draft-row .draft-explanation{grid-column:1/-1;margin:0;padding-top:2px;color:#485463;font-size:11px;line-height:1.5}
.draft-list li.draft-empty{padding:24px 12px;border:1px dashed var(--p-line);border-radius:10px;color:var(--p-text);text-align:center}
.draft-more{display:block;margin:18px auto 0;min-width:210px}
@media(max-width:700px){.draft-list li.draft-row{grid-template-columns:minmax(0,1fr);gap:8px}.draft-list .draft-row .secondary{width:100%}.draft-tabs button{flex:1}}

/* Aanvraag: herhaalbare locaties, adreskeuze en tracépunten. */
.location-count-field{margin:0 0 22px;max-width:480px}
.location-card{min-width:0;margin:18px 0 26px;padding:20px;border:1px solid var(--p-line);border-radius:14px;background:#fff}
.location-card>legend{padding:0 9px;color:var(--p-title);font:600 23px Rajdhani,sans-serif}
.location-address-fields{margin:8px 0 14px}
.address-suggestions{grid-column:1/-1;z-index:2;margin:-9px 0 10px;max-height:290px;overflow-y:auto;border:1px solid var(--p-line);border-radius:9px;background:#fff;box-shadow:0 10px 26px #172c2926}
.address-suggestions[hidden]{display:none}
.address-suggestions [role="option"]{display:block;width:100%;padding:11px 15px;border:0;border-bottom:1px solid #e4e9e8;border-radius:0;background:#fff;color:var(--p-title);text-align:left;line-height:1.35;cursor:pointer}
.address-suggestions [role="option"]:last-child{border-bottom:0}
.address-suggestions [role="option"]:hover,.address-suggestions [role="option"]:focus{background:#edf6f4}
.address-suggestions [role="option"] span{display:block;font-weight:650}
.address-suggestions [role="option"] small{display:block;margin-top:3px;color:#52636b;font-size:11px}
.address-suggestion-status{margin:0;padding:12px 15px;color:#52636b;font-size:12px}
.location-map-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0 8px;color:var(--p-title)}
.location-map-toolbar strong{font-size:13px}
.map-layer-switch{display:inline-flex;overflow:hidden;border:1px solid var(--p-line);border-radius:8px;background:#fff}
.map-layer-switch button{padding:6px 11px;border:0;border-left:1px solid var(--p-line);background:#fff;color:var(--p-title);font-size:12px}
.map-layer-switch button:first-child{border-left:0}
.map-layer-switch button[aria-pressed="true"]{background:var(--p-focus);color:#fff}
.location-card-map{width:100%;height:360px;margin-top:0;border-radius:10px 10px 0 0;background:#e7eeeb}
.location-card .map-caption{margin:0 0 16px}
.location-meta-fields{margin:18px 0}
.location-zinkers{display:grid;gap:14px}
.zinker-card{min-width:0;margin:6px 0;padding:18px;border:1px solid #dce1dc;border-left:4px solid var(--route);border-radius:9px}
.zinker-card>legend{padding:0 6px;color:var(--route);font:600 20px Rajdhani,sans-serif}
.zinker-points{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;margin:18px 0}
.point-pair{padding:14px;border-radius:8px;background:var(--route-soft)}
.point-pair h4{margin:0 0 8px;color:var(--route);font:600 17px Rajdhani,sans-serif}
.point-pair button{margin-bottom:8px;padding:8px 10px;border:1px solid var(--route);border-radius:6px;background:#fff;color:var(--route);font-size:11px}
.point-pair button[aria-pressed="true"]{background:var(--route);color:#fff}
.zinker-card .pipe-fields-row{margin-top:12px}
.location-meta-fields>label{grid-column:1/-1;max-width:480px}
@media(max-width:700px){.location-card{padding:15px}.location-card-map{height:300px}.location-map-toolbar{flex-wrap:wrap}.zinker-points{grid-template-columns:1fr}}

@media(min-width:701px){body[data-form-type="concept"] .location-points #location-map{height:560px}}

/* Werkbonnen & planning: afzonderlijk klantoverzicht. */
.workorder-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 15px;border-bottom:1px solid var(--p-line)}
.workorder-tab{position:relative;min-height:42px;padding:9px 14px;border:0;border-radius:8px 8px 0 0;background:transparent;color:#536469;font:600 13px Inter,sans-serif;cursor:pointer}
.workorder-tab[aria-selected="true"]{background:#eaf1ed;color:var(--p-title)}
.workorder-tab[aria-selected="true"]::after{position:absolute;right:0;bottom:-1px;left:0;height:3px;background:var(--route);content:""}
.workorder-tab:focus-visible{outline:3px solid var(--route);outline-offset:2px}
.workorder-table{overflow-x:auto;border:1px solid var(--p-line);border-radius:12px;background:#fff}
.workorder-table-head,.workorder-row{display:grid;grid-template-columns:minmax(135px,.95fr) minmax(170px,1.5fr) minmax(150px,1.5fr) minmax(145px,1.2fr) minmax(95px,.8fr) minmax(115px,1fr) minmax(135px,1fr);align-items:center;gap:14px;padding:14px 18px;min-width:1040px}
.workorder-table-head{background:#f2f5f3;color:#4d5f63;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.workorder-table.requests .workorder-table-head,.workorder-table.requests .workorder-row{grid-template-columns:minmax(140px,1fr) minmax(210px,1.7fr) minmax(180px,1.7fr) minmax(145px,1.2fr) minmax(145px,1.2fr);min-width:880px}
.workorder-table.archive .workorder-table-head,.workorder-table.archive .workorder-row{grid-template-columns:minmax(150px,.95fr) minmax(220px,1.6fr) minmax(180px,1.4fr);min-width:650px}
.workorder-row{width:100%;border:0;border-top:1px solid #e5eae7;border-radius:0;background:#fff;color:var(--p-title);text-align:left;cursor:pointer}
.workorder-row:hover,.workorder-row:focus-visible{background:#f6faf8}
.workorder-row>*::before{display:none}
.workorder-number{color:var(--p-title);font:600 18px Rajdhani,sans-serif}
.workorder-description,.workorder-crew,.workorder-status{color:#43565b;font-size:13px;line-height:1.45}
.workorder-memo{color:#596b6f;font-size:12px;line-height:1.4;overflow-wrap:anywhere}
.workorder-planning{font-size:12px;font-weight:650;line-height:1.45}
.workorder-planning.scheduled{color:#16644d}
.workorder-planning.unplanned{color:#8a5b12}
.workorder-detail-dialog{width:min(1040px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);margin:auto;padding:0;overflow:hidden;border:1px solid var(--p-line);border-radius:16px;background:#fff;color:var(--p-title);box-shadow:0 24px 80px #101f1d40}
.workorder-detail-dialog::backdrop{background:#12232180;backdrop-filter:blur(2px)}
.workorder-detail-dialog form{position:relative;width:100%;max-width:100%;max-height:calc(100dvh - 24px);box-sizing:border-box;overflow-x:hidden;overflow-y:auto;padding:28px;scrollbar-width:none}
.workorder-detail-dialog form::-webkit-scrollbar{display:none;width:0;height:0}
.workorder-detail-dialog h2{margin:0 50px 22px 0;color:var(--p-title);font:600 30px Rajdhani,sans-serif}
.workorder-detail-content{display:grid;min-width:0;gap:22px}
.workorder-detail-summary{display:grid;gap:10px;padding:16px;border-radius:10px;background:#f4f7f5}
.workorder-detail-field{display:grid;grid-template-columns:minmax(100px,.8fr) minmax(0,2fr);gap:12px;font-size:13px;line-height:1.5}
.workorder-detail-label{color:#607075;font-weight:600}
.workorder-detail-value{white-space:pre-wrap;overflow-wrap:anywhere}
.workorder-documents h3{margin:0 0 12px;color:var(--p-title);font:600 21px Rajdhani,sans-serif}
.workorder-document-list{display:grid;gap:9px;margin:0;padding:0;list-style:none}
.workorder-document-item{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:13px 15px;border:1px solid var(--p-line);border-radius:9px;background:#fff;min-width:0;box-sizing:border-box}
.workorder-document-item>div{display:grid;gap:4px}
.workorder-document-status{color:#607075;font-size:12px}
.workorder-document-item.missing .workorder-document-status{color:#a64b32}
.workorder-document-item.needs_review .workorder-document-status,.workorder-document-item.needs_classification .workorder-document-status{color:#8a5b12}
.workorder-upload-button:disabled{opacity:.55;cursor:not-allowed}
.workorder-document-note{color:#735318;font-size:12px;line-height:1.5}
.workorder-document-info{flex:1 1 240px;min-width:0;display:grid;gap:4px}
.workorder-document-heading{display:flex;align-items:center;gap:8px}
.workorder-agent-icon{display:inline-flex;flex:0 0 19px;width:19px;height:19px;align-items:center;justify-content:center;border-radius:50%;background:#e3f3e9;color:#14714c;font:700 12px Inter,sans-serif}
.workorder-agent-icon.missing,.workorder-agent-icon.mismatch,.workorder-agent-icon.expired{background:#fae8e2;color:#a43825}
.workorder-agent-icon.needs_review,.workorder-agent-icon.needs_classification,.workorder-agent-icon.optional{background:#fff1d6;color:#88580e}
.workorder-document-filename{color:#43565b;font-size:12px;line-height:1.4;overflow-wrap:anywhere}
.workorder-matched-file{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:7px 10px;flex:1 1 100%;min-width:0;padding:8px 10px;border-radius:7px;background:#f6f8f6}
.workorder-matched-file>.workorder-open-document{grid-column:2;grid-row:1}
.workorder-matched-file>.workorder-agent-review,.workorder-matched-file>.workorder-agent-controls{grid-column:1/-1}
.workorder-agent-review{display:grid;gap:6px;min-width:0;padding:10px;border-radius:7px;background:#f5f7f5;font-size:12px;line-height:1.4;overflow-wrap:anywhere}
.workorder-agent-review.ok{border-left:3px solid #27845e}.workorder-agent-review.review{border-left:3px solid #c28a22}.workorder-agent-review.mismatch{border-left:3px solid #b3442d}
.workorder-agent-metadata,.workorder-agent-note{color:#607075;font-size:11px;line-height:1.45;overflow-wrap:anywhere}
.workorder-agent-finding{display:grid;grid-template-columns:19px minmax(0,1fr);align-items:start;gap:7px}
.workorder-agent-finding>span:last-child{display:grid;gap:3px}.workorder-agent-finding small{color:#68777b;font-size:11px;overflow-wrap:anywhere}
.workorder-agent-controls{display:flex;align-items:flex-start;flex-wrap:wrap;gap:8px;min-width:0}
.workorder-agent-correction{flex:1 1 260px;min-width:0;color:#536469;font-size:12px}
.workorder-agent-correction summary,.workorder-agent-archive summary{cursor:pointer;font-weight:650}
.workorder-agent-correction-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}
.workorder-agent-correction-fields .workorder-document-type,.workorder-agent-correction-fields .workorder-document-correction-note,.workorder-agent-correction-fields button{grid-column:1/-1;max-width:none}
.workorder-document-correction-note{width:100%;box-sizing:border-box;padding:8px 10px;border:1px solid var(--p-line);border-radius:7px;background:#fff;color:var(--p-title);font:inherit;font-size:12px;resize:vertical}
.workorder-agent-archive{display:grid;gap:10px;padding:13px 15px;border:1px solid var(--p-line);border-radius:9px;background:#f8faf8;color:#536469;font-size:13px}
.workorder-agent-archive-list{display:grid;gap:8px;min-width:0}
.workorder-agent-archive-record{display:grid;gap:4px;padding:10px;border-radius:7px;background:#fff;overflow-wrap:anywhere;font-size:12px}
.workorder-agent-archive-record>small{color:#607075;line-height:1.4}
.workorder-document-metadata{max-width:190px;min-height:38px;padding:8px 10px;border:1px solid var(--p-line);border-radius:7px;background:#fff;color:var(--p-title);font:inherit;font-size:12px}
.workorder-document-metadata[hidden]{display:none}
.workorder-document-type{min-height:38px;max-width:220px;padding:7px 9px;border:1px solid var(--p-line);border-radius:7px;background:#fff;color:var(--p-title);font:inherit;font-size:12px}
.workorder-open-document{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 12px;border:1px solid var(--p-line);border-radius:7px;color:var(--p-title);font-size:12px;text-decoration:none}
.workorder-open-document:hover,.workorder-open-document:focus-visible{background:#f3f7f5}
.workorder-document-item.expired .workorder-document-status{color:#a64b32}
@media(max-width:760px){.workorder-table-head{display:none}.workorder-row{min-width:0;grid-template-columns:1fr 1fr;gap:7px 14px;padding:15px}.workorder-table.archive .workorder-row,.workorder-table.requests .workorder-row{min-width:0;grid-template-columns:1fr 1fr}.workorder-number,.workorder-description,.workorder-row>span{grid-column:1/-1}.workorder-row>*::before{display:block;margin-bottom:2px;color:#607075;font:600 10px Inter,sans-serif;letter-spacing:.04em;text-transform:uppercase;content:attr(data-label)}.workorder-detail-dialog form{padding:22px 17px}.workorder-detail-dialog h2{font-size:27px}.workorder-detail-field{grid-template-columns:1fr;gap:2px}.workorder-document-item{align-items:flex-start}.workorder-matched-file{grid-template-columns:minmax(0,1fr) auto}.workorder-agent-correction-fields{grid-template-columns:1fr}}

/* Dossier readiness with status and reasons on narrow screens. */
.workorder-dossier-overview { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 20px 0; }
.workorder-dossier-overview > h4, .workorder-dossier-overview > p { grid-column: 1 / -1; }
.workorder-dossier-group { padding: 14px; border: 1px solid #d6e1e8; border-radius: 10px; background: #f5f8fa; }
.workorder-dossier-group.missing { border-left: 4px solid #b74b39; }
.workorder-dossier-group.review { border-left: 4px solid #bd8200; }
.workorder-dossier-group.present { border-left: 4px solid #248459; }
.workorder-dossier-group ul { padding-left: 18px; margin-bottom: 0; }
.workorder-dossier-group li { margin: 8px 0; }
@media (max-width: 620px) { .workorder-dossier-overview { grid-template-columns: 1fr; } }

.workorder-action-summary { display: block; margin-top: .35rem; font-weight: 400; }

.workorder-messages { margin-top: 1.5rem; padding: 1rem; border: 1px solid var(--border, #ddd); }
.workorder-message { padding: .75rem 0; border-bottom: 1px solid #ddd; }
.workorder-message-body { white-space: pre-wrap; overflow-wrap: anywhere; }
.workorder-message-input { display: block; width: 100%; min-height: 6rem; margin: .5rem 0; }
.workorder-message-attachment { display: flex; gap: .5rem; padding: .3rem 0; overflow-wrap: anywhere; }

/* Compact dossier: one status per requirement, details only on request. */
.workorder-dossier-counts{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.workorder-dossier-counts span{padding:5px 10px;border-radius:16px;font-size:13px;background:#eef3f5}
.workorder-dossier-counts .present{color:#176543;background:#e8f5ed}
.workorder-dossier-counts .missing{color:#a33527;background:#fff0ed}
.workorder-dossier-counts .review{color:#825600;background:#fff5db}
.workorder-dossier-row{list-style:none;border:1px solid #dbe3e7;border-radius:9px;background:white;overflow:hidden}
.workorder-dossier-row.present{border-left:4px solid #228459}
.workorder-dossier-row.missing,.workorder-dossier-row.mismatch,.workorder-dossier-row.expired{border-left:4px solid #b74b39}
.workorder-dossier-summary{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:13px 15px;cursor:pointer;min-height:44px;box-sizing:border-box}
.workorder-dossier-summary::before{content:'▸';color:#64757c}
.workorder-dossier-details[open]>.workorder-dossier-summary::before{content:'▾'}
.workorder-dossier-summary strong{min-width:155px;flex:1}
.workorder-dossier-state{font-size:13px;color:#53656e}
.workorder-dossier-file-count{font-size:12px;color:#697a83}
.workorder-dossier-icon{font-weight:700;width:24px;height:24px;display:grid;place-items:center;background:#fff3dc;border-radius:50%;color:#825600}
.workorder-dossier-icon.present{color:#176543;background:#e8f5ed}
.workorder-dossier-icon.missing,.workorder-dossier-icon.mismatch,.workorder-dossier-icon.expired{color:#a33527;background:#fff0ed}
.workorder-dossier-body{border:0;border-top:1px solid #e5ebee;border-radius:0;display:block;padding:16px}
.workorder-dossier-body>*{margin-bottom:10px}
.workorder-dossier-body>.workorder-document-info{display:grid;gap:8px}
.workorder-existing-documents,.workorder-dossier-settings{border:1px solid #dbe3e7;border-radius:9px;padding:12px;margin:12px 0}
.workorder-existing-documents>summary,.workorder-dossier-settings>summary{cursor:pointer;font-weight:600}
.workorder-download-document{font-size:12px;color:#516772}
.workorder-trace-confirmation{display:flex;gap:9px;align-items:flex-start;grid-column:1/-1}
@media(max-width:620px){.workorder-dossier-summary strong{min-width:0}.workorder-dossier-state{flex-basis:calc(100% - 70px);margin-left:45px}.workorder-dossier-summary .workorder-open-document{margin-left:45px}}

.workorder-agent-icon.info{background:#edf1f3;color:#596970}

/* Projectberichten: compacte invoer en bijlagen naast hun selectievak. */
.workorder-messages { border: 1px solid var(--p-line, #d6dfe2); border-radius: 12px; padding: 1.25rem; background: var(--p-panel, #fff); }
.workorder-messages h3 { margin: 0 0 .4rem; }
.workorder-message-intro { color: var(--p-muted, #596c74); font-size: .9rem; margin: .4rem 0 1rem; }
.workorder-messages .workorder-document-note { color: var(--p-muted, #596c74); font-size: .9rem; margin: .75rem 0; }
.workorder-messages .workorder-message-label { display: block; margin-top: 1rem; font-weight: 600; }
.workorder-messages label textarea.workorder-message-input { min-height: 6rem; resize: vertical; font-size: 1rem; }
.workorder-message-attachments { margin: .75rem 0 1rem; border: 1px solid var(--p-line, #d6dfe2); border-radius: 8px; padding: .75rem; }
.workorder-message-attachments summary { cursor: pointer; font-weight: 600; }
.workorder-message-attachments .workorder-message-intro { margin: .75rem 0 .5rem; }
.workorder-messages label.workorder-message-attachment { display: flex; align-items: flex-start; gap: .65rem; margin: 0; padding: .65rem .25rem; font-weight: 400; border-top: 1px solid var(--p-line, #d6dfe2); }
.workorder-messages label.workorder-message-attachment input[type=checkbox] { display: block; flex: 0 0 18px; width: 18px; height: 18px; min-height: 18px; padding: 0; margin: .15rem 0 0; border-radius: 3px; accent-color: var(--p-accent, #007f65); }
.workorder-message-attachment span { min-width: 0; overflow-wrap: anywhere; font-size: .9rem; line-height: 1.5; }
.workorder-messages .workorder-message-send { width: auto; margin-top: .5rem; }
.workorder-message a { display: block; overflow-wrap: anywhere; margin-top: .4rem; }
@media(max-width: 600px) { .workorder-messages { padding: 1rem; } .workorder-messages .workorder-message-send { width: 100%; } }

/* Documentadvies blijft scanbaar; details zijn op verzoek beschikbaar. */
.hermes-reviews { margin: 1rem 0; }
.hermes-review-card { border: 1px solid #d6dfe1; border-radius: .5rem; padding: .8rem; margin: .6rem 0; overflow-wrap: anywhere; }
.hermes-review-card > summary { cursor: pointer; font-weight: 600; }
.hermes-review-action, .hermes-review-questions { margin: .6rem 0; padding: .6rem; background: #f5f8f7; border-radius: .3rem; }
.hermes-review-action > summary, .hermes-review-questions > summary { cursor: pointer; }
