:root{--bg:#07111f;--panel:#0f1b2c;--panel2:#14243a;--text:#f7fbff;--muted:#91a1b7;--blue:#168dff;--line:#20324a;--green:#31d48d;--red:#ff5b66;--orange:#ffb443}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:#f2f5f9;color:#172131}.splash,.login{min-height:100vh;background:radial-gradient(circle at 70% 0,#143b62,transparent 40%),var(--bg);display:grid;place-items:center;color:#fff}.splash img{width:220px}.login-card{width:min(430px,90vw);padding:38px;border:1px solid #263c57;background:rgba(10,22,38,.94);border-radius:24px;box-shadow:0 25px 80px #0007}.login-card img{width:220px;max-width:70%;margin-bottom:24px}.login-card h1{font-size:26px;margin:0 0 8px}.login-card p{color:#9eb0c6;margin:0 0 24px}input,select,textarea,button{font:inherit}.field{display:grid;gap:7px;margin:14px 0}.field label{font-size:13px;font-weight:700}.field input,.field select,.field textarea{width:100%;border:1px solid #ccd5df;border-radius:10px;padding:12px;background:white}.login .field input{background:#0c1727;border-color:#31435b;color:white}.btn{border:0;border-radius:10px;padding:12px 17px;background:var(--blue);color:#fff;font-weight:800;cursor:pointer}.btn.secondary{background:#e7edf4;color:#172131}.btn.small{padding:8px 11px;font-size:13px}.error{background:#3a1520;color:#ffb7bf;padding:11px;border-radius:9px}.app{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{background:var(--bg);color:#fff;padding:25px 18px;position:sticky;top:0;height:100vh}.sidebar .logo{width:170px;margin:6px 10px 32px}.nav{display:grid;gap:5px}.nav button{border:0;background:transparent;color:#9db0c6;text-align:left;padding:12px;border-radius:10px;cursor:pointer;font-weight:700;display:flex;justify-content:space-between}.nav button.active,.nav button:hover{background:#14253a;color:#fff}.badge{background:var(--red);color:#fff;border-radius:99px;padding:2px 7px;font-size:11px}.sidebar-foot{position:absolute;bottom:22px;left:18px;right:18px;border-top:1px solid #203149;padding-top:17px;color:#93a6bb;font-size:13px}.main{min-width:0}.topbar{height:76px;background:white;border-bottom:1px solid #dfe5ec;padding:0 30px;display:flex;align-items:center;justify-content:space-between}.topbar h1{font-size:22px}.content{padding:28px;max-width:1450px}.grid{display:grid;gap:18px}.stats{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:#fff;border:1px solid #e0e6ed;border-radius:16px;padding:20px;box-shadow:0 5px 20px #10233a0b}.stat .value{font-size:30px;font-weight:900;margin-top:8px}.muted{color:#75859a}.section-head{display:flex;align-items:center;justify-content:space-between;margin:30px 0 14px}.section-head h2{margin:0}.stream-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stream-card{background:linear-gradient(145deg,#111d2e,#07111f);color:white}.stream-top{display:flex;justify-content:space-between;gap:12px}.status{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:800}.dot{width:10px;height:10px;border-radius:50%;background:var(--red);box-shadow:0 0 10px currentColor}.dot.online{background:var(--green)}.dot.maintenance{background:var(--orange)}.now{font-size:18px;font-weight:800;margin:25px 0 5px}.player{width:100%;margin-top:15px}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:13px 12px;border-bottom:1px solid #e6ebf0;white-space:nowrap}.table th{font-size:12px;color:#718096;text-transform:uppercase}.pill{padding:5px 9px;border-radius:99px;font-size:12px;font-weight:800;background:#e8edf3}.pill.paid,.pill.processed,.pill.closed{background:#dcf8eb;color:#087a4b}.pill.overdue,.pill.rejected{background:#ffe1e4;color:#ae2331}.pill.open,.pill.received,.pill.new{background:#fff2ce;color:#916000}.modal-bg{position:fixed;inset:0;background:#07111f99;display:grid;place-items:center;padding:20px;z-index:20}.modal{background:white;width:min(600px,100%);max-height:90vh;overflow:auto;border-radius:18px;padding:25px}.modal-head{display:flex;justify-content:space-between}.close{border:0;background:#edf1f5;border-radius:9px;width:36px;height:36px}.two{grid-template-columns:1fr 1fr}.empty{text-align:center;padding:45px;color:#7a899b}@media(max-width:1000px){.app{grid-template-columns:78px 1fr}.sidebar{padding:22px 10px}.sidebar .logo{width:48px;object-fit:cover;object-position:left;margin:5px}.nav button span:first-child{display:none}.nav button{justify-content:center}.sidebar-foot{display:none}.stats{grid-template-columns:1fr 1fr}.stream-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.app{display:block}.sidebar{height:auto;position:static;display:flex;align-items:center;padding:10px;overflow:auto}.sidebar .logo{width:110px;margin:0 12px 0 0}.nav{display:flex}.nav button{white-space:nowrap}.nav button span:first-child{display:inline}.topbar{padding:0 16px}.content{padding:16px}.stats,.stream-grid,.two{grid-template-columns:1fr}.topbar h1{font-size:18px}.topbar .muted{display:none}}
.full{width:100%}.danger{background:#ff5b66;color:#fff}.url-cell{max-width:360px;overflow:hidden;text-overflow:ellipsis}.link-btn{border:0;background:none;padding:0;color:#172131;cursor:pointer;text-align:left}.custom-player{display:flex;align-items:center;gap:14px;margin:18px 0}.custom-player small{display:block;color:#91a1b7;margin-top:3px}.play-btn{width:54px;height:54px;border:0;border-radius:50%;background:linear-gradient(135deg,#168dff,#0d68cf);color:#fff;font-size:20px;cursor:pointer;box-shadow:0 10px 30px #168dff55}.custom-player audio{display:none}.conversation{display:grid;gap:12px;margin:20px 0;max-height:420px;overflow:auto}.message{background:#edf2f7;border-radius:14px;padding:14px}.message p{margin:8px 0}.admin-message{background:#dff0ff;border-left:4px solid #168dff}.span-2{grid-column:1/-1}.narrow{max-width:560px}a.btn{text-decoration:none;display:inline-block}
.stream-error,.tiny-error{margin-top:8px;padding:8px 10px;border-radius:8px;background:#fff1f1;color:#a32222;font-size:12px;line-height:1.35}.tiny-error{max-width:260px}.url-cell{max-width:330px;overflow-wrap:anywhere}
/* v1.6 client-side Icecast status */
.stream-card .stream-error{margin:10px 0;padding:9px 11px;border-radius:9px;background:#3a1520;color:#ffb7bf;font-size:12px}.play-btn{width:48px;height:48px;border:0;border-radius:50%;background:var(--blue);color:#fff;font-weight:900;cursor:pointer;flex:0 0 auto}.custom-player{display:flex;align-items:center;gap:12px;margin:18px 0}.custom-player small{display:block;color:#91a1b7;margin-top:3px}

/* v1.8: verborgen metadata en duidelijkere supportmeldingen */
.ticket-unread{background:#f0f7ff;box-shadow:inset 4px 0 0 #168dff}
.ticket-unread td{border-bottom-color:#d8e9fb}
.ticket-subject-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}
.new-message-dot{width:9px;height:9px;border-radius:50%;background:#168dff;box-shadow:0 0 0 4px rgba(22,141,255,.13);flex:0 0 auto}
.new-message-label{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;background:#168dff;color:#fff;font-size:11px;font-weight:800;line-height:1}
.ticket-unread .link-btn{color:#0d68cf}
@media(max-width:650px){.ticket-unread{box-shadow:inset 3px 0 0 #168dff}.new-message-label{font-size:10px}}

/* Bradioo Dashboard v2.2 */
.stats-expanded{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:28px}.table-search{margin:0 0 16px}.table-search input{width:min(440px,100%);padding:12px 14px;border:1px solid #d9e1ea;border-radius:10px;background:#fff;font:inherit}.upload-dropzone{border:2px dashed #a7b6c8;border-radius:14px;padding:26px;text-align:center;cursor:pointer;background:#f8fafc;transition:.18s ease;display:flex;flex-direction:column;gap:5px}.upload-dropzone:hover,.upload-dropzone.dragover,.upload-dropzone:focus{border-color:#1677ff;background:#eef6ff;outline:none}.upload-dropzone span{color:#64748b}.upload-file-list{display:grid;gap:10px;margin-top:12px}.upload-file{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,280px);gap:14px;align-items:center;padding:10px 12px;border:1px solid #e3e9f0;border-radius:10px;background:#fff}.upload-file small{display:block;color:#64748b;margin-top:3px}.upload-file audio{width:100%;height:36px}.upload-progress{height:10px;background:#e7edf5;border-radius:999px;overflow:hidden;margin-top:14px}.upload-progress>div{width:0;height:100%;background:#1677ff;transition:width .15s linear}@media(max-width:700px){.upload-file{grid-template-columns:1fr}.stats-expanded{grid-template-columns:1fr 1fr}}


/* Bradioo Dashboard v2.3: campagneplanning */
.campaign-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px;flex-wrap:wrap}.campaign-tabs{display:flex;background:#e8eef5;border-radius:11px;padding:4px}.campaign-tab{border:0;background:transparent;padding:9px 15px;border-radius:8px;font-weight:800;cursor:pointer;color:#53657b}.campaign-tab.active{background:#fff;color:#172131;box-shadow:0 2px 8px #10233a14}.campaign-filters{display:flex;gap:10px;flex-wrap:wrap}.campaign-filters select{min-width:160px;border:1px solid #d7e0e9;background:#fff;border-radius:10px;padding:10px 12px}.campaign-audio{width:220px;max-width:100%;height:34px;display:block;margin-bottom:7px}.text-link{font-size:12px;font-weight:800;color:#1677ff;text-decoration:none}.pill.campaign-approved,.pill.campaign-active{background:#dcf8eb;color:#087a4b}.pill.campaign-scheduled{background:#dff0ff;color:#0d68cf}.pill.campaign-expired,.pill.campaign-processed{background:#e8edf3;color:#526173}.pill.campaign-in_progress{background:#fff0d7;color:#9b5d00}.pill.campaign-rejected{background:#ffe1e4;color:#ae2331}.calendar-head{display:flex;align-items:center;gap:10px;margin:4px 0 14px}.calendar-head h3{margin:0 8px;text-transform:capitalize;min-width:190px}.campaign-calendar{background:#fff;border:1px solid #dfe6ee;border-radius:16px;overflow:hidden}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays>div{padding:11px;text-align:center;font-size:12px;font-weight:900;color:#6f8094;background:#f6f8fb;border-right:1px solid #e8edf2}.calendar-day{min-height:135px;padding:8px;border-right:1px solid #e8edf2;border-top:1px solid #e8edf2;background:#fff;min-width:0}.calendar-day.outside{background:#f8fafc;color:#a8b3c0}.calendar-day.today{box-shadow:inset 0 0 0 2px #1677ff}.day-number{font-size:12px;font-weight:900;margin-bottom:7px}.day-events{display:grid;gap:5px}.calendar-event{border:0;border-left:4px solid #738399;border-radius:6px;padding:5px 6px;text-align:left;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;background:#e8edf3;color:#263548}.calendar-event.campaign-active,.calendar-event.campaign-approved{background:#dcf8eb;border-color:#31d48d;color:#087a4b}.calendar-event.campaign-scheduled{background:#dff0ff;border-color:#168dff;color:#0d68cf}.calendar-event.campaign-in_progress,.calendar-event.campaign-received{background:#fff2ce;border-color:#ffb443;color:#805600}.calendar-event.campaign-rejected{background:#ffe1e4;border-color:#ff5b66;color:#ae2331}.calendar-event.campaign-expired,.calendar-event.campaign-processed{background:#edf1f5;border-color:#98a6b6;color:#59687a}.campaign-modal{width:min(760px,100%)}.campaign-editor-audio{width:100%;margin:18px 0}.modal-actions{display:flex;justify-content:space-between;gap:12px;margin-top:20px;flex-wrap:wrap}@media(max-width:900px){.calendar-day{min-height:105px}.calendar-event{font-size:10px}.campaign-filters{width:100%}.campaign-filters select{flex:1}}@media(max-width:650px){.campaign-calendar{overflow:auto}.calendar-weekdays,.calendar-grid{min-width:760px}.campaign-toolbar{align-items:stretch}.campaign-tabs{width:max-content}.campaign-filters{display:grid;grid-template-columns:1fr}.campaign-filters select{width:100%}.campaign-table audio{min-width:180px}}

/* Bradioo Dashboard v2.5 */
.user-cell{display:flex;align-items:center;gap:12px}.actions{display:flex;gap:8px;flex-wrap:wrap}
.avatar{display:block;object-fit:cover;border-radius:50%;background:#eaf0f8;border:3px solid #fff;box-shadow:0 8px 24px rgba(15,23,42,.12)}
.avatar.tiny{width:38px;height:38px;min-width:38px;border-width:2px}.avatar.large{width:112px;height:112px;margin:0 auto 18px}
.avatar.placeholder{display:flex;align-items:center;justify-content:center;font-weight:800;color:#1677ff;background:linear-gradient(135deg,#eaf3ff,#dce9ff)}
.profile-layout{display:grid;grid-template-columns:260px 1fr;gap:20px}.profile-layout>.card:last-child{grid-column:2}.profile-card{text-align:center;align-self:start}
.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.contact-card{min-height:260px}.contact-card h2{margin-top:8px}.contact-card a{color:#1677ff;font-weight:700;text-decoration:none}.contact-card a:hover{text-decoration:underline}.manager-card{text-align:center}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:800;color:#1677ff}
.btn.danger{background:#fff0f0;color:#c62828;border:1px solid #ffcaca}.btn.danger:hover{background:#ffe5e5}
@media(max-width:900px){.profile-layout,.contact-grid{grid-template-columns:1fr}.profile-layout>.card:last-child{grid-column:auto}}


.company-filter-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}.company-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:18px}.company-admin-card{display:flex;flex-direction:column;gap:18px}.company-admin-card.is-archived{opacity:.82;background:#f8fafc}.company-card-head,.company-title-row,.company-contact-line{display:flex;align-items:center;justify-content:space-between;gap:12px}.company-title-row h3{margin:0}.company-contact-line{font-size:13px;color:#64748b;border-top:1px solid #e5e7eb;padding-top:14px}.company-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.company-metrics>div{background:#f8fafc;border:1px solid #e7edf5;border-radius:12px;padding:12px}.company-metrics b,.company-metrics span{display:block}.company-metrics span{font-size:12px;color:#64748b;margin-top:4px}.company-metrics.large{grid-template-columns:repeat(5,1fr);margin:20px 0}.company-metrics.large b{font-size:20px}.pill.active{background:#dcfce7;color:#166534}.pill.archived{background:#e2e8f0;color:#475569}.btn.warning{background:#fff7ed;color:#c2410c;border:1px solid #fed7aa}.company-detail-modal{max-width:850px}.company-detail-hero{display:grid;grid-template-columns:1fr 1fr;gap:18px}.company-detail-hero>div{display:flex;flex-direction:column;gap:6px;padding:18px;background:#f8fafc;border-radius:14px}.company-address{border-top:1px solid #e5e7eb;padding-top:18px}.danger-modal{max-width:600px}.danger-box{background:#fff1f2;border:1px solid #fecdd3;color:#9f1239;border-radius:14px;padding:18px;margin-bottom:18px}@media(max-width:760px){.company-card-grid{grid-template-columns:1fr}.company-metrics,.company-metrics.large{grid-template-columns:repeat(2,1fr)}.company-detail-hero{grid-template-columns:1fr}.company-contact-line{align-items:flex-start;flex-direction:column}}

/* v2.7 beheerderrol en supporttoewijzing */
.ticket-assignment{display:flex;align-items:flex-end;gap:12px;margin:0 0 18px;padding:14px;background:#f6f9fd;border:1px solid #dce6f2;border-radius:12px}
.ticket-assignment .field{flex:1;margin:0}
.ticket-assignment select{width:100%}


/* Bradioo Dashboard v2.9 */
.topbar-actions{display:flex;align-items:center;gap:10px}
.notification-button{position:relative;width:42px;height:42px;border:1px solid #dce4ed;background:#fff;border-radius:12px;cursor:pointer;font-size:18px}
.notification-button .badge{position:absolute;right:-6px;top:-6px}
.notification-panel{position:fixed;z-index:40;right:24px;top:68px;width:min(390px,calc(100vw - 32px));max-height:70vh;overflow:auto;background:#fff;border:1px solid #dfe6ee;border-radius:16px;box-shadow:0 24px 70px #07111f35}
.notification-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid #e6ebf0}
.close-notifications{border:0;background:#edf1f5;width:32px;height:32px;border-radius:9px;cursor:pointer}
.notification-list{display:grid}
.notification-item{display:grid;grid-template-columns:38px 1fr;gap:10px;text-align:left;border:0;border-bottom:1px solid #edf1f5;background:#fff;padding:14px 16px;cursor:pointer}
.notification-item:hover{background:#f5f9ff}.notification-item small{display:block;color:#75859a;margin-top:4px}.notification-icon{font-size:20px}
.invoice-stats{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:20px}
.invoice-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}
.invoice-tabs{display:flex;gap:8px;flex-wrap:wrap}
.invoice-toolbar input{width:min(420px,100%);padding:11px 13px;border:1px solid #d9e1ea;border-radius:10px;background:#fff}
.invoice-archived{opacity:.75;background:#f8fafc}
@media(max-width:850px){.invoice-stats{grid-template-columns:1fr 1fr}.invoice-toolbar{align-items:stretch;flex-direction:column}.invoice-toolbar input{width:100%}}
@media(max-width:520px){.invoice-stats{grid-template-columns:1fr}.notification-panel{right:16px;top:64px}}


/* Bradioo Control Center v3.0 */
.control-hero,.crm-hero{display:flex;justify-content:space-between;align-items:center;gap:24px;background:linear-gradient(135deg,#07111f,#102b4c);color:#fff;border-radius:20px;padding:28px 30px;margin-bottom:20px}
.control-hero h2,.crm-hero h2{font-size:30px;margin:5px 0}.control-hero p,.crm-hero p{margin:0;color:#bfd0e4}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:800;color:#57a6ff}
.control-stats{grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:20px}.control-stat{display:flex;gap:12px;align-items:center}.control-stat>span{font-size:24px}.control-stat small{display:block;color:#728197}.control-stat strong{font-size:22px}
.control-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.card-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.card-title h3{margin:0}.text-button{border:0;background:none;color:#1677ff;font-weight:700;cursor:pointer;padding:4px}
.compact-stream,.activity-row,.crm-list-row{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid #edf1f5}.compact-stream>div,.activity-row>div{flex:1}.compact-stream small,.activity-row small,.crm-list-row small{display:block;color:#7c8a9c}.compact-stream>span{font-weight:800}
.timeline-item,.quick-row{display:flex;width:100%;text-align:left;border:0;background:none;padding:10px 0;border-bottom:1px solid #edf1f5;cursor:pointer}.timeline-item time{width:55px;font-weight:800;color:#1677ff}.timeline-item span,.quick-row{flex:1}.timeline-item small,.quick-row small{display:block;color:#7c8a9c;margin-top:2px}
.quick-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}.quick-columns h4{margin:0 0 8px}
.monitoring-stats{grid-template-columns:repeat(4,1fr);margin-bottom:18px}.monitor-list{display:grid;gap:10px}.monitor-row{display:grid;grid-template-columns:18px 1fr 110px 80px 110px 20px;align-items:center;text-align:left;border:1px solid #e2e8f0;cursor:pointer}.monitor-row:hover{border-color:#66a7ff;transform:translateY(-1px)}.monitor-main small,.monitor-row>div small{display:block;color:#7b899a}.monitor-row>div:not(.monitor-main){text-align:center}
.wide-modal{max-width:900px}.stream-detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:22px}.stream-detail-grid>div{background:#f4f7fb;padding:14px;border-radius:12px}.stream-detail-grid small,.stream-detail-grid b{display:block}
.history-chart{height:190px;display:flex;align-items:flex-end;gap:3px;padding:12px;background:#f5f8fc;border-radius:12px;overflow:hidden}.history-bar{flex:1;min-width:3px;background:linear-gradient(#1677ff,#78b9ff);border-radius:3px 3px 0 0}.history-labels{display:flex;justify-content:space-between;color:#8390a0;font-size:12px}
.full-search{width:100%;padding:12px;border:1px solid #dce3eb;border-radius:10px;margin-bottom:14px}.activity-log-row{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid #edf1f5}.activity-big-icon{font-size:22px}.activity-log-row small{display:block;color:#7d8b9b}.activity-log-row time{color:#718096;font-size:13px}
.master-event{display:block;width:100%;text-align:left;border:0;border-radius:5px;padding:4px 6px;margin-bottom:3px;font-size:11px;cursor:pointer}.master-event small{display:block;opacity:.75}.event-campaign{background:#dbeafe;color:#164e9a}.event-invoice{background:#fee2e2;color:#991b1b}.event-ticket{background:#fef3c7;color:#854d0e}
.crm-manager{display:flex;align-items:center;gap:12px}.crm-manager span,.crm-manager small,.crm-manager b{display:block}.crm-manager small,.crm-manager span{color:#bfd0e4}.crm-stats{grid-template-columns:repeat(5,1fr)}.crm-tabs{display:flex;gap:6px;overflow:auto;margin:18px 0}.crm-tabs button{border:1px solid #dce4ec;background:#fff;padding:10px 14px;border-radius:10px;white-space:nowrap;cursor:pointer}.crm-tabs button.active{background:#07111f;color:#fff}.back-button{margin-bottom:12px}
@media(max-width:1100px){.control-stats{grid-template-columns:repeat(3,1fr)}.monitor-row{grid-template-columns:18px 1fr 80px 70px 20px}.monitor-row>div:nth-of-type(4){display:none}.crm-stats{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.control-grid{grid-template-columns:1fr}.control-hero,.crm-hero{align-items:flex-start;flex-direction:column}.control-stats{grid-template-columns:1fr 1fr}.quick-columns{grid-template-columns:1fr}.monitoring-stats{grid-template-columns:1fr 1fr}.monitor-row{grid-template-columns:18px 1fr 70px 20px}.monitor-row>div:nth-of-type(3),.monitor-row>div:nth-of-type(4){display:none}.stream-detail-grid{grid-template-columns:1fr 1fr}.crm-stats{grid-template-columns:1fr 1fr}}


/* Bradioo Dashboard v3.1 – interne agenda-items */
.agenda-legend{display:flex;flex-wrap:wrap;gap:14px;margin:0 0 16px;color:#637287;font-size:13px}
.agenda-legend span{display:flex;align-items:center;gap:6px}.legend-dot{display:inline-block;width:12px;height:12px;border-radius:4px}
.day-number{display:flex;justify-content:space-between;align-items:center}.day-add{opacity:0;border:0;background:#eaf2ff;color:#176fd1;border-radius:6px;width:22px;height:22px;cursor:pointer;font-weight:800}
.calendar-day:hover .day-add{opacity:1}
.event-vacation{background:#ede9fe;color:#5b21b6}.event-deadline{background:#ffedd5;color:#9a3412}.event-meeting{background:#dcfce7;color:#166534}.event-other{background:#e2e8f0;color:#334155}
.legend-dot.event-campaign{background:#dbeafe}.legend-dot.event-invoice{background:#fee2e2}.legend-dot.event-ticket{background:#fef3c7}.legend-dot.event-vacation{background:#ede9fe}.legend-dot.event-deadline{background:#ffedd5}.legend-dot.event-meeting{background:#dcfce7}
.field.full{grid-column:1/-1}.field textarea{width:100%;border:1px solid #d9e1ea;border-radius:10px;padding:11px 12px;font:inherit;resize:vertical}
.modal-actions{display:flex;justify-content:space-between;gap:10px;margin-top:14px}


/* Bradioo Dashboard v3.2 – activiteitenlog beheer */
.activity-toolbar{display:flex;align-items:center;gap:16px;margin-bottom:14px}
.activity-toolbar .full-search{margin-bottom:0;flex:1}
.danger-notice{background:#fff1f2;border:1px solid #fecdd3;color:#881337;padding:16px;border-radius:12px;margin-bottom:18px}
.danger-notice p{margin:7px 0 0;color:#9f1239}
@media(max-width:620px){.activity-toolbar{align-items:stretch;flex-direction:column}}


/* Bradioo Dashboard v3.3 – klantbeleving */
.content-filterbar{display:flex;gap:10px;margin-bottom:16px}.content-filterbar input{flex:1}.content-filterbar input,.content-filterbar select,#stats-company{border:1px solid #d8e1ea;border-radius:10px;padding:11px;background:#fff}
.content-items{display:grid;gap:12px}.audio-card,.file-card,.incident-card{display:grid;grid-template-columns:54px 1fr auto;gap:16px;align-items:center}.audio-icon,.file-type{width:50px;height:50px;border-radius:14px;display:grid;place-items:center;background:#e8f2ff;color:#076fd5;font-size:24px;font-weight:900}.audio-info h3,.file-card h3,.news-card h3,.incident-card h3{margin:3px 0}.audio-info p,.file-card p,.news-card p,.incident-card p{color:#64748b}.audio-info audio{width:min(500px,100%);height:38px}.audio-actions,.file-actions{display:flex;gap:7px;align-items:center}.file-card small,.news-card small,.incident-card small{color:#7a899b}.news-list{grid-template-columns:repeat(2,minmax(0,1fr))}.news-card{position:relative}.incident-card{grid-template-columns:1fr auto;border-left:5px solid #f59e0b}.incident-card.resolved{border-left-color:#22c55e}.incident-card.maintenance{border-left-color:#64748b}.success-empty{color:#15803d}
.stats-summary{grid-template-columns:repeat(4,1fr);margin-bottom:18px}.listener-chart{height:250px;display:flex;gap:2px;align-items:flex-end;background:#f7f9fc;border-radius:12px;padding:15px;overflow:hidden}.listener-bar{flex:1;min-width:2px;background:linear-gradient(#087cf0,#85c4ff);border-radius:3px 3px 0 0}
.client-radio-hero{background:linear-gradient(135deg,#07111f,#15395f);color:#fff;border-radius:22px;padding:28px;display:grid;grid-template-columns:1fr auto;gap:22px;align-items:center}.client-radio-hero h2{font-size:32px;margin:4px 0}.client-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.client-links a{background:#fff;color:#07111f;text-decoration:none;padding:10px 13px;border-radius:10px;font-weight:800}
@media(max-width:760px){.news-list{grid-template-columns:1fr}.audio-card,.file-card{grid-template-columns:46px 1fr}.audio-actions,.file-actions{grid-column:1/-1}.stats-summary{grid-template-columns:1fr 1fr}.content-filterbar{flex-direction:column}}

.customer-feature-stream{background:linear-gradient(135deg,#07111f,#12375e);color:#fff;border:0;box-shadow:0 20px 55px #07111f2c}
.customer-feature-stream .muted,.customer-feature-stream .custom-player small{color:#bfd0e4}
.customer-feature-stream .now{font-size:25px;font-weight:800;margin:22px 0}
.customer-feature-stream .custom-player{background:#ffffff12;border-color:#ffffff25}
.customer-feature-stream .client-links a{background:#fff;color:#07111f}

.news-feed{display:block}.news-article{width:100%;margin-bottom:18px;padding:28px 32px}.news-article header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:1px solid #e8edf3;padding-bottom:18px;margin-bottom:22px}.news-article h2{font-size:28px;margin:5px 0}.news-body{font-size:16px;line-height:1.75;color:#263548}.news-body h2{font-size:26px;margin:28px 0 10px}.news-body h3{font-size:21px;margin:24px 0 8px}.news-body blockquote{border-left:4px solid #1680ef;background:#f2f7fd;margin:20px 0;padding:14px 18px}.news-body ul,.news-body ol{padding-left:24px}.news-actions{display:flex;gap:8px}.editor-toolbar{display:flex;flex-wrap:wrap;gap:6px;padding:9px;background:#f1f5f9;border:1px solid #d9e1ea;border-bottom:0;border-radius:10px 10px 0 0}.editor-toolbar button{border:1px solid #d3dce6;background:#fff;border-radius:7px;padding:7px 10px;cursor:pointer}.rich-editor{min-height:280px;border:1px solid #d9e1ea;border-radius:0 0 10px 10px;padding:16px;background:#fff;line-height:1.65;outline:none}.rich-editor:focus{border-color:#1680ef;box-shadow:0 0 0 3px #1680ef18}@media(max-width:650px){.news-article{padding:20px}.news-article header{flex-direction:column}.news-actions{width:100%}}

.bradioo-audio-player{display:flex;align-items:center;gap:12px;background:#f3f7fc;border:1px solid #dce6f0;border-radius:14px;padding:10px 12px;margin-top:12px;max-width:640px}.audio-play{width:42px;height:42px;border:0;border-radius:50%;background:#087cf0;color:#fff;font-size:17px;cursor:pointer;flex:0 0 auto}.audio-track{flex:1}.audio-progress{height:7px;background:#d9e4ef;border-radius:99px;overflow:hidden;cursor:pointer}.audio-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,#087cf0,#5bb4ff);border-radius:99px}.audio-track small{display:block;color:#738296;margin-top:6px}.audio-dropzone{position:relative;border:2px dashed #a9bdd2;border-radius:14px;padding:30px;text-align:center;background:#f8fbff;cursor:pointer}.audio-dropzone.drag{border-color:#087cf0;background:#edf6ff}.audio-dropzone span{display:block;color:#74869a;margin-top:5px}.audio-dropzone input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.audio-file-list{display:grid;gap:6px;margin-top:10px}.audio-file-list>div{display:flex;justify-content:space-between;gap:12px;background:#f4f7fa;padding:8px 10px;border-radius:8px}.audio-file-list span{color:#75869a}.upload-progress-wrap{position:relative;height:30px;background:#edf2f7;border-radius:999px;overflow:hidden;margin:16px 0}.upload-progress-wrap>div{height:100%;width:0;background:linear-gradient(90deg,#087cf0,#5cbcff);transition:width .15s}.upload-progress-wrap>span{position:absolute;inset:0;display:grid;place-items:center;font-weight:800;color:#07111f}


/* Bradioo Dashboard v3.6 */
.audio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.audio-card{display:flex;flex-direction:column;align-items:stretch;position:relative;min-width:0}
.audio-card .audio-icon{margin-bottom:10px}
.audio-card .audio-info{flex:1;min-width:0}
.audio-card .audio-actions{margin-top:14px;justify-content:flex-start}
.audio-card .bradioo-audio-player{max-width:none}
.audio-select{display:flex;align-items:center;gap:7px;font-size:12px;color:#66778a;margin-bottom:8px}
.bulk-toolbar{display:flex;align-items:center;gap:16px;margin:0 0 15px;padding:11px 13px;background:#f5f8fc;border:1px solid #dfe7ef;border-radius:12px}
.bulk-toolbar #audio-selected-count{margin-left:auto;color:#66778a}
.audio-filterbar{grid-template-columns:minmax(220px,1fr) repeat(3,minmax(160px,220px))}
@media(max-width:1150px){.audio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.audio-grid{grid-template-columns:1fr}.bulk-toolbar{align-items:stretch;flex-direction:column}.bulk-toolbar #audio-selected-count{margin-left:0}.audio-filterbar{display:flex;flex-direction:column}}


/* Bradioo Dashboard v4.0.2 – externe player en appknoppen */
.station-player{margin-bottom:14px}
.station-player-copy{flex:1}
.station-access{margin:14px 0 16px}
.station-access-title{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#74859a;margin-bottom:9px}
.station-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.station-link{display:flex;align-items:center;gap:10px;padding:11px 12px;border:1px solid #d9e3ed;border-radius:12px;background:#fff;text-decoration:none;color:#132238;transition:.15s ease;min-width:0}
.station-link:hover{transform:translateY(-1px);border-color:#1680ef;box-shadow:0 8px 24px #0b4f8c18}
.station-link>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#eaf4ff;color:#087cf0;font-weight:900;flex:0 0 auto}
.station-link b,.station-link small{display:block}.station-link b{font-size:13px}.station-link small{font-size:11px;color:#74859a;margin-top:2px}
.customer-feature-stream .station-access-title{color:#bfd0e4}
.customer-feature-stream .station-link{background:#ffffff10;border-color:#ffffff25;color:#fff}
.customer-feature-stream .station-link:hover{background:#ffffff18;border-color:#69b4ff}
.customer-feature-stream .station-link small{color:#bfd0e4}
.customer-feature-stream .station-link>span{background:#ffffff18;color:#fff}
@media(max-width:900px){.station-link-grid{grid-template-columns:1fr}}


/* Bradioo Dashboard v4.0.3 – klantmenu en luistermogelijkheden */
.customer-access-panel{margin-top:20px;padding:26px}
.customer-access-head h2{margin:5px 0 4px;font-size:25px}
.customer-access-head p{margin:0 0 18px;color:#6f7f92}
.customer-access-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.customer-access-link{display:grid;grid-template-columns:46px 1fr 20px;gap:12px;align-items:center;padding:15px;border:1px solid #dae4ee;border-radius:14px;background:#fff;color:#132238;text-decoration:none;transition:.16s ease}
.customer-access-link:hover{transform:translateY(-2px);border-color:#1680ef;box-shadow:0 12px 30px #0a4d8718}
.customer-access-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:#eaf4ff;color:#087cf0;font-size:21px;font-weight:900}
.customer-access-link b,.customer-access-link small{display:block}
.customer-access-link small{color:#74859a;margin-top:3px;line-height:1.3}
.customer-access-link>i{font-style:normal;font-size:25px;color:#8392a5}
@media(max-width:950px){.customer-access-grid{grid-template-columns:1fr}}


/* Bradioo Dashboard v4.0.4 */
.customer-feature-stream .station-access{
  background:#ffffff0d;
  border:1px solid #ffffff1f;
  border-radius:14px;
  padding:14px;
}
.customer-feature-stream .station-access-title{
  margin-bottom:10px;
}


/* Bradioo Dashboard v4.0.5 */
.customer-feature-stream .station-access{
  display:block;
  margin-top:16px;
  margin-bottom:16px;
}
.customer-feature-stream .station-link-grid{
  display:grid;
}


/* Bradioo Dashboard v4.0.6 */
.station-access[hidden],.customer-access-panel[hidden]{display:none!important}
.customer-feature-stream .station-access:not([hidden]){
  display:block!important;
  margin-top:16px;
  padding:14px;
  background:#ffffff10;
  border:1px solid #ffffff2b;
  border-radius:14px;
}

.app-version{margin-top:8px;font-size:11px;opacity:.55;letter-spacing:.04em}


/* Bradioo Dashboard v4.0.9 – Mijn webapp / Mijn apps */
.webapp-card{display:grid;grid-template-columns:72px 1fr;gap:22px;align-items:center;max-width:760px;padding:30px}
.webapp-icon{width:68px;height:68px;border-radius:18px;display:grid;place-items:center;background:#eaf4ff;color:#087cf0;font-size:30px;font-weight:900}
.webapp-card h2{margin:5px 0 8px}.webapp-card p{color:#6e7f92;margin:0 0 18px}
.app-download-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:900px}
.app-download-card{display:grid;grid-template-columns:54px 1fr 24px;align-items:center;gap:14px;padding:20px;border:1px solid #d9e3ed;border-radius:16px;background:#fff;text-decoration:none;color:#132238;transition:.16s ease}
.app-download-card:hover{transform:translateY(-2px);border-color:#1680ef;box-shadow:0 12px 30px #0a4d8718}
.app-download-card>span{width:52px;height:52px;border-radius:15px;display:grid;place-items:center;background:#eaf4ff;color:#087cf0;font-size:24px;font-weight:900}
.app-download-card b,.app-download-card small{display:block}.app-download-card small{color:#74859a;margin-top:4px}.app-download-card>i{font-style:normal;font-size:28px;color:#8392a5}
@media(max-width:760px){.webapp-card{grid-template-columns:1fr}.app-download-grid{grid-template-columns:1fr}}


/* Bradioo Dashboard v4.1.0 – gecombineerd Mijn apps */
.app-access-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1100px}
.app-download-card.web>span{background:#eaf4ff;color:#087cf0}
.app-download-card.ios>span{background:#eef1f5;color:#111827}
.app-download-card.android>span{background:#ecfdf3;color:#15803d}
@media(max-width:980px){.app-access-grid{grid-template-columns:1fr}}

.file-action-pair{display:flex;flex-wrap:wrap;gap:6px}
.edit-file-note{margin:14px 0;padding:11px 13px;border-radius:10px;background:#f4f7fa;color:#66778a;font-size:13px}
.audio-card .audio-actions,.file-card .file-actions{display:flex;flex-wrap:wrap;gap:7px}


/* Bradioo Dashboard v4.1.6 – sidebar op lage laptopschermen */
@media (min-width:1001px){
  .sidebar{
    display:flex;
    flex-direction:column;
    overflow:hidden;
  }
  .sidebar .logo{flex:0 0 auto}
  .sidebar .nav{
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    overflow-x:hidden;
    padding-right:4px;
    padding-bottom:12px;
    scrollbar-width:thin;
    scrollbar-color:#2a405b transparent;
  }
  .sidebar .nav::-webkit-scrollbar{width:6px}
  .sidebar .nav::-webkit-scrollbar-track{background:transparent}
  .sidebar .nav::-webkit-scrollbar-thumb{background:#2a405b;border-radius:999px}
  .sidebar-foot{
    position:static;
    left:auto;
    right:auto;
    bottom:auto;
    flex:0 0 auto;
    margin-top:10px;
    padding:14px 4px 0;
    background:var(--bg);
    line-height:1.35;
  }
  .sidebar-foot .app-version{margin-top:5px;white-space:nowrap}
}
@media (min-width:1001px) and (max-height:820px){
  .sidebar{padding-top:17px;padding-bottom:14px}
  .sidebar .logo{margin-bottom:18px}
  .nav{gap:2px}
  .nav button{padding:9px 12px;font-size:14px}
  .sidebar-foot{font-size:12px;padding-top:10px;margin-top:7px}
}
@media (min-width:1001px) and (max-height:680px){
  .sidebar .logo{width:145px;margin-bottom:12px}
  .nav button{padding:7px 11px;font-size:13px}
  .sidebar-foot{font-size:11px}
}


/* Bradioo Dashboard v4.1.7 – campagnes */
.campaign-reference{display:inline-flex;padding:3px 8px;border-radius:999px;background:#eaf4ff;color:#087cf0;font-size:11px;font-weight:900;letter-spacing:.08em;margin-bottom:5px}
.campaign-explanation{margin-bottom:16px;padding:20px 22px;border-left:4px solid #087cf0}
.campaign-explanation h3{margin:0 0 8px}
.campaign-explanation p{margin:6px 0;color:#5f7186;line-height:1.55}
.campaign-form-help{margin:14px 0;padding:12px 14px;background:#f2f7fd;border:1px solid #d7e7f7;border-radius:10px;color:#4c6177;line-height:1.5}
.campaign-custom-player{min-width:220px;margin:0 0 7px}
.campaign-custom-player.compact{padding:8px 9px;min-width:190px}
.campaign-custom-player.compact .audio-play{width:36px;height:36px}
.campaign-locked{font-size:11px;line-height:1.45}
.campaign-table td{vertical-align:middle}
@media(max-width:900px){.campaign-custom-player{min-width:170px}}


/* Bradioo Dashboard v4.1.9 */
.campaign-history{margin-top:24px;padding-top:20px;border-top:1px solid #e2e9f0}
.campaign-history .section-head{margin:0 0 14px}
.campaign-history h3{margin:0}
.campaign-log-item{position:relative;display:grid;grid-template-columns:16px 1fr;gap:10px;padding:0 0 18px}
.campaign-log-item:before{content:"";position:absolute;left:6px;top:14px;bottom:0;width:2px;background:#dce7f1}
.campaign-log-item:last-child:before{display:none}
.campaign-log-dot{width:14px;height:14px;margin-top:3px;border-radius:50%;background:#087cf0;box-shadow:0 0 0 4px #e8f3ff;z-index:1}
.campaign-log-item b,.campaign-log-item small{display:block}
.campaign-log-item small{margin-top:3px;color:#74859a}
.campaign-log-note{margin-top:7px;padding:9px 11px;border-radius:9px;background:#f4f7fa;color:#51657a;font-size:13px;white-space:pre-wrap}
.campaign-view-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}
.campaign-view-grid>div{padding:12px 14px;border:1px solid #dfe7ef;border-radius:11px;background:#f8fafc}
.campaign-view-grid small,.campaign-view-grid b{display:block}
.campaign-view-grid small{color:#74859a;margin-bottom:4px}
.campaign-view-description{margin:14px 0;padding:14px;border:1px solid #dfe7ef;border-radius:11px}
.campaign-view-description small{color:#74859a}.campaign-view-description p{margin:6px 0 0;white-space:pre-wrap}
@media(max-width:650px){.campaign-view-grid{grid-template-columns:1fr}}


/* Bradioo Dashboard v4.2.0 */
.campaign-view-grid b{font-weight:800}
.campaign-history.compact-history{margin-top:22px}
.campaign-history-header{display:flex;align-items:center;justify-content:space-between;gap:16px}
.campaign-history-header h3{margin:0 0 3px}
.campaign-history-content{margin-top:16px}
.campaign-history-content[hidden]{display:none!important}
@media(max-width:650px){.campaign-history-header{align-items:flex-start;flex-direction:column}}


/* Bradioo Dashboard v4.2.1 */
.client-campaign-readonly input,
.client-campaign-readonly select,
.client-campaign-readonly textarea,
.client-campaign-readonly .campaign-history{
  display:none!important;
}
.client-campaign-readonly .campaign-view-grid>div{
  pointer-events:none;
  user-select:text;
}
.client-campaign-readonly .campaign-view-grid b{
  color:#122033;
}


/* Bradioo Dashboard v4.2.2 */
.campaign-filters{display:flex;flex-wrap:wrap;gap:9px}
.campaign-filters select{min-width:165px}
.agenda-visibility-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0 0 16px;padding:12px 14px;background:#fff;border:1px solid #dfe7ef;border-radius:12px}
.agenda-visibility-toolbar label{display:flex;align-items:center;gap:6px;color:#52667b;font-size:13px}
.agenda-visibility-toolbar input{accent-color:#087cf0}


/* Bradioo Dashboard v4.2.3 */
.agenda-visibility-toolbar{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  margin:0 0 16px;
  padding:12px 14px;
  background:#fff;
  border:1px solid #dfe7ef;
  border-radius:12px;
}
.agenda-visibility-toolbar label{
  display:flex;
  align-items:center;
  gap:6px;
  color:#52667b;
  font-size:13px;
}
.agenda-visibility-toolbar input{accent-color:#087cf0}


/* Bradioo Dashboard v4.2.4 */
.campaign-table{table-layout:fixed;width:100%}
.campaign-table th:nth-child(1){width:24%}
.campaign-table th:nth-child(2){width:10%}
.campaign-table th:nth-child(3){width:11%}
.campaign-table th:nth-child(4){width:16%}
.campaign-table th:nth-child(5){width:18%}
.campaign-table th:nth-child(6){width:9%}
.campaign-table th:nth-child(7){width:12%}
.campaign-table td{overflow-wrap:anywhere}
.campaign-detail-tabs{display:flex;gap:6px;margin:20px 0 12px;border-bottom:1px solid #dfe7ef}
.campaign-detail-tab{border:0;background:transparent;padding:10px 14px;font-weight:800;color:#6d7f93;cursor:pointer;border-bottom:3px solid transparent}
.campaign-detail-tab.active{color:#087cf0;border-bottom-color:#087cf0}
.campaign-detail-panel{display:none}
.campaign-detail-panel.active{display:block}
.campaign-description-readonly label{display:block;font-weight:800;margin-bottom:8px}
.campaign-description-readonly>div{min-height:110px;padding:14px;border:1px solid #dfe7ef;border-radius:11px;background:#f8fafc;white-space:pre-wrap;line-height:1.55;color:#31455c}
@media(max-width:1100px){
 .campaign-table{table-layout:auto}
}


/* Bradioo Dashboard v4.3.0 – campagnekaarten */
.campaign-card-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.campaign-overview-card{background:#fff;border:1px solid #dfe7ef;border-radius:18px;padding:20px;box-shadow:0 10px 30px #10233d0d;display:flex;flex-direction:column;gap:18px;min-width:0}
.campaign-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.campaign-card-head h3{margin:7px 0 8px;font-size:21px;line-height:1.2}
.campaign-card-meta{display:flex;flex-wrap:wrap;gap:10px 18px;color:#64778d;font-size:13px}
.campaign-card-meta span{display:flex;gap:6px}
.campaign-card-meta b{color:#2d4158}
.campaign-card-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,1.1fr);gap:18px;align-items:start}
.campaign-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.campaign-info-grid>div{padding:12px 13px;border:1px solid #e3e9f0;border-radius:12px;background:#f8fafc}
.campaign-info-grid small,.campaign-info-grid strong{display:block}
.campaign-info-grid small{color:#7b8b9e;margin-bottom:4px}
.campaign-info-grid strong{color:#132238}
.campaign-audio-block>small{display:block;color:#7b8b9e;margin-bottom:8px;font-weight:700}
.campaign-audio-block .campaign-custom-player{min-width:0;width:100%;margin-bottom:8px}
.campaign-card-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding-top:4px;border-top:1px solid #edf1f5}
.campaign-card-actions .campaign-locked{margin-right:auto}
@media(max-width:1200px){.campaign-card-list{grid-template-columns:1fr}}
@media(max-width:760px){
 .campaign-overview-card{padding:16px}
 .campaign-card-head{flex-direction:column}
 .campaign-card-body{grid-template-columns:1fr}
 .campaign-card-actions{justify-content:flex-start;flex-wrap:wrap}
}


/* Bradioo Dashboard v4.3.1 */
.client-campaign-readonly-v431 form,
.client-campaign-readonly-v431 input,
.client-campaign-readonly-v431 select,
.client-campaign-readonly-v431 textarea,
.client-campaign-readonly-v431 .campaign-history,
.client-campaign-readonly-v431 [id*="campaign-history"],
.client-campaign-readonly-v431 [data-campaign-tab],
.client-campaign-readonly-v431 [data-campaign-panel]{
  display:none!important;
}
.client-campaign-readonly-v431 .campaign-view-grid>div{
  pointer-events:none;
  user-select:text;
}


/* Bradioo Dashboard v4.4.0 – campagnearchief */
.campaign-archive-tabs{display:flex;gap:6px;margin:0 0 16px}
.campaign-overview-card.is-archived{background:#fbfcfe;border-style:dashed}
.campaign-overview-card.is-archived .campaign-reference{background:#eef1f5;color:#637487}
.campaign-card-actions .btn{white-space:nowrap}

/* Bradioo Dashboard v4.4.2 */
.campaign-bulk-toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 16px;padding:12px 14px;border:1px solid #dfe7ef;border-radius:12px;background:#fff}
.campaign-select-all{display:flex;align-items:center;gap:7px;font-weight:800}
.campaign-bulk-actions{display:flex;gap:8px;margin-left:auto;flex-wrap:wrap}
.campaign-card-select{position:absolute;top:14px;left:14px;z-index:2;padding:6px;border-radius:8px;background:#fff;border:1px solid #dce5ee}
.campaign-card-select input{width:16px;height:16px;margin:0;accent-color:#087cf0}
.campaign-overview-card{position:relative}
.campaign-overview-card .campaign-card-select~.campaign-card-head{padding-left:35px}
@media(max-width:700px){.campaign-bulk-actions{width:100%;margin-left:0}}


/* Bradioo Dashboard v4.4.3 – support */
.ticket-modal{max-width:860px}
.ticket-assignment-card{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(260px,1.2fr);gap:16px;align-items:end;margin:0 0 18px;padding:14px 16px;border:1px solid #dfe7ef;border-radius:12px;background:#f8fafc}
.ticket-assignment-card small,.ticket-assignment-card b{display:block}
.ticket-assignment-card small{color:#74859a;margin-bottom:4px}
.ticket-assignment-control label{display:block;font-size:12px;font-weight:800;color:#52667b;margin-bottom:6px}
.ticket-assignment-control select{width:100%;padding:10px 12px;border:1px solid #cfdae5;border-radius:9px;background:#fff}
.message-author{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.message-author small{display:inline-flex;padding:2px 7px;border-radius:999px;background:#edf3f8;color:#61758b;font-size:10px;font-weight:800}
@media(max-width:650px){.ticket-assignment-card{grid-template-columns:1fr}}


/* Bradioo Dashboard v4.4.4 */
.ticket-assignment-card{
  grid-template-columns:minmax(160px,.8fr) minmax(260px,1.2fr) auto;
}
.ticket-assignment-card #save-assignee-v444{
  align-self:end;
  min-height:42px;
  background:#087cf0;
  color:#fff;
  border-color:#087cf0;
  opacity:1;
}
.ticket-assignment-card #save-assignee-v444:disabled{
  opacity:.65;
  cursor:wait;
}
.ticket-current-assignee b{
  color:#17263a;
}
@media(max-width:800px){
  .ticket-assignment-card{grid-template-columns:1fr}
  .ticket-assignment-card #save-assignee-v444{width:100%}
}


/* Bradioo Dashboard v4.4.5 */
.ticket-assignment-card.compact-assignment{display:block}
.ticket-assignment-card.compact-assignment .ticket-current-assignee{margin-bottom:14px}
.ticket-assignment-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}
.ticket-assignment-row .ticket-assignment-control{min-width:0}
.ticket-assignment-row #save-assignee-v445{min-width:108px;height:42px;padding:0 17px;white-space:nowrap}
.ticket-closed-notice{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:0 0 18px;padding:14px 16px;border:1px solid #f0d4d8;border-radius:12px;background:#fff6f7;color:#7e2c38}
.ticket-closed-notice>div{display:flex;flex-direction:column;gap:3px;flex:1 1 280px}
.ticket-closed-notice b{color:#6f1f2d}
@media(max-width:650px){
 .ticket-assignment-row{grid-template-columns:1fr}
 .ticket-assignment-row #save-assignee-v445{width:100%}
}

/* Bradioo Dashboard v4.5.0 */
.incident-card-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.incident-card{background:#fff;border:1px solid #dfe7ef;border-left:5px solid #7e8fa3;border-radius:16px;padding:18px}.incident-card.impact-info{border-left-color:#3196ff}.incident-card.impact-minor{border-left-color:#e2b037}.incident-card.impact-major{border-left-color:#ee7b32}.incident-card.impact-critical{border-left-color:#d9414f}.incident-card-head{display:flex;justify-content:space-between;gap:12px}.incident-card-head h3{margin:5px 0 8px}.incident-impact{font-size:11px;font-weight:900;text-transform:uppercase;color:#708196}.incident-card-meta{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:#708196}.incident-card-meta span{display:flex;gap:5px}.incident-card-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:15px;padding-top:13px;border-top:1px solid #edf1f5}.incident-modal{max-width:900px}.incident-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.incident-summary-grid>div{padding:12px;border:1px solid #dfe7ef;border-radius:11px;background:#f8fafc}.incident-summary-grid small,.incident-summary-grid b{display:block}.incident-description{padding:14px;border:1px solid #dfe7ef;border-radius:11px;margin-bottom:18px}.incident-action-tabs{display:flex;gap:6px;border-bottom:1px solid #dfe7ef;margin-bottom:14px}.incident-tab-panel{display:none}.incident-tab-panel.active{display:block}.incident-timeline{margin-top:24px;padding-top:18px;border-top:1px solid #dfe7ef}.incident-timeline-item{position:relative;display:grid;grid-template-columns:18px 1fr;gap:10px;padding-bottom:18px}.incident-timeline-item:before{content:"";position:absolute;left:7px;top:16px;bottom:0;width:2px;background:#dce7f1}.incident-timeline-item:last-child:before{display:none}.incident-timeline-dot{width:15px;height:15px;border-radius:50%;background:#087cf0;box-shadow:0 0 0 4px #e9f3ff;margin-top:3px;z-index:1}.incident-timeline-head{display:flex;justify-content:space-between;gap:12px}.incident-status-change{display:inline-flex;padding:3px 8px;border-radius:999px;background:#edf3f8;font-size:11px;font-weight:800}@media(max-width:1000px){.incident-card-list{grid-template-columns:1fr}.incident-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.incident-summary-grid{grid-template-columns:1fr}}


/* Bradioo Dashboard v4.5.1 – storingen tabel en tabs */
.incident-table-wrap{overflow-x:auto}
.incident-table td{vertical-align:middle}
.incident-impact-badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;background:#edf3f8;color:#53677d;white-space:nowrap}
.incident-impact-badge.impact-info{background:#e8f3ff;color:#0874d8}
.incident-impact-badge.impact-minor{background:#fff5d9;color:#8b6912}
.incident-impact-badge.impact-major{background:#fff0e5;color:#a34f18}
.incident-impact-badge.impact-critical{background:#ffe9ec;color:#b92537}
.incident-main-tabs{display:flex;gap:5px;overflow-x:auto;border-bottom:1px solid #dfe7ef;margin:20px 0 15px}
.incident-main-tab{border:0;background:transparent;padding:11px 14px;color:#718298;font-weight:800;white-space:nowrap;border-bottom:3px solid transparent;cursor:pointer}
.incident-main-tab.active{color:#087cf0;border-bottom-color:#087cf0}
.incident-main-panel{display:none}
.incident-main-panel.active{display:block}
.incident-timeline-inline{margin-top:0;padding-top:4px;border-top:0}
.incident-public-check{display:flex;align-items:center}
.incident-public-check label{display:flex;align-items:center;gap:8px}
@media(max-width:800px){.incident-table{min-width:850px}}

/* Bradioo Dashboard v4.6.0 – Devices */
.device-toolbar{display:grid;grid-template-columns:minmax(280px,2fr) repeat(5,minmax(135px,1fr));gap:9px;margin-bottom:14px}.device-toolbar input,.device-toolbar select{width:100%;padding:10px 12px;border:1px solid #cfdae5;border-radius:10px;background:#fff}
.device-ref{display:inline-flex;padding:3px 8px;border-radius:999px;background:#edf3f8;color:#52667b;font-size:10px;font-weight:900}.device-label{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:900;white-space:nowrap}
.device-label.green{background:#e8f8ef;color:#177644}.device-label.orange{background:#fff0e5;color:#a64f18}.device-label.yellow{background:#fff7dc;color:#85670d}.device-label.red{background:#fde9ec;color:#a92131}.device-label.gray{background:#edf1f5;color:#627386}.device-label.blue{background:#e8f3ff;color:#0874d8}
.device-modal{max-width:1000px}.device-form-tabs,.device-detail-tabs{display:flex;gap:5px;overflow-x:auto;border-bottom:1px solid #dfe7ef;margin:0 0 16px}.device-form-panel,.device-detail-panel{display:none}.device-form-panel.active,.device-detail-panel.active{display:block}
.device-detail-header{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:15px}.device-info-grid,.device-client-info{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.device-info-grid>div,.device-client-info>div{padding:12px;border:1px solid #dfe7ef;border-radius:11px;background:#f8fafc}.device-info-grid small,.device-info-grid b,.device-client-info small,.device-client-info b{display:block}.device-info-grid small,.device-client-info small{color:#77899c;margin-bottom:4px}
.device-client-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.device-client-card{background:#fff;border:1px solid #dfe7ef;border-radius:16px;padding:18px;box-shadow:0 8px 24px #10233d0d}.device-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.device-card-head h3{margin:7px 0 13px}.device-card-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:15px;padding-top:13px;border-top:1px solid #edf1f5}.device-client-note{padding:11px;border-radius:10px;background:#f6f9fc;color:#52667b}
.maintenance-timeline{margin-bottom:18px}.maintenance-item{border-left:3px solid #087cf0;padding:2px 0 14px 14px;margin-bottom:9px}.maintenance-item p{margin:5px 0}.device-files-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:18px}.device-file-card{padding:13px;border:1px solid #dfe7ef;border-radius:11px}.device-file-card b,.device-file-card small{display:block}.device-file-card small{margin:5px 0 10px;color:#77899c}
@media(max-width:1250px){.device-toolbar{grid-template-columns:repeat(3,minmax(0,1fr))}.device-toolbar input{grid-column:1/-1}}@media(max-width:800px){.device-client-grid,.device-files-grid{grid-template-columns:1fr}.device-info-grid,.device-client-info{grid-template-columns:repeat(2,minmax(0,1fr))}.device-table{min-width:1100px}}@media(max-width:550px){.device-toolbar,.device-info-grid,.device-client-info{grid-template-columns:1fr}}


/* Bradioo Dashboard v4.6.1 */
.device-form-panel .field small.muted{display:block;margin-top:6px;line-height:1.4}
.device-info-grid+.btn,.device-detail-panel>.btn{margin-top:14px}


/* Bradioo Dashboard v4.6.2 */
.device-optional-note{margin:0 0 14px;padding:10px 12px;border-radius:10px;background:#f6f9fc}


/* Bradioo Dashboard v4.6.4 – Support */
.support-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 16px;border-bottom:1px solid #dfe7ef}
.support-tab{display:flex;align-items:center;gap:7px;border:0;border-bottom:3px solid transparent;background:transparent;padding:11px 14px;color:#6e8095;font-weight:800;cursor:pointer}
.support-tab span{display:inline-flex;min-width:21px;height:21px;align-items:center;justify-content:center;border-radius:999px;background:#edf3f8;font-size:10px}
.support-tab.active{color:#087cf0;border-bottom-color:#087cf0}
.support-tab.active span{background:#e7f2ff;color:#0874d8}
.support-status{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:900;white-space:nowrap}
.support-status.new{background:#e8f3ff;color:#0874d8}
.support-status.in_progress{background:#fff7dc;color:#85670d}
.support-status.closed{background:#e8f8ef;color:#177644}
.support-subject-link{border:0;background:transparent;padding:0;color:#17263a;font-weight:800;text-align:left;cursor:pointer}
.support-subject-link:hover{color:#087cf0}
.support-urgent{display:inline-flex;margin-left:8px;padding:3px 7px;border-radius:999px;background:#fde9ec;color:#a92131;font-size:9px;font-weight:900;text-transform:uppercase}
.support-table td{vertical-align:middle}
@media(max-width:900px){.support-table{min-width:900px}}


/* Bradioo Dashboard v4.6.5 – supportstatus wijzigen */
.support-status-select{
  min-width:145px;
  padding:7px 30px 7px 10px;
  border:1px solid transparent;
  border-radius:999px;
  font-size:11px;
  font-weight:900;
  cursor:pointer;
}
.support-status-select.new{background:#e8f3ff;color:#0874d8}
.support-status-select.in_progress{background:#fff7dc;color:#85670d}
.support-status-select.closed{background:#e8f8ef;color:#177644}
.support-status-select:disabled{opacity:.65;cursor:wait}

.ticket-status-card{
  display:grid;
  grid-template-columns:minmax(160px,.7fr) minmax(240px,1.3fr) auto;
  gap:14px;
  align-items:end;
  margin:0 0 18px;
  padding:14px 16px;
  border:1px solid #dfe7ef;
  border-radius:12px;
  background:#f8fafc;
}
.ticket-status-card small,.ticket-status-card b{display:block}
.ticket-status-card small{color:#74859a;margin-bottom:4px}
.ticket-status-control label{display:block;font-size:12px;font-weight:800;color:#52667b;margin-bottom:6px}
.ticket-status-control select{width:100%;padding:10px 12px;border:1px solid #cfdae5;border-radius:9px;background:#fff}
#save-ticket-status-v465{height:42px;white-space:nowrap}
@media(max-width:750px){
 .ticket-status-card{grid-template-columns:1fr}
 #save-ticket-status-v465{width:100%}
}


/* Bradioo Dashboard v4.6.6 – gegroepeerd menu */
.grouped-nav{display:flex;flex-direction:column;gap:5px;padding-right:5px}
.nav-group{border-radius:11px;overflow:hidden}
.nav-group-toggle{
 width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;
 padding:10px 12px;border:0;border-radius:10px;background:transparent;color:#9eb0c2;
 font-size:11px;font-weight:900;letter-spacing:.055em;text-transform:uppercase;cursor:pointer;
}
.nav-group-toggle:hover,.nav-group.has-active>.nav-group-toggle{background:rgba(255,255,255,.06);color:#fff}
.nav-group-chevron{font-size:19px;line-height:1;transform:rotate(0deg);transition:transform .2s ease}
.nav-group.open .nav-group-chevron{transform:rotate(90deg)}
.nav-group-items{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .22s ease,opacity .18s ease}
.nav-group-items>*{min-height:0;overflow:hidden}
.nav-group.open .nav-group-items{grid-template-rows:1fr;opacity:1}
.nav-group-items{padding:0 4px}
.nav-group-items button{
 width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;
 margin:2px 0;padding:9px 12px 9px 18px;border:0;border-radius:9px;
 background:transparent;color:#cad5df;text-align:left;cursor:pointer;
}
.nav-group-items button:hover{background:rgba(255,255,255,.075);color:#fff}
.nav-group-items button.active{background:#087cf0;color:#fff;font-weight:800;box-shadow:0 6px 18px rgba(8,124,240,.25)}
.nav-group-items button [id^="badge-"]:not(:empty){display:inline-flex;min-width:20px;height:20px;padding:0 6px;align-items:center;justify-content:center;border-radius:999px;background:#fff;color:#0874d8;font-size:10px;font-weight:900}
.sidebar-foot{flex-shrink:0}
@media(max-width:900px){
 .grouped-nav{gap:4px}
 .nav-group-toggle{padding:10px 11px}
 .nav-group-items button{padding:10px 12px 10px 17px}
}


/* Bradioo Dashboard v4.6.7 – ingeklapte menugroepen nemen geen ruimte meer in */
.grouped-nav .nav-group-items{
  display:block;
  max-height:0;
  overflow:hidden;
  opacity:0;
  padding:0 4px;
  visibility:hidden;
  pointer-events:none;
  transition:max-height .24s ease,opacity .16s ease,visibility 0s linear .24s;
}
.grouped-nav .nav-group.open .nav-group-items{
  max-height:480px;
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transition:max-height .28s ease,opacity .18s ease,visibility 0s;
}
.grouped-nav .nav-group:not(.open){
  margin:0;
}
.grouped-nav .nav-group:not(.open) .nav-group-items button{
  margin-top:0;
  margin-bottom:0;
}


/* Bradioo Dashboard v4.6.8 – directe Dashboard-knop en accordionmenu */
.grouped-nav .nav-direct-item{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding:11px 12px;
  margin:0 0 4px;
  border:0;
  border-radius:10px;
  background:transparent;
  color:#cad5df;
  text-align:left;
  font-size:12px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  cursor:pointer;
}
.grouped-nav .nav-direct-item:hover{
  background:rgba(255,255,255,.075);
  color:#fff;
}
.grouped-nav .nav-direct-item.active{
  background:#087cf0;
  color:#fff;
  box-shadow:0 6px 18px rgba(8,124,240,.25);
}


/* Bradioo Dashboard v4.6.9 – definitieve menu-indeling */
.grouped-nav .nav-direct-item{
  margin-bottom:3px;
}
.grouped-nav .nav-direct-item + .nav-group{
  margin-top:2px;
}

/* Bradioo Dashboard v4.7.0 – Monteurs */
.technician-modal{max-width:1050px}.appointment-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.appointment-card{background:#fff;border:1px solid #dfe7ef;border-radius:15px;padding:16px}.appointment-card-head{display:flex;justify-content:space-between;gap:12px}.appointment-card-head h3{margin:7px 0}.appointment-meta{display:flex;flex-wrap:wrap;gap:8px 15px;margin:12px 0;color:#61758a;font-size:12px}.appointment-status-banner{display:flex;justify-content:space-between;align-items:center;padding:13px 15px;border-radius:11px;margin-bottom:15px}.appointment-status-banner.blue{background:#e8f3ff;color:#0874d8}.appointment-status-banner.orange{background:#fff0e5;color:#a64f18}.appointment-status-banner.yellow{background:#fff7dc;color:#85670d}.appointment-status-banner.red{background:#fde9ec;color:#a92131}.appointment-status-banner.green{background:#e8f8ef;color:#177644}.appointment-status-banner.gray{background:#edf1f5;color:#627386}.appointment-description{margin-top:15px}.appointment-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0}.appointment-action-grid>div,.appointment-action-grid form{padding:14px;border:1px solid #dfe7ef;border-radius:12px;background:#f8fafc}.appointment-action-grid label{display:block;font-weight:800;font-size:12px;margin:0 0 6px}.appointment-action-grid select,.appointment-action-grid textarea,.appointment-action-grid input{width:100%;margin-bottom:9px;padding:9px;border:1px solid #cfdae5;border-radius:8px}.appointment-photos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.appointment-photos a{display:block;border:1px solid #dfe7ef;border-radius:10px;overflow:hidden;text-decoration:none;color:#17263a}.appointment-photos img{display:block;width:100%;height:130px;object-fit:cover}.appointment-photos span{display:block;padding:8px;font-size:12px;font-weight:800}.technician-planning section{margin-bottom:20px}.technician-planning section>button{width:100%;display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:12px;padding:13px;border:1px solid #dfe7ef;border-radius:11px;background:#fff;margin-bottom:7px;text-align:left;cursor:pointer}.technician-planning time{font-weight:900;font-size:16px}.technician-planning span b,.technician-planning span small{display:block}.technician-planning span small{color:#75879a;margin-top:3px}.technician-planning em{font-style:normal}.client-appointment-alert{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;margin-bottom:20px;border:1px solid #b9dbff;border-left:5px solid #087cf0;border-radius:15px;background:#f2f8ff}.client-appointment-alert h2{margin:7px 0}.technician-next{margin:18px 0}
@media(max-width:900px){.appointment-cards{grid-template-columns:1fr}.appointment-action-grid{grid-template-columns:1fr}.appointment-photos{grid-template-columns:repeat(2,minmax(0,1fr))}.technician-table{min-width:1100px}}
@media(max-width:600px){.client-appointment-alert{align-items:flex-start;flex-direction:column}.client-appointment-alert .btn{width:100%}.technician-planning section>button{grid-template-columns:55px 1fr}.technician-planning em{grid-column:2}}


/* Bradioo Dashboard v4.7.1 */
.technician-profile-readonly{display:grid;gap:9px;margin-top:16px;text-align:left}
.technician-profile-readonly>div{padding:10px 12px;border:1px solid #dfe7ef;border-radius:10px;background:#f8fafc}
.technician-profile-readonly small,.technician-profile-readonly b{display:block}
.technician-profile-readonly small{margin-bottom:3px;color:#75879a}
.appointment-service-request-v471{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:20px;padding:18px;border:1px solid #c8def5;border-left:5px solid #087cf0;border-radius:14px;background:#f5faff}
.appointment-service-request-v471 h3{margin:0 0 6px}.appointment-service-request-v471 p{margin:0;max-width:720px;color:#53677d;line-height:1.5}
.appointment-service-actions-v471{display:flex;gap:8px;flex-shrink:0}
@media(max-width:800px){.appointment-service-request-v471{align-items:stretch;flex-direction:column}.appointment-service-actions-v471{flex-direction:column}.appointment-service-actions-v471 .btn{width:100%}}


/* Bradioo Dashboard v4.7.2 – ruim werkformulier voor monteurs */
.appointment-action-stack{
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
  margin:22px 0;
}
.appointment-action-stack>div,
.appointment-action-stack form{
  width:100%;
  padding:20px;
  border:1px solid #dfe7ef;
  border-radius:14px;
  background:#f8fafc;
}
.appointment-action-stack label{
  display:block;
  margin:0 0 8px;
  font-size:14px;
  font-weight:900;
}
.appointment-action-stack select,
.appointment-action-stack textarea,
.appointment-action-stack input[type="text"],
.appointment-action-stack input[type="file"]{
  width:100%;
  box-sizing:border-box;
  margin:0 0 12px;
  padding:13px 14px;
  border:1px solid #c8d6e4;
  border-radius:10px;
  background:#fff;
  font-size:16px;
}
.appointment-action-stack textarea{
  min-height:170px;
  resize:vertical;
}
.appointment-action-stack>div textarea{
  min-height:110px;
}
.appointment-action-stack .btn{
  min-height:48px;
  padding:12px 18px;
  font-size:15px;
}
.appointment-action-stack form>label:has(input[type="checkbox"]){
  display:flex;
  align-items:center;
  gap:9px;
  margin:2px 0 14px;
}
.appointment-action-stack input[type="checkbox"]{
  width:20px;
  height:20px;
  flex:0 0 auto;
}
#appointment-follow-v470{
  display:none;
}
@media(max-width:700px){
  .technician-modal{width:min(96vw,1050px);padding:18px}
  .appointment-action-stack>div,
  .appointment-action-stack form{padding:16px}
  .appointment-action-stack textarea{min-height:190px}
  .appointment-action-stack .btn{width:100%}
}


/* Bradioo Dashboard v4.7.3 – afspraakbadges en gesloten monteursdossier */
.support-tab span{
  display:inline-flex;
  min-width:22px;
  height:22px;
  padding:0 7px;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#edf3f8;
  color:#60758b;
  font-size:10px;
  font-weight:900;
}
.support-tab.active span{
  background:#e5f2ff;
  color:#0874d8;
}
.appointment-locked-v473{
  margin:18px 0;
  padding:16px 18px;
  border:1px solid #d8e1ea;
  border-left:5px solid #7d8da0;
  border-radius:13px;
  background:#f5f7fa;
}
.appointment-locked-v473 b{display:block;margin-bottom:5px}
.appointment-locked-v473 p{margin:0;color:#5f7185;line-height:1.5}


/* Bradioo Dashboard v4.7.4 */
.dashboard-appointment-stat-v474{
  border:1px solid #dfe7ef;
  text-align:left;
  cursor:pointer;
  font:inherit;
}
.dashboard-appointment-stat-v474:hover{
  border-color:#9ecbfa;
  box-shadow:0 10px 24px rgba(8,124,240,.10);
}
.dashboard-appointment-stat-v474 small{
  display:block;
  margin-top:5px;
  color:#718398;
}
.dashboard-appointment-stat-v474.needs-attention{
  border-left:5px solid #e18b20;
  background:#fffaf2;
}


/* Bradioo Dashboard v4.7.5 – mobiel menu en afspraakstatus */
@media(max-width:900px){
  .app{
    display:block;
  }
  .sidebar{
    position:relative;
    width:100%;
    min-height:auto;
    height:auto;
    max-height:none;
    padding:18px 16px 22px;
    overflow:visible;
  }
  .sidebar .logo{
    display:block;
    position:static;
    width:190px;
    max-width:55vw;
    margin:0 auto 18px;
    transform:none;
  }
  .grouped-nav{
    width:100%;
    max-width:560px;
    margin:0 auto;
    padding:0;
    gap:4px;
  }
  .grouped-nav .nav-direct-item,
  .grouped-nav .nav-group-toggle{
    min-height:46px;
    padding:11px 14px;
    margin:0 0 4px;
    border-radius:11px;
    font-size:15px;
    letter-spacing:.035em;
  }
  .grouped-nav .nav-group-items button{
    min-height:44px;
    padding:10px 14px 10px 20px;
    font-size:15px;
  }
  .sidebar-foot{
    margin-top:18px;
    padding-top:16px;
  }
  .main{
    width:100%;
  }
}

/* Verberg eventuele decoratieve/duplicaat logo-afbeeldingen in de mobiele sidebar */
@media(max-width:900px){
  .sidebar::before,
  .sidebar::after{
    display:none!important;
    content:none!important;
  }
  .sidebar img:not(.logo):not(.avatar){
    position:static!important;
  }
}

/* Klantkaart: statusbadge compact en netjes rechtsboven */
.appointment-card{
  position:relative;
}
.appointment-card-head{
  align-items:flex-start;
}
.appointment-card-head .device-label{
  flex:0 0 auto;
  max-width:190px;
  min-height:auto;
  padding:7px 11px;
  line-height:1.15;
  text-align:center;
  white-space:nowrap;
}
@media(max-width:650px){
  .appointment-card-head{
    display:block;
  }
  .appointment-card-head .device-label{
    display:inline-flex;
    margin-top:10px;
    max-width:100%;
  }
}


/* Bradioo Dashboard v4.7.6 – mobiel off-canvas menu */
.mobile-menu-toggle-v476,
.mobile-menu-backdrop-v476{
  display:none;
}

@media(max-width:900px){
  body{
    overflow-x:hidden;
  }

  .app{
    display:block;
  }

  .sidebar{
    position:fixed!important;
    z-index:1002;
    top:0;
    left:0;
    width:min(86vw,360px)!important;
    height:100dvh!important;
    min-height:100dvh!important;
    max-height:100dvh!important;
    padding:22px 16px 20px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    transform:translateX(-105%);
    transition:transform .24s ease;
    box-shadow:18px 0 45px rgba(0,0,0,.28);
  }

  body.mobile-nav-open-v476{
    overflow:hidden;
  }

  body.mobile-nav-open-v476 .sidebar{
    transform:translateX(0);
  }

  .sidebar .logo{
    width:175px!important;
    max-width:70%!important;
    margin:4px auto 22px!important;
  }

  .grouped-nav{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
  }

  .grouped-nav .nav-direct-item,
  .grouped-nav .nav-group-toggle{
    width:100%!important;
    min-height:48px;
    justify-content:space-between;
    padding:12px 14px!important;
    margin:0 0 5px!important;
    font-size:14px!important;
    text-align:left!important;
  }

  .grouped-nav .nav-group-items button{
    min-height:44px;
    padding:10px 14px 10px 22px!important;
    font-size:14px!important;
  }

  .sidebar-foot{
    margin-top:20px!important;
  }

  .main{
    width:100%!important;
    min-width:0!important;
  }

  .topbar{
    position:sticky;
    top:0;
    z-index:900;
    display:flex;
    align-items:center;
    gap:12px;
    min-height:68px;
    padding:12px 16px!important;
    background:#fff;
  }

  .topbar h1{
    margin:0;
    font-size:24px;
    line-height:1.1;
  }

  .topbar-actions{
    margin-left:auto;
  }

  .mobile-menu-toggle-v476{
    display:inline-flex;
    width:46px;
    height:46px;
    flex:0 0 46px;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:5px;
    border:1px solid #d7e0e9;
    border-radius:12px;
    background:#f3f6f9;
    cursor:pointer;
  }

  .mobile-menu-toggle-v476 span{
    display:block;
    width:20px;
    height:2px;
    border-radius:999px;
    background:#17263a;
    transition:transform .2s ease,opacity .2s ease;
  }

  body.mobile-nav-open-v476 .mobile-menu-toggle-v476 span:nth-child(1){
    transform:translateY(7px) rotate(45deg);
  }

  body.mobile-nav-open-v476 .mobile-menu-toggle-v476 span:nth-child(2){
    opacity:0;
  }

  body.mobile-nav-open-v476 .mobile-menu-toggle-v476 span:nth-child(3){
    transform:translateY(-7px) rotate(-45deg);
  }

  .mobile-menu-backdrop-v476{
    display:block;
    position:fixed;
    z-index:1001;
    inset:0;
    border:0;
    background:rgba(5,16,30,.55);
    opacity:0;
    pointer-events:none;
    transition:opacity .22s ease;
  }

  body.mobile-nav-open-v476 .mobile-menu-backdrop-v476{
    opacity:1;
    pointer-events:auto;
  }
}


/* Bradioo Dashboard v4.7.7 – logo mobiel bovenaan en iconen desktop */
.nav-main-icon-v477{
  display:inline-flex;
  width:24px;
  min-width:24px;
  height:24px;
  align-items:center;
  justify-content:center;
  margin-right:8px;
  border-radius:7px;
  background:rgba(255,255,255,.08);
  color:#9fc6ee;
  font-size:15px;
  line-height:1;
}
.grouped-nav .nav-direct-item,
.grouped-nav .nav-group-toggle{
  justify-content:flex-start;
}
.grouped-nav .nav-direct-item > span:last-child,
.grouped-nav .nav-group-toggle .nav-group-chevron{
  margin-left:auto;
}

@media(max-width:900px){
  .sidebar{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
  }

  .sidebar > .logo{
    display:block!important;
    position:static!important;
    inset:auto!important;
    float:none!important;
    clear:both!important;
    width:132px!important;
    max-width:132px!important;
    height:auto!important;
    margin:2px auto 18px!important;
    transform:none!important;
    flex:0 0 auto!important;
    order:-10!important;
    align-self:center!important;
  }

  .sidebar > .grouped-nav{
    order:0!important;
    flex:0 0 auto!important;
  }

  .sidebar > .sidebar-foot{
    order:10!important;
  }

  .nav-main-icon-v477{
    display:none!important;
  }

  .grouped-nav .nav-direct-item,
  .grouped-nav .nav-group-toggle{
    justify-content:space-between!important;
  }
}


/* Bradioo Dashboard v4.7.8 – mobiele monteursomgeving */
.technician-mobile-actions-v478{
  display:none;
}

@media(max-width:900px){
  body.technician-mobile-v478 .content{
    padding:14px 12px 90px!important;
  }

  body.technician-mobile-v478 .topbar{
    min-height:62px;
  }

  body.technician-mobile-v478 .topbar h1{
    font-size:22px;
  }

  .technician-mobile-actions-v478{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    margin-bottom:16px;
  }

  .technician-mobile-actions-v478 button{
    display:flex;
    align-items:center;
    gap:13px;
    width:100%;
    min-height:74px;
    padding:14px;
    border:1px solid #d8e3ed;
    border-radius:14px;
    background:#fff;
    color:#17263a;
    text-align:left;
    box-shadow:0 7px 20px rgba(18,37,60,.07);
  }

  .technician-mobile-actions-v478 b,
  .technician-mobile-actions-v478 small{
    display:block;
  }

  .technician-mobile-actions-v478 b{
    margin-bottom:3px;
    font-size:16px;
  }

  .technician-mobile-actions-v478 small{
    color:#718398;
    line-height:1.35;
  }

  .tech-mobile-icon-v478{
    display:inline-flex;
    width:44px;
    height:44px;
    flex:0 0 44px;
    align-items:center;
    justify-content:center;
    border-radius:12px;
    background:#e8f3ff;
    color:#0874d8;
    font-size:21px;
    font-weight:900;
  }

  body.technician-mobile-v478 .appointment-card{
    min-height:0;
    padding:16px;
    cursor:pointer;
  }

  body.technician-mobile-v478 .appointment-card:active{
    transform:scale(.99);
  }

  body.technician-mobile-v478 .appointment-card .btn{
    width:100%;
    min-height:46px;
    margin-top:8px;
  }

  .technician-mobile-modal-v478{
    width:100vw!important;
    max-width:none!important;
    min-height:100dvh!important;
    max-height:none!important;
    margin:0!important;
    padding:18px 14px 96px!important;
    border-radius:0!important;
    overflow:visible!important;
  }

  .technician-mobile-modal-v478 .modal-head{
    position:sticky;
    top:0;
    z-index:6;
    margin:-18px -14px 14px;
    padding:14px;
    background:#fff;
    border-bottom:1px solid #e3eaf1;
  }

  .technician-mobile-modal-v478 .modal-head h2{
    font-size:23px;
    line-height:1.15;
  }

  .technician-mobile-modal-v478 .close{
    width:46px;
    height:46px;
    min-width:46px;
    border-radius:12px;
    font-size:26px;
  }

  .technician-mobile-modal-v478 .device-info-grid{
    grid-template-columns:1fr 1fr;
    gap:8px;
  }

  .technician-mobile-modal-v478 .device-info-grid>div{
    min-height:78px;
    padding:12px;
  }

  .technician-mobile-modal-v478 .appointment-description{
    padding:16px;
  }

  .technician-mobile-modal-v478 .appointment-action-stack{
    gap:14px;
  }

  .technician-mobile-modal-v478 .appointment-action-stack>div,
  .technician-mobile-modal-v478 .appointment-action-stack form{
    padding:16px;
    border-radius:14px;
    background:#fff;
    box-shadow:0 6px 18px rgba(18,37,60,.07);
  }

  .technician-mobile-modal-v478 .appointment-action-stack textarea{
    min-height:220px;
    font-size:17px;
    line-height:1.45;
  }

  .technician-mobile-modal-v478 .appointment-action-stack select,
  .technician-mobile-modal-v478 .appointment-action-stack input{
    min-height:50px;
    font-size:16px;
  }

  .tech-form-heading-v478{
    margin-bottom:12px;
  }

  .tech-form-heading-v478 b,
  .tech-form-heading-v478 small{
    display:block;
  }

  .tech-form-heading-v478 b{
    margin-bottom:4px;
    font-size:18px;
  }

  .tech-form-heading-v478 small{
    color:#718398;
    line-height:1.4;
  }

  .technician-mobile-bottom-v478{
    position:fixed;
    z-index:1105;
    left:0;
    right:0;
    bottom:0;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:6px;
    padding:10px max(10px,env(safe-area-inset-left)) calc(10px + env(safe-area-inset-bottom));
    background:rgba(255,255,255,.96);
    border-top:1px solid #dbe4ed;
    backdrop-filter:blur(12px);
  }

  .technician-mobile-bottom-v478 button{
    min-height:48px;
    padding:8px 5px;
    border:0;
    border-radius:11px;
    background:#edf3f8;
    color:#17263a;
    font-weight:900;
    font-size:12px;
  }

  .technician-mobile-bottom-v478 button:first-child{
    background:#087cf0;
    color:#fff;
  }

  .technician-mobile-bottom-v478:has(button:only-child){
    grid-template-columns:1fr;
  }

  .appointment-photos{
    grid-template-columns:1fr 1fr;
  }

  .appointment-photos img{
    height:150px;
  }
}

@media(max-width:480px){
  .technician-mobile-modal-v478 .device-info-grid{
    grid-template-columns:1fr;
  }

  .technician-mobile-bottom-v478{
    grid-template-columns:repeat(2,1fr);
  }
}


/* Bradioo Dashboard v4.7.9 – mobiele afspraak als volledige pagina */
@media(max-width:900px){
  body.technician-appointment-open-v479{
    overflow:hidden!important;
  }

  .technician-fullscreen-bg-v479{
    position:fixed!important;
    z-index:1400!important;
    inset:0!important;
    display:block!important;
    width:100vw!important;
    height:100dvh!important;
    padding:0!important;
    margin:0!important;
    overflow:hidden!important;
    background:#f3f6f9!important;
  }

  .technician-fullscreen-v479{
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:100%!important;
    max-width:none!important;
    height:100%!important;
    min-height:100%!important;
    max-height:none!important;
    margin:0!important;
    padding:0 14px calc(110px + env(safe-area-inset-bottom))!important;
    border-radius:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain;
    background:#f3f6f9!important;
    box-shadow:none!important;
    -webkit-overflow-scrolling:touch;
  }

  .technician-fullscreen-v479 .modal-head{
    position:sticky!important;
    z-index:20!important;
    top:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    margin:0 -14px 14px!important;
    padding:calc(12px + env(safe-area-inset-top)) 14px 12px!important;
    background:#fff!important;
    border-bottom:1px solid #dce5ee!important;
    box-shadow:0 3px 12px rgba(18,37,60,.06);
  }

  .technician-fullscreen-v479 .modal-head>div{
    min-width:0;
  }

  .technician-fullscreen-v479 .modal-head h2{
    overflow:hidden;
    margin:0 0 3px!important;
    font-size:21px!important;
    line-height:1.15!important;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  .technician-fullscreen-v479 .modal-head .muted{
    display:block;
    overflow:hidden;
    font-size:13px;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  .technician-fullscreen-v479 .close{
    position:static!important;
    display:inline-flex!important;
    width:46px!important;
    height:46px!important;
    flex:0 0 46px!important;
    align-items:center!important;
    justify-content:center!important;
    margin:0!important;
  }

  .technician-fullscreen-v479 .appointment-status-banner{
    margin-top:0!important;
  }

  .technician-fullscreen-v479 .appointment-action-stack{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
  }

  .technician-fullscreen-v479 .appointment-action-stack>div,
  .technician-fullscreen-v479 .appointment-action-stack form{
    scroll-margin-top:92px;
  }

  .technician-fullscreen-v479 .technician-mobile-bottom-v478{
    z-index:1450!important;
  }

  /* Geen sidebar, topbar of donkere strook zichtbaar achter de afspraak */
  body.technician-appointment-open-v479 .sidebar,
  body.technician-appointment-open-v479 .topbar,
  body.technician-appointment-open-v479 .mobile-menu-backdrop-v476{
    visibility:hidden!important;
  }
}

@media(min-width:901px){
  .technician-fullscreen-bg-v479,
  .technician-fullscreen-v479{
    all:unset;
  }
}


/* Bradioo Dashboard v4.8.0 */
.availability-toolbar-v480{display:flex;align-items:center;gap:10px;margin-bottom:16px}.availability-toolbar-v480 input{padding:9px 12px;border:1px solid #d5e0ea;border-radius:9px}.availability-grid-v480{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.availability-list-v480{display:grid;gap:8px}.availability-row-v480{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px;border-left:4px solid #087cf0;border-radius:9px;background:#f6f9fc}.availability-row-v480.unavailable{border-color:#d04855}.availability-row-v480.vacation{border-color:#8a65c7}.availability-row-v480.extra{border-color:#299666}.availability-row-v480 b,.availability-row-v480 span,.availability-row-v480 small{display:block}.availability-row-v480 span{font-weight:800;margin:2px 0}.availability-row-v480 small{color:#708296}.appointment-costs-v480{margin-top:18px;padding-top:17px;border-top:1px solid #dfe7ef}.appointment-cost-total-v480{padding:12px;border-radius:9px;background:#eaf4ff;text-align:right}.billing-table-v480{min-width:1050px}
body.technician-mobile-v478 .grouped-nav .nav-direct-item{justify-content:flex-start!important;text-align:left!important;border-radius:10px!important;color:#cad5df!important;padding:11px 14px!important}
body.technician-mobile-v478 .grouped-nav .nav-direct-item.active{background:#087cf0!important;color:#fff!important;box-shadow:0 6px 18px rgba(8,124,240,.25)!important}
@media(max-width:900px){.availability-grid-v480{grid-template-columns:1fr}.availability-toolbar-v480{flex-wrap:wrap}}
@media(max-width:1024px){
 body.global-modal-open-v480{overflow:hidden!important}
 .global-mobile-fullscreen-bg-v480{position:fixed!important;z-index:1600!important;inset:0!important;display:block!important;width:100vw!important;height:100dvh!important;padding:0!important;margin:0!important;background:#f3f6f9!important;overflow:hidden!important}
 .global-mobile-fullscreen-v480{position:absolute!important;inset:0!important;width:100%!important;max-width:none!important;height:100%!important;max-height:none!important;margin:0!important;padding:0 14px calc(24px + env(safe-area-inset-bottom))!important;border-radius:0!important;overflow-y:auto!important;background:#f3f6f9!important;box-shadow:none!important}
 .global-mobile-fullscreen-v480 .modal-head{position:sticky!important;z-index:10!important;top:0!important;margin:0 -14px 14px!important;padding:calc(12px + env(safe-area-inset-top)) 14px 12px!important;background:#fff!important;border-bottom:1px solid #dce5ee!important}
 .global-mobile-fullscreen-v480 .close{width:46px!important;height:46px!important;flex:0 0 46px!important}
 .global-mobile-fullscreen-v480 .grid.two{grid-template-columns:1fr!important}
 .global-mobile-fullscreen-v480 input,.global-mobile-fullscreen-v480 select,.global-mobile-fullscreen-v480 textarea{font-size:16px!important}
}


/* Bradioo Dashboard v4.8.2 */
.availability-week-days-v482{display:grid;gap:9px;margin:18px 0}.availability-week-day-v482{display:grid;grid-template-columns:minmax(150px,1fr) 130px auto 130px;align-items:center;gap:10px;padding:11px 13px;border:1px solid #dce5ed;border-radius:10px;background:#f8fafc}.availability-week-check-v482{display:flex;align-items:center;gap:8px}.availability-week-check-v482 input{width:20px;height:20px}.availability-week-day-v482 input[type="time"]{width:100%;padding:9px;border:1px solid #cad7e3;border-radius:8px;background:#fff}.appointment-slot-help-v482{display:block;margin-top:6px;line-height:1.4}
@media(max-width:650px){.availability-week-day-v482{grid-template-columns:1fr 1fr}.availability-week-check-v482{grid-column:1/-1}.availability-week-day-v482 span{display:none}}


/* Bradioo Dashboard v4.8.3 – monteursdashboard */
.technician-next-heading-v483{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.technician-next-heading-v483 h2{margin:5px 0 0}
.technician-no-today-v483{margin:18px 0;padding:22px;text-align:center}
.technician-no-today-v483 h2{margin:0 0 7px}
.technician-no-today-v483 .btn{margin-top:10px}
.technician-day-plan-v483{display:grid;gap:8px}
.technician-day-item-v483{display:grid;grid-template-columns:120px minmax(0,1fr) auto;align-items:center;gap:13px;width:100%;padding:14px;border:1px solid #dce5ed;border-radius:12px;background:#fff;color:#17263a;text-align:left;cursor:pointer}
.technician-day-item-v483:hover{border-color:#9ecbfa;box-shadow:0 7px 18px rgba(8,124,240,.08)}
.technician-day-item-v483 time{font-size:16px;font-weight:900}
.technician-day-item-v483 span b,.technician-day-item-v483 span small{display:block}
.technician-day-item-v483 span small{margin-top:3px;color:#718398}
.technician-day-item-v483 em{font-style:normal}
.technician-availability-readonly-v483{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.technician-availability-readonly-v483 section>h3{text-transform:capitalize}
@media(max-width:900px){
 .technician-next-heading-v483{display:block}
 .technician-next-heading-v483 .device-label{margin-top:10px}
 .technician-today-next-v483 .btn{width:100%}
 .technician-day-item-v483{grid-template-columns:82px minmax(0,1fr);padding:13px}
 .technician-day-item-v483 em{grid-column:2;justify-self:start}
 .technician-availability-readonly-v483{grid-template-columns:1fr}
}


/* Bradioo Dashboard v4.8.4 */
.technician-no-today-v484{
  margin:18px 0;
  padding:22px;
}
.technician-no-today-v484 h2{
  margin:0 0 6px;
}
.technician-future-note-v484{
  display:grid;
  gap:5px;
  margin:17px 0;
  padding:15px;
  border:1px solid #d8e6f4;
  border-radius:12px;
  background:#f4f9ff;
}
.technician-future-note-v484 .device-label{
  justify-self:start;
}
.technician-future-note-v484 b{
  margin-top:3px;
  font-size:17px;
}
.technician-future-note-v484 small{
  color:#61758a;
}
.technician-future-note-v484 p{
  margin:5px 0 0;
  color:#3e5872;
  font-weight:700;
}
@media(max-width:900px){
  .technician-no-today-v484 .btn{
    width:100%;
  }
}


/* Bradioo Dashboard v4.8.5 – compacte beschikbaarheid */
.availability-tech-summary-v485{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,220px));
  gap:12px;
  margin-bottom:14px;
}
.availability-tech-summary-v485 .card{
  padding:15px 17px;
}
.availability-tech-summary-v485 small,
.availability-tech-summary-v485 b{
  display:block;
}
.availability-tech-summary-v485 small{
  color:#718398;
  margin-bottom:5px;
}
.availability-tech-summary-v485 b{
  font-size:26px;
}
.availability-tech-toolbar-v485{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:12px;
  margin-bottom:15px;
  padding:13px;
}
.availability-tech-toolbar-v485 label{
  display:grid;
  gap:5px;
}
.availability-tech-toolbar-v485 label span{
  color:#718398;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}
.availability-tech-toolbar-v485 input{
  min-height:40px;
  padding:8px 10px;
  border:1px solid #cfdae5;
  border-radius:8px;
  background:#fff;
}
.availability-tech-weeks-v485{
  display:grid;
  gap:10px;
}
.availability-tech-week-v485{
  padding:0;
  overflow:hidden;
}
.availability-tech-week-toggle-v485{
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  padding:15px 17px;
  border:0;
  background:#fff;
  color:#17263a;
  text-align:left;
  cursor:pointer;
}
.availability-tech-week-toggle-v485 span:first-child{
  display:grid;
  gap:3px;
}
.availability-tech-week-toggle-v485 small{
  color:#718398;
}
.availability-tech-week-chevron-v485{
  font-size:22px;
  transform:rotate(0);
  transition:transform .2s ease;
}
.availability-tech-week-v485.open .availability-tech-week-chevron-v485{
  transform:rotate(90deg);
}
.availability-tech-week-content-v485{
  display:none;
  padding:0 13px 13px;
}
.availability-tech-week-v485.open .availability-tech-week-content-v485{
  display:grid;
  gap:7px;
}
.availability-tech-day-v485{
  display:grid;
  grid-template-columns:minmax(150px,.8fr) minmax(160px,1fr);
  gap:12px;
  align-items:center;
  padding:11px 12px;
  border-left:4px solid #087cf0;
  border-radius:9px;
  background:#f7fafc;
}
.availability-tech-day-v485.extra{border-left-color:#299666}
.availability-tech-day-v485.unavailable{border-left-color:#d04855}
.availability-tech-day-v485.vacation{border-left-color:#8a65c7}
.availability-tech-date-v485 b,
.availability-tech-date-v485 span,
.availability-tech-time-v485 span,
.availability-tech-time-v485 b{
  display:block;
}
.availability-tech-date-v485 b{
  text-transform:capitalize;
}
.availability-tech-date-v485 span,
.availability-tech-time-v485 span{
  color:#718398;
  font-size:12px;
}
.availability-tech-day-v485>small{
  grid-column:1/-1;
  color:#60758a;
}
.availability-tech-empty-v485{
  padding:24px;
  text-align:center;
}
.availability-tech-empty-v485 h3{
  margin:0 0 6px;
  text-transform:capitalize;
}
.availability-tech-empty-v485 p{
  margin:0;
  color:#718398;
}
@media(max-width:700px){
  .availability-tech-summary-v485{
    grid-template-columns:1fr 1fr;
  }
  .availability-tech-toolbar-v485{
    align-items:stretch;
    flex-direction:column;
  }
  .availability-tech-toolbar-v485 .btn{
    width:100%;
  }
  .availability-tech-day-v485{
    grid-template-columns:1fr;
  }
}


/* Bradioo Dashboard v4.8.6 */
.section-actions-v486{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.admin-availability-technicians-v486{
  display:grid;
  gap:12px;
}
.admin-availability-technician-v486{
  padding:0;
  overflow:hidden;
}
.admin-availability-technician-toggle-v486,
.admin-availability-week-toggle-v486{
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  border:0;
  background:#fff;
  color:#17263a;
  text-align:left;
  cursor:pointer;
}
.admin-availability-technician-toggle-v486{
  padding:16px 18px;
}
.admin-availability-week-toggle-v486{
  padding:12px 13px;
  background:#f7fafc;
  border-radius:9px;
}
.admin-availability-technician-toggle-v486 span:first-child,
.admin-availability-week-toggle-v486 span:first-child{
  display:grid;
  gap:3px;
}
.admin-availability-technician-toggle-v486 small,
.admin-availability-week-toggle-v486 small{
  color:#718398;
}
.admin-availability-chevron-v486,
.admin-availability-week-chevron-v486{
  font-size:22px;
  transform:rotate(0);
  transition:transform .2s ease;
}
.admin-availability-technician-v486.open .admin-availability-technician-toggle-v486 .admin-availability-chevron-v486,
.admin-availability-week-v486.open .admin-availability-week-chevron-v486{
  transform:rotate(90deg);
}
.admin-availability-technician-content-v486{
  display:none;
  padding:0 14px 14px;
}
.admin-availability-technician-v486.open .admin-availability-technician-content-v486{
  display:grid;
  gap:9px;
}
.admin-availability-week-content-v486{
  display:none;
  gap:7px;
  padding:8px 4px 4px;
}
.admin-availability-week-v486.open .admin-availability-week-content-v486{
  display:grid;
}
.manual-billing-total-v486{
  margin:14px 0;
  padding:12px 14px;
  border-radius:9px;
  background:#eaf4ff;
  text-align:right;
}
@media(max-width:700px){
  .section-actions-v486{
    width:100%;
  }
  .section-actions-v486 .btn{
    flex:1 1 100%;
  }
  .availability-toolbar-v480{
    flex-direction:column;
    align-items:stretch;
  }
}


/* Bradioo Dashboard v4.8.7 */
.grouped-nav .nav-direct-item[data-page="statistics"]{
  margin-bottom:3px;
}


/* Bradioo Dashboard v4.8.8 */
.appointment-slot-help-v482{
  padding:8px 10px;
  border-left:3px solid #087cf0;
  border-radius:6px;
  background:#f2f8ff;
}

/* Bradioo Dashboard v4.8.9 – monteursagenda */
.technician-calendar-toolbar-v489{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px;margin-bottom:14px}.technician-calendar-nav-v489,.technician-calendar-controls-v489{display:flex;align-items:center;gap:8px}.technician-calendar-nav-v489 h3{margin:0 0 0 8px;text-transform:capitalize}.technician-calendar-controls-v489 select{min-height:38px;padding:7px 10px;border:1px solid #cfdae5;border-radius:8px;background:#fff}.technician-calendar-view-switch-v489{display:flex;padding:3px;border-radius:9px;background:#edf2f6}.technician-calendar-view-switch-v489 button{padding:7px 11px;border:0;border-radius:7px;background:transparent;color:#60758b;font-weight:800;cursor:pointer}.technician-calendar-view-switch-v489 button.active{background:#087cf0;color:#fff}.technician-calendar-shell-v489{padding:0;overflow:auto}.technician-calendar-weekdays-v489{display:grid;grid-template-columns:repeat(7,1fr);min-width:900px;border-bottom:1px solid #dce5ed}.technician-calendar-weekdays-v489 div{padding:11px;text-align:center;font-weight:900;color:#60758b}.technician-calendar-month-v489{display:grid;grid-template-columns:repeat(7,1fr);min-width:900px}.technician-calendar-month-day-v489{min-height:150px;padding:8px;border-right:1px solid #e2e9f0;border-bottom:1px solid #e2e9f0;background:#fff}.technician-calendar-month-day-v489.outside{background:#f7f9fb;color:#9aa8b6}.technician-calendar-month-day-v489.today{box-shadow:inset 0 0 0 2px #087cf0}.technician-calendar-day-head-v489{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}.technician-calendar-day-head-v489>span{font-weight:900}.technician-calendar-day-head-v489 button,.technician-calendar-week-head-v489 button{width:26px;height:26px;border:0;border-radius:7px;background:#edf4fb;color:#0874d8;font-weight:900;cursor:pointer}.technician-calendar-month-events-v489{display:grid;gap:5px}.technician-calendar-event-v489{display:grid;gap:2px;width:100%;padding:8px;border:0;border-left:4px solid #087cf0;border-radius:7px;background:#eef6ff;color:#17304a;text-align:left;cursor:pointer;overflow:hidden}.technician-calendar-event-v489.compact{padding:6px;font-size:11px}.technician-calendar-event-v489 time,.technician-calendar-event-v489 b,.technician-calendar-event-v489 small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.technician-calendar-event-v489 small{color:#60758b}.technician-calendar-event-v489.orange{border-left-color:#e18b20;background:#fff5e7}.technician-calendar-event-v489.yellow{border-left-color:#d7b11c;background:#fff9df}.technician-calendar-event-v489.red{border-left-color:#d04855;background:#fff0f2}.technician-calendar-event-v489.green{border-left-color:#299666;background:#ebf8f1}.technician-calendar-event-v489.gray{border-left-color:#8a98a7;background:#f1f4f6}.technician-calendar-more-v489{border:0;background:transparent;color:#0874d8;text-align:left;font-weight:800;cursor:pointer}.technician-calendar-week-v489{min-width:1050px}.technician-calendar-week-head-v489{display:grid;grid-template-columns:70px repeat(7,1fr);border-bottom:1px solid #dce5ed}.technician-calendar-week-head-v489>div{position:relative;padding:10px;text-align:center;border-right:1px solid #e2e9f0}.technician-calendar-week-head-v489>div.today{background:#eef6ff}.technician-calendar-week-head-v489 b,.technician-calendar-week-head-v489 span{display:block}.technician-calendar-week-head-v489 button{position:absolute;right:6px;top:6px}.technician-calendar-week-body-v489{display:grid;grid-template-columns:70px repeat(7,1fr);height:832px}.technician-calendar-hours-v489{display:grid;grid-template-rows:repeat(13,64px)}.technician-calendar-hours-v489>div{padding:4px 7px;border-bottom:1px solid #e2e9f0;color:#718398;font-size:11px}.technician-calendar-week-column-v489{position:relative;border-right:1px solid #e2e9f0}.technician-calendar-hour-line-v489{height:64px;border-bottom:1px solid #e9eef3}.technician-calendar-position-v489{position:absolute;left:4px;right:4px;z-index:2}.technician-calendar-position-v489 .technician-calendar-event-v489{height:100%}.technician-calendar-day-add-v489{padding:13px;border-bottom:1px solid #dce5ed}@media(max-width:900px){.technician-calendar-toolbar-v489{align-items:stretch;flex-direction:column}.technician-calendar-nav-v489,.technician-calendar-controls-v489{flex-wrap:wrap}.technician-calendar-nav-v489 h3{width:100%;margin:5px 0 0}.technician-calendar-controls-v489 select{flex:1}.technician-calendar-view-switch-v489{width:100%}.technician-calendar-view-switch-v489 button{flex:1}.technician-calendar-title-v489{align-items:stretch;flex-direction:column}.technician-calendar-title-v489 .btn{width:100%}}


/* Bradioo Dashboard v4.8.10 – beschikbaarheid per week verwijderen */
.admin-availability-week-head-v4810{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  background:#f7fafc;
  border-radius:9px;
}
.admin-availability-week-head-v4810 .admin-availability-week-toggle-v486{
  min-width:0;
}
.admin-availability-week-delete-v4810{
  margin-right:8px;
  white-space:nowrap;
}
@media(max-width:700px){
  .admin-availability-week-head-v4810{
    grid-template-columns:1fr;
    padding-bottom:8px;
  }
  .admin-availability-week-delete-v4810{
    width:calc(100% - 16px);
    margin:0 8px;
  }
}


/* Bradioo Dashboard v4.8.11 – vakantie zonder tijden */
.availability-time-hidden-v4811{
  display:none!important;
}
.availability-week-time-v4811{
  display:grid;
  grid-template-columns:130px auto 130px;
  align-items:center;
  gap:10px;
}
@media(max-width:650px){
  .availability-week-time-v4811{
    grid-template-columns:1fr auto 1fr;
    grid-column:1/-1;
  }
}


/* Bradioo Dashboard v4.9.0 – Klantdossiers */
.dossier-search-v490{display:flex;gap:9px;margin-bottom:15px;padding:13px}.dossier-search-v490 input{flex:1;min-height:42px;padding:9px 12px;border:1px solid #cfdae5;border-radius:9px}
.dossier-list-v490{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.dossier-list-card-v490{display:grid;gap:15px}.dossier-list-title-v490,.dossier-list-footer-v490{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.dossier-list-title-v490 h3{margin:0 0 4px}.dossier-list-title-v490 small,.dossier-list-footer-v490 small{color:#718398}.dossier-attention-v490{padding:7px 10px;border-radius:999px;background:#fff0e5;color:#a64f18;font-size:11px;font-weight:900;white-space:nowrap}
.dossier-list-stats-v490{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.dossier-list-stats-v490>div{padding:10px;border-radius:9px;background:#f6f9fc}.dossier-list-stats-v490 b,.dossier-list-stats-v490 span{display:block}.dossier-list-stats-v490 b{font-size:21px}.dossier-list-stats-v490 span{font-size:10px;color:#718398}
.dossier-modal-v490{max-width:1180px}.dossier-tabs-v490{display:flex;gap:4px;overflow-x:auto;padding:4px;margin-bottom:15px;border-radius:10px;background:#edf2f6}.dossier-tabs-v490 button{flex:0 0 auto;padding:9px 12px;border:0;border-radius:8px;background:transparent;color:#60758b;font-weight:800;cursor:pointer}.dossier-tabs-v490 button.active{background:#087cf0;color:#fff}
.dossier-overview-v490{display:grid;gap:14px}.dossier-company-v490 h3{margin-top:0}.dossier-summary-grid-v490{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.dossier-summary-grid-v490 button{padding:15px;border:1px solid #dce5ed;border-radius:11px;background:#fff;color:#17263a;text-align:left;cursor:pointer}.dossier-summary-grid-v490 b,.dossier-summary-grid-v490 span{display:block}.dossier-summary-grid-v490 b{font-size:25px}.dossier-summary-grid-v490 span{margin-top:3px;color:#718398}
.dossier-timeline-v490{display:grid}.dossier-timeline-item-v490{display:grid;grid-template-columns:18px 1fr;gap:10px;position:relative;padding:8px 0}.dossier-timeline-item-v490>span{position:relative;width:11px;height:11px;margin-top:5px;border-radius:50%;background:#087cf0}.dossier-timeline-item-v490>span:after{content:"";position:absolute;top:11px;bottom:-18px;left:5px;width:1px;background:#d6e1eb}.dossier-timeline-item-v490:last-child>span:after{display:none}.dossier-timeline-item-v490 small,.dossier-timeline-item-v490 b,.dossier-timeline-item-v490 p{display:block}.dossier-timeline-item-v490 small{color:#718398}.dossier-timeline-item-v490 p{margin:3px 0 0;color:#60758b}
.dossier-notes-layout-v490{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.5fr);gap:14px}.dossier-check-v490{display:flex;align-items:center;gap:8px;margin:10px 0}.dossier-note-list-v490{display:grid;gap:10px}.dossier-note-v490{border-left:4px solid #087cf0}.dossier-note-v490.important{border-left-color:#d04855}.dossier-note-v490.resolved{opacity:.72;border-left-color:#299666}.dossier-note-head-v490,.dossier-note-actions-v490{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.dossier-note-head-v490 h3{margin:0 0 4px}.dossier-note-v490 p{line-height:1.55}.dossier-note-actions-v490{justify-content:flex-end}
.dossier-table-cards-v490,.dossier-device-grid-v490{display:grid;gap:10px}.dossier-item-v490{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px}.dossier-item-v490 h3{margin:5px 0}.dossier-item-v490 small{color:#718398}.dossier-device-grid-v490{grid-template-columns:repeat(2,minmax(0,1fr))}.dossier-device-v490{display:grid;gap:12px}.dossier-device-v490 h3{margin:5px 0}.dossier-device-v490 select{width:100%;padding:9px;border:1px solid #cfdae5;border-radius:8px;background:#fff}
.dossier-administration-v490{display:grid;grid-template-columns:1fr 1fr;gap:14px}.dossier-admin-row-v490{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #e2e9f0}.dossier-admin-row-v490 span b,.dossier-admin-row-v490 span small{display:block}.dossier-admin-row-v490 small{color:#718398}.dossier-empty-v490{padding:24px}
@media(max-width:900px){.dossier-list-v490,.dossier-device-grid-v490,.dossier-administration-v490{grid-template-columns:1fr}.dossier-summary-grid-v490{grid-template-columns:1fr 1fr}.dossier-notes-layout-v490{grid-template-columns:1fr}.dossier-item-v490{grid-template-columns:1fr}.dossier-item-v490 .btn{width:100%}.dossier-list-stats-v490{grid-template-columns:1fr 1fr}.dossier-list-footer-v490{align-items:stretch;flex-direction:column}.dossier-list-footer-v490 .btn{width:100%}}
@media(max-width:600px){.dossier-search-v490{flex-direction:column}.dossier-summary-grid-v490{grid-template-columns:1fr}.dossier-modal-v490{padding-left:12px!important;padding-right:12px!important}}


/* Bradioo Dashboard v4.9.1 – sidebar scrollt binnen beschikbare hoogte */
@media(min-width:901px){
  .sidebar{
    display:flex!important;
    flex-direction:column!important;
    height:100vh!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  .sidebar .logo{
    flex:0 0 auto;
  }
  .grouped-nav{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding-bottom:12px!important;
    scrollbar-width:thin;
    scrollbar-color:#26394f transparent;
  }
  .grouped-nav::-webkit-scrollbar{
    width:6px;
  }
  .grouped-nav::-webkit-scrollbar-thumb{
    border-radius:999px;
    background:#26394f;
  }
  .sidebar-foot{
    position:static!important;
    flex:0 0 auto!important;
    margin-top:10px!important;
    padding-top:14px!important;
    background:var(--bg)!important;
  }
  .nav-group{
    flex:0 0 auto;
  }
  .grouped-nav .nav-group.open .nav-group-items{
    max-height:none!important;
  }
}
.dossier-list-v490 [data-dossier-open]:disabled{
  cursor:wait;
  opacity:.7;
}


/* Bradioo Dashboard v4.9.2 – dossierfoutisolatie */
.dossier-warning-v492{
  margin:0 0 14px;
  padding:11px 13px;
  border-left:4px solid #e18b20;
  border-radius:8px;
  background:#fff6e9;
  color:#7f4c13;
  font-weight:700;
}


/* Bradioo Dashboard v5.0.0 – Klantdossier werkplek */
.dossier-workspace-v500{
  display:grid;
  gap:18px;
  min-height:calc(100vh - 120px);
}
.dossier-workspace-top-v500{
  display:grid;
  gap:14px;
}
.dossier-workspace-title-v500{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.dossier-workspace-title-v500 h1{
  margin:0 0 5px;
  font-size:34px;
}
.dossier-workspace-title-v500 span{
  color:#718398;
}
.dossier-workspace-actions-v500{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.dossier-workspace-summary-v500{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.dossier-workspace-summary-v500 button{
  padding:15px;
  border:1px solid #dce5ed;
  border-radius:12px;
  background:#fff;
  color:#17263a;
  text-align:left;
  cursor:pointer;
}
.dossier-workspace-summary-v500 b,
.dossier-workspace-summary-v500 span{
  display:block;
}
.dossier-workspace-summary-v500 b{
  font-size:25px;
}
.dossier-workspace-summary-v500 span{
  margin-top:3px;
  color:#718398;
}
.dossier-workspace-layout-v500{
  display:grid;
  grid-template-columns:minmax(0,1fr) 300px;
  gap:16px;
  align-items:start;
}
.dossier-workspace-main-v500{
  min-width:0;
}
.dossier-workspace-tabs-v500{
  display:flex;
  gap:5px;
  overflow-x:auto;
  padding:5px;
  margin-bottom:14px;
  border-radius:11px;
  background:#edf2f6;
  position:sticky;
  top:0;
  z-index:5;
}
.dossier-workspace-tabs-v500 button{
  flex:0 0 auto;
  padding:10px 13px;
  border:0;
  border-radius:8px;
  background:transparent;
  color:#60758b;
  font-weight:800;
  cursor:pointer;
}
.dossier-workspace-tabs-v500 button.active{
  background:#087cf0;
  color:#fff;
}
.dossier-workspace-panel-v500{
  min-width:0;
}
.dossier-workspace-aside-v500{
  display:grid;
  gap:12px;
  position:sticky;
  top:16px;
}
.dossier-workspace-aside-v500 h3{
  margin-top:0;
}
.dossier-aside-row-v500{
  padding:9px 0;
  border-bottom:1px solid #e4ebf1;
}
.dossier-aside-row-v500:last-child{
  border-bottom:0;
}
.dossier-aside-row-v500 small,
.dossier-aside-row-v500 b{
  display:block;
}
.dossier-aside-row-v500 small{
  color:#718398;
  margin-bottom:2px;
}
.dossier-quick-actions-v500{
  display:grid;
  gap:8px;
}
.dossier-quick-actions-v500 .btn{
  width:100%;
  justify-content:flex-start;
}
@media(max-width:1200px){
  .dossier-workspace-summary-v500{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .dossier-workspace-layout-v500{
    grid-template-columns:1fr;
  }
  .dossier-workspace-aside-v500{
    position:static;
    grid-template-columns:1fr 1fr;
  }
}
@media(max-width:800px){
  .dossier-workspace-title-v500{
    flex-direction:column;
  }
  .dossier-workspace-actions-v500,
  .dossier-workspace-actions-v500 .btn{
    width:100%;
  }
  .dossier-workspace-summary-v500{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .dossier-workspace-aside-v500{
    grid-template-columns:1fr;
  }
  .dossier-workspace-title-v500 h1{
    font-size:28px;
  }
}


/* Bradioo Dashboard v5.0.1 – zenderinstellingen */
.stream-links-form-v501{
  margin-top:16px;
}
.stream-links-form-v501 h3{
  margin-top:0;
}


/* Bradioo Dashboard v5.1.0 – Reparaties */
.repair-grid-v510{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.repair-card-v510{display:grid;gap:14px;border-left:4px solid #087cf0}.repair-card-v510.urgent{border-left-color:#d04855}.repair-card-v510.high{border-left-color:#e18b20}.repair-card-head-v510,.repair-card-actions-v510,.repair-detail-top-v510{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.repair-card-head-v510 h3{margin:5px 0}.repair-card-head-v510 small{color:#718398}.repair-card-meta-v510{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.repair-card-meta-v510 span{padding:9px;border-radius:8px;background:#f6f9fc}.repair-card-meta-v510 small,.repair-card-meta-v510 b{display:block}.repair-card-meta-v510 small{color:#718398}.repair-card-actions-v510{justify-content:flex-end}
.repair-form-sections-v510{display:grid;gap:16px}.repair-form-sections-v510 section{padding-bottom:16px;border-bottom:1px solid #dfe7ee}.repair-form-sections-v510 h3{margin-top:0}.repair-detail-v510{max-width:1180px}.repair-detail-top-v510{margin-bottom:14px}.repair-detail-columns-v510{display:grid;grid-template-columns:1.4fr .8fr;gap:14px;margin-top:14px}.repair-updates-v510{display:grid;gap:10px;margin-bottom:16px}.repair-updates-v510>div{padding:11px;border-left:3px solid #087cf0;border-radius:8px;background:#f7fafc}.repair-updates-v510 small,.repair-updates-v510 b{display:block}.repair-updates-v510 p{margin:5px 0}.repair-parts-v510{display:grid;gap:7px;margin-bottom:14px}.repair-parts-v510>div{padding:10px;border-radius:8px;background:#f6f9fc}.repair-parts-v510 b,.repair-parts-v510 small{display:block}
@media(max-width:900px){.repair-grid-v510,.repair-detail-columns-v510{grid-template-columns:1fr}.repair-card-meta-v510{grid-template-columns:1fr 1fr}.repair-card-actions-v510{align-items:stretch;flex-direction:column}.repair-card-actions-v510 .btn{width:100%}.repair-detail-top-v510{align-items:stretch;flex-direction:column}}


/* Bradioo Dashboard v5.1.1 – reparatie UX */
.repair-search-v511{
  display:flex;
  align-items:center;
  gap:9px;
  margin-bottom:14px;
  padding:12px;
}
.repair-search-v511 input{
  flex:1;
  min-height:42px;
  padding:9px 12px;
  border:1px solid #cfdae5;
  border-radius:9px;
}
.repair-workspace-v511{
  display:grid;
  gap:18px;
}
.repair-workspace-head-v511{
  display:grid;
  gap:14px;
}
.repair-workspace-head-v511 h1{
  margin:0 0 4px;
}
.repair-workspace-layout-v511{
  display:grid;
  grid-template-columns:minmax(0,1fr) 340px;
  gap:16px;
  align-items:start;
}
.repair-workspace-main-v511{
  display:grid;
  gap:14px;
}
.repair-workspace-main-v511 .card h2,
.repair-workspace-aside-v511 .card h2{
  margin-top:0;
}
.repair-workspace-aside-v511{
  display:grid;
  gap:12px;
  position:sticky;
  top:16px;
}
.repair-workspace-aside-v511 .field{
  margin-top:10px;
}
.repair-total-v511{
  margin-top:14px;
  padding:12px;
  border-radius:9px;
  background:#eaf4ff;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.repair-save-v511{
  width:100%;
  min-height:46px;
}
@media(max-width:1050px){
  .repair-workspace-layout-v511{
    grid-template-columns:1fr;
  }
  .repair-workspace-aside-v511{
    position:static;
  }
}
@media(max-width:700px){
  .repair-search-v511{
    align-items:stretch;
    flex-direction:column;
  }
  .repair-search-v511 .btn{
    width:100%;
  }
}


/* Bradioo Dashboard v5.1.2 – fullscreen reparatiedetail */
.repair-detail-workspace-v512{
  display:grid;
  gap:18px;
}
.repair-detail-head-v512{
  display:grid;
  gap:14px;
}
.repair-detail-title-v512{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.repair-detail-title-v512 h1{
  margin:5px 0;
  font-size:32px;
}
.repair-detail-title-v512 p{
  margin:0;
  color:#718398;
}
.repair-detail-actions-v512{
  display:flex;
  align-items:center;
  gap:9px;
}
.repair-detail-summary-v512{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:10px;
}
.repair-detail-summary-v512 .card{
  padding:14px;
}
.repair-detail-summary-v512 small,
.repair-detail-summary-v512 b{
  display:block;
}
.repair-detail-summary-v512 small{
  margin-bottom:4px;
  color:#718398;
}
.repair-detail-layout-v512{
  display:grid;
  grid-template-columns:minmax(0,1fr) 340px;
  gap:16px;
  align-items:start;
}
.repair-detail-main-v512{
  display:grid;
  gap:14px;
}
.repair-detail-aside-v512{
  display:grid;
  gap:14px;
  position:sticky;
  top:16px;
}
.repair-detail-main-v512 h2,
.repair-detail-aside-v512 h2{
  margin-top:0;
}
.repair-description-v512{
  line-height:1.65;
}
.repair-accessories-v512{
  margin-top:14px;
  padding:12px;
  border-radius:9px;
  background:#f6f9fc;
}
.repair-accessories-v512 small,
.repair-accessories-v512 b{
  display:block;
}
.repair-accessories-v512 small{
  color:#718398;
  margin-bottom:3px;
}
.repair-aside-row-v512{
  padding:9px 0;
  border-bottom:1px solid #e2e9f0;
}
.repair-aside-row-v512:last-child{
  border-bottom:0;
}
.repair-aside-row-v512 small,
.repair-aside-row-v512 b{
  display:block;
}
.repair-aside-row-v512 small{
  color:#718398;
  margin-bottom:2px;
}
.repair-detail-form-v512{
  display:grid;
  gap:10px;
  margin-top:16px;
  padding-top:16px;
  border-top:1px solid #e2e9f0;
}
.repair-client-empty-v512{
  grid-column:1/-1;
  padding:38px 24px;
  text-align:center;
}
.repair-client-empty-v512 h2{
  margin:8px 0;
}
.repair-client-empty-v512 p{
  max-width:580px;
  margin:6px auto;
}
.repair-client-empty-icon-v512{
  font-size:34px;
}
@media(max-width:1050px){
  .repair-detail-layout-v512{
    grid-template-columns:1fr;
  }
  .repair-detail-aside-v512{
    position:static;
  }
}
@media(max-width:700px){
  .repair-detail-title-v512{
    flex-direction:column;
  }
  .repair-detail-actions-v512,
  .repair-detail-actions-v512 .btn{
    width:100%;
  }
  .repair-detail-title-v512 h1{
    font-size:27px;
  }
}


/* Bradioo Dashboard v5.1.3 */
.repair-client-empty-v513{
  grid-column:1/-1;
  min-height:280px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:42px 24px;
  text-align:center;
}
.repair-client-empty-v513 h2{
  margin:10px 0 6px;
}
.repair-client-empty-v513 p{
  max-width:620px;
  margin:5px auto;
  line-height:1.55;
}


/* Bradioo Dashboard v5.1.4 */
.repair-client-error-v514{
  padding:28px;
  border-left:4px solid #d04855;
}
.repair-client-error-v514 h2{
  margin-top:0;
}
.repair-client-error-v514 p{
  margin-bottom:0;
  color:#60758b;
}


/* Bradioo Dashboard v5.1.5 – support fullscreen */
.ticket-workspace-v515{
  display:grid;
  gap:18px;
}
.ticket-workspace-head-v515{
  display:grid;
  gap:14px;
}
.ticket-workspace-title-v515{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.ticket-workspace-title-v515 h1{
  margin:5px 0;
  font-size:32px;
}
.ticket-workspace-title-v515 p{
  margin:0;
  color:#718398;
}
.ticket-workspace-actions-v515{
  display:flex;
  align-items:center;
  gap:9px;
  flex-wrap:wrap;
}
.ticket-workspace-layout-v515{
  display:grid;
  grid-template-columns:minmax(0,1fr) 320px;
  gap:16px;
  align-items:start;
}
.ticket-workspace-main-v515{
  min-width:0;
}
.ticket-workspace-aside-v515{
  display:grid;
  gap:14px;
  position:sticky;
  top:16px;
}
.ticket-workspace-aside-v515 h2,
.ticket-conversation-card-v515 h2{
  margin-top:0;
}
.ticket-conversation-v515{
  display:grid;
  gap:12px;
}
.ticket-message-v515{
  max-width:82%;
  padding:14px 16px;
  border-radius:13px;
  background:#f3f7fa;
}
.ticket-message-v515.staff{
  margin-left:auto;
  background:#eaf4ff;
  border-right:4px solid #087cf0;
}
.ticket-message-v515.client{
  border-left:4px solid #9aa8b6;
}
.ticket-message-author-v515{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.ticket-message-author-v515 b,
.ticket-message-author-v515 small{
  display:block;
}
.ticket-message-author-v515 small,
.ticket-message-author-v515 time{
  color:#718398;
  font-size:11px;
}
.ticket-message-v515 p{
  margin:10px 0 0;
  line-height:1.6;
}
.ticket-reply-v515{
  display:grid;
  gap:10px;
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid #e2e9f0;
}
.ticket-closed-v515{
  margin-top:18px;
  padding:16px;
  border-left:4px solid #299666;
  border-radius:9px;
  background:#eef9f3;
}
.ticket-closed-v515 h3{
  margin:0 0 5px;
}
.ticket-closed-v515 p{
  margin:0;
}
.ticket-aside-row-v515{
  padding:9px 0;
  border-bottom:1px solid #e2e9f0;
}
.ticket-aside-row-v515:last-child{
  border-bottom:0;
}
.ticket-aside-row-v515 small,
.ticket-aside-row-v515 b{
  display:block;
}
.ticket-aside-row-v515 small{
  color:#718398;
  margin-bottom:2px;
}
.ticket-workspace-aside-v515 select{
  width:100%;
  min-height:40px;
  padding:8px 10px;
  border:1px solid #cfdae5;
  border-radius:8px;
  background:#fff;
}
@media(max-width:1000px){
  .ticket-workspace-layout-v515{
    grid-template-columns:1fr;
  }
  .ticket-workspace-aside-v515{
    position:static;
  }
}
@media(max-width:700px){
  .ticket-workspace-title-v515{
    flex-direction:column;
  }
  .ticket-workspace-actions-v515{
    width:100%;
  }
  .ticket-workspace-actions-v515 .btn{
    width:100%;
  }
  .ticket-workspace-title-v515 h1{
    font-size:27px;
  }
  .ticket-message-v515{
    max-width:100%;
  }
}


/* Bradioo Dashboard v5.1.6 */
.ticket-create-workspace-v516{
  display:grid;
  gap:18px;
}
.ticket-create-head-v516{
  display:grid;
  gap:14px;
}
.ticket-create-head-v516 h1{
  margin:0 0 4px;
}
.ticket-create-layout-v516{
  display:grid;
  grid-template-columns:minmax(0,1fr) 320px;
  gap:16px;
  align-items:start;
}
.ticket-create-main-v516 h2,
.ticket-create-aside-v516 h2{
  margin-top:0;
}
.ticket-create-aside-v516{
  display:grid;
  gap:12px;
  position:sticky;
  top:16px;
}
.ticket-create-submit-v516{
  width:100%;
  min-height:46px;
}
.repair-warranty-zero-v516{
  background:#f2f5f7!important;
  color:#718398!important;
  cursor:not-allowed;
}
@media(max-width:950px){
  .ticket-create-layout-v516{
    grid-template-columns:1fr;
  }
  .ticket-create-aside-v516{
    position:static;
  }
}


/* Bradioo Dashboard v5.1.7 – campagnes fullscreen */
.campaign-workspace-v517{display:grid;gap:18px}
.campaign-workspace-head-v517{display:grid;gap:14px}
.campaign-workspace-head-v517 h1{margin:0 0 4px}
.campaign-detail-title-v517{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.campaign-detail-title-v517 h1{margin:5px 0;font-size:32px}
.campaign-detail-title-v517 p{margin:0;color:#718398}
.campaign-workspace-layout-v517{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;align-items:start}
.campaign-workspace-main-v517{display:grid;gap:14px;min-width:0}
.campaign-workspace-aside-v517{display:grid;gap:12px;position:sticky;top:16px}
.campaign-workspace-main-v517 h2,.campaign-workspace-aside-v517 h2{margin-top:0}
.campaign-save-v517{width:100%;min-height:46px}
.campaign-detail-audio-v517{width:100%;margin-bottom:14px}
.campaign-aside-row-v517{padding:9px 0;border-bottom:1px solid #e2e9f0}
.campaign-aside-row-v517:last-child{border-bottom:0}
.campaign-aside-row-v517 small,.campaign-aside-row-v517 b{display:block}
.campaign-aside-row-v517 small{color:#718398;margin-bottom:2px}
@media(max-width:950px){.campaign-workspace-layout-v517{grid-template-columns:1fr}.campaign-workspace-aside-v517{position:static}}
@media(max-width:700px){.campaign-detail-title-v517{flex-direction:column}.campaign-detail-title-v517 h1{font-size:27px}}


/* Bradioo Dashboard v5.1.8 */
.campaign-card-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.campaign-overview-card{
  position:relative;
  display:grid;
  gap:14px;
  padding:18px;
  border:1px solid #dce5ed;
  border-radius:13px;
  background:#fff;
  box-shadow:0 5px 16px rgba(15,34,54,.05);
}
.campaign-overview-card.is-archived{
  background:#f7f9fb;
}
.campaign-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.campaign-card-head h3{
  margin:5px 0 8px;
}
.campaign-reference{
  color:#087cf0;
  font-size:11px;
  font-weight:900;
}
.campaign-card-meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px 16px;
}
.campaign-card-meta span,
.campaign-card-meta b{
  display:block;
}
.campaign-card-meta span{
  color:#718398;
  font-size:11px;
}
.campaign-card-meta b{
  color:#334b63;
}
.campaign-card-body{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px,.8fr);
  gap:14px;
}
.campaign-info-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.campaign-info-grid>div{
  padding:10px;
  border-radius:9px;
  background:#f6f9fc;
}
.campaign-info-grid small,
.campaign-info-grid strong{
  display:block;
}
.campaign-info-grid small{
  color:#718398;
  margin-bottom:3px;
}
.campaign-audio-block small{
  display:block;
  margin-bottom:6px;
  color:#718398;
}
.campaign-card-description{
  margin:0;
  color:#60758b;
  line-height:1.5;
}
.campaign-card-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.campaign-card-select{
  position:absolute;
  top:12px;
  right:12px;
  z-index:2;
}
.campaign-card-select+.campaign-card-head{
  padding-right:28px;
}
@media(max-width:1000px){
  .campaign-card-list{
    grid-template-columns:1fr;
  }
}
@media(max-width:650px){
  .campaign-card-body{
    grid-template-columns:1fr;
  }
  .campaign-card-actions{
    align-items:stretch;
    flex-direction:column;
  }
  .campaign-card-actions .btn{
    width:100%;
  }
}


/* Bradioo Dashboard v5.2.0 – Mijn devices lijstweergave */
.client-device-toolbar-v520{
  display:grid;
  gap:10px;
  margin-bottom:14px;
  padding:13px;
}
.client-device-search-v520 input{
  width:100%;
  min-height:43px;
  padding:10px 12px;
  border:1px solid #cfdae5;
  border-radius:9px;
}
.client-device-filters-v520{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px;
}
.client-device-filters-v520 select{
  width:100%;
  min-height:40px;
  padding:8px 9px;
  border:1px solid #cfdae5;
  border-radius:8px;
  background:#fff;
}
.client-device-result-v520{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:#718398;
}
.client-device-list-wrap-v520{
  padding:0;
  overflow:hidden;
}
.client-device-table-v520{
  display:grid;
}
.client-device-row-v520{
  display:grid;
  grid-template-columns:minmax(190px,1.4fr) minmax(110px,.8fr) minmax(120px,.9fr) minmax(120px,.9fr) minmax(100px,.7fr) minmax(130px,.9fr) minmax(190px,1fr);
  align-items:center;
  gap:12px;
  padding:13px 15px;
  border-bottom:1px solid #e2e9f0;
}
.client-device-row-v520:last-child{
  border-bottom:0;
}
.client-device-head-v520{
  background:#f5f8fb;
  color:#60758b;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.03em;
}
.client-device-row-v520>div{
  min-width:0;
}
.client-device-row-v520 b,
.client-device-row-v520 small{
  display:block;
}
.client-device-row-v520 small{
  margin-top:3px;
  color:#718398;
}
.client-device-actions-v520{
  display:flex;
  gap:7px;
  justify-content:flex-end;
}
.client-device-pagination-v520{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  margin-top:14px;
}
.client-device-empty-v520{
  padding:36px 20px;
}
.client-device-empty-v520 h3{
  margin:0 0 5px;
}
.client-device-empty-v520 p{
  margin:0;
}
@media(max-width:1150px){
  .client-device-filters-v520{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .client-device-list-wrap-v520{
    overflow-x:auto;
  }
  .client-device-table-v520{
    min-width:1050px;
  }
}
@media(max-width:700px){
  .client-device-filters-v520{
    grid-template-columns:1fr;
  }
  .client-device-result-v520{
    align-items:stretch;
    flex-direction:column;
  }
  .client-device-result-v520 .btn{
    width:100%;
  }
  .client-device-list-wrap-v520{
    overflow:visible;
    background:transparent;
    box-shadow:none;
  }
  .client-device-table-v520{
    min-width:0;
    gap:10px;
  }
  .client-device-head-v520{
    display:none;
  }
  .client-device-row-v520{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
    padding:15px;
    border:1px solid #dce5ed;
    border-radius:11px;
    background:#fff;
  }
  .client-device-row-v520>div{
    display:grid;
    grid-template-columns:105px minmax(0,1fr);
    gap:8px;
    align-items:start;
  }
  .client-device-row-v520>div:before{
    content:attr(data-label);
    color:#718398;
    font-size:11px;
    font-weight:800;
  }
  .client-device-row-v520>div:first-child{
    grid-template-columns:1fr;
  }
  .client-device-row-v520>div:first-child:before{
    display:none;
  }
  .client-device-actions-v520{
    grid-template-columns:1fr!important;
  }
  .client-device-actions-v520:before{
    display:none;
  }
  .client-device-actions-v520 .btn{
    width:100%;
  }
}


/* Bradioo Dashboard v5.3.0 – supportonderwerpen */
.ticket-topic-extra-v530{
  margin-top:14px;
  padding:14px;
  border-left:4px solid #087cf0;
  border-radius:9px;
  background:#f4f9ff;
}
.ticket-topic-extra-v530 input,
.ticket-topic-extra-v530 select,
#ticket-create-form-v530>div select,
#ticket-create-form-v530 .field>select{
  width:100%;
  min-height:42px;
  padding:9px 11px;
  border:1px solid #cfdae5;
  border-radius:8px;
  background:#fff;
}
.ticket-topic-card-v530{
  border-top:4px solid #087cf0;
}


/* Bradioo Dashboard v5.4.0 – Facturatie */
.invoice-document-grid-v540{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.invoice-document-card-v540{display:grid;gap:14px}.invoice-document-card-v540 h3{margin:5px 0}.invoice-document-card-v540 small{color:#718398}.invoice-document-total-v540{font-size:26px;font-weight:900}.invoice-document-actions-v540{display:flex;gap:8px}
.invoice-editor-v540{display:grid;gap:18px}.invoice-editor-head-v540{display:grid;gap:14px;margin-bottom:16px}.invoice-editor-head-v540 h1{margin:0 0 4px}.invoice-editor-layout-v540{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.82fr);gap:18px;align-items:start}.invoice-editor-fields-v540{display:grid;gap:14px}.invoice-editor-fields-v540 h2{margin-top:0}.invoice-editor-preview-v540{display:grid;gap:12px;position:sticky;top:14px}
.invoice-line-v540{display:grid;grid-template-columns:minmax(180px,2fr) 90px 130px 90px auto;gap:8px;align-items:end;padding:11px 0;border-bottom:1px solid #e2e9f0}.invoice-line-v540 .field{margin:0}.invoice-line-v540 input,.invoice-line-v540 select{width:100%;min-height:39px;padding:8px;border:1px solid #cfdae5;border-radius:8px}
.invoice-a4-v540{aspect-ratio:210/297;width:100%;background:#fff center/cover no-repeat;box-shadow:0 8px 28px rgba(10,25,42,.18);overflow:hidden}.invoice-a4-content-v540{height:100%;padding:7%;display:flex;flex-direction:column;color:#132238;background:rgba(255,255,255,.91)}.invoice-a4-v540 header{display:flex;justify-content:space-between;gap:20px;border-bottom:3px solid #087cf0;padding-bottom:18px}.invoice-a4-v540 header img{max-width:150px;max-height:48px}.invoice-a4-v540 header h2{margin:8px 0 0;font-size:22px}.invoice-company-v540{display:grid;text-align:right;font-size:10px}.invoice-meta-v540{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:24px 0}.invoice-meta-v540>div{display:grid;gap:4px}.invoice-meta-v540>div:last-child span{display:grid;grid-template-columns:1fr 1fr;gap:8px}.invoice-meta-v540 small{color:#667d94}.invoice-a4-v540 table{width:100%;border-collapse:collapse;font-size:9px}.invoice-a4-v540 th{background:#dcefff;text-align:left}.invoice-a4-v540 th,.invoice-a4-v540 td{padding:7px;border-bottom:1px solid #dce5ed}.invoice-totals-v540{align-self:flex-end;width:52%;margin-top:18px}.invoice-totals-v540>div{display:flex;justify-content:space-between;padding:5px 8px}.invoice-totals-v540 .grand{background:#cce9ff;font-size:12px}.invoice-a4-v540 footer{margin-top:auto;font-size:8px;border-top:1px solid #dce5ed;padding-top:12px}.invoice-editor-buttons-v540{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.invoice-template-layout-v540{display:grid;grid-template-columns:.8fr 1.2fr;gap:16px}.invoice-template-preview-v540{width:100%;max-height:720px;object-fit:contain;background:#eee}
.billing-create-row-v540{display:grid;grid-template-columns:2fr 140px 90px 1.3fr auto;gap:8px;align-items:end;padding:10px 0;border-bottom:1px solid #e2e9f0}.billing-create-row-v540 .field{margin:0}.billing-create-row-v540 input,.billing-create-row-v540 select{width:100%;min-height:39px;padding:8px;border:1px solid #cfdae5;border-radius:8px}
@media(max-width:1200px){.invoice-document-grid-v540{grid-template-columns:repeat(2,minmax(0,1fr))}.invoice-editor-layout-v540{grid-template-columns:1fr}.invoice-editor-preview-v540{position:static}.invoice-a4-v540{max-width:720px;margin:auto}.invoice-template-layout-v540{grid-template-columns:1fr}}
@media(max-width:760px){.invoice-document-grid-v540{grid-template-columns:1fr}.invoice-line-v540,.billing-create-row-v540{grid-template-columns:1fr}.invoice-editor-buttons-v540{grid-template-columns:1fr}.invoice-meta-v540{grid-template-columns:1fr}.invoice-a4-content-v540{padding:5%}.invoice-a4-v540 header{flex-direction:column}.invoice-company-v540{text-align:left}}


/* Bradioo Dashboard v5.4.1 */
.invoice-brand-v541 img{display:block;width:155px;max-height:54px;object-fit:contain;object-position:left center}.invoice-brand-v541 h2{margin-top:10px!important}
.invoice-draft-toolbar-v541{margin-bottom:14px;padding:12px}.invoice-draft-toolbar-v541 input{width:100%;min-height:42px;padding:9px 12px;border:1px solid #cfdae5;border-radius:9px}
.invoice-draft-table-v541 td{vertical-align:middle}
.invoice-a4-v540 .invoice-meta-v540>div:first-child span{display:block;font-size:9px;margin-top:3px}
.invoice-a4-v540 .invoice-company-v540 span{line-height:1.35}
.billing-create-row-v540{grid-template-columns:2fr 90px 150px 90px 1.3fr auto}
@media(max-width:850px){.billing-create-row-v540{grid-template-columns:1fr}}


/* Bradioo Dashboard v5.4.2 */
.invoice-pdf-note-v542{display:block;text-align:center;line-height:1.45}
#invoice-preview-v542:empty:before{content:"Voorbeeld wordt geladen...";display:block;padding:30px;text-align:center;color:#718398;background:#fff}


/* Bradioo Dashboard v5.4.3 */
.billing-proposal-actions-v543{flex-wrap:wrap}
.billing-selected-summary-v543{display:grid;gap:7px;margin:14px 0;padding:10px;border-radius:9px;background:#f6f9fc}
.billing-selected-summary-v543>div{display:grid;grid-template-columns:90px 1fr auto;gap:8px;align-items:center;padding:7px;border-bottom:1px solid #dfe7ee}
.billing-selected-summary-v543>div:last-child{border-bottom:0}
.billing-selected-summary-v543 span{color:#60758b}
@media(max-width:700px){.billing-selected-summary-v543>div{grid-template-columns:1fr}.billing-proposal-actions-v543 .btn{width:100%}}


/* Bradioo Dashboard v5.4.4 */
.table td .btn + .btn{margin-left:6px}


/* Bradioo Dashboard v5.4.5 */
.support-tabs{overflow-x:auto}


/* Bradioo Dashboard v5.5.0 – Offertes */
.quote-line-v550{display:grid;grid-template-columns:130px minmax(180px,2fr) 90px 140px 90px auto;gap:8px;align-items:end;padding:11px 0;border-bottom:1px solid #e2e9f0}
.quote-line-v550 .field{margin:0}.quote-line-v550 input,.quote-line-v550 select{width:100%;min-height:39px;padding:8px;border:1px solid #cfdae5;border-radius:8px}
.quote-section-title-v550{margin:14px 0 5px;font-size:11px;text-transform:uppercase;color:#087cf0}
.quote-totals-v550{align-self:flex-end;width:58%;margin-top:15px}.quote-totals-v550>div{display:flex;justify-content:space-between;padding:5px 8px}.quote-totals-v550>div:nth-child(2){background:#e5f3ff}
.quote-a4-v550 table{margin-bottom:8px}
@media(max-width:850px){.quote-line-v550{grid-template-columns:1fr}.quote-totals-v550{width:100%}}


/* Bradioo Dashboard v5.5.1 */
#quote-preview-v550:empty:before{
  content:"Offertevoorbeeld wordt geladen...";
  display:block;
  padding:30px;
  text-align:center;
  color:#718398;
  background:#fff;
}


/* Bradioo Dashboard v5.5.2 – offerte-editor zonder overlap */
.invoice-editor-layout-v540{
  align-items:start;
}
.invoice-editor-fields-v540,
.invoice-editor-preview-v540,
.invoice-editor-fields-v540 .card{
  min-width:0;
}
.quote-line-v550{
  grid-template-columns:minmax(115px,.8fr) minmax(155px,1.5fr) minmax(70px,.55fr) minmax(110px,.75fr) minmax(78px,.55fr) auto;
}
.quote-line-v550 .field{
  min-width:0;
}
.quote-line-v550 input,
.quote-line-v550 select{
  min-width:0;
}
#quote-preview-v550{
  width:100%;
  min-width:0;
}
.quote-a4-v550{
  max-width:100%;
}

/* Rond laptopbreedte gaat het voorbeeld onder het formulier.
   Hierdoor kan het nooit over de offertregels heen vallen. */
@media(max-width:1500px){
  .invoice-editor-layout-v540{
    grid-template-columns:minmax(0,1fr);
  }
  .invoice-editor-preview-v540{
    position:static;
    width:min(100%,760px);
    margin:0 auto;
  }
}

/* Op smallere schermen worden offertregels zelf ook gestapeld. */
@media(max-width:980px){
  .quote-line-v550{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .quote-line-v550 [data-quote-line-remove]{
    width:100%;
  }
}
@media(max-width:650px){
  .quote-line-v550{
    grid-template-columns:1fr;
  }
}


/* Bradioo Dashboard v5.5.3 – btw eenmalig en maandelijks */
.quote-totals-v550{
  width:64%;
}
.quote-total-heading-v553{
  margin-top:6px;
  background:#eef6fd;
  color:#087cf0;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
}
.quote-total-heading-v553:first-child{
  margin-top:0;
}
.quote-total-strong-v553{
  background:#d7edff;
  font-weight:900;
}
@media(max-width:850px){
  .quote-totals-v550{
    width:100%;
  }
}


/* Bradioo Dashboard v5.5.4 – offertevoorbeeld en PDF dichter bij elkaar */
.quote-section-title-v550{
  margin:12px 0 4px;
  font-size:9px;
  line-height:1.2;
  letter-spacing:.02em;
}
.quote-total-heading-v553{
  padding:5px 8px;
  font-size:7.5px;
  line-height:1.2;
}
.quote-totals-v550>div{
  padding:4px 8px;
  font-size:9px;
}
.quote-total-strong-v553{
  padding-top:6px!important;
  padding-bottom:6px!important;
  font-size:10px!important;
}


/* Bradioo Dashboard v5.5.5 */
.quote-manual-customer-v555{display:none;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px;border-left:4px solid #087cf0;background:#f5f9fd;border-radius:8px}.quote-manual-customer-v555 .field{margin:0}@media(max-width:700px){.quote-manual-customer-v555{grid-template-columns:1fr}}


/* Bradioo Dashboard v5.5.6 */
.quote-line-duration-v556{
  grid-template-columns:120px minmax(160px,1.5fr) 82px 120px 130px 82px auto;
}
.quote-duration-input-v556{
  display:flex;
  align-items:center;
  gap:6px;
}
.quote-duration-input-v556 span{
  color:#718398;
  font-size:12px;
}
.quote-duration-field-v556[hidden]{
  display:none!important;
}
@media(max-width:1150px){
 .quote-line-duration-v556{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:650px){
 .quote-line-duration-v556{grid-template-columns:1fr}
}


/* Bradioo Dashboard v5.5.7 */
.quote-line-v557{
 display:grid;
 grid-template-columns:minmax(125px,.8fr) minmax(200px,1.7fr) minmax(80px,.55fr) minmax(145px,.9fr) minmax(145px,.9fr) minmax(95px,.6fr) auto;
 gap:12px;
 align-items:end;
}
.quote-line-v557 .field{min-width:0}
.quote-line-v557 input,.quote-line-v557 select{width:100%;min-width:0}
.quote-line-v557 .quote-remove-v557{min-height:42px;white-space:nowrap}
.quote-duration-input-v556{display:grid;grid-template-columns:minmax(70px,1fr) auto;gap:8px;align-items:center}
#quote-manual-customer-v557{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media(max-width:1450px){
 .quote-line-v557{grid-template-columns:repeat(3,minmax(0,1fr))}
 .quote-line-v557 .quote-remove-v557{width:100%}
}
@media(max-width:800px){
 .quote-line-v557{grid-template-columns:repeat(2,minmax(0,1fr))}
 #quote-manual-customer-v557{grid-template-columns:1fr}
}
@media(max-width:560px){.quote-line-v557{grid-template-columns:1fr}}


/* Bradioo Dashboard v5.5.8 – stabiele offerte-editor */
.quote-editor-layout-v558{
  grid-template-columns:minmax(0,1fr);
}
.quote-editor-layout-v558 .invoice-editor-preview-v540{
  position:static;
  width:min(100%,760px);
  margin:0 auto;
}
.quote-line-v557{
  width:100%;
  box-sizing:border-box;
  grid-template-columns:
    minmax(125px,.85fr)
    minmax(180px,1.6fr)
    minmax(75px,.5fr)
    minmax(125px,.8fr)
    minmax(125px,.8fr)
    minmax(85px,.55fr)
    minmax(118px,.7fr);
}
.quote-line-v557 > *{
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.quote-line-v557 .quote-remove-v557{
  width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
}
#quote-lines-v557{
  width:100%;
  min-width:0;
  overflow:hidden;
}
#quote-preview-v557{
  width:100%;
  min-height:400px;
}
#quote-preview-v557 .invoice-a4-v540{
  width:100%;
  max-width:760px;
  margin:0 auto;
}
@media(min-width:1800px){
  .quote-editor-layout-v558{
    grid-template-columns:minmax(0,1fr) minmax(520px,.72fr);
  }
  .quote-editor-layout-v558 .invoice-editor-preview-v540{
    position:sticky;
    top:14px;
    width:100%;
  }
}
@media(max-width:1150px){
  .quote-line-v557{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:760px){
  .quote-line-v557{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:520px){
  .quote-line-v557{
    grid-template-columns:1fr;
  }
}


/* Bradioo Dashboard v5.5.9 – preview rechts wanneer er ruimte is */
@media(min-width:1480px){
  .quote-editor-layout-v558{
    grid-template-columns:minmax(760px,1.25fr) minmax(480px,.75fr);
    gap:18px;
    align-items:start;
  }
  .quote-editor-layout-v558 .invoice-editor-preview-v540{
    position:sticky;
    top:14px;
    width:100%;
    max-width:none;
    margin:0;
  }
  .quote-editor-layout-v558 #quote-preview-v557 .invoice-a4-v540{
    width:100%;
    max-width:none;
  }
  .quote-editor-layout-v558 .quote-line-v557{
    grid-template-columns:
      minmax(115px,.8fr)
      minmax(165px,1.35fr)
      minmax(70px,.5fr)
      minmax(110px,.75fr)
      minmax(115px,.8fr)
      minmax(82px,.55fr)
      minmax(108px,.7fr);
    gap:8px;
  }
}
@media(min-width:1480px) and (max-width:1660px){
  .quote-editor-layout-v558{
    grid-template-columns:minmax(720px,1.15fr) minmax(440px,.75fr);
  }
  .quote-editor-layout-v558 .quote-line-v557{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .quote-editor-layout-v558 .quote-remove-v557{
    width:100%;
  }
}


/* Bradioo Dashboard v5.6.0 – compactere offerte en stabiele PDF-export */
.quote-totals-v550{
  width:54%;
  margin-top:10px;
}
.quote-totals-v550>div{
  padding:3px 7px;
  font-size:8px;
  line-height:1.25;
}
.quote-total-heading-v553{
  padding:4px 7px;
  font-size:6.8px;
}
.quote-total-strong-v553{
  padding-top:5px!important;
  padding-bottom:5px!important;
  font-size:8.8px!important;
}
.quote-a4-v550 table{
  font-size:8px;
}
.quote-a4-v550 th,
.quote-a4-v550 td{
  padding:5px 6px;
}
.quote-section-title-v550{
  margin:9px 0 3px;
  font-size:8px;
}
.quote-a4-v550 .invoice-meta-v540{
  margin:18px 0;
}
.quote-a4-v550 footer{
  font-size:7px;
}


/* Bradioo Dashboard v5.6.1 – één gedeelde documentopmaak */
.document-sheet-v561{
  aspect-ratio:210/297;
  width:100%;
  max-width:794px;
  min-height:1123px;
  padding:57px 57px 49px;
  position:relative;
  background:#fff;
  color:#122238;
  font-family:Arial,Helvetica,sans-serif;
  box-shadow:0 8px 28px rgba(10,25,42,.18);
  overflow:hidden;
}
.document-top-v561{display:flex;justify-content:space-between;gap:60px;border-bottom:4px solid #087cf0;padding-bottom:26px}
.document-brand-v561 img{width:204px;height:auto;display:block}
.document-brand-v561 h1{font-size:30px;line-height:1;margin:12px 0 0}
.document-company-v561{text-align:right;font-size:12px;line-height:1.35}
.document-company-v561 b,.document-company-v561 span{display:block}
.document-meta-v561{display:grid;grid-template-columns:1fr 1fr;gap:68px;margin:38px 0 42px}
.document-recipient-v561 small,.document-details-v561 small{color:#6e8297;font-size:13px}
.document-recipient-v561 b{display:block;font-size:20px;margin:15px 0}
.document-recipient-v561 span{display:block;font-size:12px;line-height:1.5}
.document-details-v561>div{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:8px}
.document-details-v561 b{font-size:18px}
.document-section-title-v561{font-size:12px;color:#087cf0;text-transform:uppercase;margin:26px 0 8px;letter-spacing:.02em}
.document-items-v561{width:100%;border-collapse:collapse;font-size:11px}
.document-items-v561 th{background:#d9edfc;text-align:left;padding:9px}
.document-items-v561 td{padding:9px;border-bottom:1px solid #d5e0e9}
.document-items-v561 th:nth-child(n+2),.document-items-v561 td:nth-child(n+2){text-align:right}
.document-summary-v561{width:54%;margin:24px 0 0 auto;font-size:12px}
.document-summary-v561 .head{background:#edf5fb;color:#087cf0;font-size:10px;font-weight:700;text-transform:uppercase;padding:6px 10px}
.document-summary-v561>div:not(.head){display:flex;justify-content:space-between;padding:7px 10px}
.document-summary-v561 .strong{background:#d5ebfb;font-weight:700;font-size:13px}
.document-summary-v561 .monthly{margin-top:4px}
.document-footer-v561{position:absolute;left:57px;right:57px;bottom:49px;border-top:1px solid #d5e0e9;padding-top:22px;font-size:10px;line-height:1.5}
@media(max-width:900px){
 .document-sheet-v561{min-height:auto;aspect-ratio:210/297;padding:7.2%;font-size:inherit}
 .document-top-v561{gap:7%;padding-bottom:3.3%}
 .document-brand-v561 img{width:29%}
 .document-brand-v561 h1{font-size:clamp(17px,3.8vw,30px)}
 .document-company-v561{font-size:clamp(7px,1.5vw,12px)}
 .document-meta-v561{gap:8%;margin:5% 0}
 .document-recipient-v561 b{font-size:clamp(12px,2.5vw,20px);margin:2% 0}
 .document-details-v561 b{font-size:clamp(10px,2.2vw,18px)}
 .document-items-v561{font-size:clamp(7px,1.4vw,11px)}
 .document-items-v561 th,.document-items-v561 td{padding:1.2%}
 .document-summary-v561{font-size:clamp(7px,1.5vw,12px)}
 .document-footer-v561{left:7.2%;right:7.2%;bottom:5.8%;padding-top:2.7%;font-size:clamp(6px,1.2vw,10px)}
}


/* Bradioo Dashboard v5.6.2 – A4-voorbeeld schaalt binnen de beschikbare kolom */
.invoice-editor-preview-v540{
  min-width:0;
  overflow:visible;
  container-type:inline-size;
}
.invoice-editor-preview-v540 > div[id*="preview"]{
  min-width:0;
  width:100%;
}
.invoice-editor-preview-v540 .document-sheet-v561{
  box-sizing:border-box;
  width:min(100%,794px);
  max-width:100%;
  min-width:0;
  min-height:0;
  height:auto;
  aspect-ratio:210/297;
  margin:0 auto;
  padding:
    clamp(24px,7.18cqw,57px)
    clamp(24px,7.18cqw,57px)
    clamp(21px,6.17cqw,49px);
  overflow:hidden;
}

/* Alle documentonderdelen schalen mee met de breedte van de previewkolom. */
.invoice-editor-preview-v540 .document-top-v561{
  gap:clamp(20px,7.55cqw,60px);
  border-bottom-width:clamp(2px,.5cqw,4px);
  padding-bottom:clamp(11px,3.27cqw,26px);
}
.invoice-editor-preview-v540 .document-brand-v561{
  min-width:0;
  flex:0 1 auto;
}
.invoice-editor-preview-v540 .document-brand-v561 img{
  width:clamp(105px,25.69cqw,204px);
  max-width:100%;
}
.invoice-editor-preview-v540 .document-brand-v561 h1{
  font-size:clamp(17px,3.78cqw,30px);
  margin-top:clamp(6px,1.51cqw,12px);
}
.invoice-editor-preview-v540 .document-company-v561{
  min-width:0;
  max-width:48%;
  font-size:clamp(7px,1.51cqw,12px);
  overflow-wrap:anywhere;
}
.invoice-editor-preview-v540 .document-meta-v561{
  gap:clamp(22px,8.56cqw,68px);
  margin:
    clamp(18px,4.79cqw,38px)
    0
    clamp(20px,5.29cqw,42px);
}
.invoice-editor-preview-v540 .document-recipient-v561 small,
.invoice-editor-preview-v540 .document-details-v561 small{
  font-size:clamp(8px,1.64cqw,13px);
}
.invoice-editor-preview-v540 .document-recipient-v561 b{
  font-size:clamp(12px,2.52cqw,20px);
  margin:clamp(7px,1.89cqw,15px) 0;
}
.invoice-editor-preview-v540 .document-recipient-v561 span{
  font-size:clamp(7px,1.51cqw,12px);
}
.invoice-editor-preview-v540 .document-details-v561>div{
  gap:clamp(6px,1.89cqw,15px);
  margin-bottom:clamp(4px,1cqw,8px);
}
.invoice-editor-preview-v540 .document-details-v561 b{
  min-width:0;
  font-size:clamp(10px,2.27cqw,18px);
  overflow-wrap:anywhere;
}
.invoice-editor-preview-v540 .document-section-title-v561{
  font-size:clamp(8px,1.51cqw,12px);
  margin:
    clamp(12px,3.27cqw,26px)
    0
    clamp(4px,1cqw,8px);
}
.invoice-editor-preview-v540 .document-items-v561{
  table-layout:fixed;
  font-size:clamp(7px,1.39cqw,11px);
}
.invoice-editor-preview-v540 .document-items-v561 th,
.invoice-editor-preview-v540 .document-items-v561 td{
  padding:clamp(4px,1.13cqw,9px);
  overflow-wrap:anywhere;
}
.invoice-editor-preview-v540 .document-summary-v561{
  width:min(58%,360px);
  margin-top:clamp(10px,3.02cqw,24px);
  font-size:clamp(7px,1.51cqw,12px);
}
.invoice-editor-preview-v540 .document-summary-v561 .head{
  font-size:clamp(6px,1.26cqw,10px);
  padding:clamp(3px,.76cqw,6px) clamp(5px,1.26cqw,10px);
}
.invoice-editor-preview-v540 .document-summary-v561>div:not(.head){
  padding:clamp(3px,.88cqw,7px) clamp(5px,1.26cqw,10px);
}
.invoice-editor-preview-v540 .document-summary-v561 .strong{
  font-size:clamp(8px,1.64cqw,13px);
}
.invoice-editor-preview-v540 .document-footer-v561{
  left:clamp(24px,7.18cqw,57px);
  right:clamp(24px,7.18cqw,57px);
  bottom:clamp(21px,6.17cqw,49px);
  padding-top:clamp(9px,2.77cqw,22px);
  font-size:clamp(6px,1.26cqw,10px);
}

/* Op een smallere preview blijft de kop bruikbaar zonder afsnijden. */
@container (max-width:560px){
  .document-top-v561{
    gap:18px;
  }
  .document-company-v561{
    max-width:52%;
  }
  .document-meta-v561{
    gap:18px;
  }
  .document-summary-v561{
    width:62%;
  }
}
@container (max-width:420px){
  .document-company-v561{
    max-width:55%;
  }
  .document-summary-v561{
    width:68%;
  }
}


/* Bradioo Dashboard v5.6.3 */
.document-items-v561 th:nth-child(1),.document-items-v561 td:nth-child(1){width:38%;text-align:left}
.document-items-v561 th:nth-child(n+2),.document-items-v561 td:nth-child(n+2){white-space:nowrap}
#quote-lines-v563{min-width:0;overflow:hidden}
#quote-manual-v563{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media(max-width:760px){#quote-manual-v563{grid-template-columns:1fr}}

/* Bradioo Dashboard v5.6.4 */
#quote-open-error-back-v564{margin-top:12px}

/* Bradioo Dashboard v5.6.5 – PDF-uitlijning */

/* Bradioo Dashboard v5.6.6 – vaste PDF-kolomuitlijning */

/* Bradioo Dashboard v5.6.7 – serverdiagnose */

/* Bradioo Dashboard v5.7.0 – browser print/PDF */

/* Bradioo Dashboard v5.7.1 – printtabel laatste kolom */

/* Bradioo Dashboard v5.7.2 – klanttoegang factuurprint */

/* Bradioo Dashboard v5.7.3 – ingelogde gebruiker op printpagina */

/* Bradioo Dashboard v5.7.4 – beveiligde klantfactuurlink */

/* Bradioo Dashboard v5.7.5 – klantfactuurtoegang zonder dubbele blokkade */


/* Bradioo Dashboard v5.7.6 – regels verslepen */
.sortable-line-v576{
 position:relative;
}
.line-order-v576{
 display:flex;
 align-items:center;
 gap:5px;
 align-self:end;
 min-width:42px;
}
.line-drag-handle-v576{
 width:34px;
 min-width:34px;
 height:42px;
 border:1px solid #cbd8e5;
 border-radius:8px;
 background:#f4f7fa;
 color:#60758a;
 font-size:18px;
 font-weight:900;
 letter-spacing:-4px;
 cursor:grab;
 touch-action:none;
}
.line-drag-handle-v576:active{cursor:grabbing}
.line-order-buttons-v576{
 display:none;
 flex-direction:column;
 gap:2px;
}
.line-order-buttons-v576 button{
 width:29px;
 height:20px;
 padding:0;
 border:1px solid #cbd8e5;
 border-radius:5px;
 background:#f4f7fa;
 color:#23384d;
 font-weight:900;
 cursor:pointer;
}
.dragging-v576{
 opacity:.48;
 outline:2px dashed #1688f8;
 outline-offset:3px;
}
.invoice-line-v540.sortable-line-v576{
 grid-template-columns:42px minmax(190px,2fr) 90px 135px 90px auto;
}
.quote-line-v557.sortable-line-v576{
 grid-template-columns:42px minmax(115px,.8fr) minmax(165px,1.35fr) minmax(70px,.5fr) minmax(110px,.75fr) minmax(115px,.8fr) minmax(82px,.55fr) minmax(108px,.7fr);
}
@media(max-width:1150px){
 .line-order-buttons-v576{display:flex}
 .line-drag-handle-v576{display:none}
 .invoice-line-v540.sortable-line-v576,
 .quote-line-v557.sortable-line-v576{
  grid-template-columns:42px repeat(2,minmax(0,1fr));
 }
}
@media(max-width:650px){
 .invoice-line-v540.sortable-line-v576,
 .quote-line-v557.sortable-line-v576{
  grid-template-columns:42px minmax(0,1fr);
 }
 .line-order-v576{align-self:start;margin-top:22px}
}


/* Bradioo Dashboard v5.7.7 – verwijderknop offertregel altijd zichtbaar */
.quote-line-v557.sortable-line-v576{
  grid-template-columns:
    42px
    minmax(115px,.8fr)
    minmax(150px,1.25fr)
    minmax(70px,.5fr)
    minmax(112px,.75fr)
    minmax(118px,.82fr)
    minmax(88px,.58fr)
    minmax(112px,.72fr);
  overflow:visible;
}
.quote-line-v557.sortable-line-v576 .quote-remove-v557{
  display:block;
  width:100%;
  min-width:0;
  max-width:100%;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  align-self:end;
}
.quote-line-v557.sortable-line-v576 .quote-duration-field-v556[hidden]{
  display:none!important;
}

/* Zodra de editorkolom te smal wordt, regels netjes over twee rijen verdelen. */
@media(max-width:1500px){
  .quote-line-v557.sortable-line-v576{
    grid-template-columns:
      42px
      minmax(130px,1fr)
      minmax(180px,1.4fr)
      minmax(80px,.55fr);
  }
  .quote-line-v557.sortable-line-v576 .quote-duration-v557,
  .quote-line-v557.sortable-line-v576 .quote-price-v557,
  .quote-line-v557.sortable-line-v576 .quote-vat-v557,
  .quote-line-v557.sortable-line-v576 .quote-remove-v557{
    grid-row:2;
  }
  .quote-line-v557.sortable-line-v576 .quote-duration-v557{grid-column:2}
  .quote-line-v557.sortable-line-v576 .quote-price-v557{grid-column:3}
  .quote-line-v557.sortable-line-v576 .quote-vat-v557{grid-column:4}
  .quote-line-v557.sortable-line-v576 .quote-remove-v557{
    grid-column:4;
    margin-top:54px;
  }
}

/* Op middelgrote schermen geen geforceerde overlap tussen BTW en Verwijderen. */
@media(max-width:1150px){
  .quote-line-v557.sortable-line-v576{
    grid-template-columns:42px repeat(2,minmax(0,1fr));
  }
  .quote-line-v557.sortable-line-v576 .quote-duration-v557,
  .quote-line-v557.sortable-line-v576 .quote-price-v557,
  .quote-line-v557.sortable-line-v576 .quote-vat-v557,
  .quote-line-v557.sortable-line-v576 .quote-remove-v557{
    grid-row:auto;
    grid-column:auto;
    margin-top:0;
  }
  .quote-line-v557.sortable-line-v576 .quote-remove-v557{
    width:100%;
  }
}

@media(max-width:650px){
  .quote-line-v557.sortable-line-v576{
    grid-template-columns:42px minmax(0,1fr);
  }
}


/* Bradioo Dashboard v5.7.8 – compacte verwijderknop offertregels */
.quote-line-v557.sortable-line-v576{
 grid-template-columns:
  42px
  minmax(110px,.82fr)
  minmax(145px,1.2fr)
  minmax(68px,.48fr)
  minmax(108px,.72fr)
  minmax(112px,.8fr)
  minmax(82px,.56fr)
  42px;
}
.quote-trash-v578{
 width:38px;
 min-width:38px;
 height:42px;
 padding:0;
 border:1px solid #ffc0c0;
 border-radius:9px;
 background:#fff2f2;
 color:#c52b2b;
 display:flex;
 align-items:center;
 justify-content:center;
 align-self:end;
 font-size:17px;
 line-height:1;
 cursor:pointer;
 overflow:hidden;
}
.quote-trash-v578:hover{
 background:#ffe5e5;
 border-color:#f59b9b;
}
.quote-trash-v578:focus-visible{
 outline:2px solid #1688f8;
 outline-offset:2px;
}

/* Oude brede verwijder-layout volledig neutraliseren. */
.quote-line-v557.sortable-line-v576 .quote-remove-v557{
 display:none!important;
}

@media(max-width:1500px){
 .quote-line-v557.sortable-line-v576{
  grid-template-columns:
   42px
   minmax(110px,.8fr)
   minmax(145px,1.15fr)
   minmax(68px,.48fr)
   minmax(105px,.7fr)
   minmax(110px,.75fr)
   minmax(80px,.54fr)
   42px;
 }
 .quote-line-v557.sortable-line-v576 .quote-duration-v557,
 .quote-line-v557.sortable-line-v576 .quote-price-v557,
 .quote-line-v557.sortable-line-v576 .quote-vat-v557,
 .quote-line-v557.sortable-line-v576 .quote-trash-v578{
  grid-row:auto;
  grid-column:auto;
  margin-top:0;
 }
}
@media(max-width:1050px){
 .quote-line-v557.sortable-line-v576{
  grid-template-columns:42px repeat(2,minmax(0,1fr)) 42px;
 }
 .quote-trash-v578{
  grid-column:4;
 }
}
@media(max-width:650px){
 .quote-line-v557.sortable-line-v576{
  grid-template-columns:42px minmax(0,1fr) 42px;
 }
 .quote-trash-v578{
  grid-column:3;
 }
}


/* Bradioo Dashboard v5.8.0 – Inkoop */
.fullscreen-workspace-v580{max-width:1180px;margin:0 auto}
.fullscreen-head-v580{display:flex;align-items:center;gap:18px;margin-bottom:20px}
.fullscreen-head-v580 h1{margin:0}
.fullscreen-form-v580{display:grid;gap:18px}
.fullscreen-actions-v580{position:sticky;bottom:0;background:rgba(238,243,248,.94);backdrop-filter:blur(8px);padding:14px 0;display:flex;justify-content:flex-end}
.purchase-bulk-v580{display:flex;justify-content:space-between;align-items:center;margin:12px 0}
.purchase-bulk-v580 label{display:flex;align-items:center;gap:8px;font-weight:700}
@media(max-width:720px){.fullscreen-head-v580{align-items:flex-start;flex-direction:column}.fullscreen-form-v580 .grid.two{grid-template-columns:1fr}}


/* Bradioo Dashboard v5.8.1 – voorbeeld inkoopbijlage */
.purchase-attachment-card-v581{
 min-width:0;
}
.purchase-file-preview-v581{
 margin-top:16px;
 min-height:360px;
 border:1px solid #d5e0e9;
 border-radius:14px;
 overflow:hidden;
 background:#f3f6f9;
}
.purchase-file-preview-v581 iframe{
 display:block;
 width:100%;
 height:680px;
 border:0;
 background:#fff;
}
.purchase-preview-head-v581{
 display:flex;
 justify-content:space-between;
 align-items:center;
 gap:16px;
 padding:12px 15px;
 border-bottom:1px solid #d5e0e9;
 background:#fff;
 font-size:13px;
}
.purchase-preview-head-v581 b{
 min-width:0;
 overflow:hidden;
 text-overflow:ellipsis;
 white-space:nowrap;
}
.purchase-preview-empty-v581{
 min-height:360px;
 display:flex;
 align-items:center;
 justify-content:center;
 padding:30px;
 text-align:center;
 color:#6e8297;
}
.purchase-image-preview-v581{
 display:flex;
 justify-content:center;
 align-items:flex-start;
 min-height:360px;
 max-height:760px;
 padding:18px;
 overflow:auto;
}
.purchase-image-preview-v581 img{
 max-width:100%;
 height:auto;
 border-radius:8px;
 box-shadow:0 5px 20px rgba(15,35,55,.14);
}
@media(max-width:720px){
 .purchase-file-preview-v581 iframe{height:500px}
 .purchase-preview-head-v581{align-items:flex-start;flex-direction:column}
}


/* Bradioo Dashboard v5.8.2 – zoeken in Inkoop */
.purchase-search-v582{
 display:flex;
 align-items:flex-end;
 gap:10px;
 margin:14px 0;
}
.purchase-search-v582 .field{
 flex:1;
 margin:0;
}
.purchase-search-v582 input[type="search"]{
 width:100%;
}
.purchase-search-v582 .btn{
 margin-bottom:1px;
}
@media(max-width:650px){
 .purchase-search-v582{
  align-items:stretch;
  flex-direction:column;
 }
 .purchase-search-v582 .btn{
  align-self:flex-start;
 }
}


/* Bradioo Dashboard v5.9.0 */
.table-search-v590{
 display:flex;
 gap:10px;
 margin:14px 0;
}
.table-search-v590 input{
 flex:1;
 min-width:0;
}
.search-empty-v590{
 margin-top:12px;
}
.role-administration-v590 #repair-add-v510,
.role-administration-v590 #repair-add-v511,
.role-administration-v590 [data-repair-archive],
.role-administration-v590 [data-repair-delete],
.role-administration-v590 #repair-detail-edit-v512,
.role-administration-v590 #repair-edit-v510,
.role-administration-v590 #repair-update-form-v512,
.role-administration-v590 #repair-part-form-v512{
 display:none!important;
}
@media(max-width:650px){
 .table-search-v590{flex-direction:column}
 .table-search-v590 .btn{align-self:flex-start}
}


/* Bradioo Dashboard v5.9.1 – Administratie-menu gelijk aan admin/beheerder */
.role-administration-v590 .grouped-nav .nav-direct-item,
.role-administration-v590 .grouped-nav .nav-group-toggle{
  display:grid;
  grid-template-columns:48px minmax(0,1fr) 22px;
  align-items:center;
}
.role-administration-v590 .grouped-nav .nav-direct-item{
  grid-template-columns:48px minmax(0,1fr);
}
.role-administration-v590 .grouped-nav .nav-main-icon-v477{
  display:flex;
}
.role-administration-v590 #add-incident-v450,
.role-administration-v590 #incident-add,
.role-administration-v590 #incident-create,
.role-administration-v590 [data-incident-create],
.role-administration-v590 .incident-create-button,
.role-administration-v590 [data-delete-incident]{
  display:none!important;
}



/* Bradioo Dashboard v5.9.3 – Administratie-menu volledig links uitgelijnd */
.role-administration-v590 .grouped-nav .nav-direct-item,
.role-administration-v590 .grouped-nav .nav-group-toggle,
.role-administration-v590 .grouped-nav .nav-group-items button{
 text-align:left!important;
 justify-content:flex-start!important;
}
.role-administration-v590 .grouped-nav .nav-direct-item{
 display:grid!important;
 grid-template-columns:48px minmax(0,1fr)!important;
}
.role-administration-v590 .grouped-nav .nav-direct-item > span:not(.nav-main-icon-v477){
 justify-self:start!important;
 text-align:left!important;
}
.role-administration-v590 .grouped-nav .nav-group-toggle > span:not(.nav-main-icon-v477):not(.nav-group-chevron){
 justify-self:start!important;
 text-align:left!important;
}
.role-administration-v590 .grouped-nav .nav-group-items button span{
 text-align:left!important;
}


/* Bradioo Dashboard v5.9.4 – definitieve menu-uitlijning en documentknoppen */
.role-administration-v590 #invoice-new-v540,
.role-administration-v590 #quote-new-v550{
 display:inline-flex!important;
}

/* Dashboard en Agenda exact dezelfde linkeruitlijning als de overige hoofditems. */
.role-administration-v590 .grouped-nav .nav-direct-item{
 width:100%!important;
 display:flex!important;
 align-items:center!important;
 justify-content:flex-start!important;
 gap:16px!important;
 padding-left:12px!important;
 padding-right:12px!important;
 text-align:left!important;
}
.role-administration-v590 .grouped-nav .nav-direct-item .nav-main-icon-v477{
 flex:0 0 32px!important;
 width:32px!important;
 min-width:32px!important;
 margin:0!important;
 justify-content:center!important;
}
.role-administration-v590 .grouped-nav .nav-direct-item > span:not(.nav-main-icon-v477){
 flex:1 1 auto!important;
 width:auto!important;
 justify-self:auto!important;
 text-align:left!important;
 margin:0!important;
}

/* Hoofdgroepen behouden dezelfde iconen- en tekstkolom als admin/beheerder. */
.role-administration-v590 .grouped-nav .nav-group-toggle{
 width:100%!important;
 display:grid!important;
 grid-template-columns:32px minmax(0,1fr) 22px!important;
 column-gap:16px!important;
 align-items:center!important;
 justify-content:stretch!important;
 padding-left:12px!important;
 padding-right:12px!important;
 text-align:left!important;
}
.role-administration-v590 .grouped-nav .nav-group-toggle .nav-main-icon-v477{
 width:32px!important;
 min-width:32px!important;
 justify-content:center!important;
}
.role-administration-v590 .grouped-nav .nav-group-toggle > span:not(.nav-main-icon-v477):not(.nav-group-chevron){
 justify-self:start!important;
 text-align:left!important;
}


/* Bradioo Dashboard v5.9.5 – fullscreen afspraak */
.appointment-fullscreen-v595{
 max-width:1280px;
 margin:0 auto;
}
.appointment-fullscreen-top-v595{
 margin-bottom:16px;
}
.appointment-fullscreen-content-v595{
 width:100%;
 max-width:none;
 background:#fff;
 border:1px solid #dce5ee;
 border-radius:18px;
 padding:24px;
 box-shadow:0 8px 28px rgba(13,35,58,.08);
}
.appointment-fullscreen-head-v595{
 position:sticky;
 top:0;
 z-index:2;
 background:#fff;
 padding-bottom:14px;
}
.appointment-fullscreen-content-v595 #appointment-form-v470{
 width:100%;
}
.appointment-fullscreen-content-v595 .device-form-panel{
 min-height:460px;
}
.appointment-fullscreen-content-v595 #appointment-form-v470 > .btn{
 display:block;
 margin-left:auto;
 margin-top:20px;
}

/* Dossier voor Administratie ruim en betrouwbaar zichtbaar */
.dossier-modal-fullscreen-v595{
 width:min(1500px,calc(100vw - 32px))!important;
 max-width:none!important;
 height:calc(100vh - 32px)!important;
 max-height:none!important;
}
.dossier-modal-fullscreen-v595 .dossier-panel-v490{
 max-height:calc(100vh - 180px);
 overflow:auto;
}

@media(max-width:720px){
 .appointment-fullscreen-content-v595{
  padding:16px;
  border-radius:12px;
 }
 .appointment-fullscreen-content-v595 .device-form-panel{
  min-height:auto;
 }
}


/* Bradioo Dashboard v5.9.6 – dossier in hoofdcontent */
.dossier-fullscreen-v596{
 width:100%;
 max-width:1500px;
 margin:0 auto;
}
.dossier-fullscreen-top-v596{
 display:flex;
 align-items:center;
 gap:18px;
 margin-bottom:18px;
}
.dossier-fullscreen-top-v596 h1{
 margin:0;
}
.dossier-fullscreen-content-v596{
 width:100%;
 min-height:calc(100vh - 190px);
 background:#fff;
 border:1px solid #dce5ee;
 border-radius:18px;
 padding:22px;
 box-shadow:0 8px 28px rgba(13,35,58,.08);
}
.dossier-fullscreen-content-v596 .dossier-tabs-v490{
 position:sticky;
 top:0;
 z-index:3;
 background:#fff;
 padding-top:2px;
}
.dossier-fullscreen-content-v596 .dossier-panel-v490{
 max-height:none!important;
 overflow:visible!important;
}
@media(max-width:720px){
 .dossier-fullscreen-top-v596{
  align-items:flex-start;
  flex-direction:column;
 }
 .dossier-fullscreen-content-v596{
  padding:14px;
  border-radius:12px;
 }
}


/* Bradioo Dashboard v5.10.0 – 2FA */
#login-2fa .btn.full{margin-top:10px}
.two-factor-card-v5100{grid-column:span 2}
.two-factor-card-v5100>p{max-width:720px;line-height:1.55}
.two-factor-actions-v5100{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.two-factor-setup-v5100{margin-top:18px;padding:18px;border:1px solid #d8e3ed;border-radius:14px;background:#f7fafc}
.two-factor-setup-v5100 h3{margin:18px 0 8px}.two-factor-setup-v5100 h3:first-child{margin-top:0}
.two-factor-secret-v5100{display:flex;flex-direction:column;gap:6px;margin:14px 0;padding:14px;border-radius:10px;background:#071524;color:#fff}
.two-factor-secret-v5100 small{color:#adc1d5}.two-factor-secret-v5100 code{font-size:16px;letter-spacing:.12em;overflow-wrap:anywhere}
.recovery-codes-v5100{margin-top:18px;padding:18px;border:1px solid #b9dbff;border-radius:14px;background:#f2f8ff}
.recovery-codes-v5100>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:14px 0}
.recovery-codes-v5100 code{display:block;padding:9px;border-radius:7px;background:#fff;border:1px solid #d8e3ed;text-align:center;font-weight:800;letter-spacing:.08em}
@media(max-width:700px){.two-factor-card-v5100{grid-column:auto}.recovery-codes-v5100>div{grid-template-columns:1fr}}


/* Bradioo Dashboard v5.10.1 – QR-code en wachtwoordbevestiging */
.two-factor-qr-layout-v5101{
 display:grid;
 grid-template-columns:240px minmax(0,1fr);
 align-items:center;
 gap:22px;
 margin:16px 0;
}
.two-factor-qr-v5101{
 width:240px;
 min-height:240px;
 display:flex;
 align-items:center;
 justify-content:center;
 padding:10px;
 border:1px solid #d8e3ed;
 border-radius:14px;
 background:#fff;
}
.two-factor-qr-v5101 canvas{
 display:block;
 max-width:100%;
 height:auto;
 image-rendering:pixelated;
}
@media(max-width:720px){
 .two-factor-qr-layout-v5101{grid-template-columns:1fr}
 .two-factor-qr-v5101{margin:0 auto}
}

/* Bradioo Dashboard v5.10.2 – QR foutcorrectieniveau hersteld */

/* Bradioo Dashboard v5.10.3 – dashboardkaart openstaande inkoop */


/* Bradioo Dashboard v5.10.4 – paginanummers administratie */
.invoice-document-grid-v540 + .pagination-host,
.card.table-wrap + .pagination-host{
 margin-top:14px;
}


/* Bradioo Dashboard v5.10.5 – Facturatievoorstellen paginering */
[data-billing-proposal-row-v5105][data-pagination-hidden="1"]{
 display:none;
}


/* Bradioo Dashboard v5.11.0 – onderhoud en sessies */
.maintenance-warning-v5110{
 display:flex;flex-direction:column;gap:5px;margin:0 0 18px;padding:14px;border:1px solid #f4b6b6;border-radius:12px;background:#fff1f1;color:#8f1f1f
}
.maintenance-warning-v5110 small{color:#8f1f1f}
.maintenance-login-v5110{text-align:center}
.maintenance-icon-v5110{font-size:42px;margin:8px 0}
.maintenance-card-v5110{border-left:5px solid #33a567}
.maintenance-card-v5110.active{border-left-color:#d73a3a;background:#fffafa}
.maintenance-card-head-v5110{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}
.maintenance-card-head-v5110 h3{margin:0 0 6px}
.maintenance-card-head-v5110 p{margin:0;max-width:760px;line-height:1.55}
.maintenance-switch-v5110{display:flex;align-items:center;gap:12px;margin:20px 0;cursor:pointer}
.maintenance-switch-v5110 input{position:absolute;opacity:0}
.maintenance-switch-v5110 span{position:relative;width:48px;height:26px;border-radius:99px;background:#b9c7d4;transition:.2s}
.maintenance-switch-v5110 span:after{content:"";position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.25);transition:.2s}
.maintenance-switch-v5110 input:checked+span{background:#d73a3a}
.maintenance-switch-v5110 input:checked+span:after{transform:translateX(22px)}
.user-agent-v5110{max-width:320px;white-space:normal;font-size:12px;line-height:1.35}
@media(max-width:720px){.maintenance-card-head-v5110{flex-direction:column}.user-agent-v5110{max-width:220px}}


/* Bradioo Dashboard v5.11.1 – ruimere onderhoudspagina */
.system-access-v5111{
 display:grid;
 gap:24px;
}
.system-access-head-v5111{
 margin-bottom:0!important;
}
.system-access-v5111 .maintenance-card-v5110{
 padding:28px;
}
.system-access-v5111 .maintenance-switch-v5110{
 margin:24px 0;
}
.system-access-v5111 .maintenance-card-v5110 .field{
 margin-bottom:18px;
}
.system-session-stats-v5111{
 gap:20px;
 margin:0;
}
.session-list-card-v5111{
 padding:0;
 overflow:hidden;
}
.session-list-head-v5111{
 display:flex;
 align-items:flex-end;
 justify-content:space-between;
 gap:20px;
 padding:24px 24px 18px;
 border-bottom:1px solid #dce5ee;
}
.session-list-head-v5111 h3{
 margin:0 0 4px;
}
.session-search-v5111{
 display:flex;
 gap:9px;
 width:min(600px,100%);
}
.session-search-v5111 input{
 flex:1;
 min-width:220px;
}
.session-table-wrap-v5111{
 border:0;
 border-radius:0;
}
.session-table-v5111{
 margin:0;
}
.session-table-v5111 th,
.session-table-v5111 td{
 padding-top:15px;
 padding-bottom:15px;
 vertical-align:middle;
}
.session-pagination-v5111{
 margin:0;
 padding:16px 24px;
 border-top:1px solid #dce5ee;
 background:#f8fafc;
}
.session-detail-modal-v5111{
 max-width:820px;
}
.session-detail-modal-v5111 .device-info-grid{
 margin-top:16px;
}
.session-detail-modal-v5111 .device-info-grid>div{
 display:flex;
 flex-direction:column;
 gap:5px;
}
.session-agent-detail-v5111{
 overflow-wrap:anywhere;
 line-height:1.45;
}
@media(max-width:850px){
 .session-list-head-v5111{
  align-items:stretch;
  flex-direction:column;
 }
 .session-search-v5111{
  width:100%;
 }
}
@media(max-width:600px){
 .system-access-v5111{
  gap:16px;
 }
 .system-access-v5111 .maintenance-card-v5110{
  padding:18px;
 }
 .session-list-head-v5111{
  padding:18px;
 }
 .session-search-v5111{
  flex-direction:column;
 }
 .session-search-v5111 input{
  min-width:0;
 }
 .session-pagination-v5111{
  padding:14px 18px;
 }
}


/* Bradioo Dashboard v5.11.2 – één sessie per gebruiker en lange IP-adressen */
.session-detail-modal-v5111 .session-ip-card-v5112{
 min-width:0;
 overflow:hidden;
}
.session-detail-modal-v5111 .session-ip-card-v5112 b{
 min-width:0;
 width:100%;
}
.session-detail-modal-v5111 .session-ip-card-v5112 code{
 display:block;
 width:100%;
 max-width:100%;
 white-space:normal;
 overflow-wrap:anywhere;
 word-break:break-all;
 line-height:1.35;
 font-size:12px;
}

/* v5.11.3: duidelijkere actuele storingen voor klanten */
.station-incidents .section-head{margin-bottom:14px}
.station-incident-card.customer-incident-v5113{
 padding:20px 22px!important;border:1px solid #d9e3ee!important;border-left:4px solid #1683ef!important;
 border-radius:14px!important;background:#fff!important;box-shadow:0 4px 14px rgba(28,50,75,.05)
}
.customer-incident-v5113 .station-incident-head{align-items:flex-start;margin-bottom:12px}
.customer-incident-title-v5113 h3{margin:9px 0 0;font-size:20px;line-height:1.25}
.customer-incident-message-v5113{
 margin:0 0 18px;padding:14px 16px;border-radius:10px;background:#f7f9fc;color:#25364a;
 font-size:15px;line-height:1.55;white-space:pre-line
}
.customer-incident-meta-v5113{display:flex!important;flex-wrap:wrap;gap:10px!important;margin:0!important}
.customer-incident-meta-v5113 span{
 display:block!important;min-width:190px;padding:10px 13px;border:1px solid #e3eaf2;border-radius:9px;background:#fff
}
.customer-incident-meta-v5113 small{display:block;color:#71849a;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.customer-incident-meta-v5113 strong{display:block;margin-top:3px;color:#172337;font-size:13px;overflow-wrap:anywhere}
.customer-incident-action-v5113{margin-top:14px}
@media(max-width:650px){
 .station-incident-card.customer-incident-v5113{padding:16px!important}
 .customer-incident-v5113 .station-incident-head{gap:10px;flex-direction:column}
 .customer-incident-meta-v5113{display:grid!important;grid-template-columns:1fr;width:100%}
 .customer-incident-meta-v5113 span{min-width:0}
}


/* Bradioo Dashboard v5.11.4 – foutmelding en opslaan afspraak */
.appointment-error-v5114{
 position:sticky;
 bottom:72px;
 z-index:4;
 margin-top:16px;
}
.appointment-error-v5114:empty{
 display:none;
}
.appointment-error-v5114 .error{
 margin:0;
 padding:13px 15px;
 border:1px solid #efaaaa;
 border-radius:10px;
 background:#fff1f1;
 box-shadow:0 6px 18px rgba(130,25,25,.12);
}
.appointment-fullscreen-content-v595 #appointment-form-v470>button[type="submit"],
.appointment-fullscreen-content-v595 #appointment-form-v470>button:not([type]){
 min-width:180px;
}


/* Bradioo Dashboard v5.11.5 – fullscreen afspraakdetails */
.appointment-detail-fullscreen-v5115{
 width:100%;
 max-width:1450px;
 margin:0 auto;
}
.appointment-detail-top-v5115{
 display:flex;
 align-items:center;
 gap:18px;
 margin-bottom:18px;
}
.appointment-detail-title-v5115{
 min-width:0;
}
.appointment-detail-title-v5115 h1{
 margin:0 0 3px;
 font-size:28px;
 line-height:1.2;
 overflow-wrap:anywhere;
}
.appointment-detail-content-v5115{
 width:100%;
 min-height:calc(100vh - 190px);
 padding:24px;
 border:1px solid #dce5ee;
 border-radius:18px;
 background:#fff;
 box-shadow:0 8px 28px rgba(13,35,58,.08);
}
.appointment-detail-content-v5115 .appointment-status-banner{
 margin-top:0;
}
.appointment-detail-content-v5115 .device-info-grid{
 grid-template-columns:repeat(4,minmax(0,1fr));
}
.appointment-detail-content-v5115 .appointment-action-stack{
 display:grid;
 grid-template-columns:repeat(3,minmax(0,1fr));
 gap:18px;
 align-items:start;
}
.appointment-detail-content-v5115 .appointment-action-stack>div,
.appointment-detail-content-v5115 .appointment-action-stack>form{
 height:100%;
 padding:18px;
 border:1px solid #dce5ee;
 border-radius:14px;
 background:#f8fafc;
}
.appointment-detail-content-v5115 .appointment-timeline{
 max-height:none;
}
.appointment-detail-content-v5115 .appointment-photos{
 grid-template-columns:repeat(auto-fill,minmax(180px,1fr));
}
@media(max-width:1100px){
 .appointment-detail-content-v5115 .device-info-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
 }
 .appointment-detail-content-v5115 .appointment-action-stack{
  grid-template-columns:1fr;
 }
}
@media(max-width:700px){
 .appointment-detail-fullscreen-v5115{
  max-width:none;
 }
 .appointment-detail-top-v5115{
  align-items:flex-start;
  flex-direction:column;
 }
 .appointment-detail-title-v5115 h1{
  font-size:23px;
 }
 .appointment-detail-content-v5115{
  min-height:calc(100vh - 145px);
  padding:15px;
  border-radius:12px;
 }
 .appointment-detail-content-v5115 .device-info-grid{
  grid-template-columns:1fr;
 }
 .appointment-detail-content-v5115 .appointment-status-banner{
  align-items:flex-start;
  flex-direction:column;
  gap:5px;
 }
}


/* Bradioo Dashboard v5.11.6 – snelle status en afsprakenoverzicht */
.technician-next .technician-quick-status-v5116,
.technician-today-next-v483 .technician-quick-status-v5116{
 margin-left:10px;
}
.appointment-search-toolbar-v5116{
 display:flex;
 align-items:flex-end;
 gap:12px;
 margin-bottom:14px;
 padding:16px 18px;
}
.appointment-search-toolbar-v5116 .field{
 flex:1;
 margin:0;
}
.appointment-search-toolbar-v5116 input{
 width:100%;
}
.appointment-pagination-v5116{
 margin-top:14px;
}
.appointment-search-empty-v5116{
 margin:14px;
}
@media(max-width:700px){
 .technician-next .technician-quick-status-v5116,
 .technician-today-next-v483 .technician-quick-status-v5116{
  display:block;
  width:100%;
  margin:10px 0 0;
 }
 .technician-next [data-appointment-open],
 .technician-today-next-v483 [data-appointment-open]{
  width:100%;
 }
 .appointment-search-toolbar-v5116{
  align-items:stretch;
  flex-direction:column;
 }
 .appointment-search-toolbar-v5116 .btn{
  align-self:flex-start;
 }
}


/* Bradioo Dashboard v5.11.7 – uitgevoerde werkzaamheden */
.appointment-completed-work-v5117{
 display:none;
 margin-top:14px;
 padding-top:14px;
 border-top:1px solid #dce5ee;
}
.appointment-completed-work-v5117>label:first-child{
 display:block;
 margin-bottom:7px;
 font-weight:800;
}
.appointment-completed-work-v5117 textarea{
 width:100%;
 min-height:120px;
 resize:vertical;
}
.appointment-completed-public-v5117{
 display:flex!important;
 align-items:center;
 gap:8px;
 margin-top:10px;
 font-weight:600!important;
}
.appointment-completed-public-v5117 input{
 width:auto!important;
}
#appointment-completed-error-v5117 .error{
 margin:10px 0 0;
 padding:11px 13px;
 border:1px solid #efaaaa;
 border-radius:9px;
 background:#fff1f1;
}
