:root{--bg:#f5f7fa;--panel:#fff;--text:#1d2939;--muted:#667085;--brand:#183b56;--accent:#2f80ed;--line:#e4e7ec;--red:#d92d20;--orange:#dc6803;--green:#027a48;--shadow:0 2px 12px #1018280d}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}button{cursor:pointer}.shell{display:flex;min-height:100vh}.side{width:245px;background:#102a3b;color:#fff;padding:22px 14px;position:fixed;inset:0 auto 0 0}.brand{font-size:22px;font-weight:800;padding:4px 10px 26px}.brand small{display:block;font-size:11px;font-weight:500;opacity:.6;margin-top:3px}.nav button{display:block;width:100%;border:0;background:transparent;color:#d8e3ea;text-align:left;padding:11px 12px;border-radius:8px;margin:2px 0}.nav button.active,.nav button:hover{background:#244b63;color:#fff}.main{margin-left:245px;width:calc(100% - 245px);padding:28px 34px}.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.title h1{margin:0 0 4px;font-size:28px}.muted{color:var(--muted)}.btn{border:1px solid var(--line);background:#fff;border-radius:8px;padding:9px 13px}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:18px;box-shadow:var(--shadow)}.metric{font-size:27px;font-weight:800;margin-top:8px}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.project-card{cursor:pointer}.project-card:hover{border-color:#b8c7d3}.badge{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:700}.green{background:#ecfdf3;color:var(--green)}.orange{background:#fff6ed;color:var(--orange)}.red{background:#fef3f2;color:var(--red)}.blue{background:#eff8ff;color:#175cd3}.tabs{display:flex;gap:5px;border-bottom:1px solid var(--line);margin-bottom:18px}.tab{border:0;background:none;padding:10px 13px;color:var(--muted);border-bottom:2px solid transparent}.tab.active{color:var(--brand);border-bottom-color:var(--accent);font-weight:700}.row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid var(--line)}.row:last-child{border-bottom:0}.search{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;margin-bottom:12px}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:10px;border-bottom:1px solid var(--line);vertical-align:top}.table th{font-size:12px;color:var(--muted)}.modal{position:fixed;inset:0;background:#10182880;display:flex;align-items:center;justify-content:center;padding:20px}.modalbox{background:#fff;border-radius:14px;width:min(600px,100%);padding:22px}.field{display:grid;gap:6px;margin:12px 0}.field input,.field select,.field textarea{padding:10px;border:1px solid var(--line);border-radius:8px}.actions{display:flex;gap:8px;justify-content:flex-end;margin-top:18px}.empty{padding:40px;text-align:center;color:var(--muted)}@media(max-width:900px){.side{width:72px}.brand{font-size:0}.brand:before{content:'G';font-size:22px}.nav button{font-size:0;text-align:center}.nav button:before{content:'•';font-size:20px}.main{margin-left:72px;width:calc(100% - 72px);padding:20px}.grid{grid-template-columns:repeat(2,1fr)}}
.side-note{position:absolute;bottom:20px;left:24px;font-size:12px;color:#9db0bd;line-height:1.6}.side-note span{color:#d8e3ea}.btn.small{padding:6px 9px;font-size:12px;text-decoration:none;display:inline-block}.table select{padding:6px;border:1px solid var(--line);border-radius:7px;background:#fff}.field textarea{min-height:90px;resize:vertical}@media(max-width:700px){.grid{grid-template-columns:1fr}.top{align-items:flex-start;gap:12px}.top .btn{white-space:nowrap}.table{font-size:12px}.table th,.table td{padding:7px}.main{padding:16px}.project-grid{grid-template-columns:1fr}.modalbox{max-height:90vh;overflow:auto}}

.stabu-group,.stabu-picker-group{border:1px solid #e5e7eb;border-radius:12px;margin:10px 0;background:#fff;overflow:hidden}
.stabu-group summary,.stabu-picker-group summary{cursor:pointer;list-style:none;padding:13px 15px;display:flex;align-items:center;gap:12px;font-weight:600;background:#f8fafc}
.stabu-group summary::-webkit-details-marker,.stabu-picker-group summary::-webkit-details-marker{display:none}
.stabu-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;min-width:48px}
.stabu-name{flex:1}
.stabu-count{background:#e2e8f0;border-radius:999px;padding:2px 9px;font-size:12px;color:#475569}
.table.compact{margin:0}
.table.compact td,.table.compact th{padding:9px 10px}
.work-summary{display:flex;gap:22px;padding:4px 0 14px;color:#475569}
.stabu-picker-group{background:#fff}
.picker-items{padding:6px 10px 10px}
.checkrow{display:flex;align-items:center;gap:10px;padding:9px 8px;border-radius:8px}
.checkrow:hover{background:#f8fafc}
.checkrow input{width:17px;height:17px}
.checkrow span{flex:1}
.checkrow em{font-size:12px;color:#94a3b8;font-style:normal}

.action-card{display:flex;align-items:center;gap:12px;padding:13px 10px;border-bottom:1px solid #edf0f3;cursor:pointer;border-radius:8px}
.action-card:hover{background:#f8fafc}
.action-card.overdue{border-left:3px solid #ef4444}
.action-main{flex:1;min-width:0}.action-title{font-weight:650;margin-bottom:4px}
.badge.blue{background:#dbeafe;color:#1d4ed8}.badge.purple{background:#ede9fe;color:#6d28d9}.badge.red{background:#fee2e2;color:#b91c1c}.badge.gray{background:#e5e7eb;color:#4b5563}
.priority{font-size:11px;border-radius:999px;padding:3px 8px;background:#f1f5f9;color:#475569}
.priority.hoog,.priority.urgent{background:#fee2e2;color:#b91c1c}.priority.urgent{font-weight:700}
.history{border:1px solid #e5e7eb;border-radius:8px;max-height:170px;overflow:auto}.history-item{padding:8px 10px;border-bottom:1px solid #eef2f7}
.history-item:last-child{border-bottom:0}

.link-btn{border:0;background:none;padding:0;color:#2563eb;cursor:pointer;font:inherit}
.document-viewer{display:block;width:100%;height:70vh;border:1px solid #dbe2ea;border-radius:10px;background:#f3f4f6;margin-top:14px}
.viewer-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.viewer-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}
.viewer-unsupported{padding:70px 20px;text-align:center;border:1px dashed #cbd5e1;border-radius:10px;margin-top:14px}
.version-list{border:1px solid #e5e7eb;border-radius:10px;overflow:hidden}.version-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px;border-bottom:1px solid #edf0f3}.version-row:last-child{border-bottom:0}
.rejection-note{margin-top:6px;padding:7px 9px;border-radius:7px;background:#fee2e2;color:#991b1b;font-size:13px}

.viewer-head-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.action-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}

.document-viewer{height:72vh;min-height:420px}.document-viewer.viewer-small{height:45vh}.document-viewer.viewer-normal{height:72vh}.document-viewer.viewer-large{height:88vh}
.viewer-head-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.modal-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.modal-head h2{margin:0}
.status-select{min-width:145px;border:0;border-radius:999px;padding:6px 10px;font-weight:600}.status-select.gray{background:#e5e7eb;color:#4b5563}.status-select.orange{background:#ffedd5;color:#c2410c}.status-select.green{background:#dcfce7;color:#166534}.status-select.red{background:#fee2e2;color:#b91c1c}.status-select.blue{background:#dbeafe;color:#1d4ed8}
.team-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 4px;border-bottom:1px solid #edf0f3}.team-row:last-child{border-bottom:0}.btn.danger{color:#b91c1c}
.team-action-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.user-action-summary{padding:14px;border:1px solid #e5e7eb;border-radius:10px;cursor:pointer}.user-action-summary:hover{background:#f8fafc}.user-action-summary strong{font-size:24px;display:inline-block;margin-top:8px}

/* PDF viewer: responsive in both directions */
.modalbox:has(.viewer-modal){width:min(96vw,1500px);max-width:none;height:auto}
.viewer-modal{width:100%}
.document-viewer{display:block;width:100%;height:72vh;min-height:420px;max-height:88vh;box-sizing:border-box}
.document-viewer.viewer-small{height:45vh}.document-viewer.viewer-normal{height:72vh}.document-viewer.viewer-large{height:88vh}
@media (max-width:900px){.modalbox:has(.viewer-modal){width:98vw}.document-viewer{height:65vh;min-height:320px}}

.basis-doc{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 4px;border-bottom:1px solid #edf0f3}.basis-doc:last-child{border-bottom:0}

.modal{overflow:auto}.modalbox{max-height:calc(100vh - 40px);overflow:auto}.stabu-picker-group{margin:6px 0}.stabu-picker-group .picker-items{max-height:220px;overflow-y:auto;overflow-x:hidden;border:1px solid var(--line);border-radius:8px;margin:4px 0 8px}.stabu-picker-group .checkrow{display:flex;gap:9px;align-items:flex-start;padding:8px 10px;border-bottom:1px solid #edf0f3}.stabu-picker-group .checkrow:last-child{border-bottom:0}.budget-actions{display:flex;justify-content:flex-end;margin-top:10px}
.archived-list{max-height:65vh;overflow:auto}

.planning-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.planning-toolbar select{padding:9px;border:1px solid var(--line);border-radius:8px;background:#fff}.planning-week{margin-left:auto;font-weight:600}.planning-card{padding:0;overflow:hidden}.planning-scroll{overflow:auto}.planning-table{width:100%;min-width:1000px;border-collapse:separate;border-spacing:0}.planning-table th,.planning-table td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px 10px;text-align:center}.planning-table th{background:#f8fafc;position:sticky;top:0;z-index:2}.planning-table th span{font-weight:400;color:var(--muted)}.planning-table .person-col{position:sticky;left:0;background:#fff;text-align:left;z-index:3;min-width:190px}.planning-table th.person-col{z-index:4;background:#f8fafc}.plan-cell{height:48px;min-width:145px;cursor:pointer;font-size:13px;transition:filter .12s}.plan-cell:hover{filter:brightness(.95)}.plan-cell small{display:block;margin-top:3px;opacity:.8}.plan-empty{background:#f8fafc;color:#9ca3af}.plan-project{background:#dcfce7;color:#166534}.plan-leave{background:#dbeafe;color:#1d4ed8}.plan-free{background:#dbeafe;color:#1d4ed8}.plan-flex{background:#fef08a;color:#713f12}.plan-sick{background:#fee2e2;color:#b91c1c}.plan-support{background:#cffafe;color:#155e75}.plan-other{background:#e5e7eb;color:#374151}.planning-legend{display:flex;gap:18px;flex-wrap:wrap;padding:14px}.planning-legend span{display:flex;align-items:center;gap:6px;font-size:13px}.planning-legend i{width:18px;height:12px;border-radius:3px;display:inline-block}.planning-summary{margin-top:14px}

.activity-deadline{min-width:145px;padding:7px 8px;border:1px solid var(--line);border-radius:7px;background:#fff}.table.compact select{max-width:190px}

.planning-table .week-header{background:#eef2f7;font-size:14px;letter-spacing:.2px}.planning-table .week-spacer{width:18px;min-width:18px;padding:0;background:#fff;border-right:8px solid #f4f6f8}.planning-table td.client-green{background:#bbf7d0;color:#166534}.planning-table td.client-blue{background:#bfdbfe;color:#1d4ed8}.planning-table td.client-red{background:#fecaca;color:#b91c1c}.planning-table td.client-purple{background:#ddd6fe;color:#5b21b6}.planning-legend i.client-green{background:#bbf7d0}.planning-legend i.client-blue{background:#bfdbfe}.planning-legend i.client-red{background:#fecaca}.planning-legend i.client-purple{background:#ddd6fe}

.badge{display:inline-block;font-size:12px;padding:4px 8px;border-radius:999px;background:#e5e7eb;color:#374151;vertical-align:middle}.tab-btn{border:0;background:transparent;padding:9px 12px;cursor:pointer}.tab-btn.active{border-bottom:2px solid #111827;font-weight:700}

.modal{z-index:10000}.modalbox{position:relative;z-index:10001}.modalbox .top,.modalbox .card,.modalbox table{position:relative;z-index:auto}.quick-range{display:flex;gap:6px;margin:-4px 0 12px}.termijn-section{border:1px solid var(--line);border-radius:10px;padding:14px;margin:16px 0;background:#fafbfc}.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.termijn-head,.termijn-row{display:grid;grid-template-columns:45px minmax(150px,1.5fr) 90px minmax(140px,1fr) 140px 34px;gap:7px;align-items:center}.termijn-head{font-size:11px;color:var(--muted);padding:0 4px 5px}.termijn-row{padding:5px 0;border-top:1px solid #edf0f3}.termijn-row input{min-width:0;padding:8px!important}.termijn-help{font-size:12px;margin-top:8px}.termijnen-card{overflow:hidden}.termijnen-overzicht{margin-top:8px}.planning-card{overflow:hidden}.planning-scroll{overflow-x:auto}.planning-table{border-collapse:separate;border-spacing:0;min-width:1200px}.planning-table .week-header{border-left:4px solid #d0d5dd;border-right:4px solid #d0d5dd;border-top:1px solid var(--line);background:#eef2f7}.planning-table thead tr:nth-child(2) th{border-bottom:3px solid #d0d5dd}.planning-table .week-header + .week-header{border-left:12px solid var(--bg)}.planning-table .week-spacer{width:22px;min-width:22px;background:var(--bg);border:0;border-left:8px solid var(--bg);border-right:8px solid var(--bg)}.planning-table td.plan-cell{border-bottom:1px solid var(--line);min-width:110px;height:58px}.planning-table td.client-green,.planning-table td.client-blue,.planning-table td.client-red,.planning-table td.client-purple{border-left:1px solid #fff;border-right:1px solid #fff}
.permission-note{background:#f4f6f8;border:1px solid var(--line);border-radius:10px;padding:12px;margin-bottom:14px;font-size:13px}.permission-list{display:flex;flex-direction:column;gap:12px;max-height:62vh;overflow:auto}.permission-user{border:1px solid var(--line);border-radius:10px;padding:12px}.permission-user-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.permission-user-head>div{margin-right:auto}.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.permission-grid label{display:grid;grid-template-columns:1fr 145px;gap:8px;align-items:center;background:#f8fafc;border-radius:8px;padding:7px 9px;font-size:13px}.permission-grid select{min-width:0}@media(max-width:900px){.permission-grid{grid-template-columns:1fr}}.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.contact-card{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.contact-main{min-width:0}.contact-note{margin-top:8px;padding:8px;background:#f8fafc;border-radius:7px;font-size:12px}.contact-actions{display:flex;gap:6px;align-items:flex-start}@media(max-width:900px){.contact-grid{grid-template-columns:1fr}}.meeting-list{display:flex;flex-direction:column;gap:14px}.meeting-card{overflow:hidden}.meeting-head{display:flex;justify-content:space-between;gap:14px}.meeting-actions{display:flex;gap:6px;align-items:flex-start}.meeting-section{margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}.meeting-text{white-space:pre-wrap;margin-top:7px;line-height:1.5}.participant-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:180px;overflow:auto;padding:8px;border:1px solid var(--line);border-radius:8px}.participant-list label{padding:5px}@media(max-width:900px){.participant-list{grid-template-columns:1fr}.meeting-head{flex-direction:column}}
.agenda-edit-row{border:1px solid var(--line);border-radius:10px;padding:10px;margin:8px 0;background:#fff}.agenda-row-head{display:grid;grid-template-columns:34px 1fr auto;gap:8px;align-items:center}.agenda-number{font-weight:700;text-align:center}.agenda-fields{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:7px;margin-top:7px}.agenda-edit-row textarea{width:100%;min-height:65px;margin-top:7px}.agenda-edit-row>input{width:100%;margin-top:7px}.agenda-edit-row select,.agenda-edit-row input,.agenda-edit-row textarea{box-sizing:border-box}.meeting-template-bar{display:flex;gap:10px;align-items:center;margin:16px 0 8px;padding:10px;border:1px solid var(--line);border-radius:9px;background:#f7f8fa}.agenda-summary{margin-top:8px}.agenda-summary-row{display:grid;grid-template-columns:34px 1fr;gap:8px;padding:9px 0;border-top:1px solid var(--line)}.agenda-no{font-weight:700}.decision-line{margin-top:6px;padding:6px 8px;background:#eef8f1;border-left:3px solid #16a34a}.action-line{margin-top:6px;padding:6px 8px;background:#fff8e7;border-left:3px solid #f59e0b}.risk-line{margin-top:6px;padding:6px 8px;background:#fff0f0;border-left:3px solid #dc2626}@media(max-width:900px){.agenda-fields{grid-template-columns:1fr 1fr}.meeting-template-bar{flex-wrap:wrap}}

.meeting-modal{width:min(1180px,96vw);max-width:1180px}.meeting-meta-grid{display:grid;grid-template-columns:2fr 1fr 1.3fr 1.5fr;gap:10px}.meeting-chapter{border:1px solid var(--line);border-radius:12px;margin:12px 0;background:#f8fafc;padding:12px}.chapter-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.chapter-head>div{display:grid;grid-template-columns:38px 1fr;gap:8px;align-items:center;flex:1}.chapter-head input{font-size:16px;font-weight:700}.chapter-number{font-weight:800;text-align:center}.agenda-point{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px;margin-top:10px}.point-head{display:grid;grid-template-columns:85px 1fr auto;gap:8px;align-items:center}.point-label{font-weight:700;font-size:12px;text-transform:uppercase}.agenda-point textarea{width:100%;min-height:90px;margin-top:8px;box-sizing:border-box}.point-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:8px}.agenda-point>input{width:100%;box-sizing:border-box;margin-top:8px}.action-create-box{display:grid;grid-template-columns:1.1fr 2fr 1.5fr;gap:8px;align-items:center;margin-top:8px;padding:9px;background:#fff8e7;border-radius:8px}.action-create-box label{font-size:13px}.agenda-chapter-summary{border-top:1px solid var(--line);padding:9px 0}.agenda-summary-point{padding:5px 0 5px 34px}.agenda-summary-point .action-line,.agenda-summary-point .decision-line{display:block;margin-top:4px}.modal{max-width:95vw}.modal-body{max-width:95vw}@media(max-width:900px){.meeting-meta-grid{grid-template-columns:1fr 1fr}.point-head{grid-template-columns:70px 1fr}.point-head .danger{grid-column:2}.action-create-box{grid-template-columns:1fr}.point-grid{grid-template-columns:1fr}}

.meeting-index{overflow:auto}.meeting-table{width:100%;min-width:900px}.meeting-row{cursor:pointer}.meeting-row:hover{background:#f6f8fa}.meeting-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px}.version-current{display:flex;justify-content:space-between;gap:10px;margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}.version-list{display:flex;flex-direction:column;gap:6px}.version-item{display:flex;justify-content:space-between;gap:8px;text-align:left;border:1px solid var(--line);background:white;border-radius:8px;padding:9px 10px;cursor:pointer}.version-item.selected{border-color:#2563eb;background:#eff6ff}.detail-chapter{border-top:1px solid var(--line);padding:16px 0}.detail-chapter h2{margin:0 0 10px}.detail-point{border:1px solid var(--line);border-radius:9px;padding:12px;margin:9px 0}.detail-point h3{margin:0 0 5px}.detail-block{margin-top:10px;padding:8px 10px;border-left:3px solid #94a3b8;background:#f8fafc}.detail-block.decision{border-left-color:#16a34a}.detail-block.action{border-left-color:#f59e0b}.detail-block.risk{border-left-color:#dc2626}@media(max-width:1000px){.meeting-detail-grid{grid-template-columns:1fr}}

.modalbox:has(.meeting-modal){width:min(96vw,1500px);max-width:none;padding:24px;box-sizing:border-box}
.meeting-modal{width:100%;max-height:calc(100vh - 88px);overflow-y:auto;overflow-x:hidden;box-sizing:border-box}
.meeting-modal .chapter-editor{min-width:0}
@media(max-width:900px){.modalbox:has(.meeting-modal){width:98vw;padding:16px}.meeting-modal{max-height:calc(100vh - 48px)}}

.settings-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);gap:16px}.settings-logo-preview{display:block;max-width:220px;max-height:90px;object-fit:contain;margin:10px 0;border:1px solid var(--line);padding:8px;border-radius:8px}.setting-option{padding:12px 0;border-bottom:1px solid var(--line);display:grid;gap:4px}.setting-option:last-child{border-bottom:0}.brand-logo{max-width:150px;max-height:38px;object-fit:contain;display:block;margin-bottom:4px}.theme-dark{background:#111827;color:#e5e7eb}.theme-dark .card,.theme-dark .modalbox,.theme-dark input,.theme-dark select,.theme-dark textarea{background:#1f2937;color:#e5e7eb;border-color:#374151}.theme-dark .muted{color:#9ca3af}.theme-dark .meeting-row:hover{background:#243041}@media(max-width:900px){.settings-grid{grid-template-columns:1fr}}

.meeting-chapter .points{display:block;min-height:24px}.meeting-chapter{overflow:visible}.meeting-chapter .agenda-point{display:block}

.attendance-list{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 10px}.attendance-list span{padding:5px 9px;border-radius:999px;font-size:13px}.attendance-list.present span{background:#dcfce7;border:1px solid #86efac}.attendance-list.absent span{background:#fee2e2;border:1px solid #fca5a5}

.add-agenda-point{position:relative;z-index:5;cursor:pointer}
.profile-switch{position:absolute;bottom:72px;left:22px;right:18px;display:grid;gap:5px;color:#d8e3ea;font-size:12px}.profile-switch select{width:100%;padding:7px;border-radius:7px;border:0;color:#1d2939}.profile-switch small{color:#9db0bd}.p5-work-grid{grid-template-columns:1fr 1fr;margin-top:16px}.p5-permissions{display:flex;flex-wrap:wrap;gap:8px}.p5-permissions label{border:1px solid var(--line);padding:7px 9px;border-radius:7px;background:#f8fafc;font-size:13px}.report-summary .grid>div{padding:10px;border-right:1px solid var(--line)}.report-summary .grid>div:last-child{border:0}@media(max-width:900px){.profile-switch{display:none}.p5-work-grid{grid-template-columns:1fr}.report-summary .grid>div{border-right:0;border-bottom:1px solid var(--line)}}
.form-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-two .field{min-width:0}.report-users{display:flex;flex-wrap:wrap;gap:8px}.report-user{padding:7px 9px;border:1px solid var(--line);border-radius:7px;background:#f8fafc;font-size:13px}.report-row{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--line)}.report-row:last-child{border-bottom:0}.report-row>div:first-child{display:grid;gap:5px}.execution-metrics{margin-bottom:16px}.execution-range{display:flex;align-items:center;justify-content:center;gap:12px;margin:15px 0}.execution-table-wrap{overflow:auto}.execution-table{min-width:900px}.execution-table td{vertical-align:middle}@media(max-width:700px){.form-two{grid-template-columns:1fr}.report-row{flex-direction:column}.execution-range{align-items:flex-start;flex-wrap:wrap}}
.vehicle-card{overflow:hidden}.vehicle-table-wrap{overflow:auto}.vehicle-table{min-width:940px}.vehicle-table td{vertical-align:middle}.vehicle-apk-detail{font-size:12px;margin-top:5px}.vehicle-actions{white-space:nowrap}.gray{background:#f2f4f7;color:#475467}@media(max-width:700px){.vehicle-actions{white-space:normal}}
.meeting-chapter .points{min-height:0}

/* 0.19.1: lila verloopthema — geïnspireerd op zachte afgeronde UI-elementen */
.theme-previews{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0 18px}.theme-preview{display:grid;grid-template-columns:42px 1fr;column-gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:12px;background:#fff;text-align:left;cursor:pointer}.theme-preview span{grid-row:span 2;width:40px;height:40px;border-radius:11px;background:linear-gradient(145deg,#f4f7fb,#dfe8f3);border:1px solid rgba(60,60,67,.1)}.theme-preview.gradient span{background:linear-gradient(135deg,#b26cff,#5940df)}.theme-preview b{font-size:13px}.theme-preview small{font-size:11px;color:var(--muted)}.theme-preview.selected{outline:2px solid #7a4df0;outline-offset:1px}@media(max-width:620px){.theme-previews{grid-template-columns:1fr}}
.theme-gradient{--bg:#ececf9;--panel:rgba(255,255,255,.9);--text:#33333b;--muted:#777587;--brand:#5d3dc9;--accent:#7a4df0;--line:rgba(104,83,170,.13);--shadow:0 16px 34px rgba(76,58,139,.10);background:radial-gradient(circle at 16% 7%,rgba(213,193,255,.68),transparent 29%),radial-gradient(circle at 92% 18%,rgba(198,214,255,.55),transparent 27%),linear-gradient(135deg,#eff0fb 0%,#e7e8f7 48%,#f2effb 100%);color:var(--text)}.theme-gradient .side{background:linear-gradient(170deg,#6e45d8 0%,#5840c6 50%,#3e319f 100%);box-shadow:16px 0 38px rgba(74,54,143,.2)}.theme-gradient .brand{color:#fff}.theme-gradient .nav button{color:rgba(255,255,255,.88)}.theme-gradient .nav button:hover{background:rgba(255,255,255,.15)}.theme-gradient .nav button.active{background:rgba(255,255,255,.95);color:#6240d3;box-shadow:0 8px 18px rgba(42,25,112,.25)}.theme-gradient .profile-switch{color:#eeeaff}.theme-gradient .profile-switch small,.theme-gradient .side-note{color:#ddd8ff}.theme-gradient .card{background:rgba(255,255,255,.9);border-color:rgba(110,89,176,.11);box-shadow:0 13px 30px rgba(76,58,139,.09)}.theme-gradient .btn.primary,.theme-gradient .project-nav-group button.active{background:linear-gradient(100deg,#a35af5 0%,#7543e4 52%,#5140d0 100%);border-color:#7543e4;box-shadow:0 7px 17px rgba(117,67,228,.24)}.theme-gradient .btn:not(.primary){background:rgba(255,255,255,.83);border-color:rgba(104,83,170,.14)}.theme-gradient .p9-overline{color:#7543e4}.theme-gradient .field input,.theme-gradient .field select,.theme-gradient .field textarea,.theme-gradient .search{background:#f6f5fc;border-color:rgba(104,83,170,.1)}.theme-gradient .tabs{background:rgba(131,101,203,.12)}.theme-gradient .tab.active,.theme-gradient .office-floor-tabs button.active{color:#6240d3}.theme-gradient .project-navigation,.theme-gradient .office-toolbar,.theme-gradient .office-summary{background:rgba(255,255,255,.73)}.theme-gradient .office-room{border-color:rgba(113,76,205,.42);background:rgba(239,232,255,.82)}.theme-gradient .office-desk.occupied{background:#f6f2ff;border-left-color:#7543e4}.theme-gradient .office-desk.occupied .office-desk-status{color:#7543e4}.theme-gradient .office-desk:hover,.theme-gradient .office-desk.focused{outline-color:rgba(163,90,245,.4)}.theme-gradient .p12-week{box-shadow:0 10px 24px rgba(76,58,139,.15)}.theme-gradient .p12-cell.plan-project.client-green{background:#8b64e9;color:#fff}.theme-gradient .p12-cell.plan-project.client-blue{background:#a65bed;color:#fff}.theme-gradient .p12-cell.plan-project.client-red{background:#d756b6;color:#fff}.theme-gradient .p12-cell.plan-project.client-purple{background:#7661cc;color:#fff}

/* 0.19.0: kantoorindeling — rustige direct leesbare plattegrond, editor apart */
.office-title{align-items:flex-end}.office-summary,.office-toolbar,.office-editor-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0}.office-summary{padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.7);border:1px solid var(--line);font-size:13px}.office-summary span{display:inline-flex;align-items:center;gap:6px}.office-summary b{font-size:17px}.office-legend{width:11px;height:11px;border-radius:50%;display:inline-block}.office-legend.occupied{background:#16875d}.office-legend.free{background:#9ca3af}.office-legend.flex{background:#d28b08}.office-floor-tabs{display:flex;gap:4px;background:rgba(118,118,128,.12);padding:4px;border-radius:11px;width:max-content;max-width:100%;overflow:auto}.office-floor-tabs button{border:0;border-radius:8px;background:transparent;padding:8px 13px;cursor:pointer;white-space:nowrap}.office-floor-tabs button.active{background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.1);font-weight:700}.office-toolbar{padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.68)}.office-toolbar .search{margin:0;flex:1;min-width:280px;border:0;background:transparent}.office-zoom{margin-left:auto;display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted)}.office-view-grid,.office-editor{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:16px;align-items:start}.office-map-scroll{overflow:auto;border:1px solid var(--line);border-radius:18px;background:repeating-linear-gradient(0deg,#f7f9fc 0,#f7f9fc 24px,#eef2f7 25px),repeating-linear-gradient(90deg,transparent 0,transparent 24px,#eef2f7 25px);padding:18px;min-height:430px}.office-canvas{position:relative;transform:scale(var(--office-zoom,1));transform-origin:top left;background-color:rgba(248,250,252,.74);background-size:cover;background-position:center;box-shadow:0 5px 15px rgba(15,23,42,.08);overflow:hidden}.office-room{position:absolute;box-sizing:border-box;border:2px solid rgba(28,68,105,.45);border-radius:12px;background:rgba(231,241,250,.86);padding:38px 12px 12px}.office-room>header{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;gap:8px;padding:10px 12px;font-size:12px;background:rgba(255,255,255,.74);border-radius:10px 10px 0 0}.office-room>header span{color:var(--muted);font-size:11px}.office-desk{position:absolute;width:170px;min-height:66px;border:1px solid rgba(60,60,67,.16);border-radius:10px;padding:7px 9px;background:#fff;text-align:left;box-shadow:0 3px 10px rgba(15,23,42,.1);cursor:pointer;overflow:hidden}.office-desk:hover,.office-desk.focused{outline:3px solid rgba(0,122,255,.35);outline-offset:2px}.office-desk b,.office-desk small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.office-desk b{font-size:12px;margin:4px 0 2px}.office-desk small{font-size:10px;color:#64748b}.office-desk-status{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.office-desk.occupied{border-left:5px solid #16875d;background:#f2fbf7}.office-desk.occupied .office-desk-status{color:#16875d}.office-desk.free{border-left:5px solid #9ca3af;background:#fff}.office-desk.free .office-desk-status{color:#667085}.office-desk.flex{border-left:5px solid #d28b08;background:#fff8e8}.office-desk.flex .office-desk-status{color:#a96100}.office-detail,.office-staff{position:sticky;top:18px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.82);box-shadow:var(--shadow);padding:18px}.office-detail.empty{display:grid;gap:7px;color:var(--muted);font-size:13px}.office-detail h2,.office-staff h2{font-size:20px;margin:5px 0}.office-detail-row{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line);font-size:13px}.office-detail-row span{color:var(--muted)}.office-edit-actions{display:flex;gap:8px;flex-wrap:wrap}.office-editor-tools{padding:10px 0}.office-dirty{color:#a15c00;font-size:13px;font-weight:700}.office-canvas.edit .office-room{cursor:move;border-style:dashed}.office-canvas.edit .office-desk{cursor:move}.office-staff-person{display:grid;gap:2px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.office-staff-person small{color:var(--muted)}@media(max-width:950px){.office-view-grid,.office-editor{grid-template-columns:1fr}.office-detail,.office-staff{position:static}.office-toolbar .search{min-width:180px}}@media(max-width:620px){.office-title{align-items:flex-start;flex-direction:column}.office-toolbar{align-items:stretch;flex-direction:column}.office-toolbar .search{min-width:0}.office-zoom{margin-left:0}.office-map-scroll{padding:10px}.office-canvas{transform:none!important}.office-desk{width:135px}.office-summary{gap:8px}}

/* 0.18.15: vaste projectwerkvolgorde en projectspecifieke planningen */
.project-workspace{display:grid;grid-template-columns:218px minmax(0,1fr);gap:20px;align-items:start}.project-navigation{position:sticky;top:18px;border:1px solid var(--line);border-radius:12px;background:#f8fafc;padding:10px}.project-nav-group{padding:9px 0;border-bottom:1px solid var(--line)}.project-nav-group:last-child{border-bottom:0}.project-nav-group h3{margin:0 8px 6px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.project-nav-group button{display:block;width:100%;border:0;border-radius:7px;background:transparent;padding:8px;text-align:left;color:var(--text);cursor:pointer;font:inherit;font-size:13px}.project-nav-group button:hover{background:#eaf0f5}.project-nav-group button.active{background:#173f59;color:#fff;font-weight:700}.project-content{min-width:0}.p6-planning-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}.p6-plan-card{margin:0}.p6-plan-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.p6-plan-head h2{margin:10px 0 5px;font-size:18px}.p6-latest{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:20px;padding-top:14px;border-top:1px solid var(--line)}.p6-plan-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.p6-version-note{margin-top:10px;font-size:12px;color:var(--muted)}.p6-planning-note{margin-top:16px;display:grid;gap:5px}@media(max-width:1000px){.project-workspace{grid-template-columns:1fr}.project-navigation{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.project-nav-group{border-bottom:0}.p6-planning-grid{grid-template-columns:1fr}}@media(max-width:620px){.project-navigation{grid-template-columns:1fr}.p6-plan-head,.p6-latest{flex-direction:column}.p6-plan-actions{justify-content:flex-start}}

/* 0.18.16: interne en externe communicatie */
.p7-message-tabs{display:flex;gap:5px;border-bottom:1px solid var(--line);margin-bottom:0}.p7-message-list{border:1px solid var(--line);border-top:0;border-radius:0 0 11px 11px;padding:0 16px;margin-bottom:16px}.p7-message{padding:15px 0;border-bottom:1px solid var(--line)}.p7-message:last-child{border-bottom:0}.p7-message.external{border-left:3px solid #2563eb;padding-left:12px}.p7-message.internal{border-left:3px solid #7c3aed;padding-left:12px}.p7-message-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.p7-message-head .badge{margin-right:5px}.p7-message-meta,.p7-reply-ref{margin-top:7px;font-size:12px;color:var(--muted)}.p7-reply-ref{padding:7px 9px;border-radius:7px;background:#f3f6f8;border-left:3px solid #cbd5e1}.p7-message-text{white-space:normal;line-height:1.5;margin:10px 0}.p7-message-actions{margin-top:10px}.p7-composer{border:1px solid var(--line);border-radius:11px;padding:16px;background:#f8fafc}.p7-compose-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.p7-compose-head h3{margin:0 0 4px}.p7-composer textarea{min-height:105px}.guest-warning{padding:10px;border-radius:8px;background:#fff8e7;color:#854d0e;font-size:13px}.guest-body{margin:0;background:#eef3f6;color:#172433;font-family:Arial,sans-serif}.guest-app{max-width:920px;margin:0 auto;padding:28px 16px}.guest-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:18px}.guest-brand{font-weight:800;letter-spacing:.04em;color:#173f59}.guest-brand span{font-size:11px;font-weight:700;color:#64748b;margin-left:6px}.guest-head h1{margin:8px 0 4px;font-size:26px}.guest-contact{padding:9px 12px;background:#dbeafe;color:#1d4ed8;border-radius:999px;font-size:14px}.guest-card{background:#fff;border:1px solid #dbe2ea;border-radius:14px;padding:22px;box-shadow:0 5px 18px rgba(16,24,40,.05)}.guest-card h2{margin:0 0 5px}.guest-thread{margin-top:18px}.guest-message{padding:14px;margin:10px 0;border-radius:10px;background:#eef5fb;border-left:4px solid #2563eb}.guest-message.incoming{background:#ecfdf3;border-left-color:#16a34a}.guest-message b{margin-right:8px}.guest-label{font-size:11px;padding:3px 6px;border-radius:99px;background:#dbeafe;color:#1d4ed8}.guest-message.incoming .guest-label{background:#dcfce7;color:#166534}.guest-text{line-height:1.5;margin:8px 0}.guest-message small{color:#64748b}.guest-compose{margin-top:20px;border-top:1px solid #e4e7ec;padding-top:16px;display:grid;gap:8px}.guest-compose textarea{min-height:100px;resize:vertical;padding:10px;border:1px solid #cbd5e1;border-radius:8px;font:inherit}.guest-security{font-size:12px;color:#64748b;margin:16px 4px}.guest-loading{padding:40px;text-align:center;color:#64748b}@media(max-width:700px){.p7-message-head,.p7-compose-head,.guest-head{flex-direction:column}.guest-contact{align-self:flex-start}}

/* 0.18.17: onderaannemers en betrokkenen */
.p8-sub-filters{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.p8-sub-filters .search{margin:0;flex:1;min-width:240px}.p8-sub-filters select{padding:9px;border:1px solid var(--line);border-radius:8px;background:#fff}.p8-sub-table{overflow:auto}.p8-sub-table table{min-width:900px}.p8-rank{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#173f59;color:#fff;font-weight:800}@media(max-width:700px){.p8-sub-filters{align-items:stretch}.p8-sub-filters .search{min-width:0}}

/* 0.18.18: Apple-achtig licht thema */
:root{--bg:#f5f5f7;--panel:rgba(255,255,255,.88);--text:#1d1d1f;--muted:#6e6e73;--brand:#1d1d1f;--accent:#007aff;--line:rgba(60,60,67,.16);--shadow:0 12px 30px rgba(0,0,0,.07)}body{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",Inter,Segoe UI,sans-serif;letter-spacing:-.01em;background:linear-gradient(145deg,#f8f9fb 0%,#f2f4f8 60%,#edf1f6 100%)}.side{width:264px;padding:24px 15px;background:linear-gradient(180deg,#1b2430,#111820);box-shadow:18px 0 40px rgba(15,23,42,.13)}.brand{font-size:23px;letter-spacing:-.04em;padding:8px 13px 29px}.nav button{border-radius:11px;padding:10px 13px;transition:background .18s ease,transform .18s ease}.nav button:hover{transform:translateX(2px);background:rgba(255,255,255,.1)}.nav button.active{background:linear-gradient(135deg,#087cff,#4aa7ff);box-shadow:0 7px 16px rgba(0,122,255,.3)}.main{margin-left:264px;width:calc(100% - 264px);padding:34px 42px}.title h1,.top h1{font-size:32px;letter-spacing:-.045em}.btn{border-radius:10px;padding:9px 14px;background:rgba(255,255,255,.86);box-shadow:0 1px 2px rgba(0,0,0,.03);transition:transform .15s ease,box-shadow .15s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 5px 14px rgba(15,23,42,.1)}.btn.primary{background:linear-gradient(135deg,#007aff,#0a8cff);border-color:#007aff}.card{border-radius:18px;border-color:rgba(60,60,67,.1);background:var(--panel);backdrop-filter:blur(16px);box-shadow:var(--shadow)}.grid{gap:17px}.metric{font-size:31px;letter-spacing:-.045em}.project-card{transition:transform .18s ease,box-shadow .18s ease}.project-card:hover{transform:translateY(-3px);box-shadow:0 18px 35px rgba(15,23,42,.1);border-color:rgba(0,122,255,.35)}.tabs{gap:3px;border:0;background:rgba(118,118,128,.12);padding:3px;border-radius:10px;width:max-content;max-width:100%;overflow:auto}.tab{border:0;border-radius:8px;padding:8px 12px;white-space:nowrap}.tab.active{background:#fff;color:#1d1d1f;box-shadow:0 1px 4px rgba(0,0,0,.1)}.field input,.field select,.field textarea,.search{border-radius:10px;border-color:rgba(60,60,67,.18);background:rgba(255,255,255,.88)}.modal{backdrop-filter:blur(6px);background:rgba(16,24,40,.38)}.modalbox{border-radius:20px;box-shadow:0 24px 70px rgba(0,0,0,.22)}.project-navigation{border:0;background:rgba(255,255,255,.7);box-shadow:var(--shadow);border-radius:16px}.project-nav-group button.active{background:linear-gradient(135deg,#007aff,#3999ff)}.side-note{left:27px}.p9-page-title{align-items:flex-end}.p9-page-title h1{margin:3px 0 5px}.p9-overline{font-size:11px;font-weight:800;letter-spacing:.12em;color:#007aff}.p9-filterbar{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid rgba(60,60,67,.1);border-radius:16px;background:rgba(255,255,255,.72);box-shadow:0 5px 18px rgba(15,23,42,.04);margin-bottom:20px}.p9-filterbar .search{margin:0;flex:1;min-width:280px;border:0;background:transparent}.p9-filterbar select{padding:9px 10px;border:0;border-left:1px solid var(--line);background:transparent}.p9-filter-count{padding:0 8px;white-space:nowrap;font-size:13px;color:var(--muted)}.p9-discipline-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:18px}.p9-discipline{background:rgba(255,255,255,.84);backdrop-filter:blur(16px);border:1px solid rgba(60,60,67,.1);border-radius:18px;box-shadow:var(--shadow);overflow:hidden}.p9-discipline-head{display:flex;justify-content:space-between;align-items:flex-end;padding:18px 18px 15px;background:linear-gradient(145deg,#f9fbff,#f2f6fc)}.p9-discipline-head h2{margin:3px 0 0;font-size:19px;letter-spacing:-.03em}.p9-count{font-size:12px;color:var(--muted);background:rgba(118,118,128,.1);padding:5px 8px;border-radius:999px}.p9-partner{display:flex;gap:12px;align-items:flex-start;padding:14px 18px;border-top:1px solid rgba(60,60,67,.1);transition:background .15s ease}.p9-partner:hover{background:rgba(0,122,255,.04)}.p9-preference{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:#e8f2ff;color:#007aff;font-size:13px;font-weight:800;flex:none}.p9-partner-main{min-width:0;flex:1}.p9-partner-main b{display:block;line-height:1.3}.p9-email{display:block;color:#007aff;font-size:12px;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.p9-partner-actions{display:flex;gap:6px;align-items:center;flex:none}@media(max-width:1000px){.side{width:76px}.main{margin-left:76px;width:calc(100% - 76px)}.p9-discipline-grid{grid-template-columns:1fr}}@media(max-width:700px){.main{padding:22px 16px}.p9-page-title,.p9-filterbar,.p9-partner{align-items:stretch;flex-direction:column}.p9-filterbar .search{min-width:0}.p9-filterbar select{border-left:0;border-top:1px solid var(--line)}.p9-partner-actions{justify-content:space-between}.p9-discipline-grid{grid-template-columns:1fr}}

.chapter-actions{display:flex;gap:7px;align-items:center}.meeting-chapter .points{min-height:0}

.version-list{display:flex;flex-direction:column;gap:7px}.version-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface,#fff);cursor:pointer}.version-item:hover{border-color:#64748b;background:#f8fafc}.version-item.selected{border-color:#2563eb;box-shadow:0 0 0 2px rgba(37,99,235,.12)}.version-item b{min-width:34px}

.agenda-point{margin:10px 0;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff}.agenda-point .point-head{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center}.agenda-point .point-head input{width:100%}.action-create-box{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-items:center}

.agenda-table-head,.agenda-row{display:grid;grid-template-columns:34px minmax(150px,1.2fr) minmax(170px,1.4fr) minmax(130px,1fr) minmax(150px,1.2fr) minmax(150px,1fr) 120px 52px minmax(150px,1.2fr) 82px;gap:6px;align-items:center}.agenda-table-head{font-size:11px;font-weight:700;color:var(--muted);padding:8px 6px;border-bottom:1px solid var(--line);min-width:1340px}.points{overflow-x:auto}.agenda-row{padding:5px 6px;border-bottom:1px solid var(--line);min-width:1340px}.agenda-row input,.agenda-row select{min-width:0;width:100%;box-sizing:border-box}.agenda-row-number{font-weight:600;text-align:center;color:var(--muted)}.meeting-chapter{overflow:visible}.meeting-chapter .chapter-head{margin-bottom:8px}.meeting-chapter .add-agenda-point{margin-top:10px}

/* 0.18.19: gasttype en zelfstandige weekkaarten */
.p10-field-staff{padding:12px;border:1px solid var(--line);border-radius:10px;background:#f7faff}.p10-field-staff label{font-weight:700}.p10-field-staff .muted{font-size:12px;margin-top:5px}.p10-planning-title{align-items:flex-end}.p10-plan-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.p10-planning-filter{display:flex;gap:10px;align-items:center;padding:11px 14px;border-radius:15px;background:rgba(255,255,255,.76);border:1px solid rgba(60,60,67,.1);box-shadow:0 4px 15px rgba(15,23,42,.04);margin-bottom:18px}.p10-planning-filter select{border:0;border-right:1px solid var(--line);padding:8px;background:transparent}.p10-planning-filter .search{flex:1;min-width:210px;border:0;background:transparent}.p10-planning-filter span{font-size:13px;color:var(--muted);white-space:nowrap}.p10-week-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(560px,1fr));gap:17px;align-items:start}.p10-week-card{background:rgba(255,255,255,.86);border:1px solid rgba(60,60,67,.1);border-radius:19px;box-shadow:var(--shadow);overflow:hidden}.p10-week-card>header{display:flex;justify-content:space-between;align-items:flex-end;padding:18px;background:linear-gradient(145deg,#f9fbff,#edf5ff)}.p10-week-card header span{color:#007aff;font-size:11px;font-weight:800;letter-spacing:.1em}.p10-week-card h2{margin:5px 0 0;font-size:19px;letter-spacing:-.035em}.p10-week-count{font-size:12px;background:#dcebff;color:#007aff;padding:5px 8px;border-radius:999px}.p10-week-people{padding:4px 14px 12px}.p10-person-row{display:grid;grid-template-columns:125px minmax(0,1fr);gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid rgba(60,60,67,.1)}.p10-person-row:last-child{border-bottom:0}.p10-person b{display:block;font-size:13px}.p10-person small{display:block;margin-top:3px;color:var(--muted);font-size:11px}.p10-days{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.p10-day{min-height:65px;padding:6px;border:0;border-radius:10px;background:#f3f4f6;color:#48505b;text-align:left;overflow:hidden}.p10-day:hover{filter:brightness(.96);outline:1px solid rgba(0,122,255,.35)}.p10-day span{display:block;text-transform:capitalize;font-size:10px;opacity:.72}.p10-day b{display:block;font-size:11px;line-height:1.25;margin:4px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.p10-day small{display:block;font-size:10px;opacity:.7}.p10-day.plan-project{background:#d9fbe6;color:#13723d}.p10-day.plan-leave,.p10-day.plan-free{background:#ddecff;color:#1b62b9}.p10-day.plan-sick{background:#ffdedc;color:#ab2922}.p10-day.plan-flex,.p10-day.plan-support{background:#fff2bd;color:#855900}.p10-day.empty{background:#f5f5f7;color:#86868b}@media(max-width:900px){.p10-planning-title{align-items:flex-start;flex-direction:column}.p10-plan-actions{justify-content:flex-start}.p10-week-grid{grid-template-columns:1fr}}@media(max-width:650px){.p10-planning-filter{align-items:stretch;flex-direction:column}.p10-planning-filter select{border-right:0;border-bottom:1px solid var(--line)}.p10-planning-filter .search{min-width:0}.p10-person-row{grid-template-columns:1fr}.p10-week-people{padding:4px 10px 10px}.p10-day{min-height:58px}.p10-day b{font-size:10px}}
.diag-actions{display:flex;gap:8px;flex-wrap:wrap}.diag-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.diag-columns{display:grid;grid-template-columns:1fr 1.25fr;gap:14px}.diag-label{display:block;color:#6b7280;font-size:11px;font-weight:800;letter-spacing:.08em}.diag-value{display:block;font-size:21px;margin:8px 0 5px}.diag-ok{color:#16794b}.diag-warn{color:#b45309}.diag-check,.diag-event{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid rgba(15,23,42,.08)}.diag-check span:last-child{margin-left:auto;color:#64748b}.diag-dot{width:9px;height:9px;border-radius:50%;background:#cbd5e1}.diag-dot.ok{background:#22a06b}.diag-dot.error{background:#e45a5a}.diag-event{justify-content:space-between;align-items:flex-start}.diag-event time{font-size:12px;color:#64748b;white-space:nowrap}@media(max-width:900px){.diag-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.diag-columns{grid-template-columns:1fr}}@media(max-width:560px){.diag-grid{grid-template-columns:1fr}.diag-actions{margin-top:10px}.diag-event{gap:6px}.diag-event time{white-space:normal;text-align:right}}

/* 0.18.21: compact Excel-achtig planningsbord */
.p12-board-scroll{display:flex;gap:20px;align-items:flex-start;overflow-x:auto;padding:3px 2px 14px}.p12-week{flex:0 0 min(690px,calc(100vw - 90px));overflow:hidden;border:1px solid #202020;border-radius:3px;background:#fff;box-shadow:0 8px 20px rgba(15,23,42,.08)}.p12-week>header{display:flex;justify-content:space-between;align-items:center;padding:8px 11px;background:#f4f1e9;border-bottom:2px solid #202020;font-size:13px}.p12-week>header b{font-size:15px}.p12-week>header span{color:#4b5563;font-size:12px}.p12-table-wrap{overflow-x:auto}.p12-table{width:100%;min-width:610px;border-collapse:collapse;table-layout:fixed;font-size:12px}.p12-table th,.p12-table td{border:1px solid #1f2937;padding:0;text-align:center}.p12-table thead th{height:44px;background:#fff;font-weight:800;text-transform:capitalize}.p12-table thead th small{display:block;margin-top:2px;font-size:10px;font-weight:500;color:#475569}.p12-person-head{width:132px;background:#f4f1e9!important;text-align:left!important;padding-left:10px!important}.p12-person{width:132px;padding:5px 8px!important;background:#fff;text-align:left!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.p12-person b{display:block;overflow:hidden;text-overflow:ellipsis}.p12-person small{display:block;color:#64748b;font-size:10px;font-weight:500;overflow:hidden;text-overflow:ellipsis}.p12-table td{height:30px}.p12-cell{display:block;width:100%;height:30px;border:0;padding:2px 4px;background:#fff;color:#111827;font:700 12px/1.1 inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.p12-cell:hover{filter:brightness(.92);outline:2px solid rgba(0,122,255,.45);outline-offset:-2px}.p12-cell.p12-empty{color:#b5bcc6;font-weight:500}.p12-cell.plan-project.client-green{background:#05a94f;color:#062c1a}.p12-cell.plan-project.client-blue{background:#0aa8df;color:#052f43}.p12-cell.plan-project.client-red{background:#ff1717;color:#3d0505}.p12-cell.plan-project.client-purple{background:#cfc8a2;color:#34311c}.p12-cell.plan-leave,.p12-cell.plan-free{background:#f5f5f5;color:#111827}.p12-cell.plan-sick{background:#ff1717;color:#3d0505}.p12-cell.plan-flex,.p12-cell.plan-support{background:#fff100;color:#312e00}.p12-cell.plan-other{background:#e8edf2}.p12-weeks{display:flex;align-items:center;gap:5px;font-size:13px;color:var(--muted);white-space:nowrap}.p12-weeks select{border:0!important;border-left:1px solid var(--line)!important;font:inherit!important;color:var(--text);padding:7px!important}.p12-legend{padding:4px 0 12px}.p12-legend i.plan-empty{background:#fff;border:1px solid #94a3b8}@media(max-width:700px){.p12-week{flex-basis:calc(100vw - 38px)}.p12-week>header{align-items:flex-start;flex-direction:column;gap:2px}.p12-person-head,.p12-person{width:105px}.p12-table{min-width:520px}.p12-cell{font-size:11px}.p12-weeks{border-top:1px solid var(--line);padding-top:8px}}

/* 0.19.2: vergaderruimtereserveringen in de kantoorplattegrond. */
.office-meeting-room{cursor:pointer}.office-meeting-room:hover{outline:3px solid rgba(0,122,255,.42);outline-offset:2px}.room-day-controls{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin:16px 0 12px;padding:10px 13px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.7)}.room-day-controls b{margin-right:auto}.office-reservation-panel{margin-top:17px;padding:20px}.reservation-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.reservation-head h2{margin:4px 0}.reservation-status{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:16px 0;padding:11px 13px;border-radius:11px;background:#e7f7ed;color:#146c43}.reservation-list{display:grid;gap:8px;margin:12px 0}.reservation-list article{display:grid;grid-template-columns:100px 1fr auto;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.72)}.reservation-list strong,.reservation-list small{display:block}.reservation-list small{margin-top:3px;color:var(--muted)}.reservation-actions{display:flex;gap:6px}.reservation-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 13px}.reservation-participants{display:flex;flex-wrap:wrap;gap:8px}.reservation-participants label{padding:7px 9px;border:1px solid var(--line);border-radius:9px;background:#f8fafc}.diag-e2e-module{padding:8px 0;border-bottom:1px solid rgba(15,23,42,.08)}.diag-e2e-module:last-child{border-bottom:0}.diag-e2e-checks{display:flex;gap:6px;flex-wrap:wrap;padding:3px 0 8px 19px}.diag-e2e-check{font-size:11px;padding:4px 7px;border-radius:999px;background:#eef5f0;color:#16794b}.diag-e2e-check.error{background:#fff0f0;color:#b42318}@media(max-width:650px){.reservation-form-grid{grid-template-columns:1fr}.room-day-controls b{width:100%;order:-1}.reservation-list article{grid-template-columns:1fr}.reservation-actions{justify-content:flex-start}.reservation-status{align-items:flex-start;flex-direction:column}}

/* 0.20.0: IT Beheer — compact, organisatiebreed serviceloket. */
.it-actions,.it-tabs,.it-filter{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.it-tabs{margin:18px 0 14px;padding:4px;background:rgba(118,118,128,.12);border-radius:11px;width:max-content;max-width:100%}.it-tabs button{border:0;background:transparent;padding:8px 12px;border-radius:8px;font:inherit;cursor:pointer}.it-tabs button.active{background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.1);font-weight:700}.it-tabs button:disabled{cursor:default;color:var(--muted)}.it-two-column{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:17px}.it-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line);cursor:pointer}.it-row:last-child{border-bottom:0}.it-row b,.it-row small{display:block}.it-row small{margin-top:4px;color:var(--muted)}.it-priority{margin-left:5px;font-size:11px;font-weight:700}.it-priority.Kritiek{color:#c91c1c}.it-priority.Hoog{color:#c05621}.it-priority.Normaal{color:#1769aa}.it-priority.Laag{color:#64748b}.it-filter{margin-bottom:14px;padding:11px 13px;background:rgba(255,255,255,.7);border:1px solid var(--line);border-radius:14px}.it-filter .search{margin:0;flex:1;min-width:220px}.it-filter select{padding:8px;border:1px solid var(--line);border-radius:8px;background:#fff}.it-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 13px}.it-history,.it-comments{margin-top:18px;padding-top:12px;border-top:1px solid var(--line)}.it-history h3,.it-comments h3{margin:0 0 8px}.it-history>div,.it-comments>div{padding:8px 0;border-bottom:1px solid var(--line)}.it-history small{display:block;color:var(--muted);margin-top:3px}.it-comments p{margin:5px 0}.it-comments textarea{width:100%;box-sizing:border-box;min-height:75px;margin:10px 0}.it-assets{overflow:auto}@media(max-width:720px){.it-two-column,.it-form-grid{grid-template-columns:1fr}.it-actions{align-items:stretch}.it-tabs{width:100%;overflow:auto;flex-wrap:nowrap}.it-filter{align-items:stretch;flex-direction:column}.it-filter .search{min-width:0}}
/* 0.23.0 Powerproject Gantt */
.it-asset-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px}.it-asset-card{display:grid;gap:5px;text-align:left;padding:15px;border:1px solid var(--line);border-radius:13px;background:#fff;font:inherit;cursor:pointer}.it-asset-card:hover{border-color:var(--accent);background:#f6faff}.it-asset-card span,.it-asset-card small{color:var(--muted);font-size:12px}.it-asset-detail{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:13px 0}.it-asset-detail div{padding:10px;border-radius:9px;background:#f5f5f7}.it-asset-detail span,.it-asset-detail b{display:block}.it-asset-detail span{font-size:11px;color:var(--muted)}@media(max-width:600px){.it-asset-detail{grid-template-columns:1fr}}
/* 0.25.0: UniFi Protect is intentionally a quiet, read-only status board. */
.protect-warning{margin:0 0 14px;padding:12px 14px;border-radius:12px;background:#fff4e5;color:#9a5700}.protect-meta{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 15px}.protect-meta span{padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:#f8fafc;font-size:12px}.protect-meta b{margin-left:4px}.protect-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}.protect-card{padding:0;overflow:hidden;text-align:left;border:1px solid var(--line);border-radius:14px;background:#fff;font:inherit;cursor:pointer}.protect-card:hover{border-color:var(--accent);box-shadow:0 8px 18px rgba(15,23,42,.08)}.protect-card img{display:block;width:100%;height:145px;object-fit:cover;background:#e5e7eb}.protect-card>div{display:grid;gap:6px;padding:13px}.protect-card b,.protect-card small{display:block}.protect-card small{color:var(--muted);font-size:12px}.protect-card .badge{width:max-content}.protect-detail-image{display:block;width:100%;max-height:290px;object-fit:cover;border-radius:12px;background:#e5e7eb}
.protect-alert{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:0 0 15px;padding:13px 15px;border:1px solid #fecaca;border-radius:12px;background:#fff4f4;color:#991b1b}.protect-alert span{font-size:13px}.protect-history{margin-top:18px}.protect-history h2{margin-top:0}.protect-event{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:start;padding:11px 0;border-bottom:1px solid var(--line)}.protect-event:last-child{border-bottom:0}.protect-event b,.protect-event small{display:block}.protect-event small,.protect-event time{color:var(--muted);font-size:12px;margin-top:3px}.protect-event time{white-space:nowrap}.protect-event.warning .diag-dot{background:#f59e0b}.protect-secret-status{margin:12px 0;padding:10px 12px;border-radius:9px;background:#f3f4f6;color:var(--muted);font-size:13px}@media(max-width:650px){.protect-alert{align-items:flex-start;flex-direction:column}.protect-event{grid-template-columns:auto minmax(0,1fr)}.protect-event time{grid-column:2}.protect-card img{height:125px}}
/* 0.30.0: office PDF underlay, relation management and project dossier. */
.office-canvas{overflow:hidden}.office-pdf-underlay{position:absolute;inset:0;width:100%;height:100%;border:0;pointer-events:none;opacity:.58;z-index:0}.office-canvas .office-room{z-index:1}.office-pdf-status{margin-left:auto;padding:5px 9px;border-radius:999px;background:#e7f6ee;color:#14724d;font-size:12px;font-weight:700}.relation-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:15px 0}.relation-toolbar .search{margin:0;min-width:280px;flex:1}.relation-toolbar select{padding:9px;border:1px solid var(--line);border-radius:9px;background:#fff}.relation-toolbar span{font-size:13px;color:var(--muted)}.relation-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(265px,1fr));gap:13px}.relation-card{display:flex;justify-content:space-between;gap:12px;padding:15px;border:1px solid var(--line);border-radius:14px;background:#fff}.relation-card b,.relation-card small{display:block}.relation-card b{margin:8px 0 4px}.relation-card small{color:var(--muted);font-size:12px;margin-top:3px}.relation-actions{display:flex;align-items:flex-start}.relation-project-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:10px;border:1px solid var(--line);border-radius:9px;max-height:150px;overflow:auto}.relation-project-list .checkrow{font-size:13px}.dossier-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.dossier-metrics article{padding:15px;border:1px solid var(--line);border-radius:13px;background:#fff}.dossier-metrics b,.dossier-metrics span{display:block}.dossier-metrics b{font-size:25px}.dossier-metrics span{color:var(--muted);font-size:12px;margin-top:4px}.dossier-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.dossier-grid h3{margin-top:0}.dossier-row{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--line)}.dossier-row:last-child{border-bottom:0}.dossier-row b,.dossier-row small{display:block}.dossier-row small{color:var(--muted);font-size:12px}.message-list{display:grid;gap:10px}.message-card{display:flex;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid var(--line);border-radius:13px;background:#fff}.message-card.incoming{border-left:4px solid #5b7cfa}.message-card.outgoing{border-left:4px solid #22a06b}.message-card b{display:block;margin-top:7px}.message-card p{margin:7px 0 0}.message-card small{color:var(--muted);font-size:12px;white-space:nowrap}@media(max-width:700px){.relation-project-list,.dossier-metrics,.dossier-grid{grid-template-columns:1fr}.relation-toolbar .search{min-width:0}.message-card{flex-direction:column}.message-card small{white-space:normal}}
.pwr-version-card{margin:16px 0}.pwr-version-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:8px;align-items:center;padding:9px 0;border-top:1px solid var(--line)}.pwr-version-row>button:first-child{border:0;background:transparent;text-align:left;cursor:pointer;font:inherit}.pwr-version-row small{display:block;color:var(--muted);margin-top:3px}.pwr-version-row.selected{background:rgba(0,122,255,.05)}.pwr-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:16px 0}.pwr-meta span,.pwr-meta b{display:block}.pwr-meta span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.pwr-meta b{margin-top:4px}.pwr-scroll{align-items:flex-start}.pwr-table{position:sticky;left:0;z-index:4;min-width:520px;background:#fff;border-right:2px solid var(--line)}.pwr-table>header,.pwr-table-row{display:grid;grid-template-columns:minmax(230px,1fr) 88px 88px 70px;gap:8px;align-items:center}.pwr-table>header{height:69px;padding:0 10px;background:#f5f5f7;border-bottom:1px solid var(--line);font-size:12px;font-weight:800}.pwr-table-row{height:43px;padding:0 10px;border-bottom:1px solid #edf0f2;font-size:12px}.pwr-table-row b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pwr-timeline{position:relative;flex:none;background:repeating-linear-gradient(90deg,#fff 0,#fff calc(var(--pday,5px) * 6),#edf1f5 calc(var(--pday,5px) * 6 + 1px))}.pwr-timeline>header{height:69px;position:sticky;top:0;background:#f5f5f7;border-bottom:1px solid var(--line);z-index:2}.pwr-year{height:20px;padding:3px 8px;box-sizing:border-box;font-weight:800;font-size:12px}.pwr-months,.pwr-weeks{position:relative;height:23px;border-top:1px solid #e4e7eb}.pwr-months span,.pwr-weeks span{position:absolute;top:3px;white-space:nowrap;font-size:11px}.pwr-months span{font-weight:700;padding-left:4px}.pwr-weeks span{padding-left:2px;color:var(--muted)}.pwr-time-row{height:43px;border-bottom:1px solid #edf0f2;position:relative}.pwr-bar{top:14px}.pwr-today{position:absolute;z-index:3;top:0;bottom:0;width:2px;background:#e34d59;pointer-events:none}@media(max-width:800px){.pwr-table{min-width:410px}.pwr-table>header,.pwr-table-row{grid-template-columns:minmax(170px,1fr) 75px 75px 55px}.pwr-meta{grid-template-columns:1fr 1fr}.pwr-version-row{grid-template-columns:1fr auto auto}.pwr-version-row span{display:none}}
.pwr-versions,.pwr-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:14px 0}.pwr-versions button{border:1px solid var(--line);background:#fff;padding:8px;border-radius:8px}.pwr-versions button.active{background:#007aff;color:#fff}.pwr-toolbar .search{margin:0;min-width:260px}.pwr-scroll{display:flex;overflow:auto;border:1px solid var(--line);border-radius:12px;background:#fff;max-height:600px}.pwr-left{position:sticky;left:0;z-index:2;min-width:310px;background:#fff;border-right:1px solid var(--line)}.pwr-head{height:42px;padding:10px;box-sizing:border-box;font-weight:700;border-bottom:1px solid var(--line);background:#f5f5f7}.pwr-row{height:43px;box-sizing:border-box;padding:6px 10px;border-bottom:1px solid #edf0f2;position:relative}.pwr-row b,.pwr-row small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pwr-row small{font-size:11px;color:var(--muted);margin-top:3px}.pwr-timeline{background:repeating-linear-gradient(90deg,#fff 0,#fff 27px,#edf1f5 28px)}.pwr-weeks{display:flex;gap:0}.pwr-weeks span{width:28px;flex:none;font-size:10px}.pwr-bar{position:absolute;top:14px;height:14px;border-radius:5px;background:linear-gradient(90deg,#007aff,#6caeff)}
.development-tabs{margin-bottom:18px}.development-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.development-metrics article{display:grid;gap:7px}.development-metrics article>span{color:var(--muted,#667085);font-size:12px;text-transform:uppercase;letter-spacing:.06em}.development-metrics strong{font-size:26px}.development-release-list,.roadmap-list{display:grid;gap:10px}.development-release-list article,.roadmap-row{display:flex;align-items:flex-start;gap:14px;padding:14px;border:1px solid rgba(148,163,184,.25);border-radius:14px;background:rgba(255,255,255,.58)}.development-release-list article div,.roadmap-row>div{display:grid;gap:5px;flex:1}.development-release-list p,.roadmap-row p{margin:0;color:var(--muted,#667085)}.roadmap-row .badge{width:max-content}.badge.red{background:#fee4e2;color:#b42318}@media(max-width:900px){.development-metrics{grid-template-columns:1fr}.development-release-list article,.roadmap-row{flex-wrap:wrap}}

/* 0.32.0: projectruggengraat, gefaseerde module-uitrol en Werkplek & Ruimtebeheer. */
.process-line{display:grid;grid-template-columns:repeat(7,minmax(115px,1fr));gap:8px;overflow:auto;margin:0 0 17px}.process-step{position:relative;display:grid;gap:3px;min-width:115px;padding:13px;border:1px solid var(--line);border-radius:13px;background:var(--panel)}.process-step>span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e8eef4;color:#395066;font-weight:800}.process-step.active{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 16%,transparent)}.process-step.active>span,.process-step.complete>span{background:var(--accent);color:#fff}.process-step small{color:var(--muted)}
.operational-metrics,.workplace-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:15px}.operational-metrics article,.workplace-metric{display:grid;gap:7px}.operational-metrics span,.workplace-metric span{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.operational-metrics b,.workplace-metric b{font-size:25px}.gate-card{margin-top:14px}.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.section-head h2{margin:4px 0}.gate-conditions{display:grid;gap:5px;margin:14px 0}.gate-conditions>div{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:11px 0;border-bottom:1px solid var(--line)}.gate-conditions small{color:var(--muted)}
.operational-filter{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:-9px 0 13px}.operational-list{padding-top:5px}.operational-item{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:15px 0;border-bottom:1px solid var(--line)}.operational-item:last-child{border-bottom:0}.operational-item>div:first-child{display:grid;gap:5px;min-width:0}.operational-item .badge{width:max-content}.operational-item small,.operational-item p{color:var(--muted);margin:0}.operational-row-actions{display:flex;gap:6px}.operational-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
.workplace-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}.workplace-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.workplace-grid h2{margin-top:0}.workplace-row{display:grid;width:100%;gap:5px;padding:12px 0;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;color:inherit}.workplace-row:last-child{border-bottom:0}.workplace-row .badge{width:max-content}.workplace-row small{color:var(--muted)}
.module-management-list{display:grid;gap:0}.module-management-list article{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:14px 0;border-bottom:1px solid var(--line)}.module-management-list article:last-child{border-bottom:0}.module-management-list article>div:first-child{display:grid;gap:5px}.module-management-list article>div:last-child{display:flex;gap:7px;align-items:center}.module-management-list select{padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text)}.module-management-list small{color:var(--muted)}.module-scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;max-height:55vh;overflow:auto}
.space-tabs{overflow:auto}.space-resource-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:11px;margin-top:14px}.space-resource-grid article{display:grid;gap:8px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.space-resource-grid article .badge{width:max-content}.space-resource-grid small{color:var(--muted)}.space-reservation-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid var(--line)}.space-reservation-row b,.space-reservation-row small{display:block}.space-reservation-row small{margin-top:4px;color:var(--muted)}.space-manage-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.theme-preview.teal span{background:linear-gradient(135deg,#52bcb5,#208b86)}body.theme-teal{--bg:#eaf7f6;--panel:#fff;--brand:#174d4a;--accent:#52bcb5;--line:#cce7e5;--shadow:0 12px 30px rgba(27,111,106,.08);background:linear-gradient(150deg,#eef9f8,#e5f2f1 48%,#f8fbfb)}body.theme-teal .side{background:linear-gradient(180deg,#123f3d,#1c5c58)}body.theme-teal .nav button.active,body.theme-teal .nav button:hover{background:rgba(82,188,181,.28)}body.theme-teal .btn.primary{background:linear-gradient(135deg,#52bcb5,#278f89);border-color:#278f89}body.theme-teal .card{border-color:rgba(82,188,181,.25)}
@media(max-width:980px){.workplace-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.workplace-grid,.space-manage-grid{grid-template-columns:1fr}}@media(max-width:680px){.operational-metrics,.workplace-metrics,.operational-form-grid,.module-scope-grid{grid-template-columns:1fr}.operational-item,.module-management-list article,.space-reservation-row{flex-direction:column}.operational-row-actions,.module-management-list article>div:last-child{width:100%;flex-wrap:wrap}}
/* SCHAKEL 0.33.0 — beveiligde serverlogin */
.auth-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 10%,rgba(82,188,181,.22),transparent 34%),#f4f7fa}
.auth-card{width:min(440px,100%);background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:24px;padding:34px;box-shadow:0 24px 70px rgba(15,23,42,.13)}
.auth-brand{font-weight:800;letter-spacing:.08em;color:#174f4c;font-size:24px;display:flex;flex-direction:column;margin-bottom:28px}.auth-brand small{font-size:12px;letter-spacing:0;color:#64748b;margin-top:4px}.auth-card h1{margin:0 0 6px}.auth-card .field{margin-top:18px}.auth-submit{width:100%;margin-top:22px}.auth-error{padding:12px 14px;border-radius:12px;background:#fff1f2;color:#9f1239;margin-top:16px}
/* SCHAKEL 0.34.2 — WorkPackages & Projectvoorbereiding */
.wp-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0 0 16px}.wp-metrics article{display:flex;flex-direction:column;gap:5px}.wp-metrics span{color:var(--muted);font-size:12px}.wp-metrics b{font-size:27px}.wp-filters{display:grid;grid-template-columns:2fr repeat(5,minmax(130px,1fr));gap:10px;margin:0 0 16px}.wp-filters .field{margin:0}.wp-table-card{padding:0;overflow:hidden}.wp-table-wrap{overflow:auto}.wp-table{min-width:1120px}.wp-table td{vertical-align:middle}.wp-table small,.link-button small{display:block;color:var(--muted);margin-top:4px;max-width:320px}.link-button{display:block;background:none;border:0;color:inherit;text-align:left;padding:0;cursor:pointer}.link-button:hover b{text-decoration:underline}.wp-compatibility{margin-top:14px}.wp-fixed-header{position:sticky;top:0;z-index:3;margin-bottom:14px;box-shadow:0 8px 26px rgba(18,31,52,.08)}.wp-title-row{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.wp-title-row h1{margin:3px 0 5px}.wp-title-row p{margin:0;max-width:850px;color:var(--muted)}.wp-axis-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.wp-axis-grid>div{display:flex;flex-direction:column;gap:4px}.wp-axis-grid span:first-child{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.wp-axis-grid small{display:block;color:var(--muted)}.wp-blocker-count{color:#b42318}.wp-detail-tabs{margin-bottom:14px}.wp-section{scroll-margin-top:220px;margin-bottom:14px}.wp-section h2{margin:0}.wp-scope-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.wp-scope-grid>div{padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--surface-soft,#f8fafc)}.wp-scope-grid span:first-child{font-size:11px;text-transform:uppercase;color:var(--muted)}.wp-scope-grid p{margin:7px 0 0}.wp-list{display:flex;flex-direction:column;gap:9px}.wp-list article{display:flex;justify-content:space-between;gap:16px;align-items:center;border:1px solid var(--line);border-radius:13px;padding:12px}.wp-list article>div:first-child{display:flex;flex-direction:column;align-items:flex-start;gap:5px}.wp-list article>div:last-child{display:flex;gap:7px;align-items:center}.wp-list p,.wp-list small{margin:0;color:var(--muted)}.wp-readiness-list{display:flex;flex-direction:column;gap:8px}.wp-check{display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:center;padding:11px;border:1px solid var(--line);border-radius:12px}.wp-check.passed{background:rgba(20,160,88,.07)}.wp-check.failed{background:rgba(209,55,55,.07)}.wp-check.warning{background:rgba(228,153,27,.09)}.wp-check-icon{font-size:21px;font-weight:800;text-align:center}.wp-check.passed .wp-check-icon{color:#138a50}.wp-check.failed .wp-check-icon{color:#c53232}.wp-check.warning .wp-check-icon{color:#b7790b}.wp-check small{display:block;color:var(--muted);margin-top:3px}.wp-blockers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.wp-blockers button{display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:9px;border:1px solid #f0b4b4;background:#fff7f7;border-radius:13px;padding:12px;text-align:left;cursor:pointer;color:inherit}.wp-blockers button>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#c53232;color:white;font-weight:700}.wp-blockers small{color:#a52020}.wp-audit{display:flex;flex-direction:column;gap:7px}.wp-audit article{display:grid;grid-template-columns:120px minmax(180px,.7fr) 1fr;gap:12px;padding:9px 0;border-bottom:1px solid var(--line)}.wp-audit span,.wp-audit small{color:var(--muted)}.wp-preview{border:1px dashed #9ea8b7}.wp-preview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:14px 0}.wp-preview-grid div{border:1px solid var(--line);background:var(--surface-soft,#f8fafc);border-radius:12px;padding:14px;color:var(--muted)}
@media(max-width:1200px){.wp-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.wp-axis-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wp-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.wp-filters,.wp-metrics,.wp-axis-grid,.wp-scope-grid,.wp-blockers,.wp-preview-grid{grid-template-columns:1fr}.wp-title-row,.wp-list article{flex-direction:column}.wp-audit article{grid-template-columns:1fr}.wp-fixed-header{position:static}}
.pilot-page{max-width:1180px;margin:0 auto}.pilot-hero,.pilot-project-head,.pilot-section-head,.pilot-wp-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.pilot-hero{padding:8px 0 24px}.pilot-hero h1,.pilot-project-head h1,.pilot-wp-hero h1{margin:4px 0 8px;font-size:32px}.pilot-eyebrow{font-size:11px;font-weight:800;letter-spacing:.12em;color:var(--primary,#6d42df)}.pilot-metrics,.pilot-signal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:20px}.pilot-metrics button,.pilot-signal-grid button{border:0;border-radius:18px;padding:20px;text-align:left;background:#fff;box-shadow:0 10px 28px rgba(34,24,78,.08)}.pilot-metrics b,.pilot-signal-grid b{display:block;font-size:30px}.pilot-metrics span,.pilot-signal-grid span{color:#666}.pilot-section{background:rgba(255,255,255,.94);border:1px solid rgba(89,69,155,.1);border-radius:20px;padding:20px;margin:14px 0;box-shadow:0 8px 28px rgba(39,29,79,.06)}.pilot-section h2{margin:0 0 14px}.pilot-project-list,.pilot-section{display:block}.pilot-project-list>button,.pilot-package{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;border:0;border-bottom:1px solid #eceaf3;background:transparent;padding:16px 8px;text-align:left;cursor:pointer}.pilot-project-list>button:last-child,.pilot-package:last-child{border-bottom:0}.pilot-project-list b,.pilot-package b{display:block;font-size:15px}.pilot-project-list span,.pilot-package span,.pilot-package small{display:block;margin-top:4px;color:#6a6873}.pilot-package>div:last-child{text-align:right}.pilot-state{display:inline-flex!important;align-items:center;gap:5px;border-radius:999px;padding:6px 10px;font-weight:700;font-size:12px}.pilot-state.ok,.pilot-dot.ok{background:#e7f7ef;color:#13764b}.pilot-state.attention,.pilot-dot.attention{background:#fff4db;color:#9b6200}.pilot-state.blocker,.pilot-dot.blocker{background:#ffe9e7;color:#b6322d}.pilot-project-signals{display:flex;gap:12px}.pilot-project-signals .blocker,.pilot-signal-grid .blocker{color:#b6322d}.pilot-project-signals .attention,.pilot-signal-grid .attention{color:#9b6200}.pilot-project-signals .ok,.pilot-signal-grid .ok{color:#13764b}.pilot-columns{display:grid;grid-template-columns:1.4fr 1fr;gap:14px}.pilot-row{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid #eceaf3;padding:12px 0}.pilot-row:last-child{border-bottom:0}.pilot-row b,.pilot-row span{display:block}.pilot-row span,.pilot-row time,.pilot-row em{font-size:12px;color:#777;font-style:normal}.pilot-phase{display:inline-flex;flex-direction:column;background:#37236d;color:#fff;border-radius:16px;padding:14px 20px;margin-bottom:8px}.pilot-phase span{font-size:11px;opacity:.75}.pilot-phase b{font-size:22px}.pilot-project-head{margin-bottom:14px}.pilot-project-head p{margin:0;color:#777}.pilot-project-nav,.pilot-wp-tabs,.pilot-admin-tabs,.pilot-segment{display:flex;gap:6px;padding:6px;background:rgba(255,255,255,.75);border-radius:14px;overflow:auto;margin-bottom:16px}.pilot-project-nav button,.pilot-wp-tabs button,.pilot-admin-tabs button,.pilot-segment button{border:0;background:transparent;border-radius:10px;padding:10px 16px;font-weight:700;white-space:nowrap;cursor:pointer}.pilot-project-nav button.active,.pilot-wp-tabs button.active,.pilot-admin-tabs button.active,.pilot-segment button.active{background:#fff;color:var(--primary,#6d42df);box-shadow:0 4px 14px rgba(45,29,89,.12)}.pilot-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;margin:14px 0}.pilot-filters input,.pilot-filters select{border:1px solid #dedbe8;border-radius:12px;padding:11px}.pilot-wp-hero{background:#fff;border-radius:22px;padding:22px;box-shadow:0 12px 36px rgba(40,28,80,.08)}.pilot-wp-hero>div:nth-child(2),.pilot-wp-hero>div:nth-child(3){display:flex;flex-direction:column;gap:5px;min-width:150px}.pilot-wp-hero small{color:#777}.pilot-back{border:0;background:transparent;color:var(--primary,#6d42df);font-weight:700;padding:8px 0;cursor:pointer}.pilot-why button{display:flex;align-items:center;gap:10px;border:0;background:transparent;padding:8px 0;text-align:left;cursor:pointer;width:100%}.pilot-dot{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;font-size:11px;flex:none}.pilot-info-group{border:1px solid #e5e2ec;border-radius:14px;margin:10px 0;overflow:hidden}.pilot-info-group summary{display:flex;justify-content:space-between;padding:14px;cursor:pointer;background:#faf9fc}.pilot-info-group>button{width:100%;display:grid;grid-template-columns:26px 1fr auto;gap:10px;align-items:center;padding:12px 14px;border:0;border-top:1px solid #eeeaf2;background:#fff;text-align:left;cursor:pointer}.pilot-info-group small,.pilot-info-group em{display:block;color:#777;font-style:normal;font-size:12px}.pilot-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.pilot-detail-grid>div{background:#f6f5f8;border-radius:12px;padding:12px}.pilot-detail-grid span,.pilot-detail-grid b{display:block}.pilot-progress{height:10px;background:#eceaf1;border-radius:10px;overflow:hidden;margin:10px 0}.pilot-progress i{display:block;height:100%;background:linear-gradient(90deg,#8a4cff,#5f39d8);border-radius:10px}.pilot-timeline{display:grid;grid-template-columns:80px 1fr;gap:16px;padding:12px 0;border-bottom:1px solid #eee}.pilot-timeline time{font-weight:800;color:var(--primary,#6d42df)}.pilot-timeline b,.pilot-timeline span{display:block}.pilot-timeline span{color:#777;font-size:12px}.pilot-feature,.pilot-feedback-item{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;border-bottom:1px solid #eceaf3;padding:14px 0}.pilot-feature b,.pilot-feature span,.pilot-feedback-item b,.pilot-feedback-item small{display:block}.pilot-feature span,.pilot-feature p,.pilot-feedback-item small{color:#777}.pilot-secret{font:700 20px ui-monospace,monospace;background:#f3f0fa;border:1px dashed #8061cc;padding:16px;border-radius:12px;user-select:all}.pilot-audit>div{display:grid;grid-template-columns:150px 220px 1fr;gap:12px;padding:9px 0;border-bottom:1px solid #eee;font-size:12px}.pilot-empty,.pilot-loading{text-align:center;color:#777;padding:30px}.feedback-fab{position:fixed;right:22px;bottom:22px;z-index:90;border:0;border-radius:999px;padding:12px 18px;background:#312064;color:#fff;font-weight:800;box-shadow:0 10px 30px rgba(33,19,70,.28);cursor:pointer}.view-as-banner{position:sticky;top:0;z-index:200;background:#fff1c7;color:#704d00;border-bottom:1px solid #e7c768;padding:10px 18px;display:flex;align-items:center;justify-content:center;gap:18px}.view-as-banner span{font-size:12px}.view-as-banner button{border:1px solid #b58b24;background:#fff8df;border-radius:8px;padding:6px 10px;cursor:pointer}
@media(max-width:900px){.pilot-columns,.pilot-metrics,.pilot-signal-grid,.pilot-filters{grid-template-columns:1fr}.pilot-project-head,.pilot-wp-hero,.pilot-hero{flex-direction:column}.pilot-project-nav{position:sticky;top:0;z-index:20}.pilot-audit>div{grid-template-columns:1fr}.feedback-fab{right:12px;bottom:12px}.view-as-banner{align-items:flex-start;flex-direction:column;gap:4px}}
.side{display:flex;flex-direction:column;overflow:hidden}.side>.nav{flex:1;min-height:80px;overflow-y:auto;padding-bottom:8px}.side>.profile-switch{position:static;margin:10px 8px 0}.side>.side-note{position:static!important;margin:8px 12px 0}.pilot-access-table td:last-child{text-align:right}.pilot-permission-matrix{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pilot-permission-group{border:1px solid var(--line);border-radius:12px;padding:10px;display:grid;gap:7px}.pilot-permission-group legend{font-weight:800;padding:0 5px}.pilot-permission-group label{display:flex;align-items:center;gap:7px;font-size:13px}.modalbox:has(.pilot-permission-matrix){width:min(920px,100%);max-height:90vh;overflow:auto}@media(max-width:800px){.pilot-permission-matrix{grid-template-columns:1fr}.pilot-access-table{min-width:760px}}
