/**
 * ===================================================================
 *  AXEANE MODERN THEME — Global CSS
 *  Fichier CSS global pour le thème moderne "SaaS Fintech"
 *  Coexiste avec les thèmes existants (default, dex, superhero).
 *  S'applique écran par écran via la classe .axeane-modern sur le container.
 * ===================================================================
 */

/* ================= VARIABLES / FONDAMENTAUX ================= */
.axeane-modern {
    font-family: 'Montserrat-Regular', Roboto, -apple-system, sans-serif;
    background: #e4e8f2;
    color: #2b2f38;
}

/* ================= COMMAND BAR ================= */
.axeane-modern .web-compta-command-bar {
    min-height: 36px !important;
    margin-bottom: 0 !important;
}

.axeane-modern .web-compta-command-bar md-switch {
    margin-top: 4px !important;
    margin-bottom: 0 !important;
    font-size: 12px;
}

/* ===== Boutons action bar uniformes ===== */
.axeane-modern .btn-action-bar {
    border-radius: 6px !important;
    font-size: 12px !important;
    font-weight: 600;
    padding: 5px 12px !important;
    line-height: 1.5 !important;
    min-height: 30px;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    vertical-align: middle;
    text-transform: none;
    letter-spacing: 0;
    border: none;
    cursor: pointer;
    transition: all 0.15s ease;
    text-decoration: none;
}

.axeane-modern .btn-action-bar.btn-primary-action {
    background-color: #3F51B5;
    color: #fff;
    border: 1px solid #3F51B5;
}
.axeane-modern .btn-action-bar.btn-primary-action:hover {
    background-color: #354498;
}

.axeane-modern .btn-action-bar.btn-danger-action {
    background-color: #f44336;
    color: #fff;
    border: 1px solid #f44336;
}
.axeane-modern .btn-action-bar.btn-danger-action:hover {
    background-color: #d32f2f;
}

/* ================= BARRE NAVIGATION ANNÉES ================= */
.axeane-modern .exercice-nav-bar {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px 0;
    background: #eef0f9;
    border-bottom: 1px solid #d6dbe8;
    flex-shrink: 0;
    position: relative;
    min-height: 36px;
    overflow: hidden;
}

.axeane-modern .exercice-nav-bar .nav-indicator {
    position: absolute;
    left: 10px;
    font-size: 10px;
    color: #ef6c00;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 3px;
    white-space: nowrap;
    max-width: 180px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.axeane-modern .exercice-nav-bar .nav-return-btn {
    position: absolute;
    right: 10px;
    font-size: 10px;
    padding: 2px 8px;
    border-radius: 12px;
    border: 1px solid #3F51B5;
    background: #e8eaf6;
    color: #3F51B5;
    cursor: pointer;
    white-space: nowrap;
}

.axeane-modern .exercice-nav-bar .nav-arrow {
    border: none;
    background: transparent;
    cursor: pointer;
    padding: 2px 6px;
    font-size: 16px;
    color: #3F51B5;
    outline: none;
    flex-shrink: 0;
}

.axeane-modern .exercice-nav-bar .nav-pills-container {
    display: flex;
    align-items: center;
    gap: 3px;
    overflow-x: auto;
    overflow-y: hidden;
    flex-shrink: 1;
    min-width: 0;
    max-width: calc(100% - 200px);
}

.axeane-modern .exercice-nav-bar .nav-pill {
    border: none;
    border-radius: 14px;
    padding: 3px 12px;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    outline: none;
    transition: all 0.2s ease;
    position: relative;
    white-space: nowrap;
}

/* ================= FILTRE AVANCÉ ================= */
.axeane-modern .advanced-search-section {
    max-height: 0;
    opacity: 0;
    transition: max-height 0.5s ease-out, opacity 0.5s ease-out;
}

.axeane-modern .advanced-search-section.open-state {
    max-height: 1000px;
    opacity: 1;
    overflow: visible;
    z-index: 100;
    position: relative;
}

.axeane-modern .advanced-search-section.close-state {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
}

.axeane-modern .filter-panel {
    padding: 12px 15px 6px 15px;
    background: #fff;
    margin: 6px 0 0 0;
    border-radius: 10px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.08), 0 1px 3px rgba(0,0,0,0.06);
    border: 1px solid #c8cee0;
    overflow: visible;
}

/* Dropdowns nya-bs-select dans les filtres */
.axeane-modern .advanced-search-section .nya-bs-select .dropdown-menu {
    z-index: 200 !important;
}

.axeane-modern .advanced-search-section .nya-bs-select.open {
    z-index: 150 !important;
    position: relative;
}

.axeane-modern .advanced-search-section .nya-bs-select.open .dropdown-menu {
    position: absolute !important;
    z-index: 200 !important;
}

/* ================= KPI TOGGLE ================= */
.axeane-modern .kpi-toggle {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 5px 14px;
    margin: 6px 0 0 0;
    cursor: pointer;
    user-select: none;
    border-radius: 8px;
    transition: all 0.2s ease;
    background: #fff;
    border: 1px solid #c5cae9;
    box-shadow: 0 1px 4px rgba(63,81,181,0.08);
}

.axeane-modern .kpi-toggle:hover {
    background: #e8eaf6;
    border-color: #3f51b5;
    box-shadow: 0 2px 8px rgba(63,81,181,0.18);
}

.axeane-modern .kpi-toggle .toggle-label {
    font-size: 11.5px;
    font-weight: 700;
    color: #3f51b5;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.axeane-modern .kpi-toggle .toggle-chevron {
    font-size: 12px;
    color: #3f51b5;
    transition: transform 0.3s ease;
}

.axeane-modern .kpi-toggle .toggle-chevron.collapsed {
    transform: rotate(-90deg);
}

.axeane-modern .kpi-wrapper {
    max-height: 200px;
    overflow: hidden;
    transition: max-height 0.35s ease, opacity 0.3s ease;
    opacity: 1;
}

.axeane-modern .kpi-wrapper.collapsed {
    max-height: 0;
    opacity: 0;
}

/* ================= KPI CARDS ================= */
.axeane-modern .kpi-container {
    display: flex;
    gap: 10px;
    padding: 4px 0 0 0;
    margin: 0;
    flex-wrap: wrap;
}

.axeane-modern .kpi-card {
    flex: 1;
    background: #fff;
    border-radius: 10px;
    padding: 10px 14px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.08), 0 1px 3px rgba(0,0,0,0.06);
    border: 1px solid #c8cee0;
    position: relative;
    overflow: hidden;
}

.axeane-modern .kpi-card::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
}

