*{box-sizing:border-box}
:root{
  /* Kleurenschema 2026-09-29: drie duidelijke vlakniveaus (bg1 < card, chip
     voor tabelkoppen/tabbalken), één accent voor wat klikbaar/actief is,
     oranje alleen voor het merk, statuskleuren als zachte tint + rand.
     --navy is het merk-navy voor ACHTERGRONDEN (in beide thema's donker);
     tekst in navy gebruikt --navy-ink (in donker lichtblauw), actieve en
     primaire knoppen --accent (in donker middenblauw, zichtbaar op een
     donkere kaart). */
  --orange:#f47c20; --orange-d:#d9660f; --navy:#1f3a5f; --navy-d:#16304f;
  --navy-ink:#1f3a5f; --accent:#1f3a5f; --accent-d:#16304f; --link:#1d4ed8;
  --bg1:#f3f5f9; --bg2:#eef1f6; --card:#ffffff; --ink:#101828; --ink2:#475467;
  --muted:#667085; --line:#d9dfe8; --chip:#eef1f6; --hover:#f5f7fa;
  --green:#188038; --red:#c0392b; --grey:#667085;
  --ok-fg:#067647; --ok-bg:#ecfdf3; --ok-bd:#abefc6;
  --warn-fg:#b54708; --warn-bg:#fffaeb; --warn-bd:#fedf89;
  --bad-fg:#b42318; --bad-bg:#fef3f2; --bad-bd:#fecdca;
  --info-fg:#175cd3; --info-bg:#eff8ff; --info-bd:#b2ddff;
  --nt-fg:#475467; --nt-bg:#f2f4f7; --nt-bd:#e4e7ec;
  --shadow:0 1px 2px rgba(16,24,40,.05),0 2px 6px rgba(16,24,40,.06);
  /* kopbalk: zachte tint die de accentbalk (oranje -> navy) volgt */
  --head-bg:linear-gradient(90deg,#fdf5ee 0%,#f5f7fb 38%,#edf1f7 100%);
  /* zijbalk: zelfde koele tint als de rechterkant van de kopbalk */
  --nav-bg:linear-gradient(180deg,#f5f7fb 0%,#eef2f8 100%); --nav-icon:#51627d;
}
@media (prefers-color-scheme:dark){
  :root{
    --bg1:#0b1220; --bg2:#0a101c; --card:#111a2b; --ink:#e6ebf3; --ink2:#b4bfd0;
    --muted:#8a97ab; --line:#2a3750; --chip:#172235; --hover:#16213a;
    --navy-ink:#8fb3e8; --accent:#3b6fb6; --accent-d:#2f5d9c; --link:#8fb3e8;
    --ok-fg:#47cd89; --ok-bg:rgba(71,205,137,.12); --ok-bd:rgba(71,205,137,.35);
    --warn-fg:#fdb022; --warn-bg:rgba(253,176,34,.12); --warn-bd:rgba(253,176,34,.35);
    --bad-fg:#f97066; --bad-bg:rgba(249,112,102,.12); --bad-bd:rgba(249,112,102,.35);
    --info-fg:#53b1fd; --info-bg:rgba(83,177,253,.12); --info-bd:rgba(83,177,253,.35);
    --nt-fg:#b4bfd0; --nt-bg:rgba(180,191,208,.10); --nt-bd:rgba(180,191,208,.25);
    --shadow:0 1px 2px rgba(0,0,0,.4),0 4px 12px rgba(0,0,0,.25);
    --head-bg:linear-gradient(90deg,#1a1c25 0%,#131c2e 38%,#142037 100%);
    --nav-bg:linear-gradient(180deg,#131c2e 0%,#111a2b 100%); --nav-icon:#8a9bb8;
  }
}
html,body{margin:0;min-height:100%}
body{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--ink);font-size:15px;line-height:1.5;
  background:
    radial-gradient(1200px 500px at 85% -10%, rgba(244,124,32,.14), transparent 60%),
    radial-gradient(1000px 500px at 0% 0%, rgba(44,62,93,.16), transparent 55%),
    linear-gradient(160deg,var(--bg1),var(--bg2));
  background-attachment:fixed;
  display:flex;align-items:flex-start;justify-content:center;
  padding:48px 20px;
}
button,input,select,textarea{font-family:inherit}
/* geen overflow:hidden: dat knipt de ?-help-popups af onderaan de kaart.
   De accentbalk rondt daarom zelf zijn bovenhoeken af. */
.card{
  width:100%;max-width:680px;background:var(--card);border-radius:20px;
  box-shadow:var(--shadow);border:1px solid var(--line);
  animation:rise .5s cubic-bezier(.2,.8,.2,1) both;
}
@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.accent{height:5px;border-radius:19px 19px 0 0;
  background:linear-gradient(90deg,var(--orange),var(--navy))}
.head{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:22px 28px;border-bottom:1px solid var(--line);
}
.logo{height:56px;display:block;max-width:100%}
@media(max-width:600px){.logo{height:44px}}
.wordmark{font-weight:800;font-size:22px;color:var(--orange);letter-spacing:.2px}
.wordmark span{color:var(--navy-ink)}
.eyebrow{
  font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--orange);margin:0 0 6px;
}
.body{padding:28px}
h1{font-size:24px;line-height:1.25;margin:0 0 6px;font-weight:800;letter-spacing:-.01em}
h2{line-height:1.3} h3{line-height:1.35}
.sub{color:var(--muted);margin:0 0 22px;font-size:15px;line-height:1.55}
/* dropzone */
.drop{
  position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;
  text-align:center;padding:34px 20px;border:2px dashed var(--line);border-radius:16px;
  background:linear-gradient(180deg,rgba(244,124,32,.04),transparent);
  cursor:pointer;transition:border-color .18s,background .18s,transform .18s;
}
.drop:hover{border-color:var(--orange)}
.drop.drag{border-color:var(--orange);background:rgba(244,124,32,.09);transform:scale(1.005)}
.drop input[type=file]{
  position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;
}
.drop .ic{
  width:52px;height:52px;border-radius:14px;display:grid;place-items:center;
  background:linear-gradient(135deg,var(--orange),var(--orange-d));color:#fff;
  box-shadow:0 8px 20px -6px rgba(244,124,32,.6);
}
.drop .ic svg{width:26px;height:26px}
.drop .t{font-weight:700;font-size:15.5px}
.drop .t b{color:var(--orange)}
.drop .h{color:var(--muted);font-size:13px}
.picked{
  margin:14px 0 0;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;
}
.picked:empty{display:none}
.file-pill{
  display:inline-flex;align-items:center;gap:7px;max-width:100%;
  background:var(--chip);border:1px solid var(--line);border-radius:999px;
  padding:6px 12px;font-size:12.5px;font-weight:600;color:var(--ink);
}
.file-pill svg{width:13px;height:13px;color:var(--orange);flex:0 0 auto}
.file-pill span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}
.btn{
  margin-top:20px;width:100%;border:0;border-radius:13px;cursor:pointer;
  padding:15px 18px;font-size:16px;font-weight:800;color:#fff;letter-spacing:.02em;
  background:linear-gradient(135deg,var(--navy),var(--navy-d));
  box-shadow:0 12px 26px -12px rgba(44,62,93,.75);
  transition:transform .12s,box-shadow .18s,opacity .18s;
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
}
.btn:hover{transform:translateY(-1px);box-shadow:0 16px 30px -12px rgba(44,62,93,.8)}
.btn:active{transform:translateY(0)}
.btn[disabled]{opacity:.75;cursor:progress}
.btn .spin{
  width:17px;height:17px;border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;
  border-radius:50%;animation:sp .7s linear infinite;display:none;
}
.btn.loading .spin{display:inline-block}
@keyframes sp{to{transform:rotate(360deg)}}
/* results */
.summary{
  display:flex;align-items:center;gap:12px;margin:0 0 20px;padding:14px 16px;
  border-radius:13px;background:var(--chip);border:1px solid var(--line);font-size:14px;
}
.summary .dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto}
.result{
  border:1px solid var(--line);border-left:5px solid var(--vc,var(--grey));
  border-radius:14px;padding:16px 18px;margin:12px 0;background:var(--card);
  animation:rise .4s ease both;
}
.result .top{display:flex;align-items:center;gap:12px}
.badge{
  width:34px;height:34px;border-radius:10px;flex:0 0 auto;display:grid;place-items:center;
  color:#fff;font-weight:900;font-size:18px;background:var(--vc,var(--grey));
}
.badge svg{width:19px;height:19px}
.result .name{font-weight:700;word-break:break-all;font-size:15px;flex:1}
.verdict{
  font-weight:800;font-size:12px;letter-spacing:.06em;text-transform:uppercase;
  color:var(--vc,var(--grey));white-space:nowrap;
}
.detail{margin:9px 0 0;color:var(--muted);font-size:13.5px;word-break:break-word}
.detail b{color:var(--ink)}
/* Foutmelding in de inlogflow: moet opvallen, niet wegvallen tussen de
   toelichtingen. Groter en rood, met een subtiele achtergrond zodat hij ook
   op de donkere variant leesbaar blijft. */
