body {
    margin: 0px;
    padding: 0px;
    font-family: "roboto", sans-serif;
    background-color: #efefef;
}

html {
    width: 100%;
}


/* login */

.login-container {
    width: auto;
    margin-top: 40px;

}

div#open_total {
    color: #c9c9c9;
    font-size: 14px;
}

.login-wrapper {
    margin: 0 auto;
    width: 300px;
    padding: 30px;
    border-radius: 10px;
    background-color: #fff;
    box-shadow: 0 0.25rem 1.75rem rgba(30, 34, 40, .07) !important;
}

.ws-items-container {
    max-width: 1800px !important;
    width: 100% !important;
    margin-left: auto;
    margin-right: auto;
}

label.labeloverzicht {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

label.labeloverzicht span {
    font-size: 12px;
    font-weight: 700;
    color: #4b4b4b;
}

.stock-report-periods {
    display: grid;
    grid-template-columns: repeat(4, minmax(160px, 1fr));
    gap: 10px;
    margin-bottom: 12px;
    align-items: end;
    width: 100%;
    clear: both;
}

.dashboard-filters {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(160px, 1fr));
    gap: 10px;
    align-items: end;
    float: none !important;
    clear: both;
    width: 100%;
    margin-bottom: 14px;
}

.dashboard-report-result {
    clear: both;
    width: 100%;
}

.clientresult-dropdown {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 50;
    background: #fff;
    border: 1px solid #d7d7d7;
    border-radius: 8px;
    margin-top: 4px;
    max-height: 220px;
    overflow-y: auto;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
}

.clientresult-dropdown:empty {
    display: none;
}

.clientresult-dropdown a {
    display: block;
    padding: 8px 10px;
    color: #111;
    text-decoration: none;
    font-size: 13px;
    border-bottom: 1px solid #f0f0f0;
}

.clientresult-dropdown a:last-child {
    border-bottom: none;
}

.clientresult-dropdown a:hover {
    background: #f4f4f4;
}

.stock-report-periods .form-control,
.dashboard-filters .form-control,
.fields label.labeloverzicht .form-control {
    width: 100%;
    min-height: 42px;
    border: 1px solid #d7d7d7;
    border-radius: 10px;
    background: #fff;
    padding: 0 12px;
    box-sizing: border-box;
    font-size: 14px;
    color: #111;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.03);
    transition: border-color 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
    appearance: none;
    -webkit-appearance: none;
}

.stock-report-periods .form-control:focus,
.dashboard-filters .form-control:focus,
.fields label.labeloverzicht .form-control:focus {
    outline: none;
    border-color: #10539e;
    box-shadow: 0 0 0 3px rgba(16, 83, 158, 0.14);
    background-color: #fff;
}

.stock-report-periods input[type="date"],
.stock-report-periods input[type="week"],
.stock-report-periods input[type="month"],
.dashboard-filters input[type="date"] {
    padding-right: 12px;
}

.stock-report-periods input::-webkit-calendar-picker-indicator,
.dashboard-filters input[type="date"]::-webkit-calendar-picker-indicator {
    cursor: pointer;
    opacity: 0.75;
}

.sales-dashboard {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-bottom: 20px;
}

.sales-dashboard-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    flex-wrap: wrap;
}

.sales-dashboard-header h3 {
    margin: 0 0 4px;
}

.sales-dashboard-header p {
    margin: 0;
    color: #555;
}

.sales-dashboard-badge {
    background: #eef6ea;
    color: #2b891a;
    border: 1px solid #cfe7c8;
    border-radius: 999px;
    padding: 8px 12px;
    font-size: 12px;
    font-weight: 700;
}

.sales-kpi-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 12px;
}

.sales-kpi-card {
    background: #f4f4f4;
    border-radius: 12px;
    padding: 14px;
}

.sales-kpi-card-accent {
    background: linear-gradient(135deg, #1f4f22, #2b891a);
    color: #fff;
}

.sales-kpi-card-accent .sales-kpi-label,
.sales-kpi-card-accent .sales-kpi-value {
    color: #fff;
}

.sales-kpi-label {
    font-size: 12px;
    color: #555;
    margin-bottom: 6px;
}

.sales-kpi-value {
    font-size: 24px;
    font-weight: 700;
    color: #111;
}

.sales-kpi-delta {
    margin-top: 6px;
    font-size: 12px;
    font-weight: 700;
}

.sales-kpi-delta.up {
    color: #2b891a;
}

.sales-kpi-delta.down {
    color: #c0392b;
}

.sales-kpi-delta.flat {
    color: #777;
}

.sales-kpi-card-accent .sales-kpi-delta {
    color: #fff;
    opacity: .9;
}

.dashboard-loading {
    opacity: .5;
    pointer-events: none;
    transition: opacity .15s ease;
}

.dashboard-loading-placeholder {
    padding: 40px;
    text-align: center;
    color: #777;
}

.week-nav {
    display: flex;
    gap: 4px;
    align-items: center;
}

.week-nav .form-control {
    flex: 1;
    min-width: 0;
}

.week-nav-button {
    border: 1px solid #e4e4e4;
    background: #fff;
    border-radius: 8px;
    width: 32px;
    height: 32px;
    flex: 0 0 32px;
    cursor: pointer;
    font-size: 16px;
    line-height: 1;
}

.week-nav-button:hover {
    background: #f4f4f4;
}

.sales-dashboard-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.sales-panel {
    background: #fff;
    border: 1px solid #e4e4e4;
    border-radius: 12px;
    padding: 14px;
    overflow: hidden;
}

.sales-panel-wide {
    grid-column: 1 / -1;
}

.sales-panel-header {
    margin-bottom: 10px;
}

.sales-panel-header-actions {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    flex-wrap: wrap;
}

.sales-panel-header h4 {
    margin: 0 0 4px;
}

.sales-panel-header p {
    margin: 0;
    color: #666;
    font-size: 12px;
}

.sales-toggle-button {
    border: 1px solid #d5d5d5;
    background: #f7f7f7;
    color: #111;
    border-radius: 999px;
    padding: 8px 12px;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    transition: background-color .15s ease, border-color .15s ease;
}

.sales-toggle-button:hover {
    background: #ececec;
    border-color: #c6c6c6;
}

/* Tabellen in het verkoopdashboard horizontaal laten scrollen i.p.v. afgekapt
   worden door .sales-panel's overflow: hidden — vooral nodig op mobiel, waar
   deze tabellen (10 kolommen bij "inkoop vs verkoop per plant") breder zijn
   dan het scherm. */
.sales-table-scroll {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    max-width: 100%;
}

.sales-table-scroll table {
    min-width: 560px;
}

.sales-panel table tbody tr:first-child,
#reportResult table tbody tr:first-child,
#table-stock tbody tr:first-child {
    background-color: #fff !important;
    color: #111 !important;
}

.sales-panel table thead tr,
#reportResult table thead tr,
#table-stock thead tr {
    background-color: #2c2c2c;
    color: #fff;
}

.sales-panel table thead th,
#reportResult table thead th,
#table-stock thead th,
#orderrules thead th,
#dist_table thead th,
#table-stickers thead th,
table thead th {
    background-color: #2c2c2c;
    color: #fff;
}

.sales-empty {
    color: #666;
    font-size: 13px;
    padding: 10px 0;
}

.sales-bar-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.sales-bar-row {
    display: grid;
    grid-template-columns: minmax(140px, 190px) minmax(180px, 1fr) minmax(220px, 280px);
    gap: 10px;
    align-items: center;
}

.sales-bar-meta {
    display: flex;
    flex-direction: column;
    gap: 2px;
    font-size: 12px;
}

.sales-bar-track {
    height: 14px;
    background: #ececec;
    border-radius: 999px;
    overflow: hidden;
}

.sales-bar-fill {
    height: 100%;
    background: linear-gradient(90deg, #10539e, #2b891a);
    border-radius: 999px;
}

.sales-bar-values {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    font-size: 12px;
    font-weight: 600;
}

@media (max-width: 900px) {
    .stock-report-periods,
    .dashboard-filters,
    .sales-dashboard-grid {
        grid-template-columns: 1fr;
    }

    .sales-bar-row {
        grid-template-columns: 1fr;
    }
}

table#table-stock {
    padding-top: 10px;
}

.form-group label {
    width: 100%;
    display: block;
}

.form-group input,
.merge-name-input {
    width: 97%;
    display: block;
    height: 30px;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    background-color: #fbfbfb;
    font-size: small;
    padding-left: 5px;
    margin-bottom: 10px;
}

input#client_number_client,
input#client_number,
input#client_vat_number,
input#client_email_invoice,
input#client_email_order,
input#client_name,
input#client_street,
input#client_house_number,
input#client_zip,
input#client_city,
input#client_country,
input#client_phone,
input#client_email,
input#client_vat,
input#client_accounting_code,
input#client_discount {
    display: block;
    width: 90%;
    height: 30px;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    background-color: #fbfbfb;
    font-size: small;
    padding-left: 5px;
}

input#client_number {
    display: block;
    height: 30px;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    background-color: #fbfbfb;
    font-size: small;
    padding-left: 5px;
    min-width: 200px;
}

input#startDate,
input#endDate {
    height: 30px;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    width: 120px;
    background-color: #fbfbfb;
    padding-left: 5px;
    font-family: "roboto", sans-serif;
    font-size: 16px;
}

input:disabled,
input[type="number"]:disabled {
    color: #000000;
}

input#extra_btw_hoog,
input#btw_hoog,
input#btw_laag,
input#extra_btw_laag,
input#client_commission,
input#final_commission,
input#client_export,
input#final_export {
    border: 0;
    height: 30px;
    width: 100px;
    float: right;
}

.calcfields {
    width: 100%;
    height: 20px !important;
    background: none !important;
    font-size: small;
    padding-left: 5px;
}

input#price_order_total {
    width: 100px;
}

.buttonhidden {

    display: none;
}

body>div.login-container>div>form>div:nth-child(3)>input {
    width: 100%;
    margin-bottom: 5px;
    padding: 0px;
    height: 45px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #10539e;
    font-size: larger;
}

/* common */

.clientfields {
    display: flex;
    row-gap: 10px;
    float: left;
    flex-wrap: wrap;
    align-items: center;
}

.table-form-left {
    float: left;
    width: 50%;
    padding: 5px;
}

.table-form-right {
    float: left;
    width: 50%;
    padding: 5px;
}

.table-form-row {
    width: 100%;
    float: left;
    /* overflow: auto; */
    display: flex;
    align-items: center;
}

/* div#result_calc {
     display: none; 
}  */

select#year,
select#week {
    height: 30px;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    width: 90%;
    background-color: #fbfbfb;
    font-size: small;
    padding-left: 5px;
}

div#payments-table-container {
    width: 90%;
}

div#amount {
    margin: 5px;
}

input#pay-amount {
    font-size: 20px;
    padding: 10px;
    border-radius: 5px;
    border: 0px;
}

div#payoptions {
    margin-top: 20px;
    display: grid;
    align-content: center;
    justify-content: center;
    align-items: start;
    justify-items: center;
    color: #fff;
}

.modalpay {
    display: block;
    width: 90%;
    background-color: #2c2c2c;
    border-radius: 4px;
    z-index: 9999;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    box-shadow: 0px 0px 300px 10000px rgba(0, 0, 0, 0.75);
}

.modalscanner {
    display: block;
    width: 90%;
    background-color: #2c2c2c;
    border-radius: 4px;
    z-index: 9999;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    box-shadow: 0px 0px 300px 10000px rgba(0, 0, 0, 0.75);
}

.autocompleteresult {
    position: absolute !important;
    margin-top: 10px !important;
    margin-left: 75px !important;
    z-index: 9999;
    color: #8d8d8d;
    font-style: italic;
}

.modalfust,
.modalsticker,
.modalregistration,
.modaldiscount {
    display: block;
    width: 90%;
    height: 90%;
    overflow-y: scroll;
    max-width: 500px;
    background-color: #2c2c2c;
    border-radius: 4px;
    z-index: 9999;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    box-shadow: 0px 0px 300px 10000px rgba(0, 0, 0, 0.75);
}

.modaloverview {
    display: block;
    overflow-y: scroll;
    width: 90%;
    height: 90%;
    max-width: 500px;
    background-color: #fff;
    border-radius: 4px;
    z-index: 9999;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    box-shadow: 0px 0px 300px 10000px rgba(0, 0, 0, 0.75);
}

input#scanfield,
input#scanfield:focus {
    background-color: #efefef;
    border: 0px;
    outline: none !important;
    box-shadow: none;
    height: 0px;
}

div#bottom {
    height: 1px;
}

/* .modalscannerstatus {
    display: block;
    text-align: center;
    width: 90%;
    height: 90%;
    background-color: #2c2c2c;
    border-radius: 4px;
    border: 0px solid;
    z-index: 9999;
    position: fixed;
    top: 50%;
    left: 50%;
    overflow: auto;
    overflow-y: scroll;
    transform: translate(-50%, -50%);
    box-shadow: 0px 0px 300px 10000px rgba(0, 0, 0, 0.75);
} */

.modalscannerstatus {
    display: block;
    text-align: center;
    width: 95%;
    height: 95%;
    background-color: #ffffff;
    border-radius: 10px;
    border: 0px solid;
    z-index: 9999;
    position: fixed;
    top: 50%;
    left: 50%;
    overflow: auto;
    overflow-y: scroll;
    transform: translate(-50%, -50%);
    box-shadow: 0px 0px 300px 10000px rgba(0, 0, 0, 0.75);
}

table.modaltable {
    padding: 10px;
}

.modalcheckprice {
    display: block;
    text-align: center;
    width: 90%;
    background-color: #2c2c2c;
    border-radius: 4px;
    z-index: 9999;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    box-shadow: 0px 0px 300px 10000px rgba(0, 0, 0, 0.75);
}

#scannerstatus {
    display: inline-flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    color: #111;
    margin: 10%;
    align-content: center;
}

.scannerstatusicongood {
    font-size: 100px;
    border: 10px solid white;
    background-color: #4CAF50;
    border-radius: 1000px;
    width: 200px;
    height: 155px;
    text-align: center;
    padding-top: 45px;
}

.scannerstatusiconcheck {
    font-size: 100px;
    border: 10px solid white;
    background-color: #0e4581;
    border-radius: 1000px;
    width: 200px;
    height: 155px;
    text-align: center;
    padding-top: 45px;
}

.scannerstatusiconbad {
    font-size: 100px;
    border: 10px solid white;
    background-color: #d70e3a;
    border-radius: 1000px;
    width: 200px;
    height: 155px;
    text-align: center;
    padding-top: 45px;
}

.header {
    height: 60px;
    width: 100%;
    background-color: #2c2c2c;
    overflow: auto;
    overflow-y: hidden;
}

.headersettings {
    height: 60px;
    width: 100%;
    background-color: #4d4d4d;
    overflow: auto;
    overflow-y: hidden;
    border-top: 1px solid #656565;
}

.menuwrapper,
.menuwrappersettings {
    margin: 0 auto;
    /* max-width: 1200px; */
}

/* .menu,
.menusettings {
    float: left;
    text-align: left;
    padding: 15px;
    padding-left: 20px;
    display: inline-flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: nowrap;
    flex-direction: row;
    margin-top: 5px;
} */

.menu,
.menusettings {
    float: left;
    text-align: left;
    display: inline-flex;
    justify-content: flex-start;
    flex-wrap: nowrap;
    flex-direction: row;
}

.emailexplain {
    width: 100%;
    float: left;
}

/* .menuitem {
    margin-right: 30px;
    white-space: nowrap;
} */

.menuitem {
    position: relative;
    display: block;
    padding: 20px 14px;
    text-align: center;
    background-color: #2c2c2c;
    margin-bottom: 5px;
    cursor: pointer;
    text-decoration: none;
    color: #fff;
    white-space: nowrap;
}

.menuitem-badge {
    position: absolute;
    top: 10px;
    right: 8px;
    width: 10px;
    height: 10px;
    background: #ca2425;
    border-radius: 50%;
    box-shadow: 0 0 0 2px #2c2c2c;
    display: none;
}

.menu-bell {
    position: fixed;
    top: 0;
    right: 0;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 55px;
    background-color: #2c2c2c;
    cursor: pointer;
    color: #fff;
    font-size: 18px;
    z-index: 10001;
}

.menu-bell .menuitem-badge {
    top: 12px;
    right: 12px;
}

.notif-dropdown {
    position: absolute;
    top: 100%;
    right: 0;
    margin-top: 8px;
    width: 320px;
    max-width: 90vw;
    max-height: 420px;
    overflow-y: auto;
    background: #fff;
    color: #333;
    border-radius: 6px;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3);
    z-index: 10000;
    text-align: left;
    font-size: 13px;
}

.notif-dropdown[hidden] {
    display: none;
}

.notif-section {
    padding: 10px 14px;
    border-bottom: 1px solid #eee;
}

.notif-section:last-child {
    border-bottom: none;
}

.notif-section h4 {
    margin: 0 0 8px;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: #888;
}

.notif-list-empty {
    color: #999;
    padding: 4px 0;
}

.notif-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    padding: 6px 0;
    cursor: pointer;
    border-bottom: 1px solid #f2f2f2;
}

.notif-row:last-child {
    border-bottom: none;
}

.notif-row:hover {
    background: #f7f7f7;
}

.notif-row-due {
    color: #ca2425;
    font-weight: 700;
}

.badge-reservation {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 8px;
    background: #fff3cd;
    color: #8a6100;
    border: 1px solid #ffe08a;
    border-radius: 12px;
    font-size: 11px;
    font-weight: 700;
    white-space: nowrap;
}

body>div.headersettings>div>div>a>div {
    background-color: #4d4d4d;
}

.menuitem:hover {
    background-color: #515151;
    /* Kleurverandering bij hover */
}

/* Styles for Back to Top Button */
#toTopBtn {
    position: fixed;
    bottom: 80px;
    right: 20px;
    display: none;
    background-color: #2c2c2ca3;
    color: white;
    border: none;
    padding: 20px 15px;
    border-radius: 15px;
    cursor: pointer;
    font-size: 16px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
}

#toTopBtn:hover {
    background-color: #4d4d4d;
}

.menu a,
.menusettings a {
    color: #fff;
    text-decoration: none;
}

.actionbuttons {
    overflow: auto;
    float: left;
    width: 100%;
    padding-bottom: 20px;
}


.uppercase {
    text-transform: uppercase;
}


.header-left {
    float: left;
    width: 40%;
}

.header-whole {
    float: left;
    width: 100%;
}

/* startscreen buttons */

.container {
    overflow: auto;
    max-width: 1200px;
    margin: 0 auto;
    padding: 5px;
    padding-top: 10px;
    padding-bottom: 160px;
}

.welcomemessage {
    margin-left: 20px;
}

.close-button-icon {
    font-size: 22px;
}

.close-button-icon-fust {
    font-size: 22px;
}

.close-button-icon-overview {
    font-size: 22px;
}

.close-button-icon-discount {
    font-size: 22px;
}

.close-button {
    float: right;
}

.payscreen {
    width: 100%;
    display: inline-flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: center;
    margin-bottom: 20px;
}

