/* Focused document workspace — loaded last so the builder stays calm and legible. */
body.sla-generator-page{
  --bg:#eef3f2;--surface:#ffffff;--surface-raised:#f7faf9;--border:#d7e2e1;--border-strong:#bdd0cf;
  --text:#10262d;--text-muted:#667d83;--amber:#d99332;--amber-deep:#af6d18;--amber-dim:#fff2dc;
  --blue:#0785a2;--blue-deep:#07596c;--blue-dim:#e6f5f7;
  background:radial-gradient(circle at 50% -10%,#fff 0,#f6f9f8 34%,#edf2f1 72%);color:var(--text)
}
body.sla-generator-page main#flowBuild{max-width:1480px;margin:2rem auto 0;grid-template-columns:270px minmax(0,1fr);gap:1.25rem 1.5rem;align-items:start}
.workspace-intro{grid-column:1/-1;display:flex;align-items:end;justify-content:space-between;gap:2rem;padding:.25rem .2rem .85rem;border-bottom:1px solid #d5e0df}
.workspace-intro .workspace-kicker{margin:0 0 .35rem;color:var(--blue);font:700 11px var(--mono);letter-spacing:.1em;text-transform:uppercase}
.workspace-intro h2{margin:0;font-size:clamp(24px,2.4vw,36px);letter-spacing:-.035em}.workspace-intro p{margin:.4rem 0 0;color:var(--text-muted);font-size:13px}
.workspace-doc-badge{display:flex;align-items:center;gap:.65rem;max-width:440px;padding:.75rem 1rem;border:1px solid #cfe0df;border-radius:16px;background:rgba(255,255,255,.9);box-shadow:0 10px 30px -24px #183c43;font-size:11px;color:var(--text-muted)}
.workspace-doc-badge::before{content:'';width:9px;height:9px;border-radius:50%;background:var(--amber);box-shadow:0 0 0 5px var(--amber-dim)}.workspace-doc-badge strong{color:var(--text)}
.workspace-doc-badge strong,.workspace-doc-badge small{display:block}.workspace-doc-badge strong{font-size:13px;margin-bottom:.15rem}.workspace-doc-badge small{max-width:330px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#789095}

body.sla-generator-page .wizard-sidebar{top:1rem;max-height:calc(100vh - 2rem);padding:1.15rem;border:0;border-radius:24px;background:linear-gradient(180deg,#0b2931,#071c22);box-shadow:0 32px 80px -38px rgba(3,29,36,.75);color:#fff;overflow-y:auto}
.wizard-sidebar::before{content:'DOCUMENTROUTE';display:block;margin:0 .25rem 1rem;color:#65c7ce;font:700 10px var(--mono);letter-spacing:.16em}
.wsb-section{padding:.18rem 0}.wsb-section-title{display:grid;grid-template-columns:28px 1fr auto;gap:.55rem;padding:.72rem .65rem;color:#8eaaaf;font-size:12px;border-radius:12px}.section-number{font:600 10px var(--mono);color:#55767c}.section-name{min-width:0}.section-count{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:rgba(255,255,255,.06);font:600 9px var(--mono);color:#78979d}.wsb-section.active .wsb-section-title{background:rgba(84,214,210,.11);color:#fff}.wsb-section.active .section-number{color:#65d7dc}.wsb-section.done .section-name{color:#78979d}.wsb-section.done .section-number{color:#3b9aaa}
.wsb-items{display:none;margin:0;padding:.4rem 0 .35rem 2.05rem;border:0}.wsb-section.active .wsb-items{display:block}.wsb-items li{display:none}.wsb-items li.current{display:block}.wsb-items li.current button{position:relative;padding:.8rem .85rem;border-radius:12px;background:#fff;color:#10262d;box-shadow:0 12px 28px -18px #000;font-size:12px;font-weight:700}.wsb-items li.current button::after{content:'HUIDIGE STAP';position:absolute;right:.7rem;top:.42rem;color:var(--amber);font:700 8px var(--mono);letter-spacing:.08em}.wsb-items li.current .wsb-check{margin-top:1rem;background:var(--amber);border-color:var(--amber)}.wsb-check{width:13px;height:13px}.wsb-items li.is-complete .wsb-check{background:var(--blue);border-color:var(--blue)}

.form-col{min-width:0;grid-column:2}.form-col>.panel{min-height:310px;padding:2rem;border:1px solid #d9e4e3!important;border-radius:22px;background:#fff!important;box-shadow:0 28px 75px -48px #12343c;overflow:visible}.form-col>.panel::before{height:4px;border-radius:22px 22px 0 0;background:linear-gradient(90deg,var(--blue),#58b5ba 52%,var(--amber));opacity:1}.form-col>.panel h2{display:flex;align-items:center;gap:.65rem;margin:0 0 1.45rem!important;color:#10262d!important;font-size:27px;letter-spacing:-.035em}.form-col>.panel h2::before{content:'';width:11px;height:11px;border:4px solid var(--amber-dim);border-radius:50%;background:var(--amber);box-sizing:content-box}.form-col>.panel .field label{color:#425d63;font-size:12px;font-weight:700;letter-spacing:.015em}.form-col>.panel input:not([type=checkbox]):not([type=radio]),.form-col>.panel select,.form-col>.panel textarea{min-height:48px;border:1px solid #cddcdb!important;border-radius:11px!important;background:#fbfdfc!important;color:#10262d!important;box-shadow:inset 0 1px 2px rgba(12,40,45,.03);transition:.18s}.form-col>.panel textarea{min-height:120px;padding-top:.8rem}.form-col>.panel input:focus,.form-col>.panel select:focus,.form-col>.panel textarea:focus{outline:0;border-color:var(--blue)!important;box-shadow:0 0 0 4px var(--blue-dim)}
.check-row{padding:1rem;border:1px solid #e0e8e7;border-radius:13px;background:#fafcfb}.check-row:has(input:checked){border-color:#f0d4ab;background:#fff8eb}.check-row input{accent-color:var(--amber)}.check-row .desc{color:#73898e}
.wizard-bottombar{position:sticky;bottom:.75rem;z-index:8;margin-top:1rem;padding:.75rem;border:1px solid #d9e3e2;border-radius:16px;background:rgba(255,255,255,.94);box-shadow:0 20px 55px -30px #18343a;backdrop-filter:blur(16px)}.wizard-bottombar .btn{min-height:44px}.wizard-step-label{color:#6c8287}.btn-text{padding:.6rem}.btn.primary{background:var(--blue)!important;border-color:var(--blue)!important;color:#fff!important;box-shadow:0 12px 28px -18px var(--blue)}.btn.primary:hover{background:var(--blue-deep)!important}

.preview-col{display:contents!important}.progress-card,.editor-card,.review-card{grid-column:2;border:1px solid #d8e3e2!important;border-radius:18px!important;background:rgba(255,255,255,.92)!important;box-shadow:0 24px 65px -46px #102f36!important}.progress-card{padding:1.15rem 1.25rem}.progress-card-top{font-family:var(--sans);font-size:12px}.progress-card-top span:first-child{font-weight:700;color:#354f55}.progress-card-top span:last-child{color:var(--amber)}.wizard-track{height:7px;background:#e8f0ef}.wizard-fill{background:linear-gradient(90deg,var(--blue),#37a9b3);box-shadow:none}.progress-card>.btn{min-height:42px;border-color:#d5e1e0;background:#fff;color:#38545b}.progress-card>.btn:hover{border-color:var(--blue);color:var(--blue)}
.editor-card{padding:1.25rem;margin-bottom:1rem}.editor-card h3{font-size:15px}.editor-card p{max-width:70ch}.editor-toolbar{gap:.4rem}.editor-toolbar .btn{background:#f8fbfa;color:#3c565c;border-color:#d5e1e0}.editor-status{padding-top:.65rem;border-top:1px solid #e4eceb;color:#7b8f93}
.doc{grid-column:1/-1;width:100%!important;max-width:none!important;min-height:900px;border:1px solid #d7e0df;border-radius:18px!important;box-shadow:0 35px 90px -55px #102e35;overflow:visible}.actions,.donate-box{grid-column:1/-1;width:100%;max-width:none}.actions{padding:.9rem;border:1px solid #d8e3e2;border-radius:16px;background:#fff;box-shadow:0 18px 45px -38px #102e35}

@media(max-width:1050px){body.sla-generator-page main#flowBuild{grid-template-columns:220px minmax(0,1fr)}.form-col,.progress-card,.editor-card,.review-card{grid-column:2}.workspace-intro{grid-column:1/-1}}
@media(max-width:820px){body.sla-generator-page main#flowBuild{grid-template-columns:1fr}.wizard-sidebar{display:none}.form-col,.progress-card,.editor-card,.review-card{grid-column:1}.workspace-intro{align-items:start;flex-direction:column}.workspace-doc-badge{max-width:100%}.form-col>.panel{padding:1.35rem}.wizard-bottombar{bottom:.35rem}.doc{min-height:680px}}

/* Design 7 — document route becomes a readable horizontal roadmap above the editor. */
body.sla-generator-page main#flowBuild{grid-template-columns:minmax(0,1fr);max-width:1480px}
body.sla-generator-page .wizard-sidebar{grid-column:1;position:relative;top:auto;display:flex;align-items:stretch;gap:.65rem;width:100%;max-height:none;padding:.75rem;border:1px solid #d6e2e1;border-radius:20px;background:#fff;box-shadow:0 22px 60px -46px #14353c;overflow-x:auto;color:#153139}
.wizard-sidebar::before{content:'JOUW DOCUMENTROUTE';display:flex;align-items:center;flex:0 0 145px;margin:0;padding:0 .65rem;border-right:1px solid #e1e9e8;color:#16899c;font:800 10px var(--mono);letter-spacing:.12em}
.wizard-sidebar .wsb-section{flex:1 0 155px;min-width:0;padding:0}
.wizard-sidebar .wsb-section-title{display:grid;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;height:100%;min-height:62px;padding:.7rem .8rem;gap:.45rem;border:1px solid transparent;border-radius:13px;background:#f6f9f8;color:#506970}
.wizard-sidebar .section-number{color:#80969a}.wizard-sidebar .section-name{font-size:11.5px;font-weight:700;line-height:1.3}.wizard-sidebar .section-count{background:#e8efee;color:#60787d}
.wizard-sidebar .wsb-section.done .wsb-section-title{background:#f1f8f7;color:#39717a}.wizard-sidebar .wsb-section.done .section-number{color:#128da0}
.wizard-sidebar .wsb-section.active{flex-basis:250px}.wizard-sidebar .wsb-section.active .wsb-section-title{height:auto;min-height:62px;border-color:#89cbd1;background:#eaf8f8;color:#0b4551;box-shadow:0 10px 26px -22px #087b8d}.wizard-sidebar .wsb-section.active .section-number{color:#0788a0}.wizard-sidebar .wsb-section.active .section-count{background:#fff;color:#0788a0}
.wizard-sidebar .wsb-items{display:none!important}.wizard-sidebar .wsb-section.active .wsb-items{display:block!important;margin:.45rem 0 0;padding:0}.wizard-sidebar .wsb-items li.current{display:block}.wizard-sidebar .wsb-items li.current button{min-height:54px;padding:.75rem .85rem;border:1px solid #efd3aa;border-radius:12px;background:#fff4e2;color:#432e10;box-shadow:none}.wizard-sidebar .wsb-items li.current button::after{position:static;display:block;margin-left:auto;content:'NU';color:#b66d16}.wizard-sidebar .wsb-items li.current .wsb-check{margin-top:0;background:#d88d2c;border-color:#d88d2c}
.form-col,.progress-card,.editor-card,.review-card{grid-column:1!important}.workspace-intro{grid-column:1}.preview-col{grid-column:1}
@media(max-width:820px){body.sla-generator-page .wizard-sidebar{display:flex!important;border-radius:16px}.wizard-sidebar::before{display:none}.wizard-sidebar .wsb-section{flex-basis:145px}.wizard-sidebar .wsb-section.active{flex-basis:230px}}

/* Design 8 — responsive front and back covers with a protected infographic zone. */
.doc>.doc-cover,.preview-modal-doc>.doc-cover{position:relative;width:100%;min-height:760px;padding:clamp(2.2rem,5vw,5.5rem)!important;border-radius:18px 18px 0 0!important;overflow:hidden;isolation:isolate;background:linear-gradient(125deg,var(--paper-ink,#102e36) 0%,#0a4e5f 62%,#116d79 100%)!important}
.doc-cover .cover-mosaic{left:auto!important;right:0!important;width:48%!important;opacity:.7;z-index:-1!important;overflow:hidden}.doc-cover .cover-mosaic::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0a4e5f 0%,transparent 35%)}.doc-cover .cover-mosaic svg{width:100%!important;height:100%!important;object-fit:cover;preserveAspectRatio:xMidYMid slice}
.doc-cover .cover-top{align-items:flex-start!important}.doc-cover .cover-doctype{max-width:42%;text-align:right;white-space:normal}.doc-cover .cover-mid{max-width:min(690px,62%)!important;margin:auto 0!important}.doc-cover .cover-title{font-size:clamp(42px,5vw,76px)!important;line-height:1.02!important;letter-spacing:-.045em!important;overflow-wrap:anywhere}.doc-cover .cover-parties{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem!important}.doc-cover .cover-bottom{font-size:12px!important}
.doc-back-cover{position:relative;display:flex;align-items:flex-end;width:100%;min-height:640px;padding:clamp(2.2rem,5vw,5.5rem);overflow:hidden;isolation:isolate;border-radius:0 0 18px 18px;background:linear-gradient(135deg,#08232b 0%,#0b3d48 62%,#0c5964 100%);color:#fff}
.back-cover-mosaic{position:absolute;inset:0 0 0 auto;width:52%;z-index:-1;opacity:.62}.back-cover-mosaic::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0b3d48 0%,transparent 42%)}.back-cover-mosaic svg{width:100%;height:100%;display:block}.back-cover-content{width:min(720px,66%)}.back-cover-eyebrow{display:block;margin-bottom:1rem;color:#6fdae0;font:700 11px var(--mono);letter-spacing:.14em;text-transform:uppercase}.back-cover-content h2{margin:0 0 1.1rem;color:#fff;font-size:clamp(34px,4.5vw,62px);line-height:1.04;letter-spacing:-.04em;overflow-wrap:anywhere}.back-cover-content>p{max-width:62ch;margin:0;color:#c6dadd;font-size:14px;line-height:1.75}.back-cover-rule{width:72px;height:4px;margin:2rem 0;background:var(--paper-accent,#dd8d37);border-radius:999px}.back-cover-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem}.back-cover-meta small,.back-cover-meta strong{display:block}.back-cover-meta small{margin-bottom:.35rem;color:#78bdc6;font:700 10px var(--mono);letter-spacing:.08em;text-transform:uppercase}.back-cover-meta strong{font-size:16px;color:#fff}.back-cover-company{margin-top:2.2rem;color:#86aeb3;font:500 10px var(--mono);letter-spacing:.05em}
@media(max-width:820px){.doc>.doc-cover,.preview-modal-doc>.doc-cover{min-height:620px;padding:2rem!important}.doc-cover .cover-mosaic{width:70%!important;opacity:.38}.doc-cover .cover-mid{max-width:88%!important}.doc-cover .cover-title{font-size:clamp(34px,10vw,54px)!important}.doc-cover .cover-parties,.back-cover-meta{grid-template-columns:1fr}.doc-back-cover{min-height:560px;padding:2rem}.back-cover-mosaic{width:82%;opacity:.32}.back-cover-content{width:92%}}
@media print{.doc-cover,.doc-back-cover{break-after:page;page-break-after:always;border-radius:0!important;min-height:250mm!important}.doc-back-cover{break-before:page;page-break-before:always}.doc-cover .cover-title{font-size:42px!important}.back-cover-content h2{font-size:38px!important}}

/* Design 9 — document owns its full content height; nothing may bleed into following blocks. */
.doc#docPreview,.preview-modal-doc{
  display:block!important;height:auto!important;max-height:none!important;min-height:0!important;
  width:100%!important;max-width:none!important;overflow:hidden!important;box-sizing:border-box!important;
  position:relative;isolation:isolate;contain:layout paint;
}
.doc#docPreview>*{position:relative;max-width:100%;box-sizing:border-box}
.doc#docPreview .doc-page,.preview-modal-doc .doc-page{width:100%;max-width:100%;overflow:hidden;box-sizing:border-box}
.doc#docPreview .doc-table,.preview-modal-doc .doc-table{width:100%!important;max-width:100%!important;table-layout:fixed;border-collapse:collapse}
.doc#docPreview .doc-table th,.doc#docPreview .doc-table td,.preview-modal-doc .doc-table th,.preview-modal-doc .doc-table td{max-width:0;overflow-wrap:anywhere;word-break:break-word;white-space:normal;vertical-align:top}
.doc#docPreview .doc-parties,.doc#docPreview .doc-sig,.doc#docPreview .back-cover-meta{min-width:0;max-width:100%}.doc#docPreview .doc-parties>*,.doc#docPreview .doc-sig>*,.doc#docPreview .back-cover-meta>*{min-width:0;overflow-wrap:anywhere}
.doc#docPreview svg,.doc#docPreview canvas,.doc#docPreview img{max-width:100%!important;height:auto}.doc#docPreview .cover-mosaic svg,.doc#docPreview .back-cover-mosaic svg{width:100%!important;height:100%!important;max-width:none!important}
.actions,.donate-box{position:relative!important;z-index:2;clear:both;margin-top:1.25rem!important;align-self:start}.donate-box{overflow:hidden!important}
@media(max-width:820px){.doc#docPreview .doc-page{padding:1.35rem}.doc#docPreview .doc-parties,.doc#docPreview .doc-sig{grid-template-columns:1fr}.doc#docPreview .doc-table{font-size:10px}}

/* Design 10 — reserve the active route card's full height before the form starts. */
body.sla-generator-page .wizard-sidebar{min-height:184px;margin-bottom:2rem!important;align-self:start;box-sizing:border-box;z-index:3}
body.sla-generator-page .form-col{position:relative;z-index:1;clear:both;margin-top:0!important}
body.sla-generator-page .form-col>.panel:first-child{margin-top:0!important}
@media(max-width:820px){body.sla-generator-page .wizard-sidebar{min-height:174px;margin-bottom:1.25rem!important}}

/* Design 11 — direct access to every individual wizard step. */
.wizard-bottombar{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;gap:1rem;align-items:center}
.wizard-jump-wrap{min-width:0}.wizard-jump-wrap .wizard-step-label{display:block;margin-bottom:.55rem;text-align:center;font-size:10px;letter-spacing:.05em;text-transform:uppercase}
.wizard-step-jumps{display:flex;align-items:center;justify-content:center;gap:.38rem;min-width:0;overflow-x:auto;padding:.18rem .25rem .4rem;scrollbar-width:thin;scrollbar-color:#c7d8d7 transparent}
.wizard-step-jumps button{position:relative;flex:0 0 34px;width:34px;height:34px;padding:0;border:1px solid #cfdcdb;border-radius:10px;background:#f7faf9;color:#627a80;font:700 11px var(--mono);cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease}
.wizard-step-jumps button:not(:last-child)::after{content:'';position:absolute;left:100%;top:50%;width:.4rem;height:1px;background:#d4e0df;pointer-events:none}
.wizard-step-jumps button:hover{z-index:1;transform:translateY(-2px);border-color:var(--blue);color:var(--blue);background:#fff;box-shadow:0 8px 20px -14px #123b43}.wizard-step-jumps button.done{border-color:#85c4ca;background:#eaf7f7;color:#087d91}.wizard-step-jumps button.current{z-index:2;border-color:var(--blue);background:var(--blue);color:#fff;box-shadow:0 0 0 4px var(--blue-dim),0 10px 24px -15px var(--blue);transform:translateY(-2px)}
@media(max-width:900px){.wizard-bottombar{grid-template-columns:auto minmax(0,1fr)}.wizard-bottombar-right{grid-column:1/-1;justify-content:flex-end}.wizard-step-jumps{justify-content:flex-start}}

/* Design 12 — contextual visual report pages for audits, KPIs and processes. */
.doc-visual-summary{width:100%;padding:clamp(2rem,5vw,5rem);box-sizing:border-box;background:#f5f8f7;color:#153139;border-bottom:1px solid #dbe6e4}.visual-summary-head{max-width:780px}.visual-summary-head>span{color:#07879b;font:800 10px var(--mono);letter-spacing:.14em;text-transform:uppercase}.visual-summary-head h2{margin:.75rem 0 .65rem;font-size:clamp(30px,4vw,54px);line-height:1.04;letter-spacing:-.045em}.visual-summary-head p{margin:0;color:#647d82;font-size:13px;line-height:1.65}.visual-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:2.3rem 0}.visual-metrics>div{padding:1.35rem;border:1px solid #d7e3e1;border-radius:16px;background:#fff;box-shadow:0 18px 45px -38px #173a41}.visual-metrics strong,.visual-metrics span{display:block}.visual-metrics strong{color:#0b7184;font-size:clamp(26px,3.5vw,44px);line-height:1}.visual-metrics span{margin-top:.45rem;color:#6a8186;font-size:11px}.visual-dashboard{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:1.5rem;align-items:center;padding:1.5rem;border-radius:20px;background:#fff;border:1px solid #d8e4e2}.visual-bars h3,.visual-process h3,.visual-trend h3{margin:0 0 1rem;font-size:14px}.visual-bar{margin:.85rem 0}.visual-bar>div{display:flex;justify-content:space-between;margin-bottom:.35rem;color:#5f777c;font-size:11px}.visual-bar b{color:#153139}.visual-bar i{display:block;height:9px;border-radius:99px;background:#e8f0ef;overflow:hidden}.visual-bar em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0787a0,#53c8c7)}.visual-donut{--score:50;display:grid;place-items:center;width:180px;aspect-ratio:1;margin:auto;border-radius:50%;background:conic-gradient(#0b879e calc(var(--score)*1%),#e2eceb 0);position:relative}.visual-donut::before{content:'';position:absolute;inset:22px;border-radius:50%;background:#fff}.visual-donut>div{position:relative;text-align:center}.visual-donut strong,.visual-donut span{display:block}.visual-donut strong{font-size:30px;color:#0b7184}.visual-donut span{color:#71858a;font-size:10px}.visual-process{margin-top:1.5rem;padding:1.5rem;border:1px solid #d8e4e2;border-radius:20px;background:#fff}.visual-process>div{display:flex;gap:.6rem}.visual-process span{flex:1;min-width:0;padding:.9rem;border-radius:12px;background:#eef6f5;color:#38585f;font-size:10px;line-height:1.35}.visual-process b{display:block;margin-bottom:.4rem;color:#0a879d;font:800 10px var(--mono)}.visual-trend{display:grid;grid-template-columns:.7fr 1.3fr;gap:2rem;align-items:center;margin-top:1.5rem;padding:1.5rem;border-radius:20px;background:#0b3039;color:#62d2d2}.visual-trend h3{color:#fff}.visual-trend p{color:#a9c3c7;font-size:11px;line-height:1.6}.visual-trend svg{width:100%;height:auto}.visual-trend path{vector-effect:non-scaling-stroke}
@media(max-width:760px){.visual-metrics{grid-template-columns:1fr}.visual-dashboard,.visual-trend{grid-template-columns:1fr}.visual-process>div{display:grid;grid-template-columns:1fr 1fr}.visual-donut{width:150px}}
@media print{.doc-visual-summary{break-after:page;page-break-after:always}.visual-trend{-webkit-print-color-adjust:exact;print-color-adjust:exact}.visual-metrics{grid-template-columns:repeat(3,1fr)}}

/* Transport & logistics generator system. */
.transport-safety-note{margin:0 0 1.2rem;padding:1rem 1.1rem;border-left:4px solid #d78a2c;border-radius:10px;background:#fff6e8;color:#67461e;font-size:12px;line-height:1.55}.transport-infographic{margin:1rem 0 2rem;padding:1.5rem;border:1px solid #d6e3e1;border-radius:20px;background:linear-gradient(145deg,#f8fbfa,#eef7f6);font-family:var(--sans)}.transport-visual-head{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.transport-visual-head small{color:#07869a;font:800 9px var(--mono);letter-spacing:.12em;text-transform:uppercase}.transport-visual-head h3{margin:.4rem 0 0;color:#11323a;font-size:20px}.transport-score{--transport-score:0;display:grid;place-items:center;width:100px;aspect-ratio:1;border-radius:50%;background:conic-gradient(#07889e calc(var(--transport-score)*1%),#dce9e7 0);position:relative}.transport-score::before{content:'';position:absolute;inset:13px;border-radius:50%;background:#fff}.transport-score strong,.transport-score span{position:relative;display:block;text-align:center}.transport-score strong{font-size:21px;color:#096f80}.transport-score span{font-size:8px;color:#74898d}.transport-vbars{margin:1.4rem 0}.transport-vbar{display:grid;grid-template-columns:minmax(120px,1fr) minmax(140px,2fr) 40px;gap:.75rem;align-items:center;margin:.55rem 0;font-size:9.5px;color:#506b70}.transport-vbar i{height:8px;border-radius:99px;background:#dde9e7;overflow:hidden}.transport-vbar em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0b879d,#52c8c6)}.transport-vbar b{font:700 9px var(--mono);color:#0b7182}.transport-flow{display:flex;gap:.55rem}.transport-flow>div{flex:1;padding:.75rem;border-radius:11px;background:#fff;border:1px solid #dce7e5}.transport-flow b,.transport-flow span{display:block}.transport-flow b{margin-bottom:.35rem;color:#d4882a;font:800 9px var(--mono)}.transport-flow span{color:#4e686e;font-size:8.5px;line-height:1.35}.transport-infographic>p{margin:1rem 0 0;color:#798d91;font-size:8.5px;font-style:italic}.gen-cluster[data-cluster="Transport & Logistiek"] .gen-cluster-title{background:linear-gradient(90deg,#0b7182,#0d95a1);color:#fff;padding:.8rem 1rem;border-radius:12px}.gen-cluster[data-cluster="Transport & Logistiek"] .gen-cluster-count{background:#fff;color:#0b7182}
@media(max-width:700px){.transport-vbar{grid-template-columns:1fr 50px}.transport-vbar i{grid-column:1/-1}.transport-flow{display:grid;grid-template-columns:1fr 1fr}}
.legal-safety-note{margin:0 0 1.2rem;padding:1rem 1.1rem;border-left:4px solid #7556a8;border-radius:10px;background:#f6f1fc;color:#45355d;font-size:12px;line-height:1.55}.gen-cluster[data-cluster="Juridische praktijk"] .gen-cluster-title{padding:.8rem 1rem;border-radius:12px;background:linear-gradient(90deg,#35284d,#7657a8);color:#fff}.gen-cluster[data-cluster="Juridische praktijk"] .gen-cluster-count{background:#fff;color:#5b407f}

/* Design 18 — familiar legal matter workspace, without imitating an official portal. */
.legal-case-workspace{margin:0 0 1rem;border:1px solid #b9c7d3;border-radius:16px;background:#fff;box-shadow:0 18px 46px -38px #193149;overflow:hidden}.legal-case-workspace[hidden]{display:none}.legal-case-head{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:.9rem;align-items:center;padding:1rem 1.15rem;background:linear-gradient(100deg,#152b40,#203e58);color:#fff}.legal-case-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.28);border-radius:8px;background:rgba(255,255,255,.08);font:700 23px Georgia,serif;color:#e5ba68}.legal-case-head span,.legal-case-state small{display:block;color:#b9cad8;font:700 8.5px var(--mono);letter-spacing:.1em;text-transform:uppercase}.legal-case-head h3{margin:.25rem 0 0;color:#fff;font-size:17px;letter-spacing:-.015em}.legal-case-head p{margin:.2rem 0 0;color:#ced9e2;font-size:9.5px}.legal-case-state{min-width:145px;padding:.6rem .75rem;border-left:1px solid rgba(255,255,255,.18)}.legal-case-state strong{display:block;margin-top:.25rem;color:#fff;font-size:11px}.legal-case-nav{display:flex;align-items:stretch;overflow-x:auto;border-bottom:1px solid #d7e0e7;background:#f3f6f8}.legal-case-nav button{position:relative;display:flex;align-items:center;gap:.45rem;min-width:110px;padding:.7rem .8rem;border:0;border-right:1px solid #d9e1e7;background:transparent;color:#526a7c;cursor:pointer;text-align:left}.legal-case-nav button>span{display:grid;place-items:center;flex:0 0 25px;width:25px;height:25px;border:1px solid #bdcad3;border-radius:5px;background:#fff;color:#486274;font:800 9px var(--mono)}.legal-case-nav button small{font-size:9px;font-weight:700}.legal-case-nav button:hover{background:#fff}.legal-case-nav button.active{background:#fff;color:#183b55;box-shadow:inset 0 -3px #d19232}.legal-case-nav button.active>span{border-color:#183b55;background:#183b55;color:#fff}.legal-case-nav button.done:not(.active)>span{border-color:#2d806a;background:#e8f4ef;color:#236d5b}.legal-case-nav button.done:not(.active)>span::after{content:'✓'}.legal-case-nav button.done:not(.active)>span{font-size:0}.legal-case-nav button.done:not(.active)>span::after{font-size:10px}.legal-case-signals{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-bottom:1px solid #e0e6eb}.legal-case-signals>div{padding:.75rem 1rem;border-right:1px solid #e0e6eb}.legal-case-signals>div:last-child{border-right:0}.legal-case-signals small,.legal-case-signals strong{display:block}.legal-case-signals small{color:#7b8d9a;font:700 8px var(--mono);letter-spacing:.07em;text-transform:uppercase}.legal-case-signals strong{margin-top:.28rem;color:#203d53;font-size:10px}.legal-case-disclaimer{margin:0;padding:.62rem 1rem;background:#fffaf0;color:#73572d;font-size:8.5px;line-height:1.5}.legal-workspace-active .step-coach{border-radius:12px;border-color:#c4d0da;background:linear-gradient(135deg,#f4f7f9,#fff)}.legal-workspace-active .step-coach-badge,.legal-workspace-active .step-coach-grid small{color:#294d67}.legal-workspace-active .step-coach-badge::before{background:#294d67}.legal-workspace-active .step-confirm.ready{border-color:#1b4b68;background:linear-gradient(135deg,#193d57,#245a78)}
@media(max-width:760px){.legal-case-head{grid-template-columns:42px 1fr}.legal-case-state{grid-column:1/-1;border-left:0;border-top:1px solid rgba(255,255,255,.18);padding:.6rem 0 0}.legal-case-signals{grid-template-columns:1fr 1fr}.legal-case-signals>div:nth-child(2){border-right:0}.legal-case-signals>div:nth-child(-n+2){border-bottom:1px solid #e0e6eb}}

/* Design 19 — official-law source drawer for verified passages. */
.legal-source-card{margin:0 0 1rem;padding:1rem 1.1rem;border:1px solid #bac8d3;border-radius:14px;background:#fff;box-shadow:0 16px 40px -36px #17364d}.legal-source-card[hidden]{display:none}.legal-source-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.legal-source-head span{color:#687f8f;font:700 8px var(--mono);letter-spacing:.09em;text-transform:uppercase}.legal-source-head h3{margin:.2rem 0 0;color:#18384f;font-size:14px}.legal-source-live{padding:.35rem .55rem;border-radius:5px;background:#edf5f1!important;color:#25705d!important}.legal-source-live::before{content:'';display:inline-block;width:6px;height:6px;margin-right:.35rem;border-radius:50%;background:#2a8b70}.legal-source-card>p{margin:.65rem 0;color:#607680;font-size:10px;line-height:1.55}.legal-source-search{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(100px,.55fr) auto;gap:.55rem;align-items:end}.legal-source-search label>span,.legal-passage-field>span{display:block;margin-bottom:.3rem;color:#5a7180;font:700 8px var(--mono);letter-spacing:.06em;text-transform:uppercase}.legal-source-search select,.legal-source-search input,.legal-passage-field textarea,.legal-source-meta input{width:100%;box-sizing:border-box;border:1px solid #c7d2da;border-radius:7px;background:#f9fbfc;color:#19394e;font:500 10px var(--sans);outline:none}.legal-source-search select,.legal-source-search input,.legal-source-meta input{height:38px;padding:0 .65rem}.legal-source-search button,.legal-source-actions button{min-height:38px;padding:.55rem .7rem;border:1px solid #aab9c4;border-radius:7px;background:#fff;color:#24475f;font:700 9px var(--sans);cursor:pointer}.legal-source-search button{background:#203f57;color:#fff;border-color:#203f57}.legal-passage-field{display:block;margin-top:.7rem}.legal-passage-field textarea{padding:.7rem;line-height:1.5;resize:vertical}.legal-source-search select:focus,.legal-source-search input:focus,.legal-passage-field textarea:focus,.legal-source-meta input:focus{border-color:#2f6687;box-shadow:0 0 0 3px rgba(47,102,135,.12);background:#fff}.legal-source-meta{display:grid;grid-template-columns:1fr auto;gap:.6rem;align-items:center;margin-top:.55rem}.legal-source-meta span{color:#667c89;font-size:8.5px}.legal-source-actions{display:flex;justify-content:flex-end;gap:.45rem;margin-top:.65rem}.legal-source-actions button.primary{border-color:#b97b26;background:#c98a31;color:#fff}.legal-source-status{margin-top:.6rem;padding-top:.55rem;border-top:1px solid #e2e8ec;color:#71838d;font-size:8.5px;line-height:1.45}
@media(max-width:760px){.legal-source-search{grid-template-columns:1fr 1fr}.legal-source-search button{grid-column:1/-1}.legal-source-meta{grid-template-columns:1fr}.legal-source-actions{display:grid;grid-template-columns:1fr}.legal-source-actions button{width:100%}}

/* Design 20 — split-screen law reader inside the generator. */
.legal-source-split{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);gap:.75rem;margin-top:.75rem}.legal-law-screen,.legal-passage-workbench{min-width:0;border:1px solid #c8d3da;border-radius:9px;background:#f7f9fa;overflow:hidden}.legal-law-screenbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;height:38px;padding:0 .75rem;border-bottom:1px solid #cbd5dc;background:#e9eef2}.legal-law-screenbar span{color:#29475b;font:800 8.5px var(--mono);letter-spacing:.08em;text-transform:uppercase}.legal-law-screenbar a{color:#5c7180;font-size:8px;text-decoration:none}.legal-law-screenbar a:hover{text-decoration:underline}.legal-law-screen iframe{display:block;width:100%;height:520px;border:0;background:#fff}.legal-passage-workbench{padding:.75rem;background:#fff}.legal-passage-workbench .legal-passage-field{margin-top:0}.legal-passage-workbench .legal-passage-field textarea{min-height:300px}.legal-passage-workbench .legal-source-meta{grid-template-columns:1fr}.legal-passage-workbench .legal-source-actions{display:grid;grid-template-columns:1fr 1fr}.legal-passage-workbench .legal-source-actions .primary{grid-column:1/-1}.legal-passage-workbench .legal-source-actions button{width:100%}
@media(max-width:1050px){.legal-source-split{grid-template-columns:1fr}.legal-law-screen iframe{height:460px}.legal-passage-workbench .legal-passage-field textarea{min-height:180px}}
.legal-law-screenbar{height:auto;min-height:42px;gap:.65rem;padding:.3rem .65rem}.legal-law-screenbar>span{white-space:nowrap}.legal-law-screenbar>div{display:flex;min-width:150px;max-width:320px;flex:1}.legal-law-screenbar input{width:100%;min-width:0;height:30px;padding:0 .55rem;border:1px solid #b9c7d0;border-radius:6px 0 0 6px;background:#fff;color:#29475b;font-size:9px;outline:none}.legal-law-screenbar button{height:30px;padding:0 .6rem;border:0;border-radius:0 6px 6px 0;background:#294d67;color:#fff;font-size:8.5px;font-weight:700;cursor:pointer}.legal-law-screenbar a{white-space:nowrap}
.legal-law-screenbar .legal-selection-copy{display:inline-flex;align-items:center;gap:.45rem;height:30px;padding:0 .65rem;border:1px solid #b77822;border-radius:6px;background:#c98a31;color:#fff;white-space:nowrap}.legal-selection-copy>span{position:relative;display:inline-block;width:13px;height:13px}.legal-selection-copy>span::before,.legal-selection-copy>span::after{content:'';position:absolute;width:8px;height:8px;border:1.5px solid currentColor;border-radius:1px}.legal-selection-copy>span::before{left:1px;top:3px}.legal-selection-copy>span::after{left:4px;top:0;background:#c98a31}.legal-selection-copy:hover{background:#ad701d}.legal-selection-copy:hover>span::after{background:#ad701d}.legal-law-hint{display:flex;align-items:center;justify-content:center;gap:.35rem;padding:.45rem .75rem;border-bottom:1px solid #e1e7eb;background:#fff9ec;color:#735326;font-size:8.5px}.legal-law-hint strong{font-weight:800}.legal-passage-field textarea.selection-received{animation:selectionReceived .7s ease}@keyframes selectionReceived{0%{box-shadow:0 0 0 0 rgba(27,126,107,.45);background:#e9f7f1}100%{box-shadow:0 0 0 8px rgba(27,126,107,0);background:#fff}}
@media(max-width:900px){.legal-law-screenbar{flex-wrap:wrap}.legal-law-screenbar>div{order:3;max-width:none;flex-basis:100%}.legal-law-screenbar .legal-selection-copy{margin-left:auto}.legal-law-hint{display:block;text-align:center}.legal-law-hint span,.legal-law-hint strong{display:block}}

/* Design 23 — readable law search and professional in-memory document editor. */
.legal-law-screenbar input#legalTextSearch{background:#fff!important;color:#111!important;-webkit-text-fill-color:#111!important;caret-color:#111!important;border-color:#aebdc7!important}.legal-law-screenbar input#legalTextSearch::placeholder{color:#68777f!important;-webkit-text-fill-color:#68777f!important;opacity:1}.editor-card{padding:0!important;overflow:hidden;border-color:#becbd4!important;border-radius:14px!important;background:#fff!important}.document-editor-head{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:.75rem;align-items:center;padding:.75rem 1rem;border-bottom:1px solid #d7e0e6;background:#f8fafc}.document-editor-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:7px;background:#2e68c7;color:#fff;font-size:19px}.document-editor-head>div:nth-child(2){min-width:0}.document-editor-head input{display:block;width:100%;max-width:420px;padding:.15rem 0;border:0;background:transparent;color:#1d3342;font:700 14px var(--sans);outline:none}.document-editor-head input:focus{box-shadow:inset 0 -2px #2e68c7}.document-editor-head>div:nth-child(2)>span{display:block;margin-top:.12rem;color:#6f828e;font-size:8.5px}.temporary-save-state{display:grid;grid-template-columns:8px auto;column-gap:.4rem;align-items:center;min-width:155px}.temporary-save-state>span{grid-row:1/3;width:8px;height:8px;border-radius:50%;background:#aebbc2}.temporary-save-state>span.saved{background:#29836e;box-shadow:0 0 0 3px rgba(41,131,110,.12)}.temporary-save-state strong,.temporary-save-state small{display:block}.temporary-save-state strong{color:#405b6d;font-size:8.5px}.temporary-save-state small{margin-top:.12rem;color:#8a989f;font-size:7.5px}.document-editor-intro{margin:0!important;padding:.55rem 1rem!important;border-bottom:1px solid #e0e6ea;background:#fff9ec;color:#6f542d!important;font-size:8.5px!important}.editor-card .editor-toolbar{align-items:center;gap:.35rem;padding:.55rem .75rem;border-bottom:1px solid #d8e0e5;background:#f4f7f9}.editor-toolbar-spacer{flex:1}.editor-card .editor-toolbar .btn{border-radius:6px;font-size:9px;padding:.45rem .6rem;box-shadow:none}.editor-card .editor-toolbar .editor-save-temp{border-color:#367562;background:#eaf5f0;color:#276552}.editor-card .editor-toolbar button:disabled{opacity:.42;cursor:not-allowed}.editor-formatbar{display:flex;align-items:center;gap:.2rem;overflow-x:auto;padding:.42rem .75rem;border-bottom:1px solid #d9e1e6;background:#eef2f5}.editor-formatbar button,.editor-formatbar select{height:30px;border:1px solid transparent;border-radius:5px;background:transparent;color:#344f60;font:600 10px var(--sans);cursor:pointer}.editor-formatbar button{min-width:30px;padding:0 .45rem}.editor-formatbar select{min-width:125px;padding:0 .5rem;border-color:#c5d0d7;background:#fff}.editor-formatbar button:hover{border-color:#bdc9d1;background:#fff}.editor-formatbar>span{width:1px;height:20px;margin:0 .25rem;background:#cbd5db;flex:0 0 1px}.editor-card .editor-status{margin:0;padding:.5rem .85rem;border-top:0;background:#fff;color:#687c88;font-size:8.5px}.doc.editor-active{outline:2px solid rgba(46,104,199,.3);outline-offset:-2px}.doc.editor-active [contenteditable],.doc.editor-active p,.doc.editor-active div{cursor:text}

#legalFindAllBtn{border-radius:0!important;background:#087d95!important}#legalFindTextBtn{border-radius:0 6px 6px 0!important;background:#496879!important}.legal-global-results{max-height:390px;overflow:auto;border-bottom:1px solid #cbd6dc;background:#fff}.legal-search-message{margin:0;padding:1rem;color:#476273;font-size:10px;text-align:center}.legal-search-loading span{display:inline-block;width:10px;height:10px;margin-right:.4rem;border:2px solid #bad5dc;border-top-color:#087d95;border-radius:50%;animation:lawSearchSpin .7s linear infinite}@keyframes lawSearchSpin{to{transform:rotate(360deg)}}.legal-search-error{color:#a14332}.legal-search-summary{position:sticky;top:0;z-index:2;display:grid;grid-template-columns:auto 1fr auto;gap:.55rem;align-items:center;padding:.65rem .8rem;border-bottom:1px solid #d8e1e6;background:#edf7f8;color:#29485a}.legal-search-summary strong{font-size:13px;color:#087d95}.legal-search-summary span{font-size:9px}.legal-search-close{width:24px;height:24px;padding:0!important;border-radius:50%!important;background:transparent!important;color:#58717e!important;font-size:18px!important}.legal-search-result-list{padding:.5rem}.legal-search-law{margin:.45rem 0;border:1px solid #d9e2e7;border-radius:8px;overflow:hidden}.legal-search-law header{display:flex;justify-content:space-between;gap:.5rem;padding:.55rem .65rem;background:#f5f8f9;color:#29495c;font-size:9px}.legal-search-law header span{font-weight:800}.legal-search-law header strong{color:#b56f19}.legal-search-hit{display:grid!important;grid-template-columns:75px 1fr!important;gap:.55rem!important;width:100%;height:auto!important;padding:.6rem .65rem!important;border:0!important;border-top:1px solid #e5eaed!important;border-radius:0!important;background:#fff!important;color:#405965!important;text-align:left!important;font-size:8.5px!important;font-weight:400!important;line-height:1.45!important}.legal-search-hit:hover{background:#fff9ed!important}.legal-search-location{color:#087d95;font-weight:800}.legal-search-law small{display:block;padding:.4rem .65rem;background:#fbfcfc;color:#71838d;font-size:7.5px}

.wizard-step-jumps button{cursor:pointer}.form-col>.panel>.field,.form-col>.panel>div>.field{scroll-margin-top:150px}.step-target-flash{position:relative;z-index:1}
@media(max-width:760px){.document-editor-head{grid-template-columns:36px 1fr}.temporary-save-state{grid-column:1/-1}.editor-toolbar-spacer{display:none}.editor-card .editor-toolbar .btn{flex:1}.editor-formatbar{justify-content:flex-start}}

/* Design 24 — numbered steps navigate, scroll and focus the exact field. */
.step-coach{scroll-margin-top:82px}.step-target-flash{animation:stepTargetFlash 1.05s ease}@keyframes stepTargetFlash{0%{outline:0 solid rgba(8,135,155,0);background-color:inherit}25%{outline:5px solid rgba(8,135,155,.18);background-color:#effafa}100%{outline:0 solid rgba(8,135,155,0);background-color:inherit}}

/* Design 14 — contextual guidance for every individual wizard step. */
.step-coach{display:block;margin:0 0 1rem;padding:1.35rem 1.45rem;border:1px solid #a9d9dc;border-radius:20px;background:linear-gradient(135deg,#eefafa 0%,#f8fcfb 58%,#fff8ec 100%);box-shadow:0 20px 55px -42px #0c6472}.step-coach-top{display:flex;align-items:center;justify-content:space-between;gap:1rem}.step-coach-badge{display:inline-flex;align-items:center;gap:.4rem;color:#087f92;font:800 9px var(--mono);letter-spacing:.12em;text-transform:uppercase}.step-coach-badge::before{content:'✦';display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:#0b879b;color:#fff;font-size:11px}.step-coach-status{padding:.35rem .65rem;border-radius:999px;background:#fff0d8;color:#9a5c14;font:700 9px var(--mono);text-transform:uppercase}.step-coach-status.complete{background:#ddf4ed;color:#18785f}.step-coach h3{margin:.9rem 0 .45rem;color:#102e36;font-size:20px;letter-spacing:-.025em}.step-coach>p{max-width:85ch;margin:0;color:#597177;font-size:12.5px;line-height:1.65}.step-coach-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-top:1rem}.step-coach-grid>div{padding:.85rem 1rem;border:1px solid rgba(123,184,189,.3);border-radius:13px;background:rgba(255,255,255,.76)}.step-coach-grid small{display:block;margin-bottom:.35rem;color:#0b7c8d;font:800 9px var(--mono);letter-spacing:.08em;text-transform:uppercase}.step-coach-grid p{margin:0;color:#486168;font-size:11px;line-height:1.55}.step-coach-grid ul{display:flex;flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none}.step-coach-grid li{padding:.3rem .5rem;border-radius:7px;background:#edf5f4;color:#486268;font-size:9.5px}.step-coach-grid li::before{content:'✓ ';color:#0b8a9b;font-weight:800}
@media(max-width:700px){.step-coach{padding:1rem}.step-coach-grid{grid-template-columns:1fr}}


/* Design 15 — confirm each completed field and continue immediately. */
.step-confirm{display:grid;grid-template-columns:42px minmax(0,1fr);column-gap:.85rem;align-items:center;width:100%;margin-top:1rem;padding:.85rem 1rem;border:1px solid #ccd9d8;border-radius:14px;background:#f2f5f4;color:#789095;text-align:left;cursor:not-allowed;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease}.step-confirm>span{grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;border:2px solid #bdccca;border-radius:12px;background:#fff;color:transparent;font-size:20px;font-weight:900}.step-confirm strong{font-size:12px}.step-confirm small{margin-top:.12rem;color:inherit;font-size:9.5px}.step-confirm.ready{border-color:#0b879b;background:linear-gradient(135deg,#087d91,#0a6878);color:#fff;cursor:pointer;box-shadow:0 16px 34px -22px #075966}.step-confirm.ready>span{border-color:#fff;background:#fff;color:#087d91}.step-confirm.ready:hover{transform:translateY(-2px);box-shadow:0 20px 38px -20px #075966}.step-confirm.ready:focus-visible{outline:3px solid rgba(8,135,155,.25);outline-offset:3px}.wizard-step-jumps button.confirmed{background:#147c68;border-color:#147c68;color:#fff}
