/* The Body Clinic · CMS — one visual language, the tokens of bodyclinic.de (site/bodyclinic.css) */
/* the fonts of the site itself, served by the CMS under /site/fonts/ (no network needed) */
@font-face{font-family:'Fraunces';font-style:normal;font-weight:400 500;font-display:swap;src:url(/site/fonts/fraunces-normal-400-500-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:400 500;font-display:swap;src:url(/site/fonts/fraunces-normal-400-500-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url(/site/fonts/poppins-normal-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url(/site/fonts/poppins-normal-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url(/site/fonts/poppins-normal-500-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url(/site/fonts/poppins-normal-500-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url(/site/fonts/poppins-normal-600-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url(/site/fonts/poppins-normal-600-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
:root{--teal:#317689;--deep:#255664;--ink:#39332E;--grey:#5F5953;--mute:#8A847D;--sand:#F3EDE4;--light:#F8F6F2;--mist:#E6EEF0;--line:rgba(57,51,46,.1);--r:20px;--r2:12px;
  --ok:#3F7D5A;--ok-soft:#E4EFE8;--warn:#8F6A45;--warn-soft:#F1E8DC;--bad:#A8463C;--bad-soft:#F5E2DE;--teal-soft:#E3EEF1;--focus:rgba(49,118,137,.25);
  --shadow:0 10px 30px rgba(57,51,46,.08);--serif:Fraunces,Georgia,serif;--sans:Poppins,system-ui,sans-serif}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
body{margin:0;font:400 14px/1.55 var(--sans);color:var(--ink);background:var(--light);min-height:100vh}
h1,h2,h3,h4{font-family:var(--serif);font-weight:500;letter-spacing:0;color:var(--ink);margin:0 0 6px}
h1{font-size:30px;line-height:1.2}
h2{font-size:22px;line-height:1.25}
h3{font-size:18px;line-height:1.3}
h4{font-size:15px;font-family:var(--sans);font-weight:500}
p{margin:0 0 10px}
a{color:var(--teal);text-decoration:none}
a:hover{text-decoration:underline}
small,.sub{font-size:12.5px;color:var(--mute)}
p.sub{margin:0 0 18px;max-width:720px;font-size:14px;color:var(--grey)}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}
.vh{position:absolute;left:-9999px}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
button:disabled{opacity:.5;cursor:default}
code{font-family:ui-monospace,Menlo,monospace;font-size:12px;background:var(--mist);padding:1px 5px;border-radius:6px}
:focus-visible{outline:2px solid var(--focus);outline-offset:2px}

/* ---- buttons, fields, badges ---- */
.knop,.knop-rand,.knop-klein{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:10px 18px;font-weight:500;font-size:13.5px;line-height:1.2;white-space:nowrap;text-decoration:none!important;transition:background .15s,color .15s,box-shadow .15s}
.knop{background:var(--teal);color:#fff}
.knop:hover{background:var(--deep)}
.knop-rand{border:1px solid var(--line);color:var(--ink);background:#fff}
.knop-rand:hover{background:var(--mist)}
.knop-klein{padding:6px 12px;font-size:12.5px;border:1px solid var(--line);background:#fff;color:var(--ink)}
.knop-klein:hover{background:var(--mist)}
.knop.gevaar{background:var(--bad);color:#fff}
.knop-rand.gevaar,.knop-klein.gevaar{color:var(--bad)}
.rij{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:14px 0 0}
.input,.zoek,select,textarea.editor,input.veld,textarea.veld{font:inherit;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:var(--r2);padding:9px 12px;width:100%}
.input:focus,.zoek:focus,select:focus,textarea:focus,input.veld:focus{outline:0;border-color:var(--teal);box-shadow:0 0 0 3px var(--focus)}
select{appearance:none;-webkit-appearance:none;padding-right:32px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%2339332E' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 12px center;width:auto}
textarea.editor{min-height:420px;font-family:ui-monospace,Menlo,monospace;font-size:12px;line-height:1.5}
.badge{display:inline-block;font-size:11.5px;line-height:1;padding:5px 9px;border-radius:999px;background:var(--mist);color:var(--grey);white-space:nowrap;vertical-align:middle;font-weight:500}
.badge.aan{background:var(--teal-soft);color:var(--teal)}
.badge.ok{background:var(--ok-soft);color:var(--ok)}
.badge.warn{background:var(--warn-soft);color:var(--warn)}
.badge.bad{background:var(--bad-soft);color:var(--bad)}
.badge.stil{background:transparent;border:1px solid var(--line)}
.pill{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;padding:6px 12px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--grey)}
.pill.aan{background:var(--ink);color:#fff;border-color:var(--ink)}
.pills{display:flex;flex-wrap:wrap;gap:8px}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--mute);vertical-align:middle;margin-right:6px}
.dot.ok{background:var(--ok)}.dot.warn{background:var(--warn)}.dot.bad{background:var(--bad)}.dot.hol{background:transparent;border:1.5px solid var(--mute)}
.melding{padding:12px 16px;border-radius:var(--r2);background:var(--mist);margin:0 0 14px;font-size:13.5px}
.melding.ok{background:var(--ok-soft);color:var(--ok)}
.melding.fout{background:var(--bad-soft);color:var(--bad)}
.melding.warn{background:var(--warn-soft);color:var(--warn)}
.leeg{padding:28px;text-align:center;color:var(--mute);font-size:13.5px}
.kaart{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:22px 24px;margin:0 0 18px}
.kaart>h2:first-child,.kaart>h3:first-child{margin-top:0}
.tegels{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin:0 0 22px}
.tegel{display:block;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:18px 20px;color:inherit;text-decoration:none!important;transition:box-shadow .15s,transform .15s;text-align:left;width:100%}
a.tegel:hover,button.tegel:hover{box-shadow:var(--shadow);transform:translateY(-1px)}
.tegel b{display:block;font-size:15px;font-weight:500}
.tegel .n{font-family:var(--serif);font-size:34px;line-height:1;font-weight:500;color:var(--teal);margin:0 0 6px}
.tegel .n.nul{color:var(--mute)}
.tegel small{display:block;margin-top:4px}
.toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);background:var(--ink);color:#fff;padding:12px 20px;border-radius:999px;font-size:13.5px;box-shadow:var(--shadow);z-index:60;max-width:80vw}
.toast.fout{background:var(--bad)}
.kop{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap;margin:0 0 20px}
.kop .sub{margin-bottom:0}
.pad{font-size:13px;color:var(--mute);margin:0 0 8px}
.pad a{color:var(--mute)}

/* ---- tables ---- */
table{width:100%;border-collapse:collapse;font-size:13.5px}
th{text-align:left;font-weight:500;font-size:12.5px;color:var(--mute);padding:10px 12px;border-bottom:1px solid var(--line)}
td{padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:top}
tr:last-child td{border-bottom:0}
tbody tr.klik{cursor:pointer}
tbody tr.klik:hover{background:var(--light)}
td b{font-weight:500}
td small{display:block}
.num{text-align:right;font-variant-numeric:tabular-nums}
.tabel{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;margin:0 0 18px}
.tabel table th:first-child,.tabel table td:first-child{padding-left:20px}
.tabel table th:last-child,.tabel table td:last-child{padding-right:20px}
.tabel-scroll{overflow:auto}
/* the Trash (contract v2 § 6.4, 2.12.2): on a phone each entry is a small card within the table's card, without a sideways scroll: its name
   and address, one line with type, since, who and what it was (.tr-m, only there), then Restore and Remove for good under it */
.tr-tabel .tr-m{display:none}
@media (max-width:600px){
  .tr-tabel thead,.tr-tabel td.tr-k{display:none}
  .tr-tabel table,.tr-tabel tbody,.tr-tabel tr,.tr-tabel td{display:block}
  .tr-tabel tr{padding:14px 20px;border-bottom:1px solid var(--line)}
  .tr-tabel tr:last-child{border-bottom:0}
  .tabel.tr-tabel table td{padding:0;border:0}
  .tr-tabel td.tr-item{overflow-wrap:anywhere}
  .tr-tabel .tr-m{display:block;margin-top:4px;font-size:12.5px;color:var(--grey);line-height:1.45}
  .tr-tabel td.tr-acties{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
  .tr-tabel td.tr-acties:empty{display:none}
}
.filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:0 0 16px}
.filters .zoek{max-width:360px}
tr.entwurf td{color:var(--mute);font-style:italic}
tr.papierkorb td{color:var(--mute);text-decoration:line-through}

/* ---- login ---- */
#login{position:fixed;inset:0;background:var(--sand);display:flex;align-items:center;justify-content:center;padding:20px}
.in-kaart{background:#fff;border-radius:var(--r);box-shadow:var(--shadow);padding:40px 44px;width:420px;max-width:100%;text-align:center}
.in-logo{font-family:var(--serif);font-size:26px;font-weight:500;margin:0 0 4px}
.in-sub{color:var(--mute);margin:0 0 28px}
.in-knop{display:flex;flex-direction:column;align-items:center;gap:4px;width:100%;background:var(--teal);color:#fff;border-radius:var(--r2);padding:14px 18px;font-weight:500;font-size:15px;margin:0 0 10px}
.in-knop:hover{background:var(--deep)}
.in-knop small{color:rgba(255,255,255,.8);font-size:12px}
.in-knop.stil{background:#fff;color:var(--ink);border:1px solid var(--line)}
.in-knop.stil small{color:var(--mute)}
.in-knop.stil:hover{background:var(--mist)}

/* ---- app shell ---- */
#app{display:grid;grid-template-columns:232px 1fr 400px;min-height:100vh}
body.chat-dicht #app{grid-template-columns:232px 1fr 0}
body.chat-dicht .chat{display:none}
.zij{background:var(--sand);padding:26px 18px;display:flex;flex-direction:column;gap:6px;position:sticky;top:0;height:100vh}
.zij-logo{font-family:var(--serif);font-size:18px;font-weight:500;margin:0 0 20px;padding:0 10px;line-height:1.3}
.zij-logo small{display:block;font-family:var(--sans);font-size:12px;color:var(--mute);font-weight:400}
#nav{display:flex;flex-direction:column;gap:2px}
#nav a,.zij-bouw{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--r2);color:var(--ink);font-weight:500;font-size:14px;text-decoration:none!important}
#nav a:hover{background:rgba(255,255,255,.6)}
#nav a.aan{background:#fff;color:var(--teal)}
#nav a svg{width:17px;height:17px;flex:none;color:var(--mute)}
#nav a.aan svg{color:var(--teal)}
.zij-onder{margin-top:auto}
.zij-bouw{background:var(--teal);color:#fff;justify-content:center;padding:12px 14px;border-radius:999px;position:relative;overflow:hidden}
.zij-bouw:hover{background:var(--deep)}
.zij-bouw.aan{box-shadow:0 0 0 2px var(--sand),0 0 0 4px var(--teal)}
.zij-bouw .zb-t{display:flex;flex-direction:column;align-items:center;line-height:1.2}
.zij-bouw .zb-t small{color:rgba(255,255,255,.75);font-size:11px}
.zij-bouw .zb-n{font-style:normal;background:#fff;color:var(--teal);border-radius:999px;padding:1px 8px;font-size:11.5px;margin-left:6px}
.zij-bouw.bezig{background:var(--deep)}
.zij-bouw.ander{background:var(--mist);color:var(--ink)}
.zij-bouw.ander .zb-t small{color:var(--mute)}
.zb-ring{width:18px;height:18px;flex:none}
.zb-ring circle{fill:none;stroke-width:2.2}
.zb-ring .zd-bg{stroke:rgba(255,255,255,.3)}
.zb-ring .zd-v{stroke:#fff;transition:stroke-dashoffset .6s}
.zij-bouw.ander .zb-ring .zd-bg{stroke:var(--line)}
.zij-bouw.ander .zb-ring .zd-v{stroke:var(--teal)}
.zij-bouw.draait .zb-ring{animation:draai 1.2s linear infinite}
@keyframes draai{to{transform:rotate(360deg)}}
.zij-voet{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 6px 0;font-size:12.5px;color:var(--grey)}
.zij-voet .knop-klein{background:transparent}
main{padding:34px 40px 60px;min-width:0}
/* a new view fades in; the fixed tab rows (Content, Settings, Publish: class vast) stay where they are */
main.wissel>:not(.vast){animation:fade-in .22s ease-out}
@keyframes fade-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.bouw-banner{background:var(--warn-soft);color:var(--warn)}
.zoek-top{display:flex;gap:12px;align-items:center;margin:0 0 24px}
.zk{position:relative;flex:1;max-width:480px}
.zk-veld{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:9px 16px}
.zk-veld svg{width:15px;height:15px;color:var(--mute);flex:none}
.zk-veld input{border:0;background:none;font:inherit;flex:1;min-width:0;outline:0;color:var(--ink)}
.zk-veld kbd{font-family:inherit;font-size:11px;color:var(--mute);border:1px solid var(--line);border-radius:6px;padding:1px 6px}
.zk-uit{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:10px;max-height:60vh;overflow:auto;z-index:40}
.zk-g{font-family:var(--sans);font-size:12px;color:var(--mute);font-weight:500;margin:8px 10px 4px}
.zk-r{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--r2);color:inherit;text-decoration:none!important}
.zk-r.aan,.zk-r:hover{background:var(--light)}
.zk-t{display:flex;flex-direction:column;min-width:0;flex:1}
.zk-t b{font-weight:500;font-size:13.5px}
.zk-t small{font-size:12px}
.zk-s{font-size:12px;color:var(--grey)}
.zk-ic{width:26px;height:26px;border-radius:8px;background:var(--mist);display:inline-flex;align-items:center;justify-content:center;color:var(--teal);flex:none;font-size:12px}
.zk-leeg{padding:12px;color:var(--mute);font-size:13px}
mark{background:var(--warn-soft);color:inherit;border-radius:3px;padding:0 1px}
.zk-pal{position:fixed;inset:0;background:rgba(57,51,46,.3);z-index:50;display:flex;justify-content:center;align-items:flex-start;padding:12vh 20px}
.zk-pal-in{width:560px;max-width:100%}
.zk-pal-in .zk{max-width:none}

/* ---- pop-ups ---- */
.pop{position:fixed;inset:0;background:rgba(57,51,46,.32);z-index:50;display:flex;align-items:flex-start;justify-content:center;padding:6vh 20px;overflow:auto;animation:fade-in .18s}
.pop.weg{opacity:0;transition:opacity .2s}
.pop-in{background:#fff;border-radius:var(--r);box-shadow:var(--shadow);width:860px;max-width:100%;padding:28px 32px 30px;position:relative}
.pop-in.smal{width:520px}
.pop-kop{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin:0 0 16px}
.pop-kop h2{margin:0}
.pop-x{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;flex:none;font-size:14px}
.pop-x:hover{background:var(--mist)}
.vraag .pop-in{width:460px}
.vraag h2{font-size:20px}

/* ---- dashboard ---- */
.tk-tegel{position:relative}
.tk-tegel .tk-delta{position:absolute;top:16px;right:18px;font-size:12px;color:var(--mute)}
.tk-tegel .tk-delta.op{color:var(--bad)}.tk-tegel .tk-delta.neer{color:var(--ok)}
.tk-stand{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:13px;color:var(--grey);margin:0 0 22px}
.tk-stand b{font-weight:500;color:var(--ink)}
.wl-sel td:first-child{width:30px}
.wl-balk{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 14px}

/* ---- content lists and items ---- */
.ct-tegel .n{font-family:var(--serif);font-size:30px;line-height:1;font-weight:500;color:var(--teal);margin:0 0 8px}
.ct-tegel .n.ro{color:var(--mute)}
/* Content › Types: Pages as the main thing across the width, then "Shown on the pages" (Rob, 7 Nov 2026) */
.tegels.ct-hoofd{grid-template-columns:minmax(0,1fr);margin-bottom:28px}
.ct-pages{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:22px;align-items:center;padding:22px 24px}
.ct-pages .n{grid-row:1/span 3;font-size:44px;margin:0}
.ct-pages b{font-size:17px}
.ct-tegel small{overflow-wrap:anywhere}
.ct-tegels .ct-tegel{display:flex;flex-direction:column}.ct-tegels .ct-tegel small:last-child{margin-top:auto;padding-top:8px}
.tegels.ct-tegels{grid-template-columns:repeat(auto-fill,minmax(max(230px,calc((100% - 28px)/3)),1fr))}
@media (max-width:760px){.ct-pages{grid-template-columns:minmax(0,1fr);padding:18px 20px}.ct-pages .n{grid-row:auto;font-size:34px;margin:0 0 6px}}
@media (max-width:560px){.tegels.ct-tegels{grid-template-columns:minmax(0,1fr)}}
/* six menu items on a phone or tablet (Questionnaires since 7 Nov 2026): even rows, never one item alone (measured 320–760 px) */
@media (min-width:520px) and (max-width:757px){#nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}}
@media (max-width:431px){#nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}}
@media (max-width:360px){#nav a{padding:9px 8px;gap:8px}}
.op-lijst{display:flex;flex-wrap:wrap;gap:4px 10px}
.op-lijst a{font-size:12px}
.it-kop{display:flex;gap:18px;align-items:flex-start;margin:0 0 18px;flex-wrap:wrap}
.it-av{width:64px;height:64px;border-radius:18px;background:var(--mist);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:24px;color:var(--teal);flex:none;overflow:hidden}
.it-av img{width:100%;height:100%;object-fit:cover}
.it-av svg{width:28px;height:28px}
.it-kop h1{font-size:26px;margin:0 0 4px}
.it-meta{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;font-size:13px;color:var(--grey)}
.it-acties{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
/* a tab row wraps when it is wider than the screen (a phone): every tab stays in sight, nothing scrolls sideways or hides off-screen */
.tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--line);margin:0 0 20px}
.tabs a,.tabs button{padding:10px 14px;color:var(--grey);font-weight:500;font-size:13.5px;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;text-decoration:none!important}
.tabs a.aan,.tabs button.aan{color:var(--teal);border-bottom-color:var(--teal)}
.it-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:18px;align-items:start}
.velden{display:flex;flex-direction:column;gap:14px;min-width:0}
/* a group of fields in a register form (a nested object, Settings › Registers): a fieldset is as wide as its longest word unless told
   otherwise, so it gets min-width 0 and a legend that wraps; on a phone the form then stays within the screen */
.rv-groep{min-width:0;margin:0;border:1px solid var(--line);border-radius:var(--r2);padding:12px 16px}
.rv-groep legend{padding:0 6px;font-size:13px;color:var(--grey);max-width:100%;overflow-wrap:anywhere}
.veld{display:flex;flex-direction:column;gap:5px}
.veld>span{font-size:12.5px;color:var(--grey);font-weight:500}
.veld>span small{font-weight:400;color:var(--mute);margin-left:6px}
.veld input,.veld textarea,.veld select{font:inherit;color:var(--ink);background-color:#fff;border:1px solid var(--line);border-radius:var(--r2);padding:9px 12px;width:100%}
.veld textarea{min-height:90px;resize:vertical;line-height:1.5}
.veld input:disabled,.veld textarea:disabled,.veld select:disabled{background-color:var(--light);color:var(--grey);opacity:1}
/* a select in a popup keeps the chevron of the global select rule (Rob, 7 Nov 2026: "geen pijltje, het lijkt een leeg tekstvak") */
.veld select{width:100%;padding-right:32px;cursor:pointer}.veld select:disabled{cursor:default}
.veld .prijs{display:flex;align-items:center;gap:8px}
.veld .prijs input{max-width:140px}
.veld .ro{padding:9px 12px;background:var(--light);border-radius:var(--r2);color:var(--grey);white-space:pre-wrap;font-size:13.5px;max-height:260px;overflow:auto}
.veld.fout input,.veld.fout textarea,.veld.fout select,.veld.fout .chips{border-color:var(--bad)}
.veld-fout{font-size:12.5px;color:var(--bad);margin-top:2px}
.chips{display:flex;flex-wrap:wrap;gap:6px;padding:7px 10px;border:1px solid var(--line);border-radius:var(--r2);background:#fff;min-height:40px;align-items:center}
.chips[disabled],.chips.ro{background:var(--light)}
.chip{display:inline-flex;align-items:center;gap:6px;background:var(--mist);border-radius:999px;padding:4px 10px;font-size:12.5px}
.chip button{font-size:11px;color:var(--mute);padding:0 2px}
.chip-erbij{border:0;background:none;font:inherit;outline:0;min-width:120px;font-size:13px}
.schakel{display:inline-flex;align-items:center;gap:8px;font-size:13.5px}
.schakel input{width:36px;height:20px;appearance:none;-webkit-appearance:none;background:var(--mist);border-radius:999px;position:relative;margin:0;cursor:pointer}
.schakel input::after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:#fff;transition:left .15s}
.schakel input:checked{background:var(--teal)}
.schakel input:checked::after{left:19px}
.schakel input:disabled{cursor:default;opacity:.6}
.lees-blok h3{font-size:15px;font-family:var(--sans);font-weight:500;margin:0 0 8px}
.lees-blok ul{list-style:none;padding:0;margin:0 0 14px}
.lees-blok li{padding:7px 0;border-bottom:1px solid var(--line);font-size:13.5px}
.lees-blok li:last-child{border-bottom:0}
.lees-blok li small{display:block}
.info-lijst{list-style:none;padding:0;margin:0;font-size:13px;color:var(--grey)}
.info-lijst li{padding:6px 0;border-top:1px solid var(--line)}
.review{padding:10px 0;border-bottom:1px solid var(--line);font-size:13.5px}
.review:last-child{border-bottom:0}
.review b{font-weight:500}
.review small{display:block}
.sterren{color:var(--warn);letter-spacing:1px;font-size:12px}
.score{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:26px;border-radius:999px;font-size:12.5px;font-weight:500;padding:0 9px}
.score.ok{background:var(--ok-soft);color:var(--ok)}.score.warn{background:var(--warn-soft);color:var(--warn)}.score.bad{background:var(--bad-soft);color:var(--bad)}.score.geen{background:var(--mist);color:var(--mute)}
.staat{font-size:12px;color:var(--mute)}
.staat.pending{color:var(--warn)}.staat.draft{color:var(--mute);font-style:italic}.staat.trash{color:var(--bad)}

/* ---- pages / SEO ---- */
.seo-stand{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:13px;color:var(--grey);margin:0 0 16px}
.seo-stand b{font-weight:500}
.sp-punt{display:flex;gap:14px;padding:12px 0;border-bottom:1px solid var(--line);font-size:13.5px}
.sp-punt:last-child{border-bottom:0}
.sp-punt .pt{flex:none;width:44px;font-family:var(--serif);font-size:18px;color:var(--bad);font-weight:500}
.sp-punt b{font-weight:500;display:block}
.sp-punt small{display:block;color:var(--mute)}
.sp-punt .nu{display:block}
.sp-punt.behoben .pt{color:var(--ok);text-decoration:line-through}
.sp-punt.behoben .nu{color:var(--ok)}
.feiten{display:grid;grid-template-columns:118px 1fr;gap:8px 14px;font-size:13.5px;margin:0}
.feiten dt{color:var(--mute);font-size:12.5px;padding-top:2px}
.feiten dd{margin:0;word-break:break-word}
.seo-n{display:block;font-size:12px;color:var(--mute);margin-top:4px}
.seo-n.buiten{color:var(--bad)}
.snippet{background:var(--light);border-radius:var(--r2);padding:14px 16px;margin:0 0 14px;font-family:arial,sans-serif}
.snippet .sn-u{display:block;font-size:12px;color:#4d5156}
.snippet .sn-t{display:block;font-size:18px;color:#1a0dab;margin:2px 0}
.snippet .sn-d{display:block;font-size:13px;color:#4d5156}
.vs-lijst{list-style:none;padding:0;margin:0}
.vs-lijst li{display:grid;grid-template-columns:24px 1fr;gap:10px;padding:12px 0;border-bottom:1px solid var(--line);font-size:13.5px}
.vs-lijst li:last-child{border-bottom:0}
.vs-lijst .was{color:var(--mute);text-decoration:line-through}
.vs-lijst .wordt{color:var(--ink)}
.vs-lijst small{display:block}

/* ---- SEO: tiles, findings by severity, Lighthouse rings, cannibalization cases ---- */
.seo-tegels{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;margin:0 0 18px}
.seo-tegel .n{font-family:var(--serif);font-size:34px;line-height:1;font-weight:500;color:var(--teal);margin:0 0 6px}
.seo-tegel .n small{display:inline;font-family:var(--sans);font-size:13px;color:var(--mute);margin-left:5px}
.seo-tegel .n.ok{color:var(--ok)}.seo-tegel .n.warn{color:var(--warn)}.seo-tegel .n.bad{color:var(--bad)}.seo-tegel .n.geen{color:var(--mute)}
.seo-verdeling{display:flex;height:8px;border-radius:999px;overflow:hidden;background:var(--mist);min-width:180px;flex:1;max-width:320px}
.seo-verdeling i{display:block;min-width:0}
.seo-verdeling .ok{background:var(--ok)}.seo-verdeling .warn{background:var(--warn)}.seo-verdeling .bad{background:var(--bad)}
.fund-groep{margin:0 0 16px}
.fund-groep h4{margin:0 0 2px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.fund{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13.5px;align-items:flex-start}
.fund:last-child{border-bottom:0}
.fund b{font-weight:500;display:block;font-size:12.5px;color:var(--grey)}
.fund span{display:block;word-break:break-word}
.lh-scores{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 0 14px}
.lh-score{text-align:center}
.lh-score .ring{width:58px;height:58px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:20px;font-weight:500;border:3px solid var(--mist);color:var(--mute);margin:0 0 4px}
.lh-score .ring.ok{border-color:var(--ok);color:var(--ok);background:var(--ok-soft)}.lh-score .ring.warn{border-color:var(--warn);color:var(--warn);background:var(--warn-soft)}.lh-score .ring.bad{border-color:var(--bad);color:var(--bad);background:var(--bad-soft)}
.lh-score small{display:block;font-size:11.5px}
.lh-vitals{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13px;color:var(--grey);margin:0 0 10px}
.lh-vitals b{font-weight:500;color:var(--ink)}
.kan-art{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.kan-art .pill{text-decoration:none!important}
.kan-art .pill b{font-weight:500}
.kan-kop{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center}
.kan-kop b{font-weight:500}
.kan-seiten{list-style:none;padding:0;margin:4px 0 0;font-size:12.5px}
.kan-seiten li{display:flex;flex-wrap:wrap;gap:2px 8px;padding:2px 0;border:0;align-items:baseline}
.kan-seiten .mono{font-size:12px}
.kan-seiten .mono.eigen{color:var(--teal);font-weight:500}
.kan-seiten small{display:inline}
.kan-massnahme{font-size:12.5px;color:var(--grey);margin:6px 0 0;max-width:640px}
.kan-lijst{list-style:none;padding:0;margin:0}
.kan-lijst li,.lees-blok li.kan-li{padding:10px 0;border-bottom:1px solid var(--line)}
.kan-lijst li:last-child{border-bottom:0}
.kan-tabel td:first-child{min-width:140px}
.kan-tabel td:nth-child(4){min-width:190px}
.kan-tabel td:last-child{min-width:180px}
.kan-tabel td small{margin-top:3px}
/* the advice: its own column on a wide screen; under the pages, in the same cell, when the five columns would overflow the card */
.kan-tabel .kan-rat-onder{display:none}
.kan-tabel td .kan-rat-onder{margin:8px 0 0;max-width:none;padding-top:6px;border-top:1px dashed var(--line)}
.kan-tabel .kan-rat-onder b{font-weight:500;color:var(--ink);margin-right:4px}
.kan-wrap{container-type:inline-size}
@container (max-width:940px){.kan-tabel .kan-rat{display:none}.kan-tabel .kan-rat-onder{display:block}.kan-tabel td:last-child{min-width:0;padding-right:20px}.kan-tabel td:nth-child(4){min-width:240px}}
.live-adres{display:block;margin:0 0 6px}
.live-adres:last-of-type{margin-bottom:0}
.live-adres.eigen .mono{font-weight:500;color:var(--teal)}
.live-adres small{display:block}
.vs-uit{background:var(--light);border-radius:var(--r2);padding:14px 16px;margin:10px 0 0;font-size:13.5px}
.vs-uit b{font-weight:500;display:block;margin:0 0 4px}
.vs-uit .vs-tekst{margin:0;white-space:pre-wrap;font:inherit}
.vs-uit small{display:block;margin-top:6px}
.kan-seiten .mono,.feiten .mono,.it-meta .mono,.kan-tabel .mono,.lees-blok li a{overflow-wrap:anywhere}
/* ---- traffic (GA4): four facts, inline bars per channel, one stacked bar per device; and the data sources under Settings ---- */
.ga-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px 32px;align-items:start}
.ga-grid h4{margin:0 0 8px;color:var(--grey)}
.ga-feiten{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;margin:0 0 18px}
.ga-feit b{display:block;font-family:var(--serif);font-size:26px;font-weight:500;line-height:1.1;color:var(--teal)}
.ga-feit span{display:block;font-size:13px;color:var(--grey);margin-top:2px}
.ga-feit small{display:block;font-variant-numeric:tabular-nums}
.balken{display:grid;gap:7px;margin:0 0 14px}
.balk{display:grid;grid-template-columns:116px minmax(0,1fr) 58px 44px;gap:10px;align-items:center;font-size:13px}
.balk b{font-weight:400;color:var(--grey);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.balk i{display:block;height:8px;border-radius:999px;background:var(--mist);overflow:hidden}
.balk i s{display:block;height:100%;background:var(--teal);border-radius:999px;text-decoration:none}
.balk .num{color:var(--ink)}
.balk small{text-align:right;font-variant-numeric:tabular-nums}
.staaf{display:flex;height:10px;border-radius:999px;overflow:hidden;background:var(--mist);margin:0 0 8px}
.staaf i{display:block;min-width:2px}
.staaf .d0,.dot.d0{background:var(--teal)}.staaf .d1,.dot.d1{background:var(--deep)}.staaf .d2,.dot.d2{background:var(--mute)}
.legenda{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:12.5px;color:var(--grey);margin:0 0 16px}
.ga-ai{font-size:13.5px;margin:0 0 12px;max-width:520px}
.bron{padding:16px 0 4px;border-top:1px solid var(--line)}
.bron:first-of-type{border-top:0;padding-top:4px}
.bron-kop{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 10px}
.bron-kop b{font-weight:500;font-size:14.5px}
.bron .feiten dd small{display:block}
@media (max-width:760px){.ga-grid{grid-template-columns:minmax(0,1fr)}.balk{grid-template-columns:96px minmax(0,1fr) 54px 40px;font-size:12.5px}.balk b{white-space:normal;line-height:1.2}.ga-feiten{gap:12px}}
@media (max-width:760px){.lh-scores{grid-template-columns:repeat(2,minmax(0,1fr))}.seo-tegels{grid-template-columns:repeat(2,minmax(0,1fr))}.kan-tabel td:first-child{min-width:150px}.kan-tabel td:nth-child(4){min-width:200px}}

/* ---- media ---- */
.md-raster{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}
.md-kaart{background:#fff;border:1px solid var(--line);border-radius:var(--r2);overflow:hidden;cursor:pointer;text-align:left;padding:0}
.md-kaart:hover{box-shadow:var(--shadow)}
.md-kaart .md-b{aspect-ratio:4/3;background:var(--sand);display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}
.md-maten{position:absolute;top:8px;right:8px;background:rgba(255,255,255,.92);color:var(--ink)}
.md-let{color:var(--warn)}
.md-voorstel{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin:0 0 14px}
.md-voorstel span{flex:1 1 280px}
.md-maten-tabel td,.md-maten-tabel th{white-space:nowrap}
.md-kaart img{width:100%;height:100%;object-fit:cover}
.md-kaart.icon img{object-fit:contain;padding:18px}
.md-kaart p{margin:0;padding:8px 10px;font-size:12px}
.md-kaart p b{display:block;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12.5px}
.md-groot{background:var(--sand);border-radius:var(--r2);display:flex;align-items:center;justify-content:center;max-height:360px;overflow:hidden;margin:0 0 16px}
.md-groot img{max-width:100%;max-height:360px;object-fit:contain}

/* ---- timeline, versions, diff ---- */
.tl-dag{font-family:var(--sans);font-size:12.5px;color:var(--mute);font-weight:500;margin:20px 0 6px}
.tl-ol{list-style:none;padding:0;margin:0;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.tl-r{display:flex;gap:12px;padding:12px 18px;border-bottom:1px solid var(--line);align-items:flex-start;cursor:pointer}
.tl-r:last-child{border-bottom:0}
.tl-r:hover{background:var(--light)}
.tl-r.is-undone .tl-zin{text-decoration:line-through;color:var(--mute)}
.tl-ic{width:28px;height:28px;border-radius:9px;background:var(--mist);display:inline-flex;align-items:center;justify-content:center;color:var(--teal);flex:none;font-size:12px}
.tl-ic.ok{background:var(--ok-soft);color:var(--ok)}.tl-ic.bad{background:var(--bad-soft);color:var(--bad)}
.tl-t{flex:1;min-width:0}
.tl-zin{margin:0;font-size:13.5px}
.tl-zin b{font-weight:500}
.tl-meta{margin:2px 0 0;font-size:12px;color:var(--mute);display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.vs-diff{margin:0 0 14px}
.vs-diff th{width:160px;vertical-align:top;color:var(--grey);font-size:13px}
.vs-diff td{font-size:13.5px}
.vs-oud del{background:var(--bad-soft);color:var(--bad);text-decoration:line-through}
.vs-nieuw ins{background:var(--ok-soft);color:var(--ok);text-decoration:none}
.vs-leeg{color:var(--mute)}
.vs-chip{display:inline-block;background:var(--mist);border-radius:999px;padding:3px 9px;font-size:12px;margin:2px 4px 2px 0}
.vs-chip.plus{background:var(--ok-soft);color:var(--ok)}.vs-chip.min{background:var(--bad-soft);color:var(--bad)}
.vs-groep{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:18px 22px;margin:0 0 14px}
.vs-groep header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin:0 0 10px}
.vs-groep h3{margin:0}
.hi-wrap{display:grid;grid-template-columns:300px 1fr;gap:18px;align-items:start}
.hi-lijst{list-style:none;padding:0;margin:0;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.hi-lijst li{padding:10px 14px;border-bottom:1px solid var(--line);cursor:pointer;font-size:13px}
.hi-lijst li:last-child{border-bottom:0}
.hi-lijst li.aan{background:var(--teal-soft)}
.hi-lijst li small{display:block}
.mo-schuif{margin:0 0 14px}
.mo-schuif input{width:100%;accent-color:var(--teal)}
.mo-as{display:flex;justify-content:space-between}

/* ---- build ---- */
.pb-kaart{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:22px 26px;margin:0 0 18px}
.pb-kaart.bezig{border-color:var(--teal)}
.pb-kaart.fout{border-color:var(--bad)}
.pb-rij{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}
.pb-kop{display:flex;gap:14px;align-items:center;min-width:0}
.pb-kop b{display:block;font-family:var(--serif);font-size:20px;font-weight:500}
.pb-kop span{display:block;font-size:13px;color:var(--grey)}
.pb-ring{width:36px;height:36px;flex:none}
.pb-ring circle{fill:none;stroke-width:2.2}
.pb-ring .zd-bg{stroke:var(--line)}
.pb-ring .zd-v{stroke:var(--teal);transition:stroke-dashoffset .6s}
.pb-ring.draait{animation:draai 1.2s linear infinite}
.pb-n{width:36px;height:36px;border-radius:50%;background:var(--teal-soft);color:var(--teal);display:inline-flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:17px;font-weight:500;flex:none}
.pb-n.ok{background:var(--ok-soft);color:var(--ok)}.pb-n.bad{background:var(--bad-soft);color:var(--bad)}
.pb-go{background:var(--teal);color:#fff;border-radius:999px;padding:12px 22px;font-weight:500;font-size:14px;display:inline-flex;align-items:center;gap:8px;box-shadow:0 8px 20px rgba(49,118,137,.25)}
.pb-go:hover{background:var(--deep)}
.pb-prob{list-style:none;padding:0;margin:14px 0 0}
.pb-prob li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--line);font-size:13.5px}
.pb-prob small{display:block;color:var(--mute)}
.pb-detail{display:block;margin-top:10px}
.log{background:var(--ink);color:#EAE4DA;font-family:ui-monospace,Menlo,monospace;font-size:12px;padding:16px 18px;border-radius:var(--r2);max-height:360px;overflow:auto;white-space:pre-wrap;margin:10px 0 0}
details.blok{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:14px 22px;margin:0 0 14px}
details.blok summary{cursor:pointer;font-weight:500;font-size:14px;list-style:none;display:flex;align-items:center;gap:10px}
details.blok summary::-webkit-details-marker{display:none}
details.blok summary::before{content:"";width:7px;height:7px;border-right:1.5px solid var(--mute);border-bottom:1.5px solid var(--mute);transform:rotate(-45deg);transition:transform .15s;flex:none}
details.blok[open] summary::before{transform:rotate(45deg)}
details.blok[open] summary{margin-bottom:12px}
.kb-r{display:flex;gap:12px;padding:12px 0;border-top:1px solid var(--line);font-size:13.5px;align-items:flex-start}
.kb-r .kb-w{list-style:none;padding:0;margin:4px 0 0;font-size:12.5px;color:var(--grey)}
.kb-r .kb-act{margin-left:auto;display:flex;gap:6px;flex:none}

/* ---- chat ---- */
.chat{border-left:1px solid var(--line);background:#fff;display:flex;flex-direction:column;height:100vh;position:sticky;top:0}
.chat header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px 20px 12px}
.chat header b{font-family:var(--serif);font-weight:500;font-size:17px}
.chat-kop-r{display:flex;align-items:center;gap:10px}
.chat-nieuw{border:0;background:none;padding:2px 4px;font:inherit;font-size:12.5px;color:var(--grey);cursor:pointer;border-radius:6px}
.chat-nieuw:hover{color:var(--ink);text-decoration:underline}
.cb-ik.cb-niet{opacity:.55}
.cb-retry .knop-klein{margin-left:6px;vertical-align:middle}
.cb-eerder{text-align:center}
.cms-flash{animation:cms-flash 3s ease-out}
@keyframes cms-flash{0%,35%{box-shadow:0 0 0 3px var(--teal);background:#E6F2F4}100%{box-shadow:0 0 0 0 transparent}}
.chat-over{display:flex;align-items:center;gap:8px;margin:0 20px 8px;padding:6px 12px;background:var(--mist);border-radius:999px;font-size:12.5px}
.chat-over b{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-over button{margin-left:auto;color:var(--mute);font-size:11px}
.chat-berichten{flex:1;overflow:auto;padding:4px 20px 10px;display:flex;flex-direction:column;gap:10px}
.cb{max-width:92%;padding:10px 14px;border-radius:16px;font-size:13.5px;line-height:1.5;word-wrap:break-word}
.cb p{margin:0 0 6px}.cb p:last-child{margin:0}
.cb ul,.cb ol{margin:4px 0 6px;padding-left:20px}
.cb-sp{height:4px}
.cb-kop{font-weight:500}
.cb-cms{background:var(--light);align-self:flex-start;border-bottom-left-radius:6px}
.cb-cms small{display:block;margin-top:6px}
.cb-ik{background:var(--mist);align-self:flex-end;border-bottom-right-radius:6px}
.cb-tool{font-size:12px;color:var(--mute);background:none;padding:2px 4px;align-self:flex-start}
.cb-fout{background:var(--bad-soft);color:var(--bad);align-self:flex-start}
.cb-wacht{background:var(--warn-soft);color:var(--warn);align-self:flex-start;max-width:100%}
.cb-bevestig{border:1px solid var(--teal);background:#fff;max-width:100%}
.cbv-knoppen{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px!important}
.cbv-knoppen small{width:100%}
.cb-bevestig.beantwoord{opacity:.75}
/* a questionnaire's Delete on the chat card, and a refusal by the CMS's rules (contract v2 § 6.4 g, 2.12.1) */
.cbv-fb{margin:8px 0 0;padding:10px 12px;border-radius:12px;background:var(--light)}
.cbv-fb dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 14px;margin:6px 0 0}
.cbv-fb dt{color:var(--mute)}.cbv-fb dd{margin:0;overflow-wrap:anywhere}
.cbv-fb .cbv-fb-r{margin:8px 0 0;font-size:12.5px;color:var(--grey)}
.cb-weiger{border-left:3px solid var(--warn)}
.cb-weiger small{color:var(--mute)}
.cbo-an{font-size:12.5px;color:var(--grey);margin:6px 0}
.cbo-f{display:flex;flex-wrap:wrap;gap:4px}
.cb-bijlagen{display:flex;gap:6px;margin:0 0 6px;flex-wrap:wrap}
.cb-bijlagen img{height:64px;border-radius:8px}
.chat-voet{padding:10px 20px 16px;border-top:1px solid var(--line)}
.cv-beeld{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;color:var(--mute);margin:0 0 8px;padding:3px 8px;border-radius:999px}
.cv-beeld[aria-pressed="true"]{color:var(--teal);background:var(--teal-soft)}
.cv-veld{border:1px solid var(--line);border-radius:18px;padding:10px 12px;display:flex;flex-direction:column;gap:6px;background:#fff}
.cv-veld:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px var(--focus)}
.cv-veld textarea{border:0;background:none;font:inherit;resize:none;outline:0;max-height:140px;line-height:1.5;color:var(--ink)}
.cv-veld textarea:focus{outline:0;border:0;box-shadow:none}  /* the composer frame shows focus, not the textarea inside it */
.cv-knoppen{display:flex;justify-content:flex-end;gap:6px;align-items:center}
.cv-send,.mic{width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}
.cv-send{background:var(--teal);color:#fff}
.cv-veld.leeg .cv-send{background:var(--mist);color:var(--mute)}
.cv-send.stop{background:var(--bad)}
.mic{color:var(--mute);border:1px solid var(--line)}
.mic.aan{color:#fff;background:var(--bad);border-color:var(--bad);animation:puls 1s infinite}
.mic svg,.cv-send svg{width:15px;height:15px}
@keyframes puls{50%{box-shadow:0 0 0 6px rgba(168,70,60,.2)}}
.cv-strook{display:flex;gap:6px;flex-wrap:wrap}
.cv-th{position:relative;width:56px;height:42px;border-radius:8px;overflow:hidden;background:var(--mist)}
.cv-th img{width:100%;height:100%;object-fit:cover}
.cv-th button{position:absolute;top:0;right:0;background:rgba(57,51,46,.7);color:#fff;font-size:11px;width:16px;height:16px;line-height:1;border-radius:0 0 0 6px}
.cv-hint{display:block;margin-top:6px;font-size:11.5px;color:var(--mute)}
.chat.sleep::after{content:"Drop the screenshot here";position:absolute;inset:12px;border:2px dashed var(--teal);border-radius:var(--r);background:rgba(227,238,241,.85);display:flex;align-items:center;justify-content:center;color:var(--teal);font-weight:500;pointer-events:none}
.chat-wissel{position:fixed;top:16px;right:16px;width:36px;height:36px;border-radius:50%;background:#fff;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;z-index:46;color:var(--ink);box-shadow:var(--shadow)}
.chat-wissel[aria-expanded="true"]{right:412px;box-shadow:none}
.chat-wissel[aria-expanded="false"] svg{transform:rotate(180deg)}
.chat-wissel svg{width:14px;height:14px}

/* ---- SEO topics: the impact badge (the one number), the five element bars, the topic table, the brief ---- */
.impact{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:10px;font-family:var(--serif);font-weight:500;line-height:1;background:var(--teal-soft);color:var(--deep);font-variant-numeric:tabular-nums}
.impact-sm{height:30px;min-width:30px;padding:0 6px;font-size:18px}
.impact-md{height:38px;min-width:38px;padding:0 8px;font-size:24px}
.impact-lg{height:60px;min-width:60px;padding:0 12px;font-size:40px;border-radius:14px}
.impact.unter{background:var(--warn-soft);color:var(--warn)}
.impact.geen{background:var(--mist);color:var(--mute)}
.elems{display:grid;gap:10px}
.elem{display:grid;grid-template-columns:104px minmax(0,1fr) 34px;gap:10px;align-items:center;font-size:13px}
.elem b{font-weight:500;color:var(--grey)}
.elem i{display:block;height:8px;border-radius:999px;background:var(--mist);overflow:hidden}
.elem i s{display:block;height:100%;background:var(--teal);border-radius:999px;text-decoration:none}
.elem.risiko i s{background:var(--warn)}
.elem.risiko.hoch i s{background:var(--bad)}
.elem .num{font-variant-numeric:tabular-nums;color:var(--ink)}
.elem.frei i s{background:var(--teal)}
.th-unter{margin:14px 0 6px;font:500 13px/1.3 Poppins,sans-serif;color:var(--grey)}
.th-tabel td:first-child{width:54px;padding-right:0}
.th-tabel td:nth-child(2){min-width:260px}
.th-tabel td:nth-child(3){min-width:150px}
.th-tabel td small{margin-top:3px}
.th-tabel .mono,.tabel-scroll .mono{overflow-wrap:anywhere}
.th-feiten dd small{display:block;margin-top:2px}
.th-brief{font-size:14.5px;line-height:1.65;max-width:720px}
/* a path in running text (the brief, the advice, a sub-topic line, the HWG note) may break anywhere: at 375 wide it must not widen the page */
.th-brief,.kan-massnahme,.kan-seiten small,.th-feiten dd,.melding{overflow-wrap:anywhere}
.it-av .impact{width:100%;height:100%;min-width:0;padding:0;border-radius:0}
.th-pager .knop-rand{white-space:normal;max-width:100%;text-align:center}
/* ---- redirects (views-redirects.js): the rules table, the outcome of Test an address ---- */
.pill b{font-weight:500}
.rd-tab td:first-child{min-width:190px}
.rd-tab .mono{overflow-wrap:anywhere}
.rd-uit{background:var(--light);border-radius:var(--r2);padding:14px 16px;margin:14px 0 0;font-size:13.5px;overflow-wrap:anywhere}
.rd-uit p{margin:0 0 6px}
.rd-uit p:last-child{margin:0}
.rd-uit b{font-weight:500}

@media (max-width:1280px){
  #app{grid-template-columns:232px 1fr}
  .chat{position:fixed;right:0;top:0;bottom:0;width:400px;max-width:100%;transform:translateX(100%);transition:transform .2s;z-index:45;box-shadow:var(--shadow)}
  .chat.open{transform:none}
  body.chat-dicht .chat{display:flex}
  .chat-wissel[aria-expanded="true"]{right:412px}
}
@media (max-width:900px){
  .it-grid,.hi-wrap{grid-template-columns:minmax(0,1fr)}
  main{padding:24px 20px 60px}
}
@media (max-width:760px){
  #app{grid-template-columns:1fr;grid-template-rows:auto 1fr} /* the menu keeps its height on a short view, so the tab rows below it keep their place */
  .zij{position:static;height:auto;flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 16px}
  .zij-logo{margin:0;width:100%}
  #nav{flex-direction:row;flex-wrap:wrap}
  .zij-onder{margin:0}
  .zij-voet{padding:0;margin-left:auto}
  .chat{width:100%}
  .chat header{padding-right:64px}
  .chat-wissel[aria-expanded="true"]{right:16px}
  .tegels{grid-template-columns:1fr 1fr}
  .pop{padding:10px}
  .pop-in{padding:20px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
/* Settings › Sources (Radar): one row per source with a write-only key, Test, usage; the fetched-data blocks and the policy below */
.qu-doel{margin:0 0 8px}
.qu-sleutel{margin:8px 0 0}
.qu-in{flex:1 1 220px;width:auto;max-width:360px;min-width:0}
.qu-ml{margin:12px 0 0}
.qu-feiten{margin-top:12px}
.qu-fout{color:var(--bad)}
.qu-h4{margin:24px 0 6px;padding-top:18px;border-top:1px solid var(--line)}
.qu-beleid{margin:20px 0 0;padding-top:14px;border-top:1px solid var(--line);font-size:13px;color:var(--grey)}
/* radar (step 4 of strat/radar_proposal.md): the one page #radar — masthead, the five lines, the cards, the earlier table, the Watch block */
.rd-mast{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:13px;color:var(--grey)}
.rd-week{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:var(--grey)}
.rd-week select{padding:7px 32px 7px 12px}
.rd-kosten{font-variant-numeric:tabular-nums;white-space:nowrap}
.rd-leeg p{font-size:15px;margin:0 0 8px}
.rd-week-band h2 small{font-family:var(--sans);font-size:13px;color:var(--mute);margin-left:8px;font-weight:400}
.rd-periode{margin-bottom:12px}
.rd-lead{font-family:var(--serif);font-size:17px;line-height:1.5;max-width:720px;margin:0 0 14px}
.rd-lijnen{list-style:none;padding:0;margin:0;display:grid;gap:0}
.rd-lijnen li{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;padding:8px 0;border-top:1px solid var(--line);font-size:13.5px;align-items:baseline}
.rd-lijnen li>b{font-weight:500;color:var(--grey);font-size:12.5px}
.rd-lijnen li>span>b{font-weight:500}
.rd-lijnen li small{display:block;margin-top:2px}
.rd-fouten{font-size:12.5px;color:var(--warn);margin:10px 0 0}
.rd-fouten b{font-weight:500}
.rd-kaarten{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin:0 0 22px}
.rd-why,.rd-regel,.rd-kan,.rd-nu .mono,.rd-excerpt{overflow-wrap:anywhere}
.rd-kaart{margin:0}
.rd-kaart-kop{display:flex;gap:14px;align-items:flex-start;margin:0 0 10px}
.rd-kaart-titel{min-width:0;flex:1}
.rd-kaart-titel h3{margin:0 0 6px;font-size:19px}
.rd-why{font-size:14.5px;line-height:1.6;max-width:720px;margin:0 0 10px}
.rd-regel{display:flex;gap:8px;align-items:flex-start;font-size:12.5px;color:var(--grey);margin:0 0 8px;max-width:720px}
.rd-licht{width:10px;height:10px;border-radius:50%;background:var(--mute);flex:none;margin-top:5px}
.rd-licht.green{background:var(--ok)}.rd-licht.amber{background:var(--warn)}.rd-licht.red{background:var(--bad)}
.rd-kan{font-size:12.5px;color:var(--grey);margin:0 0 8px;overflow-wrap:anywhere}
.rd-kan b{font-weight:500;color:var(--ink);margin-right:4px}
.rd-details{margin:0 0 4px}
.rd-details summary{cursor:pointer;font-size:12.5px;color:var(--teal);font-weight:500;list-style:none}
.rd-details summary::-webkit-details-marker{display:none}
.rd-details summary::before{content:"";display:inline-block;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);margin:0 8px 2px 2px;transition:transform .15s}
.rd-details[open] summary::before{transform:rotate(45deg)}
.rd-details[open] summary{margin-bottom:10px}
.rd-details h4{margin:12px 0 4px;color:var(--grey)}
.rd-elems .elem{grid-template-columns:104px minmax(0,1fr) 34px;row-gap:2px}
.rd-elems .elem .rd-feit{grid-column:1 / -1;display:block;font-size:12px;color:var(--mute);margin:0 0 4px}
.rd-elems .elem .badge{padding:3px 7px;font-size:10.5px}
.rd-feiten{margin:0;padding-left:20px;font-size:13px}
.rd-feiten li{margin:0 0 4px}
.rd-lijst{list-style:none;padding:0;margin:0;font-size:13.5px}
.rd-lijst li{padding:6px 0;border-top:1px solid var(--line)}
.rd-lijst li:first-child{border-top:0}
.rd-lijst li small{display:block}
.rd-acties{margin-top:10px;gap:8px}
.rd-acties small{width:100%}
.rd-tabel td:first-child{min-width:220px}
.rd-wacht{color:var(--warn);font-size:13px}
.rd-meting{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12.5px}
.rd-meting b{font-weight:500}
.rd-watch summary small{font-weight:400;color:var(--mute)}
.rd-deel{padding:14px 0 6px;border-top:1px solid var(--line)}
.rd-deel:first-of-type{border-top:0;padding-top:4px}
.rd-deel h3{font-size:16px;margin:0 0 8px}
.rd-deel h3 small{font-family:var(--sans);font-size:12.5px;color:var(--mute);margin-left:6px}
.rd-deel h4{margin:12px 0 6px;color:var(--grey)}
.rd-diff{padding:8px 0;border-top:1px solid var(--line);font-size:13px}
.rd-diff-kop{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;margin:0 0 4px}
.rd-diff-kop b{font-weight:500}
.rd-diff-kop .mono{overflow-wrap:anywhere}
.rd-diff p{margin:2px 0;overflow-wrap:anywhere}
.rd-voor del{background:var(--bad-soft);color:var(--bad);text-decoration:line-through}
.rd-na ins{background:var(--ok-soft);color:var(--ok);text-decoration:none}
.rd-ref b{font-weight:500;color:var(--ink)}
.rd-alerts{margin:0 0 10px}
.rd-prijzen td:first-child{min-width:150px}
.rd-prijzen td:nth-child(3){min-width:150px}
.rd-prijzen td:last-child{min-width:220px}
.rd-rood td:nth-child(2) b{color:var(--bad)}
.rd-citaat{display:block;overflow-wrap:anywhere}
.rd-dekking td:first-child{min-width:200px}
.rd-dekking td:nth-child(2){min-width:140px}
.rd-dekking .mono{display:block;overflow-wrap:anywhere;margin-top:3px}
.rd-panel{display:grid;gap:0}
.rd-pr{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:6px 18px;padding:9px 0;border-top:1px solid var(--line);font-size:13.5px;align-items:start}
.rd-pr:first-child{border-top:0}
.rd-pr-q small,.rd-pr-r small{display:block;margin-top:3px;overflow-wrap:anywhere}
.rd-pr-r .badge{margin-bottom:2px}
.rd-md{white-space:pre-wrap;font-family:ui-monospace,Menlo,monospace;font-size:12px;line-height:1.5;max-height:60vh;overflow:auto;margin:0;background:var(--light);padding:14px 16px;border-radius:var(--r2)}
.rd-melding{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center}
.rd-melding b{font-weight:500}
@media (max-width:760px){.rd-lijnen li{grid-template-columns:minmax(0,1fr);gap:2px}.rd-kaart-kop{gap:10px}.rd-elems .elem{grid-template-columns:90px minmax(0,1fr) 30px}.rd-mast{width:100%}.rd-kaart-titel h3{font-size:17px}.rd-pr{grid-template-columns:minmax(0,1fr);gap:4px}}
/* ---- Questionnaires, a main item of the CMS menu (views-questionnaire.js, engine v2): the list, the Questions list (each page a heading
   with its questions indented under it, 2.9) and row groups, the popups (a locked questionnaire's line), the type menu, the logic rules with their conditions, the lines popup, the
   flow drawing and the preview frames; mobile first, every rule starts with .fb- */
.fb-kolkop{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(0,1fr) minmax(0,1.9fr) 84px 96px;gap:14px;padding:0 20px 8px;font-size:12px;color:var(--mute)}
.fb-lijst{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;margin:0 0 14px}
.fb-rij{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-top:1px solid var(--line);cursor:pointer;outline-offset:-3px}
.fb-rij:first-child{border-top:0}
.fb-rij:hover{background:var(--light)}
.fb-lijst-rij{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 14px;align-items:start;padding:14px}
.fb-lijst-rij .fb-t,.fb-lijst-rij .fb-adr{grid-column:1 / -1}
.fb-t{min-width:0;flex:1}
.fb-t b{display:block;font-weight:500;font-size:14px;overflow-wrap:anywhere}
.fb-t small{display:block;margin-top:2px;overflow-wrap:anywhere}
.fb-t .veld-fout{display:block;margin-top:5px}
.fb-t .fb-onaf{display:block;margin-top:5px;font-size:12.5px;line-height:1.4;color:var(--warn)}
.fb-st small,.fb-adr small,.fb-n small{display:block;margin-top:4px}
/* Delete in a list row (contract v2 § 6.4, amendment 2.12): small, under the version, only on a draft that is not locked; it never opens the row */
.fb-st .fb-del{margin-top:8px}
.fb-lock-plek:not(:empty){display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin-top:8px}
.fb-lock-plek small{margin:0}
.fb-adr .mono,.fb-adr a{overflow-wrap:anywhere}
.fb-n b{display:block;font-family:var(--serif);font-weight:500;font-size:20px;line-height:1.1;color:var(--teal);font-variant-numeric:tabular-nums}
.fb-id{flex:none;min-width:46px;font-size:12px;line-height:1.4;color:var(--teal);background:var(--teal-soft);border-radius:8px;padding:2px 7px;text-align:center;margin-top:1px;overflow-wrap:anywhere}
.fb-greep{flex:none;width:12px;color:var(--mute);margin-top:3px;cursor:grab}
.fb-greep svg{width:10px;height:16px;fill:currentColor;display:block}
.fb-typ{flex:none;width:22px;height:22px;color:var(--teal)}
.fb-typ svg{width:22px;height:22px;display:block}
.fb-intro{background:var(--light)}
/* a page opens with its heading (2.9): a compact band in the light tone with the page's id, its title (or "Page without a title") and its
   step on one line; its questions stand indented under it on a thin bracket, so a page reads as one group; a result page's band is mist */
.fb-break{background:var(--light);border-top-color:rgba(57,51,46,.16);padding-top:8px;padding-bottom:8px}
.fb-break .fb-t{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 10px}
.fb-break .fb-t b{display:inline;font-size:13px;color:var(--teal)}
.fb-break .fb-t small{display:inline;margin:0}
.fb-break .fb-t .veld-fout{flex-basis:100%}
.fb-break .fb-id{background:#fff;color:var(--grey)}
.fb-break.fb-res{background:var(--mist)}
.fb-break:hover,.fb-break:focus-visible{background:var(--sand)}
.fb-break.fb-res:hover,.fb-break.fb-res:focus-visible{background:color-mix(in srgb,var(--mist) 88%,var(--teal))}
.fb-res-b{flex:none;align-self:center}
.fb-el,.fb-groep{margin-left:14px;border-left:2px solid var(--teal-soft)}
.fb-el{padding-left:12px}
/* the elements that share a row: one group under a thin bracket, dragged as a whole */
.fb-groep{border-top:1px solid var(--line);padding:8px 14px 8px 12px;cursor:default}
.fb-groep-kop{display:flex;gap:10px;align-items:center;font-size:12px;font-weight:500;color:var(--teal);margin:0 0 4px}
.fb-groep-kop small{font-weight:400;color:var(--mute)}
.fb-groep-kop .fb-greep{margin-top:0}
.fb-lid{margin-left:5px;padding:9px 10px 9px 14px;border-top:0;border-left:2px solid var(--teal-soft)}
.fb-lid:first-of-type{border-radius:0}
.fb-vraag.sleept,.fb-groep.sleept{opacity:.4}
.fb-vraag.voor,.fb-groep.voor{box-shadow:inset 0 3px 0 var(--teal)}
.fb-vraag.na,.fb-groep.na{box-shadow:inset 0 -3px 0 var(--teal)}
/* a locked questionnaire: the badge, and the one line about the medical logic in the header, the Questions tab and every popup */
.fb-slot-b{background:var(--warn-soft);color:var(--warn)}
.fb-slot{font-size:12.5px;color:var(--grey);background:var(--light);border-radius:var(--r2);padding:9px 12px;margin:16px 0 0}
.fb-slot-kop .badge{margin-right:6px}
.fb-cc{align-self:center;font-size:12.5px;color:var(--mute)}
.fb-kop .it-av svg{width:30px;height:30px}
.fb-kop-t{min-width:0}
.fb-kop .it-acties{margin-left:0;width:100%}
.fb-hist{align-self:center;font-weight:500;font-size:13.5px;padding:0 6px}
.fb-scherm{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--grey);width:100%}
.fb-scherm select{flex:1;min-width:0;font-size:13px;padding:8px 30px 8px 12px;border-radius:999px;border:1px solid var(--line);background-color:#fff;text-overflow:ellipsis}
.fb-hist-noot{margin:0 0 14px}
.rij .fb-weg{margin-left:auto}
.fb-2,.fb-3{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;align-items:start}
.fb-form [data-voor][hidden]{display:none!important}
.fb-form textarea[data-veld="options"]{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;min-height:120px}
.fb-form textarea[data-veld="title"]{min-height:0}
.fb-breed{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;align-items:start;padding-top:14px;border-top:1px solid var(--line)}
.fb-noot{font-size:12.5px;color:var(--grey);background:var(--light);border-radius:var(--r2);padding:10px 12px;margin:0}
.fb-noot code{font-size:11.5px}
/* Type, the first field of a question's popup (contract 2.11): the select, then its lines (the row it leaves, the BMI's text) and, in red,
   each place that blocks the conversion */
.fb-type{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
.fb-type-fout{display:block;font-size:12.5px;line-height:1.45;color:var(--bad);overflow-wrap:anywhere}
/* the answers editor (amendment 2.4): a card per answer; on a phone the answer and Remove on the first line, the internal label on the
   second and the value on the third; from 761 px one line under the column heads Answer · Internal label · Value. "Nichts davon" is set
   apart below. */
.fb-antw{gap:8px}
.fb-a-kop{display:none}
.fb-antwoorden{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.fb-antwoord{display:grid;grid-template-columns:12px minmax(0,1fr) 28px;grid-template-areas:"g a x" "g i i" "g v v";gap:6px 8px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:var(--r2);background:#fff}
.fb-antwoord>:nth-child(1){grid-area:g}
.fb-antwoord>.fb-greep{margin-top:0}
.fb-antwoord .fb-a-ans{grid-area:a}
.fb-antwoord .fb-a-int{grid-area:i}
.fb-antwoord .fb-a-val{grid-area:v}
.fb-antwoord .fb-a-weg{grid-area:x}
.fb-antwoord>.veld-fout{grid-column:2 / -1}
.fb-antwoord.sleept{opacity:.4}
.fb-antwoord.voor{box-shadow:inset 0 3px 0 var(--teal)}
.fb-antwoord.na{box-shadow:inset 0 -3px 0 var(--teal)}
.fb-a-ro .fb-a-int{font-size:13px;color:var(--grey);overflow-wrap:anywhere}
.fb-a-val{display:inline-flex;align-items:center;gap:4px;min-width:0;justify-self:start;max-width:100%}
.fb-a-id{display:inline-block;font-size:11.5px;line-height:1.6;padding:0 8px;border-radius:8px;background:var(--mist);color:var(--grey);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fb-a-neu{background:transparent;box-shadow:inset 0 0 0 1px var(--line);color:var(--mute);font-style:italic}
.fb-a-pen,.fb-a-slot{display:inline-flex;flex:none;width:24px;height:24px;align-items:center;justify-content:center;border-radius:6px;color:var(--mute)}
.fb-a-pen:hover{background:var(--mist);color:var(--teal)}
.fb-a-pen svg,.fb-a-slot svg{width:13px;height:13px}
.fb-a-weg{width:28px;height:28px;border-radius:50%;font-size:19px;line-height:1;color:var(--mute)}
.fb-a-weg:hover{background:var(--bad-soft);color:var(--bad)}
.fb-antw .fb-a-idin{width:190px;max-width:100%;padding:4px 8px;font-size:12px}
.fb-a-erbij{margin:2px 0 0}
.fb-a-none{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"s s" "a v";gap:8px 10px;align-items:center;margin-top:4px;padding:10px 12px;border-radius:var(--r2);background:var(--light)}
.fb-a-none .fb-a-schalter{grid-area:s}
.fb-a-none .fb-a-ans{grid-area:a}
.fb-a-none .fb-a-val{grid-area:v}
.fb-a-none>.veld-fout{grid-column:1 / -1}
.fb-a-schalter{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;cursor:pointer}
.fb-antw .fb-a-schalter input{width:36px;height:20px;appearance:none;-webkit-appearance:none;background:var(--mist);border:0;border-radius:999px;position:relative;margin:0;padding:0;cursor:pointer;flex:none}
.fb-antw .fb-a-schalter input::after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:#fff;transition:left .15s}
.fb-antw .fb-a-schalter input:checked{background:var(--teal)}
.fb-antw .fb-a-schalter input:checked::after{left:19px}
.fb-antw .fb-a-schalter input:disabled{opacity:.6;cursor:default}
.fb-prog{list-style:none;margin:0;padding:10px 12px;background:var(--light);border-radius:var(--r2);display:flex;flex-direction:column;gap:4px;font-size:13.5px;color:var(--grey)}
.fb-prog .mono{display:inline-block;min-width:60px;margin-right:8px;color:var(--teal)}
/* Add a question: the type menu */
.fb-typen{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
.fb-typ-k{display:flex;gap:12px;align-items:flex-start;text-align:left;padding:11px 14px;border:1px solid var(--line);border-radius:var(--r2);background:#fff;width:100%}
.fb-typ-k:hover{background:var(--mist)}
.fb-typ-k b{display:block;font-weight:500;font-size:13.5px}
.fb-typ-k small{display:block;margin-top:1px}
.fb-feiten{margin:16px 0 0;padding-top:14px;border-top:1px solid var(--line)}
/* Settings (Rob, 6 Nov 2026), mobile-first: a step row is its number, its name and Remove on one line, with what uses it under the name;
   from 761 px wide that note stands between the name and Remove. A refusal goes under the row. */
.fb-set .velden{max-width:760px}
.fb-stappen{list-style:none;padding:0;margin:2px 0 0;display:flex;flex-direction:column;gap:10px}
.fb-stappen li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:4px 10px;align-items:center}
.fb-stappen .fb-id{min-width:30px;margin-top:0}
.fb-stap-op{grid-column:2 / -1;grid-row:2;overflow-wrap:anywhere}
.fb-stappen .veld-fout{grid-column:2 / -1}
.fb-stappen li.fout input{border-color:var(--bad)}
.fb-stappen input:disabled{background:var(--light);color:var(--grey)}
.fb-stap-rij{margin:2px 0 0}
/* the five tabs of a questionnaire on one line of a 375 screen: less room around each below 761 px, the shared spacing above */
.fb-tabs{gap:0}
.fb-tabs button{padding:10px 8px}
/* Logic: per page its rules; a rule is its conditions (with "all of / any of" above two or more) and its target */
.fb-logica{margin:0 0 6px}
.fb-lb{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:14px;margin:0 0 12px}
.fb-lb.fout{border-color:var(--bad)}
.fb-lb h4{margin:0 0 8px;font-size:14.5px;line-height:1.4}
.fb-lb h4 .mono{color:var(--teal);margin-right:4px}
.fb-lb h4 small{font-weight:400;margin-left:4px}
.fb-lb .veld-fout{display:block;margin-top:6px}
.fb-regel{padding:8px 0;border-top:1px dashed var(--line)}
.fb-regels>:first-child{border-top:0}
.fb-zin{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;padding:3px 0;font-size:13.5px;min-width:0}
.fb-zin.fb-blad{padding-left:18px}
.fb-blad>[data-k="del"]{margin-left:auto}
.fb-zin select,.fb-zin input{font:inherit;font-size:13px;line-height:1.3;padding:6px 30px 6px 10px;flex:1 1 auto;max-width:100%;min-width:0;border-radius:10px;border:1px solid var(--line);background-color:#fff;text-overflow:ellipsis}
.fb-zin input[type="number"]{flex:0 0 auto;width:96px;padding-right:10px}
.fb-zin input:disabled,.fb-zin select:disabled{background-color:var(--light);color:var(--grey);opacity:1}
.fb-zin .fb-w{color:var(--grey);font-weight:500;font-size:12.5px}
.fb-zin .knop-klein{padding:4px 10px;font-size:12px}
.fb-regel-k{display:inline-flex;flex-wrap:wrap;gap:6px;margin-left:auto}
.fb-vinken{display:inline-flex;flex-wrap:wrap;gap:6px;min-width:0}
.fb-vinken label{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:12.5px;cursor:pointer}
.fb-vinken input{width:auto;flex:none;margin:0;padding:0}
.fb-regel.dood select,.fb-regel.dood input{opacity:.55}
.fb-dood{display:block;color:var(--warn);margin-top:2px}
.fb-zin.nieuw{padding-top:8px;border-top:1px dashed var(--line)}
.fb-zin.nieuw select{color:var(--mute);border-style:dashed;flex:0 1 auto}
.fb-regels>.fb-zin.nieuw:first-child{border-top:0;padding-top:3px}
.fb-anders{font-size:12.5px;color:var(--grey);margin:6px 0 0}
.fb-anders.fout{color:var(--bad)}
/* the lines popup: a card per line with its condition, badge, text and muted */
.pop-in.fb-lijnen-pop{width:min(920px,100%)}
.fb-lijnen{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.fb-lijn{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:var(--r2);padding:12px;background:#fff}
.fb-lijn.sleept{opacity:.4}
.fb-lijn.voor{box-shadow:inset 0 3px 0 var(--teal)}
.fb-lijn.na{box-shadow:inset 0 -3px 0 var(--teal)}
.fb-lijn-in{flex:1;min-width:0;display:flex;flex-direction:column;gap:10px}
.fb-lijn-in>.knop-klein{align-self:flex-end}
.fb-als-blok{background:var(--light);border-radius:10px;padding:8px 10px}
.fb-als-blok>.knop-klein{margin-top:4px;padding:4px 10px;font-size:12px}
.fb-lab{display:block;font-size:12px;color:var(--grey);font-weight:500;margin:0 0 2px}
.fb-lijn-velden{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:start}
.fb-lijn-erbij{margin:12px 0}
/* embedded checks (contract 2.10, § 11.7): "Check in a popup" and where it is embedded; the items of the phase indicator and the result cards */
.fb-popup-b{background:var(--teal-soft);color:var(--teal)}
.fb-ingebed{overflow-wrap:anywhere}
.fb-ingebed a{margin-left:2px}
.fb-adr-ingebed{display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.fb-adr-ingebed .fb-ingebed-k{font-size:13px;color:var(--grey)}
.fb-adr-ingebed small{margin-top:2px}
.fb-etappen,.fb-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.fb-etappen li{display:flex;gap:10px;align-items:center}
.fb-etappen .fb-id,.fb-item>.fb-id{min-width:28px;margin-top:0}
.fb-etappen input{flex:1;min-width:0}
.fb-item{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:var(--r2);padding:12px;background:#fff}
.fb-item>.fb-id{margin-top:2px}
.fb-item-in{flex:1;min-width:0;display:flex;flex-direction:column;gap:10px}
.fb-item-in textarea{field-sizing:content;min-height:0}   /* the whole text, read-only or not, also on a phone */
.fb-item-feit{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr);gap:4px 12px;margin:0;padding:8px 10px;background:var(--light);border-radius:10px;font-size:13px}
.fb-item-feit dt{color:var(--mute);font-size:12px;padding-top:1px}
.fb-item-feit dd{margin:0;color:var(--grey);overflow-wrap:anywhere}
.fb-item-feit .mono{font-size:12px;color:var(--teal)}
.fb-h3{margin:22px 0 10px}
.fb-stroom{padding:14px 12px 10px}
.fb-stroom-in{overflow-x:auto}
.fb-svg{display:block;max-width:100%;height:auto;margin:0 auto}
.fb-svg .fb-k rect{fill:#fff;stroke:rgba(57,51,46,.22);stroke-width:1.2}
.fb-svg .fb-k.start rect{fill:var(--teal-soft);stroke:none}
.fb-svg .fb-k.res rect{fill:var(--mist);stroke:none}
.fb-svg .fb-k.eind rect{fill:var(--sand);stroke:none}
.fb-svg .fb-k.los rect{stroke:var(--bad);stroke-width:1.6;stroke-dasharray:5 3}
.fb-svg .fb-k.los .kop{fill:var(--bad)}
.fb-svg text{font-family:var(--sans)}
.fb-svg .kop{font-size:11px;font-weight:500;fill:var(--mute)}
.fb-svg .t{font-size:12.5px;fill:var(--ink)}
.fb-svg .fb-l{fill:none;stroke:var(--teal);stroke-width:1.4;opacity:.7}
.fb-svg .fb-l.anders{stroke:var(--mute);stroke-dasharray:5 4}
.fb-svg marker path{fill:var(--teal)}
.fb-svg marker.anders path{fill:var(--mute)}
.fb-svg .fb-lt{font-size:10.5px;fill:var(--grey);paint-order:stroke;stroke:#fff;stroke-width:4px;stroke-linejoin:round}
.fb-legenda{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:12px;color:var(--mute);margin:10px 4px 0}
.fb-legenda span{display:inline-flex;align-items:center;gap:6px}
.fb-li{display:inline-block;width:22px;border-top:1.5px solid var(--teal)}
.fb-li.anders{border-top:1.5px dashed var(--mute)}
.fb-lk,.fb-lr{display:inline-block;width:14px;height:10px;border-radius:3px;background:var(--sand)}
.fb-lr{background:var(--mist)}
.pop-in.fb-pv-pop{width:min(1520px,100%)}
.fb-pv{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:start}
.fb-pv figure{margin:0;min-width:0}
.fb-pv figcaption{font-size:12px;color:var(--mute);margin:0 0 6px}
.fb-pv-raam{width:calc(var(--w) * var(--k, 1) * 1px);height:calc(var(--h) * var(--k, 1) * 1px);overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#fff}
.fb-pv-raam iframe{display:block;border:0;width:calc(var(--w) * 1px);height:calc(var(--h) * 1px);transform:scale(var(--k, 1));transform-origin:0 0}
.fb-hist-lijst{list-style:none;padding:0;margin:0}
.fb-hist-lijst li{border-top:1px solid var(--line)}
.fb-hist-lijst a{display:block;padding:10px 4px;color:inherit;text-decoration:none!important;font-size:13.5px}
.fb-hist-lijst a:hover{background:var(--light)}
.fb-hist-lijst b{font-weight:500}
.fb-hist-lijst small{display:block;margin-top:2px}
@media (min-width:761px){
  .fb-rij{gap:12px;padding:13px 18px}
  .fb-break{padding-top:9px;padding-bottom:9px}
  .fb-el:not(.fb-lid){margin-left:22px;padding-left:18px}
  .fb-groep{margin-left:22px;padding:8px 18px}
  .fb-2,.fb-breed{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .fb-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .fb-a-kop{display:grid;grid-template-columns:12px minmax(0,1.5fr) minmax(0,1fr) 160px 28px;gap:8px;padding:0 11px;font-size:11.5px;color:var(--mute)}
  .fb-antwoord{grid-template-columns:12px minmax(0,1.5fr) minmax(0,1fr) 160px 28px;grid-template-areas:"g a i v x"}
  .fb-a-none{grid-template-columns:auto minmax(0,1fr) 160px;grid-template-areas:"s a v"}
  .fb-typen{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .fb-stappen li{grid-template-columns:auto minmax(0,300px) minmax(0,1fr) auto;gap:6px 14px}.fb-stap-op{grid-column:auto;grid-row:auto}
  .fb-tabs{gap:4px}.fb-tabs button{padding:10px 14px}
  .fb-lb{padding:16px 20px 14px}
  .fb-zin select,.fb-zin input{flex:0 1 auto;max-width:min(100%,240px)}
  .fb-zin select[data-k="op"]{max-width:none}
  .fb-lijn-velden{grid-template-columns:minmax(0,150px) minmax(0,1fr) auto}
  .fb-pv{grid-template-columns:minmax(0,375px) minmax(0,1fr)}
  .fb-scherm{width:auto}
  .fb-scherm select{flex:none;max-width:220px}   /* 220, not 260: with Duplicate (2.7) the actions stay one row from 1024 to 1440 */
}
@media (min-width:901px){
  .fb-kop .it-acties{margin-left:auto;width:auto}
  .fb-lijst-rij{grid-template-columns:minmax(0,2.2fr) minmax(0,1fr) minmax(0,1.9fr) 84px 96px;gap:14px;padding:15px 20px}
  .fb-lijst-rij .fb-t,.fb-lijst-rij .fb-adr{grid-column:auto}
}
@media (max-width:900px){.fb-kolkop{display:none}}
/* Rules, a tab of Content (#einstellungen/rules, views-rules.js, 8 Nov 2026): the existing kaart, tabs, tabel, pills, schakel, balken and pop; only spacing and the rows */
.cr-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.cr-tabel td small{color:var(--grey);margin-top:3px;line-height:1.5}
.cr-tabel td:first-child{min-width:260px}
.cr-tabel tr[data-rule]{cursor:pointer}
.cr-tabel tr[data-rule]:hover td,.cr-tabel tr[data-rule]:focus-visible td{background:var(--light)}
.cr-tabel tr[data-rule]:focus-visible{outline:none}
.cr-sev,.cr-act{width:1%;white-space:nowrap}
.cr-groep summary small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.cr-waar{font-size:12px;color:var(--grey);word-break:break-word}
.cr-pop{max-width:680px}
.cr-pop-breed{max-width:880px}
.cr-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}
.cr-set{border:0;padding:0;margin:0;min-width:0}
.cr-vinken{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13.5px}
.cr-vinken label{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.veld .cr-vinken input,.cr-ch input{width:auto;padding:0;margin:0;accent-color:var(--teal)}
.cr-claude{background:var(--light);border-radius:var(--r2);padding:14px 16px}
.cr-zoek .zoek{flex:1 1 320px;min-width:0}
.cr-tegels{grid-template-columns:repeat(4,minmax(0,1fr))}
.cr-bronnen{border:1px solid var(--line);border-radius:var(--r2);overflow:hidden}
.cr-bron{display:flex;justify-content:space-between;align-items:center;gap:14px;width:100%;text-align:left;padding:12px 16px;background:#fff;border:0;border-top:1px solid var(--line);font:inherit;color:inherit;cursor:pointer}
.cr-bron:first-child{border-top:0}
.cr-bron:hover{background:var(--light)}
.cr-bron-t{min-width:0}
.cr-bron-t b{font-weight:500}
.cr-bron-t small{color:var(--grey)}
.cr-bron-t small+small{display:block;margin-top:2px}
.cr-bron-b{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;flex:none}
.cr-voorstel{border-top:1px solid var(--line);margin-top:16px;padding-top:14px}
.cr-ch small{display:block;margin:3px 0 0 22px;word-break:break-all}
.cr-ch-tabel td small{display:block;margin-top:3px}
.cr-url{word-break:break-all;max-width:360px}
.cr-ch-acties{white-space:nowrap;text-align:right}
.cr-ch-acties>*{margin-left:6px}
.cr-chform{background:var(--light);border-radius:var(--r2);padding:14px 16px;margin-top:12px}
.cr-items li small{display:block;margin-top:2px}
.cr-item.ignored{opacity:.55}
@media (max-width:760px){
  .cr-2{grid-template-columns:minmax(0,1fr)}
  .cr-tegels{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cr-tabel thead{display:none}
  .cr-tabel tr{display:flex;flex-wrap:wrap;align-items:center;gap:0 14px;border-bottom:1px solid var(--line)}
  .cr-tabel tr:last-child{border-bottom:0}
  .cr-tabel td{border-bottom:0}
  .cr-tabel td:first-child{flex:1 1 100%;min-width:0;padding-bottom:6px}
  .cr-tabel td.cr-sev,.cr-tabel td.cr-act{width:auto;padding-top:0}
  .cr-bron{flex-direction:column;align-items:flex-start}
  .cr-bron-b{justify-content:flex-start}
  .cr-ch-acties{white-space:normal;text-align:left}
  .cr-ch-acties>*{margin:4px 6px 0 0}
  .cr-groep summary small{display:none}
}

/* ---- Sign-in, Settings › Users and Settings › Roles & permissions (roles and rights, 8 Nov 2026) */
.in-dev{background:var(--bad-soft);color:var(--bad);border-radius:var(--r2);padding:10px 14px;font-size:13px;margin:0 0 16px}
.in-form{text-align:left}
.in-form .in-knop{margin:4px 0 0}
.us-kop{display:flex;align-items:flex-start;gap:16px;margin:0 0 14px}
.us-kop>div{flex:1;min-width:0}
.us-kop .knop{flex:none}
.us-tabel td small,.rp-tabel td small{display:block;color:var(--mute);font-size:12px;margin-top:2px}
.us-acties{display:flex;flex-wrap:wrap;gap:8px}
.rp-rollen{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-top:14px}
.rp-rol{border:1px solid var(--line);border-radius:var(--r2);padding:12px 14px}
.rp-rol p{margin:8px 0 6px;font-size:13px;line-height:1.45}
.rp-rol small{color:var(--mute);font-size:12px}
.rp-tabel{min-width:640px}
.rp-tabel .rp-c{text-align:center;width:92px}
.rp-tabel .rp-c input{width:18px;height:18px;accent-color:var(--teal);cursor:pointer}
.rp-tabel .rp-c input:disabled{cursor:default;opacity:.55}
.rp-tabel .rp-groep th{background:var(--light);font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--grey);text-align:left}
.rp-tabel .rp-reset td{border-top:1px solid var(--line)}
@media (max-width:640px){.us-kop{flex-direction:column}.us-kop .knop{align-self:flex-start}}
/* Impact score sliders (Rob, 8 Nov 2026: "schuifjes en kleuren"; Marketing Studio impact-weights.tsx): green = positive, terracotta = negative */
.cr-assen{border:1px solid var(--line);border-radius:var(--r2);overflow:hidden;margin-top:16px}
.cr-as{display:grid;grid-template-columns:minmax(170px,1.15fr) minmax(0,1fr) minmax(0,1fr);gap:10px 22px;align-items:center;padding:12px 16px;border-top:1px solid var(--line)}
.cr-as:first-child{border-top:0}
.cr-as-kop{font-size:12.5px;font-weight:500;color:var(--mute);background:var(--light);padding-top:9px;padding-bottom:9px}
.cr-as-kop small{font-weight:400;color:var(--mute);margin-left:4px}
.cr-up-t{color:var(--ok)}
.cr-down-t{color:var(--bad)}
.cr-as-naam b{font-weight:500}
.cr-as-naam small{display:block;color:var(--grey);font-size:12px;line-height:1.45;margin-top:2px}
.cr-sl{display:flex;align-items:center;gap:10px;min-width:0}
.cr-sl-l{display:none;font-size:12.5px;width:64px;flex:none}
.cr-sl-up .cr-sl-l{color:var(--ok)}
.cr-sl-down .cr-sl-l{color:var(--bad)}
.cr-range{flex:1 1 auto;min-width:80px;height:22px;margin:0;cursor:pointer}
.cr-range.up{accent-color:var(--ok)}
.cr-range.down{accent-color:var(--bad)}
.cr-range.min{accent-color:var(--teal)}
.cr-range:disabled{cursor:default;opacity:.6}
.cr-range:focus-visible,.cr-pct input:focus-visible,.cr-min-n:focus-visible{outline:2px solid var(--teal);outline-offset:3px;border-radius:6px}
.cr-val{width:2.4em;text-align:right;font-weight:600;font-variant-numeric:tabular-nums;flex:none}
.cr-sl-up .cr-val{color:var(--ok)}
.cr-sl-down .cr-val{color:var(--bad)}
.cr-pct{display:inline-flex;align-items:center;gap:3px;font-size:12px;color:var(--mute);flex:none}
.cr-pct input{width:54px;font:inherit;font-size:13px;color:var(--ink);text-align:right;border:1px solid var(--line);border-radius:8px;padding:5px 6px;font-variant-numeric:tabular-nums;background:#fff}
.cr-as-som{background:var(--light);font-size:12.5px;color:var(--grey);padding-top:9px;padding-bottom:9px}
.cr-som b{color:var(--ok);font-weight:600}
.cr-min-rij{display:grid;grid-template-columns:minmax(170px,1.15fr) minmax(0,2fr);gap:10px 22px;align-items:center;background:var(--light);border-radius:var(--r2);padding:14px 16px;margin-top:16px}
.cr-min-rij b{font-weight:500}
.cr-min-rij small{display:block;color:var(--grey);font-size:12px;margin-top:2px;line-height:1.45}
.cr-min-ctl{display:flex;align-items:center;gap:12px}
.cr-min-n{width:76px;text-align:center;font:inherit;color:var(--ink);border:1px solid var(--line);border-radius:var(--r2);padding:7px 8px;background:#fff}
@media (max-width:760px){
  .cr-as,.cr-min-rij{grid-template-columns:minmax(0,1fr);gap:8px}
  .cr-as-kop{display:none}
  .cr-sl-l{display:inline;width:56px}
  .cr-sl{gap:8px}
  .cr-range{min-width:0}
  .cr-pct input{width:48px}
  .cr-as,.cr-min-rij{padding-left:12px;padding-right:12px}
  .cr-as-som>span:empty{display:none}
}
/* the sections of Content, Settings and Publish unfold under their main item in the left menu (nav.js, Rob 8 Nov 2026): only the active one */
.nav-sub{display:flex;flex-direction:column;gap:1px;margin:2px 0 8px 21px;padding-left:9px;border-left:1px solid var(--line)}
.nav-sub a{display:flex;align-items:center;gap:9px;padding:7px 10px;border-radius:var(--r2);color:var(--grey);font-size:13.5px;font-weight:400;text-decoration:none!important}
.nav-sub a:hover{background:rgba(255,255,255,.6);color:var(--ink)}
.nav-sub a.aan{background:#fff;color:var(--teal);font-weight:500}
.nav-sub a svg{width:16px;height:16px;flex:none;color:var(--mute)}
.nav-sub a.aan svg{color:var(--teal)}
.nav-sub a .badge{margin-left:auto}
.nav-sub a:focus-visible,#nav a:focus-visible,.zij-bouw:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
.zij-onder .nav-sub{margin-top:8px}
@media (min-width:761px){.zij{overflow-y:auto}}
/* in-page tabs below a section (Rules › Rules · Impact score · Sources) carry the same icons */
.tabs a svg{width:15px;height:15px;margin-right:6px;vertical-align:-3px;color:currentColor}
.cr-kop{margin-top:-10px}
@media (max-width:760px){
  .nav-sub{order:0;flex:1 1 100%;width:100%;flex-direction:row;flex-wrap:nowrap;overflow-x:auto;gap:4px;margin:2px 0 0;padding:0 0 4px;border-left:0;grid-column:1/-1;scrollbar-width:none}
  .nav-sub::-webkit-scrollbar{display:none}
  .nav-sub a{flex:none;white-space:nowrap;background:rgba(255,255,255,.45)}
  .zij-onder:has(.nav-sub){width:100%;display:flex;flex-wrap:wrap;gap:6px}
  .zij-onder .nav-sub{margin-top:0}
}
/* Radar (Rob, 8 Nov 2026): This week as one strip; a recommendation opens a detail (example, map, score, facts) in the CMS window */
.rd-strip{padding:14px 20px}
.rd-strip-kop{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.rd-strip-kop b{font-family:var(--serif);font-weight:500;font-size:17px}
.rd-strip-kop small{color:var(--mute)}
.rd-strip-kop .knop-klein{margin-left:auto}
.rd-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:10px}
.rd-stat{background:var(--light);border-radius:var(--r2);padding:9px 12px;display:flex;flex-direction:column;gap:1px;min-width:0}
.rd-stat b{font-family:var(--serif);font-size:22px;font-weight:500;line-height:1.1;color:var(--ink);font-variant-numeric:tabular-nums}
.rd-stat span{font-size:12.5px;color:var(--grey)}
.rd-stat small{font-weight:500;color:var(--mute)}
.rd-stat.neg small,.rd-stat.neg b{color:var(--bad)}
.rd-stat.pos small{color:var(--ok)}
.rd-partial{display:flex;align-items:center;gap:8px;margin:10px 0 0;font-size:12.5px;color:var(--warn)}
.rd-kaart[data-open]{cursor:pointer;transition:box-shadow .15s}
.rd-kaart[data-open]:hover{box-shadow:var(--shadow)}
.rd-kaart[data-open]:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
.rd-pop .rd-acties{margin:4px 0 12px}
.rd-sec{border-top:1px solid var(--line);padding-top:16px;margin-top:18px}
.rd-sec>h3{margin:0 0 10px}
.rd-item{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}
.rd-nu,.rd-wat{background:var(--light);border-radius:var(--r2);padding:14px 16px;min-width:0}
.rd-nu h4,.rd-wat h4{display:flex;align-items:center;gap:10px;margin:0 0 8px;font-size:14px}
.rd-nu h4 .knop-klein{margin-left:auto}
.rd-nu .feiten{grid-template-columns:86px 1fr}
.rd-excerpt{font-size:13px;color:var(--grey);line-height:1.55;margin:10px 0 0}
.rd-pv h4{margin:0 0 6px;font-size:15px}
.rd-pv p{font-size:13.5px;line-height:1.55}
.rd-pv-meta{font-size:12px!important;margin:8px 0 0}
/* Extend the page: the concrete changes (Rob, 9 Nov 2026) and the labelled priority */
.rd-prio{display:flex;flex-direction:column;align-items:center;gap:3px;flex:none}
.rd-prio small{font-size:10.5px;line-height:1.2;color:var(--mute);text-align:center}
.rd-score-kop .rd-prio{margin-right:4px}
.rd-chg-kort{background:var(--light);border-radius:var(--r2);padding:10px 14px;margin:0 0 10px;max-width:720px}
.rd-chg-kort b{font-size:13px}
.rd-chg-kort ul{margin:6px 0 0;padding:0;list-style:none;display:grid;gap:5px}
.rd-chg-kort li{font-size:14px;line-height:1.45;overflow-wrap:anywhere}
.rd-chg-kort small{color:var(--mute);font-size:12px}
.rd-chg-grund{margin:0 0 10px}
.rd-chg-grund b{font-size:13px}
.rd-chg-grund ul{margin:4px 0 0;padding-left:18px;font-size:13.5px;line-height:1.5}
.rd-chg-lijst{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.rd-chg{background:#fff;border-radius:var(--r2);padding:10px 12px;min-width:0}
.rd-chg-kop{margin:0 0 6px}
.rd-chg-nv{display:grid;grid-template-columns:70px minmax(0,1fr);gap:3px 10px;margin:0;font-size:13.5px;line-height:1.45}
.rd-chg-nv dt{color:var(--mute)}
.rd-chg-nv dd{margin:0;overflow-wrap:anywhere}
.rd-chg-why{font-size:12.5px;color:var(--mute);margin:6px 0 0;line-height:1.45}
.rd-pv-h{margin-top:14px!important}
.rd-chg-grund small{color:var(--mute);font-size:12px}
.rd-item{align-items:start}
.rd-score-kop{display:flex;align-items:center;gap:14px;margin:0 0 12px}
.rd-score-kop p{min-width:0}
.rd-axfeit{overflow-wrap:anywhere}
.rd-axfeit .badge{white-space:normal}
.rd-balken .balk{margin-top:6px}
.rd-axfeit{margin:2px 0 6px 126px;font-size:12px;color:var(--grey)}
.rd-q td,.rd-q th{padding:7px 10px}
.rd-mm{width:100%;height:auto;max-height:320px;background:var(--light);border-radius:var(--r2)}
.rd-mm-l{stroke:var(--line);stroke-width:1}
.rd-mm-l.plan{stroke-dasharray:3 3}
.rd-mm-l.focus{stroke:var(--teal);stroke-width:1.6;opacity:.75}
.rd-mm-l.focus.in{stroke:var(--deep)}
.rd-mm-n circle{fill:var(--teal);stroke:#fff;stroke-width:1.5}
.rd-mm-n.geplant circle{fill:#fff;stroke:var(--teal);stroke-width:1.6}
.rd-mm-n.pipeline circle{fill:var(--warn)}
.rd-mm-n.verschoben circle{fill:var(--mute)}
.rd-mm-n.outside circle{fill:var(--mist);stroke:var(--mute)}
.rd-mm-n.focus circle{fill:var(--bad);stroke:#fff;stroke-width:2.5}
.rd-mm-n text{font-size:10.5px;fill:var(--grey);text-anchor:middle;paint-order:stroke;stroke:var(--light);stroke-width:3px}
.rd-mm-n.focus text{font-weight:600;fill:var(--ink)}
.rd-mm-legende{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;font-size:12px;color:var(--grey);margin:8px 0 0}
.rd-mm-legende .knop-klein{margin-left:auto}
.rd-mm-k{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--teal);margin-right:-6px}
.rd-mm-k.geplant{background:#fff;border:1.5px solid var(--teal)}
.rd-mm-k.focus{background:var(--bad)}
.rd-mm-k.outside{background:var(--mist);border:1px solid var(--mute)}
@media (max-width:760px){
  .rd-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rd-item{grid-template-columns:minmax(0,1fr)}
  .rd-axfeit{margin-left:0}
  .rd-strip-kop .knop-klein{margin-left:0}
  .rd-score-kop{align-items:flex-start}
  .rd-pop .feiten{grid-template-columns:minmax(0,1fr)}
  .rd-pop .feiten dt{padding-top:6px}
  .rd-mm-legende .knop-klein{margin-left:0}
  .rd-pop .balk{grid-template-columns:minmax(0,1fr) 58px 34px}
  .rd-pop .balk b{grid-column:1/-1}
}
/* Settings › Connections around status (Rob, 8 Nov 2026: "vriendelijker, zodat mooi duidelijk is wat er geconnect is") */
.cn-som{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 20px;padding:0 0 14px;border-bottom:1px solid var(--line)}
.cn-n{font-family:var(--serif);font-size:24px;font-weight:500;color:var(--teal)}
.cn-use{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12.5px;color:var(--grey)}
.cn-use b{font-weight:500;color:var(--ink)}
.cn-lijst{display:flex;flex-direction:column}
.cn-rij{display:grid;grid-template-columns:40px minmax(0,1.4fr) minmax(0,1fr) auto;gap:6px 16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}
.cn-mark{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;background:var(--mist);color:var(--deep);letter-spacing:.02em}
.cn-rij.connected .cn-mark{background:var(--ok-soft);color:var(--ok)}
.cn-rij.problem .cn-mark{background:var(--bad-soft);color:var(--bad)}
.cn-naam b{font-weight:500;font-size:14.5px}
.cn-naam small,.cn-status small{display:block;color:var(--grey);font-size:12.5px;margin-top:3px;line-height:1.4}
.cn-status .cn-warn{color:var(--warn)}
.cn-acties{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;align-items:center}
.cn-acties small{color:var(--mute);font-size:12px}
.cn-paneel{grid-column:2/-1;background:var(--light);border-radius:var(--r2);padding:12px 14px;margin-top:4px}
.cn-paneel .qu-in{flex:1 1 260px;min-width:0}
.cn-stappen{margin:0;padding-left:18px;font-size:13px;color:var(--grey);line-height:1.6}
.cn-ml{grid-column:2/-1;margin:6px 0 0}
#cn-bk .cn-rij{border-top:0}
.cn-fix{display:block;color:var(--grey)}
.bk-src{margin:-6px 0 16px!important;font-size:13px}
.bk-prof{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:13px;margin-top:2px}
.bk-prof a{color:var(--teal,#307285)}
.bk-pop-prof{margin:-4px 0 4px!important}
.bk-doc-list{list-style:none;margin:8px 0 0;padding:0}
.bk-doc-list li{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:6px 14px;padding:10px 0;border-top:1px solid var(--line,#e6e1d9)}
.bk-doc-list li:first-child{border-top:0}
.bk-doc-n{display:flex;flex-direction:column;min-width:0}
.bk-doc-n>span:not(.bk-prof){font-size:13px;color:var(--grey)}
.bk-doc-s{font-size:13px;color:var(--grey);white-space:nowrap}
.bk-docs{container-type:inline-size}
@container (max-width:560px){.bk-doc-list li{grid-template-columns:auto 1fr;align-items:start;row-gap:4px}.bk-doc-s,.bk-doc-list .bk-tbtn{grid-column:2;justify-self:start}.bk-doc-list .bk-tbtn{padding-left:0}}
.cn-data{margin-top:14px}
.cn-data summary{cursor:pointer;font-weight:500;font-size:14px}
@media (max-width:760px){
  .cn-rij{grid-template-columns:36px minmax(0,1fr);gap:6px 12px}
  .cn-mark{width:36px;height:36px}
  .cn-status,.cn-acties,.cn-paneel,.cn-ml{grid-column:2/-1}
  .cn-acties{justify-content:flex-start}
}
/* Content › Types › FAQ (web/views-faq.js): the page filter lists long addresses; it never pushes the list wider than the screen */
.fq-filters select{max-width:min(340px,100%);min-width:0;text-overflow:ellipsis}
/* Errors (Sentry) on the Dashboard (views-start.js errorsTileLoad): one slim row; open issues add up to three lines under it */
.se-kaart{padding:10px 16px;border-radius:var(--r2);font-size:13px;color:var(--grey)}
.se-rij{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px}
.se-rij .dot{margin-right:-8px}
.se-rij>b{font-weight:500;color:var(--ink)}
.se-state.ok{color:var(--ok)}.se-state.warn{color:var(--warn);font-weight:600}.se-state.bad{color:var(--bad)}
.se-ns{display:flex;flex-wrap:wrap;gap:4px 14px}
.se-n{color:var(--grey);text-decoration:none;white-space:nowrap}.se-n b{font-weight:500;color:var(--ink)}
.se-n:hover{color:var(--teal)}
.se-n.warn{color:var(--warn)}.se-n.warn b{color:var(--warn);font-weight:700}
.se-end{display:flex;gap:10px;align-items:baseline;margin-left:auto;white-space:nowrap}
.se-end small,.se-msg{color:var(--mute)}
.se-msg{flex:1 1 240px}
.se-kaart.se-open{border-color:var(--warn-soft);background:linear-gradient(var(--warn-soft),var(--warn-soft)) left/3px 100% no-repeat,#fff}
.se-new{list-style:none;margin:8px 0 0;padding:8px 0 0;border-top:1px solid var(--line);display:grid;gap:4px}
.se-new li{display:flex;flex-wrap:wrap;gap:2px 10px;align-items:baseline;min-width:0}
.se-new a{color:var(--ink);overflow-wrap:anywhere;min-width:0}
.se-new small{color:var(--mute);white-space:nowrap}

/* ---- Bookings (views-booking.js; docs/booking/DESIGN.md § 4) ---- */
.bk-kop{display:flex;gap:16px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;margin:0 0 18px}
.bk-kop .sub{margin:0}
.bk-cals{grid-template-columns:repeat(auto-fill,minmax(270px,1fr))}
.bk-cal{display:flex;flex-direction:column;gap:6px;min-height:190px}
.bk-cal-top{display:flex;gap:6px;flex-wrap:wrap}
.bk-cal b{margin-top:4px}
.bk-faces{display:flex;margin-top:auto;padding-top:8px}
.bk-faces .bk-face{margin-right:-6px;border:2px solid #fff}
.bk-cal-n{display:flex;align-items:baseline;gap:6px;color:var(--mute);font-size:12.5px}
.bk-cal-n .n{font-family:var(--serif);font-size:26px;line-height:1;color:var(--teal)}
.bk-cal-n .n.nul{color:var(--mute)}
.bk-face{display:inline-flex;align-items:center;justify-content:center;flex:none;width:30px;height:30px;border-radius:50%;background:var(--sand);color:var(--mute);overflow:hidden}
.bk-face svg{width:62%;height:62%}
.bk-face img{width:100%;height:100%;object-fit:cover;object-position:50% 25%;display:block}
.bk-face.big{width:44px;height:44px}
.bk-dev{max-width:760px}
.bk-velden{gap:12px}
.bk-2,.bk-3{display:grid;gap:12px;grid-template-columns:1fr}
@media (min-width:640px){.bk-2{grid-template-columns:1fr 1fr}.bk-3{grid-template-columns:1fr 1fr 1fr}}
.bk-velden fieldset{border:0;padding:0;margin:0}
.bk-velden legend{font-size:12.5px;color:var(--grey);margin:0 0 6px;padding:0}
.bk-radio{display:flex!important;flex-direction:row!important;justify-content:flex-start;gap:8px;align-items:center;padding:4px 0;font-size:13.5px;text-align:left}
.bk-radio input{width:auto!important;flex:none;margin:0;height:auto}
.bk-radio span{flex:1;min-width:0}
.bk-mems{display:flex;flex-direction:column;gap:8px}
.bk-mem{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 10px;border:1px solid var(--line);border-radius:var(--r2);background:#fff}
.bk-mem-n{flex:1 1 140px;min-width:0;font-size:13.5px}
.bk-mem-n small{display:block}
.bk-mini{display:flex;flex-direction:column;font-size:11px;color:var(--mute)}
.bk-mini input{width:64px}
.bk-slots{display:flex;flex-direction:column;gap:6px}
.bk-sday{display:grid;grid-template-columns:96px 1fr;gap:8px;align-items:start;font-size:12.5px}
.bk-sday>span{display:flex;flex-wrap:wrap;gap:4px}
.bk-slot{display:inline-flex;gap:4px;align-items:center;padding:3px 8px;border-radius:999px;background:var(--mist);font-variant-numeric:tabular-nums}
.bk-slot i{font-style:normal;font-size:10px;color:var(--teal);font-weight:600}
.bk-people{display:flex;flex-direction:column;gap:14px;margin:0 0 14px;container-type:inline-size}
.bk-people .kaart{margin:0}
.bk-p-top{display:flex;gap:14px;align-items:center}
.bk-p-id{flex:1;min-width:0;display:flex;flex-wrap:wrap;align-items:baseline;column-gap:10px;row-gap:2px}
.bk-p-id b{font-size:15px;font-weight:600}
.bk-p-meta{color:var(--mute);font-size:13px}
.bk-tag{font-size:11px;line-height:1;padding:3px 7px;border-radius:6px;background:var(--light);border:1px solid var(--line);color:var(--mute);letter-spacing:.02em}
.bk-tbtn{flex:none;background:none;border:0;color:var(--teal);font:500 13px var(--sans);padding:6px 10px;margin:-6px -10px -6px 0;border-radius:8px;cursor:pointer}
.bk-tbtn:hover{background:var(--teal-soft)}
.bk-tbtn.gevaar{color:var(--bad)}
.bk-tbtn.gevaar:hover{background:var(--bad-soft)}
.bk-sync{margin:14px 0 0!important;font-size:12px}
.bk-wk-none{margin:14px 0 0!important}
/* the weekly grid: a label column and one column per day; the cells of each row share their height (subgrid) */
.bk-wk{display:grid;grid-template-columns:76px repeat(var(--n),minmax(0,1fr));grid-template-rows:auto repeat(var(--r),auto);column-gap:8px;margin:16px 0 0;padding:14px 0 0;border-top:1px solid var(--line)}
.bk-col{display:grid;grid-row:1/-1;grid-template-rows:subgrid;row-gap:6px;min-width:0}
.bk-col>b{font-size:12px;font-weight:600;color:var(--grey);padding:0 0 2px 2px}
.bk-col.off>b{color:var(--mute);font-weight:500}
.bk-per{font-size:12px;color:var(--mute);padding-top:7px}
.bk-cell{display:flex;flex-direction:column;gap:6px;min-width:0}
.bk-none{color:var(--mute);opacity:.6;padding:6px 0 0 4px;font-size:14px}
.bk-blk{display:flex;flex-direction:column;gap:1px;padding:6px 9px;border-radius:8px;border-left:3px solid var(--c);background:var(--b);font-size:12px;line-height:1.35;min-width:0}
.bk-blk-t{font-variant-numeric:tabular-nums;color:var(--ink);font-weight:500;white-space:nowrap}
.bk-blk-p{display:flex;align-items:center;gap:5px;color:var(--grey);min-width:0;white-space:nowrap}
.bk-vid{flex:none;width:14px;height:14px;color:var(--teal)}
.bk-blk.remote{--c:var(--teal);--b:#fff;border:1px dashed rgba(49,118,137,.35);border-left:3px solid var(--teal)}
.bk-blk.t1{--c:#317689;--b:#E3EEF1}
.bk-blk.t2{--c:#A07850;--b:#F3EADF}
.bk-blk.t3{--c:#4E8A66;--b:#E6F0E9}
.bk-blk.t4{--c:#A2586B;--b:#F5E7EA}
.bk-blk.t5{--c:#6A62A0;--b:#ECEAF5}
.bk-blk.t6{--c:#9A8230;--b:#F5EFDA}
@container (max-width:560px){
  .bk-wk{display:block}
  .bk-col-lab{display:none}
  .bk-col{display:grid;grid-template-columns:38px minmax(0,1fr) minmax(0,1fr);gap:6px;padding:8px 0;border-bottom:1px solid var(--line)}
  .bk-col:last-child{border-bottom:0}
  .bk-col>b{grid-row:span 2;grid-column:1;padding:7px 0 0}
  .bk-col>:nth-child(2){grid-column:2}
  .bk-col>:nth-child(3){grid-column:3}
  .bk-col>:nth-child(4){grid-column:2}
  .bk-col-lab{padding:0 0 4px}
  .bk-col-lab .bk-per{padding:0}
  .bk-none{padding:4px 0 0}
}
.bk-hol{container-type:inline-size}
@container (max-width:520px){
  .bk-hol .bk-p-top{flex-wrap:wrap}
  .bk-hol .bk-p-id{flex-basis:100%}
  .bk-hol .bk-tbtn{margin:2px 0 -6px -10px}
}
.bk-hol .bk-p-id b{font-family:var(--serif);font-weight:500;font-size:17px}
.bk-hol-list{list-style:none;margin:14px 0 0;padding:14px 0 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:4px;font-size:13px}
.bk-hol-list li{display:flex;gap:12px;align-items:center}
.bk-hol-list li b{font-weight:500;font-variant-numeric:tabular-nums;min-width:96px}
.bk-hol-list li span{flex:1;min-width:0;color:var(--grey)}
.bk-week{display:flex;flex-direction:column;gap:6px}
.bk-wd{display:grid;grid-template-columns:40px 1fr auto;gap:8px;align-items:start;padding:6px 0;border-bottom:1px solid var(--line)}
.bk-wd>div{display:flex;flex-direction:column;gap:6px;min-width:0}
.bk-wd-err{grid-column:1/-1;margin:2px 0 0;font-size:13px}
.bk-wd-err[hidden]{display:none}
.bk-win{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.bk-win input[type=time]{width:96px}
.bk-win select{max-width:170px}
.bk-ex{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:13px}
.bk-ex li{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.bk-day h3{font-size:16px;margin:0 0 8px}
.bk-bl{list-style:none;margin:0;padding:0}
.bk-b{display:grid;grid-template-columns:64px 1fr auto;gap:10px 14px;align-items:center;padding:10px 6px;border-top:1px solid var(--line);border-radius:8px}
.bk-b:first-child{border-top:0}
.bk-b:hover{background:var(--light)}
.bk-time{font-variant-numeric:tabular-nums;font-weight:500}
.bk-time small,.bk-who small{display:block;font-weight:400}
.bk-who{min-width:0}
.bk-staff{display:none;align-items:center;gap:8px;font-size:12.5px;color:var(--grey)}
@media (min-width:760px){.bk-b{grid-template-columns:72px 1fr 190px 110px}.bk-staff{display:flex}}
.bk-b .badge{justify-self:end}
.bk-dl{display:grid;grid-template-columns:110px 1fr;gap:6px 12px;margin:0 0 6px;font-size:13.5px}
.bk-dl dt{color:var(--mute)}
.bk-dl dd{margin:0;min-width:0;overflow-wrap:anywhere}
.bk-conns{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
.bk-conn{display:flex;flex-direction:column;gap:6px;align-items:flex-start;padding:14px 16px;border:1px solid var(--line);border-radius:var(--r2)}
/* the places of a weekly block (views-booking.js placePick): chips that open a checkbox list */
.bk-places{position:relative}
.bk-places summary{list-style:none;display:flex;flex-wrap:wrap;gap:4px;align-items:center;min-height:38px;padding:5px 30px 5px 8px;border:1px solid var(--line);border-radius:var(--r2);background:#fff;cursor:pointer;min-width:150px}
.bk-places summary::-webkit-details-marker{display:none}
.bk-places summary::after{content:'';position:absolute;right:12px;top:15px;width:7px;height:7px;border-right:1.6px solid var(--grey);border-bottom:1.6px solid var(--grey);transform:rotate(45deg)}
.bk-chip{display:inline-block;font-size:12px;line-height:1;padding:5px 8px;border-radius:999px;background:var(--teal-soft);color:var(--teal);font-weight:500}
.bk-chip.remote{background:var(--sand);color:var(--warn)}
.bk-places-in{position:absolute;z-index:5;top:calc(100% + 4px);left:0;min-width:250px;max-width:calc(100vw - 48px);background:#fff;border:1px solid var(--line);border-radius:var(--r2);box-shadow:var(--shadow);padding:8px 10px;display:flex;flex-direction:column;gap:2px}
.bk-places-in label{display:flex;gap:8px;align-items:center;padding:5px 2px;font-size:13.5px;cursor:pointer;white-space:nowrap}
.bk-places-in input{width:auto;margin:0}
.bk-mem-off{opacity:.55}
.bk-places-h{padding:6px 2px 0;border-top:1px solid var(--line);margin-top:4px}
#bp-name[readonly]{background:#f4f1ec;color:var(--grey)}
.bk-places-g{display:block;margin:8px 0 2px;padding-top:8px;border-top:1px solid var(--line,#e6e1d9);font-size:11.5px;letter-spacing:.02em;text-transform:uppercase;color:var(--grey)}
.bk-away-t{flex-basis:100%;color:var(--warn);background:var(--warn-soft);border-radius:6px;padding:3px 8px;font-size:12.5px;margin-top:2px}
.bk-away-t[hidden]{display:none}
.bk-blk{position:relative}
.bk-blk.away{box-shadow:inset 0 0 0 1px var(--warn)}
.bk-away{position:absolute;top:-6px;right:-6px;width:16px;height:16px;border-radius:50%;background:var(--warn);color:#fff;font:700 11px/16px var(--sans,system-ui);text-align:center}
.bk-catgs{display:flex;flex-direction:column;gap:18px}
.bk-catg>summary{display:flex;align-items:center;gap:8px;cursor:pointer;list-style:none;font-size:15px;padding:4px 0 10px}
.bk-catg>summary::-webkit-details-marker{display:none}
.bk-catg>summary::before{content:"";width:7px;height:7px;border-right:1.6px solid var(--grey);border-bottom:1.6px solid var(--grey);transform:rotate(-45deg);transition:transform .15s;margin-right:4px}
.bk-catg[open]>summary::before{transform:rotate(45deg)}
.bk-cal-w{position:relative;display:flex}
.bk-cal-w>.bk-cal{flex:1}
.bk-ord{position:absolute;right:12px;bottom:12px;display:flex;gap:4px}
.bk-ord-b{width:28px;height:28px;border-radius:8px;border:1px solid var(--line,#e6e1d9);background:var(--bg,#fff);color:var(--grey);cursor:pointer;font-size:14px;line-height:1}
.bk-ord-b:hover:not(:disabled){color:var(--teal);border-color:var(--teal)}
.bk-ord-b:disabled{opacity:.35;cursor:default}
.ms-pick summary{min-height:40px}