.loginfout{margin:10px 0 4px;padding:10px 12px;border:1px solid #e8b4ae;
  border-radius:8px;background:#fdf2f1;color:#c0392b;font-size:16px;
  font-weight:600;line-height:1.4;word-break:break-word}
.meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.chip{
  display:inline-flex;align-items:center;gap:6px;background:var(--chip);
  border:1px solid var(--line);border-radius:8px;padding:5px 10px;font-size:12px;
  color:var(--muted);font-weight:600;word-break:break-all;
}
.chip b{color:var(--ink);font-weight:700}
.chip.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:500}
.back{
  display:inline-flex;align-items:center;gap:8px;margin-top:22px;text-decoration:none;
  color:var(--navy-ink);font-weight:700;font-size:14.5px;
}
@media (prefers-color-scheme:dark){.back{color:var(--orange)}}
.back:hover{opacity:.8}
.foot{padding:16px 28px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}
.nav{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.navbtn{
  display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:8px 14px;
  border-radius:10px;border:1px solid var(--line);background:var(--chip);
  color:var(--ink);font-size:13.5px;
  font-weight:700;text-decoration:none;cursor:pointer;line-height:1;
  transition:border-color .15s,color .15s;
}
.navbtn:hover{border-color:var(--orange);color:var(--orange)}
.logoutcell{display:inline-flex;flex-direction:column;align-items:flex-end;gap:3px}
.whoami{font-size:11px;color:var(--muted);max-width:220px;overflow:hidden;
  text-overflow:ellipsis;white-space:nowrap}
.navdd{position:relative;display:inline-block}
.navdd>summary{list-style:none}
.navdd>summary::-webkit-details-marker{display:none}
.navdd[open]>summary{border-color:var(--orange);color:var(--orange)}
.help{position:relative;display:inline-block;vertical-align:middle}
.help>summary{list-style:none;cursor:pointer;display:inline-flex;width:22px;height:22px;
  align-items:center;justify-content:center;border:0;border-radius:999px;
  font-size:14px;font-weight:800;line-height:1;color:#fff;background:var(--orange);
  box-shadow:0 1px 3px rgba(0,0,0,.25)}
.help>summary:hover{background:var(--orange-d)}
.help>summary::-webkit-details-marker{display:none}
.help[open]>summary{background:var(--orange-d);box-shadow:0 0 0 3px rgba(244,124,32,.3)}
.help .pop{position:absolute;z-index:30;left:0;top:24px;width:340px;max-width:80vw;
  max-height:min(70vh,460px);overflow-y:auto;overscroll-behavior:contain;
  background:var(--card);border:1px solid var(--line);border-radius:10px;padding:10px 12px;
  box-shadow:var(--shadow);font-size:14px;line-height:1.55;color:var(--ink);
  font-weight:400;text-align:left}
.help .pop p{margin:0 0 6px}
.navmenu{position:absolute;right:0;top:calc(100% + 6px);z-index:40;
  display:flex;flex-direction:column;gap:6px;padding:8px;min-width:180px;
  background:var(--card);border:1px solid var(--line);border-radius:12px;
  box-shadow:var(--shadow)}
.navmenu .navbtn{justify-content:flex-start;border-color:transparent;background:transparent}
.navmenu .navbtn:hover{background:var(--chip);border-color:var(--line)}
/* 2026 portal concept: clearer application hierarchy and reusable UI patterns */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,
textarea:focus-visible,summary:focus-visible{
  outline:3px solid rgba(244,124,32,.38);outline-offset:2px;
}
.head{position:sticky;top:0;z-index:35;background:var(--head-bg);
  backdrop-filter:blur(14px)}
/* Werkruimte: de beheertabs staan als zijbalk links van de pagina-inhoud
   (_werkruimte_wikkel in _page). Kleefpositie onder de kopbalk (.head is
   sticky, ~100px hoog) zodat het menu meescrollt op lange pagina's. */
.workspace{display:flex;align-items:flex-start;gap:26px;margin:20px 0 0}
.workspace-main{flex:1 1 auto;min-width:0}
.workspace-nav{
  flex:none;width:212px;position:sticky;top:112px;margin:0;padding:10px 8px;
  display:flex;flex-direction:column;gap:6px;
  border:1px solid var(--line);border-radius:14px;background:var(--chip);
  transition:width .18s ease;
}
.workspace-nav-head{display:flex;align-items:center;justify-content:space-between;
  gap:8px;padding:2px 2px 4px 8px}
.workspace-nav-label{
  flex:none;color:var(--muted);font-size:11px;font-weight:800;
  letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;
}
.workspace-nav-toggle{
  flex:none;display:grid;place-items:center;width:28px;height:28px;padding:0;
  border:1px solid var(--line);border-radius:8px;background:var(--card);
  color:var(--muted);cursor:pointer;transition:.16s ease;
}
.workspace-nav-toggle:hover{border-color:var(--orange);color:var(--orange)}
.workspace-nav-toggle svg{transition:transform .18s ease}
.workspace-tabs{display:flex;flex-direction:column;gap:2px;min-width:0}
.workspace-tab{
  position:relative;display:flex;align-items:center;gap:10px;
  padding:9px 10px;border-radius:9px;color:var(--muted);font-size:13px;
  font-weight:650;text-decoration:none;white-space:nowrap;transition:.16s ease;
}
.workspace-tab-icon{flex:0 0 18px}
.workspace-tab-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}
.workspace-tab:hover{background:var(--card);color:var(--ink)}
/* Ingeklapt: smalle rail met alleen iconen; de tabnaam zit in title. */
.workspace.is-collapsed{gap:18px}
.workspace.is-collapsed .workspace-nav{width:56px;padding:10px 6px}
.workspace.is-collapsed .workspace-nav-head{justify-content:center;padding:0 0 4px}
.workspace.is-collapsed .workspace-nav-label{display:none}
.workspace.is-collapsed .workspace-nav-toggle svg{transform:rotate(180deg)}
.workspace.is-collapsed .workspace-tab{justify-content:center;padding:10px 0}
.workspace.is-collapsed .workspace-tab-label{display:none}
.workspace.is-collapsed .tab-count{position:absolute;top:1px;right:1px;margin:0;
  padding:0 4px;font-size:10px;line-height:15px}