.scannerscreen {
    width: 100%;
    display: inline-flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

.fustscreen,
.registrationscreen,
.overviewscreen {
    width: 100%;
    display: inline-flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

.stickerscreen {
    width: 100%;
    display: inline-flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

.discountscreen {
    width: 100%;
    display: inline-flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
}

canvas.drawingBuffer {
    display: none;
}

.startscreen {
    width: 100%;
    display: inline-flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-content: center;
    align-items: center;
}

.startscreen-button-icon {
    font-size: 55px;
}

.startscreen-button {
    padding: 20px;
    margin: 15px;
    color: #000;
    text-align: center;
    font-size: medium;
    border-radius: 12px;
    background-color: #fff;
    box-shadow: 0 0.25rem 1.75rem rgba(30, 34, 40, .07) !important;
}

.payscreenheader {
    color: #fff;
    padding: 10px;
    width: 90%;
    margin: 10px;
}

.modalscannerheader {
    color: #fff;
    padding: 10px;
    width: 100%;
    margin: 10px;
}

.modalfustheader,
.modalregistrationheader,
.modalstickerheader,
.modaloverviewheader {
    color: #000;
    padding: 10px;
    width: 100%;
    margin: 10px;
}

.modaloverviewheaderinvoice {
    color: #070707;
    padding: 10px;
    width: 100%;
    margin: 10px;
}

.modaldiscountheader {
    color: #fff;
    padding: 10px;
    width: 90%;
    margin: 10px;
}

.pay-bank,
.pay-cash,
.pay-pin,
.pay-credit,
.pay-cheque,
.pay-delete,
.add-fust,
.add-registration,
.add-discount,
.close-overview,
.close-overviewinvoice {
    padding: 20px;
    max-width: 400px;
    width: 70%;
    margin: 15px;
    color: #000;
    text-align: center;
    font-size: large;
    border-radius: 4px;
    background-color: #fff;
    box-shadow: 0 0.25rem 1.75rem rgba(30, 34, 40, .07) !important;
}

.fustquantity {
    font-size: 30px;
    width: 50px;
    text-align: center;
    background: none;
    color: #fff;
    border: none;
}

.karinquantity,
.plaatinquantity,
.stanginquantity,
.fustinquantity {
    font-size: 30px;
    width: 50px;
    text-align: center;
    background: none;
    color: #fff;
    border: none;
}

.karuitquantity,
.plaatuitquantity,
.stanguitquantity,
.fustuitquantity {
    font-size: 30px;
    width: 50px;
    text-align: center;
    background: none;
    color: #fff;
    border: none;
}

.discountquantitypla,
.discountquantitydih {
    font-size: 30px;
    width: 50px;
    text-align: center;
    background: none;
    color: #fff;
    border: none;
}

#discountheader>h2 {
    color: #fff;
}

body>div.container>div>a {
    min-width: 25%;
    text-decoration: none;
}

.startscreen-button a {
    color: #000;
}

/* Fields client page */

#category-list>tr:nth-child(1),
#fust-list>tr:nth-child(1) {
    background-color: #f9f9f9;
    color: #000000;
}

.no-border {
    background-color: transparent !important;
    border: 0px !important;
    width: 100%;
}

.fields {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: center;
    float: left;
    width: 100%;
    justify-content: flex-start;
}

.border-bottom {
    border-top: 1px solid #c9c9c9;
    margin-top: 20px;
    padding-top: 20px;
}

.fieldsemailsettings {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: flex-start;
    align-items: baseline;
    float: left;
    width: 100%;
}

.userfields {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-content: center;
    justify-content: center;
    align-items: flex-end;
}

.actionbuttonsright {
    float: right;
    margin: 10px;
}

label {
    width: 25%;
    display: table-caption;
}

label.long,
label.long_lieferschein {
    width: 100%;
}

label.labeldisabled {
    display: none;
}

span {
    display: block;
    float: left;
}

.userfields input {
    height: 30px;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    float: right;
    width: 50%;
    background-color: #fbfbfb;
    font-size: small;
    padding-left: 5px;
}

.userfields span {
    float: left;
    width: 40%;
    text-align: right;
    padding-right: 10px;
}

.fields input {
    height: 30px;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    width: 90%;
    background-color: #fbfbfb;
    font-size: small;
    padding-left: 5px;
}

input#signatureName {

    padding: 10px;
    border-radius: 4px;
    border: 0px;
}

.table-form {
    overflow: auto;
    width: 100%;
    float: left;
}

.table-form-rows-left {
    overflow: auto;
    float: left;
    width: 50%;
}

.table-form-rows-right {
    overflow: auto;
    float: left;
    width: 50%;
}

input.productform.form-control {
    height: 30px;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    width: 90%;
    background-color: #fbfbfb;
    font-size: small;
    padding-left: 5px;
}

select {
    height: 30px;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    width: 90%;
    background-color: #fbfbfb;
    font-size: small;
    padding-left: 5px;
}

.fieldsemailsettings input {
    height: 35px;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    width: 90%;
    background-color: #fbfbfb;
    font-size: small;
    padding-left: 5px;
}

.fieldsemailsettings textarea {
    min-height: 120px;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    width: 90%;
    background-color: #fbfbfb;
    font-size: small;
    padding-left: 5px;
}

.fieldsemailsettings span {


    width: 15%;

}

textarea#email_field,
textarea#email_field_lieferschein,
textarea#email_field_en,
textarea#email_field_lieferschein_en,
textarea#email_field_nl,
textarea#email_field_lieferschein_nl {
    height: 300px;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    width: 90%;
    background-color: #fbfbfb;
    font-size: small;
    padding-left: 5px;
}

.fields select#product_type {
    height: 30px;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    width: 94%;
    background-color: #fbfbfb;
    font-size: small;
    padding-left: 5px;
}

select#order_status {
    height: 30px;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    background-color: #fbfbfb;
    font-size: small;
    padding-left: 5px;
}


.orderfields input {
    height: 30px;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    background-color: #fbfbfb;
    font-size: small;
    padding-left: 5px;
}

.orderfields {

    float: right;

}


#mergeCandidates {
    max-width: 1200px;
    padding: 10px;
    background-color: #f9f9f9;
    width: 90%;
    border-radius: 4px;
    position: absolute;
    z-index: 9999;
    top: 20px;
    left: 50%;
    transform: translate(-50%, 0%);
    box-shadow: 0px 0px 300px 10000px rgba(0, 0, 0, 0.75);
}

.merge-groups {
    margin-top: 20px;
}

.merge-group {
    padding: 10px;
    margin-bottom: 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    background-color: #f9f9f9;
}

.merge-group h5 {
    margin: 0 0 10px;
    font-size: 1.2em;
}

.merge-group p {
    margin: 0;
    font-size: 0.9em;
}

.form-control-small,
.form-control-medium,
.form-control-big {
    width: 100%;
    height: 30px;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    background-color: #fbfbfb;
    font-size: small;
    padding-left: 5px;
    padding-right: 0px;
}

.form-control-small-nocheck,
.form-control-medium-nocheck {
    width: 100%;
    height: 30px;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    background-color: #fbfbfb;
    font-size: small;
    padding-left: 5px;
    padding-right: 0px;
}

tr.main-category-group {
    background-color: #e9e9e9 !important;
    color: #000000 !important;
}

tr.sub-category {
    background-color: #fff !important;
    color: #000000 !important;
}

thead {
    background-color: #2c2c2c;
    color: #fff;
}

.orderprocess-table thead {
    background-color: #f4f4f4;
    color: #000;
}

th.th-small {
    width: 10%;
}

th.th-very-small {
    width: 1%;
}

th.verticaltext {
    writing-mode: vertical-rl;
    /* transform: rotate(90deg); */
    padding: 5px;
    /* optioneel iets meer ruimte */
    text-align: center;
    /* midden in de cel */
}

/* Verwijder standaard opsommingspunten */
.sub-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

/* Zorg ervoor dat subcategorieën netjes uitlijnen */
.sub-category {
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: space-between;
    margin-top: 5px;
}

/* Zorg dat het sleep-icoon goed zichtbaar is */
.handle {
    cursor: grab;
    color: #6c757d;
    /* Grijze kleur */
}


th.th-small-select {
    /* width: 300%; */
    min-width: 60px;
}

th.th-medium {
    width: 15%;
    min-width: 80px;
}

th.th-big {
    width: 45%;
    min-width: 100px;
}

#searchfield {
    height: 30px;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    width: 200px;
    background-color: #fbfbfb;
    font-size: small;
    padding-left: 5px;
}

.dbbuttons {
    margin-top: 10px;
}

.invoice-summary {
    display: inline-flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
}

.summary-item {
    display: inline-grid;
    justify-content: center;
    align-items: center;
    justify-items: center;
    align-content: center;
    font-size: medium;
    border-radius: 12px;
    background-color: #fff;
    box-shadow: 0 0.25rem 1.75rem rgba(30, 34, 40, .07) !important;
    margin: 10px;
    padding: 0px 10px;
}

.summary-item h4 {
    margin: 10px;
}

.summary-item p {
    margin: 10px;
    font-weight: 700;
    font-size: 22px;

}

.clientoption {
    background-color: #2c2c2c;
    color: #fff;
    margin-bottom: 5px;
    margin-right: 5px;
    padding: 10px;
    text-decoration: none;
    border-radius: 4px;
}

.clientoptionname {
    font-size: 11px;
    font-style: italic;
}


div#clientresult>a {
    text-decoration: none;
}


div#clientresult {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: flex-start;
    width: 200%;
}



.itemoption {
    background-color: #2c2c2c;
    color: #fff;
    margin-bottom: 5px;
    margin-right: 5px;
    padding: 10px;
    filter: drop-shadow(5px 7px 10px #2b2b2b);
    border-radius: 4px;
}

.itemoption-supplier {
    font-size: 11px;
    font-style: italic;
    color: #bbb;
}

.itemresult {
    position: absolute;
    margin-top: 40px;
    display: flex;
    flex-wrap: wrap;
    z-index: 9999;
    flex-direction: row;
}

input[type="checkbox"] {
    /* margin-top: 20px; */
    width: 20px;
    height: 20px;
}

/* table.table.table-striped {
    margin-top: 20px;
} */

/* buttons */

#resultoverviewinvoice>table>tbody>tr:nth-child(1) {
    background-color: #f5f5f5;
    color: #000000;
}

button#confirmMerge {
    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#2c891b, #236b15);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;

}

button#exitMerge {
    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#2c891b, #236b15);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;

}

div#fust {
    width: 50%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin: 0px 0px 30px 0px;
    align-items: center;
}

div#karin,
div#plaatin,
div#stangin,
div#fustin {
    width: 50%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin: 0px 0px 5px 0px;
    align-items: center;
}

div#karuit,
div#plaatuit,
div#stanguit,
div#fustuit {
    width: 50%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin: 0px 0px 5px 0px;
    align-items: center;
}

.header-karrenmodal-left,
.header-karrenmodal-right {
    width: 50%;
    display: grid;
    justify-content: center;
    color: #fff;
}

.inputfields {
    width: 100%;
    display: inline-flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

div#inputfields {
    width: 100%;
    display: inline-flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

.header-karrenmodal {
    width: 100%;
    color: #fff;
    margin-bottom: 0px;
    text-align: center;
}

.header-pricemodal {
    width: 100%;
    color: #2c2c2c;
    margin-bottom: 0px;
    text-align: center;
}

div#discount {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin: 30px;
    align-items: center;
    border: 2px solid #7e7e7e;
    border-radius: 5px;
}

div#modalfustcenter,
div#modalregistrationcenter {
    color: #fff;
    font-size: 35px;
}

.upload-label {
    white-space: nowrap;
}

.upload-row {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.upload-btn,
.download-btn,
.save-btn,
.upload-button {
    display: inline-block;
    background-color: #2b891a;
    color: white;
    border: none;
    padding: 6px 12px;
    border-radius: 4px;
    text-decoration: none;
    cursor: pointer;
}

.upload-btn:hover,
.download-btn:hover {
    background-color: #2b891a;
}

button#fustadd,
button#karadd,
button#plaatadd,

button#stangadd {
    height: 70px;
    width: 70px;
    color: #fff;
    border-radius: 254px;
    border: none;
    background-color: #2b891a;
    font-size: small;
}

button#discountadd {
    height: 70px;
    width: 70px;
    color: #fff;
    border-radius: 254px;
    border: none;
    background-color: #2b891a;
    font-size: small;
}

button#fustmin {
    height: 70px;
    width: 70px;
    color: #fff;
    border-radius: 254px;
    border: none;
    background-color: #ca2525;
    font-size: small;
}

button#fustinmin,
button#karinmin,
button#plaatinmin,
button#stanginmin {
    height: 40px;
    width: 40px;
    color: #fff;
    border-radius: 254px;
    border: none;
    background-color: #ca2525;
    font-size: small;
}

button#fustinadd,
button#karinadd,
button#plaatinadd,
button#stanginadd {
    height: 40px;
    width: 40px;
    color: #fff;
    border-radius: 254px;
    border: none;
    background-color: #2b891a;
    font-size: small;
}

button#fustuitmin,
button#karuitmin,
button#plaatuitmin,
button#stanguitmin {
    height: 40px;
    width: 40px;
    color: #fff;
    border-radius: 254px;
    border: none;
    background-color: #ca2525;
    font-size: small;
}

button#fustuitadd,
button#karuitadd,
button#plaatuitadd,
button#stanguitadd {
    height: 40px;
    width: 40px;
    color: #fff;
    border-radius: 254px;
    border: none;
    background-color: #2b891a;
    font-size: small;
}


.showmore {
    display: block;
    margin: 0 auto;
    width: 200px;
    text-align: center;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #2b891a;
    padding-top: 10px;
    padding-bottom: 10px;
    margin-top: 20px;
}

div#print-sticker {
    display: block;
    margin: 0 auto;
    width: 200px;
    text-align: center;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #2b891a;
    padding-top: 10px;
    padding-bottom: 10px;
    margin-bottom: 20px;
    margin-top: 20px;
}

div#stickerheader {
    color: #fff;
}

.btn-block {
    display: inline-block;
    margin-bottom: 5px;
    padding-right: 10px;
    padding-left: 10px;
    padding-top: 8px;
    padding-bottom: 8px;
    margin-top: 5px;
    height: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #2b891a;
    font-size: inherit;
}

button#save_distribution {
    margin-bottom: 5px;
    padding-right: 10px;
    padding-left: 10px;
    margin-top: 5px;
    height: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #2b891a;
    font-size: inherit;
}

.btn-block-orange {
    margin-bottom: 5px;
    padding-right: 10px;
    padding-left: 10px;
    margin-top: 5px;
    height: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #ca8a24;
    font-size: inherit;
}

.btn-block-danger {
    margin-bottom: 5px;
    padding-right: 10px;
    padding-left: 10px;
    margin-top: 5px;
    height: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #b91c1c;
    font-size: inherit;
}

.sticker {
    margin-bottom: 5px;
    padding-right: 10px;
    padding-left: 10px;
    margin-top: 5px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #2b891a;
    font-size: inherit;
}

.search {
    margin-left: 5px;
    margin-bottom: 5px;
    padding: 0px;
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #10539e;
    font-size: larger;
}

.searchend {
    margin-left: 5px;
    margin-bottom: 5px;
    padding: 0px;
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #ca2525;
    font-size: larger;
}

.modalhidden {
    display: none !important;
}

.orderprocess-modal-wrap {
    position: fixed;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.4);
    z-index: 9999;
}

.orderprocess-modal {
    background: #fff;
    border-radius: 8px;
    min-width: 320px;
    max-width: 420px;
    width: 90%;
    padding: 16px;
}

.orderprocess-modal-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-weight: 600;
    margin-bottom: 12px;
}

.orderprocess-modal-body label {
    display: block;
    margin-bottom: 6px;
}

.orderprocess-modal-actions {
    margin-top: 12px;
    display: flex;
    justify-content: flex-end;
    gap: 8px;
}

.orderprocess-reset-btn {
    height: 35px;
    padding: 0 12px;
    border-radius: 4px;
    border: none;
    font-size: small;
}

.orderprocess-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.orderprocess-option {
    height: 32px;
    padding: 0 10px;
    color: #fff;
    border-radius: 4px;
    border: none;
    font-size: 12px;
}

.orderprocess-option.is-active {
    outline: 2px solid rgba(0, 0, 0, 0.2);
}

.stepthrough-modal {
    max-width: 480px;
}

.stepthrough-counter {
    font-weight: 400;
    color: #777777;
    font-size: 13px;
    margin-left: 6px;
}

.stepthrough-table {
    width: 100%;
    border-collapse: collapse;
}

.stepthrough-table th,
.stepthrough-table td {
    text-align: left;
    padding: 6px 8px;
    border-bottom: 1px solid #eee;
}

.stepthrough-table th {
    width: 35%;
    color: #555;
    font-weight: 600;
}

.stepthrough-nav-btn {
    height: 35px;
    padding: 0 14px;
    border-radius: 4px;
    border: none;
    font-size: small;
    color: #fff;
    cursor: pointer;
}

.stepthrough-nav-btn:disabled {
    opacity: 0.5;
    cursor: default;
}

.stepthrough-nav-btn-prev,
.stepthrough-nav-btn-next {
    background-color: #2c891b;
}

.stepthrough-nav-btn-stop {
    background-color: #ca2525;
}

.stepthrough-nav-btn-skip {
    background-color: #1f7fbf;
}

.order-row-btn {
    height: 35px;
    width: 35px;
    border-radius: 4px;
    border: none;
    font-size: small;
    color: #fff;
}

.order-note-has {
    background-color: #2b891a !important;
}

svg {
    height: 80px;
}

.stock_inactive {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 100%;
    border: none;
    background-color: #777777;
    font-size: small;
}


.stock_active {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 100%;
    border: none;
    background-color: #2b891a;
    font-size: small;
}

.button_active_0 {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #2b891a;
    font-size: small;
}

.button_active_1 {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #777777;
    font-size: small;
}

.button_active_2 {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #777777;
    font-size: small;
}

.button_active_3 {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #ca8a24;
    font-size: small;
}

.save,
.update,
.updatew,
.edit,
.modal,
.change,
.client-phones-btn,
.send-carts-balance {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #2b891a;
    font-size: small;
}

.login-as-client-btn {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #10539e;
    font-size: small;
}

.btn-export {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #10539e;
    font-size: small;
}

.btn-export-snelstart {
    height: 60px;
    width: 90px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #10539e;
    font-size: small;
}


.exportModal {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.5);
}

.exportModal.show {
    display: flex;
    justify-content: center;
    align-items: center;
}

.modal-content {
    background-color: #fff;
    border-radius: 10px;
    width: 400px;
    max-height: 80%;
    display: flex;
    flex-direction: column;
    padding: 30px;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
}


.modal-content-pricecheck {
    background-color: #fff;
    border-radius: 10px;
    flex-direction: column;
    padding: 20px;
}

/* De checkprijs-modal (#modalcheckprice, class modalscannerstatus zodra getoond) krijgt
   een eigen scrollgebied zodat de "Sluiten"-knop altijd onderin zichtbaar blijft, i.p.v.
   mee te scrollen met de (soms lange) lijst gescande producten + grafieken. */
#modalcheckprice.modalscannerstatus {
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

#modalcheckprice .modal-content-pricecheck {
    display: flex;
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
}

#modalcheckprice .price-check-scroll-body {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
}

#modalcheckprice #closeModalBtn {
    flex-shrink: 0;
    margin-top: 16px;
}

.modal-footer {
    margin-top: auto;
    display: flex;
    justify-content: space-between;
    gap: 10px;
}

.modal-btn {
    color: white;
    border: none;
    padding: 10px 20px;
    border-radius: 8px;
    cursor: pointer;
    font-size: 14px;
}

/* Export buttons */
.export-btn-excel {
    flex: 1;
    background: #2b891a;
    color: white;
    border: none;
    padding: 10px;
    border-radius: 5px;
    cursor: pointer;
}

.export-btn-pdf {
    flex: 1;
    background: #10539e;
    color: white;
    border: none;
    padding: 10px;
    border-radius: 5px;
    cursor: pointer;
}

/* Sluiten button */
.modal-btn.close {
    background-color: #e74c3c;
}

.modal-btn.sendmail {
    background-color: #10539e;
}

.modal-btn.sendmail.is-sent,
.modal-btn.sendmail:disabled {
    background-color: #9ca3af;
    cursor: not-allowed;
    opacity: 0.9;
}

.export-items {
    overflow-y: auto;
    flex: 1;
    padding-right: 5px;
}

.export-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 5px 0;
}

.select-all-container {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 15px;
    font-weight: bold;
    white-space: nowrap;
}

.select-all-container label {
    margin: 0;
}