.axeane-modern .kpi-card.kpi-blue::before { background: #3f51b5; }
.axeane-modern .kpi-card.kpi-orange::before { background: #e67e22; }
.axeane-modern .kpi-card.kpi-green::before { background: #2ecc71; }
.axeane-modern .kpi-card.kpi-red::before { background: #e74c3c; }
.axeane-modern .kpi-card.kpi-purple::before { background: #9c27b0; }
.axeane-modern .kpi-card.kpi-teal::before { background: #00897b; }

.axeane-modern .kpi-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 4px;
}

.axeane-modern .kpi-title {
    font-size: 10px;
    color: #5a6170;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.axeane-modern .kpi-icon {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
}

.axeane-modern .kpi-icon.icon-blue { background: rgba(63, 81, 181, 0.1); color: #3f51b5; }
.axeane-modern .kpi-icon.icon-orange { background: rgba(230, 126, 34, 0.1); color: #e67e22; }
.axeane-modern .kpi-icon.icon-green { background: rgba(46, 204, 113, 0.1); color: #2ecc71; }
.axeane-modern .kpi-icon.icon-red { background: rgba(231, 76, 60, 0.1); color: #e74c3c; }
.axeane-modern .kpi-icon.icon-purple { background: rgba(156, 39, 176, 0.1); color: #9c27b0; }
.axeane-modern .kpi-icon.icon-teal { background: rgba(0, 137, 123, 0.1); color: #00897b; }

.axeane-modern .kpi-value {
    font-size: 15px;
    font-weight: 700;
    color: #1e2a3a;
    margin-bottom: 2px;
    line-height: 1.2;
}

.axeane-modern .kpi-subtitle {
    font-size: 10px;
    color: #7f8a9a;
}

/* ================= TABLE WRAPPER ================= */
.axeane-modern .modern-table-wrapper {
    flex: 1;
    overflow: visible;
    display: flex;
    flex-direction: column;
    margin: 8px 0 0 0;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 3px 14px rgba(0,0,0,0.09), 0 1px 4px rgba(0,0,0,0.06);
    border: 1px solid #c3c9dc;
    min-height: 0;
    width: 100%;
    position: relative;
    z-index: 1;
}

/* ================= TABLE HEADER ================= */
.axeane-modern .modern-table-header {
    display: flex;
    width: 100%;
    background: linear-gradient(180deg, #4a5cc7 0%, #3a4db0 100%);
    color: #fff;
    position: sticky;
    top: 0;
    z-index: 20;
    border-bottom: 2px solid #303f9f;
    flex-shrink: 0;
    overflow: visible !important;
}

.axeane-modern .modern-table-header .th-cell {
    padding: 8px 8px;
    font-size: 12px;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    border-right: 1px solid rgba(255,255,255,0.1);
    flex-shrink: 1;
    min-width: 0;
    overflow: hidden;
}

.axeane-modern .modern-table-header .th-cell:last-child {
    border-right: none;
}

.axeane-modern .modern-table-header .th-cell.th-montant {
    justify-content: flex-end;
}

.axeane-modern .modern-table-header .th-cell.th-actions {
    justify-content: flex-end;
}

.axeane-modern .modern-table-header .th-cell input {
    background: rgba(255,255,255,0.15);
    border: 1px solid rgba(255,255,255,0.25);
    border-radius: 4px;
    color: #fff;
    padding: 3px 6px;
    font-size: 11px;
    width: 100%;
    outline: none;
    transition: all 0.2s;
}

.axeane-modern .modern-table-header .th-cell input::placeholder {
    color: rgba(255,255,255,0.65);
    font-weight: 500;
}

.axeane-modern .modern-table-header .th-cell input:focus {
    background: rgba(255,255,255,0.25);
    border-color: rgba(255,255,255,0.5);
}

.axeane-modern .modern-table-header .th-clear {
    cursor: pointer;
    margin-left: 4px;
    opacity: 0.7;
    font-size: 12px;
}

.axeane-modern .modern-table-header .th-clear:hover {
    opacity: 1;
}

/* ===== Dropdown menus dans le header (Tri + Colonnes) ===== */
.axeane-modern .modern-table-header .btn-group.dropdown,
.axeane-modern .modern-table-header .btn-group.dropup {
    position: relative;
    z-index: 25;
}

.axeane-modern .modern-table-header .dropdown-menu {
    background: #fff;
    color: #333;
    border-radius: 6px;
    box-shadow: 0 4px 16px rgba(0,0,0,0.15);
    padding: 4px 0;
    min-width: 180px;
    z-index: 10000 !important;
    max-height: 350px;
    overflow-y: auto;
}

.axeane-modern .modern-table-header .dropdown-menu li > a {
    display: flex !important;
    align-items: center;
    gap: 6px;
    padding: 6px 12px !important;
    color: #333 !important;
    font-size: 13px;
    font-weight: 500;
    white-space: nowrap;
    line-height: 1.4;
}

.axeane-modern .modern-table-header .dropdown-menu li > a:hover {
    background: #e8eaf6 !important;
    color: #1a237e !important;
}

.axeane-modern .modern-table-header .dropdown-menu li > a input[type="checkbox"] {
    margin: 0;
    flex-shrink: 0;
    width: 14px;
    height: 14px;
}

.axeane-modern .modern-table-header .dropdown-menu li.divider {
    margin: 4px 0;
    height: 1px;
    background: #e0e0e0;
}

/* ================= TABLE BODY ================= */
.axeane-modern .modern-table-body {
    flex: 1;
    overflow-y: auto;
    overflow-x: auto;
    min-height: 0;
    padding-top: 2px;
    width: 100%;
}

.axeane-modern .modern-table-row {
    display: flex;
    width: 100%;
    border-bottom: 1px solid #e2e6f0;
    transition: background-color 0.15s;
    font-size: 13px;
    min-height: 36px;
    align-items: center;
    position: relative;
    box-sizing: border-box;
}

.axeane-modern .modern-table-row:nth-child(even) {
    background: #f0f2fa;
}

.axeane-modern .modern-table-row:hover {
    background: #dfe3f3 !important;
    z-index: 3;
}

/* Cells */
.axeane-modern .modern-table-row .td-cell {
    padding: 6px 8px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: flex !important;
    align-items: center;
    flex-shrink: 1;
    min-width: 0;
    text-align: left !important;
    justify-content: flex-start !important;
}

.axeane-modern .modern-table-row .td-cell.td-montant {
    text-align: right !important;
    justify-content: flex-end !important;
    font-variant-numeric: tabular-nums;
    color: #151d2e;
    font-weight: 500;
}

.axeane-modern .modern-table-row .td-cell.td-selection {
    text-align: center !important;
    justify-content: center !important;
}

.axeane-modern .modern-table-row .td-cell.td-actions {
    overflow: visible !important;
    z-index: 4;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-end !important;
    gap: 3px;
    padding-right: 12px;
    white-space: normal;
    text-overflow: clip;
    text-align: right !important;
}

.axeane-modern .modern-table-row .td-cell.td-actions .btn {
    position: relative;
    z-index: 5;
    cursor: pointer !important;
    pointer-events: auto !important;
}

/* ================= TOTAUX BAR ================= */
.axeane-modern .modern-totaux-bar {
    display: flex;
    gap: 8px;
    padding: 8px 12px;
    flex-wrap: wrap;
    flex-shrink: 0;
    background: #e4e8f4;
    border-top: 2px solid #c3c9dc;
}

.axeane-modern .total-chip {
    flex: 1;
    min-width: 140px;
    background: #fff;
    border-radius: 8px;
    padding: 8px 14px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.08);
    border: 1px solid #c3c9dc;
    display: flex;
    align-items: center;
    gap: 8px;
}

.axeane-modern .total-chip .chip-icon {
    width: 30px;
    height: 30px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
}

.axeane-modern .total-chip .chip-label {
    font-size: 10px;
    color: #4a5068;
    text-transform: uppercase;
    font-weight: 600;
}

.axeane-modern .total-chip .chip-value {
    font-size: 13px;
    font-weight: 700;
    color: #151d2e;
}

/* ================= PAGINATION ================= */
.axeane-modern .modern-pagination-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 6px 12px;
    border-top: 1px solid #c3c9dc;
    background: #e4e8f4;
    flex-shrink: 0;
}

.axeane-modern .modern-pagination-bar .page-size-btn {
    border: 1px solid #b0bad4;
    background: #fff;
    border-radius: 6px;
    padding: 4px 10px;
    font-size: 12px;
    font-weight: 600;
    color: #2d3890;
    cursor: pointer;
    transition: all 0.15s;
}

.axeane-modern .modern-pagination-bar .page-size-btn:hover {
    background: #d0d7ea;
}

.axeane-modern .modern-pagination-bar .page-size-btn.active {
    background: #3f51b5;
    color: #fff;
    border-color: #3f51b5;
}

/* ================= LOADING ================= */
.axeane-modern .modern-loading-overlay {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 0;
    color: #5a6170;
}

.axeane-modern .modern-loading-overlay .loading-spinner {
    width: 40px;
    height: 40px;
    border: 3px solid #e8eaf6;
    border-top: 3px solid #3f51b5;
    border-radius: 50%;
    animation: axeane-spin 0.8s linear infinite;
    margin-bottom: 12px;
}

@keyframes axeane-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.axeane-modern .modern-empty-state {
    text-align: center;
    padding: 40px 20px;
    color: #7f8a9a;
}

.axeane-modern .modern-empty-state i {
    font-size: 40px;
    margin-bottom: 12px;
    color: #b0b8c7;
}

.axeane-modern .modern-empty-state p {
    font-size: 14px;
    font-weight: 500;
}

/* ================= COMMON UTILITIES ================= */
.axeane-modern .colonne-montant { padding-right: 10px; }
.axeane-modern .ellipsisDiv { text-overflow: ellipsis; white-space: nowrap; overflow: hidden; }

.axeane-modern .btn-radius { border-radius: 15px; }

.axeane-modern .btn-sm-personalise {
    padding: 4px 7px !important;
    font-size: 11px;
    line-height: 1.4;
}

/* ================= NOTE BADGE ================= */
.axeane-modern .note-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    border-radius: 50%;
    font-size: 11px;
    font-weight: 700;
    color: #fff;
    line-height: 1;
    padding: 0 4px;
}

/* ================= RESPONSIVE ================= */
@media (max-width: 1200px) {
    .axeane-modern .kpi-card { min-width: 120px; }
    .axeane-modern .kpi-container { flex-wrap: wrap; }
    .axeane-modern .total-chip { min-width: 120px; }
    .axeane-modern .modern-totaux-bar { flex-wrap: wrap; }
    .axeane-modern .modern-table-header .th-cell input { font-size: 10px; padding: 2px 4px; }
    .axeane-modern .modern-table-row .td-cell { font-size: 12px; padding: 4px 6px; }
}

@media (max-width: 900px) {
    .axeane-modern .kpi-card { min-width: 100px; padding: 6px 10px; }
    .axeane-modern .kpi-value { font-size: 12px; }
    .axeane-modern .kpi-title { font-size: 9px; }
    .axeane-modern .modern-table-row .td-cell { font-size: 11px; padding: 3px 4px; }
    .axeane-modern .modern-table-header .th-cell { font-size: 11px; padding: 6px 4px; }
}

@media (max-width: 768px) {
    .axeane-modern .modern-table-wrapper { border-radius: 6px; }
    .axeane-modern .kpi-container { gap: 6px; }
    .axeane-modern .total-chip { min-width: 100%; }
    .axeane-modern .modern-pagination-bar { flex-direction: column; gap: 8px; align-items: flex-start; }
}

/* ===========================================================================
 * DROPDOWN FIX GLOBAL
 * Forcer les dropdown-menu du header à s'afficher en position:fixed
 * via JavaScript (voir axeane-dropdown-fix.js). Les styles ci-dessous
 * servent de fallback et de support.
 * =========================================================================== */
.axeane-modern .modern-table-header .dropdown-menu.axeane-fixed-dropdown {
    position: fixed !important;
    z-index: 10000 !important;
}

/* ===============================================================================
 * DIALOG / POPUP — Thème moderne réutilisable
 * Appliquer la classe .axeane-modern-dialog sur <md-dialog> pour activer
 * =============================================================================== */

/* Container dialog */
md-dialog.axeane-modern-dialog {
    border-radius: 12px !important;
    overflow: hidden;
    font-family: 'Montserrat-Regular', Roboto, -apple-system, sans-serif;
    box-shadow: 0 12px 48px rgba(0,0,0,0.25), 0 4px 16px rgba(0,0,0,0.12);
    border: none;
}

/* Toolbar / Header */
md-dialog.axeane-modern-dialog md-toolbar,
md-dialog.axeane-modern-dialog .axm-dialog-toolbar {
    background: linear-gradient(180deg, #4a5cc7 0%, #3a4db0 100%) !important;
    min-height: 52px;
    padding: 0;
    border-radius: 0;
    border: none;
    outline: none;
    box-shadow: none;
}

md-dialog.axeane-modern-dialog md-toolbar .md-toolbar-tools,
md-dialog.axeane-modern-dialog .axm-dialog-toolbar .md-toolbar-tools {
    padding: 0 18px;
    min-height: 52px;
}

md-dialog.axeane-modern-dialog md-toolbar h2,
md-dialog.axeane-modern-dialog .axm-dialog-toolbar h2,
md-dialog.axeane-modern-dialog md-toolbar .axm-dialog-title,
md-dialog.axeane-modern-dialog .axm-dialog-toolbar .axm-dialog-title {
    font-size: 17px;
    font-weight: 700;
    color: #fff;
    letter-spacing: 0.2px;
    flex: 1;
}

md-dialog.axeane-modern-dialog md-toolbar .axm-dialog-subtitle {
    font-weight: 400;
    margin-left: 6px;
    color: #c5cae9;
    font-size: 14px;
}

md-dialog.axeane-modern-dialog md-toolbar .md-icon-button,
md-dialog.axeane-modern-dialog .axm-dialog-toolbar .axm-close-btn {
    color: #fff !important;
}

md-dialog.axeane-modern-dialog md-toolbar .md-icon-button:hover,
md-dialog.axeane-modern-dialog .axm-dialog-toolbar .axm-close-btn:hover {
    background: rgba(255,255,255,0.15) !important;
    border-radius: 50%;
}

/* Content body */
md-dialog.axeane-modern-dialog md-dialog-content,
md-dialog.axeane-modern-dialog md-content,
md-dialog.axeane-modern-dialog .axm-dialog-content {
    background: #e4e8f2 !important;
    padding: 0 !important;
    overflow: visible !important;
    border-radius: 0 0 12px 12px;
}

/* Fix overflow pour que les dropdowns/calendriers ne soient pas coupés */
md-dialog.axeane-modern-dialog {
    overflow: visible !important;
}

/* Override Angular Material .md-dialog-container overflow: hidden quand dialog moderne ouverte */
.md-dialog-container:has(md-dialog.axeane-modern-dialog) {
    overflow: visible !important;
}

/* Pour les popups avec scroll vertical désactivé (lettrage, etc.) : overflow hidden pour contraindre la hauteur */
md-dialog.disableVerticalScrollbar > md-content {
    overflow: hidden !important;
    display: flex;
    flex-direction: column;
}

/* uib-datepicker-popup : forcer z-index élevé */
md-dialog.axeane-modern-dialog .uib-datepicker-popup,
md-dialog.axeane-modern-dialog .dropdown-menu,
md-dialog.axeane-modern-dialog [uib-datepicker-popup-wrap],
md-dialog.axeane-modern-dialog .uib-datepicker-popup + ul {
    z-index: 10000 !important;
}

/* nya-bs-select dropdown dans les dialogs */
md-dialog.axeane-modern-dialog .nya-bs-select .dropdown-menu {
    z-index: 10000 !important;
}

md-dialog.axeane-modern-dialog .nya-bs-select.open {
    z-index: 9999 !important;
    position: relative;
}

/* Le datepicker de uib s'insère souvent via un <ul> positionné en absolute */
md-dialog.axeane-modern-dialog .input-group {
    position: relative;
    z-index: 5;
}

md-dialog.axeane-modern-dialog .input-group .dropdown-menu {
    z-index: 10000 !important;
}

/* Les ul.dropdown-menu inline dans la page — forcer au dessus */
md-dialog.axeane-modern-dialog ul.dropdown-menu {
    z-index: 10000 !important;
}

/* Datepicker popup wrapper (.uib-datepicker-popup) positionné en absolute */
.uib-datepicker-popup {
    z-index: 10000 !important;
}

/* Dropdown dans le table body scrollable — overflow-y: auto clippe les dropdowns absolute.
   On met le dropdown en position fixed pour qu'il échappe au stacking context. */
md-dialog.axeane-modern-dialog .axm-table-body .dropdown-menu,
md-dialog.axeane-modern-dialog .axm-table-body .nya-bs-select .dropdown-menu {
    position: absolute;
    z-index: 10000 !important;
}

md-dialog.axeane-modern-dialog .axm-table-body .nya-bs-select.open {
    position: static;
}

/* Le calendrier uib-datepicker dans le header ne doit pas être coupé */
md-dialog.axeane-modern-dialog .axm-table-header .uib-datepicker-popup,
md-dialog.axeane-modern-dialog .axm-table-header ul.uib-datepicker-popup {
    z-index: 10000 !important;
}

/* La section avancée de filtres — assurer que les selects ne soient pas coupés */
md-dialog.axeane-modern-dialog .axm-filter-panel {
    overflow: visible !important;
}

md-dialog.axeane-modern-dialog .advanced-search-section .nya-bs-select .dropdown-menu {
    z-index: 10000 !important;
}

md-dialog.axeane-modern-dialog .advanced-search-section .input-group .dropdown-menu {
    z-index: 10000 !important;
}

/* Command bar inside dialog */
md-dialog.axeane-modern-dialog .web-compta-command-bar {
    min-height: 40px !important;
    background: #f0f2fa;
    border-bottom: 1px solid #d6dbe8;
    padding: 6px 12px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px 12px;
    margin: 0;
}

md-dialog.axeane-modern-dialog .web-compta-command-bar md-switch {
    margin-top: 4px !important;
    margin-bottom: 0 !important;
    font-size: 12px;
}

md-dialog.axeane-modern-dialog .web-compta-command-bar .md-button,
md-dialog.axeane-modern-dialog .web-compta-command-bar .btn {
    font-size: 12px !important;
    font-weight: 600;
    border-radius: 6px;
    padding: 4px 12px;
    min-height: 30px;
    text-transform: none;
}

/* Filter panel inside dialog */
md-dialog.axeane-modern-dialog .axm-filter-panel {
    padding: 12px 15px 6px 15px;
    background: #fff;
    margin: 6px 10px;
    border-radius: 10px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.08), 0 1px 3px rgba(0,0,0,0.06);
    border: 1px solid #c8cee0;
}

md-dialog.axeane-modern-dialog .advanced-search-section.open-state {
    max-height: 1000px;
    opacity: 1;
    overflow: visible !important;
}

md-dialog.axeane-modern-dialog .advanced-search-section.close-state {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
}

/* ===== Table inside dialog — modern flex table ===== */
md-dialog.axeane-modern-dialog .axm-table-wrapper {
    flex: 1;
    display: flex;
    flex-direction: column;
    margin: 4px 6px;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 3px 14px rgba(0,0,0,0.09), 0 1px 4px rgba(0,0,0,0.06);
    border: 1px solid #c3c9dc;
    min-height: 0;
    overflow: visible;
    position: relative;
}

/* Table header */
md-dialog.axeane-modern-dialog .axm-table-header {
    display: flex;
    width: 100%;
    background: linear-gradient(180deg, #4a5cc7 0%, #3a4db0 100%);
    color: #fff;
    flex-shrink: 0;
    border-bottom: 2px solid #303f9f;
    min-height: 36px;
    overflow: visible;
    position: relative;
    z-index: 10;
}

md-dialog.axeane-modern-dialog .axm-table-header .axm-th {
    padding: 3px 5px;
    font-size: 10.5px;
    font-weight: 600;
    display: flex;
    flex-direction: column;
    justify-content: center;
    border-right: 1px solid rgba(255,255,255,0.1);
    flex-shrink: 1;
    min-width: 0;
    overflow: visible;
    position: relative;
}

md-dialog.axeane-modern-dialog .axm-table-header .axm-th:last-child {
    border-right: none;
}

md-dialog.axeane-modern-dialog .axm-table-header .axm-th.axm-th-montant {
    text-align: right;
    align-items: flex-end;
}

md-dialog.axeane-modern-dialog .axm-table-header .axm-th.axm-th-center {
    text-align: center;
    align-items: center;
}

md-dialog.axeane-modern-dialog .axm-table-header .axm-th .axm-th-label {
    margin-bottom: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

md-dialog.axeane-modern-dialog .axm-table-header .axm-th .axm-th-label a {
    color: #fff !important;
    text-decoration: none;
    font-weight: 600;
}

md-dialog.axeane-modern-dialog .axm-table-header .axm-th .axm-th-label a:hover {
    text-decoration: underline;
}

md-dialog.axeane-modern-dialog .axm-table-header .axm-th input,
md-dialog.axeane-modern-dialog .axm-table-header .axm-th .form-control {
    background: rgba(255,255,255,0.15) !important;
    border: 1px solid rgba(255,255,255,0.25) !important;
    border-radius: 4px !important;
    color: #fff !important;
    padding: 1px 4px !important;
    font-size: 10px !important;
    width: 100%;
    outline: none;
    height: auto !important;
    min-height: 18px;
    box-shadow: none !important;
}

md-dialog.axeane-modern-dialog .axm-table-header .axm-th input::placeholder,
md-dialog.axeane-modern-dialog .axm-table-header .axm-th .form-control::placeholder {
    color: rgba(255,255,255,0.65) !important;
    font-weight: 500;
}

md-dialog.axeane-modern-dialog .axm-table-header .axm-th input:focus,
md-dialog.axeane-modern-dialog .axm-table-header .axm-th .form-control:focus {
    background: rgba(255,255,255,0.25) !important;
    border-color: rgba(255,255,255,0.5) !important;
}

/* Table body */
md-dialog.axeane-modern-dialog .axm-table-body {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    min-height: 0;
}

md-dialog.axeane-modern-dialog .axm-table-row {
    display: flex;
    width: 100%;
    border-bottom: 1px solid #e8eaf2;
    font-size: 11.5px;
    min-height: 24px;
    align-items: center;
    transition: background-color 0.12s;
    box-sizing: border-box;
}

md-dialog.axeane-modern-dialog .axm-table-row:nth-child(even) {
    background: #f5f6fc;
}

md-dialog.axeane-modern-dialog .axm-table-row:hover {
    background: #e3e6f3 !important;
}

md-dialog.axeane-modern-dialog .axm-table-row .axm-td {
    padding: 2px 5px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: flex !important;
    align-items: center;
    flex-shrink: 1;
    min-width: 0;
    text-align: left !important;
    justify-content: flex-start !important;
    line-height: 1.1;
}

/* Respecter ng-hide sur les cellules et colonnes header */
md-dialog.axeane-modern-dialog .axm-table-row .axm-td.ng-hide,
md-dialog.axeane-modern-dialog .axm-table-header .axm-th.ng-hide {
    display: none !important;
}

/* Les div internes dans les cellules — même hauteur que la balance */
md-dialog.axeane-modern-dialog .axm-table-row .axm-td > div,
md-dialog.axeane-modern-dialog .axm-table-row .axm-td > span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    line-height: 1;
    margin: 0;
    padding: 0;
    min-height: 0;
}

md-dialog.axeane-modern-dialog .axm-table-row .axm-td.axm-td-montant {
    text-align: right !important;
    justify-content: flex-end !important;
    font-variant-numeric: tabular-nums;
    font-weight: 500;
    color: #151d2e;
}

md-dialog.axeane-modern-dialog .axm-table-row .axm-td.axm-td-center {
    text-align: center;
}

md-dialog.axeane-modern-dialog .axm-table-row .axm-td.axm-td-actions {
    display: flex !important;
    align-items: center;
    justify-content: flex-end !important;
    text-align: right !important;
    gap: 2px;
    overflow: visible;
}

/* Action buttons inside rows */
md-dialog.axeane-modern-dialog .axm-table-row .axm-td.axm-td-actions .btn-sm,
md-dialog.axeane-modern-dialog .axm-table-row .axm-td.axm-td-actions .btn-sm-personalise {
    padding: 1px 5px !important;
    font-size: 10.5px !important;
    line-height: 1.2 !important;
    min-height: 18px !important;
    border-radius: 3px !important;
}

/* ===== Totaux bar inside dialog ===== */
md-dialog.axeane-modern-dialog .axm-totaux-bar {
    display: flex;
    gap: 6px;
    padding: 4px 8px;
    flex-wrap: wrap;
    flex-shrink: 0;
    background: #e4e8f4;
    border-top: 1px solid #c3c9dc;
}

md-dialog.axeane-modern-dialog .axm-total-chip {
    flex: 1;
    min-width: 110px;
    background: #fff;
    border-radius: 8px;
    padding: 3px 8px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
    border: 1px solid #c3c9dc;
    display: flex;
    align-items: center;
    gap: 6px;
}

md-dialog.axeane-modern-dialog .axm-total-chip .chip-icon {
    width: 22px;
    height: 22px;
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
}

md-dialog.axeane-modern-dialog .axm-total-chip .chip-icon.debit {
    background: rgba(46,204,113,0.12);
    color: #27ae60;
}

md-dialog.axeane-modern-dialog .axm-total-chip .chip-icon.credit {
    background: rgba(231,76,60,0.12);
    color: #e74c3c;
}

md-dialog.axeane-modern-dialog .axm-total-chip .chip-icon.solde {
    background: rgba(63,81,181,0.12);
    color: #3f51b5;
}

md-dialog.axeane-modern-dialog .axm-total-chip .chip-label {
    font-size: 10px;
    color: #4a5068;
    text-transform: uppercase;
    font-weight: 600;
    line-height: 1.2;
}

md-dialog.axeane-modern-dialog .axm-total-chip .chip-value {
    font-size: 12px;
    font-weight: 700;
    color: #151d2e;
    line-height: 1.3;
}

/* ===== Pagination inside dialog — même design que balance ===== */
md-dialog.axeane-modern-dialog .axm-pagination-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 6px 16px;
    border-top: 1px solid #d6dbe8;
    background: linear-gradient(180deg, #f0f2fa 0%, #e8ecf6 100%);
    flex-shrink: 0;
    min-height: 36px;
}

md-dialog.axeane-modern-dialog .axm-pagination-bar .page-size-btn {
    border: 1px solid transparent;
    background: rgba(63,81,181,0.06);
    border-radius: 8px;
    padding: 4px 12px;
    font-size: 11px;
    font-weight: 600;
    color: #5c6bc0;
    cursor: pointer;
    transition: all 0.15s ease;
    min-width: 34px;
    text-align: center;
}

md-dialog.axeane-modern-dialog .axm-pagination-bar .page-size-btn:hover {
    background: rgba(63,81,181,0.12);
    color: #3949ab;
}

md-dialog.axeane-modern-dialog .axm-pagination-bar .page-size-btn.active {
    background: #3f51b5;
    color: #fff;
    border-color: #3f51b5;
    box-shadow: 0 2px 6px rgba(63,81,181,0.3);
}

md-dialog.axeane-modern-dialog .axm-pagination-bar .pagination {
    margin: 0;
    padding: 0;
    display: flex;
    gap: 2px;
    align-items: center;
}

md-dialog.axeane-modern-dialog .axm-pagination-bar .pagination > li > a,
md-dialog.axeane-modern-dialog .axm-pagination-bar .pagination > li > span {
    border: 1px solid transparent;
    background: rgba(63,81,181,0.06);
    color: #3f51b5;
    border-radius: 8px !important;
    padding: 4px 10px;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.4;
    margin: 0;
    transition: all 0.15s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
}

md-dialog.axeane-modern-dialog .axm-pagination-bar .pagination > li > a:hover {
    background: rgba(63,81,181,0.12);
    color: #3949ab;
    border-color: transparent;
}

md-dialog.axeane-modern-dialog .axm-pagination-bar .pagination > li.active > a,
md-dialog.axeane-modern-dialog .axm-pagination-bar .pagination > li.active > a:hover,
md-dialog.axeane-modern-dialog .axm-pagination-bar .pagination > li.active > a:focus,
md-dialog.axeane-modern-dialog .axm-pagination-bar .pagination > li.active > span {
    background: #3f51b5;
    color: #fff;
    border-color: #3f51b5;
    box-shadow: 0 2px 6px rgba(63,81,181,0.3);
    z-index: 1;
}

md-dialog.axeane-modern-dialog .axm-pagination-bar .pagination > li.disabled > a,
md-dialog.axeane-modern-dialog .axm-pagination-bar .pagination > li.disabled > span {
    background: transparent;
    color: #b0bad4;
    border-color: transparent;
    cursor: default;
    opacity: 0.5;
}

/* Supprimer les bordures Bootstrap par défaut */
md-dialog.axeane-modern-dialog .axm-pagination-bar .pagination > li:first-child > a,
md-dialog.axeane-modern-dialog .axm-pagination-bar .pagination > li:first-child > span,
md-dialog.axeane-modern-dialog .axm-pagination-bar .pagination > li:last-child > a,
md-dialog.axeane-modern-dialog .axm-pagination-bar .pagination > li:last-child > span {
    border-radius: 8px !important;
}

/* ===== Empty / Loading states inside dialog ===== */
md-dialog.axeane-modern-dialog .axm-empty-state {
    text-align: center;
    padding: 40px 20px;
    color: #7f8a9a;
}

md-dialog.axeane-modern-dialog .axm-empty-state i {
    font-size: 40px;
    margin-bottom: 12px;
    color: #b0b8c7;
}

md-dialog.axeane-modern-dialog .axm-loading-state {
    text-align: center;
    padding: 30px;
    color: #5a6170;
}

md-dialog.axeane-modern-dialog .axm-loading-state .loading-spinner {
    display: inline-block;
    width: 32px;
    height: 32px;
    border: 3px solid #e8eaf6;
    border-top: 3px solid #3f51b5;
    border-radius: 50%;
    animation: axeane-spin 0.8s linear infinite;
    margin-bottom: 10px;
}

/* ===== Notes popup specifics ===== */
md-dialog.axeane-modern-dialog .axm-notes-list {
    padding: 16px 20px;
    max-height: 420px;
    overflow-y: auto;
}

md-dialog.axeane-modern-dialog .axm-note-card {
    padding: 12px 14px;
    border: 1px solid #e2e6f0;
    border-radius: 8px;
    margin-bottom: 8px;
    background: #fff;
    transition: border-color 0.15s;
}

md-dialog.axeane-modern-dialog .axm-note-card:hover {
    border-color: #c5cae9;
}

md-dialog.axeane-modern-dialog .axm-note-card.note-resolved {
    border-color: #c8e6c9;
    background: #f1f8e9;
}

md-dialog.axeane-modern-dialog .axm-note-card .note-content {
    font-size: 14px;
    color: #2f3550;
    margin-bottom: 8px;
    line-height: 1.5;
}

md-dialog.axeane-modern-dialog .axm-note-card .note-meta {
    font-size: 12px;
    color: #9e9e9e;
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

md-dialog.axeane-modern-dialog .axm-note-card .note-actions {
    display: flex;
    gap: 6px;
    margin-top: 8px;
}

md-dialog.axeane-modern-dialog .axm-note-card .note-actions .btn-note {
    font-size: 12px;
    padding: 4px 12px;
    border-radius: 5px;
    cursor: pointer;
    border: 1px solid;
    background: #f5f7ff;
    transition: all 0.15s;
}

md-dialog.axeane-modern-dialog .axm-note-card .note-actions .btn-note:hover {
    opacity: 0.85;
}

md-dialog.axeane-modern-dialog .axm-note-card .note-actions .btn-note-edit {
    border-color: #c5cae9;
    color: #3F51B5;
}

md-dialog.axeane-modern-dialog .axm-note-card .note-actions .btn-note-resolve {
    border-color: #c8e6c9;
    color: #4CAF50;
    background: #f1f8e9;
}

md-dialog.axeane-modern-dialog .axm-note-card .note-actions .btn-note-archive {
    border-color: #ffe0b2;
    color: #ef6c00;
    background: #fff8e1;
}

/* Dialog footer actions */
md-dialog.axeane-modern-dialog md-dialog-actions,
md-dialog.axeane-modern-dialog .axm-dialog-footer {
    border-top: 1px solid #d6dbe8 !important;
    background: #f0f2fa !important;
    padding: 12px 18px !important;
}

md-dialog.axeane-modern-dialog .axm-textarea {
    width: 100%;
    border: 1px solid #c5cae9;
    border-radius: 6px;
    padding: 10px 14px;
    font-size: 14px;
    font-family: inherit;
    outline: none;
    resize: vertical;
    line-height: 1.5;
    color: #333;
    background: #fff;
    transition: border-color 0.2s;
}

md-dialog.axeane-modern-dialog .axm-textarea:focus {
    border-color: #3F51B5;
    box-shadow: 0 0 0 2px rgba(63,81,181,0.12);
}

/* ===== Dialog action buttons ===== */
md-dialog.axeane-modern-dialog .axm-btn {
    border-radius: 6px;
    font-size: 13px;
    font-weight: 600;
    padding: 6px 16px;
    min-height: 32px;
    text-transform: none;
    letter-spacing: 0;
    border: 1px solid;
    cursor: pointer;
    transition: all 0.15s;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

md-dialog.axeane-modern-dialog .axm-btn-primary {
    background: #3F51B5;
    color: #fff;
    border-color: #3F51B5;
}

md-dialog.axeane-modern-dialog .axm-btn-primary:hover {
    background: #354498;
}

md-dialog.axeane-modern-dialog .axm-btn-danger {
    background: #f44336;
    color: #fff;
    border-color: #f44336;
}

md-dialog.axeane-modern-dialog .axm-btn-danger:hover {
    background: #d32f2f;
}

md-dialog.axeane-modern-dialog .axm-btn-warn {
    background: #ff9800;
    color: #fff;
    border-color: #ff9800;
}

md-dialog.axeane-modern-dialog .axm-btn-warn:hover {
    background: #e68900;
}

md-dialog.axeane-modern-dialog .axm-btn-ghost {
    background: #fff;
    color: #3F51B5;
    border-color: #c5cae9;
}

md-dialog.axeane-modern-dialog .axm-btn-ghost:hover {
    background: #e8eaf6;
}

/* ===== Checkbox inside dialog table header ===== */
md-dialog.axeane-modern-dialog .axm-table-header md-checkbox .md-icon {
    border-color: rgba(255,255,255,0.6) !important;
}

md-dialog.axeane-modern-dialog .axm-table-header md-checkbox.md-checked .md-icon {
    background-color: #fff !important;
}

md-dialog.axeane-modern-dialog .axm-table-header md-checkbox.md-checked .md-icon::after {
    border-color: #3a4db0 !important;
}

/* ===== Dropdown tri/colonnes inside dialog ===== */
md-dialog.axeane-modern-dialog .axm-table-header .btn-group.dropdown {
    position: relative;
    z-index: 25;
}

md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu {
    background: #fff;
    color: #333;
    border-radius: 6px;
    box-shadow: 0 4px 16px rgba(0,0,0,0.15);
    padding: 3px 0;
    min-width: 150px;
    max-height: 300px;
    overflow-y: auto;
    z-index: 10000 !important;
    /* Pas d'animation à l'ouverture */
    transition: none !important;
    animation: none !important;
    -webkit-animation: none !important;
    -webkit-transition: none !important;
    transform: none !important;
    opacity: 1 !important;
}

/* Supprimer aussi l'animation Bootstrap pour les dropdown ouverts */
md-dialog.axeane-modern-dialog .axm-table-header .btn-group.open > .dropdown-menu,
md-dialog.axeane-modern-dialog .axm-table-header .btn-group.dropdown.open > .dropdown-menu {
    transition: none !important;
    animation: none !important;
    -webkit-transition: none !important;
    -webkit-animation: none !important;
}

md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu li > a {
    display: flex !important;
    align-items: center;
    gap: 6px;
    padding: 4px 10px !important;
    color: #333 !important;
    font-size: 11.5px;
    font-weight: 500;
    white-space: nowrap;
    line-height: 1.3;
    text-decoration: none;
    margin: 0;
}

md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu li > a:hover {
    background: #e8eaf6 !important;
    color: #1a237e !important;
}

/* Checkbox dans les dropdowns tri/colonnes — taille compacte et aligné */
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu li > a input[type="checkbox"] {
    margin: 0;
    flex-shrink: 0;
    width: 13px;
    height: 13px;
    cursor: pointer;
}

/* Texte dans les items — héritage de couleur, alignement gauche */
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu li > a span {
    color: inherit;
    text-align: left;
}

/* Séparateur entre sections (Ascendant/Descendant vs colonnes) */
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu li.divider {
    margin: 4px 0;
    height: 1px;
    background: #e0e0e0;
    border: none;
}

/* Icônes de tri (caret) — alignées à droite */
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu li > a .fa-caret-up,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu li > a .fa-caret-down {
    margin-left: auto;
    color: #9e9e9e;
    font-size: 13px;
}

md-dialog.axeane-modern-dialog .axm-table-header .dropdown-toggle {
    color: #fff;
    background: rgba(255,255,255,0.15);
    border: 1px solid rgba(255,255,255,0.25);
    border-radius: 4px;
    padding: 2px 8px;
    font-size: 11px;
    cursor: pointer;
    white-space: nowrap;
}

md-dialog.axeane-modern-dialog .axm-table-header .dropdown-toggle:hover {
    background: rgba(255,255,255,0.25);
}

/* ===== Status badges ===== */
md-dialog.axeane-modern-dialog .axm-badge-resolved {
    color: #4CAF50;
    font-weight: 600;
    font-size: 12px;
}

md-dialog.axeane-modern-dialog .axm-badge-pending {
    color: #FF9800;
    font-weight: 600;
    font-size: 12px;
}

/* ===== nya-bs-select inside dialog ===== */
md-dialog.axeane-modern-dialog .nya-bs-select .dropdown-menu {
    z-index: 200 !important;
}

md-dialog.axeane-modern-dialog .nya-bs-select.open {
    z-index: 150 !important;
    position: relative;
}

md-dialog.axeane-modern-dialog .nya-bs-select.open .dropdown-menu {
    position: absolute !important;
    z-index: 200 !important;
}

/* ==========================================================================
 * nya-bs-select / bootstrap-select dropdown dans le HEADER de table dialog
 * — Le dropdown DOIT avoir un fond BLANC avec texte FONCÉ
 * — Couvre .nya-bs-select, .bootstrap-select, et tout .dropdown-menu dans .axm-th
 * ========================================================================== */

/* --- Dropdown menu container : fond blanc --- */
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu.inner,
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select .dropdown-menu,
md-dialog.axeane-modern-dialog .axm-table-header .bootstrap-select .dropdown-menu,
md-dialog.axeane-modern-dialog .axm-table-header .axm-th .dropdown-menu,
md-dialog.axeane-modern-dialog .axm-table-header .axm-th .btn-group .dropdown-menu {
    background: #fff !important;
    background-color: #fff !important;
    color: #333 !important;
    border-radius: 6px !important;
    box-shadow: 0 4px 16px rgba(0,0,0,0.15) !important;
    z-index: 10000 !important;
    overflow: visible !important;
    max-height: none !important;
    min-width: 200px !important;
    padding: 4px 0 !important;
}

/* --- nya-bs-select inner list: scroll seulement quand beaucoup d'items --- */
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select .dropdown-menu > ul,
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select .dropdown-menu > .dropdown-menu.inner,
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select .dropdown-menu .inner {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    max-height: 220px !important;
    padding: 2px 0 !important;
    margin: 0 !important;
    list-style: none !important;
}

/* Quand il y a peu d'items, pas de scroll forcé */
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select .dropdown-menu > ul:only-child,
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select .dropdown-menu .inner:only-child {
    max-height: none !important;
    overflow-y: visible !important;
}

/* Items dans le dropdown : empêcher le wrap et le débordement horizontal */
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select .dropdown-menu li > a {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: block !important;
    padding: 3px 8px !important;
    line-height: 1.4 !important;
}

md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select .dropdown-menu li > a span {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    font-size: 11px !important;
}

md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select .dropdown-menu li > a small {
    font-size: 10px !important;
    color: #64748b !important;
    margin-left: 4px;
}

/* Barre de recherche dans le dropdown nya-bs-select */
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select .dropdown-menu .bs-searchbox,
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select .dropdown-menu .bs-searchbox input {
    background: #fff !important;
    border: 1px solid #d6dbe8 !important;
    border-radius: 4px !important;
    color: #333 !important;
    font-size: 11px !important;
    padding: 4px 8px !important;
    margin: 4px 6px !important;
    width: calc(100% - 12px) !important;
    box-sizing: border-box !important;
}

md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select .dropdown-menu .bs-searchbox input::placeholder {
    color: #94a3b8 !important;
}

/* Actions box (Tout sélectionner / Tout désélectionner) */
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select .dropdown-menu .bs-actionsbox {
    padding: 4px 6px !important;
}

md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select .dropdown-menu .bs-actionsbox .btn {
    background: #f0f2fa !important;
    border: 1px solid #c3c9dc !important;
    color: #3F51B5 !important;
    font-size: 10px !important;
    padding: 2px 8px !important;
    border-radius: 4px !important;
}

md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select .dropdown-menu .bs-actionsbox .btn:hover {
    background: #e8eaf6 !important;
}

/* --- Items de la liste : fond blanc, texte foncé --- */
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu li > a,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu li > a span,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu li > a small,
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select .dropdown-menu li > a,
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select .dropdown-menu li > a span,
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select .dropdown-menu li > a small,
md-dialog.axeane-modern-dialog .axm-table-header .bootstrap-select .dropdown-menu li > a,
md-dialog.axeane-modern-dialog .axm-table-header .bootstrap-select .dropdown-menu li > a span,
md-dialog.axeane-modern-dialog .axm-table-header .bootstrap-select .dropdown-menu li > a small {
    color: #333 !important;
    background: #fff !important;
    background-color: #fff !important;
    font-size: 11px;
}

/* --- Hover items --- */
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu li > a:hover,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu li > a:hover span,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu li > a:hover small,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu li:hover > a,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu li:hover > a span,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu li:hover > a small {
    background: #e8eaf6 !important;
    background-color: #e8eaf6 !important;
    color: #1a237e !important;
}

/* --- Items actifs / sélectionnés — PAS de fond bleu Bootstrap --- */
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu li.active > a,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu li.active > a span,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu li.active > a small,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu li.selected > a,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu li.selected > a span,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu li.selected > a small,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu .active > a,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu .active > a:hover,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu .active > a:focus,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu .selected > a,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu .selected > a:hover,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu .selected > a:focus {
    background: #e8eaf6 !important;
    background-color: #e8eaf6 !important;
    color: #3F51B5 !important;
}

/* --- Le bouton toggle du nya-bs-select / bootstrap-select dans le header --- */
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select > .btn,
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select > .btn.btn-default,
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select > button,
md-dialog.axeane-modern-dialog .axm-table-header .bootstrap-select > .btn,
md-dialog.axeane-modern-dialog .axm-table-header .bootstrap-select > .btn.btn-default,
md-dialog.axeane-modern-dialog .axm-table-header .bootstrap-select > .dropdown-toggle,
md-dialog.axeane-modern-dialog .axm-table-header .axm-th .btn-group > .btn.dropdown-toggle {
    background: rgba(255,255,255,0.15) !important;
    border: 1px solid rgba(255,255,255,0.25) !important;
    border-radius: 4px !important;
    color: #fff !important;
    padding: 2px 5px !important;
    font-size: 10.5px !important;
    min-height: 22px;
    box-shadow: none !important;
    text-shadow: none !important;
}

md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select > .btn:hover,
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select > .btn.btn-default:hover,
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select > button:hover,
md-dialog.axeane-modern-dialog .axm-table-header .bootstrap-select > .btn:hover,
md-dialog.axeane-modern-dialog .axm-table-header .bootstrap-select > .btn.btn-default:hover,
md-dialog.axeane-modern-dialog .axm-table-header .bootstrap-select > .dropdown-toggle:hover,
md-dialog.axeane-modern-dialog .axm-table-header .axm-th .btn-group > .btn.dropdown-toggle:hover {
    background: rgba(255,255,255,0.25) !important;
    border-color: rgba(255,255,255,0.4) !important;
}

md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select > .btn .caret,
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select > button .caret,
md-dialog.axeane-modern-dialog .axm-table-header .bootstrap-select > .btn .caret,
md-dialog.axeane-modern-dialog .axm-table-header .axm-th .btn-group > .btn .caret {
    color: #fff !important;
    border-top-color: #fff !important;
}

/* --- Barre de recherche dans le dropdown --- */
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu .bs-searchbox input,
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select .dropdown-menu .bs-searchbox input,
md-dialog.axeane-modern-dialog .axm-table-header .bootstrap-select .dropdown-menu .bs-searchbox input {
    background: #fff !important;
    background-color: #fff !important;
    color: #333 !important;
    border: 1px solid #c3c9dc !important;
    border-radius: 4px !important;
}

md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu .bs-searchbox input::placeholder,
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select .dropdown-menu .bs-searchbox input::placeholder {
    color: #999 !important;
}

/* --- Boutons actions (Tout sélectionner / Désélectionner) --- */
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu .bs-actionsbox .btn-group .btn,
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select .dropdown-menu .bs-actionsbox .btn-group .btn {
    color: #333 !important;
    background: #f5f5f5 !important;
    background-color: #f5f5f5 !important;
    border: 1px solid #ddd !important;
}

md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu .bs-actionsbox .btn-group .btn:hover,
md-dialog.axeane-modern-dialog .axm-table-header .nya-bs-select .dropdown-menu .bs-actionsbox .btn-group .btn:hover {
    background: #e8eaf6 !important;
    background-color: #e8eaf6 !important;
    color: #1a237e !important;
}

/* --- Forcer la liste interne (.inner) à avoir un fond blanc --- */
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu .dropdown-menu.inner,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu ul.inner,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu .inner li,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu .inner li a {
    background: #fff !important;
    background-color: #fff !important;
    color: #333 !important;
}

md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu .inner li a:hover,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu .inner li:hover a {
    background: #e8eaf6 !important;
    background-color: #e8eaf6 !important;
    color: #1a237e !important;
}

md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu .inner li.active a,
md-dialog.axeane-modern-dialog .axm-table-header .dropdown-menu .inner li.selected a {
    background: #e8eaf6 !important;
    background-color: #e8eaf6 !important;
    color: #3F51B5 !important;
}

/* ===== Bouton calendrier dans le header de table — visible et joli ===== */
md-dialog.axeane-modern-dialog .axm-table-header .input-group-btn .btn,
md-dialog.axeane-modern-dialog .axm-table-header .input-group-btn .btn-default,
md-dialog.axeane-modern-dialog .axm-table-header .input-group-btn .btn.btn-sm,
md-dialog.axeane-modern-dialog .axm-table-header .input-group-btn .btn-default.btn-sm {
    background: rgba(255,255,255,0.25) !important;
    border: 1px solid rgba(255,255,255,0.45) !important;
    border-radius: 0 4px 4px 0 !important;
    color: #fff !important;
    padding: 3px 6px !important;
    min-height: 24px;
    max-height: 26px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s;
    cursor: pointer;
    box-shadow: 0 1px 3px rgba(0,0,0,0.12);
    line-height: 1;
}

md-dialog.axeane-modern-dialog .axm-table-header .input-group-btn .btn:hover,
md-dialog.axeane-modern-dialog .axm-table-header .input-group-btn .btn-default:hover {
    background: rgba(255,255,255,0.45) !important;
    border-color: rgba(255,255,255,0.65) !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.18);
}

md-dialog.axeane-modern-dialog .axm-table-header .input-group-btn .btn .glyphicon-calendar,
md-dialog.axeane-modern-dialog .axm-table-header .input-group-btn .btn-default .glyphicon-calendar,
md-dialog.axeane-modern-dialog .axm-table-header .input-group-btn .btn i {
    color: #fff !important;
    font-size: 11px;
    text-shadow: 0 1px 2px rgba(0,0,0,0.2);
}

/* ===== input-group dans le header — aligner le input et le bouton ===== */
md-dialog.axeane-modern-dialog .axm-table-header .input-group {
    display: flex;
    align-items: stretch;
    flex-wrap: nowrap;
    width: 100%;
    max-width: 100%;
}

md-dialog.axeane-modern-dialog .axm-table-header .input-group input {
    flex: 1;
    min-width: 0;
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    max-width: calc(100% - 28px);
}

md-dialog.axeane-modern-dialog .axm-table-header .input-group .input-group-btn {
    display: flex;
    align-items: stretch;
    width: auto;
    flex-shrink: 0;
}

md-dialog.axeane-modern-dialog .axm-table-header .input-group-btn .btn {
    border-top-left-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
    height: 100%;
}

/* Empêcher les axm-th avec input-group de déborder */
md-dialog.axeane-modern-dialog .axm-table-header .axm-th {
    box-sizing: border-box;
    overflow: visible;
}

/* ===== Bouton calendrier dans le filter panel (fond clair) ===== */
md-dialog.axeane-modern-dialog .axm-filter-panel .input-group-btn .btn,
md-dialog.axeane-modern-dialog .axm-filter-panel .input-group-btn .btn-default,
md-dialog.axeane-modern-dialog .advanced-search-section .input-group-btn .btn,
md-dialog.axeane-modern-dialog .advanced-search-section .input-group-btn .btn-default {
    background: #f0f2fa !important;
    border: 1px solid #c3c9dc !important;
    border-radius: 4px !important;
    color: #3F51B5 !important;
    padding: 3px 8px !important;
    min-height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s;
    cursor: pointer;
}

md-dialog.axeane-modern-dialog .axm-filter-panel .input-group-btn .btn:hover,
md-dialog.axeane-modern-dialog .axm-filter-panel .input-group-btn .btn-default:hover,
md-dialog.axeane-modern-dialog .advanced-search-section .input-group-btn .btn:hover,
md-dialog.axeane-modern-dialog .advanced-search-section .input-group-btn .btn-default:hover {
    background: #e8eaf6 !important;
    border-color: #3F51B5 !important;
}

md-dialog.axeane-modern-dialog .axm-filter-panel .input-group-btn .btn i,
md-dialog.axeane-modern-dialog .axm-filter-panel .input-group-btn .btn .glyphicon-calendar,
md-dialog.axeane-modern-dialog .advanced-search-section .input-group-btn .btn i,
md-dialog.axeane-modern-dialog .advanced-search-section .input-group-btn .btn .glyphicon-calendar {
    color: #3F51B5 !important;
    font-size: 12px;
}

