/* InCTRL ENGINE · one style sheet for every screen of the ENGINE.
   House style (A3, sparlog 90): small text always #0B0F1A; orange #ED7D31 only for areas, icon discs,
   borders, underlines and large marks; an active state is orange with black text; a link is black and
   underlined; no second orange, no grey text. */
@font-face{font-family:'Outfit';font-weight:600;font-style:normal;font-display:swap;src:url(fonts/outfit-600.woff2) format('woff2')}
@font-face{font-family:'Outfit';font-weight:700;font-style:normal;font-display:swap;src:url(fonts/outfit-700.woff2) format('woff2')}
@font-face{font-family:'DM Sans';font-weight:400;font-style:normal;font-display:swap;src:url(fonts/dmsans-400.woff2) format('woff2')}
@font-face{font-family:'DM Sans';font-weight:500;font-style:normal;font-display:swap;src:url(fonts/dmsans-500.woff2) format('woff2')}
@font-face{font-family:'DM Sans';font-weight:600;font-style:normal;font-display:swap;src:url(fonts/dmsans-600.woff2) format('woff2')}
@font-face{font-family:'DM Sans';font-weight:700;font-style:normal;font-display:swap;src:url(fonts/dmsans-700.woff2) format('woff2')}
:root{--ink:#0B0F1A;--or:#ED7D31;--sand:#ECE9E5;--white:#FFFFFF;
  /* Risk Management Method of InCTRL (sparlog 250, 251; the one source for every module): a risk colour means only a level.
     Level 1 Minimaal to 5 Kritiek with the text colour per level (ink on 1 to 4, white on 5); a chip or cell always carries
     the number and the word. Never for a status, progress or a traffic light (A1 h4). */
  --eng-risk-1:#C6E0B4;--eng-risk-1-text:#0B0F1A;
  --eng-risk-2:#70AD47;--eng-risk-2-text:#0B0F1A;
  --eng-risk-3:#ED7D31;--eng-risk-3-text:#0B0F1A;
  --eng-risk-4:#FF0000;--eng-risk-4-text:#0B0F1A;
  --eng-risk-5:#7030A0;--eng-risk-5-text:#FFFFFF;
  --eng-risk-border:#7A7F8C;
  /* lines of the heatmap: appetite solid, residual dashed, inherent dotted; above the appetite an ink hatch */
  --eng-risk-appetite:#0B0F1A;--eng-risk-residual:#5B6270;--eng-risk-inherent:#7A7F8C;--eng-risk-above:#0B0F1A;
  /* deficiencies (AS 2201): none, deficiency, significant deficiency, material weakness */
  --eng-def-none:#2E7D32;--eng-def-none-text:#FFFFFF;
  --eng-def-minor:#ED7D31;--eng-def-minor-text:#0B0F1A;
  --eng-def-significant:#FF0000;--eng-def-significant-text:#0B0F1A;
  --eng-def-material:#7030A0;--eng-def-material-text:#FFFFFF}
/* the chip or cell of a risk level: number and word, in the colour of the level (data-risk-level 1 to 5) */
[data-risk-level]{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--eng-risk-border);border-radius:6px;padding:1px 8px;font-size:12.5px;font-weight:600;white-space:nowrap;line-height:1.4}
[data-risk-level] b{font:700 14px 'Outfit',sans-serif}
[data-risk-level="1"]{background:var(--eng-risk-1);color:var(--eng-risk-1-text)}
[data-risk-level="2"]{background:var(--eng-risk-2);color:var(--eng-risk-2-text)}
[data-risk-level="3"]{background:var(--eng-risk-3);color:var(--eng-risk-3-text)}
[data-risk-level="4"]{background:var(--eng-risk-4);color:var(--eng-risk-4-text)}
[data-risk-level="5"]{background:var(--eng-risk-5);color:var(--eng-risk-5-text)}
[data-deficiency]{display:inline-block;border:1px solid var(--eng-risk-border);border-radius:6px;padding:1px 8px;font-size:12.5px;font-weight:600;white-space:nowrap}
[data-deficiency="none"]{background:var(--eng-def-none);color:var(--eng-def-none-text)}
[data-deficiency="minor"]{background:var(--eng-def-minor);color:var(--eng-def-minor-text)}
[data-deficiency="significant"]{background:var(--eng-def-significant);color:var(--eng-def-significant-text)}
[data-deficiency="material"]{background:var(--eng-def-material);color:var(--eng-def-material-text)}
*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--sand);color:var(--ink);font:15px/1.5 'DM Sans',system-ui,sans-serif}
[hidden]{display:none!important}
button,input,select,textarea{font:inherit;color:var(--ink)}
a{color:var(--ink);text-decoration:underline;text-underline-offset:2px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
h1,h2,h3{font-family:'Outfit',sans-serif;font-weight:700;margin:0}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* brand */
.brand{display:flex;align-items:center;gap:9px}
.brand .mark svg{display:block}
.wm{font:700 18px/1 'Outfit',sans-serif} .wm b{color:var(--or)}

/* language switch */
.lang{display:inline-flex;border:1px solid var(--ink);border-radius:999px;overflow:hidden;background:var(--white)}
.lang button{border:0;background:var(--white);padding:4px 12px;font:600 12px 'DM Sans',sans-serif;cursor:pointer}
.lang button[aria-pressed="true"]{background:var(--or)}

/* icons: a disc in orange with a black line drawing */
.ico{display:inline-flex;border-radius:50%;flex:none} .ico svg{display:block}

/* form parts */
label,.lab{font:600 13px 'DM Sans',sans-serif;display:flex;flex-direction:column;gap:4px}
.in{border:1px solid var(--ink);border-radius:8px;padding:9px 11px;font:400 15px 'DM Sans',sans-serif;background:var(--white);min-height:42px;width:100%}
.in:disabled,.in[readonly]{background:var(--sand);border-color:var(--sand)}
textarea.in{min-height:72px;resize:vertical}
select.in{appearance:auto}
.note{font:400 12.5px/1.45 'DM Sans',sans-serif;margin:0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:10px;padding:10px 16px;font:600 14px 'DM Sans',sans-serif;cursor:pointer;text-decoration:none;min-height:42px}
.btn.pri{background:var(--or);color:var(--ink);border:1px solid var(--or)}
.btn.sec{background:var(--white);color:var(--ink);border:1px solid var(--ink)}
.btn:disabled,.btn.dis{background:var(--sand);border-color:var(--sand);cursor:not-allowed}
.btn.wide{width:100%}
.btns{display:flex;gap:10px;flex-wrap:wrap}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{border:1px solid var(--ink);border-radius:999px;padding:3px 12px;font:500 13px 'DM Sans',sans-serif;background:var(--white)}
.chip.on,.chip[aria-pressed="true"]{background:var(--or);border-color:var(--or);font-weight:600}
button.chip{cursor:pointer}

/* messages */
.info{border:1px solid var(--ink);border-left:4px solid var(--or);border-radius:8px;padding:10px 12px;display:flex;gap:10px;font-size:13.5px;margin:0 0 14px}
.info b{display:block}
.info .bang{flex:none;width:20px;height:20px;border:2px solid var(--ink);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font:700 12px 'DM Sans',sans-serif;margin-top:1px}

/* the sign-in card */
.signin-wrap{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:14px 16px 40px}
.signin-top{width:100%;max-width:440px;display:flex;justify-content:flex-end;margin:0 0 14px}
.card{width:100%;max-width:440px;background:var(--white);border-top:4px solid var(--or);border-radius:12px;padding:22px 22px 18px;display:flex;flex-direction:column;gap:14px}
.card h1{font-size:21px;line-height:1.25;display:flex;gap:10px;align-items:flex-start}
.card p{margin:0;font-size:14px}
.card form{display:flex;flex-direction:column;gap:12px}
.card ol{margin:0;padding-left:18px;font-size:14px}
.or{display:flex;align-items:center;gap:10px;font-size:13px}
.or::before,.or::after{content:"";flex:1;border-top:1px solid var(--sand)}
.foot{border-top:1px solid var(--sand);padding-top:12px;font-size:13px}
.qr{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.qr img{width:120px;height:120px;border:1px solid var(--ink);border-radius:6px;padding:4px;background:var(--white)}
.key{font:500 13px/1.4 ui-monospace,Menlo,Consolas,monospace;word-break:break-all}

/* app frame: bar, menu, main */
.app{background:var(--white);border-top:4px solid var(--or);min-height:100vh}
.bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 20px;border-bottom:1px solid var(--sand);flex-wrap:wrap}
.bar .right{display:flex;align-items:center;gap:14px;font-size:13px;flex-wrap:wrap}
.body{display:grid;grid-template-columns:286px minmax(0,1fr)}
nav.side{border-right:1px solid var(--sand);padding:16px 10px}
nav.side .t{font:700 16px 'Outfit',sans-serif;padding:0 10px 10px}
nav.side ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
nav.side li button,nav.side li a{display:flex;align-items:center;gap:9px;padding:7px 10px;border-radius:8px;font-size:14px;width:100%;border:0;background:none;text-align:left;cursor:pointer;text-decoration:none}
nav.side li [aria-current="page"]{background:var(--or);font-weight:600}
nav.side li [aria-current="page"] .ico{box-shadow:0 0 0 1px var(--ink)}
nav.side .blk{margin-left:auto;font-size:10.5px;border:1px solid var(--ink);border-radius:999px;padding:0 7px;white-space:nowrap}
main{padding:20px 24px 28px;min-width:0}
main h2{font-size:20px} main p.lead{margin:4px 0 16px;font-size:14px;max-width:760px}
.cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:24px;align-items:start}
.form{display:flex;flex-direction:column;gap:14px;max-width:560px}
.res{border:1px solid var(--ink);border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:10px}
.res h3{font-size:16px;display:flex;gap:8px;align-items:center}
table{border-collapse:collapse;width:100%;font-size:13px}
th,td{text-align:left;padding:6px;border-bottom:1px solid var(--sand);vertical-align:top}
th{font-weight:600}
td.n,th.n{text-align:right;width:1%;white-space:nowrap}
.tiles{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 14px}
.tile{border:1px solid var(--ink);border-radius:12px;padding:8px 14px;min-width:120px}
.tile b{display:block;font:700 22px 'Outfit',sans-serif}
.tile span{font-size:12.5px}
.pill{display:inline-block;border:1px solid var(--ink);border-radius:999px;padding:0 8px;font-size:11.5px;white-space:nowrap}
.pill.or{background:var(--or);border-color:var(--or)}
.muted-row td{background:var(--sand)}