.export-checkbox {
    margin-left: 10px;
}

.export-title {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 10px;
    text-align: center;
}

.stock-sticker {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #ca8a24;
    font-size: small;
}

.push {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #17a2b8;
    font-size: small;
}

.push:disabled,
.push.is-loading {
    opacity: 0.6;
    cursor: wait;
}

.barcodeTable {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 20px;
}

.barcodeTable tr {
    background: white !important;
}

.barcodeTable td {
    padding: 8px 10px;
    border-bottom: 1px solid #ccc;
}

.barcodeTable td:last-child {
    border-left: none;
}

.barcodeTable tr:hover {
    background: #f2f2f2;
}

.barcodeTable .header-row td {
    font-weight: bold;
    background: #000000ff;
    text-align: left;
    border-bottom: 2px solid #ccc;
}


.updateProduct {
    height: 35px;

    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #2b891a;
    font-size: small;
}

.opslaan {
    height: 35px;

    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #2b891a;
    font-size: small;
}

.email0 {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #10539e;
    font-size: small;
}

.productbarcode {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #10539e;
    font-size: small;
}

.paid {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #1199a7;
    font-size: small;
}

button.paid.cash.modal.btn.btn-success.btn-xs {
    background-color: #1199a7;
}

button.paid.pin.modal.btn.btn-success.btn-xs {
    background-color: #1199a7;
}

button.halfpaid.modal.btn.btn-success.btn-xs {
    background-color: #2b891a;
}

button.halfpayment.modal.btn.btn-success.btn-xs {
    background-color: #1199a7;
}

input#aantalstickers {
    width: 40%;
    height: 30px;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    background-color: #fbfbfb;
    font-size: small;
    padding-left: 5px;
    padding-right: 0px;
    float: right;
}

th.th-buttons {
    width: 20%;
}

th.th-medium-stickers {
    width: 10%;
}

.popup {
    z-index: 9999;
    position: fixed;
    margin-top: -43px;
    margin-left: -108px;
    height: 52px;
    background-color: #2c2c2c;
    width: 150px;
    border-radius: 4px;
}

text.asterix {
    color: red;
    font-size: 30px;
    line-height: 1px;
}

text.betaaldatum {
    font-size: 10px;
}

.delete,
.dist-delete,
.deletepricewarning,
.deletebarcoderow,
.paymentdelete,
.pladelete,
.deletediscount,
.deletecartsrow,
.delete-price-class {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #ca2525;
    font-size: small;
}

.orderprocess0 {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #777777;
    font-size: small;
}

.orderprocess1 {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #ca8a24;
    font-size: small;
}

.orderprocess2 {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #2c891b;
    font-size: small;
}

.orderprocess-btn {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    font-size: small;
}

.orderitem-message {
    margin-top: 6px;
    font-size: 12px;
    color: #666;
    line-height: 1.3;
}

.pdf0 {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #10539e;
    font-size: small;
}

.pdf1 {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #777777;
    font-size: small;
}

.email1 {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #777777;
    font-size: small;
}

.input-group-hidden {
    display: none;
}

button#add,
button#add_dist_row,
button#add_dist_row_bottom,
button#sync_names_bottom,
button#sync_names,
button#generate,
button#generateall,
button#merge,
button#replace,
button#btn-add,
button#btn-replace,
button#savechange,
button#buttonoverview,
button#buttonpricecheck,
button#buttontoggleinkoop,
button#import,
button#names,
button#cap_fix,
button#check,
button#barcode,
button#fill_prices,
button#calc_cart_load,
button#buttonimportstock,
button#buttonshortlist {
    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#2c891b, #236b15);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;

}

button#stockbypasstoggle {
    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#2c891b, #236b15);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;
}

button#buttonmergeorder {
    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#7c3aed, #5b21b6);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;
}

button#buttonmergeorder:hover {
    background-image: linear-gradient(#6d28d9, #4c1d95);
}

button#buttonsplitorder {
    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#ea580c, #c2410c);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;
}

button#buttonsplitorder:hover {
    background-image: linear-gradient(#c2410c, #9a3412);
}

button#buttonordercratestickers {
    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#0891b2, #0e7490);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;
}

button#buttonordercratestickers:hover {
    background-image: linear-gradient(#0e7490, #155e75);
}

button#webshopallocate {
    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#2c891b, #236b15);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;
}

button#send_reserve_push,
button#export_distribution,
button#export_distribution_bottom {
    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#1f7fbf, #155a88);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;
}

.changeNameButton {
    padding: 5px;
    background-color: #2c891b;
    color: #fff;
    border-radius: 4px;
    text-align: center;
    margin-top: 2px;
    width: 98%;
    cursor: pointer;
}

.changeNameButtonHidden {
    display: none;
}


button#transfer {
    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#ca8a24, #a66b1d);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;
    float: right;
}

button#prepare,
button#writeoff_remaining,
button#transfer_remaining {
    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#ca8a24, #a66b1d);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;
    float: right;
}



button#deleteall {
    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#ca2425, #a61d1e);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;
    /* float: left; */
}

button#partialtransfer {
    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#ca8a24, #a66b1d);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;
    float: right;
}

button#makeinvoice {
    float: right;
    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#0f539e, #0e4581);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;

}

button#stepthroughinvoice {
    float: right;
    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#5a3d9e, #452f7d);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;

}

button#changelieferdate {
    float: right;
    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#ca8a24, #a66b1d);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;

}

button#open-trip {

    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#2c891b, #236b15);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;

}

button#close-trip {
    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#ca2425, #b51e1f);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;

}

button#openscanner {

    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#2c891b, #236b15);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;

}

button#buttonorderlist,
button.buttonpakbonvariant {
    float: right;
    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#0f0f0f, #4b4b4b);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;
    font-size: 11px;
}

button#buttoncalcfust {
    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#2c891b, #236b15);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;

    float: right;
}

button#buttoncalccarts {
    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#2c891b, #236b15);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;

    float: right;
}

button#buttoncalcdiscount {
    width: 70px;
    height: 70px;
    border: 0px;
    background-image: linear-gradient(#2c891b, #236b15);
    color: #fff;
    border-radius: 15px;
    margin: 10px;
    text-align: center;

    float: right;
}

button.signaturebuttondelete {
    width: 80px;
    float: left;
    height: 40px;
    background-color: #ca2425;
    bordeR: 0px;
    color: #ffffff;
    margin: 10px;
    border-radius: 4px;
}

button.signaturebuttonsave {
    width: 80px;
    float: right;
    height: 40px;
    background-color: #2c891b;
    border: 0px;
    color: #ffffff;
    margin: 10px;
    border-radius: 4px;
}

canvas#signaturePad {
    background-color: #cdcdcd;
}

.signature {
    display: grid;
}

canvas#signaturePadInvoice {
    background-color: #cdcdcd;
    max-width: 100%;
}

.signature-invoice-modal .orderprocess-modal-body p {
    margin-top: 0;
    font-size: 13px;
    color: #555;
}

.signature-invoice-modal input[type="text"] {
    width: 100%;
    box-sizing: border-box;
}

.summaryfields {
    width: 100%;
    display: inline-flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-around;
    align-items: stretch;
    margin-bottom: 20px;
}

.summary {
    padding: 20px;
    margin: 15px;
    color: #000;
    text-align: center;
    font-size: medium;
    border-radius: 12px;
    background-color: #fff;
    box-shadow: 0 0.25rem 1.75rem rgba(30, 34, 40, .07) !important;
}

.buttonfields {
    display: flex;
    width: 100%;
    flex-direction: row;
    flex-wrap: wrap;
}

.invoicebutton {
    text-align: center;
    margin: 5px;
    background-color: #2c2c2c;
    color: #fff;
    margin-bottom: 5px;
    margin-right: 5px;
    padding: 10px;
    border-radius: 4px;
    cursor: pointer;
}

/* Tables */


/* pijltjes en states */
#table-stickers thead th[data-sort] {
    position: relative;
    cursor: pointer;
    user-select: none;
    white-space: nowrap;
}

#table-stickers thead th .sort-indicator {
    position: absolute;
    right: .5rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: .85em;
    opacity: .25;
    /* gedimd als niet actief */
    transition: opacity .15s;
}

#table-stickers thead th.is-sorted .sort-indicator {
    opacity: .9;
}

#table-stickers thead th:hover .sort-indicator {
    opacity: .6;
}

#table-stock thead th[data-sort],
#orderrules thead th[data-sort] {
    position: relative;
    cursor: pointer;
    user-select: none;
    white-space: nowrap;
}

#table-stock thead th .sort-indicator,
#orderrules thead th .sort-indicator {
    position: absolute;
    right: .5rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: .85em;
    opacity: .25;
    transition: opacity .15s;
}

#table-stock thead th.is-sorted .sort-indicator,
#dist_table thead th.is-sorted .sort-indicator,
#orderrules thead th.is-sorted .sort-indicator {
    opacity: .9;
}

#table-stock thead th:hover .sort-indicator,
#dist_table thead th:hover .sort-indicator,
#orderrules thead th:hover .sort-indicator {
    opacity: .6;
}

#table-stock tbody tr:hover,
#orderrules tbody tr:hover {
    background: #f8f9fa;
}


thead tr:first-child {
    background-color: #2c2c2c;
    color: #fff;
}

thead th {
    background-color: #2c2c2c;
    color: #fff;
}

table tr:first-child th,
table tbody tr:first-child th {
    background-color: #2c2c2c;
    color: #fff;
}

tbody tr:nth-child(1n+3) {
    background-color: #f9f9f9;
    color: #000;
}

tbody tr:nth-child(even) {
    background-color: #f4f4f4;
    color: #000;
}

#table-stickers tbody tr:nth-child(odd),
#table-stock tbody tr:nth-child(odd),
#dist_table tbody tr:nth-child(odd),
#orderrules tbody tr:nth-child(odd) {

    background-color: #ffffff;
    color: #000;
}

#table-stickers tbody tr:nth-child(even),
#table-stock tbody tr:nth-child(even),
#orderrules tbody tr:nth-child(even) {
    background-color: #f4f4f4;
    color: #000;
}

tr.weeknumberend {
    background-color: #2c2c2c;
    color: #fff;
}

#graph-connections tbody tr:first-child {
    background-color: #f9f9f9;
    color: #000;
}

#graph-connections .btn {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    font-size: small;
    padding: 0;
}

#graph-connections .btn-success {
    background-color: #2b891a;
}

div#result_calc {
    display: none;
}

#graph-connections .btn-danger {
    background-color: #b91c1c;
}

#graph-connections .btn+.btn {
    margin-left: 6px;
}

tr.weeknumberstart {
    height: 70px;
    vertical-align: bottom;
}

.display-bold {
    font-weight: bolder;
}

table {
    border-spacing: 0px;
    width: -webkit-fill-available;
    width: 99.8%;
}

#table-stock th.ws-cat-col,
#table-stock td.ws-cat-col {
    text-align: center;
    white-space: wrap;
    min-width: 10px;
}

button.stock-sold-customers-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 28px;
    padding: 0 10px;
    border: none;
    border-radius: 4px;
    background-color: #2b891a;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
    cursor: pointer;
}

button.stock-sold-customers-btn:hover:not(:disabled) {
    background-color: #236f15;
}

button.stock-sold-customers-btn:disabled {
    background-color: #c7c9cd;
    color: #f0f0f0;
    cursor: not-allowed;
}


input.ws-cat-check {
    width: 18px;
    height: 18px;
    accent-color: #2b891a;
}

#no-css tr:first-child {
    background-color: #f9f9f9;
    color: #000;
}

th,
td {
    padding: 7px;
    text-align: left;
    font-size: small !important;
}

td.center {
    text-align: center;
}

td.saldo,
th.saldo {
    text-align: center;
}

td.td-hidden {
    padding: 0px;
    display: none;
}

td.saldo.saldo-min {
    background-color: #ffcccc;
    color: #000000;
    margin-bottom: 2px;
}

td.saldo.saldo-plus {
    background-color: #fff1cc;
    color: #000000;
    margin-bottom: 2px;
}

div#result,
div#groups,
div#resultwebshop,
div#cartsresult {
    overflow-x: scroll;
    border: 0px solid;
    border-radius: 4px;
    width: -webkit-fill-available;
    width: 100%;
    padding-top: 20px;
}

div#resultoverview {
    overflow-x: scroll;
    border: 0px solid;
    border-radius: 4px;
    width: -webkit-fill-available;
    width: 90%;

}

.overview-profit-wrap {
    background: #fff;
    border: 1px solid #e4e4e4;
    border-radius: 12px;
    padding: 14px;
    margin-top: 10px;
    overflow: auto;
}

.overview-profit-summary {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 12px;
    margin-bottom: 14px;
}

.overview-profit-card {
    background: #f4f4f4;
    border-radius: 12px;
    padding: 14px;
}

.overview-profit-label {
    font-size: 12px;
    color: #555;
    margin-bottom: 6px;
}

.overview-profit-value {
    font-size: 24px;
    font-weight: 700;
    color: #111;
}

.overview-profit-wrap table {
    margin-bottom: 0;
}

.overview-profit-wrap table tbody tr:first-child {
    background-color: #fff !important;
    color: #111 !important;
}

.overview-margin-dot {
    display: inline-block;
    width: 14px;
    height: 14px;
    border-radius: 999px;
    vertical-align: middle;
}

.overview-margin-dot.is-red {
    background: #d62828;
}

.overview-margin-dot.is-orange {
    background: #f39c12;
}

.overview-margin-dot.is-green {
    background: #2b9348;
}

.overview-margin-dot.is-neutral {
    background: #777;
}

.duplicate {
    background-color: rgb(255, 204, 204);
}

#\33 02>td:nth-child(7) {
    display: table-cell !important;
}

.checkboxfields {
    display: flex;
    row-gap: 10px;
    float: left;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
}

table#dist_table {
    padding-top: 20px;
}

div#resultoverviewinvoice {
    overflow-y: scroll;
    width: 90%;
    max-height: 500px;
}

.webshop-badge {
    background-color: #ca2425;
    color: white;
    font-weight: bold;
    font-size: 10px;
    padding: 4px 4px;
    border-radius: 100%;
    margin-left: 6px;
    display: inline-block;
    vertical-align: middle;
    position: absolute;
    top: 10px;
    right: 6px;
    overflow: hidden;
    z-index: 999;
}

.price-check-touch-wrap {
    margin: 18px 0 10px;
    padding: 16px;
    background: #f4f4f4;
    border-radius: 12px;
}

.price-check-touch-head {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 10px;
}

.price-check-touch-rules {
    color: #555;
    font-size: 12px;
    text-align: left;
}

.price-check-touch-slider {
    position: relative;
    height: 50px;
    border-radius: 12px;
    touch-action: none;
    user-select: none;
    -webkit-touch-callout: none;
    overflow: visible;
}

.price-check-touch-marker {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 3px;
    background: rgba(0, 0, 0, 0.85);
    transform: translateX(-50%);
    border-radius: 999px;
    touch-action: none;
    pointer-events: none;
}

.price-check-touch-value {
    position: absolute;
    top: -32px;
    transform: translateX(-50%);
    background: rgba(17, 17, 17, 0.92);
    color: #fff;
    padding: 4px 8px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.12s ease;
    white-space: nowrap;
}

.price-check-touch-edge {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-size: 12px;
    font-weight: 700;
    color: #fff;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.12s ease;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
}

.price-check-touch-edge--left {
    left: 10px;
}

.price-check-touch-edge--right {
    right: 10px;
}

.price-check-touch-value.is-visible,
.price-check-touch-edge.is-visible {
    opacity: 1;
}

.order-purchase-price,
.order-purchase-price-col {
    display: none;
}

.show-purchase-price .order-purchase-price,
.show-purchase-price .order-purchase-price-col {
    display: table-cell;
    color: #777;
    font-size: 13px;
    white-space: nowrap;
    text-align: center;
}

.price-check-add-wrap {
    margin: 14px 0 10px;
    padding: 16px;
    background: #f4f4f4;
    border-radius: 12px;
}

.price-check-add-row {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 12px;
}

.price-check-add-field {
    display: flex;
    flex-direction: column;
    gap: 4px;
    flex: 1;
    min-width: 100px;
}

.price-check-add-field label {
    font-size: 12px;
    color: #555;
}

.price-check-retail-field {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-bottom: 12px;
}

.price-check-retail-field label {
    font-size: 12px;
    color: #555;
}

.price-check-retail-presets {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.price-check-retail-preset {
    flex: 1;
    min-width: 90px;
    padding: 8px 6px;
    border-radius: 10px;
    border: 1px solid #e5e7eb;
    background: #f9fafb;
    cursor: pointer;
    text-align: center;
}

.price-check-retail-preset-factor {
    display: block;
    font-size: 12px;
    color: #6b7280;
}

.price-check-retail-preset-value {
    display: block;
    font-weight: 700;
    font-size: 15px;
    color: #111827;
}

.price-check-retail-preset-sell {
    display: block;
    font-size: 11px;
    color: #6b7280;
    margin-top: 2px;
}

.price-check-retail-preset.is-active {
    border-color: #2563eb;
    background: #eff6ff;
}

.price-check-partial-warning {
    display: flex;
    align-items: center;
    gap: 8px;
    background: #fdecea;
    border: 1px solid #f5c2c0;
    color: #b02a25;
    border-radius: 8px;
    padding: 8px 12px;
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 12px;
}

.price-check-add-soldper-partial {
    border: 1px solid #ca2425 !important;
    background-color: #fdecea !important;
}

.price-check-lastprice {
    display: none;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    background: #fff3cd;
    color: #8a6100;
    border: 1px solid #ffe08a;
    border-radius: 8px;
    padding: 8px 12px;
    font-size: 13px;
    margin-bottom: 12px;
}

.price-check-lastprice.is-visible {
    display: flex;
}

.price-check-lastprice-apply {
    background: #8a6100;
    color: #fff;
    border: none;
    padding: 6px 10px;
    border-radius: 6px;
    cursor: pointer;
    font-size: 12px;
    white-space: nowrap;
}

.modaloverviewinvoice {
    width: 90%;
    max-height: 90vh;
    max-width: 500px;
    background-color: #ffffff;
    border-radius: 4px;
    z-index: 9999;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    box-shadow: 0px 0px 300px 10000px rgba(0, 0, 0, 0.75);
}

@media screen and (max-width: 680px) {

    button#buttonshortlist {
        display: none;
    }

    h4 {
        margin-top: 5px;
        margin-bottom: 5px;
    }

    div#open_total {
        color: #c9c9c9;
        font-size: 14px;
    }

    div#clientresult {
        float: left;
        width: 100%;
    }

    div#itemresult {
        float: left;
        width: 100%;
    }

    body>div.container>div>a {
        min-width: 50%;
        text-decoration: none;
    }

    .orderfields {
        float: left;
        /* margin-bottom: 20px; */
    }

    .header-left {
        float: left;
        width: 100%;
    }

    .startscreen-button {
        padding: 20px;
        margin: 8px;
        color: #000;
        text-align: center;
        font-size: medium;
        border-radius: 12px;
        background-color: #fff;
        box-shadow: 0 0.25rem 1.75rem rgba(30, 34, 40, .07) !important;
    }



    input#scanfield,
    input#scanfield:focus {
        background-color: #efefef;
        border: 0px;
        outline: none !important;
        box-shadow: none;
        height: 0px;
    }



    div#bottom {
        height: 1px;
    }

    label {
        margin-bottom: 5px;
        width: 50%;
    }

    .table-form {
        width: 100% !important;
    }

    .fields {
        grid-template-columns: repeat(2, minmax(160px, 1fr)) !important;
    }
}

.alert.alert-warning,
.alert.alert-danger {
    background-color: #d40000;
    color: #fff;
    padding: 10px;
    border-radius: 5px;
    margin-top: 5px;
    margin-bottom: 5px;
}

