.mira-crm .mira-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin:20px 0}.mira-crm .mira-cards div,.mira-panel,.mira-box{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:18px;box-shadow:0 8px 24px rgba(15,23,42,.06)}.mira-crm .mira-cards strong{font-size:34px;display:block}.mira-crm .mira-cards span{color:#64748b}.mira-grid{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:12px;margin-bottom:14px}.mira-grid-4{grid-template-columns:repeat(4,minmax(150px,1fr))}.mira-grid input,.mira-grid select,.mira-panel textarea,.mira-panel input.large-text{width:100%;max-width:100%;border:1px solid #cbd5e1;border-radius:10px;padding:10px}.mira-public{font-family:inherit;max-width:1180px;margin:0 auto}.mira-public h1,.mira-public h2{color:#0f172a}.mira-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.mira-tabs a,.mira-btn{background:#0f172a;color:#fff!important;text-decoration:none;border-radius:999px;padding:12px 18px;border:0;display:inline-block;cursor:pointer}.mira-panel{margin:22px 0;background:#fff}.mira-table{width:100%;border-collapse:collapse;background:#fff}.mira-table th,.mira-table td{padding:12px;border-bottom:1px solid #e5e7eb;text-align:left;vertical-align:middle}.mira-table th{background:#f8fafc}.mira-table input,.mira-panel textarea{border:1px solid #cbd5e1;border-radius:10px;padding:10px;width:100%}.mira-status{background:#e0f2fe;color:#075985;border-radius:999px;padding:6px 10px;font-size:13px}.mira-success{background:#dcfce7;border:1px solid #86efac;color:#166534;padding:12px 16px;border-radius:12px}.mira-docs{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.mira-doc{border:1px solid #e5e7eb;border-radius:14px;padding:18px;text-decoration:none;background:#f8fafc;color:#0f172a;display:block}.mira-doc strong{display:block;font-size:17px}.mira-doc span{color:#64748b;font-size:13px}.mira-image-field{margin:14px 0;padding:14px;border:1px dashed #cbd5e1;border-radius:12px;background:#f8fafc}.mira-image-field label{display:block;margin-bottom:8px}.mira-image-field input[type=url]{width:min(520px,100%);border:1px solid #cbd5e1;border-radius:10px;padding:10px;margin-right:8px}.mira-image-preview img{width:120px;height:90px;object-fit:cover;border-radius:10px;border:1px solid #e5e7eb;margin:0 0 10px}.mira-thumb,.mira-product-img{width:72px;height:54px;object-fit:cover;border-radius:8px;border:1px solid #e5e7eb;background:#fff}.mira-product-img{width:86px;height:64px}.mira-no-image{color:#94a3b8;font-size:12px}.mira-inline-form{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.mira-inline-form input,.mira-inline-form select{border:1px solid #cbd5e1;border-radius:8px;padding:6px}.mira-wide-form{min-width:520px}.mira-low{display:inline-block;background:#fee2e2;color:#991b1b;border-radius:999px;padding:3px 7px;font-size:11px;margin-left:5px}.mira-task-list{margin:0 0 0 18px}.mira-admin-table td{vertical-align:middle}@media(max-width:760px){.mira-grid,.mira-grid-4,.mira-crm .mira-cards{grid-template-columns:1fr}.mira-table{display:block;overflow-x:auto}.mira-wide-form{min-width:0}}

.mira-edit-row td{background:#f8fafc}.mira-edit-product-form{box-shadow:none;margin:0}.mira-product-form input,.mira-product-form select,.mira-product-form textarea{box-sizing:border-box}.mira-toggle-edit{margin-bottom:6px}
.mira-btn-small{display:inline-block;background:#111;color:#fff!important;padding:7px 12px;border-radius:6px;text-decoration:none;font-size:13px}
.mira-total{max-width:360px;margin-left:auto;background:#f7f7f7;border:1px solid #e1e1e1;border-radius:10px;padding:15px;margin-top:15px}
.mira-total p{display:flex;justify-content:space-between;margin:6px 0}
.mira-quote-view{max-width:980px;margin:30px auto;padding:20px;background:#fff}
@media print{.mira-tabs,.mira-btn,.mira-btn-small{display:none!important}.mira-public{box-shadow:none!important}.mira-panel{break-inside:avoid}}

/* v2.8 compacte schuifknoppen dealer prijsweergave */
.mira-help-small{font-size:12px;line-height:1.35;color:#64748b;margin-top:-4px;margin-bottom:12px}
.mira-settings-grid{grid-template-columns:repeat(2,minmax(135px,210px));align-items:start;gap:10px}
.mira-settings-box{padding:10px 12px!important;border-radius:12px!important;overflow:hidden}
.mira-setting-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.mira-settings-box h3{margin:0;font-size:13px!important;line-height:1.2;white-space:nowrap;letter-spacing:-.01em}
.mira-setting-state{font-size:10px;font-weight:700;border-radius:999px;padding:2px 6px;line-height:1.1;white-space:nowrap;background:#e5e7eb;color:#334155}
.mira-setting-state.is-on{background:#dcfce7;color:#166534}
.mira-setting-state.is-off{background:#fee2e2;color:#991b1b}
.mira-switch{position:relative;width:54px;height:28px;border:0;border-radius:999px;cursor:pointer;padding:0;background:#cbd5e1;display:inline-flex;align-items:center;box-shadow:inset 0 1px 4px rgba(15,23,42,.18);transition:background .18s ease;vertical-align:middle}
.mira-switch.is-on{background:#16a34a}
.mira-switch.is-off{background:#94a3b8}
.mira-switch-knob{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(15,23,42,.25);transition:left .18s ease}
.mira-switch.is-on .mira-switch-knob{left:29px}
.mira-switch-text{position:absolute;left:0;right:0;text-align:center;font-size:9px;font-weight:700;color:#fff;line-height:1;pointer-events:none;text-transform:uppercase}
.mira-switch.is-on .mira-switch-text{padding-right:20px}
.mira-switch.is-off .mira-switch-text{padding-left:20px}
@media(max-width:760px){.mira-settings-grid{grid-template-columns:repeat(2,minmax(120px,1fr));gap:8px}.mira-settings-box{padding:9px!important}.mira-settings-box h3{font-size:12px!important}.mira-switch{width:50px;height:26px}.mira-switch-knob{width:20px;height:20px}.mira-switch.is-on .mira-switch-knob{left:27px}}
@media(max-width:420px){.mira-settings-grid{grid-template-columns:1fr}}


/* v3.0 offerte beheer dealerportaal */
.mira-table td .mira-inline-form{display:inline-flex;margin:3px 0 0 0;vertical-align:middle}
.mira-danger-small{background:#b91c1c!important;color:#fff!important;border:0;cursor:pointer}
.mira-btn-small{border:0;cursor:pointer;line-height:1.2;margin:2px}

.mira-document-upload{margin:14px 0;padding:12px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px}
.mira-document-upload p{margin:8px 0}
.mira-document-preview{display:inline-block;margin-left:8px;font-size:12px;color:#374151;max-width:520px;vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mira-document-form input[type=file]{max-width:100%;font-size:12px}
@media (max-width: 700px){.mira-document-preview{display:block;margin:8px 0 0;max-width:100%;white-space:normal}.mira-document-upload .button{font-size:12px;min-height:30px;padding:2px 8px}}


/* v3.2 uitloggen knop portalen */
.mira-portal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;flex-wrap:wrap}
.mira-portal-head h1{margin:0}
.mira-logout-btn{display:inline-flex;align-items:center;justify-content:center;background:#b91c1c;color:#fff!important;text-decoration:none;border-radius:999px;padding:8px 13px;font-size:13px;font-weight:700;line-height:1;white-space:nowrap;box-shadow:0 4px 12px rgba(185,28,28,.16)}
.mira-logout-btn:hover{background:#991b1b;color:#fff!important}
.mira-box .mira-logout-btn{margin-left:8px}
@media(max-width:520px){.mira-portal-head{align-items:flex-start}.mira-logout-btn{font-size:12px;padding:7px 11px}.mira-box .mira-logout-btn{margin-left:0;margin-top:8px}}

/* v3.4 login fix */
.mira-login-box{max-width:460px;margin:20px auto}.mira-login-form label{display:block;font-weight:600;margin:10px 0 5px}.mira-login-form input[type=text],.mira-login-form input[type=password]{width:100%;box-sizing:border-box;padding:10px;border:1px solid #ddd;border-radius:8px}.mira-login-form .mira-remember{display:flex;gap:8px;align-items:center;font-weight:400}.mira-primary,.mira-small-btn{display:inline-block;background:#111827;color:#fff!important;border:0;border-radius:8px;padding:9px 14px;text-decoration:none;cursor:pointer;font-size:14px}.mira-small-btn{padding:6px 10px;margin:3px}.mira-error{background:#fee2e2;border:1px solid #fecaca;color:#991b1b;padding:10px;border-radius:8px;margin:10px 0}

/* v3.7 mobiel responsive verbeteringen */
.mira-public,
.mira-crm,
.mira-panel,
.mira-box,
.mira-doc,
.mira-login-box,
.mira-quote-view,
.mira-public * ,
.mira-crm *{box-sizing:border-box}
.mira-public,
.mira-crm{width:100%;max-width:1180px;overflow-x:hidden;padding-left:12px;padding-right:12px}
.mira-panel,.mira-box{max-width:100%}
.mira-panel{overflow:hidden}
.mira-panel textarea,.mira-panel input,.mira-panel select,
.mira-login-form input[type=text],.mira-login-form input[type=password]{max-width:100%;min-width:0}
.mira-tabs{width:100%;overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;padding-bottom:6px;scrollbar-width:thin}
.mira-tabs a{flex:0 0 auto;white-space:nowrap;font-size:13px;padding:9px 12px}
.mira-table{min-width:680px}
.mira-panel > .mira-table,
.mira-panel form > .mira-table,
.mira-panel .mira-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%}
.mira-table th,.mira-table td{font-size:13px;padding:9px 8px;white-space:normal}
.mira-table input[type=number],.mira-table input[type=text],.mira-table input[type=email],.mira-table input[type=date]{min-width:92px}
.mira-btn,.mira-primary{font-size:14px;padding:10px 14px;max-width:100%;white-space:normal;text-align:center}
.mira-btn-small,.mira-small-btn{font-size:12px;padding:6px 9px;border-radius:7px;white-space:nowrap}
.mira-inline-form{max-width:100%}
.mira-total{width:100%;max-width:360px}

@media(max-width:900px){
  .mira-public,.mira-crm{padding-left:10px;padding-right:10px}
  .mira-grid,.mira-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mira-public h1{font-size:26px;line-height:1.15}
  .mira-public h2{font-size:21px;line-height:1.2}
  .mira-panel,.mira-box{padding:14px}
}

@media(max-width:600px){
  .mira-public,.mira-crm{padding-left:8px;padding-right:8px;margin-left:0;margin-right:0}
  .mira-grid,.mira-grid-4,.mira-crm .mira-cards{grid-template-columns:1fr;gap:9px}
  .mira-panel,.mira-box{padding:12px;border-radius:12px;margin:14px 0}
  .mira-public h1{font-size:22px}
  .mira-public h2{font-size:18px}
  .mira-public h3{font-size:15px}
  .mira-tabs{gap:6px;margin:12px 0}
  .mira-tabs a{font-size:12px;padding:8px 10px;border-radius:999px}
  .mira-portal-head{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:8px}
  .mira-portal-head h1{font-size:20px;max-width:calc(100% - 92px)}
  .mira-logout-btn{font-size:11px;padding:7px 9px}
  .mira-product-img,.mira-thumb{width:56px;height:44px}
  .mira-table{min-width:620px}
  .mira-table th,.mira-table td{font-size:12px;padding:8px 7px}
  .mira-btn,.mira-primary{width:100%;padding:10px 12px;font-size:13px}
  .mira-btn-small,.mira-small-btn{font-size:11px;padding:6px 8px;margin:2px 1px}
  .mira-login-box{max-width:100%;margin:10px 0}
  .mira-docs{grid-template-columns:1fr;gap:10px}
  .mira-doc{padding:13px}
  .mira-total{margin-left:0;max-width:100%;padding:12px}
  .mira-settings-grid{grid-template-columns:1fr 1fr!important;gap:8px}
  .mira-settings-box{padding:8px!important}
  .mira-setting-head{gap:4px;margin-bottom:6px}
  .mira-settings-box h3{font-size:11px!important;max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .mira-setting-state{font-size:9px;padding:2px 5px}
  .mira-switch{width:46px;height:24px}
  .mira-switch-knob{width:18px;height:18px;top:3px;left:3px}
  .mira-switch.is-on .mira-switch-knob{left:25px}
  .mira-switch-text{font-size:8px}
}

@media(max-width:420px){
  .mira-public,.mira-crm{padding-left:6px;padding-right:6px}
  .mira-panel,.mira-box{padding:10px}
  .mira-portal-head h1{font-size:18px}
  .mira-tabs a{font-size:11px;padding:7px 9px}
  .mira-table{min-width:560px}
  .mira-settings-grid{grid-template-columns:1fr!important}
  .mira-settings-box h3{max-width:none;font-size:12px!important}
}

/* v3.8 extra mobiel: productregels als kaarten zodat prijs en aantal altijd zichtbaar zijn */
@media(max-width:700px){
  .mira-panel .mira-mobile-product-table{
    min-width:0!important;
    width:100%!important;
    display:block!important;
    overflow:visible!important;
    border:0!important;
  }
  .mira-panel .mira-mobile-product-table thead{
    display:none!important;
  }
  .mira-panel .mira-mobile-product-table tbody,
  .mira-panel .mira-mobile-product-table tr,
  .mira-panel .mira-mobile-product-table td{
    display:block!important;
    width:100%!important;
    box-sizing:border-box!important;
  }
  .mira-panel .mira-mobile-product-table tr{
    background:#fff!important;
    border:1px solid #e5e7eb!important;
    border-radius:12px!important;
    padding:10px!important;
    margin:0 0 10px!important;
    box-shadow:0 2px 8px rgba(15,23,42,.05)!important;
  }
  .mira-panel .mira-mobile-product-table td{
    border:0!important;
    padding:6px 0!important;
    min-height:28px!important;
    font-size:13px!important;
    line-height:1.35!important;
    white-space:normal!important;
    overflow:visible!important;
  }
  .mira-panel .mira-mobile-product-table td:not(.mira-img-cell):not(.mira-product-name-cell){
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    border-top:1px solid #f1f5f9!important;
  }
  .mira-panel .mira-mobile-product-table td[data-label]::before{
    content:attr(data-label);
    display:inline-block!important;
    flex:0 0 auto!important;
    min-width:96px!important;
    max-width:45%!important;
    font-weight:700!important;
    color:#334155!important;
    font-size:12px!important;
  }
  .mira-panel .mira-mobile-product-table .mira-img-cell::before,
  .mira-panel .mira-mobile-product-table .mira-product-name-cell::before{
    display:none!important;
    content:''!important;
  }
  .mira-panel .mira-mobile-product-table .mira-product-name-cell{
    font-size:14px!important;
    padding-top:2px!important;
  }
  .mira-panel .mira-mobile-product-table .mira-price-cell,
  .mira-panel .mira-mobile-product-table .mira-sale-cell,
  .mira-panel .mira-mobile-product-table .mira-qty-cell{
    color:#111827!important;
    font-weight:600!important;
  }
  .mira-panel .mira-mobile-product-table input[type=number],
  .mira-panel .mira-mobile-product-table input[type=text],
  .mira-panel .mira-mobile-product-table input[type=email],
  .mira-panel .mira-mobile-product-table input[type=date]{
    width:120px!important;
    max-width:52%!important;
    min-width:90px!important;
    height:36px!important;
    padding:7px 9px!important;
    border:1px solid #cbd5e1!important;
    border-radius:8px!important;
    text-align:right!important;
    background:#fff!important;
  }
  .mira-panel .mira-mobile-product-table .mira-sale-cell input[type=number]{
    width:130px!important;
  }
  .mira-panel .mira-mobile-product-table .mira-product-img{
    width:72px!important;
    height:54px!important;
  }
}

/* v3.9 extra mobiel: offerte maken/bewerken en openbare offerte als kaarten */
@media(max-width:700px){
  .mira-panel .mira-quote-product-table,
  .mira-quote-view .mira-public-quote-table{
    min-width:0!important;
    width:100%!important;
    display:block!important;
    overflow:visible!important;
    border:0!important;
  }
  .mira-panel .mira-quote-product-table thead,
  .mira-quote-view .mira-public-quote-table thead{
    display:none!important;
  }
  .mira-panel .mira-quote-product-table tbody,
  .mira-panel .mira-quote-product-table tr,
  .mira-panel .mira-quote-product-table td,
  .mira-quote-view .mira-public-quote-table tbody,
  .mira-quote-view .mira-public-quote-table tr,
  .mira-quote-view .mira-public-quote-table td{
    display:block!important;
    width:100%!important;
    box-sizing:border-box!important;
  }
  .mira-panel .mira-quote-product-table tr,
  .mira-quote-view .mira-public-quote-table tr{
    background:#fff!important;
    border:1px solid #e5e7eb!important;
    border-radius:12px!important;
    padding:10px!important;
    margin:0 0 10px!important;
    box-shadow:0 2px 8px rgba(15,23,42,.05)!important;
  }
  .mira-panel .mira-quote-product-table td,
  .mira-quote-view .mira-public-quote-table td{
    border:0!important;
    padding:7px 0!important;
    min-height:30px!important;
    font-size:13px!important;
    line-height:1.35!important;
    white-space:normal!important;
    overflow:visible!important;
  }
  .mira-panel .mira-quote-product-table td:not(.mira-product-name-cell),
  .mira-quote-view .mira-public-quote-table td:not(.mira-product-name-cell){
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    border-top:1px solid #f1f5f9!important;
  }
  .mira-panel .mira-quote-product-table td[data-label]::before,
  .mira-quote-view .mira-public-quote-table td[data-label]::before{
    content:attr(data-label);
    display:inline-block!important;
    flex:0 0 auto!important;
    min-width:96px!important;
    max-width:45%!important;
    font-weight:700!important;
    color:#334155!important;
    font-size:12px!important;
  }
  .mira-panel .mira-quote-product-table .mira-product-name-cell::before,
  .mira-quote-view .mira-public-quote-table .mira-product-name-cell::before{
    display:none!important;
    content:''!important;
  }
  .mira-panel .mira-quote-product-table .mira-product-name-cell,
  .mira-quote-view .mira-public-quote-table .mira-product-name-cell{
    font-size:14px!important;
    font-weight:600!important;
    padding-top:2px!important;
  }
  .mira-panel .mira-quote-product-table .mira-price-cell,
  .mira-panel .mira-quote-product-table .mira-sale-cell,
  .mira-panel .mira-quote-product-table .mira-qty-cell,
  .mira-quote-view .mira-public-quote-table .mira-price-cell,
  .mira-quote-view .mira-public-quote-table .mira-total-cell,
  .mira-quote-view .mira-public-quote-table .mira-qty-cell{
    color:#111827!important;
    font-weight:600!important;
  }
  .mira-panel .mira-quote-product-table input[type=number],
  .mira-panel .mira-quote-product-table input[type=text]{
    width:130px!important;
    max-width:52%!important;
    min-width:92px!important;
    height:38px!important;
    padding:7px 9px!important;
    border:1px solid #cbd5e1!important;
    border-radius:8px!important;
    text-align:right!important;
    background:#fff!important;
  }
  .mira-quote-view{padding:10px!important;margin:10px auto!important;max-width:100%!important;overflow:hidden!important;}
  .mira-quote-view .mira-total{margin-left:0!important;max-width:100%!important;width:100%!important;}
}

/* v4.0: offerte-overzicht mobiel als kaarten + actieknoppen altijd zichtbaar */
.mira-action-row{
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
}
.mira-quote-actions .mira-inline-form{
  display:inline-block!important;
  margin:0!important;
  padding:0!important;
}
.mira-quote-actions .mira-btn-small,
.mira-quote-actions .mira-danger-small{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:30px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
@media(max-width:700px){
  .mira-panel .mira-quotes-list-table{
    min-width:0!important;
    width:100%!important;
    display:block!important;
    overflow:visible!important;
    border:0!important;
  }
  .mira-panel .mira-quotes-list-table thead{display:none!important;}
  .mira-panel .mira-quotes-list-table tbody,
  .mira-panel .mira-quotes-list-table tr,
  .mira-panel .mira-quotes-list-table td{
    display:block!important;
    width:100%!important;
    box-sizing:border-box!important;
  }
  .mira-panel .mira-quotes-list-table tr{
    background:#fff!important;
    border:1px solid #e5e7eb!important;
    border-radius:12px!important;
    padding:10px!important;
    margin:0 0 10px!important;
    box-shadow:0 2px 8px rgba(15,23,42,.05)!important;
  }
  .mira-panel .mira-quotes-list-table td{
    border:0!important;
    padding:7px 0!important;
    min-height:30px!important;
    font-size:13px!important;
    line-height:1.35!important;
    white-space:normal!important;
    overflow:visible!important;
  }
  .mira-panel .mira-quotes-list-table td:not(.mira-quote-actions){
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:10px!important;
    border-top:1px solid #f1f5f9!important;
  }
  .mira-panel .mira-quotes-list-table td[data-label]::before{
    content:attr(data-label);
    display:inline-block!important;
    flex:0 0 100px!important;
    max-width:45%!important;
    font-weight:700!important;
    color:#334155!important;
    font-size:12px!important;
  }
  .mira-panel .mira-quotes-list-table .mira-quote-no-cell{
    border-top:0!important;
    font-size:14px!important;
    font-weight:700!important;
  }
  .mira-panel .mira-quotes-list-table .mira-quote-actions{
    border-top:1px solid #f1f5f9!important;
    padding-top:10px!important;
  }
  .mira-panel .mira-quotes-list-table .mira-quote-actions::before{
    content:'Acties';
    display:block!important;
    font-weight:700!important;
    color:#334155!important;
    font-size:12px!important;
    margin-bottom:8px!important;
  }
  .mira-panel .mira-quotes-list-table .mira-action-row{
    display:grid!important;
    grid-template-columns:1fr 1fr 1fr!important;
    gap:6px!important;
    width:100%!important;
  }
  .mira-panel .mira-quotes-list-table .mira-action-row a,
  .mira-panel .mira-quotes-list-table .mira-action-row button,
  .mira-panel .mira-quotes-list-table .mira-action-row form{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    box-sizing:border-box!important;
  }
  .mira-panel .mira-quotes-list-table .mira-action-row a,
  .mira-panel .mira-quotes-list-table .mira-action-row button{
    min-height:34px!important;
    padding:8px 4px!important;
    font-size:11px!important;
    text-align:center!important;
  }
}
@media(max-width:380px){
  .mira-panel .mira-quotes-list-table .mira-action-row{
    grid-template-columns:1fr!important;
  }
}


/* v4.1: Mijn offertes zonder tabel, altijd zichtbaar op desktop en mobiel */
.mira-quotes-panel{overflow:visible!important;}
.mira-quotes-cards{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;width:100%!important;max-width:100%!important;overflow:visible!important;}
.mira-quote-card{display:block!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;background:#fff!important;border:1px solid #e5e7eb!important;border-radius:14px!important;padding:14px!important;box-shadow:0 2px 10px rgba(15,23,42,.06)!important;overflow:visible!important;}
.mira-quote-card-main{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin-bottom:10px!important;}
.mira-quote-card-no{font-size:15px!important;color:#0f172a!important;word-break:break-word!important;}
.mira-quote-card-grid{display:grid!important;grid-template-columns:2fr 1fr 1fr!important;gap:10px!important;margin-bottom:12px!important;}
.mira-quote-card-grid div{background:#f8fafc!important;border:1px solid #eef2f7!important;border-radius:10px!important;padding:9px!important;min-width:0!important;}
.mira-quote-card-grid span{display:block!important;font-size:11px!important;color:#64748b!important;margin-bottom:3px!important;}
.mira-quote-card-grid strong{display:block!important;font-size:13px!important;color:#111827!important;word-break:break-word!important;}
.mira-quote-card-grid small{display:block!important;font-size:11px!important;color:#64748b!important;word-break:break-word!important;margin-top:2px!important;}
.mira-quote-card-actions{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;width:100%!important;max-width:100%!important;overflow:visible!important;}
.mira-quote-card-actions form{display:block!important;margin:0!important;padding:0!important;width:auto!important;max-width:100%!important;}
.mira-quote-card-actions .mira-btn-small,.mira-quote-card-actions .mira-danger-small{display:inline-flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;min-height:34px!important;min-width:92px!important;padding:8px 10px!important;border-radius:8px!important;font-size:12px!important;line-height:1!important;text-decoration:none!important;white-space:nowrap!important;opacity:1!important;visibility:visible!important;position:relative!important;}
.mira-empty-card{padding:14px!important;background:#f8fafc!important;border:1px solid #e5e7eb!important;border-radius:12px!important;color:#475569!important;}
@media(max-width:700px){
  .mira-quotes-panel{padding:12px!important;margin-left:0!important;margin-right:0!important;}
  .mira-quote-card{padding:12px!important;border-radius:12px!important;}
  .mira-quote-card-main{align-items:flex-start!important;}
  .mira-quote-card-grid{grid-template-columns:1fr!important;gap:7px!important;}
  .mira-quote-card-actions{display:grid!important;grid-template-columns:1fr 1fr 1fr!important;gap:7px!important;}
  .mira-quote-card-actions form{width:100%!important;}
  .mira-quote-card-actions .mira-btn-small,.mira-quote-card-actions .mira-danger-small{width:100%!important;min-width:0!important;font-size:11px!important;padding:9px 4px!important;}
}
@media(max-width:380px){.mira-quote-card-actions{grid-template-columns:1fr!important;}}


/* v4.2: Mijn bestellingen zonder tabel, mobiel goed zichtbaar */
.mira-orders-panel{overflow:visible!important;}
.mira-orders-cards{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;width:100%!important;max-width:100%!important;overflow:visible!important;}
.mira-order-card{display:block!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;background:#fff!important;border:1px solid #e5e7eb!important;border-radius:14px!important;padding:14px!important;box-shadow:0 2px 10px rgba(15,23,42,.06)!important;overflow:visible!important;}
.mira-order-card-main{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin-bottom:10px!important;}
.mira-order-card-no{font-size:15px!important;color:#0f172a!important;word-break:break-word!important;}
.mira-order-card-grid{display:grid!important;grid-template-columns:1fr 1fr 1fr!important;gap:10px!important;margin-bottom:0!important;}
.mira-order-card-grid div{background:#f8fafc!important;border:1px solid #eef2f7!important;border-radius:10px!important;padding:9px!important;min-width:0!important;}
.mira-order-card-grid span{display:block!important;font-size:11px!important;color:#64748b!important;margin-bottom:3px!important;}
.mira-order-card-grid strong{display:block!important;font-size:13px!important;color:#111827!important;word-break:break-word!important;}
@media(max-width:700px){
  .mira-orders-panel{padding:12px!important;margin-left:0!important;margin-right:0!important;}
  .mira-order-card{padding:12px!important;border-radius:12px!important;}
  .mira-order-card-main{align-items:flex-start!important;}
  .mira-order-card-grid{grid-template-columns:1fr!important;gap:7px!important;}
}

/* v4.3 Dealer profiel + offerte briefhoofd */
.mira-dealer-profile-layout{display:grid;grid-template-columns:260px 1fr;gap:18px;align-items:start}
.mira-dealer-logo-box{background:#f8fafc;border:1px solid #e5e7eb;border-radius:14px;padding:14px}
.mira-dealer-logo-preview{max-width:100%;max-height:130px;object-fit:contain;display:block;margin:0 0 12px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:10px}
.mira-logo-placeholder{height:120px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px dashed #cbd5e1;border-radius:10px;color:#64748b;margin-bottom:12px}
.mira-dealer-logo-box label,.mira-dealer-fields label{display:block;font-size:12px;font-weight:700;margin:10px 0 5px;color:#334155}
.mira-dealer-logo-box input,.mira-dealer-fields input,.mira-dealer-fields textarea{width:100%;box-sizing:border-box}
.mira-quote-letterhead{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;border-bottom:2px solid #111827;padding-bottom:18px;margin-bottom:22px}
.mira-quote-logo-wrap{min-width:160px;max-width:260px}
.mira-quote-logo{max-width:240px;max-height:110px;object-fit:contain}
.mira-quote-dealer-info{text-align:right;font-size:13px;line-height:1.5;color:#334155}
.mira-quote-dealer-info h2{margin:0 0 8px;font-size:22px;color:#111827}
.mira-quote-dealer-info p{margin:4px 0}
.mira-quote-footer{font-size:13px}
@media(max-width:700px){
  .mira-dealer-profile-layout{grid-template-columns:1fr}
  .mira-quote-letterhead{display:block;text-align:left}
  .mira-quote-dealer-info{text-align:left;margin-top:12px}
  .mira-quote-logo{max-width:190px;max-height:90px}
}
@media print{
  .mira-quote-view .mira-btn{display:none!important}
  .mira-quote-letterhead{page-break-inside:avoid}
}

/* v4.4 Dealer profiel dropdown */
.mira-profile-details{border:1px solid #e5e7eb;border-radius:14px;background:#fff;overflow:hidden;margin:0 0 14px 0}
.mira-profile-details summary{cursor:pointer;list-style:none;padding:14px 16px;font-size:15px;font-weight:700;color:#111827;background:#f9fafb;display:flex;align-items:center;justify-content:space-between;gap:10px}
.mira-profile-details summary::-webkit-details-marker{display:none}
.mira-profile-details summary:after{content:'+';width:24px;height:24px;border-radius:999px;background:#111827;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:16px;line-height:1;flex:0 0 auto}
.mira-profile-details[open] summary:after{content:'–'}
.mira-profile-details-body{padding:14px 16px 16px}
@media (max-width: 700px){
  .mira-profile-details summary{font-size:13px;padding:12px 13px}
  .mira-profile-details-body{padding:12px}
}

/* v4.5 facturen */
.mira-action-invoice{background:#111827;color:#fff!important;border-color:#111827!important;}
.mira-invoice-card .mira-status{background:#eef2ff;color:#3730a3;}
.mira-invoice-view h1{letter-spacing:.02em;}
@media(max-width:700px){
  .mira-quote-card-actions form{display:block;margin:4px 0;width:100%;}
  .mira-quote-card-actions .mira-btn-small,
  .mira-quote-card-actions button.mira-btn-small{display:block;width:100%;text-align:center;box-sizing:border-box;margin:4px 0;}
}

/* v4.6 echte tabbladen: elk onderdeel in eigen tab */
.mira-tabbed .mira-tabs{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:8px!important;
  overflow-x:auto!important;
  -webkit-overflow-scrolling:touch!important;
  padding:8px 0 10px!important;
  margin:0 0 14px!important;
  border-bottom:1px solid #e5e7eb!important;
}
.mira-tabbed .mira-tabs a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  padding:9px 13px!important;
  border-radius:999px!important;
  border:1px solid #d1d5db!important;
  background:#fff!important;
  color:#111827!important;
  text-decoration:none!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.mira-tabbed .mira-tabs a.mira-tab-link-active{
  background:#111827!important;
  border-color:#111827!important;
  color:#fff!important;
}
.mira-tabbed.mira-tabs-ready > .mira-tab-panel{
  display:none!important;
}
.mira-tabbed.mira-tabs-ready > .mira-tab-panel.mira-tab-active{
  display:block!important;
}
.mira-tabbed.mira-tabs-ready > .mira-tab-panel.mira-tab-active{
  animation:miraTabFade .15s ease-in;
}
@keyframes miraTabFade{from{opacity:.35;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(max-width:700px){
  .mira-tabbed .mira-tabs{gap:6px!important;padding-bottom:8px!important;margin-bottom:10px!important;}
  .mira-tabbed .mira-tabs a{font-size:11px!important;padding:8px 10px!important;}
  .mira-tabbed .mira-panel{margin-top:0!important;}
}

/* v4.8 language selector */
.mira-portal-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.mira-language-box{display:flex;align-items:center;gap:6px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:5px 8px;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.mira-language-box label{font-size:11px;font-weight:700;color:#374151;margin:0;line-height:1}
.mira-language-select{font-size:12px;min-width:122px;border:1px solid #d1d5db;border-radius:8px;padding:5px 8px;background:#fff;color:#111827;height:auto;line-height:1.2}
.mira-login-lang{display:flex;justify-content:flex-end;margin-bottom:8px}
html.mira-rtl .mira-public{direction:rtl;text-align:right}
html.mira-rtl .mira-portal-actions{justify-content:flex-start}
html.mira-rtl .mira-tabs{direction:rtl}
html.mira-rtl input,html.mira-rtl textarea,html.mira-rtl select{direction:rtl;text-align:right}
@media(max-width:640px){.mira-portal-head{align-items:flex-start;gap:8px}.mira-portal-actions{width:100%;justify-content:space-between}.mira-language-box{padding:4px 6px}.mira-language-select{min-width:110px;font-size:11px}.mira-login-lang{justify-content:flex-start}}

/* v5.0 Dealer personeel rechten */
.mira-dealer-staff-panel .mira-permissions-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:10px;
  margin:14px 0;
}
.mira-dealer-staff-panel .mira-permissions-grid label{
  display:flex;
  gap:8px;
  align-items:center;
  background:#f8fafc;
  border:1px solid #e5e7eb;
  border-radius:10px;
  padding:10px;
  font-size:13px;
}
.mira-staff-cards{display:grid;gap:14px;margin-top:16px;}
.mira-staff-card details{margin-top:12px;}
@media(max-width:700px){
  .mira-dealer-staff-panel .mira-permissions-grid{grid-template-columns:1fr;}
  .mira-dealer-staff-panel input{width:100%;}
}

/* v5.1 schermvullend portaal + zichtbare tabs */
.mira-public.mira-dealer-tabbed,
.mira-public.mira-staff-tabbed{
  width:calc(100vw - 28px)!important;
  max-width:none!important;
  margin-left:calc(50% - 50vw + 14px)!important;
  margin-right:calc(50% - 50vw + 14px)!important;
  padding-left:14px!important;
  padding-right:14px!important;
  overflow-x:visible!important;
}
.mira-dealer-tabbed .mira-tabs,
.mira-staff-tabbed .mira-tabs{
  width:100%!important;
  max-width:100%!important;
  justify-content:flex-start!important;
  align-items:center!important;
  overflow-x:visible!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}
.mira-dealer-tabbed .mira-tabs a,
.mira-staff-tabbed .mira-tabs a{
  flex:0 0 auto!important;
  min-width:auto!important;
  max-width:none!important;
  font-size:12px!important;
  padding:9px 11px!important;
}
.mira-dealer-tabbed .mira-tab-panel,
.mira-staff-tabbed .mira-tab-panel{
  width:100%!important;
  max-width:100%!important;
}
body .mira-public.mira-dealer-tabbed .mira-panel,
body .mira-public.mira-staff-tabbed .mira-panel{
  width:100%!important;
  max-width:100%!important;
}
@media(max-width:900px){
  .mira-public.mira-dealer-tabbed,
  .mira-public.mira-staff-tabbed{
    width:calc(100vw - 12px)!important;
    margin-left:calc(50% - 50vw + 6px)!important;
    margin-right:calc(50% - 50vw + 6px)!important;
    padding-left:8px!important;
    padding-right:8px!important;
  }
  .mira-dealer-tabbed .mira-tabs,
  .mira-staff-tabbed .mira-tabs{
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:thin!important;
    padding-bottom:10px!important;
  }
  .mira-dealer-tabbed .mira-tabs a,
  .mira-staff-tabbed .mira-tabs a{
    white-space:nowrap!important;
    font-size:11px!important;
    padding:8px 10px!important;
  }
}

/* v5.2 kalender / planning */
.mira-calendar-panel .mira-profile-details { margin-bottom: 16px; }
.mira-calendar-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 14px; }
.mira-appointment-card { background: #fff; border: 1px solid #e5e7eb; border-radius: 14px; padding: 14px; box-shadow: 0 8px 24px rgba(15,23,42,.06); }
.mira-appointment-card .mira-quote-actions { display:flex; gap:8px; align-items:flex-start; flex-wrap:wrap; margin-top: 10px; }
.mira-appointment-card details { width: 100%; }
.mira-grid .mira-full { grid-column: 1 / -1; }
@media (max-width: 720px) {
  .mira-calendar-cards { grid-template-columns: 1fr; }
  .mira-calendar-panel .mira-grid { display:block; }
  .mira-calendar-panel input, .mira-calendar-panel select, .mira-calendar-panel textarea { width:100%; max-width:100%; box-sizing:border-box; }
}

/* v5.4 backend menu fix: breed maar niet achter WordPress admin menu */
body.wp-admin[class*="mira-crm"] #wpcontent,
body.wp-admin[class*="mira-crm"] #wpbody-content{
  max-width:none!important;
  width:auto!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-right:20px!important;
  box-sizing:border-box!important;
  overflow-x:visible!important;
}
body.wp-admin[class*="mira-crm"] .wrap.mira-crm,
body.wp-admin.toplevel_page_mira-crm .wrap.mira-crm,
body.wp-admin.admin_page_mira-crm-products .wrap.mira-crm,
body.wp-admin.mira-crm_page_mira-crm-products .wrap.mira-crm,
body.wp-admin.mira-crm_page_mira-crm-stock .wrap.mira-crm,
body.wp-admin.mira-crm_page_mira-crm-orders .wrap.mira-crm,
body.wp-admin.mira-crm_page_mira-crm-production .wrap.mira-crm,
body.wp-admin.mira-crm_page_mira-crm-documents .wrap.mira-crm,
body.wp-admin.mira-crm_page_mira-crm-marketing .wrap.mira-crm,
body.wp-admin.mira-crm_page_mira-crm-roles .wrap.mira-crm,
body.wp-admin.mira-crm_page_mira-crm-dealer-settings .wrap.mira-crm{
  max-width:none!important;
  width:auto!important;
  margin-left:20px!important;
  margin-right:20px!important;
  padding-left:0!important;
  padding-right:0!important;
  box-sizing:border-box!important;
  overflow-x:hidden!important;
}
body.wp-admin[class*="mira-crm"] .mira-crm h1{font-size:26px!important;line-height:1.2!important;margin:14px 0 16px!important;}
body.wp-admin[class*="mira-crm"] .mira-cards{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;gap:14px!important;width:100%!important;}
body.wp-admin[class*="mira-crm"] .mira-cards>div{min-height:82px!important;border-radius:14px!important;}
body.wp-admin[class*="mira-crm"] .mira-panel{width:100%!important;max-width:none!important;margin:14px 0!important;padding:18px!important;border-radius:14px!important;overflow:visible!important;box-sizing:border-box!important;}
body.wp-admin[class*="mira-crm"] .mira-grid,
body.wp-admin[class*="mira-crm"] .mira-grid-4{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;gap:12px!important;width:100%!important;}
body.wp-admin[class*="mira-crm"] .mira-product-form input,
body.wp-admin[class*="mira-crm"] .mira-product-form select,
body.wp-admin[class*="mira-crm"] .mira-product-form textarea,
body.wp-admin[class*="mira-crm"] .mira-panel input,
body.wp-admin[class*="mira-crm"] .mira-panel select,
body.wp-admin[class*="mira-crm"] .mira-panel textarea{max-width:100%!important;width:100%;box-sizing:border-box!important;}
body.wp-admin[class*="mira-crm"] .mira-inline-form{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:10px!important;width:100%!important;}
body.wp-admin[class*="mira-crm"] .mira-inline-form input[type=file],
body.wp-admin[class*="mira-crm"] .mira-inline-form input[type=text],
body.wp-admin[class*="mira-crm"] .mira-inline-form input[type=email],
body.wp-admin[class*="mira-crm"] .mira-inline-form select{width:auto!important;max-width:100%!important;}
body.wp-admin[class*="mira-crm"] table.widefat,
body.wp-admin[class*="mira-crm"] .mira-admin-table{width:100%!important;table-layout:auto!important;border-radius:12px!important;overflow:hidden!important;}
body.wp-admin[class*="mira-crm"] .mira-admin-table th,
body.wp-admin[class*="mira-crm"] .mira-admin-table td,
body.wp-admin[class*="mira-crm"] table.widefat th,
body.wp-admin[class*="mira-crm"] table.widefat td{vertical-align:middle!important;font-size:13px!important;padding:9px 8px!important;}
body.wp-admin[class*="mira-crm"] .mira-admin-table input,
body.wp-admin[class*="mira-crm"] .mira-admin-table select,
body.wp-admin[class*="mira-crm"] .mira-admin-table textarea{max-width:180px!important;min-width:80px!important;}
body.wp-admin[class*="mira-crm"] .mira-admin-table textarea{min-width:160px!important;}
body.wp-admin[class*="mira-crm"] .button,
body.wp-admin[class*="mira-crm"] .button-primary,
body.wp-admin[class*="mira-crm"] .button-secondary{white-space:nowrap!important;}
body.wp-admin[class*="mira-crm"] .mira-thumb{width:54px!important;height:42px!important;object-fit:cover!important;border-radius:8px!important;}
body.wp-admin[class*="mira-crm"] .mira-image-field{max-width:none!important;width:100%!important;}
body.wp-admin[class*="mira-crm"] .mira-document-upload{display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important;}
body.wp-admin[class*="mira-crm"] .mira-document-preview{max-width:none!important;white-space:normal!important;}
@media(max-width:1100px){
  body.wp-admin[class*="mira-crm"] .mira-table-scroll{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;width:100%!important;}
  body.wp-admin[class*="mira-crm"] .mira-admin-table,
  body.wp-admin[class*="mira-crm"] table.widefat{display:block!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;min-width:720px!important;}
  body.wp-admin[class*="mira-crm"] .mira-admin-table thead,
  body.wp-admin[class*="mira-crm"] .mira-admin-table tbody,
  body.wp-admin[class*="mira-crm"] .mira-admin-table tr,
  body.wp-admin[class*="mira-crm"] table.widefat thead,
  body.wp-admin[class*="mira-crm"] table.widefat tbody,
  body.wp-admin[class*="mira-crm"] table.widefat tr{min-width:720px!important;}
}
@media(max-width:782px){
  body.wp-admin[class*="mira-crm"] #wpcontent{padding-left:10px!important;padding-right:10px!important;}
  body.wp-admin[class*="mira-crm"] .wrap.mira-crm{width:auto!important;margin-left:0!important;margin-right:0!important;padding:8px 0!important;}
  body.wp-admin[class*="mira-crm"] .mira-crm h1{font-size:22px!important;}
  body.wp-admin[class*="mira-crm"] .mira-panel{padding:12px!important;border-radius:12px!important;}
  body.wp-admin[class*="mira-crm"] .mira-grid,body.wp-admin[class*="mira-crm"] .mira-grid-4{grid-template-columns:1fr!important;}
  body.wp-admin[class*="mira-crm"] .mira-inline-form{display:block!important;}
  body.wp-admin[class*="mira-crm"] .mira-inline-form>*{margin:6px 0!important;width:100%!important;max-width:100%!important;}
}

/* v5.5 catalogus mailen */
.mira-document-mail-form .mira-doc-checkboxes{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px;margin:12px 0;padding:12px;background:#fff;border:1px solid #e5e7eb;border-radius:10px}
.mira-document-mail-form .mira-doc-check{display:block;padding:8px 10px;background:#f8fafc;border-radius:8px;font-size:13px}
.mira-document-mail-form .mira-doc-check input{margin-right:6px}
@media(max-width:700px){.mira-document-mail-form .mira-doc-checkboxes{grid-template-columns:1fr}.mira-document-mail-form .mira-grid{grid-template-columns:1fr!important}}

/* v5.7 Social media koppelingen */
.mira-admin-tabs a.active{background:#2563eb;color:#fff!important}
.mira-social-account{border:1px solid #e5e7eb;border-radius:14px;padding:12px 16px;margin:12px 0;background:#fff}
.mira-social-account summary{cursor:pointer;font-size:16px;display:flex;gap:10px;align-items:center;justify-content:space-between}
.mira-social-account .mira-status{font-size:12px;white-space:nowrap}
.mira-actions .button{margin:2px}
@media(max-width:782px){.mira-social-account summary{align-items:flex-start}.mira-actions .button{display:inline-block;margin:3px 2px}.mira-docs{grid-template-columns:1fr}}

/* v6.0 Compact product picker */
.mira-product-tools{
  display:flex; gap:10px; align-items:center; flex-wrap:wrap; margin:12px 0 14px; padding:12px; background:#f8fafc; border:1px solid #e5e7eb; border-radius:14px;
}
.mira-product-tools input[type="search"], .mira-product-tools select{ min-height:38px; border:1px solid #d1d5db; border-radius:10px; padding:8px 10px; font-size:14px; }
.mira-product-tools input[type="search"]{ flex:1 1 260px; }
.mira-product-tools select{ flex:0 1 220px; }
.mira-product-count{ font-size:12px; color:#64748b; margin-left:auto; }
.mira-compact-product-picker{ border-collapse:separate; border-spacing:0 8px; }
.mira-compact-product-picker tbody tr{ background:#fff; box-shadow:0 1px 4px rgba(15,23,42,.08); border-radius:14px; }
.mira-compact-product-picker td:first-child{ border-top-left-radius:14px; border-bottom-left-radius:14px; }
.mira-compact-product-picker td:last-child{ border-top-right-radius:14px; border-bottom-right-radius:14px; }
.mira-compact-product-picker .mira-product-name-cell strong{ font-size:14px; }
.mira-compact-product-picker .mira-product-name-cell small{ font-size:11px; color:#64748b; }
.mira-compact-product-picker input[type="number"]{ max-width:110px; min-height:34px; border-radius:9px; border:1px solid #cbd5e1; padding:6px 8px; }
.mira-compact-product-picker .mira-product-img{ width:46px; height:46px; object-fit:cover; border-radius:10px; }
.mira-compact-product-picker tr.mira-row-selected{ outline:2px solid #111827; outline-offset:0; }
.mira-compact-product-picker tr.mira-row-hidden{ display:none!important; }
@media (max-width: 780px){
  .mira-product-tools{ position:sticky; top:0; z-index:5; }
  .mira-product-tools input[type="search"], .mira-product-tools select{ width:100%; flex-basis:100%; }
  .mira-product-count{ margin-left:0; width:100%; }
  .mira-compact-product-picker, .mira-compact-product-picker thead, .mira-compact-product-picker tbody, .mira-compact-product-picker tr, .mira-compact-product-picker td{ display:block; width:100%; }
  .mira-compact-product-picker thead{ display:none; }
  .mira-compact-product-picker tr{ margin:0 0 10px; padding:10px; border:1px solid #e5e7eb; border-radius:14px; box-sizing:border-box; }
  .mira-compact-product-picker td{ border:0!important; padding:5px 0!important; display:flex; justify-content:space-between; gap:10px; align-items:center; }
  .mira-compact-product-picker td::before{ content:attr(data-label); font-size:11px; color:#64748b; font-weight:700; flex:0 0 108px; }
  .mira-compact-product-picker .mira-img-cell::before{ display:none; }
  .mira-compact-product-picker .mira-img-cell{ justify-content:flex-start; }
  .mira-compact-product-picker .mira-product-name-cell{ display:block; }
  .mira-compact-product-picker .mira-product-name-cell::before{ display:none; }
  .mira-compact-product-picker .mira-product-name-cell strong{ display:block; font-size:15px; line-height:1.25; }
  .mira-compact-product-picker input[type="number"]{ width:130px!important; max-width:55%; }
}


/* v6.1 Categorieblokken filter */
.mira-category-blocks{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(145px,1fr));
  gap:10px;
  margin:10px 0 12px;
}
.mira-category-block{
  appearance:none;
  border:1px solid #e5e7eb;
  background:#fff;
  border-radius:14px;
  padding:10px 12px;
  text-align:left;
  cursor:pointer;
  box-shadow:0 1px 4px rgba(15,23,42,.06);
  min-height:62px;
}
.mira-category-block strong{
  display:block;
  font-size:13px;
  line-height:1.2;
  color:#111827;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.mira-category-block span{
  display:block;
  margin-top:5px;
  font-size:11px;
  color:#64748b;
}
.mira-category-block.is-active{
  border-color:#111827;
  background:#111827;
}
.mira-category-block.is-active strong,.mira-category-block.is-active span{color:#fff;}
@media(max-width:780px){
  .mira-category-blocks{
    display:flex;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    gap:8px;
    padding-bottom:4px;
  }
  .mira-category-block{flex:0 0 140px;min-height:58px;padding:9px 10px;}
}

/* v6.2 Leesbare categorieblokken + mooier backend dashboard */
.mira-category-blocks{
  grid-template-columns:repeat(auto-fit,minmax(175px,1fr))!important;
  gap:12px!important;
}
.mira-category-block{
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%)!important;
  border:2px solid #dbe3ef!important;
  border-radius:16px!important;
  padding:13px 14px!important;
  min-height:76px!important;
  box-shadow:0 6px 16px rgba(15,23,42,.08)!important;
  color:#0f172a!important;
}
.mira-category-block strong{
  font-size:15px!important;
  line-height:1.25!important;
  color:#0f172a!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  word-break:break-word!important;
}
.mira-category-block span{
  font-size:12px!important;
  color:#475569!important;
  font-weight:700!important;
}
.mira-category-block:hover{
  border-color:#0f172a!important;
  transform:translateY(-1px);
}
.mira-category-block.is-active{
  background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%)!important;
  border-color:#0f172a!important;
  box-shadow:0 10px 24px rgba(15,23,42,.18)!important;
}
.mira-category-block.is-active strong,
.mira-category-block.is-active span{color:#fff!important;}
@media(max-width:780px){
  .mira-category-blocks{display:flex!important;overflow-x:auto!important;padding:2px 2px 8px!important;gap:9px!important;scrollbar-width:thin!important;}
  .mira-category-block{flex:0 0 178px!important;min-height:72px!important;padding:12px!important;}
  .mira-category-block strong{font-size:14px!important;}
  .mira-category-block span{font-size:11px!important;}
}
@media(max-width:420px){
  .mira-category-block{flex-basis:158px!important;}
  .mira-category-block strong{font-size:13px!important;}
}

body.wp-admin[class*="mira-crm"] .wrap.mira-crm,
body.wp-admin.toplevel_page_mira-crm .wrap.mira-crm,
body.wp-admin[class*="mira-crm_page_mira-crm"] .wrap.mira-crm{
  max-width:none!important;
  width:calc(100% - 24px)!important;
  margin:14px 12px 0 12px!important;
  padding:0!important;
  overflow:visible!important;
}
.mira-admin-dashboard{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.mira-dashboard-hero{
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  background:linear-gradient(135deg,#111827 0%,#1f2937 48%,#334155 100%);
  color:#fff;border-radius:22px;padding:24px 26px;margin:10px 0 18px;
  box-shadow:0 16px 36px rgba(15,23,42,.18);
}
.mira-dashboard-hero h1{color:#fff!important;margin:4px 0 6px!important;font-size:32px!important;}
.mira-dashboard-hero p{margin:0;color:#e5e7eb;font-size:14px;}
.mira-kicker{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#bfdbfe;}
.mira-dashboard-date{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:10px 14px;font-weight:800;white-space:nowrap;}
.mira-dashboard-stats{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:12px;margin:0 0 16px;}
.mira-stat-card{display:block;text-decoration:none;background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:16px;color:#0f172a;box-shadow:0 8px 22px rgba(15,23,42,.06);transition:.15s ease;}
.mira-stat-card:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(15,23,42,.10);color:#0f172a;}
.mira-stat-card span{display:block;color:#64748b;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;}
.mira-stat-card strong{display:block;font-size:34px;line-height:1.1;margin:8px 0;color:#111827;}
.mira-stat-card em{font-style:normal;color:#64748b;font-size:12px;}
.mira-stat-card.mira-warning{border-color:#fecaca;background:linear-gradient(180deg,#fff 0%,#fff7ed 100%);}
.mira-stat-card.mira-warning strong{color:#b91c1c;}
.mira-dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;}
.mira-dashboard-card{background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:18px;box-shadow:0 8px 22px rgba(15,23,42,.06);}
.mira-dashboard-card h2{margin:0 0 12px!important;font-size:18px!important;color:#111827!important;}
.mira-quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.mira-quick-actions a{display:flex;align-items:center;justify-content:center;text-align:center;min-height:42px;background:#0f172a;color:#fff!important;border-radius:12px;text-decoration:none;font-weight:800;padding:8px 10px;}
.mira-quick-actions a:hover{background:#2563eb;color:#fff!important;}
.mira-shortcode-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.mira-shortcode-list div{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:10px;}
.mira-shortcode-list strong{display:block;margin-bottom:6px;color:#0f172a;}
.mira-shortcode-list code{display:block;white-space:normal;background:#111827;color:#fff;border-radius:8px;padding:7px 8px;font-size:12px;}
.mira-mini-list{display:grid;gap:8px;}
.mira-mini-list div{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:10px 12px;}
.mira-mini-list strong{color:#111827;}
.mira-mini-list span{color:#64748b;font-size:12px;text-align:right;}
.mira-muted{color:#64748b;margin:0;}
.mira-workflow{margin-top:16px;}
@media(max-width:1400px){.mira-dashboard-stats{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:900px){.mira-dashboard-grid{grid-template-columns:1fr}.mira-dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr));}.mira-dashboard-hero{align-items:flex-start;flex-direction:column}.mira-quick-actions,.mira-shortcode-list{grid-template-columns:1fr}}
@media(max-width:600px){.mira-dashboard-stats{grid-template-columns:1fr}.mira-dashboard-hero{padding:18px;border-radius:16px}.mira-dashboard-hero h1{font-size:26px!important}.mira-mini-list div{display:block}.mira-mini-list span{text-align:left;display:block;margin-top:4px}}


/* v6.3 Categorieblokken: tekst altijd wit voor betere leesbaarheid */
.mira-category-block,
.mira-category-block:hover,
.mira-category-block:focus,
.mira-category-block.is-active{
  background:linear-gradient(135deg,#1e293b 0%,#0f172a 100%)!important;
  border-color:#334155!important;
  color:#ffffff!important;
}
.mira-category-block strong,
.mira-category-block span,
.mira-category-block:hover strong,
.mira-category-block:hover span,
.mira-category-block:focus strong,
.mira-category-block:focus span,
.mira-category-block.is-active strong,
.mira-category-block.is-active span{
  color:#ffffff!important;
  text-shadow:0 1px 1px rgba(0,0,0,.25)!important;
}
.mira-category-block span{opacity:.92!important;}
.mira-category-block.is-active{
  outline:3px solid rgba(14,165,233,.35)!important;
  box-shadow:0 10px 24px rgba(15,23,42,.24)!important;
}


/* v6.4 zichtbare kalender */
.mira-visible-calendar{background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:14px;margin:14px 0 18px;box-shadow:0 10px 28px rgba(15,23,42,.06);overflow:hidden}
.mira-calendar-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}
.mira-calendar-top strong{font-size:20px;color:#111827}
.mira-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.mira-calendar-weekdays div{text-align:center;font-weight:800;color:#374151;background:#f3f4f6;border-radius:10px;padding:8px;font-size:13px}
.mira-calendar-day{min-height:118px;border:1px solid #e5e7eb;border-radius:12px;background:#f9fafb;padding:8px;overflow:hidden}
.mira-calendar-empty{background:transparent;border:0}
.mira-calendar-day.is-today{border:2px solid #111827;background:#fff}
.mira-calendar-day.has-appointments{background:#fff7ed;border-color:#fdba74}
.mira-calendar-date{font-weight:900;color:#111827;margin-bottom:6px}
.mira-calendar-event{margin:4px 0;background:#111827;color:#fff;border-radius:8px;padding:4px 6px;font-size:12px}
.mira-calendar-event summary{cursor:pointer;list-style:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mira-calendar-event summary::-webkit-details-marker{display:none}
.mira-calendar-event div{background:#fff;color:#111827;border-radius:7px;padding:7px;margin-top:5px;line-height:1.35;border:1px solid #e5e7eb}
.mira-calendar-more{font-size:12px;font-weight:800;color:#111827;margin-top:4px}
.mira-calendar-list-title{margin:18px 0 10px;color:#111827;font-size:18px}
@media(max-width:780px){.mira-visible-calendar{padding:10px}.mira-calendar-grid{gap:4px}.mira-calendar-weekdays div{font-size:11px;padding:6px 2px}.mira-calendar-day{min-height:82px;padding:5px;border-radius:9px}.mira-calendar-date{font-size:12px}.mira-calendar-event{font-size:10px;padding:3px 4px}.mira-calendar-top strong{font-size:16px}}
@media(max-width:480px){.mira-calendar-grid{min-width:640px}.mira-visible-calendar{overflow-x:auto}.mira-calendar-top{position:sticky;left:0;background:#fff;z-index:1}}


/* v6.5 Kalender statuskleuren + legenda */
.mira-visible-calendar{position:relative}
.mira-calendar-legend{position:absolute;right:14px;top:58px;display:flex;gap:6px;align-items:center;flex-wrap:wrap;background:rgba(255,255,255,.94);border:1px solid #e5e7eb;border-radius:12px;padding:6px 8px;box-shadow:0 8px 20px rgba(15,23,42,.08);z-index:2;max-width:calc(100% - 28px)}
.mira-cal-dot{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:800;color:#111827;white-space:nowrap;line-height:1}
.mira-cal-dot:before{content:"";width:9px;height:9px;border-radius:999px;display:inline-block;background:#64748b;box-shadow:0 0 0 2px rgba(255,255,255,.9)}
.mira-calendar-weekdays{margin-top:34px}
.mira-calendar-event.mira-cal-status-gepland,.mira-status.mira-cal-status-gepland{background:#2563eb!important;color:#fff!important;border-color:#1d4ed8!important}
.mira-calendar-event.mira-cal-status-bevestigd,.mira-status.mira-cal-status-bevestigd{background:#16a34a!important;color:#fff!important;border-color:#15803d!important}
.mira-calendar-event.mira-cal-status-uitgevoerd,.mira-status.mira-cal-status-uitgevoerd{background:#7c3aed!important;color:#fff!important;border-color:#6d28d9!important}
.mira-calendar-event.mira-cal-status-geannuleerd,.mira-status.mira-cal-status-geannuleerd{background:#dc2626!important;color:#fff!important;border-color:#b91c1c!important;text-decoration:none}
.mira-cal-dot.mira-cal-status-gepland:before{background:#2563eb}
.mira-cal-dot.mira-cal-status-bevestigd:before{background:#16a34a}
.mira-cal-dot.mira-cal-status-uitgevoerd:before{background:#7c3aed}
.mira-cal-dot.mira-cal-status-geannuleerd:before{background:#dc2626}
.mira-calendar-event summary span{color:#fff!important}
.mira-calendar-event div{border-left:5px solid currentColor}
.mira-appointment-card .mira-status{border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800;display:inline-flex;align-items:center}
@media(max-width:780px){.mira-calendar-legend{position:static;margin:8px 0 10px;width:fit-content;max-width:100%}.mira-calendar-weekdays{margin-top:0}.mira-cal-dot{font-size:10px}.mira-calendar-legend{gap:5px}}

/* v7.2 frontend manager portal */
.mira-manager-portal{width:100%;max-width:calc(100vw - 32px);margin:0 auto;padding:14px;box-sizing:border-box;}
.mira-manager-portal .mira-tabs{position:sticky;top:0;z-index:10;background:#fff;padding:10px;border-radius:14px;box-shadow:0 2px 14px rgba(15,23,42,.08);overflow-x:auto;white-space:nowrap;}
.mira-manager-portal .mira-tabs a{display:inline-flex;margin:3px;padding:9px 12px;border-radius:10px;text-decoration:none;font-size:13px;font-weight:700;}
.mira-manager-module .mira-front-admin-wrap,.mira-manager-module .mira-crm{max-width:100%;width:100%;margin:0!important;padding:0!important;}
.mira-manager-module table{max-width:100%;}
.mira-manager-module .widefat,.mira-manager-module .mira-table{display:block;overflow-x:auto;white-space:nowrap;}
.mira-manager-module .mira-grid{max-width:100%;}
@media(max-width:782px){.mira-manager-portal{max-width:100%;padding:8px}.mira-manager-portal .mira-tabs a{font-size:12px;padding:8px 10px}.mira-manager-module .widefat,.mira-manager-module .mira-table{font-size:12px}}


/* v7.8 manager portaal: vaste linker zijbalk in plaats van horizontale tabs */
.mira-manager-sidebar-layout{
  max-width:100%!important;
  width:100%!important;
  margin:0!important;
  padding:14px!important;
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:260px minmax(0,1fr)!important;
  grid-template-areas:"head head" "nav content"!important;
  gap:18px!important;
  align-items:start!important;
}
.mira-manager-sidebar-layout .mira-portal-head{
  grid-area:head!important;
  margin:0!important;
}
.mira-manager-sidebar{
  grid-area:nav!important;
  position:sticky!important;
  top:20px!important;
  align-self:start!important;
  background:#0f172a!important;
  border-radius:18px!important;
  padding:12px!important;
  box-shadow:0 12px 34px rgba(15,23,42,.18)!important;
  max-height:calc(100vh - 40px)!important;
  overflow:auto!important;
}
.mira-manager-sidebar .mira-tabs,
.mira-manager-portal.mira-manager-sidebar-layout .mira-tabs{
  display:flex!important;
  flex-direction:column!important;
  gap:7px!important;
  margin:0!important;
  padding:0!important;
  width:100%!important;
  overflow:visible!important;
  white-space:normal!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
  position:static!important;
}
.mira-manager-sidebar .mira-tabs a,
.mira-manager-portal.mira-manager-sidebar-layout .mira-tabs a{
  width:100%!important;
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  justify-content:flex-start!important;
  border-radius:12px!important;
  padding:11px 12px!important;
  margin:0!important;
  min-height:42px!important;
  line-height:1.25!important;
  font-size:13px!important;
  font-weight:800!important;
  color:#e5e7eb!important;
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  text-decoration:none!important;
  white-space:normal!important;
}
.mira-manager-sidebar .mira-tabs a:hover{
  background:rgba(255,255,255,.16)!important;
  color:#fff!important;
}
.mira-manager-sidebar .mira-tabs a.mira-tab-link-active,
.mira-manager-portal.mira-manager-sidebar-layout .mira-tabs a.mira-tab-link-active{
  background:#f59e0b!important;
  color:#111827!important;
  border-color:#fbbf24!important;
  box-shadow:0 8px 22px rgba(245,158,11,.25)!important;
}
.mira-manager-sidebar .mira-tab-icon{
  width:24px!important;
  min-width:24px!important;
  height:24px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:15px!important;
}
.mira-manager-menu-toggle{
  display:none!important;
  width:100%!important;
  border:0!important;
  border-radius:12px!important;
  padding:12px 14px!important;
  background:#f59e0b!important;
  color:#111827!important;
  font-weight:900!important;
  cursor:pointer!important;
  margin-bottom:10px!important;
}
.mira-manager-sidebar-layout > .mira-tab-panel{
  grid-area:content!important;
  min-width:0!important;
  margin:0!important;
}
.mira-manager-sidebar-layout.mira-tabs-ready > .mira-tab-panel:not(.mira-tab-active){
  display:none!important;
}
.mira-manager-sidebar-layout.mira-tabs-ready > .mira-tab-panel.mira-tab-active{
  display:block!important;
}
.mira-manager-sidebar-layout .mira-manager-module,
.mira-manager-sidebar-layout .mira-panel{
  max-width:100%!important;
  box-sizing:border-box!important;
}
@media(max-width:980px){
  .mira-manager-sidebar-layout{
    display:block!important;
    padding:8px!important;
  }
  .mira-manager-sidebar{
    position:relative!important;
    top:auto!important;
    max-height:none!important;
    margin:0 0 14px!important;
    padding:10px!important;
    border-radius:16px!important;
  }
  .mira-manager-menu-toggle{display:block!important;}
  .mira-manager-sidebar:not(.mira-menu-open) .mira-tabs{display:none!important;}
  .mira-manager-sidebar.mira-menu-open .mira-tabs{display:flex!important;}
  .mira-manager-sidebar .mira-tabs a{font-size:13px!important;padding:10px 12px!important;}
  .mira-manager-sidebar-layout > .mira-tab-panel{margin-top:12px!important;}
}

/* v7.9 Manager schermpassend: voorkom horizontale scroll naast zijmenu */
.mira-manager-sidebar-layout{
  grid-template-columns:220px minmax(0,1fr)!important;
  gap:18px!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.mira-manager-sidebar-layout .mira-manager-content,
.mira-manager-sidebar-layout .mira-tab-panel,
.mira-manager-sidebar-layout .mira-card,
.mira-manager-sidebar-layout .mira-panel,
.mira-manager-sidebar-layout .mira-manager-module{
  min-width:0!important;
  max-width:100%!important;
  width:100%!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}
.mira-manager-sidebar-layout table{
  table-layout:auto!important;
  width:100%!important;
  max-width:100%!important;
  border-collapse:collapse!important;
}
.mira-manager-sidebar-layout th,
.mira-manager-sidebar-layout td{
  white-space:normal!important;
  word-break:break-word!important;
  overflow-wrap:anywhere!important;
  vertical-align:top!important;
  font-size:12px!important;
  padding:8px 7px!important;
  line-height:1.25!important;
}
.mira-manager-sidebar-layout .button,
.mira-manager-sidebar-layout button,
.mira-manager-sidebar-layout input[type="submit"],
.mira-manager-sidebar-layout .mira-btn{
  white-space:normal!important;
  line-height:1.15!important;
  min-height:30px!important;
  padding:6px 9px!important;
  font-size:12px!important;
  max-width:100%!important;
}
.mira-manager-sidebar-layout input,
.mira-manager-sidebar-layout select,
.mira-manager-sidebar-layout textarea{
  max-width:100%!important;
  box-sizing:border-box!important;
}
.mira-manager-sidebar-layout img{
  max-width:100%!important;
  height:auto!important;
}
/* product/voorraad tabellen: afbeeldingen en actievelden compact */
.mira-manager-sidebar-layout td img{
  max-width:54px!important;
  max-height:54px!important;
  object-fit:cover!important;
  border-radius:8px!important;
}
.mira-manager-sidebar-layout td:last-child,
.mira-manager-sidebar-layout th:last-child{
  min-width:92px!important;
}
.mira-manager-sidebar-layout td:last-child .button,
.mira-manager-sidebar-layout td:last-child button,
.mira-manager-sidebar-layout td:last-child a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:2px!important;
  max-width:100%!important;
}
/* brede tabellen binnen manager krijgen geen pagina-scroll maar compact binnen het vlak */
.mira-manager-sidebar-layout .widefat,
.mira-manager-sidebar-layout .wp-list-table,
.mira-manager-sidebar-layout .mira-table{
  font-size:12px!important;
}
@media(min-width:981px){
  .mira-manager-sidebar-layout .widefat th:nth-child(n+8),
  .mira-manager-sidebar-layout .widefat td:nth-child(n+8){
    font-size:11px!important;
  }
}
@media(max-width:1180px){
  .mira-manager-sidebar-layout{
    grid-template-columns:190px minmax(0,1fr)!important;
    gap:12px!important;
  }
  .mira-manager-sidebar .mira-tabs a{
    font-size:12px!important;
    padding:9px 10px!important;
  }
  .mira-manager-sidebar .mira-tab-icon{width:20px!important;min-width:20px!important;}
  .mira-manager-sidebar-layout th,
  .mira-manager-sidebar-layout td{font-size:11px!important;padding:6px 5px!important;}
}
@media(max-width:820px){
  .mira-manager-sidebar-layout table,
  .mira-manager-sidebar-layout thead,
  .mira-manager-sidebar-layout tbody,
  .mira-manager-sidebar-layout th,
  .mira-manager-sidebar-layout td,
  .mira-manager-sidebar-layout tr{
    display:block!important;
    width:100%!important;
    box-sizing:border-box!important;
  }
  .mira-manager-sidebar-layout thead{display:none!important;}
  .mira-manager-sidebar-layout tr{
    background:#fff!important;
    border:1px solid #e5e7eb!important;
    border-radius:14px!important;
    padding:10px!important;
    margin:0 0 12px!important;
    box-shadow:0 4px 14px rgba(15,23,42,.06)!important;
  }
  .mira-manager-sidebar-layout td{
    border:0!important;
    padding:7px 0!important;
    display:flex!important;
    justify-content:space-between!important;
    gap:12px!important;
    font-size:13px!important;
  }
  .mira-manager-sidebar-layout td:before{
    content:attr(data-label);
    font-weight:800!important;
    color:#475569!important;
    min-width:105px!important;
  }
  .mira-manager-sidebar-layout td:empty{display:none!important;}
  .mira-manager-sidebar-layout td:last-child{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:flex-start!important;
  }
}


/* v8.0 manager voorraad/producten schermpassend + adviesprijs zichtbaar */
.mira-manager-portal .mira-admin-table,
.mira-manager-portal table.widefat.mira-admin-table{
  width:100%;
  table-layout:fixed;
  border-collapse:separate;
  border-spacing:0;
}
.mira-manager-portal .mira-admin-table th,
.mira-manager-portal .mira-admin-table td{
  padding:8px 7px;
  vertical-align:top;
  white-space:normal;
  word-break:break-word;
  font-size:13px;
}
.mira-manager-portal .mira-admin-table th:nth-child(1),
.mira-manager-portal .mira-admin-table td:nth-child(1){width:64px;}
.mira-manager-portal .mira-admin-table th:nth-child(2),
.mira-manager-portal .mira-admin-table td:nth-child(2){width:88px;}
.mira-manager-portal .mira-admin-table th:nth-child(3),
.mira-manager-portal .mira-admin-table td:nth-child(3){width:22%;}
.mira-manager-portal .mira-admin-table th:nth-child(4),
.mira-manager-portal .mira-admin-table td:nth-child(4){width:82px;}
.mira-manager-portal .mira-admin-table th:nth-child(5),
.mira-manager-portal .mira-admin-table td:nth-child(5){width:90px;}
.mira-manager-portal .mira-admin-table th:nth-child(6),
.mira-manager-portal .mira-admin-table td:nth-child(6){width:80px;}
.mira-manager-portal .mira-admin-table th:nth-child(7),
.mira-manager-portal .mira-admin-table td:nth-child(7){width:60px;}
.mira-manager-portal .mira-admin-table th:nth-child(8),
.mira-manager-portal .mira-admin-table td:nth-child(8),
.mira-manager-portal .mira-admin-table th:nth-child(9),
.mira-manager-portal .mira-admin-table td:nth-child(9){width:94px;}
.mira-manager-portal .mira-admin-table th:nth-child(10),
.mira-manager-portal .mira-admin-table td:nth-child(10){width:190px;}
.mira-manager-portal .mira-product-actions .button,
.mira-manager-portal .mira-product-actions button{font-size:12px; padding:3px 8px; min-height:28px; line-height:20px;}
.mira-manager-portal .mira-product-actions .mira-inline-form{display:flex!important; flex-wrap:wrap; gap:4px; align-items:center; margin:5px 0 0!important;}
.mira-manager-portal .mira-product-actions input[type="number"]{width:62px!important; min-width:62px;}
.mira-manager-portal .mira-product-actions select{max-width:95px; min-width:80px; font-size:12px;}
.mira-manager-portal .mira-thumb{max-width:44px; max-height:44px; object-fit:cover; border-radius:8px;}
@media (max-width: 1180px){
  .mira-manager-portal .mira-manager-sidebar{width:205px; flex-basis:205px;}
  .mira-manager-portal .mira-admin-table th:nth-child(5),
  .mira-manager-portal .mira-admin-table td:nth-child(5),
  .mira-manager-portal .mira-admin-table th:nth-child(7),
  .mira-manager-portal .mira-admin-table td:nth-child(7){display:none;}
}
@media (max-width: 900px){
  .mira-manager-portal .mira-admin-table thead{display:none;}
  .mira-manager-portal .mira-admin-table,
  .mira-manager-portal .mira-admin-table tbody,
  .mira-manager-portal .mira-admin-table tr,
  .mira-manager-portal .mira-admin-table td{display:block; width:100%!important; box-sizing:border-box;}
  .mira-manager-portal .mira-admin-table tr.mira-product-row{border:1px solid #e5e7eb; border-radius:14px; margin:0 0 12px; padding:10px; background:#fff; box-shadow:0 6px 18px rgba(15,23,42,.06);}
  .mira-manager-portal .mira-admin-table td{border:none!important; padding:5px 0;}
  .mira-manager-portal .mira-admin-table td:before{content:attr(data-label); display:block; font-size:11px; color:#64748b; font-weight:700; text-transform:uppercase; letter-spacing:.03em; margin-bottom:1px;}
  .mira-manager-portal .mira-edit-row{display:none;}
}

/* v8.1 Manager product edit fix */
.mira-manager-portal .mira-edit-row{display:none; width:100%;}
.mira-manager-portal .mira-edit-row > td{display:table-cell !important; width:100%; padding:14px !important; background:#f8fafc !important;}
.mira-manager-portal .mira-edit-product-form{width:100%; max-width:100%; box-sizing:border-box;}
.mira-manager-portal .mira-product-actions{min-width:220px;}
.mira-manager-portal .mira-product-actions .button{margin:2px 3px 2px 0; white-space:nowrap;}
.mira-manager-portal .mira-admin-table td[data-label="Adviesprijs"],
.mira-manager-portal .mira-admin-table th:nth-child(9){display:table-cell !important; visibility:visible !important;}
@media (max-width: 900px){
  .mira-manager-portal .mira-admin-table, .mira-manager-portal .mira-admin-table tbody, .mira-manager-portal .mira-admin-table tr, .mira-manager-portal .mira-admin-table td{display:block; width:100%; box-sizing:border-box;}
  .mira-manager-portal .mira-admin-table thead{display:none;}
  .mira-manager-portal .mira-product-row{border:1px solid #e5e7eb; border-radius:14px; margin:10px 0; padding:10px; background:#fff;}
  .mira-manager-portal .mira-product-row td{border:0 !important; padding:6px 8px !important;}
  .mira-manager-portal .mira-product-row td[data-label]::before{content:attr(data-label) ': '; font-weight:700; color:#334155;}
  .mira-manager-portal .mira-edit-row{border:1px solid #dbeafe; border-radius:14px; margin:8px 0 18px; background:#f8fafc;}
  .mira-manager-portal .mira-edit-row > td{display:block !important;}
}


/* v8.6 Dealer portaal gegroepeerd menu met submenu's */
.mira-dealer-menu-layout .mira-dealer-grouped-menu{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  gap:14px!important;
  overflow:visible!important;
  white-space:normal!important;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:18px;
  padding:14px!important;
  margin:18px 0!important;
}
.mira-dealer-menu-layout .mira-menu-group{
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:16px;
  padding:12px;
  box-shadow:0 6px 18px rgba(15,23,42,.05);
  min-width:0;
}
.mira-dealer-menu-layout .mira-menu-group-title{
  color:#0f172a;
  font-size:13px;
  font-weight:800;
  margin:0 0 8px;
  display:flex;
  align-items:center;
  gap:6px;
}
.mira-dealer-menu-layout .mira-dealer-grouped-menu a{
  display:flex!important;
  width:100%;
  align-items:center;
  justify-content:flex-start;
  background:#f1f5f9!important;
  color:#0f172a!important;
  border:1px solid #e2e8f0!important;
  border-radius:12px!important;
  padding:9px 10px!important;
  margin:6px 0 0!important;
  font-size:13px!important;
  font-weight:700!important;
  text-decoration:none!important;
  white-space:normal!important;
  line-height:1.25!important;
  box-sizing:border-box;
}
.mira-dealer-menu-layout .mira-dealer-grouped-menu a:hover,
.mira-dealer-menu-layout .mira-dealer-grouped-menu a.mira-tab-link-active{
  background:#0f172a!important;
  color:#fff!important;
  border-color:#0f172a!important;
}
@media(max-width:760px){
  .mira-dealer-menu-layout .mira-dealer-grouped-menu{grid-template-columns:1fr!important;padding:10px!important;gap:10px!important;}
  .mira-dealer-menu-layout .mira-menu-group{padding:10px!important;}
  .mira-dealer-menu-layout .mira-dealer-grouped-menu a{font-size:12px!important;padding:8px 10px!important;}
}


/* v8.7 dealer menu accordion */
.mira-dealer-menu-layout .mira-dealer-grouped-menu{
  align-items:start!important;
}
.mira-dealer-menu-layout .mira-menu-group{
  overflow:hidden!important;
}
.mira-dealer-menu-layout .mira-menu-group-title{
  cursor:pointer!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  user-select:none!important;
  border-radius:12px!important;
  padding:8px 10px!important;
  color:#fff!important;
}
.mira-dealer-menu-layout .mira-menu-group-title:focus{
  outline:2px solid rgba(255,255,255,.7)!important;
  outline-offset:2px!important;
}
.mira-dealer-menu-layout .mira-menu-chevron{
  font-size:13px!important;
  line-height:1!important;
  transition:transform .18s ease!important;
  color:#fff!important;
}
.mira-dealer-menu-layout .mira-menu-group.is-open .mira-menu-chevron{
  transform:rotate(180deg)!important;
}
.mira-dealer-menu-layout .mira-menu-subitems{
  display:none!important;
  margin-top:8px!important;
  gap:7px!important;
}
.mira-dealer-menu-layout .mira-menu-group.is-open .mira-menu-subitems{
  display:grid!important;
}
.mira-dealer-menu-layout .mira-menu-group:not(.is-open){
  padding-bottom:10px!important;
}
.mira-dealer-menu-layout .mira-menu-group:not(.is-open) .mira-menu-subitems{
  display:none!important;
}
.mira-dealer-menu-layout .mira-menu-group .mira-menu-subitems a{
  margin:0!important;
}
@media (max-width: 780px){
  .mira-dealer-menu-layout .mira-dealer-grouped-menu{
    grid-template-columns:1fr!important;
  }
  .mira-dealer-menu-layout .mira-menu-group-title{
    min-height:38px!important;
  }
}

/* v8.9 Dealer menu kleuren fix: force readable menu colors */
.mira-dealer-menu-layout .mira-dealer-grouped-menu{
  background:#0f172a!important;
  border-color:#1e293b!important;
  box-shadow:0 14px 35px rgba(15,23,42,.18)!important;
}
.mira-dealer-menu-layout .mira-menu-group{
  background:#1e293b!important;
  border-color:#334155!important;
  box-shadow:0 8px 22px rgba(0,0,0,.18)!important;
}
.mira-dealer-menu-layout .mira-menu-group-title,
.mira-dealer-menu-layout .mira-menu-group-title span,
.mira-dealer-menu-layout .mira-menu-chevron{
  color:#ffffff!important;
  text-shadow:none!important;
}
.mira-dealer-menu-layout .mira-menu-group-title{
  background:#334155!important;
  border:1px solid #475569!important;
}
.mira-dealer-menu-layout .mira-menu-group-title:hover{
  background:#475569!important;
}
.mira-dealer-menu-layout .mira-menu-subitems{
  background:#111827!important;
  border-radius:14px!important;
  padding:8px!important;
}
.mira-dealer-menu-layout .mira-menu-subitems a,
.mira-dealer-menu-layout .mira-dealer-grouped-menu a{
  background:#243244!important;
  color:#ffffff!important;
  border-color:#475569!important;
}
.mira-dealer-menu-layout .mira-menu-subitems a:visited,
.mira-dealer-menu-layout .mira-dealer-grouped-menu a:visited{
  color:#ffffff!important;
}
.mira-dealer-menu-layout .mira-menu-subitems a:hover,
.mira-dealer-menu-layout .mira-dealer-grouped-menu a:hover{
  background:#2563eb!important;
  color:#ffffff!important;
  border-color:#60a5fa!important;
}
.mira-dealer-menu-layout .mira-menu-subitems a.mira-tab-link-active,
.mira-dealer-menu-layout .mira-dealer-grouped-menu a.mira-tab-link-active{
  background:#f59e0b!important;
  color:#111827!important;
  border-color:#fbbf24!important;
  font-weight:900!important;
}
.mira-dealer-menu-layout .mira-menu-group.is-open .mira-menu-group-title{
  background:#0ea5e9!important;
  border-color:#38bdf8!important;
}
@media (max-width:780px){
  .mira-dealer-menu-layout .mira-dealer-grouped-menu{padding:10px!important;}
  .mira-dealer-menu-layout .mira-menu-group-title{font-size:14px!important;}
  .mira-dealer-menu-layout .mira-menu-subitems a{font-size:13px!important;}
}


/* v9.0 dealer menu: na selectie subgroepen dichtklappen, actieve hoofdgroep zichtbaar houden */
.mira-dealer-menu-layout .mira-menu-group.has-active-child .mira-menu-group-title{
  background:#2563eb!important;
  color:#ffffff!important;
  border-color:#60a5fa!important;
  box-shadow:0 0 0 1px rgba(96,165,250,.35) inset;
}
.mira-dealer-menu-layout .mira-menu-group.has-active-child .mira-menu-group-title::after{
  content:'Actief';
  float:right;
  font-size:10px;
  line-height:1;
  padding:4px 6px;
  margin-top:2px;
  border-radius:999px;
  background:rgba(255,255,255,.18);
  color:#fff;
}
.mira-dealer-menu-layout .mira-menu-group:not(.is-open) .mira-menu-subitems{
  display:none!important;
}

/* v9.1 Dealer mobiel verbeterd - compacte kaarten en duidelijke acties */
.mira-dealer-menu-layout{max-width:100%!important;width:100%!important;margin:0 auto!important;box-sizing:border-box!important;}
.mira-dealer-menu-layout .mira-panel{box-sizing:border-box!important;max-width:100%!important;overflow:hidden!important;}
.mira-dealer-menu-layout .mira-table{width:100%!important;max-width:100%!important;}
.mira-dealer-menu-layout .mira-table th,
.mira-dealer-menu-layout .mira-table td{white-space:normal!important;word-break:break-word!important;}
.mira-dealer-menu-layout .mira-btn,
.mira-dealer-menu-layout .button,
.mira-dealer-menu-layout button{border-radius:10px!important;font-size:13px!important;line-height:1.2!important;padding:8px 10px!important;white-space:normal!important;}
.mira-dealer-menu-layout .mira-inline-form{display:flex!important;flex-wrap:wrap!important;gap:6px!important;align-items:center!important;}
.mira-dealer-menu-layout input,
.mira-dealer-menu-layout select,
.mira-dealer-menu-layout textarea{max-width:100%!important;box-sizing:border-box!important;}
.mira-dealer-menu-layout .mira-product-tools{background:#fff!important;border:1px solid #e5e7eb!important;border-radius:14px!important;padding:10px!important;margin:0 0 12px!important;}
.mira-dealer-menu-layout .mira-category-blocks{display:flex!important;gap:8px!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;padding:6px 2px 10px!important;}
.mira-dealer-menu-layout .mira-category-block{flex:0 0 auto!important;min-width:130px!important;max-width:180px!important;color:#fff!important;background:#0f172a!important;border-color:#334155!important;border-radius:14px!important;padding:10px 12px!important;}
.mira-dealer-menu-layout .mira-category-block *{color:#fff!important;}
.mira-dealer-menu-layout .mira-action-row,
.mira-dealer-menu-layout .mira-card-actions{display:flex!important;flex-wrap:wrap!important;gap:7px!important;margin-top:8px!important;}
.mira-dealer-menu-layout .mira-status{display:inline-flex!important;align-items:center!important;min-height:24px!important;font-size:12px!important;}

@media(max-width:900px){
  .mira-dealer-menu-layout{padding:8px!important;}
  .mira-dealer-menu-layout .mira-panel{padding:12px!important;border-radius:14px!important;}
  .mira-dealer-menu-layout .mira-grid,
  .mira-dealer-menu-layout .mira-grid-4,
  .mira-dealer-menu-layout .mira-cards{grid-template-columns:1fr!important;gap:10px!important;}
  .mira-dealer-menu-layout .mira-table,
  .mira-dealer-menu-layout .mira-table tbody,
  .mira-dealer-menu-layout .mira-table tr,
  .mira-dealer-menu-layout .mira-table td{display:block!important;width:100%!important;box-sizing:border-box!important;min-width:0!important;}
  .mira-dealer-menu-layout .mira-table thead{display:none!important;}
  .mira-dealer-menu-layout .mira-table tr{background:#fff!important;border:1px solid #e5e7eb!important;border-radius:14px!important;margin:0 0 12px!important;padding:10px!important;box-shadow:0 6px 18px rgba(15,23,42,.06)!important;}
  .mira-dealer-menu-layout .mira-table td{border:0!important;padding:6px 4px!important;}
  .mira-dealer-menu-layout .mira-table td[data-label]::before{content:attr(data-label) ': ';font-weight:700!important;color:#334155!important;display:inline!important;}
  .mira-dealer-menu-layout .mira-table td.mira-img-cell::before{display:none!important;}
  .mira-dealer-menu-layout .mira-table td.mira-product-name-cell::before{display:none!important;}
  .mira-dealer-menu-layout .mira-product-name-cell strong{display:block!important;font-size:15px!important;line-height:1.25!important;color:#0f172a!important;}
  .mira-dealer-menu-layout .mira-product-name-cell small{display:block!important;font-size:12px!important;color:#64748b!important;}
  .mira-dealer-menu-layout .mira-product-img,
  .mira-dealer-menu-layout .mira-thumb{width:58px!important;height:46px!important;object-fit:cover!important;border-radius:10px!important;}
  .mira-dealer-menu-layout input[type=number]{width:100%!important;min-width:0!important;max-width:120px!important;}
  .mira-dealer-menu-layout input[type=text],
  .mira-dealer-menu-layout input[type=email],
  .mira-dealer-menu-layout input[type=url],
  .mira-dealer-menu-layout input[type=date],
  .mira-dealer-menu-layout input[type=time],
  .mira-dealer-menu-layout select,
  .mira-dealer-menu-layout textarea{width:100%!important;min-width:0!important;}
  .mira-dealer-menu-layout .mira-btn,
  .mira-dealer-menu-layout .button,
  .mira-dealer-menu-layout button{font-size:12px!important;padding:8px 9px!important;min-height:34px!important;}
  .mira-dealer-menu-layout .mira-card-actions .button,
  .mira-dealer-menu-layout .mira-action-row .button{flex:1 1 120px!important;text-align:center!important;}
  .mira-dealer-menu-layout .mira-dealer-grouped-menu{position:relative!important;width:100%!important;max-width:100%!important;}
  .mira-dealer-menu-layout .mira-menu-group-title{font-size:14px!important;padding:10px 12px!important;}
  .mira-dealer-menu-layout .mira-menu-subitems a{font-size:13px!important;padding:9px 10px!important;}
}

@media(max-width:480px){
  .mira-dealer-menu-layout{padding:6px!important;}
  .mira-dealer-menu-layout h1{font-size:22px!important;}
  .mira-dealer-menu-layout h2{font-size:18px!important;}
  .mira-dealer-menu-layout h3{font-size:16px!important;}
  .mira-dealer-menu-layout .mira-panel{padding:10px!important;}
  .mira-dealer-menu-layout .mira-card-actions .button,
  .mira-dealer-menu-layout .mira-action-row .button,
  .mira-dealer-menu-layout .mira-btn{width:100%!important;display:block!important;}
  .mira-dealer-menu-layout .mira-category-block{min-width:118px!important;padding:9px 10px!important;font-size:12px!important;}
}

/* v9.2 Dealer mobiel hamburger menu */
.mira-dealer-mobile-nav,
.mira-dealer-mobile-overlay,
.mira-dealer-mobile-menu-toggle{display:none;}

@media (max-width: 900px){
  .mira-dealer-menu-layout{position:relative!important;}
  .mira-dealer-menu-layout .mira-portal-head{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    flex-wrap:wrap!important;
  }
  .mira-dealer-mobile-nav{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    position:sticky!important;
    top:0!important;
    z-index:9997!important;
    padding:8px 0 10px!important;
    background:rgba(255,255,255,.96)!important;
    backdrop-filter:saturate(140%) blur(8px)!important;
    border-bottom:1px solid #e5e7eb!important;
    margin-bottom:10px!important;
  }
  .mira-dealer-mobile-menu-toggle{
    display:inline-flex!important;
    align-items:center!important;
    gap:9px!important;
    border:0!important;
    background:#0f172a!important;
    color:#fff!important;
    padding:10px 14px!important;
    border-radius:14px!important;
    font-weight:800!important;
    font-size:14px!important;
    min-height:42px!important;
    box-shadow:0 10px 25px rgba(15,23,42,.22)!important;
    cursor:pointer!important;
  }
  .mira-dealer-mobile-menu-toggle span{color:#fff!important;}
  .mira-hamburger-lines{
    width:21px!important;
    height:16px!important;
    display:inline-flex!important;
    flex-direction:column!important;
    justify-content:space-between!important;
    flex:0 0 21px!important;
  }
  .mira-hamburger-lines i{
    display:block!important;
    height:2px!important;
    width:100%!important;
    background:#fff!important;
    border-radius:999px!important;
  }
  .mira-dealer-mobile-overlay{
    display:block!important;
    position:fixed!important;
    inset:0!important;
    background:rgba(15,23,42,.55)!important;
    opacity:0!important;
    pointer-events:none!important;
    z-index:9998!important;
    transition:opacity .2s ease!important;
  }
  .mira-dealer-menu-layout.mira-mobile-menu-open .mira-dealer-mobile-overlay{
    opacity:1!important;
    pointer-events:auto!important;
  }
  .mira-dealer-menu-layout .mira-dealer-grouped-menu{
    position:fixed!important;
    top:0!important;
    left:0!important;
    width:min(86vw,340px)!important;
    max-width:min(86vw,340px)!important;
    height:100vh!important;
    max-height:100vh!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    z-index:9999!important;
    display:block!important;
    padding:16px 12px 24px!important;
    margin:0!important;
    border-radius:0 18px 18px 0!important;
    transform:translateX(-110%)!important;
    transition:transform .23s ease!important;
    box-shadow:18px 0 45px rgba(0,0,0,.28)!important;
  }
  .mira-dealer-menu-layout.mira-mobile-menu-open .mira-dealer-grouped-menu{
    transform:translateX(0)!important;
  }
  .mira-dealer-menu-layout .mira-dealer-grouped-menu::before{
    content:'Dealer menu';
    display:block!important;
    color:#fff!important;
    font-size:18px!important;
    font-weight:900!important;
    letter-spacing:.2px!important;
    padding:4px 4px 14px!important;
    border-bottom:1px solid rgba(255,255,255,.12)!important;
    margin-bottom:12px!important;
  }
  .mira-dealer-menu-layout .mira-menu-group{
    margin:0 0 10px!important;
    width:100%!important;
    box-sizing:border-box!important;
  }
  .mira-dealer-menu-layout .mira-menu-group-title{
    width:100%!important;
    box-sizing:border-box!important;
    min-height:44px!important;
    font-size:15px!important;
  }
  .mira-dealer-menu-layout .mira-menu-subitems{
    width:100%!important;
    box-sizing:border-box!important;
  }
  .mira-dealer-menu-layout .mira-menu-subitems a,
  .mira-dealer-menu-layout .mira-dealer-grouped-menu a{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:100%!important;
    min-height:40px!important;
    box-sizing:border-box!important;
    font-size:14px!important;
    padding:10px 12px!important;
    text-align:left!important;
  }
  body.mira-dealer-mobile-menu-lock{overflow:hidden!important;}
}

@media (min-width: 901px){
  .mira-dealer-menu-layout .mira-dealer-grouped-menu{
    transform:none!important;
  }
}

/* v9.4 Hamburger menu voor alle portalen: dealer, personeel en manager */
.mira-universal-mobile-nav,
.mira-universal-mobile-overlay,
.mira-universal-mobile-menu-toggle{display:none;}

@media (max-width: 900px){
  .mira-staff-menu-layout,
  .mira-manager-sidebar-layout{position:relative!important;max-width:100%!important;width:100%!important;box-sizing:border-box!important;padding:8px!important;}

  .mira-staff-menu-layout .mira-portal-head,
  .mira-manager-sidebar-layout .mira-portal-head{
    display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;flex-wrap:wrap!important;
  }

  .mira-universal-mobile-nav{
    display:flex!important;align-items:center!important;justify-content:flex-end!important;position:sticky!important;top:0!important;z-index:9997!important;
    padding:8px 0 10px!important;background:rgba(255,255,255,.96)!important;backdrop-filter:saturate(140%) blur(8px)!important;border-bottom:1px solid #e5e7eb!important;margin-bottom:10px!important;
  }

  .mira-universal-mobile-menu-toggle,
  .mira-manager-menu-toggle{
    display:inline-flex!important;align-items:center!important;gap:9px!important;border:0!important;background:#0f172a!important;color:#fff!important;padding:10px 14px!important;border-radius:14px!important;
    font-weight:800!important;font-size:14px!important;min-height:42px!important;box-shadow:0 10px 25px rgba(15,23,42,.22)!important;cursor:pointer!important;
  }
  .mira-universal-mobile-menu-toggle span,
  .mira-manager-menu-toggle span{color:#fff!important;}

  .mira-universal-mobile-overlay{
    display:block!important;position:fixed!important;inset:0!important;background:rgba(15,23,42,.55)!important;opacity:0!important;pointer-events:none!important;z-index:9998!important;transition:opacity .2s ease!important;
  }
  .mira-staff-menu-layout.mira-mobile-menu-open .mira-universal-mobile-overlay,
  .mira-manager-sidebar-layout.mira-mobile-menu-open .mira-universal-mobile-overlay{opacity:1!important;pointer-events:auto!important;}

  .mira-staff-menu-layout > .mira-tabs.mira-universal-mobile-menu,
  .mira-manager-sidebar-layout .mira-manager-sidebar .mira-tabs.mira-universal-mobile-menu{
    position:fixed!important;top:0!important;left:0!important;width:min(86vw,340px)!important;max-width:min(86vw,340px)!important;height:100vh!important;max-height:100vh!important;
    overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;z-index:9999!important;display:flex!important;flex-direction:column!important;gap:8px!important;
    padding:18px 12px 24px!important;margin:0!important;border-radius:0 18px 18px 0!important;background:#0f172a!important;transform:translateX(-110%)!important;transition:transform .23s ease!important;box-shadow:18px 0 45px rgba(0,0,0,.28)!important;
  }
  .mira-staff-menu-layout.mira-mobile-menu-open > .mira-tabs.mira-universal-mobile-menu,
  .mira-manager-sidebar-layout.mira-mobile-menu-open .mira-manager-sidebar .mira-tabs.mira-universal-mobile-menu{transform:translateX(0)!important;}

  .mira-staff-menu-layout > .mira-tabs.mira-universal-mobile-menu::before{content:'Personeel menu';display:block!important;color:#fff!important;font-size:18px!important;font-weight:900!important;padding:4px 4px 14px!important;border-bottom:1px solid rgba(255,255,255,.14)!important;margin-bottom:10px!important;}
  .mira-manager-sidebar-layout .mira-manager-sidebar .mira-tabs.mira-universal-mobile-menu::before{content:'Manager menu';display:block!important;color:#fff!important;font-size:18px!important;font-weight:900!important;padding:4px 4px 14px!important;border-bottom:1px solid rgba(255,255,255,.14)!important;margin-bottom:10px!important;}

  .mira-staff-menu-layout > .mira-tabs.mira-universal-mobile-menu a,
  .mira-manager-sidebar-layout .mira-manager-sidebar .mira-tabs.mira-universal-mobile-menu a{
    display:flex!important;align-items:center!important;width:100%!important;min-height:42px!important;box-sizing:border-box!important;font-size:14px!important;font-weight:800!important;padding:10px 12px!important;text-align:left!important;
    border-radius:12px!important;background:#1e293b!important;color:#fff!important;text-decoration:none!important;white-space:normal!important;
  }
  .mira-staff-menu-layout > .mira-tabs.mira-universal-mobile-menu a:hover,
  .mira-staff-menu-layout > .mira-tabs.mira-universal-mobile-menu a.mira-tab-link-active,
  .mira-manager-sidebar-layout .mira-manager-sidebar .mira-tabs.mira-universal-mobile-menu a:hover,
  .mira-manager-sidebar-layout .mira-manager-sidebar .mira-tabs.mira-universal-mobile-menu a.mira-tab-link-active{background:#2563eb!important;color:#fff!important;}

  .mira-manager-sidebar-layout{display:block!important;grid-template-columns:1fr!important;grid-template-areas:none!important;}
  .mira-manager-sidebar-layout .mira-manager-sidebar{display:block!important;position:static!important;width:100%!important;max-width:100%!important;min-width:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;}
  .mira-manager-sidebar-layout .mira-manager-sidebar .mira-manager-menu-toggle{position:sticky!important;top:0!important;z-index:9997!important;margin:8px 0 10px!important;}
  .mira-manager-sidebar:not(.mira-menu-open) .mira-tabs{display:flex!important;}
  .mira-manager-sidebar.mira-menu-open .mira-tabs{display:flex!important;}

  body.mira-universal-mobile-menu-lock{overflow:hidden!important;}
}

@media (min-width: 901px){
  .mira-staff-menu-layout > .mira-tabs.mira-universal-mobile-menu,
  .mira-manager-sidebar-layout .mira-manager-sidebar .mira-tabs.mira-universal-mobile-menu{transform:none!important;}
}


/* v9.5 Hamburger menu op desktop en mobiel voor alle portalen */
.mira-dealer-mobile-nav,
.mira-universal-mobile-nav{display:flex!important;align-items:center!important;justify-content:flex-end!important;position:sticky!important;top:0!important;z-index:9997!important;padding:8px 0 10px!important;background:rgba(255,255,255,.96)!important;backdrop-filter:saturate(140%) blur(8px)!important;border-bottom:1px solid #e5e7eb!important;margin-bottom:12px!important;}
.mira-dealer-mobile-menu-toggle,
.mira-universal-mobile-menu-toggle,
.mira-manager-menu-toggle{display:inline-flex!important;align-items:center!important;gap:9px!important;border:0!important;background:#0f172a!important;color:#fff!important;padding:10px 14px!important;border-radius:14px!important;font-weight:800!important;font-size:14px!important;min-height:42px!important;box-shadow:0 10px 25px rgba(15,23,42,.22)!important;cursor:pointer!important;line-height:1!important;}
.mira-dealer-mobile-menu-toggle span,
.mira-universal-mobile-menu-toggle span,
.mira-manager-menu-toggle span{color:#fff!important;}
.mira-hamburger-lines{width:21px!important;height:16px!important;display:inline-flex!important;flex-direction:column!important;justify-content:space-between!important;flex:0 0 21px!important;}
.mira-hamburger-lines i{display:block!important;height:2px!important;width:100%!important;background:#fff!important;border-radius:999px!important;}
.mira-dealer-mobile-overlay,
.mira-universal-mobile-overlay{display:block!important;position:fixed!important;inset:0!important;background:rgba(15,23,42,.55)!important;opacity:0!important;pointer-events:none!important;z-index:9998!important;transition:opacity .2s ease!important;}
.mira-dealer-menu-layout.mira-mobile-menu-open .mira-dealer-mobile-overlay,
.mira-staff-menu-layout.mira-mobile-menu-open .mira-universal-mobile-overlay,
.mira-manager-sidebar-layout.mira-mobile-menu-open .mira-universal-mobile-overlay{opacity:1!important;pointer-events:auto!important;}
.mira-dealer-menu-layout .mira-dealer-grouped-menu,
.mira-staff-menu-layout > .mira-tabs.mira-universal-mobile-menu,
.mira-manager-sidebar-layout .mira-manager-sidebar .mira-tabs.mira-universal-mobile-menu{position:fixed!important;top:0!important;left:0!important;width:min(86vw,360px)!important;max-width:min(86vw,360px)!important;height:100vh!important;max-height:100vh!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;z-index:9999!important;display:flex!important;flex-direction:column!important;gap:8px!important;padding:18px 12px 24px!important;margin:0!important;border-radius:0 18px 18px 0!important;background:#0f172a!important;transform:translateX(-110%)!important;transition:transform .23s ease!important;box-shadow:18px 0 45px rgba(0,0,0,.28)!important;box-sizing:border-box!important;}
.mira-dealer-menu-layout.mira-mobile-menu-open .mira-dealer-grouped-menu,
.mira-staff-menu-layout.mira-mobile-menu-open > .mira-tabs.mira-universal-mobile-menu,
.mira-manager-sidebar-layout.mira-mobile-menu-open .mira-manager-sidebar .mira-tabs.mira-universal-mobile-menu{transform:translateX(0)!important;}
.mira-dealer-menu-layout .mira-dealer-grouped-menu::before{content:'Dealer menu';display:block!important;color:#fff!important;font-size:18px!important;font-weight:900!important;padding:4px 4px 14px!important;border-bottom:1px solid rgba(255,255,255,.14)!important;margin-bottom:10px!important;}
.mira-staff-menu-layout > .mira-tabs.mira-universal-mobile-menu::before{content:'Personeel menu';display:block!important;color:#fff!important;font-size:18px!important;font-weight:900!important;padding:4px 4px 14px!important;border-bottom:1px solid rgba(255,255,255,.14)!important;margin-bottom:10px!important;}
.mira-manager-sidebar-layout .mira-manager-sidebar .mira-tabs.mira-universal-mobile-menu::before{content:'Manager menu';display:block!important;color:#fff!important;font-size:18px!important;font-weight:900!important;padding:4px 4px 14px!important;border-bottom:1px solid rgba(255,255,255,.14)!important;margin-bottom:10px!important;}
.mira-dealer-menu-layout .mira-menu-group{margin:0 0 10px!important;width:100%!important;box-sizing:border-box!important;}
.mira-dealer-menu-layout .mira-menu-group-title{width:100%!important;box-sizing:border-box!important;min-height:44px!important;font-size:15px!important;background:#1e293b!important;color:#fff!important;border-radius:12px!important;}
.mira-dealer-menu-layout .mira-menu-subitems a,
.mira-dealer-menu-layout .mira-dealer-grouped-menu a,
.mira-staff-menu-layout > .mira-tabs.mira-universal-mobile-menu a,
.mira-manager-sidebar-layout .mira-manager-sidebar .mira-tabs.mira-universal-mobile-menu a{display:flex!important;align-items:center!important;width:100%!important;min-height:42px!important;box-sizing:border-box!important;font-size:14px!important;font-weight:800!important;padding:10px 12px!important;text-align:left!important;border-radius:12px!important;background:#1e293b!important;color:#fff!important;text-decoration:none!important;white-space:normal!important;}
.mira-dealer-menu-layout .mira-menu-subitems a:hover,
.mira-dealer-menu-layout .mira-dealer-grouped-menu a:hover,
.mira-staff-menu-layout > .mira-tabs.mira-universal-mobile-menu a:hover,
.mira-staff-menu-layout > .mira-tabs.mira-universal-mobile-menu a.mira-tab-link-active,
.mira-manager-sidebar-layout .mira-manager-sidebar .mira-tabs.mira-universal-mobile-menu a:hover,
.mira-manager-sidebar-layout .mira-manager-sidebar .mira-tabs.mira-universal-mobile-menu a.mira-tab-link-active{background:#2563eb!important;color:#fff!important;}
.mira-manager-sidebar-layout{display:block!important;grid-template-columns:1fr!important;grid-template-areas:none!important;width:100%!important;max-width:100%!important;}
.mira-manager-sidebar-layout .mira-manager-sidebar{display:block!important;position:static!important;width:100%!important;max-width:100%!important;min-width:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;}
.mira-manager-sidebar-layout .mira-manager-menu-toggle{position:sticky!important;top:0!important;z-index:9997!important;margin:8px 0 10px!important;}
body.mira-dealer-mobile-menu-lock,
body.mira-universal-mobile-menu-lock{overflow:hidden!important;}

/* v9.6 - Dealer rechten als icoon-tegels */
.mira-permission-card-grid{
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 12px;
  margin: 12px 0 18px;
}
.mira-permission-card-title{
  grid-column: 1 / -1;
  margin: 0 0 2px;
  font-size: 16px;
  font-weight: 800;
  color: #111827;
}
.mira-permission-card{
  position: relative;
  display: grid !important;
  grid-template-columns: 38px 1fr 38px;
  align-items: center;
  gap: 10px;
  min-height: 76px;
  padding: 12px;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 6px 18px rgba(15,23,42,.06);
  cursor: pointer;
  transition: .15s ease;
}
.mira-permission-card:hover{border-color:#94a3b8; transform:translateY(-1px);}
.mira-permission-card.is-active{border-color:#2563eb; background:#eff6ff; box-shadow:0 8px 22px rgba(37,99,235,.12);}
.mira-permission-card input{position:absolute; opacity:0; pointer-events:none;}
.mira-permission-icon{
  width: 38px; height: 38px;
  display:flex; align-items:center; justify-content:center;
  border-radius: 12px;
  background:#111827;
  color:#fff;
  font-size: 20px;
}
.mira-permission-content strong{display:block; font-size:13px; line-height:1.2; color:#111827; margin-bottom:4px;}
.mira-permission-content small{display:block; font-size:11px; line-height:1.25; color:#64748b;}
.mira-permission-switch{width:34px;height:20px;border-radius:999px;background:#cbd5e1;position:relative;justify-self:end;}
.mira-permission-switch:after{content:"";width:16px;height:16px;background:#fff;border-radius:50%;position:absolute;left:2px;top:2px;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:.15s ease;}
.mira-permission-card.is-active .mira-permission-switch{background:#2563eb;}
.mira-permission-card.is-active .mira-permission-switch:after{transform:translateX(14px);}
@media (max-width: 700px){
  .mira-permission-card-grid{grid-template-columns: repeat(2, minmax(0, 1fr)); gap:8px;}
  .mira-permission-card{grid-template-columns:30px 1fr; padding:10px; min-height:82px;}
  .mira-permission-icon{width:30px;height:30px;font-size:17px;}
  .mira-permission-switch{grid-column:1/-1; justify-self:start;}
}
@media (max-width: 420px){.mira-permission-card-grid{grid-template-columns:1fr;}}

/* v10.2 Personeel rechten selectie fix */
.mira-staff-rights-grid,
.mira-personnel-rights-grid,
.mira-manager-staff-rights-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:10px;
  margin:12px 0;
}
.mira-staff-right-tile,
.mira-personnel-right-tile,
.mira-manager-staff-right-tile{
  border:1px solid #d6dbe1;
  background:#fff;
  border-radius:12px;
  padding:12px;
  cursor:pointer;
  display:flex;
  gap:10px;
  align-items:flex-start;
  min-height:74px;
  box-sizing:border-box;
}
.mira-staff-right-tile input,
.mira-personnel-right-tile input,
.mira-manager-staff-right-tile input{ margin-top:3px; }
.mira-staff-right-tile:has(input:checked),
.mira-personnel-right-tile:has(input:checked),
.mira-manager-staff-right-tile:has(input:checked){
  border-color:#2271b1;
  background:#eef6ff;
  box-shadow:0 0 0 1px #2271b1 inset;
}
.mira-staff-right-tile .mira-right-title,
.mira-personnel-right-tile .mira-right-title,
.mira-manager-staff-right-tile .mira-right-title{font-weight:700;color:#111827;display:block;}
.mira-staff-right-tile .mira-right-desc,
.mira-personnel-right-tile .mira-right-desc,
.mira-manager-staff-right-tile .mira-right-desc{font-size:12px;color:#4b5563;line-height:1.35;}


/* v10.6 Portaal header titel wit + home/dashboard knop */
.mira-public .mira-portal-head{
  background: linear-gradient(135deg,#111827,#1f2937);
  color:#fff;
  border-radius:16px;
  padding:12px 14px;
  box-shadow:0 8px 22px rgba(15,23,42,.16);
}
.mira-public .mira-portal-head h1,
.mira-public .mira-portal-title-wrap h1{
  color:#fff !important;
  margin:0;
  font-weight:800;
  line-height:1.15;
}
.mira-portal-title-wrap{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.mira-portal-home{
  width:38px;
  height:38px;
  min-width:38px;
  border-radius:12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.14);
  color:#fff !important;
  text-decoration:none !important;
  font-size:22px;
  font-weight:900;
  line-height:1;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);
  transition:.15s ease;
}
.mira-portal-home:hover,
.mira-portal-home:focus{
  background:#2563eb;
  color:#fff !important;
  transform:translateY(-1px);
  outline:none;
}
.mira-public .mira-portal-actions a,
.mira-public .mira-portal-actions label{
  color:#fff;
}
.mira-public .mira-portal-actions .mira-language-box{
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.22);
  color:#fff;
}
@media(max-width:640px){
  .mira-public .mira-portal-head{padding:10px; border-radius:14px;}
  .mira-portal-title-wrap h1{font-size:18px !important;}
  .mira-portal-home{width:34px;height:34px;min-width:34px;font-size:19px;border-radius:10px;}
}