/* dialog */
.scrim{position:fixed;inset:0;background:rgba(11,15,26,.35);display:flex;align-items:flex-start;justify-content:center;padding:60px 12px;z-index:20;overflow:auto}
.dlg{width:min(600px,100%);background:var(--white);border-radius:16px;border-top:4px solid var(--or);padding:18px 20px;display:flex;flex-direction:column;gap:12px}
.dlg h3{font-size:18px}
.scrim-top{z-index:40}
.dlg-code{width:min(420px,100%)}
.code-in{font-size:22px;letter-spacing:6px;max-width:200px}
.dlg ul{margin:4px 0 0;padding-left:18px;font-size:13.5px}
.toast{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);background:var(--white);color:var(--ink);border:1px solid var(--ink);border-left:4px solid var(--or);border-radius:10px;padding:10px 16px;font-size:14px;z-index:30}

.menu-btn{display:none}
@media (max-width:900px){
  .body{grid-template-columns:1fr}
  nav.side{display:none;border-right:0;border-bottom:1px solid var(--sand)}
  nav.side.open{display:block}
  .menu-btn{display:inline-flex}
  .cols{grid-template-columns:1fr}
  main{padding:16px}
  table{display:block;overflow-x:auto}
}

/* E2 the tree */
table.tree tbody tr{cursor:pointer}
table.tree tbody tr.sel td{background:var(--sand)}
table.tree tbody tr.sel td:first-child{box-shadow:inset 4px 0 0 var(--or)}
.tn{display:flex;align-items:center;gap:6px}
.tn[data-depth="2"]{padding-left:18px} .tn[data-depth="3"]{padding-left:36px} .tn[data-depth="4"]{padding-left:54px} .tn[data-depth="5"]{padding-left:72px}
.caret{border:0;background:none;cursor:pointer;width:18px;padding:0;font-size:12px}
.caret-sp{display:inline-block;width:18px}
.warnline{font-weight:600}
.hist{margin:0;padding-left:18px;font-size:13px}
.radio{flex-direction:row;align-items:center;gap:8px;font-weight:500}
.note.path{font-size:12px}
#tree-tools .in{max-width:360px}
#tree-cols{grid-template-columns:minmax(0,1fr) minmax(0,380px)}