.order-dock {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    max-height: 180px;
    background: #f8f9fa;
    border-top: 1px solid #ddd;
    display: flex;
    flex-wrap: wrap;
    align-content: flex-start;
    align-items: flex-start;
    padding: 5px 10px;
    gap: 8px;
    z-index: 9999;
    overflow-y: auto;
}

.order-tab {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 10px 10px;
    border-radius: 4px;
    border: 1px solid #ccc;
    background: #fff;
    font-size: 12px;
    cursor: pointer;
    max-width: 220px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;

}

.order-tab.active {
    border-color: #0d6efd;
    background: #e7f1ff;
}

.order-tab .order-title {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.order-tab .order-close {
    border: none;
    background: transparent;
    color: #888;
    padding: 0;
    margin-left: 4px;
    cursor: pointer;
    font-size: 14px;
    line-height: 1;
}

.order-tab-close-button {
    padding: 6px 7px 5px 3px;
    border-radius: 4px;
    background-color: #ca2425;
}

i.fa-solid.fa-x {
    color: #fff;
}

.imagemenu-row td {
    background: #f8f9fa;
    padding: 20px;
}

/* Extra-menu (factuurlijst) in duidelijk gelabelde groepen i.p.v. één lange rij knoppen */
.imagemenu-panel {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    text-align: left;
}

.imagemenu-group {
    min-width: 200px;
}

.imagemenu-group-title {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #6c757d;
    margin-bottom: 6px;
}

.imagemenu-group-buttons {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.imagemenu-group-buttons .btn {
    margin: 0;
    width: 100%;
    text-align: center;
}

.imagemenu-inner {
    min-height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    padding: 15px;
}

.imagemenu {
    height: 35px;
    width: 35px;
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #2b891a;
    font-size: small;
}

button.btn.btn-primary.report-tab.active {
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #2b891a;
    padding: 5px 10px 5px 10px;
}

button.btn.btn-primary.report-tab {
    color: #fff;
    border-radius: 4px;
    border: none;
    background-color: #5a5a5a;
    padding: 5px 10px 5px 10px;
}

#mobilescanner.modalhidden {
    display: none;
}

#mobilescanner {
    position: fixed;
    inset: 0;
    z-index: 9999;
    background: rgba(0, 0, 0, 0.75);
    display: flex;
    align-items: center;
    justify-content: center;
}

.mobilescanner-screen {
    background: #111;
    color: #fff;
    width: 95vw;
    max-width: 500px;
    border-radius: 10px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.mobilescanner-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 12px;
    background: #222;
    font-weight: 600;
}

.mobilescanner-close {
    background: transparent;
    border: none;
    color: #fff;
    font-size: 20px;
    cursor: pointer;
}

.mobilescanner-video-wrap {
    position: relative;
    width: 100%;
    padding-top: 130%;
    /* portrait */
    background: #000;
}

#mobilescanner-video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.mobilescanner-overlay {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 70%;
    max-width: 320px;
    transform: translate(-50%, -50%);
    border: 2px solid rgba(0, 255, 0, 0.7);
    border-radius: 8px;
    padding: 6px;
    text-align: center;
    font-size: 12px;
    background: rgba(0, 0, 0, 0.25);
}

.mobilescanner-footer {
    padding: 6px 10px;
    font-size: 12px;
    background: #181818;
    color: #ccc;
}

.modal-beforeMail {
    position: fixed;
    inset: 0;
    z-index: 1000;
    background-color: rgba(0, 0, 0, 0.5);
    display: none;
    justify-content: center;
    align-items: center;
}

.input-group.attachments-group {
    display: flex;
}

.beforeMail-box {
    background-color: #fff;
    border-radius: 8px;
    width: min(1100px, 92%);
    max-height: 85vh;
    display: flex;
    flex-direction: column;
    padding: 24px;
    box-sizing: border-box;
    overflow: auto;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
}

/* Input veld */
#beforeMailInput {
    height: 30px;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    width: 90%;
    background-color: #fbfbfb;
    font-size: small;
    padding-left: 5px;
}


.input-group {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
    gap: 10px;
    /* Ruimte tussen label en input */
}

.input-group label {
    min-width: 170px;
    justify-content: space-between;
    align-items: center;
    padding: 5px 0;
}

.input-group input {
    height: 35px;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    width: 100%;
    background-color: #fbfbfb;
    font-size: small;
    padding-left: 5px;

}

.beforeMail-buttons {
    margin-top: 10px;
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    padding-top: 12px;
    border-top: 1px solid #eee;
}

.ckeditor-group {
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
    flex: 1;
}

.ckeditor-group label {
    justify-content: space-between;
    align-items: center;
    padding: 5px 0;
}

.ck-editor__editable {
    max-height: 320px;
    overflow-y: auto;
    background: #fff;
}

.attachments-group {
    display: flex;
    align-items: flex-start;
    margin-bottom: 20px;
}

.attachments-label {
    min-width: 170px;
    justify-content: space-between;
    align-items: center;
    padding: 5px 0;
    font-weight: 600;
}

.attachments-list {
    flex: 1;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.attachment-item {
    height: 35px;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    width: fit-content;
    background-color: #fbfbfb;
    font-size: small;
    padding: 6px 10px;
    display: flex;
    align-items: center;
}

.ws-price-grid {
    display: grid;
    grid-template-columns: minmax(80px, 1fr);
    gap: 4px;
}

.ws-cat-list {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 10px;
}

.ws-cat-item {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 12px;
}

.ws-group-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.ws-group-title {
    font-weight: 700;
    font-size: 12px;
    margin-bottom: 2px;
}

.ws-price-grid label {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 12px;
}

.ws-price-label {
    width: 90px !important;
    display: flex;
}

.ws-price-grid .form-control-small {
    height: 20px;
        width: 70px;
    font-size: 12px;
}

.ws-price-warning {
    border: 1px solid #c0392b !important;
    background: #ffe9e7 !important;
}

.ws-load-overridden {
    border: 1px solid #8BC34A !important;
    background: #fff2e6 !important;
}

.table-form-inline {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}

.table-form-inline .form-control {
    min-width: 160px;
}

.dist-cell {
    display: flex;
    flex-direction: row;
    justify-content: center;
}

#dist_table thead tr.dist-total-row th {
    background-color: #2c2c2c;
    color: #fff;
    font-weight: 700;
}
#dist_table thead tr.dist-total-row th {
    position: sticky;
    top: 0;
    z-index: 3;
}
#dist_table thead tr.dist-header-row th {
    position: sticky;
    top: 34px;
    z-index: 2;
}

.dist-total {
    display: inline-block;
    min-width: 70px;
    text-align: right;
}
.dist-total-line {
    white-space: nowrap;
}
.dist-total-value {
    margin-left: 6px;
    display: inline-block;
    min-width: 70px;
    text-align: center;
}
.dist-total-sell-line {
    font-size: 16px;
    font-weight: 700;
}
.dist-total-buy-line {
    font-size: 14px;
    font-weight: 600;
}
.dist-total-label {
    font-size: 11px;
    font-weight: 600;
    opacity: 0.7;
    margin-right: 4px;
}
.dist-control {
    text-align: center;
    font-size: 18px;
    font-weight: 700;
    vertical-align: middle;
}
.dist-control.is-alert {
    background-color: #ffcccc;
}
.dist-control.is-ok {
    background-color: #e7f8e7;
}

.dist-total-units-cell.is-mismatch {
    background-color: #ffd6d6;
}


input.form-control-small.dist-crate.is-zero {
    background-color: #ffd6d6;
}

input.stock-cart-load.stock-cart-load-zero,
input.form-control-small.dist-units-per-cart.stock-cart-load-zero {
    background-color: #ffd6d6;
}

#save_distribution.is-disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.price-auto-filled {
    background-color: #e7f8e7 !important;
}

.import-name-changed {
    background-color: #fff4c2 !important;
}

input.form-control-small.dist-crate {
    width: 30px;
    text-align: center;
}

button.btn.btn-danger.btn-xs.dist-btn.dist-minus {
    width: 30px;
    border-radius: 4px;
    border: 0px solid;
    background-color: #676767;
    color: #fff;
    margin-right: 4px;
}

.dist-btn {
    display: none;
}

/* Overblijvend button styling */
.dist-leftover-cell {
    text-align: center;
}

.dist-add-leftover {
    display: inline-block !important;
    min-width: 35px;
    min-height: 35px;
    padding: 6px 12px;
    background-color: #f39c12;
    color: #fff;
    border: none;
    border-radius: 4px;
    font-size: small;
    cursor: not-allowed;
    opacity: 0.5;
}

.dist-add-leftover:not(:disabled) {
    background-color: #e67e22;
    cursor: pointer;
    opacity: 1;
}

.dist-add-leftover:hover:not(:disabled) {
    background-color: #d35400;
}

button.btn.btn-success.btn-xs.dist-btn.dist-plus {
    width: 30px;
    border-radius: 4px;
    border: 0px solid;
    background-color: #2b891a;
    color: #fff;
    margin-left: 4px;
    margin-right: 4px;
}

.container-distribute {
    overflow: auto;
    max-width: 1700px;
    margin: 0 auto;
    padding: 5px;
    padding-top: 10px;
    padding-bottom: 160px;
}

button#addImage {
    flex: 1;
    background: #2b891a;
    color: white;
    border: none;
    padding: 10px;
    border-radius: 5px;
}

button#setMainImage {
    flex: 1;
    background: #1f7fbf;
    color: white;
    border: none;
    padding: 10px;
    border-radius: 5px;
}

button#closeImageModal {
    margin-top: 15px;
    background: #ccc;
    border: none;
    padding: 8px 12px;
    border-radius: 4px;
}

button#deleteImage {
    flex: 1;
    background: #e74c3c;
    color: white;
    border: none;
    padding: 10px;
    border-radius: 5px;
}


#orderrules img {
    width: 50px;
    height: 50px;
    object-fit: cover;
}

/* Dropdown form */
.dropdown-wrapper {
    margin-top: 100px;
}

.dropdown-form {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px 30px;
}

.dropdown-row {
    display: flex;
    align-items: center;
    gap: 10px;
}

.dropdown-label {
    min-width: 140px;
    font-weight: 500;
}

.dropdown-select {
    flex: 1;
}

/* Bestellingen (geplande orders) */

.plannedorder-note {
    clear: both;
    width: 100%;
    box-sizing: border-box;
    padding: 10px 0 15px;
}

.plannedorder-note label {
    display: block;
    width: auto;
    margin-bottom: 6px;
    font-weight: 700;
}

.plannedorder-note textarea {
    width: 100%;
    box-sizing: border-box;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    background-color: #fbfbfb;
    font-size: small;
    font-family: "roboto", sans-serif;
    padding: 8px;
    resize: vertical;
}

.convertedNotice {
    font-size: 13px;
    color: #555;
    align-self: center;
}

.plannedorder-hint {
    clear: both;
    color: #777;
    font-size: 13px;
    padding: 10px 0 20px;
}

/* Reclamaties */

.reclamatie-note {
    clear: both;
    width: 100%;
    box-sizing: border-box;
    padding: 10px 0 15px;
}

.reclamatie-note label {
    display: block;
    width: auto;
    margin-bottom: 6px;
    font-weight: 700;
}

.reclamatie-note textarea {
    width: 100%;
    box-sizing: border-box;
    border-radius: 4px;
    border: 1px solid #c9c9c9;
    background-color: #fbfbfb;
    font-size: small;
    font-family: "roboto", sans-serif;
    padding: 8px;
    resize: vertical;
}

form.upload-form {
    margin-top: 20px;
    margin-bottom: 20px;
}

.open-total-percent {
    color: #999;
    font-size: 0.85em;
    margin-left: 6px;
}

.webshop-cart-totals {
    clear: both;
    display: flex;
    align-items: center;
    gap: 8px;
    width: fit-content;
    margin: 6px 0 10px;
    padding: 8px 14px;
    background: #fff3cd;
    color: #8a6100;
    border: 1px solid #ffe08a;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 700;
}

/* Zonder deze regel wint .webshop-cart-totals's "display: flex" van de browser-
   standaard "[hidden] { display: none }" (zelfde oorsprong/specificiteit, en
   deze regel staat later) -- waardoor het blok bij een gewone (niet-webshop)
   order toch zichtbaar bleef ondanks het hidden-attribuut. */
.webshop-cart-totals[hidden] {
    display: none;
}

/* CC-kartenvisualisatie (zelfde boxjes als in de webshop-winkelwagen), hier
   hergebruikt om de belading van een webshoporder bij staff te laten zien.
   Kleuren/vormgeving overgenomen uit webshop/assets/webshop.css (.ws-cc-*),
   met de webshop-theme-CSS-variabelen vervangen door vaste kleuren omdat dit
   scherm die variabelen niet laadt. */
.ws-cart-graphics {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 10px;
}

.ws-cc-container {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
}

.ws-cc-title {
    font-weight: 700;
    font-size: 13px;
    color: #333;
}

.ws-cc-box {
    border: 1px solid #d7d7d7;
    width: 150px;
    padding: 10px;
    position: relative;
    background: #fafafa;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}

.ws-cc-rows {
    position: absolute;
    inset: 10px;
    border: 1px solid rgba(0, 0, 0, .08);
    border-radius: 8px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    overflow: hidden;
    gap: 1px;
}

.ws-cc-row {
    display: flex;
    flex-direction: row;
    overflow: hidden;
    margin-top: 0;
}

.ws-cc-item {
    display: flex;
    align-items: flex-end;
    box-sizing: border-box;
}

.ws-cc-item-box {
    width: 100%;
    font-size: 10px;
    color: #fff;
    border: 1px solid #f9f9f9;
    box-sizing: border-box;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    text-align: center;
    border-radius: 4px;
}

.ws-cc-filler {
    border: 0;
    box-sizing: border-box;
}

.webshop-cc-warnings {
    clear: both;
    margin: 6px 0;
    padding: 8px 14px;
    background: #fdecea;
    color: #b02a25;
    border: 1px solid #f5c2c0;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
    max-width: fit-content;
}

.webshop-cc-warnings[hidden] {
    display: none;
}

.webshop-cart-totals button#printWebshopCartTotals {
    height: 26px;
    width: 26px;
    color: #8a6100;
    border-radius: 4px;
    border: 1px solid #ffe08a;
    background-color: #fff;
    font-size: 12px;
    cursor: pointer;
}

/* ===== Verplaatst uit bookkeeping/cbs/index.php ===== */
    .cbs-page .header-whole {
        float: none;
        width: 100%;
        margin-bottom: 14px;
    }

    .cbs-page .header-whole p {
        max-width: 780px;
        color: #666;
        font-size: 13px;
        margin: 6px 0 0;
    }

    .cbs-panel {
        background: #fafafa;
        border: 1px solid #e6e6e6;
        border-radius: 6px;
        padding: 16px;
        margin-bottom: 20px;
    }

    .cbs-panel h3 {
        margin: 0 0 10px;
        font-size: 15px;
    }

    .cbs-fields {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
        gap: 12px;
        margin-bottom: 12px;
    }

    .cbs-fields label {
        display: block;
        font-size: 12px;
        color: #555;
        margin-bottom: 4px;
    }

    .cbs-fields input {
        width: 100%;
        box-sizing: border-box;
        height: 34px;
        padding: 4px 8px;
        border: 1px solid #ccc;
        border-radius: 4px;
    }

    .cbs-period-row {
        display: flex;
        align-items: flex-end;
        gap: 16px;
        flex-wrap: wrap;
        margin-bottom: 12px;
    }

    .cbs-period-row label {
        display: block;
        font-size: 12px;
        color: #555;
        margin-bottom: 4px;
    }

    .cbs-preview {
        font-size: 13px;
        color: #333;
        margin: 10px 0;
        min-height: 20px;
    }

    .cbs-preview.warn {
        color: #a33;
        font-weight: bold;
    }

    .cbs-actions {
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
    }

/* ===== Verplaatst uit bookkeeping/snelstart/index.php ===== */
    .ss-page .header-whole {
        float: none;
        width: 100%;
        margin-bottom: 14px;
    }

    .ss-panel {
        background: #fafafa;
        border: 1px solid #e6e6e6;
        border-radius: 6px;
        padding: 16px;
        margin-bottom: 20px;
    }

    .ss-panel h3 {
        margin: 0 0 6px;
        font-size: 15px;
    }

    .ss-panel p.desc {
        max-width: 780px;
        color: #666;
        font-size: 13px;
        margin: 0 0 12px;
    }

    .ss-row {
        display: flex;
        align-items: flex-end;
        gap: 16px;
        flex-wrap: wrap;
        margin-bottom: 12px;
    }

    .ss-row label {
        display: block;
        font-size: 12px;
        color: #555;
        margin-bottom: 4px;
    }

    .ss-count {
        font-size: 13px;
        color: #333;
        margin: 10px 0;
        min-height: 20px;
    }

    .ss-count.warn {
        color: #a33;
        font-weight: bold;
    }

    .ss-actions {
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
    }

    .ss-log {
        margin-top: 12px;
        max-height: 220px;
        overflow-y: auto;
        font-size: 12px;
        background: #fff;
        border: 1px solid #eee;
        border-radius: 4px;
        padding: 8px;
    }

    .ss-log div.ok {
        color: #2a7d2a;
    }

    .ss-log div.fail {
        color: #a33;
    }

    .ss-check-table {
        width: 100%;
        border-collapse: collapse;
        font-size: 12px;
    }

    .ss-check-table th, .ss-check-table td {
        text-align: left;
        padding: 4px 6px;
        border-bottom: 1px solid #eee;
        vertical-align: top;
    }

    .ss-check-badge {
        display: inline-block;
        padding: 1px 6px;
        border-radius: 3px;
        font-size: 11px;
        font-weight: bold;
        color: #fff;
    }

    .ss-check-badge.ok { background: #4a9d4a; }
    .ss-check-badge.warning { background: #d99a2b; }
    .ss-check-badge.error { background: #a33; }

    .ss-check-sync-btn {
        font-size: 11px;
        padding: 2px 8px;
        border: 1px solid #4a9d4a;
        border-radius: 3px;
        background: #fff;
        color: #4a9d4a;
        cursor: pointer;
        white-space: nowrap;
    }

    .ss-check-sync-btn:hover {
        background: #4a9d4a;
        color: #fff;
    }

    .ss-check-sync-btn:disabled {
        opacity: 0.5;
        cursor: default;
    }

    .ss-progress {
        display: none;
        margin: 8px 0;
    }

    .ss-progress-track {
        background: #e6e6e6;
        border-radius: 4px;
        height: 8px;
        overflow: hidden;
    }

    .ss-progress-bar {
        background: #4a9d4a;
        height: 100%;
        width: 0%;
        transition: width 0.25s ease;
    }

    .ss-progress.busy .ss-progress-bar {
        width: 100% !important;
        background: repeating-linear-gradient(135deg, #4a9d4a, #4a9d4a 10px, #6bbf6b 10px, #6bbf6b 20px);
        background-size: 28px 28px;
        animation: ss-progress-stripes 0.8s linear infinite;
    }

    @keyframes ss-progress-stripes {
        from { background-position: 0 0; }
        to { background-position: 28px 0; }
    }

    .ss-progress-label {
        font-size: 11px;
        color: #777;
        margin-top: 3px;
    }

/* ===== Verplaatst uit clients/index.php ===== */
    #modalClientPhones.orderprocess-modal-wrap {
        background: rgba(17, 20, 24, 0.55);
        -webkit-backdrop-filter: blur(2px);
        backdrop-filter: blur(2px);
    }

    #modalClientPhones .orderprocess-modal {
        padding: 0;
        border-radius: 12px;
        overflow: hidden;
        box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
    }

    #modalClientPhones .orderprocess-modal-header {
        margin: 0;
        padding: 16px 18px;
        font-size: 16px;
        font-weight: 700;
        color: #1c2430;
        border-bottom: 1px solid #ececf0;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    #modalClientPhones .orderprocess-modal-header i {
        color: #2b891a;
        margin-right: 8px;
    }

    #modalClientPhones .client-phones-close {
        all: unset;
        cursor: pointer;
        width: 30px;
        height: 30px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 6px;
        font-size: 20px;
        line-height: 1;
        color: #8a8f98;
    }

    #modalClientPhones .orderprocess-modal-header .client-phones-close:hover {
        background: #f0f1f4;
        color: #1c2430;
    }

    #modalClientPhones .orderprocess-modal-body {
        padding: 12px 18px 16px;
        max-height: 60vh;
        overflow-y: auto;
    }

    #modalClientPhones .client-phone-row {
        display: flex;
        align-items: center;
        gap: 12px;
        padding: 10px 12px;
        border: 1px solid #e3e4e8;
        border-radius: 8px;
        background: #f7f8fa;
        margin-bottom: 8px;
    }

    #modalClientPhones .client-phone-row:last-child {
        margin-bottom: 0;
    }

    #modalClientPhones .client-phone-icon {
        flex: 0 0 auto;
        width: 34px;
        height: 34px;
        border-radius: 50%;
        background: #2b891a;
        color: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 14px;
    }

    #modalClientPhones .client-phone-info {
        flex: 1 1 auto;
        min-width: 0;
    }

    #modalClientPhones .client-phone-name {
        font-weight: 600;
        color: #1c2430;
        font-size: 13px;
    }

    #modalClientPhones .client-phone-number {
        display: inline-block;
        margin-top: 2px;
        font-size: 16px;
        font-weight: 600;
        color: #2b891a;
        text-decoration: none;
    }

    #modalClientPhones .client-phone-number:hover {
        text-decoration: underline;
    }

    #modalClientPhones .text-muted {
        display: inline-block;
        color: #8a8f98;
        font-size: 13px;
        padding: 4px 2px;
    }

    #modalClientPhones .orderprocess-modal-actions {
        margin: 0;
        padding: 14px 18px;
        border-top: 1px solid #ececf0;
        background: #fafafb;
    }

    #modalClientPhones .orderprocess-modal-actions .btn {
        height: 38px;
        padding: 0 18px;
        border-radius: 8px;
        border: 1px solid #d3d5da;
        background: #fff;
        color: #3a3f47;
        font-size: 14px;
        font-weight: 600;
        cursor: pointer;
    }

    #modalClientPhones .orderprocess-modal-actions .btn:hover {
        background: #f0f1f4;
    }

    .clients-sortable th[data-sort] {
        cursor: pointer;
        user-select: none;
        position: relative;
        padding-right: 18px;
    }

    .clients-sortable th[data-sort]::after {
        content: '\21C5';
        position: absolute;
        right: 4px;
        opacity: 0.35;
        font-size: 12px;
    }

    .clients-sortable th[data-sort].sort-asc::after {
        content: '\2191';
        opacity: 1;
    }

    .clients-sortable th[data-sort].sort-desc::after {
        content: '\2193';
        opacity: 1;
    }