.workspace-tab.is-active{
  color:#fff;background:linear-gradient(135deg,var(--navy),var(--navy-d));
  box-shadow:0 7px 18px -10px rgba(32,48,74,.9);
}
/* Het teller-merkje op een subnav-tab draagt twee klassen (zie
   _admin_subnav): één waar tests op controleren dat het merkje wel/niet in
   de HTML staat, en deze losse tweede klasse om te stylen. Bewust niet
   dezelfde klasse voor beide: zou de opmaak op de eerste klasse staan, dan
   staat die naam ook zonder gerenderd merkje al in de -- op elke pagina
   meegestuurde -- stylesheet, en meet de test dus niets meer. Positioneel
   stylen (bv. via de ouder-tab) is ook geen optie: dat pakt straks ook een
   ander <span> in de tab (een icoon) mee. */
.tab-count{display:inline-block;margin-left:6px;padding:0 6px;
  border-radius:9px;background:#c0392b;color:#fff;font-size:11px;
  font-weight:700;line-height:17px}
.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
  margin-bottom:4px}
.page-heading-main{min-width:0}
.page-heading h1{font-size:30px;margin:0;letter-spacing:-.025em}
.page-heading .sub{margin:7px 0 0;max-width:720px}
.page-context{
  flex:none;padding:7px 11px;border:1px solid var(--line);border-radius:999px;
  color:var(--muted);background:var(--chip);font-size:11px;font-weight:700;
}
.workflow-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 18px}
.workflow-step{display:flex;gap:11px;padding:14px;border:1px solid var(--line);
  border-radius:12px;background:var(--chip)}
.workflow-step>span{display:grid;place-items:center;flex:0 0 25px;width:25px;height:25px;
  border-radius:8px;color:#fff;background:var(--orange);font-size:11px;font-weight:800}
.workflow-step strong,.workflow-step small{display:block}
.workflow-step strong{font-size:14px;margin-bottom:3px}
.workflow-step small{color:var(--muted);font-size:12.5px;line-height:1.5}
.rule-builder{margin-top:18px;border:1px solid var(--line);border-radius:16px;
  background:var(--card);box-shadow:var(--shadow);overflow:hidden}
.rule-builder-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;
  padding:20px 22px;border-bottom:1px solid var(--line)}
.rule-builder-head .eyebrow{margin-bottom:4px}
.rule-builder-head h2{font-size:18px;margin:0 0 4px}
.kop-met-help{display:flex;align-items:center;gap:8px}
.rule-builder-head p:last-child{margin:0;color:var(--muted);font-size:14px;line-height:1.5}
.rule-builder-body{padding:5px 22px 20px}
.rule-step{min-width:0;margin:0;padding:19px 0;border:0;border-bottom:1px solid var(--line)}
.rule-step legend{display:flex;align-items:center;gap:12px;width:100%;padding:0}
.rule-step legend>b{display:grid;place-items:center;flex:0 0 29px;width:29px;height:29px;
  border-radius:9px;background:var(--navy);color:#fff;font-size:11px}
.rule-step legend span,.rule-step legend strong,.rule-step legend small{display:block}
.rule-step legend strong{font-size:14.5px}
.rule-step legend small{margin-top:3px;color:var(--muted);font-size:12.5px;
  line-height:1.45;font-weight:400}
.rule-step>.rule-field,.rule-step>.rule-grid{margin-top:14px}
.rule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.rule-grid-response{grid-template-columns:repeat(2,minmax(0,1fr))}
.rule-field{display:flex;flex-direction:column;gap:5px;min-width:0}
.rule-field>span{color:var(--muted);font-size:12px;font-weight:800;
  letter-spacing:.06em;text-transform:uppercase}
.rule-field input,.rule-field select{width:100%;min-height:40px;padding:8px 10px;
  border:1px solid var(--line);border-radius:9px;background:var(--chip);
  color:var(--ink);font-size:13.5px}
.rule-field small{color:var(--muted);font-size:12.5px;line-height:1.45}
.rule-builder-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;
  padding-top:18px}
