/* ROOT boekingssysteem: gast, partner en beheer. Palet en typografie volgen styles.css. */
:root{--fire:#c86a32;--fire-dark:#a8551f;--water:#4c6a6f;--earth:#6b7a5e;--air:#8c9a96;--charcoal:#2b2b28;--cream:#f5f0e6;--cream-2:#efe7d8;--paper:#fbf8f1;--line:#e0d6c4;--muted:#6e685c;--ok:#4f7a4a;--warn:#b5651d;--bad:#a63d2f;--radius:14px;--serif:"Cormorant Garamond",Georgia,serif;--sans:"Inter",-apple-system,"Segoe UI",Roboto,sans-serif}
*{box-sizing:border-box;margin:0;padding:0}
body.bk{font-family:var(--sans);color:var(--charcoal);background:var(--cream);line-height:1.55;font-size:16px;-webkit-font-smoothing:antialiased;min-height:100vh;display:flex;flex-direction:column}
.bk-wrap{width:100%;max-width:1080px;margin:0 auto;padding:0 16px}
.bk-top{background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}
.bk-top-in{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:60px}
.bk-brand{display:flex;align-items:center;gap:10px;color:var(--charcoal);text-decoration:none;font-family:var(--serif);font-size:1.25rem;letter-spacing:2px;font-weight:600}
.bk-brand img{border-radius:8px}
.bk-nav{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:.9rem;align-items:center}
.bk-nav a{color:var(--water);text-decoration:none;font-weight:500}.bk-nav a:hover{text-decoration:underline}
.bk-user{color:var(--muted);font-size:.85rem}
.bk-main{flex:1;padding:24px 16px 48px}
.bk-foot{border-top:1px solid var(--line);padding:18px 0;font-size:.82rem;color:var(--muted)}.bk-foot a{color:var(--water)}
h1.bk-h1{font-family:var(--serif);font-weight:600;font-size:clamp(1.8rem,4vw,2.5rem);line-height:1.1;margin:6px 0 8px}
h2.bk-h2{font-family:var(--serif);font-weight:600;font-size:1.5rem;margin:22px 0 10px}
h3.bk-h3{font-size:1rem;font-weight:600;margin:16px 0 8px}
.bk-eyebrow{text-transform:uppercase;letter-spacing:3px;font-size:.72rem;font-weight:600;color:var(--fire)}
.bk-lead{color:var(--muted);max-width:620px}
.bk-muted{color:var(--muted)}.bk-small{font-size:.86rem}
.bk-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:20px}
.bk-grid{display:grid;gap:20px}@media(min-width:900px){.bk-grid-2{grid-template-columns:1.6fr 1fr}.bk-grid-eq{grid-template-columns:1fr 1fr}}
.bk-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--fire);color:#fff;border:0;border-radius:999px;padding:12px 22px;font:600 1rem var(--sans);cursor:pointer;text-decoration:none;transition:background .15s}
.bk-btn:hover{background:var(--fire-dark);text-decoration:none}.bk-btn[disabled]{opacity:.45;cursor:not-allowed}
.bk-btn.sec{background:transparent;color:var(--charcoal);border:1px solid var(--line)}.bk-btn.sec:hover{background:var(--cream-2)}
.bk-btn.sm{padding:7px 14px;font-size:.86rem}.bk-btn.danger{background:var(--bad)}.bk-btn.block{width:100%}
.bk-steps{display:flex;gap:18px;font-size:.84rem;color:var(--muted);margin:0 0 18px;flex-wrap:wrap}
.bk-steps span{display:flex;align-items:center;gap:7px}.bk-steps b{display:inline-flex;width:22px;height:22px;border-radius:50%;background:var(--line);color:var(--charcoal);align-items:center;justify-content:center;font-size:.75rem}
.bk-steps .on b{background:var(--fire);color:#fff}
.bk-label{display:block;font-size:.72rem;letter-spacing:2px;text-transform:uppercase;color:var(--muted);font-weight:600;margin:16px 0 8px}
.bk-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.bk-day{border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 2px;text-align:center;cursor:pointer;font-size:.8rem;color:var(--muted)}
.bk-day b{display:block;font-size:1.1rem;color:var(--charcoal)}.bk-day.on{background:var(--fire);border-color:var(--fire);color:#fff}.bk-day.on b{color:#fff}
.bk-day.none{opacity:.45;cursor:default}
.bk-daynav{display:flex;justify-content:space-between;align-items:center;margin:8px 0 2px;font-size:.9rem}
.bk-daynav button{background:none;border:1px solid var(--line);border-radius:999px;padding:4px 12px;cursor:pointer;font:500 .85rem var(--sans)}
.bk-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.bk-slot{border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px 12px;text-align:left;cursor:pointer;font:inherit}
.bk-slot b{display:block;font-size:.98rem}.bk-slot small{color:var(--muted);font-size:.78rem}
.bk-slot.on{border-color:var(--fire);box-shadow:inset 0 0 0 1px var(--fire)}.bk-slot.on small{color:var(--fire)}
.bk-slot.off{opacity:.5;cursor:not-allowed;background:var(--cream-2)}
.bk-slot .tag{display:inline-block;font-size:.7rem;background:var(--cream-2);border-radius:999px;padding:1px 8px;margin-top:4px;color:var(--earth)}
.bk-field{margin:0 0 12px}.bk-field label{display:block;font-size:.85rem;font-weight:600;margin-bottom:4px}
.bk-field input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.bk-field input[type=email],.bk-field input[type=tel],.bk-field input[type=number],.bk-field input[type=date],.bk-field input[type=time],.bk-field select,.bk-field textarea{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;font:inherit}
.bk-field .hint{font-size:.78rem;color:var(--muted);margin-top:3px}
.bk-row{display:grid;gap:12px}@media(min-width:600px){.bk-row-2{grid-template-columns:1fr 1fr}.bk-row-3{grid-template-columns:1fr 1fr 1fr}}
.bk-check{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;margin:10px 0}.bk-check input{margin-top:4px}
.bk-qty{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;background:#fff}
.bk-qty button{width:38px;height:38px;border:0;background:none;font-size:1.2rem;cursor:pointer;color:var(--fire)}.bk-qty span{min-width:28px;text-align:center;font-weight:600}
.bk-summary{position:sticky;top:76px}
.bk-sumrow{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px dashed var(--line);font-size:.92rem}
.bk-sumrow.total{border:0;font-size:1.25rem;font-weight:600;padding-top:12px}
.bk-sumrow .k{color:var(--muted)}
.bk-msg{border-radius:10px;padding:10px 14px;font-size:.9rem;margin:10px 0}.bk-msg.err{background:#f6e3df;color:var(--bad)}.bk-msg.ok{background:#e4ecdf;color:var(--ok)}
.bk-flash{border-radius:10px;padding:10px 14px;margin:0 0 16px;background:#e4ecdf;color:var(--ok)}.bk-flash.err{background:#f6e3df;color:var(--bad)}
.bk-table{width:100%;border-collapse:collapse;font-size:.9rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.bk-table th,.bk-table td{padding:9px 10px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}.bk-table th{font-size:.74rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);background:var(--cream-2)}
.bk-table tr:last-child td{border-bottom:0}.bk-table .r{text-align:right}
.bk-pill{display:inline-block;border-radius:999px;padding:2px 10px;font-size:.74rem;font-weight:600;background:var(--cream-2);color:var(--charcoal)}
.bk-pill.ok{background:#e4ecdf;color:var(--ok)}.bk-pill.warn{background:#f3e5d1;color:var(--warn)}.bk-pill.bad{background:#f6e3df;color:var(--bad)}.bk-pill.info{background:#dfe8ea;color:var(--water)}
.bk-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.bk-cal .h{font-size:.72rem;letter-spacing:1px;text-transform:uppercase;color:var(--muted);text-align:center;padding:4px}
.bk-cal .d{min-height:78px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:4px 6px;font-size:.78rem}
.bk-cal .d.out{opacity:.4}.bk-cal .d .n{font-weight:600;display:block}.bk-cal .d.today{border-color:var(--fire)}
.bk-cal .ev{display:block;border-radius:5px;padding:1px 5px;margin-top:3px;font-size:.72rem;color:#fff;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bk-cal .ev.partner{background:var(--earth)}.bk-cal .ev.verhuur{background:var(--fire)}.bk-cal .ev.eigen{background:var(--air)}.bk-cal .ev.buf{background:var(--line);color:var(--muted)}
.bk-cal .cnt{display:inline-block;margin-top:3px;font-size:.72rem;color:var(--water)}
.bk-kpis{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.bk-kpi{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:14px}.bk-kpi b{display:block;font-family:var(--serif);font-size:1.9rem;line-height:1}.bk-kpi span{font-size:.8rem;color:var(--muted)}
.bk-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.bk-inline{display:inline}
.bk-sess{border:1px solid var(--line);border-radius:12px;background:var(--paper);padding:12px 14px;margin:0 0 10px}
.bk-sess-h{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:center}
.bk-sess-h b{font-size:1.05rem}
.bk-bk{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:center;padding:8px 0;border-top:1px dashed var(--line);font-size:.92rem}
.bk-qr{text-align:center}.bk-qr img{width:min(320px,80vw);height:auto;margin:12px auto}
@media print{.bk-top,.bk-foot,.no-print{display:none}.bk-main{padding:0}}
.bk-code{font-size:2rem;letter-spacing:8px;text-align:center}
.bk-login{max-width:420px;margin:40px auto}
.bk-hero{display:grid;gap:16px;align-items:center;margin:0 0 20px}@media(min-width:800px){.bk-hero{grid-template-columns:1.3fr 1fr}}
.bk-hero img{width:100%;border-radius:var(--radius);aspect-ratio:4/3;object-fit:cover}
/* boekpagina: foto rechtsboven, zelfde kolommen als de kaarten eronder (23 okt) */
@media(min-width:900px){.bk-hero-book{grid-template-columns:1.6fr 1fr;gap:20px}}.bk-hero-book .bk-lead{margin-bottom:0}
@media(max-width:600px){.bk-brand{font-size:1rem;letter-spacing:1px}.bk-brand img{width:28px;height:28px}.bk-nav{font-size:.82rem;gap:2px 10px}.bk-user{display:none}.bk-top-in{min-height:52px}}

/* Infopagina's Hoe werkt het en Veilig saunen (W-03, W-04) */
.bk-info p{margin:0 0 10px}
.bk-rules{margin:0 0 18px;padding-left:2.1em;list-style:decimal}
.bk-rules li{margin:0 0 10px;padding-left:.35em;line-height:1.55}
.bk-rules li::marker{color:var(--fire);font-weight:700}
.bk-steplist{display:grid;gap:18px;margin:10px 0 20px}
.bk-step .bk-h3{margin:0 0 6px}
.bk-step p{margin:0 0 8px}
.bk-step-n{color:var(--fire);font-weight:700}
/* Saunapagina via QR (A-125) */
.bk-qr-loc{border-left:4px solid var(--fire)}
.bk-main a:not(.bk-btn),.bk-foot a{color:var(--fire-dark)}
/* QR-keuzepagina (A-125): twee grote knoppen, mobiel eerst */
.bk-qr-choice{max-width:440px;margin:6vh auto 0;text-align:center}
.bk-qr-choice .bk-h1{margin-bottom:28px}
.bk-qr-rent{margin:6px 0 0;font-size:.95rem}.bk-qr-rent a{color:var(--charcoal);text-decoration:underline;text-underline-offset:3px}
.bk-qr-btn{display:flex;flex-direction:column;gap:4px;padding:22px 20px;margin:0 0 16px;border-radius:var(--radius);background:var(--fire);color:#fff;text-decoration:none;box-shadow:0 2px 0 var(--fire-dark)}
.bk-qr-btn.sec{background:var(--paper);color:var(--charcoal);border:1px solid var(--line);box-shadow:none}
.bk-main a.bk-qr-btn{color:#fff}.bk-main a.bk-qr-btn.sec{color:var(--charcoal)}
.bk-qr-btn-t{font-family:var(--serif);font-size:1.7rem;font-weight:700;line-height:1.1}
.bk-qr-btn-s{font-size:.95rem;opacity:.9}
/* ---- tracker (acties, besluiten) ---- */
.tr-stats{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}.tr-stat{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:8px 12px;min-width:72px;text-decoration:none;color:var(--charcoal)}
.tr-stat b{font-size:1.2rem;line-height:1.1}.tr-stat span{font-size:.72rem;color:var(--muted)}.tr-stat.warn b{color:var(--bad)}.tr-stat.ms{max-width:260px}.tr-stat.ms span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tr-filter{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}.tr-filter input,.tr-filter select{padding:8px 10px;border:1px solid var(--line);border-radius:8px;font:inherit;background:var(--paper)}.tr-filter input[name=q]{flex:1;min-width:160px}.tr-filter>*{max-width:100%;min-width:0}.tr-filter select{text-overflow:ellipsis}
.tr-new{margin:0 0 16px}.tr-new summary{list-style:none;display:inline-flex}.tr-new summary::-webkit-details-marker{display:none}.tr-newform{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:14px;margin-top:10px;display:grid;gap:10px}
.tr-newform textarea,.tr-newform input,.tr-newform select{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:8px;font:inherit}
.tr-list{display:grid;gap:10px;grid-template-columns:minmax(0,1fr)}.tr-item{min-width:0;max-width:100%;background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--line);border-radius:12px;padding:10px 12px;display:grid;gap:6px;position:relative}
.tr-item.pr-high{border-left-color:var(--fire)}.tr-item.st-doing{background:#fbf6ec}.tr-item.st-done,.tr-item.st-cancelled{opacity:.6}.tr-item.late .tr-due{color:var(--bad);font-weight:600}.tr-item.ds-vast{border-left-color:var(--ok)}.tr-item.ds-open{border-left-color:var(--fire)}.tr-item.ds-vervangen{opacity:.6}
.tr-head{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-width:0}.tr-head input.tr-f{min-width:0;flex:0 1 auto}.tr-id{font:600 .8rem var(--sans);letter-spacing:1px;color:var(--muted);min-width:46px}
.tr-f{border:1px solid transparent;border-radius:6px;padding:4px 6px;font:inherit;background:transparent;width:100%}.tr-f:hover{border-color:var(--line)}.tr-f:focus{border-color:var(--fire);background:#fff;outline:none}
.tr-head .tr-f{width:auto;font-size:.86rem}.tr-head select.tr-f{background:var(--cream-2)}.tr-owner{max-width:130px}.tr-due{max-width:120px}
.tr-task{font-weight:500;resize:none;overflow:hidden;line-height:1.4}.tr-note{font-size:.86rem;color:var(--muted);resize:none;overflow:hidden;line-height:1.4}
.tr-more{margin-left:auto;background:transparent;border:1px solid var(--line);border-radius:6px;padding:2px 8px;cursor:pointer;font-size:1rem;line-height:1}
.tr-extra{border-top:1px dashed var(--line);padding-top:8px;display:grid;gap:8px}.tr-extra[hidden]{display:none}.tr-item>*{min-width:0}.tr-row{min-width:0}.tr-row{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.tr-row label{font-size:.74rem;color:var(--muted);display:grid;gap:3px}.tr-row input,.tr-row select{width:100%;padding:6px 8px;border:1px solid var(--line);border-radius:6px;font:inherit}
.tr-note-add{display:flex;gap:6px}.tr-note-add input{flex:1;padding:6px 8px;border:1px solid var(--line);border-radius:6px;font:inherit}
.tr-hist-list ul{margin:6px 0 0;padding-left:18px;font-size:.8rem;color:var(--muted)}.tr-meta{font-size:.72rem;color:var(--muted)}
.tr-save{font-size:.74rem;min-height:1em}.tr-save.ok{color:var(--ok)}.tr-save.err{color:var(--bad)}
.tr-key{display:block;word-break:break-all;background:var(--cream-2);padding:10px;border-radius:8px}
.bk-link{background:none;border:0;color:var(--fire-dark);font:inherit;cursor:pointer;padding:0;text-decoration:underline}
@media(max-width:600px){.tr-head .tr-f{font-size:.8rem;padding:3px 4px}.tr-owner{max-width:90px}.tr-due{max-width:84px}.tr-filter select{flex:1 1 45%}.tr-stat.ms{max-width:100%}}
/* ---- CRM ---- */
.crm-sub{display:flex;flex-wrap:wrap;gap:4px 14px;margin:0 0 14px;font-size:.9rem}.crm-sub a{color:var(--muted)}.crm-sub a.on{color:var(--fire-dark);font-weight:600}
.crm-board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,1fr);gap:10px;overflow-x:auto;padding-bottom:8px;-webkit-overflow-scrolling:touch}
.crm-col{background:var(--cream-2);border-radius:12px;padding:8px;min-height:200px}.crm-col.over{outline:2px dashed var(--fire)}.crm-col h3{font:600 .8rem var(--sans);letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin:4px 6px 8px}.crm-col h3 span{float:right}
.crm-col-body{display:grid;gap:6px}.crm-card{cursor:grab}.crm-card.dragging{opacity:.5}
.crm-chip{display:block;background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--line);border-radius:8px;padding:8px 10px;text-decoration:none;color:var(--charcoal)}.crm-chip b{display:block;font-size:.92rem}.crm-chip span{font-size:.76rem;color:var(--muted)}.crm-chip.pr-high{border-left-color:var(--fire)}.crm-chip.late span{color:var(--bad)}
.crm-table-wrap{overflow-x:auto}.crm-table tr.late td:nth-child(8){color:var(--bad);font-weight:600}
.crm-ai{display:inline-block;font-size:.62rem;letter-spacing:1px;background:var(--water);color:#fff;border-radius:4px;padding:1px 5px;vertical-align:middle}
.crm-contact{padding:6px 0;border-bottom:1px solid var(--line)}.crm-follow{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:6px 0;border-bottom:1px solid var(--line)}.crm-follow.late b{color:var(--bad)}.crm-follow input{padding:4px 6px;border:1px solid var(--line);border-radius:6px;font:inherit}
.crm-h2{font-size:1.2rem;margin:18px 0 8px}.tr-item.late .tr-id{color:var(--bad)}
@media(max-width:600px){.crm-board{grid-auto-columns:85vw}}
/* ---- dashboard ---- */
.db-asset h2{font-size:1.3rem;margin:0 0 10px}.db-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:0 0 14px}
.db-tile{background:var(--cream-2);border-radius:10px;padding:10px 12px;border-left:4px solid var(--line)}.db-tile.ok{border-left-color:var(--ok)}.db-tile.warn{border-left-color:#d9a441}.db-tile.bad{border-left-color:var(--bad)}
.db-label{font-size:.72rem;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}.db-value{font-family:var(--serif);font-size:1.6rem;line-height:1.2;margin:4px 0 2px}.db-target{font-size:.9rem;color:var(--muted);margin-left:6px}
.db-bar{height:5px;background:#fff;border-radius:3px;overflow:hidden;margin:4px 0}.db-bar i{display:block;height:100%;background:var(--fire)}.db-sub{font-size:.72rem;color:var(--muted)}
.db-chart{width:100%;height:auto;background:var(--paper);border:1px solid var(--line);border-radius:10px;margin:6px 0 12px}
.rv-stars{display:flex;gap:8px;margin:10px 0 4px}.rv-star input{position:absolute;opacity:0}.rv-star span{display:inline-flex;width:52px;height:52px;align-items:center;justify-content:center;border:2px solid var(--line);border-radius:12px;font:600 1.3rem var(--sans);cursor:pointer}.rv-star input:checked+span{background:var(--fire);border-color:var(--fire);color:#fff}

/* partnerportaal eigenaar: tegels */
.pk-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:12px}
.pk-tile{background:var(--bg,#f6f1e8);border:1px solid var(--line,#e6dfd2);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:2px}
.pk-tile .pk-k{font-size:.78rem;letter-spacing:.5px;text-transform:uppercase;color:var(--muted,#6e685c)}
.pk-tile b{font-size:1.5rem;line-height:1.2}

/* acties: compacte lijst, kanban, gantt, to do */
.tr-table-wrap{overflow-x:auto}.tr-table{width:100%;border-collapse:collapse}.tr-table td,.tr-table th{padding:2px 4px;vertical-align:middle;white-space:nowrap}.tr-table th{font-size:.7rem}
.tr-table .tr-c-task{white-space:normal;min-width:240px;width:44%}.tr-table .tr-c-task input{width:100%;font-weight:500;padding:3px 6px}
tr.tr-row-c{border-left:0;background:transparent;display:table-row;border-bottom:1px solid var(--line)}tr.tr-row-c.pr-high td.tr-id a,tr.tr-row-c.pr-high td.tr-id button{color:var(--fire)}tr.tr-row-c.st-doing{background:#fbf6ec}tr.tr-row-c.st-done,tr.tr-row-c.st-cancelled{opacity:.55}
tr.tr-row-c .tr-f{font-size:.84rem;padding:3px 5px}tr.tr-row-c select.tr-f{background:var(--cream-2);min-width:0;width:auto;max-width:120px}tr.tr-row-c .tr-owner{min-width:64px;max-width:80px}tr.tr-row-c .tr-ms{min-width:64px;max-width:72px}tr.tr-row-c .tr-track{min-width:90px;max-width:110px}.tr-table th a{color:var(--water);text-decoration:none}.tr-table th a.on{color:var(--fire);text-decoration:underline}tr.tr-row-c .tr-due{max-width:150px}tr.tr-row-c.late .tr-due{color:var(--bad);font-weight:600}
tr.tr-row-c td.tr-id a,tr.tr-row-c td.tr-id button{font:600 .76rem var(--sans);letter-spacing:1px;color:var(--muted);text-decoration:none;background:none;border:0;cursor:pointer;padding:0}
tr.tr-row-c.ds-vast td.tr-id button{color:var(--ok)}tr.tr-row-c.ds-open td.tr-id button{color:var(--fire)}tr.tr-row-c.ds-vervangen{opacity:.55}
.tr-extra-row td{padding:6px 10px 10px 30px;background:var(--cream-2)}.tr-extra-row[hidden]{display:none}.tr-extra-d textarea{width:100%}
.tr-chk{display:inline-flex;align-items:center;gap:6px;font-size:.86rem;padding:6px 8px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}
.tr-kanban .crm-card.late span{color:var(--bad)}.tr-kanban .crm-card b{font-weight:500;font-size:.84rem}
.tr-gantt-wrap{overflow-x:auto;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:8px}.tr-gantt text{font-family:var(--sans)}
.tr-todo td{white-space:normal;padding:5px 6px}.tr-todo td.tr-due,.tr-todo td.bk-small{white-space:nowrap}.tr-todo tr.tr-row-c.pr-high td:first-child{box-shadow:inset 3px 0 0 var(--fire)}.tr-todo .tr-done{width:18px;height:18px}.tr-done-btn{background:none;border:0;font-size:1.1rem;cursor:pointer;line-height:1}.tr-todo tr.late td.tr-due{color:var(--bad);font-weight:600}
.tr-stat b small{font-weight:500;font-size:.7rem;color:var(--muted)}
.bk-nav .nav-dd{position:relative}.bk-nav .nav-dd summary{list-style:none;cursor:pointer;color:var(--water);font-weight:500;padding:4px 2px;user-select:none}.bk-nav .nav-dd summary::-webkit-details-marker{display:none}.bk-nav .nav-dd summary::after{content:' \25BE';font-size:.75em;color:var(--muted)}
.bk-nav .nav-dd[open] summary{color:var(--fire)}.bk-nav .nav-dd>div{position:absolute;top:100%;left:0;z-index:30;min-width:170px;background:var(--paper);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.08);padding:6px;display:grid}.bk-nav .nav-dd>div a{padding:7px 10px;border-radius:6px;white-space:nowrap}.bk-nav .nav-dd>div a:hover{background:var(--cream-2);text-decoration:none}
@media(max-width:600px){.bk-nav .nav-dd>div{position:static;box-shadow:none;border:0;padding:0 0 0 10px;min-width:0}}
.tr-table-d .tr-c-task{width:62%}.tr-table .tr-due-t{max-width:84px}.tr-table-wrap .tr-table{min-width:0}
.crm-sub .crm-newbtn{margin-left:auto}.crm-table th a{color:var(--water);text-decoration:none}.crm-table th a.on{color:var(--fire);text-decoration:underline}
.tr-filter .bk-btn.sm{padding:6px 12px;font-size:.8rem}.tr-filter input,.tr-filter select{padding:6px 8px;font-size:.86rem}
.bk-main.bk-wide{max-width:1600px}.bk-wide .tr-table .tr-c-task{width:auto;min-width:380px}.bk-wide .tr-table .tr-c-task input{font-size:.9rem}
.tr-c-text{width:100%;resize:none;overflow:hidden;line-height:1.35;font-size:.9rem;padding:3px 6px;field-sizing:content;font-weight:500}.tr-table td.tr-c-task{white-space:normal}
.crm-table td{padding:5px 6px;white-space:nowrap}.crm-table td:nth-child(2){white-space:normal;min-width:180px}.crm-table td:first-child{white-space:nowrap}
.mail-preview{width:100%;height:520px;border:1px solid var(--line);border-radius:10px;background:#fff}
.bk-main .tr-todo td a:not(.bk-btn){color:var(--charcoal);text-decoration:none}.bk-main .tr-todo td a:not(.bk-btn):hover{text-decoration:underline}
.tr-leesmij{max-width:860px;line-height:1.55}.tr-leesmij h1{font-size:1.6rem;margin:0 0 10px}.tr-leesmij h2{font-size:1.15rem;margin:22px 0 6px}.tr-leesmij ul{margin:6px 0 10px 20px}.tr-leesmij p{margin:6px 0}
.bk-cal .d.closed{background:var(--cream-2);opacity:.7}
.bk-partner .bk-field input,.bk-partner .bk-field select,.bk-partner .bk-field textarea{width:100%;box-sizing:border-box}
.bk-kind{display:inline-flex;gap:6px;align-items:center}.bk-kind select{padding:4px 8px;border:1px solid var(--line);border-radius:999px;font:inherit;font-size:.82rem;background:var(--cream-2)}.bk-sw[hidden]{display:none}
.bk-booked{color:var(--ok);font-weight:600}
.bk-sess.booked{background:#eaf3e6;border-color:#9cc48f}.bk-sess.booked .bk-sess-h b{color:var(--ok)}
.bk-partnerbrand{display:inline-flex;align-items:center;margin-right:14px;padding-right:14px;border-right:1px solid var(--line);text-decoration:none;color:var(--charcoal)}.bk-partnerbrand img{height:64px;width:auto;max-width:170px;object-fit:contain;display:block}.bk-partner .bk-top-in{min-height:84px}
@media(max-width:600px){.bk-partnerbrand img{height:44px}.bk-partner .bk-top-in{min-height:60px}}
.bk-week{display:grid;grid-template-columns:repeat(7,minmax(130px,1fr));gap:8px;overflow-x:auto}.bk-week-day{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:8px;display:grid;gap:4px;align-content:start}.bk-week-day.today{border-color:var(--fire)}.bk-week-h{font-weight:600;text-decoration:none;color:var(--charcoal);font-size:.84rem;margin-bottom:4px}.bk-week-slot{display:block;font-size:.78rem;padding:4px 6px;border-radius:7px;background:var(--cream-2);color:var(--charcoal);text-decoration:none}.bk-week-slot.booked{background:#eaf3e6;color:var(--ok)}.bk-week-slot.closed{opacity:.5}
.bk-partner .bk-top-in{justify-content:flex-start}.bk-partner .bk-nav{margin-left:auto}

.bk-sess-h>.bk-actions{display:grid;grid-template-columns:auto 132px;justify-items:end;gap:8px}.bk-sess-h>.bk-actions .bk-ph{width:1px}
.bk-sess.booked .bk-pill.ok{background:#2f6b2a;color:#fff}
.bk-btn.sm:not(.sec){border:1px solid transparent}
.bk-datebtn{box-sizing:border-box;height:32px;padding:0 12px;border:1px solid var(--line);border-radius:999px;font:600 .86rem var(--sans);color:var(--ink);background:var(--paper);display:inline-flex;align-items:center}

/* Overzicht sessielocaties /sessies (20 okt) */
.bk-loc { padding-top: 0; overflow: hidden; }
.bk-loc-img { display: block; margin: 0 -20px 18px; }
.bk-loc-img img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.bk-loc-facts { list-style: none; padding: 0; margin: 4px 0 26px; display: grid; gap: 8px; }
.bk-loc-facts li { padding-left: 22px; position: relative; }
.bk-loc-facts li::before { content: ""; position: absolute; left: 0; top: .55em; width: 9px; height: 9px; border-radius: 50%; background: #c86a32; }