/* ===== Verplaatst uit invoices/index.php ===== */
    #modalPartialCredit.orderprocess-modal-wrap {
        background: rgba(17, 20, 24, 0.55);
        padding: 16px;
        -webkit-backdrop-filter: blur(2px);
        backdrop-filter: blur(2px);
    }

    #modalPartialCredit .orderprocess-modal {
        width: 560px;
        max-width: 100%;
        max-height: 86vh;
        padding: 0;
        display: flex;
        flex-direction: column;
        border-radius: 12px;
        box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
        overflow: hidden;
    }

    #modalPartialCredit .orderprocess-modal-header {
        margin: 0;
        padding: 16px 18px;
        font-size: 16px;
        font-weight: 700;
        color: #1c2430;
        border-bottom: 1px solid #ececf0;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    #modalPartialCredit .partialcredit-close {
        all: unset;
        cursor: pointer;
        width: 30px;
        height: 30px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 6px;
        font-size: 20px;
        line-height: 1;
        color: #8a8f98;
    }

    #modalPartialCredit .orderprocess-modal-header .partialcredit-close:hover {
        background: #f0f1f4;
        color: #1c2430;
    }

    #modalPartialCredit .orderprocess-modal-body {
        overflow-y: auto;
        flex: 1 1 auto;
        padding: 16px 18px;
    }

    #modalPartialCredit .partialcredit-allrow {
        display: flex;
        align-items: center;
        gap: 8px;
        margin: 0 0 12px;
        font-weight: 600;
        color: #1c2430;
        cursor: pointer;
    }

    #modalPartialCredit table.partialcredit-list {
        width: 100%;
        border-collapse: collapse;
        font-size: 13px;
    }

    #modalPartialCredit table.partialcredit-list th,
    #modalPartialCredit table.partialcredit-list td {
        padding: 6px 8px;
        border-bottom: 1px solid #ececf0;
        text-align: left;
    }

    #modalPartialCredit table.partialcredit-list th.num,
    #modalPartialCredit table.partialcredit-list td.num {
        text-align: right;
        white-space: nowrap;
    }

    #modalPartialCredit .text-muted {
        display: inline-block;
        color: #8a8f98;
        font-size: 12px;
        padding: 4px 2px;
    }

    #modalPartialCredit .orderprocess-modal-actions {
        margin: 0;
        padding: 14px 18px;
        border-top: 1px solid #ececf0;
        background: #fafafb;
        display: flex;
        justify-content: flex-end;
        gap: 10px;
    }

    #modalPartialCredit .orderprocess-modal-actions .btn {
        height: 38px;
        padding: 0 18px;
        border-radius: 8px;
        border: 1px solid transparent;
        font-size: 14px;
        font-weight: 600;
        cursor: pointer;
    }

    #modalPartialCredit .orderprocess-modal-actions .btn-success {
        background-color: #2b891a;
        color: #fff;
    }

    #modalPartialCredit .orderprocess-modal-actions .btn-success:hover {
        background-color: #256f16;
    }

    #modalPartialCredit .orderprocess-modal-actions .btn-danger {
        background-color: #fff;
        border-color: #d3d5da;
        color: #3a3f47;
    }

    #modalPartialCredit .orderprocess-modal-actions .btn-danger:hover {
        background-color: #f0f1f4;
    }

    #modalPartialCredit .orderprocess-modal-actions .btn[disabled] {
        opacity: 0.55;
        cursor: default;
    }

/* ===== Verplaatst uit orders/order.php ===== */
        .invoice-edit-banner {
            background: #fffbeb;
            border: 1px solid #fde68a;
            color: #92400e;
            padding: 10px 14px;
            border-radius: 10px;
            margin: 0 0 14px;
            font: 500 14px/1.4 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
        }

        .invoice-edit-banner i {
            margin-right: 6px;
        }

/* ===== Verplaatst uit orders/order.php ===== */
    #modalgroupprice.modalhidden {
        display: none !important;
    }

    #modalgroupprice.orderprocess-modal-wrap {
        background: rgba(17, 20, 24, 0.55);
        -webkit-backdrop-filter: blur(2px);
        backdrop-filter: blur(2px);
    }

    #modalgroupprice .orderprocess-modal {
        padding: 0;
        border-radius: 12px;
        overflow: hidden;
        box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
    }

    #modalgroupprice .orderprocess-modal-header {
        margin: 0;
        padding: 16px 18px;
        font-size: 16px;
        font-weight: 700;
        color: #1c2430;
        border-bottom: 1px solid #ececf0;
    }

    #modalgroupprice .groupprice-modal-close {
        all: unset;
        cursor: pointer;
        width: 30px;
        height: 30px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 6px;
        font-size: 20px;
        line-height: 1;
        color: #8a8f98;
    }

    #modalgroupprice .orderprocess-modal-header .groupprice-modal-close:hover {
        background: #f0f1f4;
        color: #1c2430;
    }

    #modalgroupprice .orderprocess-modal-body {
        padding: 14px 18px 4px;
    }

    #modalgroupprice .groupprice-intro {
        margin: 0 0 12px;
        font-size: 13px;
        color: #666;
    }

    #modalgroupprice .groupprice-row {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        padding: 10px 12px;
        border-radius: 8px;
        margin-bottom: 8px;
    }

    #modalgroupprice .groupprice-row:last-child {
        margin-bottom: 0;
    }

    #modalgroupprice .groupprice-row-group {
        background: #eef7ec;
        border: 1px solid #cfe9c8;
    }

    #modalgroupprice .groupprice-row-current {
        background: #f7f8fa;
        border: 1px solid #e3e4e8;
    }

    #modalgroupprice .groupprice-row-label {
        font-size: 13px;
        color: #555;
    }

    #modalgroupprice .groupprice-row-value {
        font-size: 21px;
        font-weight: 800;
        letter-spacing: -0.2px;
        font-variant-numeric: tabular-nums;
        color: #1c2430;
    }

    #modalgroupprice .groupprice-row-group .groupprice-row-value {
        color: #2b891a;
    }

    #modalgroupprice .orderprocess-modal-actions {
        margin: 0;
        padding: 14px 18px;
        border-top: 1px solid #ececf0;
        background: #fafafb;
    }

    #modalgroupprice .groupprice-btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        height: 38px;
        padding: 0 18px;
        border-radius: 8px;
        border: 1px solid transparent;
        font-size: 14px;
        font-weight: 600;
        cursor: pointer;
    }

    #modalgroupprice .groupprice-btn-ghost {
        background: #fff;
        border-color: #d3d5da;
        color: #3a3f47;
    }

    #modalgroupprice .groupprice-btn-ghost:hover {
        background: #f0f1f4;
    }

    #modalgroupprice .groupprice-btn-solid {
        background-color: #2b891a;
        color: #fff;
    }

    #modalgroupprice .groupprice-btn-solid:hover {
        background-color: #256f16;
    }

/* ===== Verplaatst uit orders/order.php ===== */
    #modallastprice.modalhidden {
        display: none !important;
    }

    #modallastprice.orderprocess-modal-wrap {
        background: rgba(17, 20, 24, 0.55);
        -webkit-backdrop-filter: blur(2px);
        backdrop-filter: blur(2px);
    }

    #modallastprice .orderprocess-modal {
        padding: 0;
        border-radius: 12px;
        overflow: hidden;
        box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
    }

    #modallastprice .orderprocess-modal-header {
        margin: 0;
        padding: 16px 18px;
        font-size: 16px;
        font-weight: 700;
        color: #1c2430;
        border-bottom: 1px solid #ececf0;
    }

    #modallastprice .lastprice-modal-close {
        all: unset;
        cursor: pointer;
        width: 30px;
        height: 30px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 6px;
        font-size: 20px;
        line-height: 1;
        color: #8a8f98;
    }

    #modallastprice .orderprocess-modal-header .lastprice-modal-close:hover {
        background: #f0f1f4;
        color: #1c2430;
    }

    #modallastprice .orderprocess-modal-body {
        padding: 14px 18px 4px;
    }

    #modallastprice .groupprice-intro {
        margin: 0 0 12px;
        font-size: 13px;
        color: #666;
    }

    #modallastprice .groupprice-row {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        padding: 10px 12px;
        border-radius: 8px;
        margin-bottom: 8px;
    }

    #modallastprice .groupprice-row:last-child {
        margin-bottom: 0;
    }

    #modallastprice .groupprice-row-group {
        background: #eef7ec;
        border: 1px solid #cfe9c8;
    }

    #modallastprice .groupprice-row-current {
        background: #f7f8fa;
        border: 1px solid #e3e4e8;
    }

    #modallastprice .groupprice-row-label {
        font-size: 13px;
        color: #555;
    }

    #modallastprice .groupprice-row-value {
        font-size: 21px;
        font-weight: 800;
        letter-spacing: -0.2px;
        font-variant-numeric: tabular-nums;
        color: #1c2430;
    }

    #modallastprice .groupprice-row-group .groupprice-row-value {
        color: #2b891a;
    }

    #modallastprice .orderprocess-modal-actions {
        margin: 0;
        padding: 14px 18px;
        border-top: 1px solid #ececf0;
        background: #fafafb;
    }

    #modallastprice .groupprice-btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        height: 38px;
        padding: 0 18px;
        border-radius: 8px;
        border: 1px solid transparent;
        font-size: 14px;
        font-weight: 600;
        cursor: pointer;
    }

    #modallastprice .groupprice-btn-ghost {
        background: #fff;
        border-color: #d3d5da;
        color: #3a3f47;
    }

    #modallastprice .groupprice-btn-ghost:hover {
        background: #f0f1f4;
    }

    #modallastprice .groupprice-btn-solid {
        background-color: #2b891a;
        color: #fff;
    }

    #modallastprice .groupprice-btn-solid:hover {
        background-color: #256f16;
    }

/* ===== Verplaatst uit orders/order.php ===== */
    #modalinsufficientstock.modalhidden {
        display: none !important;
    }

    #modalinsufficientstock.orderprocess-modal-wrap {
        background: rgba(17, 20, 24, 0.55);
        -webkit-backdrop-filter: blur(2px);
        backdrop-filter: blur(2px);
    }

    #modalinsufficientstock .orderprocess-modal {
        padding: 0;
        border-radius: 12px;
        overflow: hidden;
        box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
    }

    #modalinsufficientstock .orderprocess-modal-header {
        margin: 0;
        padding: 16px 18px;
        font-size: 16px;
        font-weight: 700;
        color: #1c2430;
        border-bottom: 1px solid #ececf0;
    }

    #modalinsufficientstock .insufficientstock-modal-close {
        all: unset;
        cursor: pointer;
        width: 30px;
        height: 30px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 6px;
        font-size: 20px;
        line-height: 1;
        color: #8a8f98;
    }

    #modalinsufficientstock .orderprocess-modal-header .insufficientstock-modal-close:hover {
        background: #f0f1f4;
        color: #1c2430;
    }

    #modalinsufficientstock .orderprocess-modal-body {
        padding: 14px 18px 4px;
    }

    #modalinsufficientstock #insufficientstock-intro {
        margin: 0 0 12px;
        font-size: 13px;
        color: #666;
    }

    #modalinsufficientstock .groupprice-row {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        padding: 10px 12px;
        border-radius: 8px;
        margin-bottom: 8px;
        background: #eef7ec;
        border: 1px solid #cfe9c8;
    }

    #modalinsufficientstock .groupprice-row-label {
        font-size: 13px;
        color: #555;
    }

    #modalinsufficientstock .groupprice-row-value {
        font-size: 21px;
        font-weight: 800;
        letter-spacing: -0.2px;
        font-variant-numeric: tabular-nums;
        color: #2b891a;
    }

    #modalinsufficientstock .orderprocess-modal-actions {
        margin: 0;
        padding: 14px 18px;
        border-top: 1px solid #ececf0;
        background: #fafafb;
    }

    #modalinsufficientstock .groupprice-btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        height: 38px;
        padding: 0 18px;
        border-radius: 8px;
        border: 1px solid transparent;
        font-size: 14px;
        font-weight: 600;
        cursor: pointer;
    }

    #modalinsufficientstock .groupprice-btn-ghost {
        background: #fff;
        border-color: #d3d5da;
        color: #3a3f47;
    }

    #modalinsufficientstock .groupprice-btn-ghost:hover {
        background: #f0f1f4;
    }

    #modalinsufficientstock .groupprice-btn-solid {
        background-color: #2b891a;
        color: #fff;
    }

    #modalinsufficientstock .groupprice-btn-solid:hover {
        background-color: #256f16;
    }

/* ===== Verplaatst uit settings/clientgroups/index.php ===== */
    .clientgroups-page .header-whole {
        float: none;
        width: 100%;
        margin-bottom: 14px;
    }

    .clientgroups-page .header-whole p {
        max-width: 720px;
        color: #666;
        font-size: 13px;
        margin: 6px 0 0;
    }

    .clientgroups-page #result {
        overflow-x: auto;
    }

    .clientgroups-table {
        width: 100%;
        min-width: 640px;
        border-collapse: collapse;
        margin-top: 0;
    }

    .clientgroups-table th,
    .clientgroups-table td {
        padding: 8px 10px;
        text-align: left;
        vertical-align: middle;
        border-bottom: 1px solid #e6e6e6;
    }

    .clientgroups-table col.col-name {
        width: auto;
    }

    .clientgroups-table col.col-sort {
        width: 110px;
    }

    .clientgroups-table col.col-active {
        width: 70px;
    }

    .clientgroups-table col.col-count {
        width: 90px;
    }

    .clientgroups-table col.col-actions {
        width: 230px;
    }

    .clientgroups-table th.center,
    .clientgroups-table td.center {
        text-align: center;
    }

    .clientgroups-table tbody tr:nth-child(even) {
        background: #fafafa;
    }

    .clientgroups-table input.form-control {
        width: 100%;
        margin: 0;
        box-sizing: border-box;
        height: 34px;
        padding: 4px 8px;
        border: 1px solid #ccc;
        border-radius: 4px;
        font-size: inherit;
    }

    .clientgroups-table input.cg-sort {
        width: 90px;
    }

    .clientgroups-table input[type="checkbox"] {
        margin: 0;
        vertical-align: middle;
    }

    .clientgroups-actions {
        display: flex;
        flex-wrap: wrap;
        gap: 6px;
    }

    .clientgroups-actions .btn {
        flex: 1 1 auto;
        min-width: 96px;
        margin: 0;
    }