.rule-builder-actions>a{margin-right:auto;color:var(--muted);font-size:13.5px;font-weight:650}
.primary-action{padding:10px 17px;border:0;border-radius:10px;cursor:pointer;
  color:#fff;background:linear-gradient(135deg,var(--navy),var(--navy-d));
  font-size:13.5px;font-weight:750;box-shadow:0 9px 20px -12px rgba(32,48,74,.9)}
/* Facturatie-blok op de domein-detailpagina: label/waarde-rijen i.p.v. een
   dichtgepakte alinea, zodat de gegevens leesbaar en presenteerbaar zijn. */
.billing-facts{display:grid;gap:15px;margin:14px 0 0}
.billing-settings{grid-template-columns:repeat(3,minmax(0,1fr))}
.billing-details{grid-template-columns:repeat(auto-fit,minmax(175px,1fr))}
.billing-facts>div{display:flex;flex-direction:column;gap:5px;min-width:0}
.billing-facts dt,.billing-facts>div>span{color:var(--muted);font-size:12px;
  font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.billing-facts strong,.billing-facts>div>p{margin:0;font-size:15px;font-weight:600;
  color:var(--ink);word-break:break-word}
.billing-facts form{display:flex;align-items:center;gap:9px;flex-wrap:nowrap}
.billing-facts select{min-height:38px;padding:7px 10px;border:1px solid var(--line);
  border-radius:9px;background:var(--chip);color:var(--ink);font-size:14px}
.rule-example{margin-top:16px;padding:11px 13px;border:1px solid var(--line);
  border-radius:10px;background:var(--chip);color:var(--muted);font-size:13px;
  line-height:1.5}
.rule-example summary{cursor:pointer;color:var(--ink);font-weight:700}
.rule-example p{margin:9px 0 0;line-height:1.55}
.row-actions{display:inline-block;text-align:left}
.row-actions>summary{list-style:none}
.row-actions>summary::-webkit-details-marker{display:none}
.row-actions[open]>summary{border-color:var(--orange);color:var(--orange)}
.row-actions-menu{display:grid;gap:5px;min-width:150px;margin-top:6px;padding:7px;
  border:1px solid var(--line);
  border-radius:11px;background:var(--card);box-shadow:var(--shadow)}
.row-actions-menu form{margin:0}
.row-actions-menu .navbtn,.row-actions-menu .rowbtn{display:flex;width:100%;
  justify-content:flex-start;padding:8px 10px}
.filter-panel{margin-top:18px;border:1px solid var(--line);border-radius:14px;
  background:var(--chip);overflow:hidden}
.filter-panel>summary{display:flex;align-items:center;gap:16px;padding:15px 17px;
  list-style:none;cursor:pointer}
.filter-panel>summary::-webkit-details-marker{display:none}
.filter-panel>summary>span:first-child{margin-right:auto}
.filter-panel>summary strong,.filter-panel>summary small{display:block}
.filter-panel>summary strong{font-size:14px}
.filter-panel>summary small{margin-top:3px;color:var(--muted);font-size:12.5px;
  line-height:1.45}
.filter-panel>summary::after{content:"";width:9px;height:9px;flex:none;margin:0 3px 4px 5px;
  border-right:2px solid var(--orange);border-bottom:2px solid var(--orange);
  transform:rotate(45deg);transition:transform .16s ease}
.filter-panel[open]>summary{border-bottom:1px solid var(--line)}
.filter-panel[open]>summary::after{transform:rotate(-135deg);margin-bottom:-3px}
.filter-panel-body{padding:5px 17px 17px}
.incident-stats{display:grid;grid-template-columns:repeat(4,minmax(145px,1fr));
gap:10px;margin:18px 0}
.incident-stat{display:flex;flex-direction:column;min-height:104px;padding:14px 16px;
border:1px solid var(--line);border-radius:14px;background:var(--card);
color:var(--ink);text-decoration:none;box-shadow:var(--shadow);transition:.15s ease}
a.incident-stat:hover{border-color:var(--info-bd);transform:translateY(-1px)}
.incident-stat.active{border-color:var(--navy-ink);box-shadow:0 0 0 2px rgba(24,48,91,.1)}
.incident-stat.attention{background:linear-gradient(135deg,var(--bad-bg),var(--card))}
.incident-stat small{color:var(--muted);font-size:11px;font-weight:700;
text-transform:uppercase;letter-spacing:.07em}
.incident-stat strong{font-size:27px;line-height:1.15;margin-top:5px}
.incident-stat span{margin-top:auto;color:var(--muted);font-size:12px}
.ownership-tabs{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin:16px 0 2px}
.ownership-tabs a{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;
border:1px solid var(--line);border-radius:999px;background:var(--card);
color:var(--muted);text-decoration:none;font-size:12.5px;font-weight:650}
.ownership-tabs a.active{border-color:var(--navy-ink);background:var(--navy);color:#fff}
.ownership-tabs span{display:inline-grid;place-items:center;min-width:20px;height:20px;
padding:0 5px;border-radius:999px;background:rgba(128,128,128,.16);font-size:11px}
.workload{margin:16px 0 0;padding:16px 20px;border:1px solid var(--line);
border-radius:14px;background:var(--card);box-shadow:var(--shadow)}
.workload table{width:100%;border-collapse:collapse;min-width:340px}
.workload th{padding:7px 10px;text-align:left;font-size:12px;font-weight:600;
color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.workload td{padding:8px 10px;border-top:1px solid var(--line);font-size:14px}
.workload td+td{width:110px;font-weight:650}
.workload tr.active td{background:var(--chip)}
.workload a{color:inherit;text-decoration:none;font-weight:650}
.workload a:hover{text-decoration:underline}
.dash-assignment-counts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dash-assignment-counts>a{display:flex;flex-direction:column;padding:13px 15px;
border:1px solid var(--line);border-radius:12px;background:var(--chip);
color:var(--ink);text-decoration:none}
.dash-assignment-counts>a.unassigned{background:var(--warn-bg)}
.dash-assignment-counts small{color:var(--muted);font-weight:700;text-transform:uppercase;
font-size:10.5px;letter-spacing:.06em}
.dash-assignment-counts strong{font-size:27px;line-height:1.15;margin-top:3px}
.dash-assignment-counts span{color:var(--muted);font-size:11.5px}
.dash-assignment-detail{display:grid;grid-template-columns:1fr 1fr;gap:20px;
margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.dash-assignment-detail h3{margin:0 0 7px;font-size:13px}
.dash-work-row{display:grid;grid-template-columns:8px 1fr;gap:9px;padding:8px 0;
border-top:1px solid var(--line);color:var(--ink);text-decoration:none}
.dash-work-row>span{width:8px;height:8px;margin-top:5px;border-radius:50%}
.dash-work-row>div{min-width:0}
.dash-work-row strong,.dash-work-row small{display:block}
.dash-work-row strong{font-size:12.5px;line-height:1.35;overflow-wrap:anywhere;
display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.dash-work-row small{margin-top:2px;color:var(--muted);font-size:10.5px}
.dash-work-more{display:inline-block;margin-top:9px;color:var(--navy-ink);
font-size:11.5px;font-weight:700;text-decoration:none}
.finance-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
gap:10px;margin:18px 0}
.finance-summary.vijf{grid-template-columns:repeat(5,minmax(0,1fr))}
.finance-summary>div{display:flex;flex-direction:column;min-height:104px;padding:14px 16px;
border:1px solid var(--line);border-radius:14px;background:var(--card);
box-shadow:var(--shadow)}
.finance-summary>div.primary{color:#fff;border-color:var(--navy-ink);
background:linear-gradient(135deg,var(--navy),#31578f)}
.finance-summary small{font-size:10.5px;font-weight:750;text-transform:uppercase;
letter-spacing:.06em;color:var(--muted)}
.finance-summary .primary small,.finance-summary .primary span{color:#dfe8f8}
.finance-summary strong{margin-top:5px;font-size:25px;line-height:1.15}
.finance-summary span{margin-top:auto;color:var(--muted);font-size:11.5px}
.finance-warning{margin:10px 0;padding:10px 13px;border:1px solid var(--warn-bd);
border-radius:10px;background:var(--warn-bg);color:var(--warn-fg);font-weight:650;font-size:13px}
.finance-table{overflow-x:auto;border:1px solid var(--line);border-radius:12px;
background:var(--card)}
/* Afvinkformulier in de administratietabel: notitieveld ruim genoeg om een
   hele zin te lezen, en een compacte knop -- .btn is de volledige-breedte
   knop van de scanner en oogt hier veel te zwaar. */
/* Tariefveld op de domeinpagina: krimpt mee met zijn kolom (een vaste breedte
   liep over de buurkolom heen); de knop wipt eronder als het te krap wordt. */
.veld-hint{color:var(--muted);font-size:12.5px;line-height:1.5}
.tarief-veld{flex:1 1 96px;min-width:0;width:96px;
  padding:9px 11px;font-size:14px;line-height:1.4;
  border:1px solid var(--line);border-radius:9px;background:var(--card);
  color:var(--ink)}
.werk-afvink{display:flex;gap:8px;align-items:center}
.werk-afvink input[type=text],.werk-afvink input:not([type]){
  flex:1 1 auto;min-width:260px;padding:9px 11px;font-size:14px;
  line-height:1.4;border:1px solid var(--line);border-radius:9px;
  background:var(--card);color:var(--ink);
}
.werk-afvink button{
  flex:0 0 auto;margin:0;border:0;border-radius:9px;cursor:pointer;
  padding:9px 14px;font-size:13.5px;font-weight:700;color:#fff;
  white-space:nowrap;background:var(--navy);
}
.werk-afvink button:hover{background:var(--navy-d)}
.finance-explanation{margin:13px 0;border-top:1px solid var(--line);padding-top:12px}
.finance-explanation summary{cursor:pointer;color:var(--navy-ink);font-weight:700;
font-size:13px}
.finance-explanation div{max-width:800px;color:var(--muted);font-size:12.5px}
.license-toolbar{display:flex;justify-content:space-between;align-items:center;
gap:12px;margin:0 0 10px}
.license-toolbar p{margin:0}
.license-toolbar p span{display:block;margin-top:2px;color:var(--muted);font-size:11.5px}
.risk-summary,.compliance-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
gap:10px;margin:18px 0}
.risk-summary>*,.compliance-summary>div{display:flex;flex-direction:column;
min-height:100px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;
background:var(--card);color:var(--ink);text-decoration:none;box-shadow:var(--shadow)}
.risk-summary .high{border-color:var(--bad-bd);background:var(--bad-bg)}
.compliance-summary .active{border-color:var(--ok-bd);background:var(--ok-bg)}
.compliance-summary .partial{border-color:var(--warn-bd);background:var(--warn-bg)}
/* Aandachtspunt (TenantPolicy): tekst in het oranje van het logo (verzoek 06-10) */
.compliance-summary .partial small,.compliance-summary .partial span{color:var(--orange-d)}
.compliance-summary .partial strong{color:var(--orange)}
.compliance-summary .inactive{border-color:var(--bad-bd);background:var(--bad-bg)}
.risk-summary small,.compliance-summary small{color:var(--muted);font-size:10.5px;
font-weight:750;text-transform:uppercase;letter-spacing:.06em}
.risk-summary strong,.compliance-summary strong{margin-top:5px;font-size:26px}
.risk-summary span,.compliance-summary span{margin-top:auto;color:var(--muted);
font-size:11.5px}
.risk-table,.compliance-table{overflow-x:auto;border:1px solid var(--line);
border-radius:12px;background:var(--card)}
.compliance-reliability h2{margin:0 0 8px;font-size:16px}
.compliance-reliability ul{margin:0;padding-left:20px}
.incident-detail-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
gap:10px;margin:18px 0 22px}
.incident-detail-summary>div{display:flex;flex-direction:column;padding:14px 16px;
border:1px solid var(--line);border-radius:14px;background:var(--card)}
.incident-detail-summary small,.incident-section-label{font-size:10.5px;font-weight:800;
color:var(--muted);letter-spacing:.08em;text-transform:uppercase}
.incident-detail-summary strong{margin:5px 0;font-size:14px}
.incident-detail-summary span{color:var(--muted);font-size:11.5px}
.incident-section{position:relative;margin:14px 0;padding:20px;
border:1px solid var(--line);border-radius:16px;background:var(--card);
box-shadow:var(--shadow)}
.incident-section-label{margin-bottom:6px;color:var(--navy-ink)}
.incident-dossier{margin:18px 0;padding:20px;border:1px solid var(--line);
border-radius:16px;background:linear-gradient(135deg,var(--card),var(--chip));
box-shadow:var(--shadow)}
.dossier-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);
gap:24px;margin-top:16px}
.dossier-owner{display:flex;gap:10px;align-items:end;margin-bottom:16px}
.dossier-owner .rule-field{flex:1}
.dossier-note textarea{resize:vertical}
.dossier-note .btn{margin-top:9px}
.incident-notes{display:grid;gap:8px;margin-top:14px}
.incident-note{padding:11px 13px;border:1px solid var(--line);border-radius:11px;
background:var(--card)}
.incident-note p{margin:0 0 5px;white-space:pre-wrap;font-size:13.5px}
.incident-note small,.incident-timeline small{color:var(--muted);font-size:11px}
.incident-timeline{list-style:none;margin:0;padding:0}
.incident-timeline li{position:relative;display:grid;grid-template-columns:14px 1fr;
gap:9px;padding:0 0 17px}
.incident-timeline li>span{width:10px;height:10px;margin-top:4px;border-radius:50%;
background:var(--navy);box-shadow:0 0 0 4px rgba(24,48,91,.1)}
.incident-timeline li:not(:last-child)::after{content:"";position:absolute;left:4px;
top:15px;bottom:2px;width:1px;background:var(--line)}
.incident-timeline strong{font-size:13px}
.incident-timeline p{margin:3px 0;color:var(--muted);font-size:12px;
white-space:pre-wrap;overflow-wrap:anywhere}
.closure-form{display:grid;grid-template-columns:minmax(190px,.7fr)
minmax(240px,1.3fr) auto;gap:10px;align-items:end;margin:0}
.incident-watch{margin:18px 0;padding:20px;border:1px solid var(--info-bd);
border-radius:16px;background:linear-gradient(135deg,var(--info-bg),var(--card));
box-shadow:var(--shadow)}
.incident-watch-head{display:flex;justify-content:space-between;gap:20px;align-items:start}
.incident-watch-head h2{margin:2px 0 5px}
.incident-watch-head p{margin:0;max-width:720px;color:var(--muted)}
.watch-preview{margin:16px 0;padding:13px 15px;border:1px solid var(--line);
border-radius:12px;background:var(--card)}
.watch-preview>small{font-size:10.5px;font-weight:800;text-transform:uppercase;
letter-spacing:.08em;color:var(--navy-ink)}
.watch-preview>div{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}
.watch-preview span{padding:4px 9px;border-radius:999px;background:var(--chip);
border:1px solid var(--line);font-size:11.5px}
.watch-result{margin:14px 0;padding:10px 13px;border-radius:10px;font-size:13px;
font-weight:650}
.watch-result.ok{color:var(--ok-fg);background:var(--ok-bg);border:1px solid var(--ok-bd)}
.watch-result.error{color:var(--bad-fg);background:var(--bad-bg);border:1px solid var(--bad-bd)}
.watch-result.info{color:var(--ink2);background:var(--chip);border:1px solid var(--line)}
.watch-result a{color:inherit}
.watch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.view-mode{display:flex;align-items:center;justify-content:space-between;gap:14px;
margin:14px 0;padding:9px 11px 9px 14px;border:1px solid var(--line);
border-radius:12px;background:var(--card)}
.view-mode>div{display:flex;gap:8px;align-items:baseline}
.view-mode small{color:var(--muted);font-size:11px;text-transform:uppercase;
letter-spacing:.06em}
.view-mode strong{font-size:13px}
.view-mode form{display:flex;padding:3px;border-radius:9px;background:var(--chip)}
.view-mode button{padding:6px 11px;border:0;border-radius:7px;background:transparent;
color:var(--muted);font-weight:650;cursor:pointer}
.view-mode button.active{background:var(--card);color:var(--navy-ink);
box-shadow:0 1px 4px rgba(16,24,40,.14)}
.progressive-panel{margin:14px 0;border:1px solid var(--line);border-radius:14px;
background:var(--card);box-shadow:var(--shadow);overflow:hidden}
.progressive-panel>summary{display:flex;align-items:center;padding:15px 17px;
cursor:pointer;list-style:none}
.progressive-panel>summary::-webkit-details-marker{display:none}
.progressive-panel>summary span{display:block}
.progressive-panel>summary strong,.progressive-panel>summary small{display:block}
.progressive-panel>summary small{margin-top:3px;color:var(--muted);font-size:11.5px}
.progressive-panel>summary::after{content:"";margin-left:auto;width:8px;height:8px;
border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);
transform:rotate(45deg);transition:.15s}
.progressive-panel[open]>summary::after{transform:rotate(225deg)}
.progressive-panel-body{padding:0 10px 10px}
.progressive-panel-body>.incident-dossier,
.progressive-panel-body>.incident-watch{margin:0;box-shadow:none}
.report-editor{margin:18px 0 0;border:1px solid var(--line);border-radius:14px;
background:var(--card);box-shadow:var(--shadow)}
.progressive-panel-body>.report-editor{margin:0;box-shadow:none}
.report-status{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;
border-radius:999px;background:var(--ok-bg);color:var(--ok-fg);font-size:11px;font-weight:750}
.report-status::before{content:"";width:6px;height:6px;border-radius:50%;
background:var(--ok-fg)}
.report-status.off{background:var(--chip);color:var(--muted)}
.report-status.off::before{background:var(--muted)}
@media(max-width:760px){.incident-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.incident-detail-summary{grid-template-columns:1fr}}
@media(max-width:760px){.dossier-grid,.closure-form,.watch-grid{grid-template-columns:1fr}}
@media(max-width:760px){.dash-assignment-detail{grid-template-columns:1fr}}
@media(max-width:900px){.finance-summary,.finance-summary.vijf{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.risk-summary,.compliance-summary{grid-template-columns:repeat(2,1fr)}}
.active-filters{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}
.active-filter{padding:5px 8px;border:1px solid var(--line);border-radius:999px;
  background:var(--card);color:var(--muted);font-size:10.5px;white-space:nowrap}
.active-filter b{color:var(--ink)}
.section-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;
  flex-wrap:wrap;margin:18px 0 8px}
.section-toolbar h2{font-size:18px;margin:0}
.dashboard-stack{display:flex;flex-direction:column;gap:16px;margin-top:18px}
.dashboard-stack>section{transition:border-color .16s ease,box-shadow .16s ease}
.dashboard-stack>section:hover{border-color:color-mix(in srgb,var(--orange) 25%,var(--line));
  box-shadow:0 14px 38px -18px rgba(24,39,75,.38)}
@media (max-width:820px){
  /* Smal scherm: geen zijbalk maar de tabs als rij boven de inhoud, en de
     inklapknop weg -- ook als de browser 'dicht' heeft onthouden. */
  .workspace{display:block}
  .workspace-nav,.workspace.is-collapsed .workspace-nav{
    position:static;width:auto;margin:0 0 22px;padding:8px}
  .workspace-nav-toggle{display:none}
  .workspace.is-collapsed .workspace-nav-head{justify-content:flex-start;padding:2px 2px 4px 8px}
  .workspace.is-collapsed .workspace-nav-label{display:block}
  .workspace-tabs{flex-direction:row;flex-wrap:wrap;gap:4px}
  .workspace.is-collapsed .workspace-tab{justify-content:flex-start;padding:9px 10px}
  .workspace.is-collapsed .workspace-tab-label{display:block}
  .workspace.is-collapsed .tab-count{position:static;margin-left:6px;padding:0 6px;
    font-size:11px;line-height:17px}
  .page-heading{display:block}
  .page-context{display:inline-block;margin-top:12px}
  .workflow-strip{grid-template-columns:1fr}
  .rule-grid,.rule-grid-response{grid-template-columns:1fr}
  .billing-settings{grid-template-columns:1fr}
}
/* Text-like form controls follow the theme (dark mode readability). */
input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]),
select,textarea{
  background:var(--chip);color:var(--ink);border:1px solid var(--line);border-radius:8px}
