body {
    font-family: Arial, sans-serif;
    background-color: #f8f9fa;
}

/* Global table font-size — keeps all .table instances readable without per-page overrides */
.table th,
.table td {
    font-size: 0.9rem;
}

/* ── btn-outline-secondary override ──────────────────────────
   KTMeron sets --bs-secondary to #e4e6ef (near-white), making
   btn-outline-secondary nearly invisible. High-specificity
   selectors (two classes = 0,2,0) beat the theme's single-class
   rules. Both CSS-variable and direct-property overrides ensure
   all Bootstrap resolution paths are covered.                  */
:root {
    --bs-secondary:         #4b5263;
    --bs-secondary-rgb:     75, 82, 99;
}

.btn.btn-outline-secondary,
a.btn-outline-secondary,
button.btn-outline-secondary {
    --bs-btn-color:              #4b5263;
    --bs-btn-border-color:       #4b5263;
    --bs-btn-hover-color:        #fff;
    --bs-btn-hover-bg:           #4b5263;
    --bs-btn-hover-border-color: #4b5263;
    --bs-btn-active-color:       #fff;
    --bs-btn-active-bg:          #3d4454;
    --bs-btn-active-border-color:#3d4454;
    --bs-btn-disabled-color:     #8a90a0;
    --bs-btn-disabled-border-color: #8a90a0;
    color:        #4b5263 !important;
    border-color: #4b5263 !important;
    background-color: transparent !important;
}
.btn.btn-outline-secondary:hover,
.btn.btn-outline-secondary:focus,
.btn.btn-outline-secondary:active,
.btn.btn-outline-secondary.active,
a.btn-outline-secondary:hover,
a.btn-outline-secondary:focus,
a.btn-outline-secondary:active,
button.btn-outline-secondary:hover,
button.btn-outline-secondary:focus,
button.btn-outline-secondary:active,
.show > .btn.btn-outline-secondary.dropdown-toggle {
    color:            #fff !important;
    background-color: #4b5263 !important;
    border-color:     #4b5263 !important;
}

/* ── NetSuite-style buttons: global override of KTMeron defaults ─────
   KTMeron renders buttons via CSS custom properties (--bs-btn-*).
   We override both the variables (wins by cascade order — style.css
   loads after the theme bundle) AND direct properties with !important
   (belt-and-suspenders so no variant rule can sneak past).           */

.btn {
    /* Reset KTMeron's large-rounded, heavy-font defaults via variables */
    --bs-btn-border-radius:  3px;
    --bs-btn-padding-x:      12px;
    --bs-btn-padding-y:      5px;
    --bs-btn-font-size:      12px;
    --bs-btn-font-weight:    400;
    --bs-btn-box-shadow:     none;
    /* Direct property overrides — wins regardless of variable resolution */
    border-radius:  3px !important;
    padding:        5px 12px !important;
    font-size:      12px !important;
    font-weight:    400 !important;
    line-height:    1.5 !important;
    box-shadow:     none !important;
    transform:      none !important;
    letter-spacing: 0;
    transition:     background-color 0.1s ease, border-color 0.1s ease, color 0.1s ease;
}
.btn:hover,
.btn:focus,
.btn:active {
    transform:  none !important;
    box-shadow: none !important;
}

/* Primary — flat dark blue */
.btn-primary {
    --bs-btn-bg:           #1464a3;
    --bs-btn-border-color: #0f5089;
    --bs-btn-color:        #fff;
    --bs-btn-hover-bg:          #0f5089;
    --bs-btn-hover-border-color:#0b3d6e;
    --bs-btn-hover-color:       #fff;
    background-color: #1464a3 !important;
    border-color:     #0f5089 !important;
    color:            #fff    !important;
}
.btn-primary:hover,
.btn-primary:focus {
    background-color: #0f5089 !important;
    border-color:     #0b3d6e !important;
    color:            #fff    !important;
}

/* Light / secondary — white with gray border */
.btn-light,
.btn-light-primary,
.btn-secondary {
    --bs-btn-bg:           #fff;
    --bs-btn-border-color: #c3cad4;
    --bs-btn-color:        #333;
    --bs-btn-hover-bg:          #eef1f4;
    --bs-btn-hover-border-color:#99a4b0;
    --bs-btn-hover-color:       #111;
    background-color: #fff    !important;
    border-color:     #c3cad4 !important;
    color:            #333    !important;
}
.btn-light:hover,
.btn-light:focus,
.btn-light-primary:hover,
.btn-light-primary:focus,
.btn-secondary:hover,
.btn-secondary:focus {
    background-color: #eef1f4 !important;
    border-color:     #99a4b0 !important;
    color:            #111    !important;
}

/* Dropdown toggle caret — keep it visible */
.btn-primary.dropdown-toggle::after { border-top-color: #fff; }
.btn-light.dropdown-toggle::after   { border-top-color: #333; }

/* ── Filter form controls ────────────────────────────────────
   Taller, rounded inputs inside any .filters container so the
   filter panels look consistent across all pages.             */
.filters .form-control,
.filters .form-select,
.filters .select2-container .select2-selection--single {
    min-height: 46px;
    border-radius: 14px;
    border-color: var(--bs-border-color);
    box-shadow: none;
}

.filters .form-control:focus,
.filters .form-select:focus {
    border-color: rgba(var(--bs-primary-rgb), 0.45);
    box-shadow: 0 0 0 0.18rem rgba(var(--bs-primary-rgb), 0.12);
}