/* E3 people, lines, My account, the unit picker */
#ppl-cols{grid-template-columns:minmax(0,1fr) minmax(0,420px)}
#ppl-cols:has(> #ppl-panel:empty),#tree-cols:has(> div:last-child:empty){grid-template-columns:minmax(0,1fr)}
#ppl-tools .in{max-width:300px}
table.ppl td.lines .ln{white-space:nowrap}
table.ppl tr.st-blocked td{color:#4a4d55}
.pill.st-active{background:var(--white)} .pill.st-invited{background:var(--sand)} .pill.st-blocked{background:var(--ink);color:var(--white)}
.note.ext{font-style:italic}
.panel-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.sec-t{font:700 14px 'Outfit',sans-serif;margin-top:6px;border-top:1px solid var(--sand);padding-top:8px}
.plist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:13.5px}
.plist li{display:flex;justify-content:space-between;align-items:center;gap:8px}
.plist li.sleeps{opacity:.75}
.btn.sm{padding:3px 10px;font-size:12.5px;min-height:0}
.btn.danger{background:var(--ink);color:var(--white);border:1px solid var(--ink)}
.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:8px 0}
.card{border:1px solid var(--ink);border-radius:12px;padding:10px 12px;background:var(--white);font-size:13px;display:flex;flex-direction:column;gap:4px}
.card.on{border:2px solid var(--or);box-shadow:inset 0 4px 0 var(--or)}
.card p{margin:0}
.ok-line{font-weight:600;font-size:13.5px;margin:4px 0}
#lines-body h3{margin-top:18px}
#lines-body table{margin-top:6px}
.scrollx{overflow-x:auto;max-width:100%}
table.rights td.cell-yes{font-weight:600}
table.rights td.cell-no{color:#4a4d55}
table.rights td.cell-on_behalf{background:#fbe3d3}
table.rights td.off{text-decoration:line-through}
table.rights tbody tr{cursor:default}
tr.dl-ended td,tr.dl-expired td{color:#4a4d55}
.stack{display:flex;flex-direction:column;gap:10px;margin:8px 0}
main.acc{max-width:1100px}
.acc-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-bottom:16px}
main.acc > .res{margin-bottom:16px}
main.acc h3{font-size:16px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.strip{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--white);border:1px solid var(--ink);border-left:4px solid var(--or);border-radius:10px;padding:6px 12px;margin:0 0 14px;font-size:13.5px}
.strip-l{font-weight:600}
.strip-path{flex:1;min-width:0;overflow-wrap:anywhere}
.scrim-drawer{justify-content:flex-end;padding:0}
.drawer{width:min(420px,100%);min-height:100%;background:var(--white);border-left:4px solid var(--or);padding:16px;display:flex;flex-direction:column;gap:10px}
.pick-list{list-style:none;margin:0;padding:0;font-size:14px}
.pick-list li{padding:2px 0}
.pick-list li button{background:none;border:0;padding:4px 6px;cursor:pointer;text-align:left;width:100%;border-radius:6px}
.pick-list li button:hover,.pick-list li.cur button{background:var(--sand)}
.pick-list li.cur button{box-shadow:inset 4px 0 0 var(--or);font-weight:600}
.pick-list .grey{color:#6b6e75;padding:4px 6px;display:block}
.pick-list .d2{padding-left:16px} .pick-list .d3{padding-left:32px} .pick-list .d4{padding-left:48px} .pick-list .d5{padding-left:64px}
@media (max-width:900px){
  .cards{grid-template-columns:1fr 1fr}
  .acc-grid,.row2{grid-template-columns:1fr}
  .plist li{flex-wrap:wrap}
}
.card .pill,.res > .btn,.res > .btns .btn{align-self:flex-start}

/* E9a the object card and the link panel */
main.obj{max-width:1180px}
.obj-ask{margin-bottom:14px}
.obj-ask .in{max-width:420px}
.obj-cols{display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:20px;align-items:start}
.kv{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:0;font-size:13.5px}
.kv dt{font-weight:600} .kv dd{margin:0;overflow-wrap:anywhere}
.lp{border:1px solid var(--ink);border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:10px;background:var(--white)}
.lp-head{display:flex;justify-content:space-between;align-items:center;gap:8px}
.lp-head h3{font-size:16px}
.lp-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:13.5px}
.lp-list li{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;border-top:1px solid var(--sand);padding-top:8px}
.lp-k{font-weight:600;min-width:120px}
.lp-o{flex:1;min-width:200px;overflow-wrap:anywhere}
.lp-o.hidden{color:#4a4d55}
.lp-open{text-align:left;background:none;border:0;padding:0;font:inherit;font-weight:600;text-decoration:underline;text-underline-offset:2px;cursor:pointer;color:var(--ink)}
.lp-hits{list-style:none;margin:0;padding:0;max-height:260px;overflow:auto;display:flex;flex-direction:column;gap:4px}
.lp-hits button{width:100%;text-align:left;background:var(--white);border:1px solid var(--sand);border-radius:8px;padding:6px 8px;cursor:pointer;font:inherit;font-size:13.5px}
.lp-hits button[aria-selected="true"]{border-color:var(--or);box-shadow:inset 4px 0 0 var(--or)}
details#lp-ended summary{cursor:pointer;font-weight:600;font-size:13.5px}
@media (max-width:1023px){ .obj-cols{grid-template-columns:1fr} }

/* E6 One yardstick */
nav.side li.grp-t{font:700 13px 'Outfit',sans-serif;padding:10px 10px 2px}
.tabsr{display:flex;gap:6px;margin:0 0 14px;flex-wrap:wrap}
.tabsr .chip{cursor:pointer}
.banner{border:1px solid var(--ink);border-left:4px solid var(--or);border-radius:10px;padding:8px 12px;margin:0 0 12px;font-size:13.5px}
.banner b{display:block}
.heat{border-collapse:separate;border-spacing:3px;width:auto;font-size:12px}
.heat td,.heat th{border:0;padding:0;text-align:center;vertical-align:middle}
.heat td.c{width:58px;height:44px;border-radius:6px;font:700 16px 'Outfit',sans-serif;border:1px solid var(--ink)}
.heat th{font-weight:600;padding:2px 4px;font-size:11.5px;white-space:nowrap}
.heat td.c{border-color:var(--eng-risk-border);display:table-cell;padding:2px 0;border-radius:6px}
.heat td.c small{display:block;font:600 10px/1.2 'DM Sans',sans-serif}
.l0{background:var(--eng-risk-1);color:var(--eng-risk-1-text)}.l1{background:var(--eng-risk-2);color:var(--eng-risk-2-text)}.l2{background:var(--eng-risk-3);color:var(--eng-risk-3-text)}.l3{background:var(--eng-risk-4);color:var(--eng-risk-4-text)}.l4{background:var(--eng-risk-5);color:var(--eng-risk-5-text)}
.lg{display:inline-flex;align-items:center;gap:6px;margin-right:10px;font-size:12.5px}
.lg i{display:inline-block;width:16px;height:16px;border-radius:4px;border:1px solid var(--eng-risk-border)}
table.words td{font-size:12.5px} table.words td:first-child{font-weight:600;white-space:nowrap}
tr.grp td{background:var(--sand);font-weight:600}
.ys-two{display:grid;grid-template-columns:auto minmax(0,1fr);gap:24px;align-items:start}
.ys-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0 16px}
.ys-gap{margin-bottom:14px}
#ys-prop{margin-bottom:14px}
.ys-inline{margin-top:4px} .ys-inline .in{min-height:32px;padding:3px 8px;width:auto;font-size:13px}
.ys-limit{min-height:32px;padding:3px 8px;width:auto;font-size:13px}
td.ys-in{padding-left:22px}
.ys-addrow{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}
.ys-addrow label{min-width:200px}
.mono{font-variant-numeric:tabular-nums}
@media (max-width:1023px){ .ys-two,.ys-three{grid-template-columns:1fr} }

/* E4 Period and statement: two period cards side by side, a check box with its sentence */
.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 14px}
.res.per h3{margin:0}
.ck{display:flex;gap:8px;align-items:flex-start;margin:8px 0;font-size:13.5px}
.ck input{margin-top:3px;flex:0 0 auto}
.ck label{font-weight:400;margin:0;display:inline}
#per-strip .in{width:auto;min-width:220px;max-width:100%}
#per-strip .strip-path{flex:0 1 auto}
#per-pointlist details summary{cursor:pointer}
.sigl td{font-size:13px}
#per-body > .res{margin-bottom:14px}
@media (max-width:700px){.two{grid-template-columns:minmax(0,1fr)}}

/* E5 Gedeelde diensten: search and My actions in the app bar, the inbox, the drawer of an action, block 6 */
.bartools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.srch{display:inline-flex;flex-direction:row;align-items:center;gap:6px;border:1px solid var(--ink);border-radius:999px;padding:2px 12px;background:var(--white)}
.srch .mag{font-size:16px;line-height:1}
.srch-in{border:0;outline:0;font:400 14px 'DM Sans',sans-serif;min-width:180px;padding:5px 0;background:transparent}
.srch:focus-within{outline:2px solid var(--ink);outline-offset:2px}
.actc{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--ink);border-radius:999px;padding:4px 10px;font-size:14px;background:var(--white);text-decoration:none;white-space:nowrap}
.actc.on{background:var(--or)}
.actc .n{display:inline-block;min-width:20px;text-align:center;background:var(--ink);color:var(--white);border-radius:999px;font-size:12px;padding:0 6px}
.acts .tabsr{display:flex;gap:6px;margin:0 0 14px;flex-wrap:wrap}
.tabsr .chip{cursor:pointer}
td.due.over,div.due.over{font-weight:700}
.dim{position:fixed;inset:0;background:rgba(11,15,26,.35);z-index:40}
.drawer-r{position:fixed;top:0;right:0;bottom:0;width:520px;max-width:100%;background:var(--white);border-left:4px solid var(--or);padding:18px 20px;overflow:auto;z-index:41;display:flex;flex-direction:column;gap:8px}
.drawer-r h3{margin:0}
dl.kv2{display:grid;grid-template-columns:150px minmax(0,1fr);gap:4px 12px;margin:4px 0;font-size:14px}
dl.kv2 dt{font-weight:600}
dl.kv2 dd{margin:0;overflow-wrap:anywhere}
.cards1{display:flex;flex-direction:column;gap:8px}
.card1{border:1px solid var(--ink);border-radius:12px;padding:10px 12px;font-size:14px;text-decoration:none;display:block}
.card1 b{display:block}
.grp{margin:0 0 10px}
.grp h4{margin:0 0 4px;font:600 15px 'DM Sans',sans-serif}
.grp ul{margin:0;padding-left:18px}
.filters{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;margin:0 0 6px}
.filters .sel-l{display:flex;flex-direction:column;font-size:13px;gap:2px}
.filters .sel{min-height:36px;padding:5px 9px;width:auto}
tr.au-line{cursor:pointer}
tr.detail td{background:var(--sand);font-size:13px;overflow-wrap:anywhere}
td.y{white-space:nowrap}
@media (max-width:700px){.srch-in{min-width:0;width:120px}.drawer-r{width:100%}dl.kv2{grid-template-columns:110px minmax(0,1fr)}}