input::placeholder{color:var(--muted)}
/* Compact row-action buttons (user table): themed pill + hover. */
.rowbtn{padding:6px 12px;border:1px solid var(--line);border-radius:8px;
  background:var(--chip);color:var(--ink);font-size:13px;font-weight:600;
  cursor:pointer;transition:border-color .15s,color .15s,background .15s}
.rowbtn:hover{border-color:var(--orange);color:var(--orange)}
.rowbtn.danger{border-color:transparent;background:#c0392b;color:#fff}
.rowbtn.danger:hover{background:#a93226;color:#fff}
/* logindex: filterbalk + uitklapbare event-tabel */
.logfilter{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin:0 0 14px}
.logfilter label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted)}
.logfilter input,.logfilter select{border:1px solid var(--line);border-radius:8px;
  background:var(--chip);color:var(--ink);font-size:13.5px;padding:7px 9px}
.logtable{border:1px solid var(--line);border-radius:14px;overflow:hidden;
  font-size:13px;margin-top:8px;background:var(--card);box-shadow:var(--shadow)}
.loghead,details.logrow>summary{display:grid;
  grid-template-columns:150px 125px 1fr 1.4fr 115px 150px;gap:10px;
  padding:9px 12px;align-items:baseline}
.logrow{border-top:1px solid var(--line)}
.logtable>.logrow:first-child{border-top:0}
.loghead{background:var(--chip);font-weight:700;color:var(--muted);
  text-transform:uppercase;letter-spacing:.04em;font-size:11px}