/* ===== Verplaatst uit settings/floriday/connection-test.php ===== */
        .floriday-conntest-page h2 { float: none; width: 100%; margin: 0 0 12px; }
        .floriday-conntest-page .ct-muted { color: #666; }
        .floriday-conntest-page .ct-danger { color: #b91c1c; }
        .floriday-conntest-page #ct-controls { display: flex; gap: 12px; flex-wrap: wrap; align-items: flex-end; margin-bottom: 16px; }
        .floriday-conntest-page #ct-controls label { display: flex; flex-direction: column; font-size: 12px; color: #555; gap: 4px; }
        .floriday-conntest-page #ct-controls input {
            width: 130px; height: 34px; box-sizing: border-box; padding: 4px 8px;
            border: 1px solid #ccc; border-radius: 4px; background: #fbfbfb; font-size: 14px;
        }
        .floriday-conntest-page #ct-run {
            border: none; border-radius: 4px; color: #fff; background-color: #2b891a;
            height: 34px; padding: 0 16px; font-size: 14px; cursor: pointer;
        }
        .floriday-conntest-page #ct-run:hover { background-color: #236b15; }
        .floriday-conntest-page #ct-run[disabled] { opacity: .55; cursor: default; }
        .floriday-conntest-page #ct-meta { font-size: 12px; color: #555; margin-bottom: 14px; white-space: pre-wrap; }
        .floriday-conntest-page table.ct-table { width: 100%; border-collapse: collapse; font-size: 13px; margin-bottom: 18px; }
        .floriday-conntest-page table.ct-table th,
        .floriday-conntest-page table.ct-table td { padding: 7px 9px; border-bottom: 1px solid #ececec; text-align: left; vertical-align: top; }
        .floriday-conntest-page table.ct-table th { font-weight: 600; color: #fff; }
        .floriday-conntest-page .ct-ok { color: #2b891a; font-weight: 600; }
        .floriday-conntest-page .ct-fail { color: #b91c1c; font-weight: 600; }
        .floriday-conntest-page .ct-hint {
            background: #fff8e1; border: 1px solid #ffe082; border-radius: 8px;
            padding: 10px 12px; font-size: 13px; margin-bottom: 14px;
        }
        .floriday-conntest-page h3 { margin: 18px 0 8px; }
        .floriday-conntest-page pre {
            background: #1e1e1e; color: #e6e6e6; padding: 14px; border-radius: 8px;
            max-height: 40vh; overflow: auto; font-size: 12px; line-height: 1.45;
        }

/* ===== Verplaatst uit settings/floriday/index.php ===== */
        .cron-progress {
            width: 100%;
            height: 14px;
            background: #f1f1f1;
            border: 1px solid #ddd;
            border-radius: 8px;
            overflow: hidden;
        }
        .cron-progress-bar {
            height: 100%;
            width: 0%;
            background: #2e7d32;
            transition: width 0.3s ease;
        }
        .cron-progress-bar.indeterminate {
            width: 30%;
            animation: cron-progress-move 1.4s infinite linear;
        }
        @keyframes cron-progress-move {
            0% { transform: translateX(-100%); }
            100% { transform: translateX(300%); }
        }
        .cron-progress-text {
            font-size: 12px;
            color: #555;
            margin-top: 6px;
        }

/* ===== Verplaatst uit settings/floriday/probe.php ===== */
        .floriday-probe-page span { display: inline; float: none; width: auto; }
        .floriday-probe-page label { display: inline-block; float: none; width: auto; }
        .floriday-probe-page h2 { float: none; width: 100%; margin: 0 0 12px; }
        .floriday-probe-page .fp-muted { color: #666; }
        .floriday-probe-page .fp-danger { color: #b91c1c; }

        .floriday-probe-page #probe-controls { display: flex; gap: 12px; flex-wrap: wrap; align-items: flex-end; margin-bottom: 16px; }
        .floriday-probe-page #probe-controls label { display: flex; flex-direction: column; font-size: 12px; color: #555; gap: 4px; }
        .floriday-probe-page #probe-controls input {
            width: 130px; height: 34px; box-sizing: border-box; padding: 4px 8px;
            border: 1px solid #ccc; border-radius: 4px; background: #fbfbfb; font-size: 14px;
        }
        .floriday-probe-page #probe-run {
            border: none; border-radius: 4px; color: #fff; background-color: #2b891a;
            height: 34px; padding: 0 16px; font-size: 14px; cursor: pointer;
        }
        .floriday-probe-page #probe-run:hover { background-color: #236b15; }
        .floriday-probe-page #probe-run[disabled] { opacity: .55; cursor: default; }

        .floriday-probe-page #probe-meta { font-size: 12px; color: #555; margin-bottom: 10px; white-space: pre-wrap; }
        .floriday-probe-page table.probe-table { width: 100%; border-collapse: collapse; font-size: 13px; }
        .floriday-probe-page table.probe-table th,
        .floriday-probe-page table.probe-table td { padding: 7px 9px; border-bottom: 1px solid #ececec; text-align: left; vertical-align: top; }
        .floriday-probe-page table.probe-table th { font-weight: 600; color: #fff; }
        .floriday-probe-page table.probe-table tbody tr:not(.probe-norow) { cursor: pointer; }
        .floriday-probe-page table.probe-table tbody tr:not(.probe-norow):hover { background: #f4f8f3; }
        .floriday-probe-page .probe-status-ok { color: #2b891a; font-weight: 600; }
        .floriday-probe-page .probe-status-fail { color: #b91c1c; font-weight: 600; }
        .floriday-probe-page .probe-interesting { color: #1f6f8b; font-size: 12px; }
        .floriday-probe-page .probe-endpoint { font-family: ui-monospace, Menlo, Consolas, monospace; word-break: break-all; }
        .floriday-probe-page #probe-detail { margin-top: 14px; }
        .floriday-probe-page #probe-detail pre,
        .floriday-probe-page #probe-all-paths {
            background: #1e1e1e; color: #e6e6e6; padding: 14px; border-radius: 8px;
            max-height: 60vh; overflow: auto; font-size: 12px; line-height: 1.45;
        }
        .floriday-probe-page #probe-discovery h4 { margin-top: 18px; }
        .floriday-probe-page .probe-hint {
            background: #fff8e1; border: 1px solid #ffe082; border-radius: 8px;
            padding: 10px 12px; font-size: 13px; margin-bottom: 14px;
        }

/* ===== Verplaatst uit settings/floriday/selected-products.php ===== */
    .floriday-selected-products #table-stock {
        width: 100%;
        border-collapse: collapse;
    }
    .floriday-selected-products #table-stock th {
        position: sticky;
        top: 0;
        background: #2c2c2c;
        color: #fff;
        z-index: 1;
    }
    .floriday-selected-products #table-stock td,
    .floriday-selected-products #table-stock th {
        padding: 8px;
        vertical-align: top;
    }
    .floriday-selected-filters {
        align-items: end;
    }

/* ===== Verplaatst uit settings/push/index.php ===== */
    .pushgroups-page .header-whole {
        float: none;
        width: 100%;
        margin-bottom: 14px;
    }

    .pushgroups-page .header-whole p {
        max-width: 720px;
        color: #666;
        font-size: 13px;
        margin: 6px 0 0;
    }

    .pushgroups-page #result {
        overflow-x: auto;
    }

    .pushgroups-table {
        width: 100%;
        min-width: 640px;
        border-collapse: collapse;
        margin-top: 0;
    }

    .pushgroups-table th,
    .pushgroups-table td {
        padding: 8px 10px;
        text-align: left;
        vertical-align: middle;
        border-bottom: 1px solid #e6e6e6;
    }

    .pushgroups-table col.col-name {
        width: auto;
    }

    .pushgroups-table col.col-sort {
        width: 110px;
    }

    .pushgroups-table col.col-active {
        width: 70px;
    }

    .pushgroups-table col.col-count {
        width: 90px;
    }

    .pushgroups-table col.col-actions {
        width: 230px;
    }

    .pushgroups-table th.center,
    .pushgroups-table td.center {
        text-align: center;
    }

    .pushgroups-table tbody tr,
    .pushgroups-table tbody tr:nth-child(1n+3),
    .pushgroups-table tbody tr:nth-child(even) {
        background: #fff;
    }

    .pushgroups-table tbody tr:nth-child(even) {
        background: #fafafa;
    }

    .pushgroups-table input.form-control {
        width: 100%;
        margin: 0;
        box-sizing: border-box;
        height: 34px;
        padding: 4px 8px;
        border: 1px solid #ccc;
        border-radius: 4px;
        font-size: inherit;
    }

    .pushgroups-table input.pg-sort {
        width: 90px;
    }

    .pushgroups-table input[type="checkbox"] {
        margin: 0;
        vertical-align: middle;
    }

    .pushgroups-actions {
        display: flex;
        flex-wrap: wrap;
        gap: 6px;
    }

    .pushgroups-actions .btn {
        flex: 1 1 auto;
        min-width: 96px;
        margin: 0;
    }

/* ===== Verplaatst uit settings/statcodes/index.php ===== */
    .statcodes-page .header-whole {
        float: none;
        width: 100%;
        margin-bottom: 14px;
    }

    .statcodes-page .header-whole p {
        max-width: 760px;
        color: #666;
        font-size: 13px;
        margin: 6px 0 0;
    }

    .statcodes-page #result {
        overflow-x: auto;
    }

    .statcodes-table {
        width: 100%;
        min-width: 900px;
        border-collapse: collapse;
        margin-top: 0;
    }

    .statcodes-table th,
    .statcodes-table td {
        padding: 8px 10px;
        text-align: left;
        vertical-align: middle;
        border-bottom: 1px solid #e6e6e6;
    }

    .statcodes-table col.col-sort { width: 90px; }
    .statcodes-table col.col-code { width: 130px; }
    .statcodes-table col.col-label { width: 220px; }
    .statcodes-table col.col-keywords { width: auto; }
    .statcodes-table col.col-fallback { width: 80px; }
    .statcodes-table col.col-actions { width: 220px; }

    .statcodes-table th.center,
    .statcodes-table td.center {
        text-align: center;
    }

    .statcodes-table tbody tr:nth-child(even) {
        background: #fafafa;
    }

    .statcodes-table input.form-control {
        width: 100%;
        margin: 0;
        box-sizing: border-box;
        height: 34px;
        padding: 4px 8px;
        border: 1px solid #ccc;
        border-radius: 4px;
        font-size: inherit;
    }

    .statcodes-table input.sc-sort {
        width: 80px;
    }

    .statcodes-table input[type="checkbox"] {
        margin: 0;
        vertical-align: middle;
    }

    .statcodes-actions {
        display: flex;
        flex-wrap: wrap;
        gap: 6px;
    }

    .statcodes-actions .btn {
        flex: 1 1 auto;
        min-width: 96px;
        margin: 0;
    }

    .sc-keywords-cell {
        min-width: 260px;
    }

    .sc-keywords-list {
        display: flex;
        flex-wrap: wrap;
        gap: 6px;
        margin-bottom: 6px;
    }

    .sc-keyword-item {
        display: flex;
        align-items: center;
        gap: 2px;
    }

    .sc-keyword-item input.sc-keyword {
        width: 130px;
        margin: 0;
        box-sizing: border-box;
        height: 30px;
        padding: 4px 6px;
        border: 1px solid #ccc;
        border-radius: 4px;
        font-size: inherit;
    }

    .sc-keyword-remove {
        border: 1px solid #ccc;
        background: #fff;
        border-radius: 4px;
        height: 30px;
        width: 26px;
        line-height: 1;
        cursor: pointer;
        color: #a33;
    }

    .sc-keyword-remove:hover {
        background: #fdeaea;
    }

    button.sc-keyword-add {
        border: 1px dashed #999;
        background: #fff;
        border-radius: 4px;
        padding: 4px 10px;
        cursor: pointer;
        font-size: 12px;
    }

    button.sc-keyword-add:hover {
        background: #f2f2f2;
    }

/* ===== Verplaatst uit settings/webshop/index.php ===== */
    .webshop-theme-page .wsc-grid {
        /* .header-left (style.css) is float:left;width:40% -- zonder deze
           regels vloeit deze grid als normale content om die float heen en
           schuift alles naar rechts i.p.v. eronder de volle breedte te
           gebruiken. Zelfde patroon als .fields/.fieldsemailsettings elders. */
        float: left;
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        gap: 16px;
        margin-top: 10px;
    }

    .webshop-theme-page .wsc-card {
        flex: 1 1 300px;
        background: #fff;
        border: 1px solid #e6e6e6;
        border-radius: 10px;
        padding: 16px 18px;
    }

    .webshop-theme-page .wsc-card h3 {
        margin: 0 0 12px;
        font-size: 15px;
    }

    .webshop-theme-page .wsc-row {
        display: flex;
        flex-wrap: wrap;
        gap: 14px;
        margin-bottom: 10px;
    }

    .webshop-theme-page .wsc-swatch {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 5px;
        font-size: 11px;
        color: #666;
        font-weight: normal;
    }

    .webshop-theme-page .wsc-swatch input[type="color"] {
        width: 36px;
        height: 36px;
        padding: 0;
        border: 1px solid #ccc;
        border-radius: 8px;
        cursor: pointer;
        background: none;
    }

    .webshop-theme-page .wsc-check {
        display: flex;
        align-items: center;
        gap: 6px;
        font-weight: normal;
        font-size: 13px;
        margin: 4px 0;
    }

    .webshop-theme-page .wsc-check input {
        margin: 0;
    }

    .webshop-theme-page #stock_theme_fields,
    .webshop-theme-page #theme_light_fields,
    .webshop-theme-page #stock_theme_light_fields {
        opacity: .45;
        pointer-events: none;
    }

    .webshop-theme-page #stock_theme_fields.is-enabled,
    .webshop-theme-page #theme_light_fields.is-enabled,
    .webshop-theme-page #stock_theme_light_fields.is-enabled {
        opacity: 1;
        pointer-events: auto;
    }

    .webshop-theme-page .wsc-subsection {
        margin-top: 12px;
        padding-top: 12px;
        border-top: 1px dashed #e0e0e0;
    }

    .webshop-theme-page .wsc-field {
        display: flex;
        flex-direction: column;
        gap: 4px;
        font-weight: normal;
        font-size: 13px;
        margin-bottom: 10px;
        max-width: 220px;
    }

    .webshop-theme-page .wsc-label {
        display: block;
        font-size: 13px;
        color: #666;
        margin-bottom: 6px;
    }

    .webshop-theme-page .wsc-preview {
        display: block;
        border-radius: 8px;
        border: 1px solid #ddd;
        background: #f4f4f4;
        object-fit: cover;
    }

    .webshop-theme-page .wsc-preview--logo {
        max-width: 140px;
        max-height: 70px;
    }

    .webshop-theme-page .wsc-preview--bg {
        max-width: 220px;
        max-height: 100px;
        width: 220px;
        height: 100px;
    }

    .webshop-theme-page .wsc-upload {
        display: flex;
        align-items: center;
        gap: 6px;
        margin-top: 6px;
        flex-wrap: wrap;
    }

    .webshop-theme-page .wsc-upload input[type="file"] {
        max-width: 160px;
        font-size: 12px;
    }

    .webshop-theme-page .wsc-save {
        margin-top: 16px;
    }

/* ===== Verplaatst uit shopadmin/index.php ===== */
    .ws-filterbar {
        clear: both;
        background: #fff;
        border: 1px solid #e4e4e4;
        border-radius: 10px;
        padding: 12px 14px;
        margin-bottom: 16px;
        display: flex;
        flex-direction: column;
        gap: 10px;
    }
    .ws-filterbar-row {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-end;
        gap: 8px 12px;
    }
    .ws-filterbar label.ws-filter {
        display: flex;
        flex-direction: column;
        gap: 3px;
        width: auto;
        /* min-width: 160px;
        flex: 1 1 160px; */
    }
    .ws-filterbar label.ws-filter.ws-filter--sm {
        min-width: 110px;
        flex: 0 1 110px;
    }
    .ws-filterbar label.ws-filter.ws-filter--md {
        min-width: 190px;
        flex: 0 1 190px;
    }
    .ws-filterbar label.ws-filter span {
        display: block;
        float: none;
        font-size: 12px;
        font-weight: 700;
        color: #4b4b4b;
        white-space: nowrap;
    }
    .ws-filterbar label.ws-filter .form-control {
        width: 100%;
        min-height: 34px;
        padding: 0 10px;
        font-size: 13px;
    }
    .ws-filterbar-toggles {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-end;
        gap: 6px 10px;
        border-top: 1px solid #f0f0f0;
        padding-top: 10px;
    }
    .ws-filterbar-toggles label.ws-filter.ws-filter--inline {
        margin-right: 4px;
    }
    .ws-filterbar-toggles label.ws-toggle {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        width: auto;
        margin: 0;
        padding: 8px 12px;
        border: 1px solid #d5d5d5;
        border-radius: 999px;
        font-size: 12px;
        font-weight: 700;
        line-height: 1;
        color: #111;
        cursor: pointer;
        background: #f7f7f7;
        user-select: none;
        transition: background-color .15s ease, border-color .15s ease, color .15s ease;
    }
    .ws-filterbar-toggles label.ws-toggle:hover {
        background: #ececec;
        border-color: #c6c6c6;
    }
    .ws-filterbar-toggles label.ws-toggle input[type="checkbox"] {
        width: auto;
        margin: 0;
        accent-color: #2b891a;
    }
    .ws-filterbar-toggles label.ws-toggle.is-active {
        background: #eef6ea;
        border-color: #2b891a;
        color: #2b891a;
    }
    @media (max-width: 640px) {
        .ws-filterbar label.ws-filter,
        .ws-filterbar label.ws-filter.ws-filter--sm,
        .ws-filterbar label.ws-filter.ws-filter--md {
            flex: 1 1 100%;
            min-width: 0;
        }
    }
    .ws-lightbox {
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, 0.75);
        display: none;
        align-items: center;
        justify-content: center;
        z-index: 9999;
        padding: 24px;
    }
    .ws-lightbox.is-open {
        display: flex;
    }
    .ws-lightbox img {
        max-width: 92vw;
        max-height: 92vh;
        border-radius: 6px;
        box-shadow: 0 10px 40px rgba(0,0,0,0.5);
        background: #fff;
    }
    .ws-lightbox-close {
        position: fixed;
        top: 16px;
        right: 16px;
        color: #fff;
        font-size: 28px;
        line-height: 28px;
        cursor: pointer;
        z-index: 10000;
        user-select: none;
    }
    .ws-photo-thumb {
        cursor: zoom-in;
    }
    .ws-items-container #table-stock thead th {
        position: sticky;
        top: 0;
        z-index: 2;
        background: #2c2c2c;
    }
    .ws-sticky-head {
        position: fixed;
        top: 0;
        z-index: 999;
        background: #2c2c2c;
        box-shadow: 0 2px 6px rgba(0,0,0,0.08);
        display: none;
        overflow: hidden;
    }
    .ws-sticky-head table {
        border-collapse: collapse;
        width: 100%;
    }
    .ws-sticky-head th {
        border: 0px solid #ddd;
        padding: 6px 8px;
        font-size: 12px;
        background: #2c2c2c;
        text-align: left;
        white-space: normal;
    }
    .ws-table-scroll {
        overflow-x: auto;
        width: 100%;
    }
    .ws-table-scroll table {
        min-width: 1200px;
    }
    .ws-product-cell {
        min-width: 220px;
    }
    .ws-product-name {
        font-weight: 600;
        margin-bottom: 6px;
    }
    .ws-cat-disclosure {
        margin-top: 4px;
    }
    .ws-cat-disclosure summary {
        cursor: pointer;
        color: #10539e;
        font-size: 12px;
        user-select: none;
    }
    .ws-cat-disclosure[open] summary {
        margin-bottom: 8px;
    }
    .ws-cat-summary {
        color: #666;
        font-size: 11px;
        margin-left: 4px;
    }
    .ws-cat-panel {
        display: flex;
        flex-wrap: wrap;
        gap: 6px 10px;
        padding: 8px 10px;
        background: #f7f7f7;
        border: 1px solid #ddd;
        border-radius: 6px;
    }
    .ws-cat-option {
        display: inline-flex;
        align-items: center;
        gap: 5px;
        font-size: 12px;
        width: min(220px, 100%);
    }
    .ws-product-modal-content {
        width: min(520px, 92vw);
        max-height: 90vh;
        overflow-y: auto;
    }
    .ws-product-modal-content h3 {
        margin: 0 0 16px;
    }
    .ws-product-modal-content .ws-filter {
        display: flex;
        flex-direction: column;
        gap: 3px;
        margin-bottom: 12px;
        width: auto;
    }
    .ws-product-modal-content .ws-filter span {
        display: block;
        font-size: 12px;
        font-weight: 700;
        color: #4b4b4b;
    }
    .ws-product-modal-content .ws-filter .form-control {
        width: 100%;
        min-height: 34px;
        padding: 0 10px;
        font-size: 13px;
        border: 1px solid #d5d5d5;
        border-radius: 4px;
        box-sizing: border-box;
        background: #fff;
    }
    .ws-product-modal-content .ws-filter .form-control:focus {
        outline: none;
        border-color: #2b891a;
    }
    .ws-product-modal-content .ws-filter input[type="file"].form-control {
        min-height: auto;
        padding: 4px 0;
        border: none;
    }
    .ws-product-modal-content .ws-filterbar-row {
        align-items: flex-start;
    }
    .ws-product-modal-content .ws-filterbar-row .ws-filter {
        flex: 1 1 0;
        min-width: 0;
    }
    .ws-product-modal-content p.text-muted {
        font-size: 12px;
        color: #777;
    }
    .ws-product-modal-content label.ws-toggle {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        width: auto;
        margin: 0 0 14px;
        padding: 8px 12px;
        border: 1px solid #d5d5d5;
        border-radius: 999px;
        font-size: 12px;
        font-weight: 700;
        line-height: 1;
        color: #111;
        cursor: pointer;
        background: #f7f7f7;
    }
    .ws-product-modal-content label.ws-toggle input[type="checkbox"] {
        width: auto;
        margin: 0;
        accent-color: #2b891a;
    }
    .ws-product-modal-content .ws-form-error {
        color: #c0392b;
        font-size: 13px;
        margin: 0 0 10px;
    }
    .ws-product-cancel-btn {
        height: 35px;
        padding: 0 16px;
        color: #333;
        border-radius: 4px;
        border: 1px solid #d5d5d5;
        background-color: #f2f2f2;
        font-size: inherit;
        cursor: pointer;
    }
    .ws-product-cancel-btn:hover {
        background-color: #e6e6e6;
    }
    .ws-product-badge {
        display: inline-block;
        font-size: 11px;
        font-weight: bold;
        color: #fff;
        background: #7c3aed;
        border-radius: 4px;
        padding: 1px 6px;
        margin-left: 6px;
        vertical-align: middle;
    }
    .ws-product-edit-btn,
    .ws-product-delete-btn {
        height: 30px;
        padding: 0 8px;
        color: #fff;
        border-radius: 4px;
        border: none;
        font-size: small;
        margin-right: 4px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
    }
    .ws-product-edit-btn {
        background-color: #2b891a;
    }
    .ws-product-delete-btn {
        background-color: #c0392b;
    }
    .ws-locate-btn {
        height: 30px;
        padding: 0 10px;
        color: #333;
        border-radius: 4px;
        border: 1px solid #d5d5d5;
        background-color: #f2f2f2;
        font-size: small;
        white-space: nowrap;
        display: inline-flex;
        align-items: center;
        gap: 6px;
        cursor: pointer;
    }
    .ws-locate-btn:hover {
        background-color: #e6e6e6;
    }