/* ── E7 De twee registers en de coverage matrix: states as shapes and greys (colour rule 3 October) ── */
.state{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.state i{display:inline-block;width:12px;height:12px;border:2px solid var(--ink);border-radius:50%;background:var(--white);flex:none}
.state i.h{background:linear-gradient(90deg,var(--ink) 50%,var(--white) 50%)}
.state i.d{background:var(--ink)}
.state i.x{border-radius:2px;background:var(--white)}
.lock{display:inline-block;border:1px solid var(--ink);border-radius:999px;padding:1px 8px;font-size:12px;background:var(--sand);margin-left:6px}
.scorebox{display:inline-block;border:1px solid var(--ink);border-radius:10px;padding:6px 10px;background:var(--sand);font-size:13px;margin:2px 6px 2px 0}
.scorebox b{font:700 18px 'Outfit',sans-serif;margin-right:6px}
.mx{border-collapse:separate;border-spacing:0;font-size:12.5px;width:auto}
.mx th.r0{min-width:220px}
.mx th{background:var(--sand);font-weight:600;text-align:left;padding:4px 6px;border:1px solid var(--line,#CFCAC3)}
.mx th.v{writing-mode:vertical-rl;transform:rotate(180deg);max-width:34px;height:150px;font-weight:500;white-space:nowrap}
.mx td{border:1px solid var(--line,#CFCAC3);text-align:center;padding:2px;width:34px;height:30px}
.mx td.r{text-align:left;white-space:nowrap;padding:2px 6px}
.mx td.r .state{font-size:12px}
.c0,.c1,.c2,.c3,.c4{display:inline-block;width:18px;height:18px;vertical-align:middle}
.c1{border:2px solid var(--ink);border-radius:50%;background:var(--white)}
.c2{border:2px solid var(--ink);border-radius:50%;background:#D9DCE1}
.c3{border:2px solid var(--ink);border-radius:50%;background:var(--ink)}
.c4{border:2px solid var(--ink);border-radius:3px;background:var(--white);font:700 13px/15px 'DM Sans',sans-serif;color:var(--ink);text-align:center}
.leg{display:flex;gap:16px;flex-wrap:wrap;font-size:13px;margin:8px 0 0;align-items:center}
.leg span{display:inline-flex;align-items:center;gap:6px}
.reg .drawer-r{width:640px}
.reg .drawer-r table{font-size:13px}
.reg .filters .in{min-width:140px}
.reg .ck{display:flex;align-items:center;gap:8px;font-size:13.5px}
.reg .form .row2{display:flex;gap:10px}
.reg .form .row2 > *{flex:1}
@media (max-width:1023px){.reg .drawer-r{width:100%}}
.reg .scrim,body:has(#reg-drawer) .scrim{z-index:50}
body:has(#reg-drawer) .scrim-top{z-index:55}
@media (max-width:700px){.reg .filters .sel-l,.reg .filters .in{max-width:100%;width:100%;min-width:0}}

/* ── E8 Thema's en import: a theme is a chip in greys (never a risk colour); AI with the white dot (sparlog 170) ── */
.thm{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--ink);border-radius:999px;padding:1px 9px;font-size:12.5px;background:var(--white);white-space:nowrap;margin:1px 3px 1px 0;color:var(--ink);line-height:1.4}
.thm.ai{background:var(--ink);color:var(--white)}
.thm.ai i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--white)}
.thm.add{border-style:dashed;background:var(--sand)}
.thm.x button{border:0;background:transparent;font:inherit;color:inherit;cursor:pointer;padding:0 0 0 4px;line-height:1}
.thms{display:inline}
.own{display:inline-block;border:1px dashed var(--ink);border-radius:6px;padding:1px 7px;font-size:12px;background:var(--sand);white-space:nowrap;margin-left:4px}
.tgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 14px}
.tcard{border:1px solid var(--ink);border-radius:12px;padding:12px 14px;background:var(--white)}
.tcard h3{font-size:16px;margin:0 0 2px;display:flex;align-items:center;gap:8px}
.tcard .laws{font-size:12.5px;margin:0 0 8px;min-height:34px}
.tcard .nums{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;font-size:12px}
.tcard .nums b{display:block;font:700 18px 'Outfit',sans-serif}
.tcard .nums .bad b{text-decoration:underline;text-decoration-color:var(--or);text-decoration-thickness:3px}
.tcard .mods{font-size:12px;margin-top:8px}
.steps{display:flex;gap:8px;margin:0 0 14px;flex-wrap:wrap}
.step{border:1px solid var(--ink);border-radius:999px;padding:4px 12px;font-size:13px;background:var(--white)}
.step.on{background:var(--or);font-weight:600}
.step.done{background:var(--ink);color:var(--white)}
.drop{border:2px dashed var(--ink);border-radius:12px;padding:18px;text-align:center;background:var(--white);margin:0 0 12px}
.okc,.errc,.exc{display:inline-flex;align-items:center;gap:6px}
.okc i{display:inline-block;width:12px;height:12px;border:2px solid var(--ink);border-radius:50%;background:var(--ink);flex:none}
.errc i{display:inline-block;width:12px;height:12px;border:2px solid var(--ink);border-radius:2px;background:var(--white);flex:none}
.exc i{display:inline-block;width:12px;height:12px;border:2px solid var(--ink);border-radius:50%;background:linear-gradient(90deg,var(--ink) 50%,var(--white) 50%);flex:none}
.div{font-size:12px;border:1px solid var(--ink);border-radius:999px;padding:0 8px;background:var(--sand);white-space:nowrap}
.div.none{border-style:dashed;background:var(--white)}
.thgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 12px;margin:4px 0}
@media (max-width:900px){.tgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:700px){.tgrid,.thgrid{grid-template-columns:minmax(0,1fr)}}
/* E9b Moedercockpit (D13): the same house style with a dark badge, so nobody confuses the two sides */
.cbar{border-bottom:4px solid var(--ink)}
.cbar .brand-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.cbadge{border:2px solid var(--ink);border-radius:999px;padding:2px 12px;font:700 13px 'Outfit',sans-serif;background:var(--ink);color:var(--white);white-space:nowrap}
.cbody{grid-template-columns:220px minmax(0,1fr)}
.cmain .tiles .tile{flex:1 1 160px;border-top:4px solid var(--or)}
.mods{display:inline-flex;gap:4px;flex-wrap:wrap}
.mod{border:1px solid var(--ink);border-radius:6px;padding:0 6px;font-size:11.5px;background:var(--white);white-space:nowrap}
.mod.on{background:var(--ink);color:var(--white)}
.sw{display:inline-flex;align-items:center;gap:8px;font-size:13.5px}
.sw i{width:34px;height:18px;border-radius:999px;border:2px solid var(--ink);background:var(--white);position:relative;display:inline-block}
.sw i:after{content:'';position:absolute;top:1px;left:1px;width:12px;height:12px;border-radius:50%;background:var(--ink)}
.sw.on i{background:var(--or)} .sw.on i:after{left:17px}
.tl{list-style:none;margin:4px 0;padding:0}
.tl li{display:grid;grid-template-columns:22px 120px minmax(0,1fr);gap:10px;padding:7px 0;border-bottom:1px solid var(--sand);font-size:13.5px;align-items:start}
.tl li i{width:14px;height:14px;border:2px solid var(--ink);border-radius:50%;margin-top:3px;background:var(--white)}
.tl li.done i{background:var(--ink)}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.warn{border:2px solid var(--ink);border-radius:10px;padding:8px 12px;font-size:13.5px;background:var(--sand)}
.code{font-family:ui-monospace,Menlo,monospace;font-size:12px;background:var(--sand);border-radius:6px;padding:1px 6px;overflow-wrap:anywhere}
.chks{display:flex;flex-wrap:wrap;gap:4px 14px}
.cphone{margin:0 0 12px}
.sub-t{margin:4px 0 0}
#kvk-change{margin-left:8px}
@media (max-width:700px){.cbody{grid-template-columns:minmax(0,1fr)}.cnav{display:none}.grid2{grid-template-columns:minmax(0,1fr)}.tl li{grid-template-columns:22px 90px minmax(0,1fr)}}
.pbanner{margin:10px 20px 0;display:flex;flex-direction:column;gap:4px}
.pbanner b{display:inline;margin-right:6px}
.btn.danger:disabled{background:var(--white);color:var(--ink);border-style:dashed;cursor:not-allowed}