details.logrow>summary{cursor:pointer;list-style:none}
details.logrow>summary::-webkit-details-marker{display:none}
details.logrow[open]{background:var(--chip)}
details.logrow>summary:hover{background:rgba(244,124,32,.06)}
.loghead span,details.logrow>summary span{overflow:hidden;
  text-overflow:ellipsis;white-space:nowrap}
.logjson{margin:0 12px 12px;padding:12px;border-radius:8px;
  background:var(--navy);color:#e7ecf3;font-size:12px;line-height:1.45;
  overflow-x:auto;white-space:pre}
.refreshbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  margin:0 0 14px;font-size:13px}
.refresh-lbl{color:var(--muted);margin-left:6px}
.refresh-chip{padding:4px 10px;border:1px solid var(--line);border-radius:999px;
  background:var(--chip);color:var(--muted);text-decoration:none;font-weight:600}
.refresh-chip:hover{border-color:var(--orange);color:var(--orange)}
.refresh-chip.refresh-active{background:var(--orange);border-color:var(--orange);
  color:#fff}
/* inlogscherm: split-screen -- navy propositiepaneel links, formulier rechts;
   de kaart heeft dan geen kopbalk (bare) en de body geen padding */
.body.bare{padding:0}
.logingrid{display:grid;grid-template-columns:1.05fr .95fr;min-height:580px}
.loginhero{
  background:
    radial-gradient(520px 320px at 100% 0%, rgba(244,124,32,.22), transparent 62%),
    linear-gradient(160deg,var(--navy),var(--navy-d));
  color:#fff;padding:38px 40px 30px;border-radius:0 0 0 19px;
  display:flex;flex-direction:column;
}
.loginhero-logo{width:min(100%,290px);height:auto;display:block;margin:0 0 34px}
.loginhero .eyebrow{color:#f9a463}
.loginhero h1{color:#fff;font-size:26px;margin:0 0 10px}
.loginhero .sub{color:rgba(255,255,255,.76);margin-bottom:26px}
.loginpunten{list-style:none;margin:0;padding:0}
.loginpunt{display:flex;gap:12px;align-items:flex-start;margin:0 0 16px}
.loginpunt-ico{
  flex:0 0 32px;height:32px;border-radius:9px;display:inline-flex;align-items:center;
  justify-content:center;background:rgba(244,124,32,.18);border:1px solid rgba(244,124,32,.45);
}
.loginpunt b{display:block;font-size:14px;line-height:1.3;color:#fff}
.loginpunt span{display:block;color:rgba(255,255,255,.7);font-size:13px;line-height:1.45;margin-top:2px}
.logintrust{
  margin-top:auto;padding-top:20px;border-top:1px solid rgba(255,255,255,.14);
  display:flex;flex-wrap:wrap;gap:8px 22px;font-size:12.5px;color:rgba(255,255,255,.8);
}
.logintrust span{display:inline-flex;align-items:center;gap:7px}
.loginvak{padding:26px 40px 36px;display:flex;flex-direction:column}
.loginvak-top{display:flex;justify-content:flex-end;margin:0 0 28px}
.loginlabel{display:block;font-size:13px;font-weight:700;margin:0 0 6px;color:var(--ink)}
.logininput{
  width:100%;padding:12px 14px;margin:0 0 16px;border:1px solid var(--line);
  border-radius:10px;background:var(--chip);color:var(--ink);font-size:15px;
  transition:border-color .15s,box-shadow .15s,background .15s;
}
.logininput:focus{outline:none;border-color:var(--orange);background:var(--card);
  box-shadow:0 0 0 3px rgba(244,124,32,.22)}
.loginvak .btn{margin-top:6px}
.loginvak a{color:var(--navy-ink);font-weight:600}
@media (prefers-color-scheme:dark){.loginvak a{color:#9ec0ff}}
.loginvak .loginfout{margin:0 0 14px}
@media (max-width:720px){
  .logingrid{grid-template-columns:1fr;min-height:0}
  .loginhero{border-radius:0;padding:24px 24px 22px}
  .loginhero-logo{width:min(100%,220px);margin-bottom:18px}
  .loginhero h1{font-size:20px}
  .loginhero .sub{margin-bottom:0}
  .loginpunten,.logintrust{display:none}
  .loginvak{padding:22px 24px 28px}
  .loginvak-top{margin-bottom:18px}
}
/* de kop-tagline heeft veel letterspatie: op smalle schermen zou hij de kaart
   breder maken dan het scherm (horizontaal scrollen) */
@media (max-width:560px){.kopright>.eyebrow{display:none}}
.kopright{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.taalkiezer{display:inline-flex;border:1px solid var(--line);border-radius:999px;overflow:hidden}
.taalknop{
  border:0;background:transparent;color:var(--muted);cursor:pointer;
  padding:5px 11px;font-size:12px;font-weight:800;letter-spacing:.06em;
}
.taalknop:hover{color:var(--ink);background:var(--chip)}
.taalknop.actief{background:var(--navy);color:#fff;cursor:default}
.move-table-wrap{width:100%;overflow-x:auto}
.move-table{width:100%;min-width:820px;border-collapse:collapse;text-align:left}
.move-table th,.move-table td{padding:11px 20px;border-bottom:1px solid var(--line);
  vertical-align:top}
.move-table th:first-child,.move-table td:first-child{padding-left:0;white-space:nowrap}
.move-table th:last-child,.move-table td:last-child{padding-right:0;white-space:nowrap}
.move-table th:nth-child(2),.move-table td:nth-child(2){min-width:220px;white-space:nowrap}
.move-table th:nth-child(3),.move-table td:nth-child(3){min-width:120px;white-space:nowrap}
.move-table th:nth-child(4),.move-table td:nth-child(4){min-width:280px}
/* ---- Kleurenschema 2026-09-29: gedeelde onderdelen (laatste = wint) ---- */
body{background:var(--bg1)}
.navbtn{background:var(--card);color:var(--ink2)}
.navbtn:hover{background:var(--hover);color:var(--ink)}
.navbtn.active{background:var(--accent);border-color:var(--accent);color:#fff}
.btn{background:linear-gradient(135deg,var(--accent),var(--accent-d))}
.workspace-nav{background:var(--card);box-shadow:var(--shadow)}
.workspace-tab{color:var(--ink2)}
.workspace-tab:hover{background:var(--hover);color:var(--ink)}
.workspace-tab.is-active{color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-d))}
/* Zijbalk 2026-09-30: lichte tint, gedempte iconen, witte hover-pil en een
   oranje merkstreepje links van het actieve item. */
.workspace-nav{background:var(--nav-bg)}
.workspace-nav-label{letter-spacing:.1em}
.workspace-tab .workspace-tab-icon{color:var(--nav-icon)}
.workspace-tab:hover{background:var(--card);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}
.workspace-tab:hover .workspace-tab-icon{color:var(--ink)}
.workspace-tab.is-active .workspace-tab-icon{color:#fff}
.workspace-tab.is-active::before{content:"";position:absolute;left:0;top:7px;bottom:7px;width:3px;border-radius:0 3px 3px 0;background:var(--orange)}
.taalknop.actief{background:var(--accent)}
.compliance-table tbody tr:hover,.risk-table tbody tr:hover{background:var(--hover)}
.body a:not([class]),.body a:not([class]):visited{color:var(--link)}
/* Overgang tot stap 2 (losse kleurcodes per pagina): inline gekleurde
   statuspillen naar zachte tint + rand; bolletjes (met width) houden een
   volle kleur. Verdwijnt zodra de pagina's de --ok/--warn/--bad-tokens
   rechtstreeks gebruiken. */
span[style*="background:#188038"]:not([style*="width"]){background:var(--ok-bg)!important;color:var(--ok-fg)!important;border:1px solid var(--ok-bd)}
span[style*="background:#c0392b"]:not([style*="width"]){background:var(--bad-bg)!important;color:var(--bad-fg)!important;border:1px solid var(--bad-bd)}
span[style*="background:#b8860b"]:not([style*="width"]){background:var(--warn-bg)!important;color:var(--warn-fg)!important;border:1px solid var(--warn-bd)}
span[style*="background:#888"]:not([style*="width"]),span[style*="background:#666"]:not([style*="width"]){background:var(--nt-bg)!important;color:var(--nt-fg)!important;border:1px solid var(--nt-bd)}
span[style*="width"][style*="background:#188038"]{background:var(--ok-fg)!important}
span[style*="width"][style*="background:#c0392b"]{background:var(--bad-fg)!important}
span[style*="width"][style*="background:#b8860b"]{background:var(--warn-fg)!important}
[style*="color:#188038"]{color:var(--ok-fg)!important}
[style*="color:#c0392b"]{color:var(--bad-fg)!important}
[style*="color:#b8860b"]{color:var(--warn-fg)!important}