/* ===== Verplaatst uit shopadmin/saleslist.php ===== */
    .saleslist-columns {
        display: flex;
        flex-wrap: wrap;
        gap: 20px;
        margin-top: 10px;
    }

    .saleslist-col {
        flex: 1 1 320px;
        min-width: 280px;
    }

    .saleslist-col h4 {
        margin: 0 0 8px;
    }

    .saleslist-check-list {
        background: #fff;
        border: 1px solid #e4e4e4;
        border-radius: 10px;
        padding: 10px 14px;
        max-height: 420px;
        overflow-y: auto;
    }

    .saleslist-check-row {
        display: flex;
        align-items: center;
        gap: 8px;
        padding: 6px 0;
        border-bottom: 1px solid #f2f2f2;
    }

    .saleslist-check-row:last-child {
        border-bottom: none;
    }

    .saleslist-check-row input {
        width: 16px;
        height: 16px;
        flex: 0 0 auto;
    }

    .saleslist-check-row label {
        width: auto;
        display: block;
        margin: 0;
        cursor: pointer;
    }

    .saleslist-check-row .saleslist-count {
        color: #999;
        font-size: 12px;
        margin-left: 6px;
    }

    .saleslist-check-row .saleslist-pricetype {
        color: #777;
        font-size: 12px;
        margin-left: 6px;
    }

/* ===== Verplaatst uit stock/changelog.php ===== */
    .stock-changelog.container { max-width: 1300px; width: 96%; margin: 0 auto; }
    .stock-changelog .table-wrap { margin-top: 12px; overflow: auto; max-height: 75vh; border: 1px solid #ddd; border-radius: 6px; }
    .stock-changelog table { border-collapse: collapse; width: 100%; }
    .stock-changelog th,
    .stock-changelog td { border-bottom: 1px solid #eee; padding: 6px 8px; font-size: 12px; vertical-align: top; }
    .stock-changelog th { background: #f5f5f5; text-align: left; position: sticky; top: 0; z-index: 2; }
    .stock-changelog td { background: #fff; }
    .stock-changelog .muted { color: #666; font-size: 12px; }
    .stock-changelog .warn { background: #fff4c2; padding: 10px 12px; border: 1px solid #e6d48f; border-radius: 6px; margin: 12px 0; }
    .stock-changelog .error { margin-top: 12px; padding: 10px 12px; background: #300; color: #fff; border-radius: 6px; }
    .stock-changelog .filters { display: flex; gap: 10px; align-items: end; flex-wrap: wrap; margin-top: 10px; }
    .stock-changelog .filters label { display: flex; flex-direction: column; gap: 4px; font-size: 12px; }
    .stock-changelog .filters select,
    .stock-changelog .filters input { height: 30px; border-radius: 4px; border: 1px solid #c9c9c9; background-color: #fbfbfb; font-size: 12px; padding: 2px 6px; }
    .stock-changelog .badge { display: inline-block; padding: 1px 6px; border-radius: 4px; font-size: 11px; font-weight: bold; }
    .stock-changelog .badge-insert { background: #063; color: #fff; }
    .stock-changelog .badge-update { background: #b58900; color: #fff; }
    .stock-changelog .badge-delete { background: #c0392b; color: #fff; }

/* ===== Verplaatst uit stock/client-map.php ===== */
    .cm-wrap {
        padding: 15px;
    }

    .cm-settings {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-end;
        gap: 14px;
        margin-bottom: 14px;
        padding: 12px 14px;
        background: #f5f5f5;
        border-radius: 6px;
    }

    .cm-settings label {
        display: flex;
        flex-direction: column;
        font-size: 12px;
        color: #555;
        gap: 3px;
    }

    .cm-geocode-bar {
        display: flex;
        align-items: center;
        gap: 10px;
        margin-bottom: 10px;
        font-size: 13px;
        color: #555;
    }

    .cm-layout {
        display: flex;
        gap: 14px;
        align-items: flex-start;
    }

    .cm-map-col {
        flex: 1 1 auto;
        min-width: 0;
    }

    #client-map {
        width: 100%;
        height: 620px;
        border-radius: 6px;
        border: 1px solid #ddd;
    }

    .cm-sidebar {
        flex: 0 0 300px;
        display: flex;
        flex-direction: column;
        gap: 14px;
    }

    .cm-panel {
        background: #f5f5f5;
        border-radius: 6px;
        padding: 12px 14px;
    }

    .cm-panel h3 {
        margin: 0 0 8px 0;
        font-size: 14px;
    }

    .cm-panel-sub {
        font-size: 11px;
        color: #777;
        margin-bottom: 8px;
    }

    .cm-rank-list {
        list-style: none;
        margin: 0;
        padding: 0;
        max-height: 220px;
        overflow-y: auto;
    }

    .cm-rank-item {
        display: flex;
        justify-content: space-between;
        gap: 8px;
        padding: 4px 2px;
        font-size: 12px;
        cursor: pointer;
        border-bottom: 1px solid #e8e8e8;
    }

    .cm-rank-item:hover {
        background: #ebebeb;
    }

    .cm-rank-name {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .cm-rank-value {
        flex: 0 0 auto;
        font-weight: 600;
        white-space: nowrap;
    }

    .cm-trend-up {
        color: #1d8a1d;
    }

    .cm-trend-down {
        color: #c0392b;
    }

    .cm-route-stops {
        list-style: none;
        margin: 8px 0 0 0;
        padding: 0;
        max-height: 220px;
        overflow-y: auto;
        font-size: 12px;
    }

    .cm-route-stops li {
        display: flex;
        align-items: center;
        gap: 6px;
        padding: 3px 0;
        cursor: pointer;
    }

    .cm-route-stops li:hover {
        text-decoration: underline;
    }

    .cm-route-stop-num {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 18px;
        height: 18px;
        border-radius: 50%;
        background: #2c891b;
        color: #fff;
        font-size: 10px;
        flex: 0 0 auto;
    }

    .cm-route-stats {
        font-size: 12px;
        color: #444;
        margin-top: 8px;
    }

    .cm-route-badge {
        background: #2c891b;
        color: #fff;
        border: 2px solid #fff;
        border-radius: 50%;
        width: 22px;
        height: 22px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 11px;
        font-weight: bold;
        box-shadow: 0 1px 3px rgba(0,0,0,0.4);
    }

    /* style.css heeft elders een globale "svg { height: 80px }" (voor kleine
       UI-icoontjes). Leaflet tekent de klant-stippen in een eigen SVG-laag die
       normaal de hele kaart bedekt; zonder deze override wordt die laag
       teruggeknepen tot 80px en lijken alle puntjes klein bovenin de kaart te
       staan. Tegels gebruiken geen SVG en zijn dus niet geraakt. */
    #client-map svg {
        width: auto !important;
        height: auto !important;
    }

    .cm-legend {
        margin-top: 10px;
        display: flex;
        align-items: center;
        gap: 8px;
        font-size: 12px;
        color: #555;
    }

    .cm-legend-bar {
        width: 180px;
        height: 10px;
        border-radius: 5px;
        background: linear-gradient(to right, hsl(0,70%,45%), hsl(60,70%,45%), hsl(120,70%,45%));
    }

    .cm-legend-dot {
        display: inline-block;
        width: 10px;
        height: 10px;
        border-radius: 50%;
        background: #999999;
        margin-right: 4px;
    }

    .cm-popup h4 {
        margin: 0 0 4px 0;
    }

    .cm-popup .cm-popup-address {
        color: #666;
        font-size: 12px;
        margin-bottom: 6px;
    }

    .cm-popup table {
        font-size: 12px;
        margin-bottom: 6px;
    }

    .cm-popup table td {
        padding: 1px 6px 1px 0;
    }

    .cm-route-btn {
        background-color: #2c891b;
        color: #fff;
        border: none;
        border-radius: 4px;
        padding: 5px 10px;
        font-size: 12px;
        cursor: pointer;
    }

    .cm-route-btn:disabled {
        opacity: 0.6;
        cursor: wait;
    }

/* ===== Verplaatst uit stock/dashboard.php ===== */
    .dash-mode-toggle {
        display: inline-flex;
        gap: 0;
        margin: 12px 0;
        border-radius: 8px;
        overflow: hidden;
        border: 1px solid #d7d7d7;
    }
    .dash-mode-btn {
        appearance: none;
        border: none;
        background: #f0f0f0;
        color: #5a5a5a;
        font-size: 13px;
        font-weight: 600;
        padding: 8px 18px;
        cursor: pointer;
        transition: background .15s, color .15s;
    }
    .dash-mode-btn + .dash-mode-btn {
        border-left: 1px solid #d7d7d7;
    }
    .dash-mode-btn:hover {
        background: #e6e6e6;
    }
    .dash-mode-btn.active {
        background: #2b891a;
        color: #fff;
    }
    .batch-nav {
        display: flex;
        gap: 4px;
    }
    .batch-nav .week-nav-button {
        width: 42px;
        height: 42px;
        flex: 0 0 42px;
        border-radius: 10px;
        font-size: 18px;
        color: #2b891a;
        font-weight: 700;
    }
    .batch-nav .week-nav-button:disabled {
        opacity: .35;
        cursor: default;
    }
    .sales-badge { display:inline-block; padding:1px 7px; border-radius:10px; background:#2b891a; color:#fff; font-size:.72em; vertical-align:middle; }

    /* Consistente verticale ritmiek tussen de filterblokken en hun rijen */
    .fields.mode-batch,
    .stock-report-periods.mode-period,
    .dashboard-filters {
        row-gap: 18px;
        column-gap: 12px;
        margin-bottom: 18px;
        align-items: end;
    }
    .fields.mode-batch { margin-top: 4px; }
    .dashboard-filters { margin-top: 2px; }
    label.labeloverzicht { gap: 7px; }

/* ===== Verplaatst uit stock/distribute-report.php ===== */
    .dr-table {
        width: 100%;
        border-collapse: collapse;
        margin-top: 15px;
        font-size: 13px;
    }

    .dr-table th,
    .dr-table td {
        border: 1px solid #ddd;
        padding: 6px 8px;
        text-align: left;
    }

    .dr-table thead th {
        background: #2c891b;
        color: #fff;
        position: sticky;
        top: 0;
    }

    .dr-table .dr-supplier-row td {
        background: #eef0f2;
        font-weight: 700;
        font-size: 14px;
    }

    .dr-table td.dr-num,
    .dr-table th.dr-num {
        text-align: right;
        white-space: nowrap;
    }

    .dr-table .dr-route-col {
        width: 40px;
    }

    .dr-legend {
        display: flex;
        flex-wrap: wrap;
        gap: 14px;
        font-size: 12px;
        color: #555;
        margin: 8px 0;
    }

    .dr-toolbar {
        display: flex;
        align-items: center;
        gap: 12px;
        margin: 10px 0;
    }

    #dr_download_btn {
        background-image: linear-gradient(#2c891b, #236b15);
        color: #fff;
        border: 0;
        border-radius: 8px;
        padding: 10px 18px;
        font-weight: 600;
        cursor: pointer;
    }

    #dr_download_btn:disabled {
        background-image: linear-gradient(#9aa0a6, #7a8086);
        cursor: default;
    }

/* ===== Verplaatst uit stock/import-registry.php ===== */
    .import-registry.container { max-width: 1200px; width: 96%; margin: 0 auto; }
    .import-registry .table-wrap { margin-top: 12px; overflow: auto; max-height: 70vh; border: 1px solid #ddd; border-radius: 6px; }
    .import-registry table { border-collapse: collapse; width: 100%; }
    .import-registry th,
    .import-registry td { border-bottom: 1px solid #eee; padding: 6px 8px; font-size: 12px; }
    .import-registry th { background: #f5f5f5; text-align: left; position: sticky; top: 0; z-index: 2; }
    .import-registry td { background: #fff; }
    .import-registry .muted { color: #666; font-size: 12px; }
    .import-registry .warn { background: #fff4c2; padding: 10px 12px; border: 1px solid #e6d48f; border-radius: 6px; margin-top: 12px; }
    .import-registry .success { margin-top: 12px; padding: 10px 12px; background: #063; color: #fff; border-radius: 6px; }
    .import-registry .error { margin-top: 12px; padding: 10px 12px; background: #300; color: #fff; border-radius: 6px; }
    .import-registry .btn { display: inline-block; padding: 6px 10px; border-radius: 4px; text-decoration: none; font-size: 12px; }
    .import-registry .btn-danger { background: #c0392b; color: #fff; border: none; cursor: pointer; }
    .import-registry .btn-ghost { border: 1px solid #ccc; color: #333; background: #fafafa; }
    .import-registry .date-row td { background: #f0f0f0; font-weight: bold; }
    .import-registry .key-cell { word-break: break-all; }
    .import-registry th:last-child,
    .import-registry td:last-child { width: 120px; text-align: center; }
    .import-registry select {
        height: 30px;
        border-radius: 4px;
        border: 1px solid #c9c9c9;
        background-color: #fbfbfb;
        font-size: 12px;
        padding: 2px 6px;
    }

/* ===== Verplaatst uit stock/import.php ===== */
/* ===== From stock/import.php (scoped under #floridayImportPage) ===== */
#floridayImportPage .row {
    display: flex;
            gap: 16px;
            flex-wrap: wrap;
            align-items: end;
}

#floridayImportPage tr:first-child {
    background-color: #f4f4f4 !important;
            color: #000000 !important;
}

#floridayImportPage label {
    display: block;
            font-size: 13px;
            margin-bottom: 6px;
            width: 100%;
}

#floridayImportPage input {
    height: 30px;
            border-radius: 4px;
            border: 1px solid #c9c9c9;
            width: 90%;
            box-sizing: border-box;
            background-color: #fbfbfb;
            font-size: small;
            padding-left: 5px;
}

#floridayImportPage button {
    margin-bottom: 0px;
            padding-right: 10px;
            padding-left: 10px;
            margin-top: 0px;
            height: 35px;
            color: #fff;
            border-radius: 4px;
            border: none;
            background-color: #2b891a;
            font-size: inherit;
}

#floridayImportPage table {
    border-collapse: collapse;
            width: 100%;
            margin-top: 16px;
}

#floridayImportPage #dist_table th:nth-child(1),
#floridayImportPage #dist_table td:nth-child(1) {
    min-width: 260px;
}

#floridayImportPage #dist_table th:nth-child(2),
#floridayImportPage #dist_table td:nth-child(2) {
    min-width: 140px;
}

#floridayImportPage #dist_table th:nth-child(3),
#floridayImportPage #dist_table td:nth-child(3),
#floridayImportPage #dist_table th:nth-child(4),
#floridayImportPage #dist_table td:nth-child(4),
#floridayImportPage #dist_table th:nth-child(5),
#floridayImportPage #dist_table td:nth-child(5),
#floridayImportPage #dist_table th:nth-child(6),
#floridayImportPage #dist_table td:nth-child(6),
#floridayImportPage #dist_table th:nth-child(7),
#floridayImportPage #dist_table td:nth-child(7),
#floridayImportPage #dist_table th:nth-child(8),
#floridayImportPage #dist_table td:nth-child(8) {
    min-width: 80px;
}

#floridayImportPage #dist_table td:nth-child(1) input {
    width: 100%;
            box-sizing: border-box;
}

#floridayImportPage #dist_table td:nth-child(3) input,
#floridayImportPage #dist_table td:nth-child(4) input,
#floridayImportPage #dist_table td:nth-child(5) input,
#floridayImportPage #dist_table td:nth-child(6) input,
#floridayImportPage #dist_table td:nth-child(7) input {
    width: 80px;
}

#floridayImportPage th,
#floridayImportPage td {
    border: 1px solid #ddd;
            padding: 5px;
            font-size: 12px;
}

#floridayImportPage th {
    background: #f5f5f5;
            text-align: left;
            position: sticky;
            top: 0;
            z-index: 1;
}

#floridayImportPage .error {
    margin-top: 16px;
            padding: 12px;
            background: #300;
            color: #fff;
}

#floridayImportPage .success {
    margin-top: 16px;
            padding: 12px;
            background: #063;
            color: #fff;
}

#floridayImportPage .muted {
    color: #666;
            font-size: 13px;
            margin-top: 8px;
}

#floridayImportPage .wrap {
    word-break: break-all;
}

#floridayImportPage .pill {
    display: inline-block;
            padding: 2px 8px;
            border: 1px solid #ccc;
            border-radius: 999px;
            font-size: 12px;
}

#floridayImportPage tr.group-dup {
    opacity: .35;
}

#floridayImportPage tr.detail-row {
    display: none;
            background: #fafafa;
}

#floridayImportPage .badge {
    text-align: center;
            padding: 2px 8px;
            border: 1px solid #ccc;
            border-radius: 999px;
            font-size: 12px;
}

#floridayImportPage .badge.red {
    border-color: #c33;
            color: #c33;
}

#floridayImportPage .small {
    font-size: 12px;
            color: #555;
}

#floridayImportPage .toggle {
    padding: 1px 5px;
            height: 17px;
            padding-bottom: 5px;
}

#floridayImportPage .gridbox {
    border: 1px solid #ddd;
            padding: 12px;
            border-radius: 8px;
            margin-top: 16px;
}

#floridayImportPage .cellbox {
    display: flex;
            gap: 6px;
            align-items: center;
            justify-content: center;
            width: min-content;
}

#floridayImportPage .cellbox input {
    min-width: 55px;
}

#floridayImportPage .progressbox {
    margin-top: 16px;
            padding: 12px;
            background: #111;
            color: #fff;
            border-radius: 4px;
            display: none;
}

#floridayImportPage .progressbox .title {
    font-weight: bold;
            margin-bottom: 8px;
}

#floridayImportPage .progressbar {
    width: 100%;
            height: 12px;
            background: rgba(255, 255, 255, .15);
            border-radius: 999px;
            overflow: hidden;
}

#floridayImportPage .progressbar>div {
    height: 100%;
            width: 0%;
            background: #2b891a;
            transition: width .2s ease;
}

#floridayImportPage .progressmeta {
    margin-top: 8px;
            font-size: 12px;
            color: #ddd;
            display: flex;
            justify-content: space-between;
            gap: 12px;
            flex-wrap: wrap;
}

#floridayImportPage {
    max-width: 1800px;
            width: 98%;
}

/* ===== Verplaatst uit stock/sticker-designer.php ===== */
    .sd-wrap { max-width: 1200px; }
    .sd-topbar { display: flex; flex-wrap: wrap; align-items: end; gap: 14px; margin-bottom: 10px; }
    .sd-field { display: flex; flex-direction: column; font-size: 12px; }
    .sd-field span { margin-bottom: 2px; color: #555; }
    .sd-field input, .sd-field select { width: 110px; }
    #sd-stock-sub { width: 220px; }
    .sd-copy-row { margin-top: -4px; }
    .sd-copy-select { width: 220px; }
    label#sd-prop-shortcode-wrap {
    width: 100%;
}
    .sd-tabs { display: flex; gap: 4px; }
    .sd-tab { padding: 6px 12px; border: 1px solid #ccc; border-radius: 4px; background: #f5f5f5; cursor: pointer; color: #333; text-decoration: none; }
    .sd-tab.active { background: #337ab7; color: #fff; border-color: #337ab7; }
    .sd-warning { background: #fcf8e3; border: 1px solid #faebcc; color: #8a6d3b; padding: 10px; border-radius: 4px; margin-bottom: 10px; }
    .sd-body { display: flex; gap: 16px; align-items: flex-start; }
    .sd-palette { width: 160px; flex: 0 0 160px; }
    .sd-palette .btn-block { margin-bottom: 6px; text-align: left; }
    .sd-hint { font-size: 11px; color: #888; }
    .sd-canvas-wrap { flex: 1; overflow: auto; padding: 20px; background: #eee; border-radius: 4px; }
    .sd-canvas { position: relative; background: #fff; box-shadow: 0 0 0 1px #999; margin: auto; overflow: hidden; }
    .sd-el { position: absolute; box-sizing: border-box; border: 1px dashed #999; background: rgba(51,122,183,0.06); overflow: hidden; cursor: move; font-size: 10px; }
    .sd-el.selected { border: 2px solid #337ab7; background: rgba(51,122,183,0.15); }
    .sd-el .sd-el-label { pointer-events: none; padding: 2px; word-break: break-word; width: 100%; height: 100%; }
    .sd-el.sd-el-image { background-size: contain; background-repeat: no-repeat; background-position: center; }
    .sd-el.sd-el-qr .sd-el-label, .sd-el.sd-el-barcode .sd-el-label { display: flex; align-items: center; justify-content: center; text-align: center; }
    .sd-props { width: 260px; flex: 0 0 260px; }
    .sd-field-block { display: block; margin-bottom: 10px; font-size: 12px; }
    .sd-field-block span { display: block; margin-bottom: 3px; color: #555; }
    .sd-field-block select, .sd-field-block input { width: 100%; }
    .sd-field-row { display: flex; gap: 8px; margin-bottom: 10px; flex-wrap: wrap; }
    .sd-field-row .sd-field input, .sd-field-row .sd-field select { width: 100%; }
    .sd-checkbox { align-self: center; font-size: 12px; }
    .ui-resizable-se { width: 12px; height: 12px; right: -2px; bottom: -2px; background: #337ab7; }
    /* .form-control is niet gestyled in deze app (geen bootstrap-css geladen);
       hier zelf dezelfde look als de rest van de site (.productform.form-control). */
    .sd-wrap input[type="number"],
    .sd-wrap input[type="text"] {
        height: 30px; box-sizing: border-box;
        border-radius: 4px; border: 1px solid #c9c9c9;
        background-color: #fbfbfb; font-size: small; padding-left: 5px;
    }
    .sd-wrap textarea {
        box-sizing: border-box;
        border-radius: 4px; border: 1px solid #c9c9c9;
        background-color: #fbfbfb; font-size: small; padding: 5px;
        resize: vertical;
    }
    .sd-wrap select { font-size: small; }
    .sd-content-area { min-height: 120px; font-family: inherit; }
    .sd-hint code { background: #eee; border-radius: 3px; padding: 1px 4px; font-size: 11px; }
    .sd-btn-outline {
        margin-bottom: 5px; margin-top: 5px; height: 35px;
        padding-right: 10px; padding-left: 10px;
        border-radius: 4px; border: 1px solid #999; background-color: #fff; color: #333;
        font-size: inherit; cursor: pointer;
    }
    .sd-btn-outline:hover { background-color: #f2f2f2; }
    .sd-btn-small { height: auto; padding: 5px 8px; font-size: 12px; margin: 0; }

/* ===== Verplaatst uit stock/sticker-selections.php ===== */
        .sticker-selections-page span { display: inline; float: none; width: auto; }
        .sticker-selections-page h2 { float: none; width: 100%; margin: 0 0 4px; }
        .sticker-selections-page .ssel-intro { color: #666; font-size: 13px; margin: 0 0 16px; }

        .sticker-selections-page .ssel-scroll { overflow-x: auto; }
        .sticker-selections-page table.sel-table { width: 100%; min-width: 720px; border-collapse: collapse; font-size: 13px; }
        .sticker-selections-page table.sel-table th,
        .sticker-selections-page table.sel-table td { padding: 9px 10px; border-bottom: 1px solid #ececec; text-align: left; vertical-align: middle; }
        .sticker-selections-page table.sel-table th { font-weight: 600; color: #fff; }
        .sticker-selections-page table.sel-table tbody tr:nth-child(even) { background: #fafafa; }
        .sticker-selections-page table.sel-table td.num,
        .sticker-selections-page table.sel-table th.num { text-align: right; white-space: nowrap; }

        .sticker-selections-page .sel-open { color: #2b891a; font-weight: 600; }
        .sticker-selections-page .sel-printed { color: #888; }

        .sticker-selections-page .ssel-btn {
            display: inline-block; border: none; border-radius: 4px; color: #fff;
            padding: 7px 14px; font-size: 13px; line-height: 1; cursor: pointer; text-decoration: none;
        }
        .sticker-selections-page .ssel-btn--print { background-color: #2b891a; }
        .sticker-selections-page .ssel-btn--print:hover { background-color: #236b15; }
        .sticker-selections-page .ssel-btn--del { background-color: #b91c1c; margin-left: 6px; }
        .sticker-selections-page .ssel-btn--del:hover { background-color: #991616; }

/* ===== Verplaatst uit stock/stock-reports.php ===== */
    #modalStockSoldCustomers.orderprocess-modal-wrap {
        background: rgba(17, 20, 24, 0.55);
        -webkit-backdrop-filter: blur(2px);
        backdrop-filter: blur(2px);
    }

    #modalStockSoldCustomers .orderprocess-modal {
        padding: 0;
        max-width: 480px;
        border-radius: 12px;
        overflow: hidden;
        box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
    }

    #modalStockSoldCustomers .orderprocess-modal-header {
        margin: 0;
        padding: 16px 18px;
        font-size: 16px;
        font-weight: 700;
        color: #1c2430;
        border-bottom: 1px solid #ececf0;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    #modalStockSoldCustomers .orderprocess-modal-header i {
        color: #2b891a;
        margin-right: 8px;
    }

    #modalStockSoldCustomers .stock-sold-customers-close {
        all: unset;
        cursor: pointer;
        width: 30px;
        height: 30px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 6px;
        font-size: 20px;
        line-height: 1;
        color: #8a8f98;
    }

    #modalStockSoldCustomers .orderprocess-modal-header .stock-sold-customers-close:hover {
        background: #f0f1f4;
        color: #1c2430;
    }

    #modalStockSoldCustomers .orderprocess-modal-body {
        padding: 12px 18px 16px;
        max-height: 60vh;
        overflow-y: auto;
    }

    #modalStockSoldCustomers .stock-customer-row {
        display: flex;
        align-items: center;
        gap: 12px;
        padding: 10px 12px;
        border: 1px solid #e3e4e8;
        border-radius: 8px;
        background: #f7f8fa;
        margin-bottom: 8px;
    }

    #modalStockSoldCustomers .stock-customer-row:last-child {
        margin-bottom: 0;
    }

    #modalStockSoldCustomers .stock-customer-icon {
        flex: 0 0 auto;
        width: 34px;
        height: 34px;
        border-radius: 50%;
        background: #2b891a;
        color: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 14px;
    }

    #modalStockSoldCustomers .stock-customer-info {
        flex: 1 1 auto;
        min-width: 0;
    }

    #modalStockSoldCustomers .stock-customer-name {
        font-weight: 600;
        color: #1c2430;
        font-size: 13px;
    }

    #modalStockSoldCustomers .stock-customer-meta {
        display: block;
        margin-top: 2px;
        font-size: 13px;
        color: #5a6068;
    }

    #modalStockSoldCustomers .text-muted {
        display: inline-block;
        color: #8a8f98;
        font-size: 13px;
        padding: 4px 2px;
    }

    #modalStockSoldCustomers .orderprocess-modal-actions {
        margin: 0;
        padding: 14px 18px;
        border-top: 1px solid #ececf0;
        background: #fafafb;
    }

    #modalStockSoldCustomers .orderprocess-modal-actions .btn {
        height: 38px;
        padding: 0 18px;
        border-radius: 8px;
        border: 1px solid #d3d5da;
        background: #fff;
        color: #3a3f47;
        font-size: 14px;
        font-weight: 600;
        cursor: pointer;
    }

    #modalStockSoldCustomers .orderprocess-modal-actions .btn:hover {
        background: #f0f1f4;
    }

/* ===== Verplaatst uit stock/stock-settings.php ===== */
    .btn-sticker-designer {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 35px;
        height: 35px;
        padding: 0;
        border: none;
        border-radius: 4px;
        background-color: #6f42c1;
        color: #fff;
        font-size: 13px;
        cursor: pointer;
    }
    .btn-sticker-designer:hover {
        background-color: #5a349a;
    }

/* ===== Verplaatst uit stock/stock.php ===== */
    #modalReservePush.orderprocess-modal-wrap {
        background: rgba(17, 20, 24, 0.55);
        padding: 16px;
        -webkit-backdrop-filter: blur(2px);
        backdrop-filter: blur(2px);
    }

    #modalReservePush .orderprocess-modal {
        width: 480px;
        max-width: 100%;
        max-height: 86vh;
        padding: 0;
        display: flex;
        flex-direction: column;
        border-radius: 12px;
        box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
        overflow: hidden;
    }

    #modalReservePush .orderprocess-modal-header {
        margin: 0;
        padding: 16px 18px;
        font-size: 16px;
        font-weight: 700;
        color: #1c2430;
        border-bottom: 1px solid #ececf0;
    }

    #modalReservePush .reservepush-close {
        all: unset;
        cursor: pointer;
        width: 30px;
        height: 30px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 6px;
        font-size: 20px;
        line-height: 1;
        color: #8a8f98;
    }

    #modalReservePush .reservepush-close:hover {
        background: #f0f1f4;
        color: #1c2430;
    }

    #modalReservePush .orderprocess-modal-body {
        overflow-y: auto;
        flex: 1 1 auto;
        padding: 16px 18px;
    }

    #modalReservePush .reservepush-all-row {
        display: flex;
        align-items: center;
        gap: 10px;
        font-weight: 600;
        color: #1c2430;
        margin: 0;
        padding: 12px 14px;
        border: 1px solid #e3e4e8;
        border-radius: 8px;
        background: #f7f8fa;
        cursor: pointer;
    }

    #modalReservePush .reservepush-all-row:hover {
        border-color: #cfd1d6;
    }

    #modalReservePush #reservepush-scope {
        margin-top: 16px;
    }

    #modalReservePush .reservepush-section + .reservepush-section {
        margin-top: 18px;
    }

    #modalReservePush .reservepush-section-title {
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 0.06em;
        text-transform: uppercase;
        color: #8a8f98;
        margin-bottom: 8px;
    }

    #modalReservePush .reservepush-list label {
        display: flex;
        align-items: center;
        gap: 10px;
        margin: 0;
        padding: 7px 8px;
        border-radius: 6px;
        font-weight: 400;
        color: #2b2f36;
        cursor: pointer;
    }

    #modalReservePush .reservepush-list label:hover {
        background: #f3f5f7;
    }

    #modalReservePush .reservepush-list input[type="checkbox"] {
        flex: 0 0 auto;
    }

    #modalReservePush #reservepush-client-filter {
        width: 100%;
        box-sizing: border-box;
        height: 36px;
        padding: 6px 10px;
        border: 1px solid #d3d5da;
        border-radius: 7px;
        margin-bottom: 8px;
        font-size: 14px;
        outline: none;
    }

    #modalReservePush #reservepush-client-filter:focus {
        border-color: #2b891a;
        box-shadow: 0 0 0 3px rgba(43, 137, 26, 0.15);
    }

    #modalReservePush #reservepush-clients {
        max-height: 220px;
        overflow-y: auto;
        border: 1px solid #e3e4e8;
        border-radius: 8px;
        padding: 6px;
    }

    #modalReservePush .text-muted {
        display: inline-block;
        color: #8a8f98;
        font-size: 12px;
        padding: 4px 2px;
    }

    #modalReservePush .orderprocess-modal-actions {
        margin: 0;
        padding: 14px 18px;
        border-top: 1px solid #ececf0;
        background: #fafafb;
    }

    #modalReservePush .orderprocess-modal-actions .btn {
        height: 38px;
        padding: 0 18px;
        border-radius: 8px;
        border: 1px solid transparent;
        font-size: 14px;
        font-weight: 600;
        cursor: pointer;
    }

    #modalReservePush .orderprocess-modal-actions .btn-success {
        background-color: #2b891a;
        color: #fff;
    }

    #modalReservePush .orderprocess-modal-actions .btn-success:hover {
        background-color: #256f16;
    }

    #modalReservePush .orderprocess-modal-actions .btn-danger {
        background-color: #fff;
        border-color: #d3d5da;
        color: #3a3f47;
    }

    #modalReservePush .orderprocess-modal-actions .btn-danger:hover {
        background-color: #f0f1f4;
    }

    #modalReservePush .orderprocess-modal-actions .btn[disabled] {
        opacity: 0.55;
        cursor: default;
    }

/* ===== Verplaatst uit stock/stock.php ===== */
    #modalTransferRemaining.orderprocess-modal-wrap {
        background: rgba(17, 20, 24, 0.55);
        padding: 16px;
        -webkit-backdrop-filter: blur(2px);
        backdrop-filter: blur(2px);
    }

    #modalTransferRemaining .orderprocess-modal {
        width: 640px;
        max-width: 100%;
        max-height: 86vh;
        padding: 0;
        display: flex;
        flex-direction: column;
        border-radius: 12px;
        box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
        overflow: hidden;
    }

    #modalTransferRemaining .orderprocess-modal-header {
        margin: 0;
        padding: 16px 18px;
        font-size: 16px;
        font-weight: 700;
        color: #1c2430;
        border-bottom: 1px solid #ececf0;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    #modalTransferRemaining .transferremaining-close {
        all: unset;
        cursor: pointer;
        width: 30px;
        height: 30px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 6px;
        font-size: 20px;
        line-height: 1;
        color: #8a8f98;
    }

    #modalTransferRemaining .transferremaining-close:hover {
        background: #f0f1f4;
        color: #1c2430;
    }

    #modalTransferRemaining .orderprocess-modal-body {
        overflow-y: auto;
        flex: 1 1 auto;
        padding: 16px 18px;
    }

    #modalTransferRemaining .transferremaining-target {
        margin-bottom: 16px;
    }

    #modalTransferRemaining .transferremaining-target label {
        display: block;
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 0.06em;
        text-transform: uppercase;
        color: #8a8f98;
        margin-bottom: 6px;
    }

    #modalTransferRemaining .transferremaining-target select {
        width: 100%;
        box-sizing: border-box;
        height: 38px;
        padding: 6px 10px;
        border: 1px solid #d3d5da;
        border-radius: 7px;
        font-size: 14px;
    }

    #modalTransferRemaining table.transferremaining-list {
        width: 100%;
        border-collapse: collapse;
        font-size: 13px;
    }

    #modalTransferRemaining table.transferremaining-list th,
    #modalTransferRemaining table.transferremaining-list td {
        padding: 6px 8px;
        border-bottom: 1px solid #ececf0;
        text-align: left;
    }

    #modalTransferRemaining table.transferremaining-list th.num,
    #modalTransferRemaining table.transferremaining-list td.num {
        text-align: right;
        white-space: nowrap;
    }

    #modalTransferRemaining table.transferremaining-list input[type="number"] {
        width: 70px;
        box-sizing: border-box;
        height: 30px;
        padding: 4px 6px;
        border: 1px solid #d3d5da;
        border-radius: 6px;
        text-align: right;
    }

    #modalTransferRemaining .transferremaining-allrow {
        display: flex;
        align-items: center;
        gap: 8px;
        margin: 8px 0 4px;
        font-weight: 600;
        color: #1c2430;
    }

    #modalTransferRemaining .text-muted {
        display: inline-block;
        color: #8a8f98;
        font-size: 12px;
        padding: 4px 2px;
    }

    #modalTransferRemaining .orderprocess-modal-actions {
        margin: 0;
        padding: 14px 18px;
        border-top: 1px solid #ececf0;
        background: #fafafb;
        display: flex;
        justify-content: flex-end;
        gap: 10px;
    }

    #modalTransferRemaining .orderprocess-modal-actions .btn {
        height: 38px;
        padding: 0 18px;
        border-radius: 8px;
        border: 1px solid transparent;
        font-size: 14px;
        font-weight: 600;
        cursor: pointer;
    }

    #modalTransferRemaining .orderprocess-modal-actions .btn-success {
        background-color: #2b891a;
        color: #fff;
    }

    #modalTransferRemaining .orderprocess-modal-actions .btn-success:hover {
        background-color: #256f16;
    }

    #modalTransferRemaining .orderprocess-modal-actions .btn-danger {
        background-color: #fff;
        border-color: #d3d5da;
        color: #3a3f47;
    }

    #modalTransferRemaining .orderprocess-modal-actions .btn[disabled] {
        opacity: 0.55;
        cursor: default;
    }

/* ===== Verplaatst uit stock/stock.php en stock/distribute.php (dynamisch imageModal, was dubbel) ===== */
                #imageModal .ws-image-thumbs { display:flex; flex-wrap:wrap; gap:8px; justify-content:center; margin:10px 0 0; touch-action:none; }
                #imageModal .ws-image-thumb { width:64px; height:64px; border-radius:8px; border:1px solid #ddd; overflow:hidden; cursor:grab; background:#f7f7f7; }
                #imageModal .ws-image-thumb.is-active { outline:2px solid #2b891a; outline-offset:1px; }
                #imageModal .ws-image-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
                #imageModal .ws-image-thumb.is-dragging { opacity:0.6; cursor:grabbing; }

/* ===== Verplaatst uit webshop/login.php (statisch deel; themakleuren blijven inline, want per-klant dynamisch) ===== */
.login-wrapper .btn-primary {
    background: linear-gradient(135deg, var(--login-brand), var(--login-brand2));
    border-color: var(--login-brand);
}

/* Prijsklasse-badge naast klantnaam in orders/order.php, zie migratie
   2026_11_05_stock_price_classes.sql. */
.price-class-badge {
    font-size: 12px;
    color: #666;
    font-style: italic;
}

/* Scrol alleen de voorraadtabel zelf horizontaal (bv. met meerdere
   prijsklasse-kolommen) i.p.v. de hele pagina (zoekveld + knoppenrij) mee te
   laten scrollen -- :has() scoped op #table-stock zodat dit de generieke
   #result-container op andere pagina's niet raakt. */
#result:has(#table-stock) {
    overflow-x: auto;
    max-width: 100%;
}

/* Prijsklasse-knoppen in de Reserveringslijst-PDF-modal (stock/index.php) netjes
   onder elkaar i.p.v. naast elkaar -- .btn-block zet hier alleen kleur/hoogte,
   geen display/width. */
#reservationListPriceClassButtons button {
    display: block;
    width: 100%;
    margin-bottom: 8px;
}

/* Inkoopoverzicht over meerdere webshoporders (orders/purchase-overview.php). */
.purchase-overview-supplier-row td {
    font-weight: 700;
    background: #eef6ec;
    border-bottom: 2px solid #2b891a;
}
.purchase-overview-product-row.is-purchased {
    color: #888;
    text-decoration: line-through;
}
.purchase-overview-product-row.is-purchased .purchase-overview-thumb {
    opacity: 0.5;
}
.purchase-overview-thumb {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    object-fit: cover;
    border-radius: 6px;
    background: #f4f4f4;
}
.purchase-overview-thumb-empty {
    color: #bbb;
    font-size: 18px;
}
.purchase-overview-clients-cell {
    font-size: 13px;
    color: #555;
}
.purchase-overview-pdf-btn {
    height: auto;
}
