/* ═══════════════════════════════════════════════════════════
   UNIDET v2 — Shell
   Sidebar + Topbar + Body + Footer
   Réutilise les tokens :root de style.css existant
   ═══════════════════════════════════════════════════════════ */

/* ─── Reset de base ─── */
.ud-v2-layout,
.ud-v2-layout * {
    box-sizing: border-box;
}

.ud-v2-layout {
    display: grid;
    grid-template-columns: 240px minmax(0, 1fr);
    width: 100vw;
    height: 100vh;
    overflow: hidden;
    background: var(--ud-bg, #FAFAF9);
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    transition: grid-template-columns 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.ud-v2-layout.ud-collapsed {
    grid-template-columns: 72px minmax(0, 1fr);
}

/* ═══════════════════════════════════════════════════════════
   SIDEBAR
   ═══════════════════════════════════════════════════════════ */
.ud-v2-layout .ud-sidebar {
    width: 100%;
    height: 100vh;
    background: #0D0D0D;
    color: #fff;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    overflow-x: hidden;
    z-index: 100;
    transition: width 0.3s;
}

.ud-v2-layout .ud-sidebar-head {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 20px 16px;
    border-bottom: 1px solid rgba(255,255,255,0.06);
    flex-shrink: 0;
    min-height: 88px;
    position: relative;
}

.ud-v2-layout .ud-brand {
    flex: 1;
    display: flex;
    align-items: center;
    text-decoration: none;
    min-width: 0;
}

.ud-v2-layout .ud-brand-logo {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.ud-v2-layout .ud-brand-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.ud-v2-layout .ud-sidebar-toggle {
    width: 30px;
    height: 30px;
    min-width: 30px;
    border-radius: 50%;
    background: rgba(201, 162, 39, 0.12);
    border: 1px solid rgba(201, 162, 39, 0.3);
    color: #C9A227;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s;
    padding: 0;
}

.ud-v2-layout .ud-sidebar-toggle:hover {
    background: rgba(201, 162, 39, 0.25);
    border-color: rgba(201, 162, 39, 0.5);
    transform: scale(1.08);
}

.ud-v2-layout .ud-sidebar-close {
    display: none;
    background: none;
    border: none;
    color: rgba(255,255,255,0.6);
    cursor: pointer;
    padding: 6px;
    border-radius: 6px;
}

.ud-v2-layout .ud-sidebar-close:hover {
    background: rgba(255,255,255,0.08);
    color: #fff;
}

/* ─── Navigation ─── */
.ud-v2-layout .ud-nav {
    flex: 1 1 auto;
    padding: 18px 10px;
    display: flex;
    flex-direction: column;
    gap: 22px;
    overflow-y: auto;
}

.ud-v2-layout .ud-nav-group {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.ud-v2-layout .ud-nav-group-title {
    font-size: 10px;
    color: #6B6B6B;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-weight: 700;
    padding: 0 12px 6px;
}

.ud-v2-layout .ud-nav-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 14px;
    background: none;
    border: none;
    color: #B8B8B8;
    font-family: inherit;
    font-size: 13.5px;
    font-weight: 500;
    cursor: pointer;
    border-radius: 9px;
    transition: all 0.15s ease;
    text-align: left;
    width: 100%;
    text-decoration: none;
    position: relative;
}

.ud-v2-layout .ud-nav-item:hover {
    background: rgba(255,255,255,0.05);
    color: #fff;
    text-decoration: none;
}

.ud-v2-layout .ud-nav-item.active {
    background: rgba(201, 162, 39, 0.14);
    color: #C9A227;
    font-weight: 600;
}

.ud-v2-layout .ud-nav-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    min-width: 20px;
    height: 20px;
    flex-shrink: 0;
}

.ud-v2-layout .ud-nav-icon svg {
    width: 18px;
    height: 18px;
    stroke: currentColor;
    fill: none;
    stroke-width: 2;
}

.ud-v2-layout .ud-nav-label {
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ─── Foot (user + logout) ─── */
.ud-v2-layout .ud-sidebar-foot {
    padding: 14px 12px;
    border-top: 1px solid rgba(255,255,255,0.06);
    display: flex;
    flex-direction: column;
    gap: 8px;
    flex-shrink: 0;
}

.ud-v2-layout .ud-user-card {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 10px;
    border-radius: 10px;
}

.ud-v2-layout .ud-avatar {
    width: 38px;
    height: 38px;
    min-width: 38px;
    border-radius: 50%;
    background: #C9A227;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    overflow: hidden;
}

.ud-v2-layout .ud-avatar-initials {
    font-size: 13px;
    font-weight: 800;
    color: #0D0D0D;
    letter-spacing: 0.5px;
}

.ud-v2-layout .ud-user-info {
    flex: 1;
    min-width: 0;
}

.ud-v2-layout .ud-user-name {
    font-size: 13px;
    font-weight: 600;
    color: #fff;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.2;
}

.ud-v2-layout .ud-user-role {
    font-size: 10px;
    color: #6B6B6B;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-weight: 600;
    margin-top: 2px;
}

.ud-v2-layout .ud-logout-btn {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    background: transparent;
    color: #B8B8B8;
    border: none;
    border-radius: 9px;
    font-family: inherit;
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    text-decoration: none;
    transition: all 0.15s;
}

.ud-v2-layout .ud-logout-btn:hover {
    background: rgba(239, 68, 68, 0.12);
    color: #EF4444;
    text-decoration: none;
}

/* ═══════════════════════════════════════════════════════════
   CONTENU
   ═══════════════════════════════════════════════════════════ */
.ud-v2-layout .ud-content {
    display: flex;
    flex-direction: column;
    height: 100vh;
    overflow: hidden;
    background: #FAFAF9;
    min-width: 0;
}

.ud-v2-layout .ud-topbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 22px 32px;
    background: #FAFAF9;
    border-bottom: 1px solid #EAEAEA;
    flex-shrink: 0;
    gap: 16px;
    min-height: 76px;
}

.ud-v2-layout .ud-menu-toggle {
    display: none;
    flex-direction: column;
    gap: 4px;
    width: 40px;
    height: 40px;
    background: #F0F4F8;
    border: 1.5px solid #E5E9F0;
    border-radius: 10px;
    cursor: pointer;
    padding: 0;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.ud-v2-layout .ud-menu-toggle span {
    display: block;
    width: 18px;
    height: 2px;
    background: #0A0E17;
    border-radius: 2px;
}

.ud-v2-layout .ud-topbar-title {
    flex: 1;
    min-width: 0;
}

.ud-v2-layout .ud-topbar-title h1 {
    margin: 0;
    font-size: 22px;
    font-weight: 700;
    color: #0A0E17;
    letter-spacing: -0.4px;
    line-height: 1.2;
}

.ud-v2-layout .ud-topbar-title p {
    margin: 4px 0 0;
    font-size: 13px;
    color: #8A8A8A;
}

.ud-v2-layout .ud-topbar-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
}

.ud-v2-layout .ud-body {
    flex: 1 1 auto;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 24px 32px 40px;
    min-height: 0;
}

.ud-v2-layout .ud-footer {
    padding: 16px 32px;
    border-top: 1px solid #EAEAEA;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    font-size: 12px;
    color: #8A8A8A;
    flex-shrink: 0;
    background: #FAFAF9;
}

.ud-v2-layout .ud-footer strong {
    color: #A0824D;
    font-weight: 800;
    letter-spacing: 0.05em;
}

.ud-v2-layout .ud-footer-links {
    display: flex;
    align-items: center;
    gap: 8px;
}

.ud-v2-layout .ud-footer-links a {
    color: #8A8A8A;
    text-decoration: none;
    font-weight: 600;
    transition: color 0.15s;
}

.ud-v2-layout .ud-footer-links a:hover {
    color: #C9A227;
}

.ud-v2-layout .ud-footer-sep {
    color: #D4D4D4;
}

/* ═══════════════════════════════════════════════════════════
   PLACEHOLDER (Phase 2)
   ═══════════════════════════════════════════════════════════ */
.ud-v2-layout .ud-view-placeholder {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 80px 20px;
    text-align: center;
    background: #fff;
    border: 2px dashed #E5E9F0;
    border-radius: 14px;
    min-height: 400px;
}

.ud-v2-layout .ud-view-placeholder-icon {
    font-size: 56px;
    opacity: 0.4;
    margin-bottom: 16px;
    line-height: 1;
}

.ud-v2-layout .ud-view-placeholder-title {
    font-size: 20px;
    font-weight: 700;
    color: #0A0E17;
    margin: 0 0 8px;
    font-family: 'Courier New', monospace;
}

.ud-v2-layout .ud-view-placeholder-sub {
    font-size: 14px;
    color: #8A8A8A;
    margin: 0;
}

/* ═══════════════════════════════════════════════════════════
   ÉTAT REPLIÉ (desktop)
   ═══════════════════════════════════════════════════════════ */
.ud-v2-layout.ud-collapsed .ud-sidebar-head {
    flex-direction: column;
    gap: 8px;
    padding: 16px 8px;
    min-height: auto;
    align-items: center;
}

.ud-v2-layout.ud-collapsed .ud-brand {
    justify-content: center;
    flex: 0 0 auto;
}

.ud-v2-layout.ud-collapsed .ud-nav-group-title { display: none; }

.ud-v2-layout.ud-collapsed .ud-nav-item {
    justify-content: center;
    padding: 12px 8px;
}

.ud-v2-layout.ud-collapsed .ud-nav-label { display: none; }

.ud-v2-layout.ud-collapsed .ud-user-info,
.ud-v2-layout.ud-collapsed .ud-logout-text { display: none; }

.ud-v2-layout.ud-collapsed .ud-user-card,
.ud-v2-layout.ud-collapsed .ud-logout-btn {
    justify-content: center;
    padding: 8px;
}

.ud-v2-layout.ud-collapsed .ud-toggle-icon svg {
    transform: rotate(180deg);
}

/* ═══════════════════════════════════════════════════════════
   OVERLAY MOBILE
   ═══════════════════════════════════════════════════════════ */
.ud-v2-layout ~ .ud-overlay,
.ud-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(10, 14, 23, 0.55);
    z-index: 9998;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
}

.ud-overlay.active {
    opacity: 1;
    visibility: visible;
}

/* ═══════════════════════════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════════════════════════ */
@media (max-width: 1024px) {
    .ud-v2-layout {
        display: block;
        height: 100dvh;
    }

    .ud-v2-layout .ud-sidebar {
        position: fixed;
        top: 0;
        left: 0;
        width: 280px;
        max-width: 85vw;
        height: 100dvh;
        transform: translateX(-100%);
        transition: transform 0.3s ease;
        box-shadow: 4px 0 25px rgba(0,0,0,0.3);
        z-index: 9999;
    }

    .ud-v2-layout .ud-sidebar.open {
        transform: translateX(0);
    }

    .ud-v2-layout .ud-sidebar-toggle { display: none; }

    .ud-v2-layout .ud-sidebar-close {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .ud-v2-layout .ud-content {
        height: 100dvh;
    }

    .ud-v2-layout .ud-menu-toggle {
        display: flex;
    }

    .ud-v2-layout .ud-topbar {
        padding: 16px 20px;
        min-height: 68px;
    }

    .ud-v2-layout .ud-topbar-title h1 {
        font-size: 18px;
    }

    .ud-v2-layout .ud-body {
        padding: 20px 20px 40px;
    }

    .ud-v2-layout .ud-footer {
        padding: 14px 20px;
        font-size: 11.5px;
    }
}

@media (max-width: 560px) {
    .ud-v2-layout .ud-topbar-title h1 {
        font-size: 16px;
    }

    .ud-v2-layout .ud-body {
        padding: 16px 14px 40px;
    }

    .ud-v2-layout .ud-footer {
        padding: 12px 14px;
    }
}


/* ═══════════════════════════════════════════════════════════
   SECTION HOME CLIENT
   ═══════════════════════════════════════════════════════════ */

/* ─── KPI Cards ─── */
.ud-v2-layout .ud-home-kpis {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 20px;
}

.ud-v2-layout .ud-home-kpi {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 18px 20px;
    background: #fff;
    border: 1px solid #EAEAEA;
    border-left: 3px solid #3B82F6;
    border-radius: 14px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04);
    transition: transform 0.2s, box-shadow 0.2s;
    min-width: 0;
}

.ud-v2-layout .ud-home-kpi:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(0,0,0,0.06);
}

.ud-v2-layout .ud-home-kpi.total   { border-left-color: #3B82F6; }
.ud-v2-layout .ud-home-kpi.recupe  { border-left-color: #22C55E; }
.ud-v2-layout .ud-home-kpi.cours   { border-left-color: #F59E0B; }
.ud-v2-layout .ud-home-kpi.cloture { border-left-color: #0A0E17; }

.ud-v2-layout .ud-home-kpi-icon {
    width: 44px;
    height: 44px;
    min-width: 44px;
    border-radius: 11px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.ud-v2-layout .ud-home-kpi.total   .ud-home-kpi-icon { background: #EFF6FF; color: #1D4ED8; }
.ud-v2-layout .ud-home-kpi.recupe  .ud-home-kpi-icon { background: #ECFDF5; color: #059669; }
.ud-v2-layout .ud-home-kpi.cours   .ud-home-kpi-icon { background: #FFF7ED; color: #EA580C; }
.ud-v2-layout .ud-home-kpi.cloture .ud-home-kpi-icon { background: #F1F5F9; color: #475569; }

.ud-v2-layout .ud-home-kpi-body {
    min-width: 0;
    flex: 1;
}

.ud-v2-layout .ud-home-kpi-label {
    font-size: 11px;
    font-weight: 700;
    color: #94A3B8;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    margin-bottom: 4px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ud-v2-layout .ud-home-kpi-value {
    font-size: 20px;
    font-weight: 800;
    color: #0A0E17;
    line-height: 1.1;
    letter-spacing: -0.4px;
    margin-bottom: 3px;
    font-variant-numeric: tabular-nums;
    word-break: break-word;
}

.ud-v2-layout .ud-home-kpi-sub {
    font-size: 11.5px;
    color: #94A3B8;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ─── CTA Hero ─── */
.ud-v2-layout .ud-home-hero-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 22px 26px;
    background: linear-gradient(135deg, #0A0E17 0%, #1A1F2E 100%);
    border-radius: 16px;
    margin-bottom: 20px;
    color: #fff;
}

.ud-v2-layout .ud-home-hero-cta-left {
    display: flex;
    align-items: center;
    gap: 16px;
    flex: 1;
    min-width: 0;
}

.ud-v2-layout .ud-home-hero-cta-icon {
    width: 52px;
    height: 52px;
    min-width: 52px;
    border-radius: 12px;
    background: rgba(212, 163, 115, 0.14);
    color: #C9A227;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.ud-v2-layout .ud-home-hero-cta-text h3 {
    margin: 0 0 4px;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    line-height: 1.25;
}

.ud-v2-layout .ud-home-hero-cta-text p {
    margin: 0;
    font-size: 13px;
    color: rgba(255, 255, 255, 0.68);
    line-height: 1.45;
}

.ud-v2-layout .ud-home-hero-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 13px 24px;
    background: linear-gradient(135deg, #E3C766 0%, #C9A227 100%);
    color: #0A0E17;
    border-radius: 10px;
    font-size: 13.5px;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
    flex-shrink: 0;
    transition: all 0.18s ease;
    line-height: 1;
    border: none;
    cursor: pointer;
}

.ud-v2-layout .ud-home-hero-cta-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(201, 162, 39, 0.35);
    color: #0A0E17;
    text-decoration: none;
}

/* ─── Grid 2 colonnes ─── */
.ud-v2-layout .ud-home-grid-2 {
    display: grid;
    grid-template-columns: 1.4fr 1fr;
    gap: 20px;
    margin-bottom: 20px;
    align-items: start;
}

.ud-v2-layout .ud-home-section {
    background: #fff;
    border: 1px solid #EAEAEA;
    border-radius: 14px;
    padding: 22px 24px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04);
}

.ud-v2-layout .ud-home-section-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 16px;
    flex-wrap: wrap;
}

.ud-v2-layout .ud-home-section-title {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    font-size: 16px;
    font-weight: 700;
    color: #0A0E17;
    letter-spacing: -0.2px;
}

.ud-v2-layout .ud-home-section-title .icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #C9A227;
}

.ud-v2-layout .ud-home-section-link {
    background: none;
    border: none;
    color: #A0824D;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    padding: 4px 0;
    white-space: nowrap;
    cursor: pointer;
    transition: color 0.15s;
}

.ud-v2-layout .ud-home-section-link:hover {
    color: #C9A227;
    text-decoration: none;
}

/* ─── Liste dossiers ─── */
.ud-v2-layout .ud-home-dossiers-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.ud-v2-layout .ud-home-dossier-row {
    display: grid;
    grid-template-columns: 130px 1fr 90px 80px 80px;
    gap: 10px;
    align-items: center;
    padding: 10px 12px;
    background: #FAFAF9;
    border-radius: 10px;
    font-size: 13px;
}

.ud-v2-layout .ud-home-dossier-ref {
    font-family: 'Courier New', monospace;
    font-size: 11.5px;
    font-weight: 800;
    color: #0A0E17;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ud-v2-layout .ud-home-dossier-debiteur {
    font-weight: 600;
    color: #334155;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}

.ud-v2-layout .ud-home-dossier-montant {
    font-family: 'Courier New', monospace;
    font-weight: 800;
    color: #0A0E17;
    text-align: right;
    white-space: nowrap;
}

.ud-v2-layout .ud-home-dossier-statut {
    text-align: center;
}

.ud-v2-layout .ud-home-dossier-date {
    font-size: 11.5px;
    color: #94A3B8;
    text-align: right;
    white-space: nowrap;
}

/* ─── Badges statuts ─── */
.ud-v2-layout .ud-badge {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 100px;
    font-size: 10.5px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    white-space: nowrap;
}

.ud-v2-layout .ud-badge-actif          { background: #ECFDF5; color: #047857; }
.ud-v2-layout .ud-badge-en_cours       { background: #EFF6FF; color: #1D4ED8; }
.ud-v2-layout .ud-badge-en_attente     { background: #FFF7ED; color: #C2410C; }
.ud-v2-layout .ud-badge-paye           { background: #ECFDF5; color: #047857; }
.ud-v2-layout .ud-badge-impaye         { background: #FEF2F2; color: #B91C1C; }
.ud-v2-layout .ud-badge-refuse         { background: #F1F5F9; color: #475569; }
.ud-v2-layout .ud-badge-default        { background: #F1F5F9; color: #475569; }

/* ─── Activité ─── */
.ud-v2-layout .ud-home-activity-list {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.ud-v2-layout .ud-home-activity {
    display: flex;
    gap: 10px;
    padding: 12px 0;
    border-bottom: 1px dashed #F1F5F9;
}

.ud-v2-layout .ud-home-activity:last-child {
    border-bottom: none;
}

.ud-v2-layout .ud-home-activity-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    margin-top: 6px;
    flex-shrink: 0;
}

.ud-v2-layout .ud-home-activity-text {
    font-size: 13px;
    color: #334155;
    line-height: 1.45;
    font-weight: 500;
}

.ud-v2-layout .ud-home-activity-date {
    font-size: 11.5px;
    color: #94A3B8;
    margin-top: 3px;
}

/* ─── Empty state ─── */
.ud-v2-layout .ud-home-empty {
    text-align: center;
    padding: 32px 20px;
}

.ud-v2-layout .ud-home-empty-icon {
    opacity: 0.25;
    margin-bottom: 12px;
    color: #94A3B8;
    display: flex;
    justify-content: center;
}

.ud-v2-layout .ud-home-empty-text {
    font-size: 14px;
    color: #334155;
    font-weight: 600;
    margin: 0 0 4px;
}

.ud-v2-layout .ud-home-empty-sub {
    font-size: 12.5px;
    color: #94A3B8;
    margin: 0;
    line-height: 1.5;
}

/* ─── Support ─── */
.ud-v2-layout .ud-home-support {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 20px 24px;
    background: linear-gradient(135deg, #FDF6E3 0%, #FAF3E0 100%);
    border: 1px solid #F0E4C0;
    border-radius: 14px;
}

.ud-v2-layout .ud-home-support-left {
    display: flex;
    align-items: center;
    gap: 14px;
    flex: 1;
    min-width: 0;
}

.ud-v2-layout .ud-home-support-icon {
    width: 46px;
    height: 46px;
    min-width: 46px;
    border-radius: 11px;
    background: linear-gradient(135deg, #E3C766 0%, #C9A227 100%);
    color: #0A0E17;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.ud-v2-layout .ud-home-support-text h4 {
    margin: 0 0 3px;
    font-size: 14px;
    font-weight: 700;
    color: #0A0E17;
}

.ud-v2-layout .ud-home-support-text p {
    margin: 0;
    font-size: 12.5px;
    color: #8A8A8A;
}

.ud-v2-layout .ud-home-support-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 11px 20px;
    background: #fff;
    border: 1px solid #E8DCC0;
    border-radius: 10px;
    color: #0A0E17;
    font-size: 13.5px;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
    flex-shrink: 0;
    transition: all 0.15s;
}

.ud-v2-layout .ud-home-support-btn:hover {
    background: linear-gradient(135deg, #E3C766 0%, #C9A227 100%);
    color: #0A0E17;
    border-color: #C9A227;
    transform: translateY(-1px);
    text-decoration: none;
}

/* ═══════════════════════════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════════════════════════ */
@media (max-width: 1100px) {
    .ud-v2-layout .ud-home-kpis {
        grid-template-columns: repeat(2, 1fr);
    }
    .ud-v2-layout .ud-home-grid-2 {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 700px) {
    .ud-v2-layout .ud-home-kpis {
        grid-template-columns: 1fr;
    }
    .ud-v2-layout .ud-home-hero-cta {
        flex-direction: column;
        align-items: flex-start;
    }
    .ud-v2-layout .ud-home-hero-cta-btn {
        width: 100%;
        justify-content: center;
    }
    .ud-v2-layout .ud-home-support {
        flex-direction: column;
        align-items: flex-start;
    }
    .ud-v2-layout .ud-home-support-btn {
        width: 100%;
        justify-content: center;
    }
    .ud-v2-layout .ud-home-dossier-row {
        grid-template-columns: 1fr 1fr;
        gap: 6px;
    }
    .ud-v2-layout .ud-home-dossier-debiteur { grid-column: 1 / -1; }
    .ud-v2-layout .ud-home-dossier-montant { text-align: left; }
    .ud-v2-layout .ud-home-dossier-statut { text-align: left; }
    .ud-v2-layout .ud-home-dossier-date { text-align: left; }
}


/* ═══════════════════════════════════════════════════════════
   FIX — Décalage horizontal + reset parent
   ═══════════════════════════════════════════════════════════ */

/* 1. Reset COMPLET des conteneurs parents WordPress
   → neutralise les marges/paddings d'Elementor, du thème, etc. */
html body.ud-v2-shell {
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
    background: #FAFAF9 !important;
}

html body.ud-v2-shell #page,
html body.ud-v2-shell #content,
html body.ud-v2-shell #primary,
html body.ud-v2-shell #main,
html body.ud-v2-shell .site,
html body.ud-v2-shell .site-content,
html body.ud-v2-shell .site-main,
html body.ud-v2-shell .entry-content,
html body.ud-v2-shell .post-content,
html body.ud-v2-shell main:not(.ud-body),
html body.ud-v2-shell article:not(.udc-card):not(.ud-dossier-card):not(.ud-contrat-card),
html body.ud-v2-shell .elementor,
html body.ud-v2-shell .elementor-section,
html body.ud-v2-shell .elementor-container,
html body.ud-v2-shell .elementor-column,
html body.ud-v2-shell .elementor-widget-wrap,
html body.ud-v2-shell .elementor-widget,
html body.ud-v2-shell .elementor-widget-container,
html body.ud-v2-shell .elementor-widget-shortcode,
html body.ud-v2-shell .elementor-shortcode,
html body.ud-v2-shell .e-con,
html body.ud-v2-shell .e-con-boxed,
html body.ud-v2-shell .e-con-inner,
html body.ud-v2-shell .e-con-full,
html body.ud-v2-shell [class*="e-con-"],
html body.ud-v2-shell [class*="elementor-element-"],
html body.ud-v2-shell [data-elementor-type],
html body.ud-v2-shell [data-elementor-id] {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

/* 2. Cache le header/footer WordPress sur les pages v2 */
html body.ud-v2-shell header:not(.ud-topbar),
html body.ud-v2-shell footer:not(.ud-footer),
html body.ud-v2-shell .site-header,
html body.ud-v2-shell .site-footer,
html body.ud-v2-shell .elementor-location-header,
html body.ud-v2-shell .elementor-location-footer {
    display: none !important;
}

/* 3. Masque la barre admin WordPress en haut */
html body.ud-v2-shell {
    margin-top: 0 !important;
}

html body.ud-v2-shell.admin-bar {
    margin-top: 0 !important;
}

html body.ud-v2-shell #wpadminbar {
    display: none !important;
}

/* 4. Force la largeur du layout sans 100vw (qui inclut la scrollbar) */
html body.ud-v2-shell .ud-v2-layout {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* 5. Empêche le débordement horizontal */
html body.ud-v2-shell .ud-v2-layout,
html body.ud-v2-shell .ud-content,
html body.ud-v2-shell .ud-body {
    overflow-x: hidden !important;
}

/* 6. Fix hauteur : évite que les parents coupent le layout */
html body.ud-v2-shell #page,
html body.ud-v2-shell #content,
html body.ud-v2-shell .site,
html body.ud-v2-shell .site-content,
html body.ud-v2-shell .entry-content,
html body.ud-v2-shell main:not(.ud-body),
html body.ud-v2-shell .elementor,
html body.ud-v2-shell .e-con {
    height: 100vh !important;
    max-height: 100vh !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

/* 7. Fix grille : la colonne 2 prend tout l'espace restant */
html body.ud-v2-shell .ud-v2-layout {
    grid-template-columns: 240px minmax(0, 1fr) !important;
}

html body.ud-v2-shell .ud-v2-layout.ud-collapsed {
    grid-template-columns: 72px minmax(0, 1fr) !important;
}


/* ═══════════════════════════════════════════════════════════
   FIX TOPBAR — Paddings + cloche
   ═══════════════════════════════════════════════════════════ */

html body.ud-v2-shell .ud-v2-layout .ud-topbar {
    padding: 20px 32px !important;
    min-height: 76px !important;
    box-sizing: border-box !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-topbar-title h1 {
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #0A0E17 !important;
    margin: 0 !important;
    letter-spacing: -0.4px !important;
    line-height: 1.2 !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-topbar-title p {
    font-size: 13px !important;
    color: #8A8A8A !important;
    margin: 4px 0 0 !important;
    line-height: 1.4 !important;
}

/* Cloche notifications */
html body.ud-v2-shell .ud-v2-layout .ud-bell {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 42px !important;
    height: 42px !important;
    background: #fff !important;
    border: 1px solid #E5E9F0 !important;
    border-radius: 11px !important;
    cursor: pointer !important;
    transition: all 0.15s !important;
    color: #0A0E17 !important;
    padding: 0 !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-bell:hover {
    background: #F8FAFC !important;
    border-color: #C9A227 !important;
    color: #C9A227 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(201, 162, 39, 0.15) !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-bell-badge {
    position: absolute !important;
    top: -5px !important;
    right: -5px !important;
    min-width: 18px !important;
    height: 18px !important;
    padding: 0 5px !important;
    background: #EF4444 !important;
    color: #fff !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    border-radius: 100px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 2px solid #FAFAF9 !important;
    line-height: 1 !important;
}

/* Fix padding body — plus d'aération */
html body.ud-v2-shell .ud-v2-layout .ud-body {
    padding: 24px 32px 40px !important;
    box-sizing: border-box !important;
}

/* Fix footer */
html body.ud-v2-shell .ud-v2-layout .ud-footer {
    padding: 16px 32px !important;
    box-sizing: border-box !important;
}



/* ═══════════════════════════════════════════════════════════
   🎯 DENSITY 5 — ULTRA COMPACT
   Maximum d'informations, minimum d'air.
   Modifier les variables = ajuster partout.
   ═══════════════════════════════════════════════════════════ */

:root {
    /* Padding */
    --ud-d5-pad-body:        14px 20px 22px;
    --ud-d5-pad-topbar:      10px 20px;
    --ud-d5-pad-section:     10px 14px;
    --ud-d5-pad-sidebar:     10px 14px;

    /* Gaps */
    --ud-d5-gap-lg:          10px;
    --ud-d5-gap-md:          8px;
    --ud-d5-gap-sm:          4px;

    /* KPI */
    --ud-d5-kpi-height:      56px;
    --ud-d5-kpi-icon:        28px;
    --ud-d5-kpi-value:       17px;
    --ud-d5-kpi-label:       9.5px;

    /* Fonts */
    --ud-d5-font-base:       12.5px;
    --ud-d5-font-small:      11px;
    --ud-d5-font-tiny:       10px;
}

/* ═══════════════════════════════════════════════════════════
   TOPBAR
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-topbar {
    padding: var(--ud-d5-pad-topbar) !important;
    min-height: 52px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-topbar-title h1 {
    font-size: 16px !important;
    letter-spacing: -0.2px !important;
    line-height: 1.15 !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-topbar-title p {
    font-size: 11px !important;
    margin-top: 1px !important;
    line-height: 1.3 !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-bell {
    width: 32px !important;
    height: 32px !important;
    border-radius: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-bell svg {
    width: 16px !important;
    height: 16px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-bell-badge {
    min-width: 15px !important;
    height: 15px !important;
    font-size: 9px !important;
    padding: 0 4px !important;
    top: -4px !important;
    right: -4px !important;
}

/* ═══════════════════════════════════════════════════════════
   BODY
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-body {
    padding: var(--ud-d5-pad-body) !important;
}

/* ═══════════════════════════════════════════════════════════
   SIDEBAR
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout {
    grid-template-columns: 210px minmax(0, 1fr) !important;
}
html body.ud-v2-shell .ud-v2-layout.ud-collapsed {
    grid-template-columns: 64px minmax(0, 1fr) !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-sidebar-head {
    padding: 10px 14px !important;
    min-height: 52px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-brand-logo {
    width: 28px !important;
    height: 28px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-sidebar-toggle {
    width: 26px !important;
    height: 26px !important;
    min-width: 26px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-nav {
    padding: 8px 6px !important;
    gap: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-nav-group {
    gap: 1px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-nav-group-title {
    font-size: 9px !important;
    padding: 0 8px 3px !important;
    letter-spacing: 0.08em !important;
    font-weight: 700 !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-nav-item {
    padding: 6px 10px !important;
    gap: 9px !important;
    font-size: 12.5px !important;
    border-radius: 6px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-nav-icon {
    width: 16px !important;
    min-width: 16px !important;
    height: 16px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-nav-icon svg {
    width: 15px !important;
    height: 15px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-sidebar-foot {
    padding: 8px 6px !important;
    gap: 4px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-user-card {
    padding: 4px 8px !important;
    gap: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-avatar {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-avatar-initials {
    font-size: 10px !important;
    letter-spacing: 0.3px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-user-name {
    font-size: 12px !important;
    line-height: 1.1 !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-user-role {
    font-size: 9px !important;
    margin-top: 1px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-logout-btn {
    padding: 6px 10px !important;
    font-size: 12px !important;
    gap: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-logout-btn svg {
    width: 14px !important;
    height: 14px !important;
}

/* ═══════════════════════════════════════════════════════════
   KPI CARDS — Ultra compactes
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-home-kpis {
    gap: var(--ud-d5-gap-md) !important;
    margin-bottom: var(--ud-d5-gap-lg) !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-kpi {
    padding: 8px 10px !important;
    gap: 8px !important;
    border-radius: 8px !important;
    min-height: var(--ud-d5-kpi-height) !important;
    border-left-width: 3px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-kpi-icon {
    width: var(--ud-d5-kpi-icon) !important;
    height: var(--ud-d5-kpi-icon) !important;
    min-width: var(--ud-d5-kpi-icon) !important;
    border-radius: 7px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-kpi-icon svg {
    width: 15px !important;
    height: 15px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-kpi-label {
    font-size: var(--ud-d5-kpi-label) !important;
    margin-bottom: 1px !important;
    letter-spacing: 0.3px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-kpi-value {
    font-size: var(--ud-d5-kpi-value) !important;
    letter-spacing: -0.3px !important;
    margin-bottom: 0 !important;
    line-height: 1.05 !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-kpi-sub {
    font-size: 10px !important;
    line-height: 1.2 !important;
}

/* ═══════════════════════════════════════════════════════════
   HERO CTA
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-home-hero-cta {
    padding: 10px 16px !important;
    gap: 12px !important;
    border-radius: 10px !important;
    margin-bottom: var(--ud-d5-gap-lg) !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-hero-cta-icon {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    border-radius: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-hero-cta-icon svg {
    width: 18px !important;
    height: 18px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-hero-cta-text h3 {
    font-size: 13.5px !important;
    margin-bottom: 1px !important;
    line-height: 1.2 !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-hero-cta-text p {
    font-size: 11.5px !important;
    line-height: 1.3 !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-hero-cta-btn {
    padding: 7px 14px !important;
    font-size: 12px !important;
    border-radius: 7px !important;
    gap: 6px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-hero-cta-btn svg {
    width: 14px !important;
    height: 14px !important;
}

/* ═══════════════════════════════════════════════════════════
   SECTIONS
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-home-section {
    padding: var(--ud-d5-pad-section) !important;
    border-radius: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-section-head {
    margin-bottom: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-section-title {
    font-size: 12.5px !important;
    gap: 6px !important;
    letter-spacing: -0.1px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-section-title .icon svg {
    width: 14px !important;
    height: 14px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-section-link {
    font-size: 11.5px !important;
    font-weight: 700 !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-home-grid-2 {
    gap: var(--ud-d5-gap-md) !important;
    margin-bottom: var(--ud-d5-gap-lg) !important;
}

/* ═══════════════════════════════════════════════════════════
   LISTE DOSSIERS — Ultra compacte
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-home-dossiers-list {
    gap: 2px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-dossier-row {
    padding: 6px 10px !important;
    gap: 8px !important;
    border-radius: 6px !important;
    font-size: 12px !important;
    grid-template-columns: 100px 1fr 75px 65px 65px !important;
    min-height: 32px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-dossier-ref {
    font-size: 10.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-dossier-debiteur {
    font-size: 12px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-dossier-montant {
    font-size: 12px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-dossier-date {
    font-size: 10.5px !important;
}

/* ═══════════════════════════════════════════════════════════
   BADGES — Plus petits
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-badge {
    padding: 2px 7px !important;
    font-size: 9.5px !important;
    letter-spacing: 0.2px !important;
    line-height: 1.3 !important;
}

/* ═══════════════════════════════════════════════════════════
   ACTIVITÉS — Compactes
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-home-activity {
    padding: 6px 0 !important;
    gap: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-activity-dot {
    width: 6px !important;
    height: 6px !important;
    margin-top: 5px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-activity-text {
    font-size: 11.5px !important;
    line-height: 1.4 !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-activity-date {
    font-size: 10px !important;
    margin-top: 1px !important;
}

/* ═══════════════════════════════════════════════════════════
   SUPPORT
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-home-support {
    padding: 10px 16px !important;
    gap: 12px !important;
    border-radius: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-support-icon {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    border-radius: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-support-icon svg {
    width: 16px !important;
    height: 16px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-support-text h4 {
    font-size: 12.5px !important;
    margin-bottom: 1px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-support-text p {
    font-size: 11px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-support-btn {
    padding: 7px 14px !important;
    font-size: 12px !important;
    border-radius: 7px !important;
    gap: 6px !important;
}

/* ═══════════════════════════════════════════════════════════
   EMPTY STATE
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-home-empty {
    padding: 18px 12px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-empty-icon svg {
    width: 28px !important;
    height: 28px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-empty-text {
    font-size: 12px !important;
    margin-bottom: 2px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-empty-sub {
    font-size: 11px !important;
    line-height: 1.4 !important;
}

/* ═══════════════════════════════════════════════════════════
   FOOTER
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-footer {
    padding: 8px 20px !important;
    font-size: 10.5px !important;
}

/* ═══════════════════════════════════════════════════════════
   PLACEHOLDER
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-view-placeholder {
    padding: 30px 20px !important;
    min-height: 200px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-view-placeholder-icon {
    font-size: 32px !important;
    margin-bottom: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-view-placeholder-title {
    font-size: 14px !important;
    margin-bottom: 3px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-view-placeholder-sub {
    font-size: 12px !important;
}

/* ═══════════════════════════════════════════════════════════
   SIDEBAR COLLAPSED
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout.ud-collapsed .ud-brand-logo {
    width: 24px !important;
    height: 24px !important;
}
html body.ud-v2-shell .ud-v2-layout.ud-collapsed .ud-nav-item {
    padding: 8px 6px !important;
}

/* ═══════════════════════════════════════════════════════════
   RESPONSIVE — garde la densité sur mobile
   ═══════════════════════════════════════════════════════════ */
@media (max-width: 1024px) {
    html body.ud-v2-shell .ud-v2-layout .ud-topbar {
        padding: 12px 16px !important;
        min-height: 56px !important;
    }
    html body.ud-v2-shell .ud-v2-layout .ud-body {
        padding: 14px 16px 24px !important;
    }
    html body.ud-v2-shell .ud-v2-layout .ud-footer {
        padding: 10px 16px !important;
    }
}

@media (max-width: 640px) {
    html body.ud-v2-shell .ud-v2-layout .ud-home-kpi {
        padding: 10px 12px !important;
        min-height: 62px !important;
    }
    html body.ud-v2-shell .ud-v2-layout .ud-home-kpi-value {
        font-size: 18px !important;
    }
    html body.ud-v2-shell .ud-v2-layout .ud-home-kpi-icon {
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
    }
}


/* ═══════════════════════════════════════════════════════════
   SECTION DOSSIERS (client)
   ═══════════════════════════════════════════════════════════ */

/* ─── Header de la section ─── */
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 12px;
    flex-wrap: wrap;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-head-left {
    flex: 1;
    min-width: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-title {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 2px;
    font-size: 16px;
    font-weight: 700;
    color: #0A0E17;
    letter-spacing: -0.2px;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-title svg {
    color: #C9A227;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-sub {
    margin: 0;
    font-size: 11.5px;
    color: #8A8A8A;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-head-actions {
    display: flex;
    gap: 6px;
    flex-shrink: 0;
}

/* ─── Boutons ─── */
html body.ud-v2-shell .ud-v2-layout .ud-btn-primary,
html body.ud-v2-shell .ud-v2-layout .ud-btn-secondary {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 12px;
    border-radius: 7px;
    font-family: inherit;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.15s;
    border: 1px solid transparent;
    line-height: 1;
    white-space: nowrap;
}
html body.ud-v2-shell .ud-v2-layout .ud-btn-primary {
    background: #0A0E17;
    color: #fff;
    border-color: #0A0E17;
}
html body.ud-v2-shell .ud-v2-layout .ud-btn-primary:hover {
    background: #1A1F2E;
    transform: translateY(-1px);
    color: #fff;
    text-decoration: none;
}
html body.ud-v2-shell .ud-v2-layout .ud-btn-secondary {
    background: #fff;
    color: #0A0E17;
    border-color: #E5E9F0;
}
html body.ud-v2-shell .ud-v2-layout .ud-btn-secondary:hover {
    background: #F8FAFC;
    border-color: #C9A227;
    color: #A0824D;
    text-decoration: none;
}

/* ─── Onglets statuts ─── */
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-tabs {
    display: flex;
    gap: 4px;
    overflow-x: auto;
    padding-bottom: 6px;
    margin-bottom: 10px;
    scrollbar-width: thin;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-tabs::-webkit-scrollbar {
    height: 4px;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-tabs::-webkit-scrollbar-thumb {
    background: #E5E9F0;
    border-radius: 2px;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-tab {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 10px;
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 7px;
    color: #64748B;
    font-family: inherit;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
    white-space: nowrap;
    transition: all 0.15s;
    flex-shrink: 0;
    line-height: 1;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-tab:hover {
    border-color: #C9A227;
    color: #A0824D;
    background: #FEFCF7;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-tab.is-active {
    background: #0A0E17;
    border-color: #0A0E17;
    color: #fff;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-tab.is-active .ud-dossiers-tab-count {
    background: #C9A227;
    color: #0A0E17;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-tab.is-empty:not(.is-active) {
    opacity: 0.4;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-tab-icon svg {
    width: 12px;
    height: 12px;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-tab-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 16px;
    padding: 0 5px;
    background: #F1F5F9;
    color: #475569;
    border-radius: 100px;
    font-size: 10px;
    font-weight: 800;
    line-height: 1;
}

/* ─── Filtres + recherche ─── */
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-filters {
    display: flex;
    gap: 6px;
    margin-bottom: 10px;
    align-items: center;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-search {
    flex: 1;
    position: relative;
    display: flex;
    align-items: center;
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 7px;
    transition: all 0.15s;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-search:focus-within {
    border-color: #C9A227;
    box-shadow: 0 0 0 3px rgba(201,162,39,0.1);
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-search-icon {
    display: inline-flex;
    align-items: center;
    padding: 0 8px 0 10px;
    color: #94A3B8;
    flex-shrink: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-search input {
    flex: 1;
    padding: 7px 4px;
    border: none;
    background: transparent;
    font-family: inherit;
    font-size: 12px;
    color: #0A0E17;
    outline: none;
    min-width: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-search input::placeholder {
    color: #94A3B8;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-search-clear {
    display: none;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    margin-right: 6px;
    border: none;
    background: #F1F5F9;
    color: #64748B;
    border-radius: 50%;
    cursor: pointer;
    padding: 0;
    flex-shrink: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-search-clear:hover {
    background: #E2E8F0;
    color: #0A0E17;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-select {
    padding: 7px 28px 7px 10px;
    background: #fff url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 8px center;
    background-size: 10px;
    border: 1px solid #E5E9F0;
    border-radius: 7px;
    font-family: inherit;
    font-size: 12px;
    font-weight: 600;
    color: #0A0E17;
    cursor: pointer;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-select:focus {
    border-color: #C9A227;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-reset {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: 1px solid #E5E9F0;
    background: #fff;
    border-radius: 7px;
    color: #64748B;
    cursor: pointer;
    transition: all 0.15s;
    flex-shrink: 0;
    padding: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-reset:hover {
    background: #FEF2F2;
    border-color: #FECACA;
    color: #DC2626;
}

/* ─── Table ─── */
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table-wrap {
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 10px;
    overflow: hidden;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
    table-layout: fixed;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table thead th {
    padding: 8px 10px;
    text-align: left;
    font-size: 9.5px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    color: #94A3B8;
    background: #F8FAFC;
    border-bottom: 1px solid #E5E9F0;
    white-space: nowrap;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table thead th svg {
    width: 11px;
    height: 11px;
    vertical-align: middle;
    margin-right: 3px;
    opacity: 0.7;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table tbody td {
    padding: 8px 10px;
    border-bottom: 1px solid #F1F5F9;
    vertical-align: middle;
    color: #0A0E17;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table tbody tr:last-child td {
    border-bottom: none;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table tbody tr {
    transition: background 0.12s;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table tbody tr:hover {
    background: #FEFCF7;
}

/* Colonnes */
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table .col-ref     { width: 160px; }
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table .col-debiteur{ width: auto; }
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table .col-montant { width: 120px; text-align: right; }
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table .col-statut  { width: 100px; }
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table .col-gest    { width: 160px; }
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table .col-date    { width: 80px; }
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table .col-actions { width: 80px; text-align: right; }

html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table td.col-montant .ud-dossiers-montant {
    font-family: 'Courier New', monospace;
    font-weight: 800;
    font-size: 12px;
    color: #0A0E17;
    letter-spacing: -0.2px;
}

/* Référence */
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-ref {
    font-family: 'Courier New', monospace;
    font-size: 11px;
    font-weight: 800;
    color: #0A0E17;
    letter-spacing: 0.1px;
    background: #F8FAFC;
    padding: 3px 7px;
    border-radius: 5px;
    display: inline-block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    box-sizing: border-box;
}

/* Débiteur */
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-debiteur {
    display: flex;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-debiteur-name {
    font-size: 12px;
    font-weight: 600;
    color: #0A0E17;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-debiteur-email {
    font-size: 10.5px;
    color: #94A3B8;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Gestionnaire */
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-gest {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-gest-avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    min-width: 22px;
    border-radius: 50%;
    background: #E0E7FF;
    color: #3730A3;
    font-size: 9px;
    font-weight: 800;
    flex-shrink: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-gest-avatar.is-admin {
    background: #FEF3C7;
    color: #92400E;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-gest-name {
    font-size: 11.5px;
    font-weight: 600;
    color: #334155;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-unassigned {
    font-size: 11px;
    color: #CBD5E1;
    font-style: italic;
}

/* Date */
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-date {
    display: flex;
    flex-direction: column;
    gap: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-date-main {
    font-size: 11.5px;
    font-weight: 700;
    color: #0A0E17;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-date-sub {
    font-size: 10px;
    color: #94A3B8;
}

/* Actions */
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-actions {
    display: inline-flex;
    gap: 4px;
    justify-content: flex-end;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: 1px solid #E5E9F0;
    background: #fff;
    border-radius: 7px;
    color: #475569;
    cursor: pointer;
    transition: all 0.15s;
    padding: 0;
    flex-shrink: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-action:hover {
    background: #0A0E17;
    border-color: #0A0E17;
    color: #C9A227;
    transform: translateY(-1px);
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-action.is-thread {
    background: linear-gradient(135deg, #D4A373 0%, #B8895C 100%);
    border-color: transparent;
    color: #fff;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-action.is-thread:hover {
    background: linear-gradient(135deg, #B8895C 0%, #A07544 100%);
    color: #fff;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-action svg {
    width: 13px;
    height: 13px;
}

/* ─── Résultats ─── */
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-results {
    display: flex;
    justify-content: center;
    gap: 4px;
    margin-top: 10px;
    font-size: 11.5px;
    color: #94A3B8;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-results strong {
    color: #0A0E17;
    font-weight: 800;
}

/* ─── Empty state ─── */
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    text-align: center;
    background: #fff;
    border: 2px dashed #E5E9F0;
    border-radius: 10px;
    min-height: 240px;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-empty-icon {
    color: #CBD5E1;
    margin-bottom: 10px;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-empty-title {
    margin: 0 0 4px;
    font-size: 14px;
    font-weight: 700;
    color: #0A0E17;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-empty-sub {
    margin: 0 0 14px;
    font-size: 12px;
    color: #94A3B8;
    line-height: 1.5;
}

/* ─── Spinner ─── */
html body.ud-v2-shell .ud-v2-layout .ud-v2-spinner {
    display: inline-block;
    width: 12px;
    height: 12px;
    border: 2px solid rgba(0,0,0,0.15);
    border-top-color: currentColor;
    border-radius: 50%;
    animation: udV2Spin 0.7s linear infinite;
    vertical-align: middle;
    margin-right: 4px;
}
@keyframes udV2Spin {
    to { transform: rotate(360deg); }
}

/* ─── Responsive ─── */
@media (max-width: 900px) {
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table .col-gest,
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table td.col-gest,
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table th.col-gest {
        display: none;
    }
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table .col-ref     { width: 130px; }
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table .col-montant { width: 100px; }
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table .col-statut  { width: 90px; }
}

@media (max-width: 640px) {
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table .col-date,
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table td.col-date,
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table th.col-date {
        display: none;
    }
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-head {
        flex-direction: column;
        align-items: flex-start;
    }
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-head-actions {
        width: 100%;
    }
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-head-actions .ud-btn-primary,
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-head-actions .ud-btn-secondary {
        flex: 1;
        justify-content: center;
    }
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-filters {
        flex-wrap: wrap;
    }
}


/* ═══════════════════════════════════════════════════════════
   PAGE HEAD (utilisé par plusieurs sections)
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-v2-page-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 12px;
    flex-wrap: wrap;
}
html body.ud-v2-shell .ud-v2-layout .ud-v2-page-head-left {
    flex: 1;
    min-width: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-v2-page-title {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 2px;
    font-size: 16px;
    font-weight: 700;
    color: #0A0E17;
    letter-spacing: -0.2px;
}
html body.ud-v2-shell .ud-v2-layout .ud-v2-page-title svg {
    color: #C9A227;
}
html body.ud-v2-shell .ud-v2-layout .ud-v2-page-sub {
    margin: 0;
    font-size: 11.5px;
    color: #8A8A8A;
}
html body.ud-v2-shell .ud-v2-layout .ud-v2-page-sub strong {
    color: #0A0E17;
    font-weight: 800;
}

/* ═══════════════════════════════════════════════════════════
   NOTIFICATIONS
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-notifs-list {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
html body.ud-v2-shell .ud-v2-layout .ud-notif-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 8px;
    transition: all 0.15s;
    position: relative;
}
html body.ud-v2-shell .ud-v2-layout .ud-notif-item:hover {
    border-color: #C9A227;
    box-shadow: 0 2px 8px rgba(201,162,39,0.06);
}
html body.ud-v2-shell .ud-v2-layout .ud-notif-item.is-unread {
    background: linear-gradient(90deg, #FEFCF7 0%, #fff 100%);
    border-color: #F0E4C0;
}
html body.ud-v2-shell .ud-v2-layout .ud-notif-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    min-width: 32px;
    border-radius: 8px;
    flex-shrink: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-notif-icon-green  { background: #ECFDF5; color: #059669; }
html body.ud-v2-shell .ud-v2-layout .ud-notif-icon-blue   { background: #EFF6FF; color: #1D4ED8; }
html body.ud-v2-shell .ud-v2-layout .ud-notif-icon-orange { background: #FFF7ED; color: #EA580C; }
html body.ud-v2-shell .ud-v2-layout .ud-notif-icon-red    { background: #FEF2F2; color: #DC2626; }
html body.ud-v2-shell .ud-v2-layout .ud-notif-icon-gold   { background: #FEF9E7; color: #A0824D; }
html body.ud-v2-shell .ud-v2-layout .ud-notif-icon-gray   { background: #F1F5F9; color: #475569; }

html body.ud-v2-shell .ud-v2-layout .ud-notif-icon svg {
    width: 15px;
    height: 15px;
}
html body.ud-v2-shell .ud-v2-layout .ud-notif-body {
    flex: 1;
    min-width: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-notif-msg {
    font-size: 12.5px;
    font-weight: 600;
    color: #0A0E17;
    line-height: 1.4;
}
html body.ud-v2-shell .ud-v2-layout .ud-notif-item:not(.is-unread) .ud-notif-msg {
    font-weight: 500;
    color: #475569;
}
html body.ud-v2-shell .ud-v2-layout .ud-notif-date {
    font-size: 10.5px;
    color: #94A3B8;
    margin-top: 2px;
}
html body.ud-v2-shell .ud-v2-layout .ud-notif-dot {
    width: 8px;
    height: 8px;
    background: #C9A227;
    border-radius: 50%;
    flex-shrink: 0;
    box-shadow: 0 0 0 3px rgba(201,162,39,0.15);
}

/* ═══════════════════════════════════════════════════════════
   SÉCURITÉ
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-securite-wrap {
    max-width: 720px;
}

html body.ud-v2-shell .ud-v2-layout .ud-securite-info {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    margin-bottom: 14px;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-info-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 8px;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-info-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    min-width: 32px;
    border-radius: 8px;
    background: #F8FAFC;
    color: #64748B;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-info-body {
    min-width: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-info-label {
    font-size: 10px;
    font-weight: 800;
    color: #94A3B8;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    margin-bottom: 1px;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-info-value {
    font-size: 12.5px;
    font-weight: 700;
    color: #0A0E17;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

html body.ud-v2-shell .ud-v2-layout .ud-securite-form-wrap {
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 10px;
    padding: 16px 20px;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-form-head {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
    padding-bottom: 12px;
    border-bottom: 1px solid #F1F5F9;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-form-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    min-width: 32px;
    border-radius: 8px;
    background: #FEF9E7;
    color: #A0824D;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-form-title {
    margin: 0 0 1px;
    font-size: 13.5px;
    font-weight: 700;
    color: #0A0E17;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-form-sub {
    margin: 0;
    font-size: 11px;
    color: #94A3B8;
}

html body.ud-v2-shell .ud-v2-layout .ud-securite-form {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-field {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-field label {
    font-size: 11.5px;
    font-weight: 700;
    color: #475569;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-input-wrap {
    position: relative;
    display: flex;
    align-items: center;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-input-wrap input {
    width: 100%;
    padding: 8px 36px 8px 12px;
    border: 1.5px solid #E5E9F0;
    border-radius: 8px;
    font-family: inherit;
    font-size: 13px;
    color: #0A0E17;
    background: #fff;
    outline: none;
    transition: all 0.15s;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-input-wrap input:focus {
    border-color: #C9A227;
    box-shadow: 0 0 0 3px rgba(201,162,39,0.1);
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-toggle {
    position: absolute;
    right: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    background: transparent;
    border: none;
    color: #94A3B8;
    cursor: pointer;
    padding: 0;
    border-radius: 5px;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-toggle:hover {
    background: #F1F5F9;
    color: #0A0E17;
}

html body.ud-v2-shell .ud-v2-layout .ud-securite-strength {
    display: flex;
    align-items: center;
    gap: 10px;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-bar {
    flex: 1;
    height: 4px;
    background: #F1F5F9;
    border-radius: 2px;
    overflow: hidden;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-bar-fill {
    height: 100%;
    width: 0%;
    border-radius: 2px;
    transition: all 0.3s;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-strength-text {
    font-size: 11px;
    font-weight: 800;
    white-space: nowrap;
}

html body.ud-v2-shell .ud-v2-layout .ud-securite-alert {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    padding: 10px 12px;
    border-radius: 8px;
    font-size: 12.5px;
    font-weight: 600;
    line-height: 1.45;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-alert-success {
    background: #ECFDF5;
    border-left: 3px solid #10B981;
    color: #065F46;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-alert-error {
    background: #FEF2F2;
    border-left: 3px solid #DC2626;
    color: #991B1B;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-alert-icon {
    font-weight: 800;
    flex-shrink: 0;
}

html body.ud-v2-shell .ud-v2-layout .ud-securite-actions {
    display: flex;
    justify-content: flex-end;
    padding-top: 4px;
}
html body.ud-v2-shell .ud-v2-layout .ud-securite-actions .ud-btn-primary:disabled {
    opacity: 0.5;
    cursor: not-allowed;
    transform: none !important;
}

@media (max-width: 640px) {
    html body.ud-v2-shell .ud-v2-layout .ud-securite-info {
        grid-template-columns: 1fr;
    }
    html body.ud-v2-shell .ud-v2-layout .ud-securite-grid {
        grid-template-columns: 1fr;
    }
}


/* ═══════════════════════════════════════════════════════════
   PROFIL
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-profil-wrap {
    display: grid;
    grid-template-columns: 240px 1fr;
    gap: 14px;
    align-items: start;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-sidebar {
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 10px;
    padding: 16px;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-avatar-box {
    text-align: center;
    padding-bottom: 14px;
    margin-bottom: 14px;
    border-bottom: 1px solid #F1F5F9;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-avatar {
    width: 80px;
    height: 80px;
    margin: 0 auto 12px;
    border-radius: 50%;
    background: linear-gradient(135deg, #C9A227, #A0824D);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(201,162,39,0.25);
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-avatar-initials {
    font-size: 28px;
    font-weight: 800;
    color: #fff;
    letter-spacing: 1px;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-photo-hint {
    font-size: 10.5px;
    color: #94A3B8;
    margin: 6px 0 0;
    text-align: center;
}
html body.ud-v2-shell .ud-v2-layout .ud-btn-full {
    width: 100%;
    justify-content: center;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-meta {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-meta-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 11.5px;
    color: #475569;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-meta-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    background: #F8FAFC;
    border-radius: 6px;
    color: #64748B;
    flex-shrink: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-meta-text {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
}

html body.ud-v2-shell .ud-v2-layout .ud-profil-main {
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 10px;
    padding: 16px 20px;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-section {
    padding-bottom: 16px;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-section-title {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 12px;
    font-size: 13px;
    font-weight: 700;
    color: #0A0E17;
    padding-bottom: 8px;
    border-bottom: 1px solid #F1F5F9;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-section-title svg {
    color: #C9A227;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-field {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-field-full {
    grid-column: 1 / -1;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-field label {
    font-size: 11.5px;
    font-weight: 700;
    color: #475569;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-field .req {
    color: #DC2626;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-field input {
    width: 100%;
    padding: 8px 12px;
    border: 1.5px solid #E5E9F0;
    border-radius: 8px;
    font-family: inherit;
    font-size: 13px;
    color: #0A0E17;
    background: #fff;
    outline: none;
    transition: all 0.15s;
    box-sizing: border-box;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-field input:focus {
    border-color: #C9A227;
    box-shadow: 0 0 0 3px rgba(201,162,39,0.1);
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-actions {
    display: flex;
    justify-content: flex-end;
    padding-top: 14px;
    border-top: 1px solid #F1F5F9;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-alert {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    padding: 10px 12px;
    border-radius: 8px;
    font-size: 12.5px;
    font-weight: 600;
    line-height: 1.45;
    margin: 12px 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-alert-success {
    background: #ECFDF5;
    border-left: 3px solid #10B981;
    color: #065F46;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-alert-error {
    background: #FEF2F2;
    border-left: 3px solid #DC2626;
    color: #991B1B;
}
html body.ud-v2-shell .ud-v2-layout .ud-profil-alert-icon {
    font-weight: 800;
    flex-shrink: 0;
}
@media (max-width: 900px) {
    html body.ud-v2-shell .ud-v2-layout .ud-profil-wrap { grid-template-columns: 1fr; }
    html body.ud-v2-shell .ud-v2-layout .ud-profil-grid { grid-template-columns: 1fr; }
}

/* ═══════════════════════════════════════════════════════════
   CONTRATS
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-contrats-kpis {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 14px;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-kpi {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 8px;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-kpi-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    min-width: 32px;
    border-radius: 8px;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-kpi-icon.is-total   { background: #EFF6FF; color: #1D4ED8; }
html body.ud-v2-shell .ud-v2-layout .ud-contrats-kpi-icon.is-pending { background: #FFF7ED; color: #EA580C; }
html body.ud-v2-shell .ud-v2-layout .ud-contrats-kpi-icon.is-signed  { background: #ECFDF5; color: #059669; }
html body.ud-v2-shell .ud-v2-layout .ud-contrats-kpi-icon.is-value   { background: #FEF9E7; color: #A0824D; }
html body.ud-v2-shell .ud-v2-layout .ud-contrats-kpi-body { min-width: 0; }
html body.ud-v2-shell .ud-v2-layout .ud-contrats-kpi-label {
    font-size: 9.5px;
    font-weight: 800;
    color: #94A3B8;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    margin-bottom: 1px;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-kpi-value {
    font-size: 15px;
    font-weight: 800;
    color: #0A0E17;
    letter-spacing: -0.3px;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

html body.ud-v2-shell .ud-v2-layout .ud-contrats-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-card {
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 10px;
    padding: 12px 16px;
    position: relative;
    overflow: hidden;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-card::before {
    content: '';
    position: absolute;
    left: 0; top: 0; bottom: 0;
    width: 3px;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-card.is-pending::before  { background: #F59E0B; }
html body.ud-v2-shell .ud-v2-layout .ud-contrats-card.is-signed::before   { background: #10B981; }
html body.ud-v2-shell .ud-v2-layout .ud-contrats-card.is-declined::before { background: #DC2626; }
html body.ud-v2-shell .ud-v2-layout .ud-contrats-card.is-expired::before  { background: #64748B; }

html body.ud-v2-shell .ud-v2-layout .ud-contrats-card-head {
    display: grid;
    grid-template-columns: 32px 1fr 120px auto;
    align-items: center;
    gap: 12px;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-card-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: #F8FAFC;
    border-radius: 8px;
    color: #64748B;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-card-info { min-width: 0; }
html body.ud-v2-shell .ud-v2-layout .ud-contrats-card-ref {
    font-family: 'Courier New', monospace;
    font-size: 12px;
    font-weight: 800;
    color: #0A0E17;
    letter-spacing: 0.2px;
    margin-bottom: 2px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    font-size: 10.5px;
    color: #94A3B8;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-card-meta span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-card-meta svg {
    width: 11px;
    height: 11px;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-card-amount {
    font-family: 'Courier New', monospace;
    font-size: 13px;
    font-weight: 800;
    color: #0A0E17;
    text-align: right;
    white-space: nowrap;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-status {
    display: inline-flex;
    align-items: center;
    padding: 3px 9px;
    border-radius: 100px;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    white-space: nowrap;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-status.is-pending  { background: #FEF3C7; color: #92400E; }
html body.ud-v2-shell .ud-v2-layout .ud-contrats-status.is-signed   { background: #ECFDF5; color: #047857; }
html body.ud-v2-shell .ud-v2-layout .ud-contrats-status.is-declined { background: #FEF2F2; color: #991B1B; }
html body.ud-v2-shell .ud-v2-layout .ud-contrats-status.is-expired  { background: #F1F5F9; color: #475569; }

html body.ud-v2-shell .ud-v2-layout .ud-contrats-signers {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding-top: 10px;
    margin-top: 10px;
    border-top: 1px dashed #F1F5F9;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-signer {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px 4px 4px;
    background: #F8FAFC;
    border-radius: 100px;
    font-size: 11px;
    font-weight: 600;
    color: #475569;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-signer.is-signed {
    background: #ECFDF5;
    color: #047857;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-signer-avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    min-width: 20px;
    border-radius: 50%;
    background: #fff;
    color: #475569;
    font-size: 9px;
    font-weight: 800;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-signer.is-signed .ud-contrats-signer-avatar {
    background: #10B981;
    color: #fff;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-signer-name {
    font-weight: 700;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-signer-status {
    font-size: 9.5px;
    font-weight: 800;
    text-transform: uppercase;
    opacity: 0.8;
    margin-left: 2px;
}

html body.ud-v2-shell .ud-v2-layout .ud-contrats-actions {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    padding-top: 10px;
    margin-top: 10px;
    border-top: 1px solid #F1F5F9;
}
@media (max-width: 900px) {
    html body.ud-v2-shell .ud-v2-layout .ud-contrats-kpis { grid-template-columns: repeat(2, 1fr); }
    html body.ud-v2-shell .ud-v2-layout .ud-contrats-card-head {
        grid-template-columns: 32px 1fr auto;
        grid-template-areas:
            "icon info status"
            "amount amount amount";
    }
    html body.ud-v2-shell .ud-v2-layout .ud-contrats-card-icon { grid-area: icon; }
    html body.ud-v2-shell .ud-v2-layout .ud-contrats-card-info { grid-area: info; }
    html body.ud-v2-shell .ud-v2-layout .ud-contrats-card-amount { grid-area: amount; text-align: left; margin-top: 6px; }
    html body.ud-v2-shell .ud-v2-layout .ud-contrats-status { grid-area: status; }
}

/* ═══════════════════════════════════════════════════════════
   SUPPORT / FAQ
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-faq-search {
    position: relative;
    margin-bottom: 10px;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-search-icon {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: #94A3B8;
    display: inline-flex;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-search input {
    width: 100%;
    padding: 9px 14px 9px 38px;
    border: 1.5px solid #E5E9F0;
    border-radius: 8px;
    background: #fff;
    font-family: inherit;
    font-size: 12.5px;
    color: #0A0E17;
    outline: none;
    box-sizing: border-box;
    transition: all 0.15s;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-search input:focus {
    border-color: #C9A227;
    box-shadow: 0 0 0 3px rgba(201,162,39,0.1);
}

html body.ud-v2-shell .ud-v2-layout .ud-faq-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 12px;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-chip {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 11px;
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 100px;
    font-family: inherit;
    font-size: 11.5px;
    font-weight: 700;
    color: #64748B;
    cursor: pointer;
    transition: all 0.15s;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-chip:hover {
    border-color: #C9A227;
    color: #A0824D;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-chip.is-active {
    background: #0A0E17;
    border-color: #0A0E17;
    color: #fff;
}

html body.ud-v2-shell .ud-v2-layout .ud-faq-section {
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 10px;
    margin-bottom: 10px;
    overflow: hidden;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-section-head {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: #F8FAFC;
    border-bottom: 1px solid #F1F5F9;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-section-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    min-width: 32px;
    border-radius: 8px;
    background: #FEF9E7;
    font-size: 16px;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-section-text { flex: 1; min-width: 0; }
html body.ud-v2-shell .ud-v2-layout .ud-faq-section-title {
    margin: 0 0 1px;
    font-size: 13px;
    font-weight: 700;
    color: #0A0E17;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-section-desc {
    margin: 0;
    font-size: 11px;
    color: #94A3B8;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 22px;
    height: 20px;
    padding: 0 7px;
    background: #FEF9E7;
    color: #A0824D;
    border-radius: 100px;
    font-size: 10.5px;
    font-weight: 800;
}

html body.ud-v2-shell .ud-v2-layout .ud-faq-list { padding: 0; }
html body.ud-v2-shell .ud-v2-layout .ud-faq-item {
    border-bottom: 1px solid #F1F5F9;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-item:last-child { border-bottom: none; }
html body.ud-v2-shell .ud-v2-layout .ud-faq-question {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    width: 100%;
    padding: 10px 16px;
    background: transparent;
    border: none;
    font-family: inherit;
    font-size: 12.5px;
    font-weight: 600;
    color: #0A0E17;
    text-align: left;
    cursor: pointer;
    transition: background 0.15s;
    box-sizing: border-box;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-question:hover {
    background: #FEFCF7;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-q-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #C9A227;
    transition: transform 0.25s;
    flex-shrink: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-item.is-open .ud-faq-q-icon {
    transform: rotate(90deg);
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-item.is-open .ud-faq-answer {
    max-height: 800px;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-answer-inner {
    padding: 0 16px 14px;
    font-size: 12px;
    line-height: 1.6;
    color: #475569;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-answer-inner a {
    color: #A0824D;
    font-weight: 700;
    text-decoration: underline;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-answer-inner strong {
    color: #0A0E17;
}

html body.ud-v2-shell .ud-v2-layout .ud-faq-no-result {
    text-align: center;
    padding: 30px 20px;
    background: #fff;
    border: 1px dashed #E5E9F0;
    border-radius: 10px;
}


/* ═══════════════════════════════════════════════════════════
   MESSAGES (client)
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-messages-list {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 14px;
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 8px;
    cursor: pointer;
    text-align: left;
    font-family: inherit;
    transition: all 0.15s;
    position: relative;
    overflow: hidden;
    width: 100%;
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card:hover {
    border-color: #C9A227;
    background: #FEFCF7;
    transform: translateY(-1px);
    box-shadow: 0 3px 10px rgba(201,162,39,0.08);
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card.has-unread {
    border-color: #F0E4C0;
    background: linear-gradient(90deg, #FEFCF7 0%, #fff 100%);
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card.has-unread::before {
    content: '';
    position: absolute;
    left: 0; top: 0; bottom: 0;
    width: 3px;
    background: linear-gradient(180deg, #C9A227, #A0824D);
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card-avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    min-width: 36px;
    border-radius: 10px;
    background: linear-gradient(135deg, #FEF3C7, #FDE68A);
    color: #92400E;
    font-size: 13px;
    font-weight: 800;
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card-body {
    flex: 1;
    min-width: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card-head {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 2px;
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card-ref {
    font-family: 'Courier New', monospace;
    font-size: 11.5px;
    font-weight: 800;
    color: #0A0E17;
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card-date {
    font-size: 10.5px;
    color: #94A3B8;
    flex-shrink: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card-debiteur {
    font-size: 11px;
    color: #64748B;
    margin-bottom: 3px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card-excerpt {
    font-size: 12px;
    color: #475569;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card.has-unread .ud-message-card-excerpt {
    color: #0A0E17;
    font-weight: 700;
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 6px;
    flex-shrink: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 18px;
    padding: 0 6px;
    background: #C9A227;
    color: #fff;
    border-radius: 100px;
    font-size: 10px;
    font-weight: 800;
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card-status {
    display: inline-flex;
    padding: 2px 7px;
    border-radius: 100px;
    font-size: 9.5px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card-status.is-actif          { background: #ECFDF5; color: #047857; }
html body.ud-v2-shell .ud-v2-layout .ud-message-card-status.is-en_cours       { background: #EFF6FF; color: #1D4ED8; }
html body.ud-v2-shell .ud-v2-layout .ud-message-card-status.is-en_attente     { background: #FFF7ED; color: #C2410C; }
html body.ud-v2-shell .ud-v2-layout .ud-message-card-status.is-cloture_paye   { background: #ECFDF5; color: #047857; }
html body.ud-v2-shell .ud-v2-layout .ud-message-card-status.is-cloture_impaye { background: #FEF2F2; color: #B91C1C; }
html body.ud-v2-shell .ud-v2-layout .ud-message-card-status.is-refuse         { background: #F1F5F9; color: #475569; }

/* ═══════════════════════════════════════════════════════════
   STATS (client)
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-stats-kpis {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 12px;
}
html body.ud-v2-shell .ud-v2-layout .ud-stats-kpi {
    padding: 12px 14px;
    background: #fff;
    border: 1px solid #E5E9F0;
    border-left: 3px solid #3B82F6;
    border-radius: 8px;
}
html body.ud-v2-shell .ud-v2-layout .ud-stats-kpi.is-total  { border-left-color: #3B82F6; }
html body.ud-v2-shell .ud-v2-layout .ud-stats-kpi.is-recupe { border-left-color: #22C55E; }
html body.ud-v2-shell .ud-v2-layout .ud-stats-kpi.is-cours  { border-left-color: #F59E0B; }
html body.ud-v2-shell .ud-v2-layout .ud-stats-kpi.is-perdu  { border-left-color: #EF4444; }
html body.ud-v2-shell .ud-v2-layout .ud-stats-kpi-label {
    font-size: 9.5px;
    font-weight: 800;
    color: #94A3B8;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    margin-bottom: 3px;
}
html body.ud-v2-shell .ud-v2-layout .ud-stats-kpi-value {
    font-size: 18px;
    font-weight: 800;
    color: #0A0E17;
    letter-spacing: -0.4px;
    margin-bottom: 2px;
    font-variant-numeric: tabular-nums;
}
html body.ud-v2-shell .ud-v2-layout .ud-stats-kpi-sub {
    font-size: 10.5px;
    color: #94A3B8;
}

html body.ud-v2-shell .ud-v2-layout .ud-stats-ratio {
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 8px;
    padding: 14px 18px;
    margin-bottom: 12px;
}
html body.ud-v2-shell .ud-v2-layout .ud-stats-ratio-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}
html body.ud-v2-shell .ud-v2-layout .ud-stats-ratio-title {
    font-size: 12.5px;
    font-weight: 700;
    color: #0A0E17;
}
html body.ud-v2-shell .ud-v2-layout .ud-stats-ratio-value {
    font-size: 20px;
    font-weight: 800;
    color: #10B981;
    letter-spacing: -0.5px;
}
html body.ud-v2-shell .ud-v2-layout .ud-stats-ratio-bar {
    display: flex;
    height: 8px;
    border-radius: 100px;
    overflow: hidden;
    background: #F1F5F9;
}
html body.ud-v2-shell .ud-v2-layout .ud-stats-ratio-seg.is-win  { background: linear-gradient(90deg, #22C55E, #10B981); }
html body.ud-v2-shell .ud-v2-layout .ud-stats-ratio-seg.is-lose { background: linear-gradient(90deg, #EF4444, #B91C1C); }

html body.ud-v2-shell .ud-v2-layout .ud-stats-chart {
    position: relative;
    height: 260px;
}
html body.ud-v2-shell .ud-v2-layout .ud-stats-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
}
html body.ud-v2-shell .ud-v2-layout .ud-stats-table th {
    padding: 8px 10px;
    text-align: left;
    font-size: 10px;
    font-weight: 800;
    color: #94A3B8;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    border-bottom: 1px solid #E5E9F0;
    background: #F8FAFC;
}
html body.ud-v2-shell .ud-v2-layout .ud-stats-table td {
    padding: 8px 10px;
    border-bottom: 1px solid #F1F5F9;
    vertical-align: middle;
}

/* ═══════════════════════════════════════════════════════════
   NOUVEAU (formulaire)
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-wrap {
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 10px;
    padding: 20px;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-wrap .unidet-depot-section {
    padding: 14px 16px;
    margin-bottom: 10px;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-wrap .unidet-depot-section-head {
    padding-bottom: 10px;
    margin-bottom: 12px;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-wrap .unidet-depot-section-num {
    width: 30px;
    height: 30px;
    font-size: 13px;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-wrap .unidet-depot-section-title {
    font-size: 14px;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-wrap .unidet-depot-section-sub {
    font-size: 11.5px;
}

@media (max-width: 900px) {
    html body.ud-v2-shell .ud-v2-layout .ud-stats-kpis { grid-template-columns: repeat(2, 1fr); }
    html body.ud-v2-shell .ud-v2-layout .ud-stats-chart { height: 220px; }
}


/* ═══════════════════════════════════════════════════════════
   FALLBACK — Champ téléphone si ITI n'est pas encore chargé
   Évite que l'input soit invisible (hauteur 0)
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .unidet-phone-wrapper:not(.ud-phone-customized) input[type="tel"]:only-child {
    width: 100% !important;
    height: 42px !important;
    min-height: 42px !important;
    padding: 0 14px !important;
    border: 1.5px solid #E5E9F0 !important;
    border-radius: 9px !important;
    background: #fff !important;
    font-family: inherit !important;
    font-size: 13.5px !important;
    color: #0A0E17 !important;
    box-sizing: border-box !important;
    outline: none !important;
    transition: all 0.15s !important;
}

html body.ud-v2-shell .ud-v2-layout .unidet-phone-wrapper:not(.ud-phone-customized) input[type="tel"]:only-child:focus {
    border-color: #C9A227 !important;
    box-shadow: 0 0 0 3px rgba(201, 162, 39, 0.12) !important;
}

html body.ud-v2-shell .ud-v2-layout .unidet-phone-wrapper:not(.ud-phone-customized) input[type="tel"]:only-child::placeholder {
    color: #94A3B8 !important;
    opacity: 1 !important;
}



/* ═══════════════════════════════════════════════════════════
   USER CARD cliquable (sidebar)
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-user-card-link {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s;
    border: 1px solid transparent;
    position: relative;
}

html body.ud-v2-shell .ud-v2-layout .ud-user-card-link:hover {
    background: rgba(201, 162, 39, 0.08);
    border-color: rgba(201, 162, 39, 0.2);
    text-decoration: none;
}

html body.ud-v2-shell .ud-v2-layout .ud-user-card-link:focus-visible {
    outline: 2px solid #C9A227;
    outline-offset: 2px;
}

/* ═══════════════════════════════════════════════════════════
   FOOTER NON-FIXE — scrolle avec le contenu
   La topbar reste sticky en haut pour garder le contexte
   ═══════════════════════════════════════════════════════════ */

/* 1. Le CONTENT devient scrollable (body + footer scrollent ensemble) */
html body.ud-v2-shell .ud-v2-layout .ud-content {
    overflow-y: auto !important;
    overflow-x: hidden !important;
    height: 100vh !important;
    display: flex !important;
    flex-direction: column !important;
}

/* 2. Le BODY ne scrolle plus (le parent s'en charge) */
html body.ud-v2-shell .ud-v2-layout .ud-body {
    flex: 0 0 auto !important;
    overflow: visible !important;
    min-height: 0 !important;
    height: auto !important;
}

/* 3. La TOPBAR devient sticky (reste visible en haut) */
html body.ud-v2-shell .ud-v2-layout .ud-topbar {
    position: sticky !important;
    top: 0 !important;
    z-index: 50 !important;
    background: #FAFAF9 !important;
    flex-shrink: 0 !important;
}

/* 4. Le FOOTER redevient normal (défile avec le contenu) */
html body.ud-v2-shell .ud-v2-layout .ud-footer {
    flex: 0 0 auto !important;
    position: static !important;
    background: #FAFAF9 !important;
    border-top: 1px solid #EAEAEA !important;
    margin-top: auto !important;
}

/* 5. Scrollbar fine sur le content */
html body.ud-v2-shell .ud-v2-layout .ud-content::-webkit-scrollbar {
    width: 8px;
}
html body.ud-v2-shell .ud-v2-layout .ud-content::-webkit-scrollbar-track {
    background: transparent;
}
html body.ud-v2-shell .ud-v2-layout .ud-content::-webkit-scrollbar-thumb {
    background: #D6D3CE;
    border-radius: 4px;
}
html body.ud-v2-shell .ud-v2-layout .ud-content::-webkit-scrollbar-thumb:hover {
    background: #B8B5B0;
}

/* 6. Mobile : compense la hauteur de la topbar sticky */
@media (max-width: 1024px) {
    html body.ud-v2-shell .ud-v2-layout .ud-content {
        height: 100dvh !important;
    }
}


/* ═══════════════════════════════════════════════════════════
   ADMIN — Greeting + Todo + KPI + Quick actions
   ═══════════════════════════════════════════════════════════ */

/* Greeting */
html body.ud-v2-shell .ud-v2-layout .ud-admin-greeting {
    margin-bottom: 14px;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-greeting-title {
    margin: 0 0 2px;
    font-size: 20px;
    font-weight: 700;
    color: #0A0E17;
    letter-spacing: -0.4px;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-greeting-sub {
    margin: 0;
    font-size: 12.5px;
    color: #8A8A8A;
}

/* Bloc À TRAITER */
html body.ud-v2-shell .ud-v2-layout .ud-admin-todo {
    background: linear-gradient(135deg, #0A0E17 0%, #1A1F2E 100%);
    border-radius: 12px;
    padding: 14px 16px;
    margin-bottom: 14px;
    color: #fff;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-todo-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-todo-title {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #C9A227;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-todo-total {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 22px;
    height: 20px;
    padding: 0 8px;
    background: #C9A227;
    color: #0A0E17;
    border-radius: 100px;
    font-size: 11px;
    font-weight: 800;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-todo-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 6px;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-todo-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(201,162,39,0.2);
    border-radius: 8px;
    text-decoration: none;
    color: #fff;
    transition: all 0.15s;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-todo-item:hover {
    background: rgba(201,162,39,0.12);
    border-color: rgba(201,162,39,0.4);
    color: #fff;
    text-decoration: none;
    transform: translateY(-1px);
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-todo-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    min-width: 26px;
    border-radius: 7px;
    flex-shrink: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-todo-icon.is-new       { background: rgba(59,130,246,0.18); color: #60A5FA; }
html body.ud-v2-shell .ud-v2-layout .ud-admin-todo-icon.is-payment   { background: rgba(16,185,129,0.18); color: #34D399; }
html body.ud-v2-shell .ud-v2-layout .ud-admin-todo-icon.is-contract  { background: rgba(201,162,39,0.18); color: #C9A227; }
html body.ud-v2-shell .ud-v2-layout .ud-admin-todo-text {
    display: flex;
    flex-direction: column;
    min-width: 0;
    flex: 1;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-todo-text strong {
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-todo-text small {
    font-size: 10px;
    color: rgba(255,255,255,0.6);
    margin-top: 1px;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-todo-arrow {
    display: inline-flex;
    color: #C9A227;
    flex-shrink: 0;
}

/* KPI admin */
html body.ud-v2-shell .ud-v2-layout .ud-admin-kpis {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 14px;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-kpi {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    background: #fff;
    border: 1px solid #E5E9F0;
    border-left: 3px solid #3B82F6;
    border-radius: 8px;
    min-height: 56px;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-kpi.is-total    { border-left-color: #3B82F6; }
html body.ud-v2-shell .ud-v2-layout .ud-admin-kpi.is-recupe   { border-left-color: #22C55E; }
html body.ud-v2-shell .ud-v2-layout .ud-admin-kpi.is-cours    { border-left-color: #F59E0B; }
html body.ud-v2-shell .ud-v2-layout .ud-admin-kpi.is-perdu    { border-left-color: #EF4444; }
html body.ud-v2-shell .ud-v2-layout .ud-admin-kpi.is-clients  { border-left-color: #8B5CF6; }
html body.ud-v2-shell .ud-v2-layout .ud-admin-kpi.is-attente  { border-left-color: #F97316; }

html body.ud-v2-shell .ud-v2-layout .ud-admin-kpi-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    min-width: 28px;
    border-radius: 7px;
    background: #F1F5F9;
    color: #475569;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-kpi.is-total   .ud-admin-kpi-icon { background: #EFF6FF; color: #1D4ED8; }
html body.ud-v2-shell .ud-v2-layout .ud-admin-kpi.is-recupe  .ud-admin-kpi-icon { background: #ECFDF5; color: #059669; }
html body.ud-v2-shell .ud-v2-layout .ud-admin-kpi.is-cours   .ud-admin-kpi-icon { background: #FFF7ED; color: #EA580C; }
html body.ud-v2-shell .ud-v2-layout .ud-admin-kpi.is-perdu   .ud-admin-kpi-icon { background: #FEF2F2; color: #DC2626; }
html body.ud-v2-shell .ud-v2-layout .ud-admin-kpi.is-clients .ud-admin-kpi-icon { background: #F5F3FF; color: #7C3AED; }
html body.ud-v2-shell .ud-v2-layout .ud-admin-kpi.is-attente .ud-admin-kpi-icon { background: #FFF7ED; color: #F97316; }

html body.ud-v2-shell .ud-v2-layout .ud-admin-kpi-body { min-width: 0; flex: 1; }
html body.ud-v2-shell .ud-v2-layout .ud-admin-kpi-label {
    font-size: 9px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    color: #94A3B8;
    margin-bottom: 1px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-kpi-value {
    font-size: 14px;
    font-weight: 800;
    color: #0A0E17;
    letter-spacing: -0.3px;
    line-height: 1.1;
    margin-bottom: 1px;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-kpi-sub {
    font-size: 10px;
    color: #94A3B8;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Grille 2 colonnes */
html body.ud-v2-shell .ud-v2-layout .ud-admin-grid-2 {
    display: grid;
    grid-template-columns: 1.3fr 1fr;
    gap: 10px;
    margin-bottom: 14px;
    align-items: start;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-chart {
    position: relative;
    height: 240px;
}

/* Quick actions */
html body.ud-v2-shell .ud-v2-layout .ud-admin-quick-actions {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-quick {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 8px;
    text-decoration: none;
    color: #0A0E17;
    transition: all 0.15s;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-quick:hover {
    border-color: #C9A227;
    background: #FEFCF7;
    transform: translateY(-1px);
    color: #A0824D;
    text-decoration: none;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-quick-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    min-width: 32px;
    background: #F8FAFC;
    border-radius: 8px;
    color: #64748B;
    flex-shrink: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-quick:hover .ud-admin-quick-icon {
    background: #FEF9E7;
    color: #A0824D;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-quick-text {
    display: flex;
    flex-direction: column;
    min-width: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-quick-text strong {
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
}
html body.ud-v2-shell .ud-v2-layout .ud-admin-quick-text small {
    font-size: 10px;
    color: #94A3B8;
    margin-top: 1px;
}

/* ═══════════════════════════════════════════════════════════
   NOUVEAUX DOSSIERS (admin)
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-nouveaux-list {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-card {
    background: #fff;
    border: 1px solid #E5E9F0;
    border-left: 3px solid #F97316;
    border-radius: 8px;
    padding: 10px 14px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-head {
    display: flex;
    align-items: center;
    gap: 10px;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    min-width: 32px;
    background: #FFF7ED;
    color: #EA580C;
    border-radius: 8px;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-info {
    flex: 1;
    min-width: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-ref {
    font-family: 'Courier New', monospace;
    font-size: 12px;
    font-weight: 800;
    color: #0A0E17;
    margin-bottom: 2px;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-meta {
    display: flex;
    gap: 10px;
    font-size: 10.5px;
    color: #64748B;
    flex-wrap: wrap;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-meta span {
    display: inline-flex;
    align-items: center;
    gap: 3px;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-meta svg {
    width: 11px;
    height: 11px;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-amount {
    font-family: 'Courier New', monospace;
    font-size: 13px;
    font-weight: 800;
    color: #0A0E17;
    text-align: right;
    white-space: nowrap;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-urgent {
    display: inline-flex;
    align-items: center;
    padding: 3px 7px;
    background: #FEF2F2;
    color: #DC2626;
    border-radius: 100px;
    font-size: 10px;
    font-weight: 800;
    white-space: nowrap;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-date {
    font-size: 10.5px;
    color: #94A3B8;
    padding-left: 42px;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-actions {
    display: flex;
    gap: 6px;
    padding-left: 42px;
}

/* ═══════════════════════════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════════════════════════ */
@media (max-width: 1400px) {
    html body.ud-v2-shell .ud-v2-layout .ud-admin-kpis { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 1100px) {
    html body.ud-v2-shell .ud-v2-layout .ud-admin-todo-list { grid-template-columns: 1fr; }
    html body.ud-v2-shell .ud-v2-layout .ud-admin-grid-2 { grid-template-columns: 1fr; }
    html body.ud-v2-shell .ud-v2-layout .ud-admin-quick-actions { grid-template-columns: repeat(2, 1fr); }
    html body.ud-v2-shell .ud-v2-layout .ud-admin-kpis { grid-template-columns: repeat(2, 1fr); }
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table .col-gest,
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table td.col-gest,
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table th.col-gest { display: none; }
}
@media (max-width: 700px) {
    html body.ud-v2-shell .ud-v2-layout .ud-admin-quick-actions { grid-template-columns: 1fr; }
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table .col-client,
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table td.col-client,
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table th.col-client { display: none; }
}


/* ═══════════════════════════════════════════════════════════
   PAIEMENTS (admin)
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-payment-details {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
    padding: 8px 12px;
    background: #F8FAFC;
    border-radius: 6px;
    margin-left: 42px;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-payment-row {
    display: flex;
    flex-direction: column;
    gap: 2px;
    font-size: 10.5px;
    color: #64748B;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-payment-row strong {
    font-size: 12px;
    font-weight: 700;
    color: #0A0E17;
}

/* ═══════════════════════════════════════════════════════════
   CLIENTS GRID
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-clients-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 10px;
}
html body.ud-v2-shell .ud-v2-layout .ud-client-card {
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 10px;
    padding: 12px 14px;
    transition: all 0.15s;
}
html body.ud-v2-shell .ud-v2-layout .ud-client-card:hover {
    border-color: #C9A227;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(201,162,39,0.08);
}
html body.ud-v2-shell .ud-v2-layout .ud-client-card-head {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}
html body.ud-v2-shell .ud-v2-layout .ud-client-avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    min-width: 40px;
    border-radius: 10px;
    background: linear-gradient(135deg, #0A0E17, #1A1F2E);
    color: #C9A227;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.5px;
}
html body.ud-v2-shell .ud-v2-layout .ud-client-info { flex: 1; min-width: 0; }
html body.ud-v2-shell .ud-v2-layout .ud-client-name {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13.5px;
    font-weight: 700;
    color: #0A0E17;
    margin-bottom: 2px;
}
html body.ud-v2-shell .ud-v2-layout .ud-client-badge.is-warning {
    display: inline-flex;
    padding: 1px 5px;
    background: #FEF3C7;
    color: #92400E;
    border-radius: 100px;
    font-size: 10px;
    font-weight: 800;
}
html body.ud-v2-shell .ud-v2-layout .ud-client-email {
    font-size: 11.5px;
    color: #94A3B8;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
html body.ud-v2-shell .ud-v2-layout .ud-client-meta {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 8px 0;
    margin-bottom: 8px;
    border-top: 1px solid #F1F5F9;
    border-bottom: 1px solid #F1F5F9;
}
html body.ud-v2-shell .ud-v2-layout .ud-client-meta-item {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 11.5px;
    color: #475569;
}
html body.ud-v2-shell .ud-v2-layout .ud-client-stats {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    padding: 8px 0;
    margin-bottom: 8px;
}
html body.ud-v2-shell .ud-v2-layout .ud-client-stat { text-align: left; }
html body.ud-v2-shell .ud-v2-layout .ud-client-stat-value {
    font-size: 14px;
    font-weight: 800;
    color: #0A0E17;
    line-height: 1.2;
}
html body.ud-v2-shell .ud-v2-layout .ud-client-stat-label {
    font-size: 10px;
    color: #94A3B8;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    font-weight: 700;
    margin-top: 1px;
}
html body.ud-v2-shell .ud-v2-layout .ud-client-foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding-top: 8px;
    border-top: 1px solid #F1F5F9;
}
html body.ud-v2-shell .ud-v2-layout .ud-client-date {
    font-size: 10.5px;
    color: #94A3B8;
}

@media (max-width: 700px) {
    html body.ud-v2-shell .ud-v2-layout .ud-nouveau-payment-details { grid-template-columns: 1fr 1fr; margin-left: 0; }
    html body.ud-v2-shell .ud-v2-layout .ud-clients-grid { grid-template-columns: 1fr; }
}


/* ═══════════════════════════════════════════════════════════
   FAQ ADMIN — Liste des questions
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-faq-admin-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-admin-group {
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 10px;
    overflow: hidden;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-admin-group-head {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    background: #F8FAFC;
    border-bottom: 1px solid #E5E9F0;
    font-size: 12.5px;
    font-weight: 800;
    color: #0A0E17;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-admin-group-icon { font-size: 18px; }
html body.ud-v2-shell .ud-v2-layout .ud-faq-admin-group-title {
    flex: 1;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-admin-items { padding: 0; }
html body.ud-v2-shell .ud-v2-layout .ud-faq-admin-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    border-bottom: 1px solid #F1F5F9;
    transition: background 0.15s;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-admin-item:last-child { border-bottom: none; }
html body.ud-v2-shell .ud-v2-layout .ud-faq-admin-item:hover { background: #FEFCF7; }
html body.ud-v2-shell .ud-v2-layout .ud-faq-admin-item.is-draft { background: #FFFBEB; }
html body.ud-v2-shell .ud-v2-layout .ud-faq-drag {
    color: #CBD5E1;
    font-size: 18px;
    cursor: grab;
    user-select: none;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-admin-body { flex: 1; min-width: 0; }
html body.ud-v2-shell .ud-v2-layout .ud-faq-admin-q {
    font-size: 12.5px;
    font-weight: 600;
    color: #0A0E17;
    line-height: 1.4;
    margin-bottom: 3px;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-admin-meta {
    display: flex;
    gap: 10px;
    font-size: 10.5px;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-admin-status {
    display: inline-flex;
    padding: 2px 7px;
    border-radius: 100px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    font-size: 9.5px;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-admin-status.is-published { background: #ECFDF5; color: #047857; }
html body.ud-v2-shell .ud-v2-layout .ud-faq-admin-status.is-draft     { background: #FEF3C7; color: #92400E; }
html body.ud-v2-shell .ud-v2-layout .ud-faq-admin-order { color: #94A3B8; font-family: monospace; }
html body.ud-v2-shell .ud-v2-layout .ud-faq-admin-actions {
    display: flex;
    gap: 4px;
    flex-shrink: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border: 1px solid #E5E9F0;
    background: #fff;
    border-radius: 7px;
    font-size: 13px;
    cursor: pointer;
    transition: all 0.15s;
    text-decoration: none;
    color: inherit;
    padding: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-btn:hover {
    border-color: #C9A227;
    background: #FEFCF7;
    transform: translateY(-1px);
    text-decoration: none;
}


/* ═══════════════════════════════════════════════════════════
   ASSIGNATIONS (admin)
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-assign-warning-box {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: linear-gradient(135deg, #FEF3C7 0%, #FDE68A 100%);
    border: 1px solid #FCD34D;
    border-radius: 10px;
    margin-bottom: 14px;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-warning-icon {
    color: #92400E;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: #fff;
    border-radius: 8px;
    flex-shrink: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-warning-text {
    flex: 1;
    min-width: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-warning-text strong {
    display: block;
    font-size: 13px;
    font-weight: 800;
    color: #78350F;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-warning-text small {
    font-size: 11.5px;
    color: #92400E;
}

html body.ud-v2-shell .ud-v2-layout .ud-assign-unassigned-list {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 12px 14px;
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 10px;
    margin-bottom: 14px;
}

html body.ud-v2-shell .ud-v2-layout .ud-assign-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 12px;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-card {
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 10px;
    padding: 14px 16px;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-head {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
    padding-bottom: 10px;
    border-bottom: 1px solid #F1F5F9;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    min-width: 42px;
    border-radius: 10px;
    background: #EFF6FF;
    color: #1D4ED8;
    font-size: 13px;
    font-weight: 800;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-avatar.is-admin {
    background: linear-gradient(135deg, #0A0E17, #1A1F2E);
    color: #C9A227;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-info { flex: 1; min-width: 0; }
html body.ud-v2-shell .ud-v2-layout .ud-assign-name {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13.5px;
    font-weight: 700;
    color: #0A0E17;
    margin-bottom: 2px;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-badge {
    display: inline-flex;
    padding: 1px 6px;
    background: #0A0E17;
    color: #C9A227;
    border-radius: 100px;
    font-size: 9px;
    font-weight: 800;
    text-transform: uppercase;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-email {
    font-size: 11px;
    color: #94A3B8;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-count {
    text-align: right;
    flex-shrink: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-count-num {
    font-size: 20px;
    font-weight: 800;
    color: #0A0E17;
    line-height: 1;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-count-label {
    font-size: 10px;
    color: #94A3B8;
    margin-top: 2px;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-details {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 10px;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-row-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 5px 8px;
    background: #F8FAFC;
    border-radius: 6px;
    font-size: 11px;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-deb {
    flex: 1;
    min-width: 0;
    color: #475569;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-more {
    padding: 4px 8px;
    font-size: 10.5px;
    color: #94A3B8;
    font-style: italic;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-empty {
    padding: 14px;
    text-align: center;
    color: #CBD5E1;
    font-size: 11.5px;
    font-style: italic;
    background: #F8FAFC;
    border-radius: 6px;
    margin-bottom: 10px;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-actions {
    display: flex;
    justify-content: flex-end;
}

/* ═══════════════════════════════════════════════════════════
   REPORTING
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-report-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 12px;
}
html body.ud-v2-shell .ud-v2-layout .ud-report-card {
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 10px;
    padding: 18px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
html body.ud-v2-shell .ud-v2-layout .ud-report-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 10px;
}
html body.ud-v2-shell .ud-v2-layout .ud-report-icon.is-green  { background: #ECFDF5; color: #059669; }
html body.ud-v2-shell .ud-v2-layout .ud-report-icon.is-blue   { background: #EFF6FF; color: #1D4ED8; }
html body.ud-v2-shell .ud-v2-layout .ud-report-icon.is-gold   { background: #FEF9E7; color: #A0824D; }
html body.ud-v2-shell .ud-v2-layout .ud-report-icon.is-purple { background: #F5F3FF; color: #7C3AED; }
html body.ud-v2-shell .ud-v2-layout .ud-report-title {
    margin: 0;
    font-size: 14px;
    font-weight: 700;
    color: #0A0E17;
}
html body.ud-v2-shell .ud-v2-layout .ud-report-desc {
    margin: 0;
    font-size: 12px;
    color: #64748B;
    line-height: 1.5;
    flex: 1;
}

/* ═══════════════════════════════════════════════════════════
   CONFIG HUB (emails, contrats, legal)
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-config-hub {
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 14px;
    padding: 32px 28px;
    text-align: center;
    max-width: 640px;
    margin: 20px auto;
}
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 72px;
    height: 72px;
    border-radius: 50%;
    margin-bottom: 18px;
}
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-icon.is-gold  { background: linear-gradient(135deg, #FEF9E7, #FDE68A); color: #92400E; }
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-icon.is-green { background: linear-gradient(135deg, #ECFDF5, #D1FAE5); color: #047857; }
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-icon.is-red   { background: linear-gradient(135deg, #FEF2F2, #FECACA); color: #991B1B; }
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-title {
    margin: 0 0 10px;
    font-size: 20px;
    font-weight: 800;
    color: #0A0E17;
    letter-spacing: -0.3px;
}
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-desc {
    margin: 0 0 24px;
    font-size: 13.5px;
    color: #64748B;
    line-height: 1.6;
    max-width: 480px;
    margin-left: auto;
    margin-right: auto;
}
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-features {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    margin-bottom: 24px;
    text-align: left;
}
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-feature {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    background: #F8FAFC;
    border-radius: 8px;
    font-size: 18px;
}
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-feature > div {
    display: flex;
    flex-direction: column;
    min-width: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-feature strong {
    font-size: 12.5px;
    font-weight: 700;
    color: #0A0E17;
    line-height: 1.2;
}
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-feature small {
    font-size: 10.5px;
    color: #94A3B8;
}
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 26px;
    background: linear-gradient(135deg, #0A0E17, #1A1F2E);
    color: #fff !important;
    border-radius: 10px;
    font-size: 13.5px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.2s;
}
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 22px rgba(10,14,23,0.2);
    color: #fff;
    text-decoration: none;
}
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-btn svg,
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-btn span {
    transition: transform 0.2s;
}
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-btn:hover span {
    transform: translateX(3px);
}

/* ═══════════════════════════════════════════════════════════
   RÔLES — Matrice
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-roles-info-banner {
    display: flex;
    gap: 12px;
    padding: 14px 16px;
    background: #EFF6FF;
    border-left: 4px solid #1D4ED8;
    border-radius: 0 10px 10px 0;
    margin-bottom: 16px;
    font-size: 12.5px;
    color: #1E40AF;
    line-height: 1.5;
}
html body.ud-v2-shell .ud-v2-layout .ud-roles-info-icon {
    font-size: 18px;
    flex-shrink: 0;
}
html body.ud-v2-shell .ud-v2-layout .ud-roles-table-wrap {
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 10px;
    overflow: hidden;
}
html body.ud-v2-shell .ud-v2-layout .ud-roles-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
}
html body.ud-v2-shell .ud-v2-layout .ud-roles-table thead th {
    padding: 12px 14px;
    background: #F8FAFC;
    border-bottom: 1px solid #E5E9F0;
    text-align: left;
    vertical-align: middle;
}
html body.ud-v2-shell .ud-v2-layout .ud-roles-role-head {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
html body.ud-v2-shell .ud-v2-layout .ud-roles-role-name {
    font-size: 12px;
    font-weight: 800;
    color: #0A0E17;
}
html body.ud-v2-shell .ud-v2-layout .ud-roles-role-slug {
    font-family: monospace;
    font-size: 9.5px;
    color: #94A3B8;
    font-weight: 500;
}
html body.ud-v2-shell .ud-v2-layout .ud-roles-group-row td {
    padding: 10px 14px;
    background: linear-gradient(90deg, #F1F5F9 0%, #F8FAFC 100%);
    font-size: 11px;
    font-weight: 800;
    color: #64748B;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 1px solid #E5E9F0;
}
html body.ud-v2-shell .ud-v2-layout .ud-roles-table tbody tr:not(.ud-roles-group-row):hover {
    background: #FEFCF7;
}
html body.ud-v2-shell .ud-v2-layout .ud-roles-table td {
    padding: 8px 14px;
    border-bottom: 1px solid #F1F5F9;
    vertical-align: middle;
}
html body.ud-v2-shell .ud-v2-layout .ud-roles-cap-col {
    min-width: 200px;
}
html body.ud-v2-shell .ud-v2-layout .ud-roles-cap-name {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: #0A0E17;
    text-transform: capitalize;
}
html body.ud-v2-shell .ud-v2-layout .ud-roles-cap-slug {
    display: block;
    font-family: monospace;
    font-size: 9.5px;
    color: #94A3B8;
    margin-top: 1px;
}
html body.ud-v2-shell .ud-v2-layout .ud-roles-role-col {
    text-align: center;
    width: 120px;
}
html body.ud-v2-shell .ud-v2-layout .ud-roles-check {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 800;
}
html body.ud-v2-shell .ud-v2-layout .ud-roles-check.is-yes  { background: #ECFDF5; color: #059669; }
html body.ud-v2-shell .ud-v2-layout .ud-roles-check.is-no   { background: #F8FAFC; color: #CBD5E1; }
html body.ud-v2-shell .ud-v2-layout .ud-roles-check.is-king { background: #FEF9E7; color: #A0824D; }
html body.ud-v2-shell .ud-v2-layout .ud-roles-footer-note {
    padding: 12px 16px;
    background: #F8FAFC;
    border-left: 3px solid #94A3B8;
    border-radius: 0 8px 8px 0;
    margin-top: 14px;
    font-size: 11.5px;
    color: #64748B;
    font-style: italic;
}

@media (max-width: 700px) {
    html body.ud-v2-shell .ud-v2-layout .ud-report-grid { grid-template-columns: 1fr; }
    html body.ud-v2-shell .ud-v2-layout .ud-config-hub-features { grid-template-columns: 1fr; }
    html body.ud-v2-shell .ud-v2-layout .ud-assign-grid { grid-template-columns: 1fr; }
}

/* ═══════════════════════════════════════════════════════════
   🏠 HOME CLIENT — Refonte 2026
   ═══════════════════════════════════════════════════════════ */

/* ─── KPI CARDS COMPACTES ─── */
.ud-home-kpis {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
    margin-bottom: 18px;
}

.ud-home-kpi {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 18px;
    background: #fff;
    border: 1px solid #eef2f6;
    border-radius: 12px;
    transition: all 0.15s;
}

.ud-home-kpi:hover {
    border-color: #cbd5e1;
    box-shadow: 0 4px 12px rgba(10, 14, 23, 0.04);
}

/* ❌ SUPPRESSION de la bordure gauche colorée */
.ud-home-kpi::before {
    content: none !important;
    display: none !important;
}

/* Fond des icônes uniquement */
.ud-home-kpi-icon {
    width: 40px;
    height: 40px;
    min-width: 40px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* Couleurs de fond des icônes (sans bordure gauche) */
.ud-home-kpi.total   .ud-home-kpi-icon { background: #f1f5f9; color: #0a0e17; }
.ud-home-kpi.recupe  .ud-home-kpi-icon { background: #ecfdf5; color: #059669; }
.ud-home-kpi.cours   .ud-home-kpi-icon { background: #eff6ff; color: #2563eb; }
.ud-home-kpi.cloture .ud-home-kpi-icon { background: #fef3c7; color: #92400e; }

.ud-home-kpi-body { flex: 1; min-width: 0; }

.ud-home-kpi-label {
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    color: #64748b;
    margin-bottom: 3px;
}

.ud-home-kpi-value {
    font-size: 20px;
    font-weight: 900;
    color: #0a0e17;
    letter-spacing: -0.5px;
    line-height: 1.15;
    margin-bottom: 2px;
}

.ud-home-kpi-sub {
    font-size: 10.5px;
    color: #94a3b8;
    font-weight: 600;
}

/* ─── BANDEAU NOIR COMPACT ─── */
.ud-home-hero-cta.ud-home-hero-cta-compact {
    padding: 10px 18px !important;
    margin-bottom: 16px !important;
    min-height: 62px !important;
}

.ud-home-hero-cta-compact .ud-home-hero-cta-left {
    gap: 12px !important;
    align-items: center !important;
}

.ud-home-hero-cta-compact .ud-home-hero-cta-icon {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    border-radius: 9px !important;
}

.ud-home-hero-cta-compact .ud-home-hero-cta-text h3 {
    font-size: 14px !important;
    margin: 0 0 1px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
}

.ud-home-hero-cta-compact .ud-home-hero-cta-text p {
    font-size: 11.5px !important;
    line-height: 1.3 !important;
    margin: 0 !important;
    opacity: 0.85 !important;
}

.ud-home-hero-cta-compact .ud-home-hero-cta-btn {
    padding: 9px 18px !important;
    font-size: 12.5px !important;
    min-height: 38px !important;
}

/* ─── GRILLE 3 CARTES ─── */
.ud-home-grid-3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    margin-bottom: 18px;
}

.ud-home-card {
    background: #fff;
    border: 1px solid #eef2f6;
    border-radius: 12px;
    padding: 16px 18px;
    display: flex;
    flex-direction: column;
    min-height: 220px;
}

.ud-home-card-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 12px;
    padding-bottom: 10px;
    border-bottom: 1px solid #f1f5f9;
}

.ud-home-card-title {
    margin: 0;
    font-size: 14px;
    font-weight: 800;
    color: #0a0e17;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    letter-spacing: -0.2px;
}

.ud-home-card-title .icon {
    display: inline-flex;
    align-items: center;
    color: #64748b;
}

.ud-home-card-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 7px;
    border-radius: 100px;
    background: #d4a373;
    color: #0a0e17;
    font-size: 10.5px;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
}

.ud-home-card-badge.badge-warning {
    background: #fef3c7;
    color: #92400e;
}

.ud-home-card-link {
    font-size: 11.5px;
    font-weight: 700;
    color: #94a3b8;
    text-decoration: none;
    transition: color 0.15s;
}

.ud-home-card-link:hover {
    color: #0a0e17;
}

/* Vide */
.ud-home-card-empty {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 20px 10px;
    color: #94a3b8;
}

.ud-home-card-empty-icon {
    opacity: 0.35;
    margin-bottom: 10px;
}

.ud-home-card-empty p {
    margin: 0 0 4px;
    font-size: 13px;
    font-weight: 700;
    color: #64748b;
}

.ud-home-card-empty span {
    font-size: 11.5px;
    line-height: 1.5;
    max-width: 180px;
}

/* Liste */
.ud-home-card-list {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 8px;
    overflow-y: auto;
}

/* Row message */
.ud-home-card-row {
    display: block;
    padding: 10px 12px;
    background: #f8fafc;
    border: 1px solid #f1f5f9;
    border-radius: 9px;
    text-decoration: none;
    color: inherit;
    transition: all 0.15s;
}

.ud-home-card-row:hover {
    background: #fff;
    border-color: #0a0e17;
    transform: translateX(2px);
}

.ud-home-card-row.is-unread {
    background: #fef9e7;
    border-color: #fde68a;
}

.ud-home-card-row.is-pending {
    background: #fef3c7;
    border-color: #fde68a;
    display: block;
    padding: 10px 12px;
    border-radius: 9px;
}

.ud-home-card-row-head {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 4px;
}

.ud-home-card-row-ref {
    font-family: 'Courier New', monospace;
    font-size: 11px;
    font-weight: 800;
    color: #0a0e17;
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ud-home-card-row-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #ef4444;
    flex-shrink: 0;
}

.ud-home-card-row-date {
    font-size: 10.5px;
    color: #94a3b8;
    font-weight: 600;
    white-space: nowrap;
    flex-shrink: 0;
}

.ud-home-card-row-text {
    font-size: 12px;
    color: #64748b;
    line-height: 1.4;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    line-clamp: 2;
}

.ud-home-card-row.is-unread .ud-home-card-row-text {
    color: #0a0e17;
    font-weight: 600;
}

.ud-home-card-row-status {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 100px;
    background: #f59e0b;
    color: #fff;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.ud-home-card-row-cta {
    display: inline-block;
    margin-top: 6px;
    font-size: 11.5px;
    font-weight: 700;
    color: #92400e;
    text-decoration: none;
}

.ud-home-card-row-cta:hover {
    text-decoration: underline;
}

/* Notifications */
.ud-home-card-notif {
    display: flex;
    gap: 10px;
    padding: 8px 10px;
    border-radius: 8px;
    background: #f8fafc;
}

.ud-home-card-notif-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    flex-shrink: 0;
    margin-top: 6px;
}

.ud-home-card-notif-body {
    flex: 1;
    min-width: 0;
}

.ud-home-card-notif-text {
    font-size: 12px;
    color: #0a0e17;
    font-weight: 600;
    line-height: 1.4;
    margin-bottom: 2px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    line-clamp: 2;
}

.ud-home-card-notif-date {
    font-size: 10.5px;
    color: #94a3b8;
    font-weight: 600;
}

/* ─── SECTION PLEINE LARGEUR ─── */
.ud-home-section-full {
    margin-bottom: 18px;
}

/* ─── RESPONSIVE ─── */
@media (max-width: 1100px) {
    .ud-home-kpis {
        grid-template-columns: repeat(2, 1fr);
    }
    .ud-home-grid-3 {
        grid-template-columns: 1fr;
    }
    .ud-home-card {
        min-height: auto;
    }
}

@media (max-width: 600px) {
    .ud-home-kpis {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    .ud-home-kpi {
        padding: 12px 14px;
    }
    .ud-home-kpi-value {
        font-size: 16px;
    }
}

/* ═══════════════════════════════════════════════════════════
   🎯 OVERRIDE — KPI cards sans bordure gauche colorée
   (priorité maximale pour gagner sur toutes les règles existantes)
   ═══════════════════════════════════════════════════════════ */

.ud-home-kpis .ud-home-kpi,
.ud-home-kpis .ud-home-kpi.total,
.ud-home-kpis .ud-home-kpi.recupe,
.ud-home-kpis .ud-home-kpi.cours,
.ud-home-kpis .ud-home-kpi.cloture {
    border-left: 1px solid #eef2f6 !important;
    border-right: 1px solid #eef2f6 !important;
    border-top: 1px solid #eef2f6 !important;
    border-bottom: 1px solid #eef2f6 !important;
    border-radius: 12px !important;
    padding: 16px 18px !important;
    background: #fff !important;
}

/* Neutralise tout pseudo-élément coloré (barre gauche) */
.ud-home-kpis .ud-home-kpi::before,
.ud-home-kpis .ud-home-kpi::after,
.ud-home-kpi.total::before,
.ud-home-kpi.total::after,
.ud-home-kpi.recupe::before,
.ud-home-kpi.recupe::after,
.ud-home-kpi.cours::before,
.ud-home-kpi.cours::after,
.ud-home-kpi.cloture::before,
.ud-home-kpi.cloture::after {
    content: none !important;
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    background: transparent !important;
    border: none !important;
}

/* Neutralise tout border-left résiduel */
.ud-home-kpi[class*="total"]   { border-left-color: #eef2f6 !important; }
.ud-home-kpi[class*="recupe"]  { border-left-color: #eef2f6 !important; }
.ud-home-kpi[class*="cours"]   { border-left-color: #eef2f6 !important; }
.ud-home-kpi[class*="cloture"] { border-left-color: #eef2f6 !important; }

/* ═══════════════════════════════════════════════════════════
   🎯 OVERRIDE — Bandeau "Transmettre une créance" compact
   ═══════════════════════════════════════════════════════════ */

.ud-home-hero-cta,
.ud-home-hero-cta.ud-home-hero-cta-compact {
    padding: 8px 18px !important;
    margin-bottom: 14px !important;
    min-height: 56px !important;
    border-radius: 12px !important;
}

.ud-home-hero-cta .ud-home-hero-cta-left {
    gap: 12px !important;
    align-items: center !important;
}

.ud-home-hero-cta .ud-home-hero-cta-icon {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    border-radius: 8px !important;
}

.ud-home-hero-cta .ud-home-hero-cta-text h3 {
    font-size: 14px !important;
    margin: 0 0 1px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
}

.ud-home-hero-cta .ud-home-hero-cta-text p {
    font-size: 11.5px !important;
    line-height: 1.25 !important;
    margin: 0 !important;
    opacity: 0.85 !important;
}

.ud-home-hero-cta .ud-home-hero-cta-btn {
    padding: 8px 16px !important;
    font-size: 12.5px !important;
    min-height: 36px !important;
    border-radius: 9px !important;
}

/* ═══════════════════════════════════════════════════════════
   🎯 TOPBAR — Icônes Messages + Notifications
   ═══════════════════════════════════════════════════════════ */

.ud-topbar-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

/* Bouton icône (messages + notifications) */
.ud-topbar-icon-btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    min-width: 40px;
    border-radius: 10px;
    background: #fff;
    border: 1px solid #eef2f6;
    color: #0a0e17;
    cursor: pointer;
    transition: all 0.15s ease;
    text-decoration: none;
}

.ud-topbar-icon-btn:hover {
    background: #0a0e17;
    border-color: #0a0e17;
    color: #d4a373;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(10, 14, 23, 0.15);
}

/* Badge rouge (messages + notifs) */
.ud-topbar-icon-btn .ud-topbar-icon-badge,
.ud-topbar-icon-btn .ud-bell-badge {
    position: absolute;
    top: -4px;
    right: -4px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: #ef4444;
    color: #fff;
    font-size: 10px;
    font-weight: 800;
    border-radius: 100px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #fff;
    font-variant-numeric: tabular-nums;
    line-height: 1;
}

/* Compat avec l'ancienne classe .ud-bell */
.ud-topbar-icon-btn.ud-bell {
    /* hérite des styles communs */
}

/* ═══════════════════════════════════════════════════════════
   🎯 TOPBAR — Icônes + Dropdowns + Brand
   ═══════════════════════════════════════════════════════════ */

.ud-topbar-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

/* ─── Wrapper dropdown (position relative) ─── */
.ud-topbar-dropdown {
    position: relative;
}

/* ─── Boutons icône ─── */
.ud-topbar-icon-btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    min-width: 40px;
    border-radius: 10px;
    background: #fff;
    border: 1px solid #eef2f6;
    color: #0a0e17;
    cursor: pointer;
    transition: all 0.15s ease;
    text-decoration: none;
    padding: 0;
}

.ud-topbar-icon-btn:hover {
    background: #0a0e17;
    border-color: #0a0e17;
    color: #d4a373;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(10, 14, 23, 0.15);
}

.ud-topbar-icon-btn.is-open {
    background: #0a0e17;
    border-color: #0a0e17;
    color: #d4a373;
}

.ud-topbar-icon-btn svg {
    width: 18px;
    height: 18px;
    display: block;
}

/* ─── Badge rouge ─── */
.ud-topbar-icon-btn .ud-topbar-icon-badge,
.ud-topbar-icon-btn .ud-bell-badge {
    position: absolute;
    top: -4px;
    right: -4px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: #ef4444;
    color: #fff;
    font-size: 10px;
    font-weight: 800;
    border-radius: 100px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #fff;
    font-variant-numeric: tabular-nums;
    line-height: 1;
    box-sizing: border-box;
}

/* ═══════════════════════════════════════════════════════════
   🎯 PANNEAU DROPDOWN (Messages + Notifications)
   ═══════════════════════════════════════════════════════════ */

.ud-topbar-panel {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    width: 380px;
    max-width: calc(100vw - 32px);
    background: #fff;
    border: 1px solid #eef2f6;
    border-radius: 14px;
    box-shadow: 0 20px 60px rgba(10, 14, 23, 0.15), 0 4px 12px rgba(10, 14, 23, 0.08);
    z-index: 999;
    overflow: hidden;

    /* Animation */
    opacity: 0;
    transform: translateY(-8px) scale(0.98);
    pointer-events: none;
    transition: opacity 0.18s ease, transform 0.18s ease;
}

.ud-topbar-panel.is-open {
    opacity: 1;
    transform: translateY(0) scale(1);
    pointer-events: auto;
}

/* ─── Head du panneau ─── */
.ud-topbar-panel-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 14px 18px;
    border-bottom: 1px solid #f1f5f9;
    background: #f8fafc;
}

.ud-topbar-panel-head strong {
    font-size: 13.5px;
    font-weight: 800;
    color: #0a0e17;
    letter-spacing: -0.2px;
}

.ud-topbar-panel-link {
    font-size: 11.5px;
    font-weight: 700;
    color: #a0824d;
    text-decoration: none;
    transition: color 0.15s;
}

.ud-topbar-panel-link:hover {
    color: #0a0e17;
    text-decoration: underline;
}

/* ─── Corps du panneau ─── */
.ud-topbar-panel-body {
    max-height: 420px;
    overflow-y: auto;
    padding: 6px;
}

.ud-topbar-panel-body::-webkit-scrollbar { width: 6px; }
.ud-topbar-panel-body::-webkit-scrollbar-track { background: transparent; }
.ud-topbar-panel-body::-webkit-scrollbar-thumb {
    background: #e2e8f0;
    border-radius: 10px;
}
.ud-topbar-panel-body::-webkit-scrollbar-thumb:hover { background: #cbd5e1; }

/* ─── Rows ─── */
.ud-topbar-panel-row {
    display: block;
    padding: 10px 12px;
    border-radius: 9px;
    text-decoration: none;
    color: inherit;
    transition: background 0.15s;
    cursor: pointer;
}

.ud-topbar-panel-row + .ud-topbar-panel-row {
    margin-top: 2px;
}

.ud-topbar-panel-row:hover {
    background: #f8fafc;
}

.ud-topbar-panel-row.is-unread {
    background: #fef9e7;
}

.ud-topbar-panel-row.is-unread:hover {
    background: #fef3c7;
}

/* Structure interne d'un row message */
.ud-topbar-panel-row-head {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 4px;
}

.ud-topbar-panel-row-ref {
    font-family: 'Courier New', monospace;
    font-size: 11px;
    font-weight: 800;
    color: #0a0e17;
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ud-topbar-panel-row-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #ef4444;
    flex-shrink: 0;
}

.ud-topbar-panel-row-date {
    font-size: 10.5px;
    color: #94a3b8;
    font-weight: 600;
    white-space: nowrap;
    flex-shrink: 0;
}

.ud-topbar-panel-row-text {
    font-size: 12.5px;
    color: #64748b;
    line-height: 1.4;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    line-clamp: 2;
}

.ud-topbar-panel-row.is-unread .ud-topbar-panel-row-text {
    color: #0a0e17;
    font-weight: 600;
}

/* Structure interne d'un row notification */
.ud-topbar-panel-row > .ud-topbar-panel-row-icon {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    margin-right: 10px;
    vertical-align: top;
    margin-top: 6px;
    flex-shrink: 0;
}

.ud-topbar-panel-row-body {
    display: inline-block;
    width: calc(100% - 22px);
    vertical-align: top;
}

/* ─── État vide ─── */
.ud-topbar-panel-empty {
    text-align: center;
    padding: 40px 20px;
}

.ud-topbar-panel-empty-icon {
    font-size: 40px;
    opacity: 0.35;
    margin-bottom: 12px;
    line-height: 1;
}

.ud-topbar-panel-empty p {
    margin: 0 0 4px;
    font-size: 13.5px;
    font-weight: 700;
    color: #64748b;
}

.ud-topbar-panel-empty span {
    font-size: 12px;
    color: #94a3b8;
    line-height: 1.5;
}

/* ═══════════════════════════════════════════════════════════
   🏷️ BRAND UNIDET (à droite du topbar)
   ═══════════════════════════════════════════════════════════ */
.ud-topbar-brand {
    display: flex;
    align-items: center;          /* ✅ alignement vertical */
    gap: 14px;
    padding-left: 16px;
    margin-left: 6px;
    border-left: 1px solid #eef2f6;
    height: 100%;                 /* ✅ prend toute la hauteur dispo */
}

.ud-topbar-brand-logo {
    width: 46px;
    height: 46px;
    object-fit: contain;
    flex-shrink: 0;
    display: block;               /* ✅ évite les marges fantômes d'inline */
    margin: 0;                    /* ✅ reset margin */
    align-self: center;           /* ✅ centre verticalement */
}

.ud-topbar-brand-text {
    display: flex;
    flex-direction: column;
    gap: 2px;
    line-height: 1.25;
    justify-content: center;      /* ✅ centre verticalement */
    align-self: center;           /* ✅ centre verticalement */
}

.ud-topbar-brand-name {
    font-size: 10.5px;
    font-weight: 600;             /* ⬅️ non-gras (600 → 500 pour + léger) */
    color: #94a3b8;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    line-height: 1.2;
}

.ud-topbar-brand-tagline {
    font-size: 10.5px;
    font-weight: 500;             /* ⬅️ non-gras */
    color: #64748b;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    line-height: 1.4;
    font-style: normal;           /* ⬅️ pas d'italique */
}

/* ═══════════════════════════════════════════════════════════
   📱 RESPONSIVE
   ═══════════════════════════════════════════════════════════ */

@media (max-width: 900px) {
    /* On cache la marque sur tablette/mobile */
    .ud-topbar-brand {
        display: none;
    }
}

@media (max-width: 600px) {
    .ud-topbar-panel {
        width: calc(100vw - 24px);
        right: -50px;
    }
    .ud-topbar-icon-btn {
        width: 38px;
        height: 38px;
        min-width: 38px;
    }
}

/* ═══════════════════════════════════════════════════════════
   🎯 TOPBAR — Version finale propre (fix tous états)
   ═══════════════════════════════════════════════════════════ */

/* ─── Actions container ─── */
.ud-topbar-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

/* ─── Dropdown wrapper ─── */
.ud-topbar-dropdown {
    position: relative;
}

/* ═══════════════════════════════════════════════════════════
   🎯 BOUTONS ICÔNES — NEUTRALISATION TOTALE DES ÉTATS
   ═══════════════════════════════════════════════════════════ */

.ud-topbar-icon-btn,
.ud-topbar-icon-btn:link,
.ud-topbar-icon-btn:visited,
.ud-topbar-icon-btn:hover,
.ud-topbar-icon-btn:focus,
.ud-topbar-icon-btn:focus-visible,
.ud-topbar-icon-btn:focus-within,
.ud-topbar-icon-btn:active {
    /* Reset complet */
    outline: none !important;
    -webkit-tap-highlight-color: transparent !important;
    text-decoration: none !important;

    /* Layout */
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    min-width: 40px;
    padding: 0;
    margin: 0;
    box-sizing: border-box;

    /* Style de base (identique pour TOUS les états sauf hover) */
    background: #fff !important;
    border: 1.5px solid #eef2f6 !important;
    border-radius: 10px !important;
    color: #0a0e17 !important;

    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease,
                color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

/* Hover + focus + active = MÊME état (noir + or) */
.ud-topbar-icon-btn:hover,
.ud-topbar-icon-btn:focus,
.ud-topbar-icon-btn:focus-visible,
.ud-topbar-icon-btn:active,
.ud-topbar-icon-btn.is-open {
    background: #0a0e17 !important;
    border-color: #0a0e17 !important;
    color: #d4a373 !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(10, 14, 23, 0.15) !important;
}

/* Icône SVG (les deux identiques) */
.ud-topbar-icon-btn svg,
.ud-topbar-icon-btn svg * {
    width: 18px !important;
    height: 18px !important;
    display: block !important;
    stroke: currentColor !important;
    stroke-width: 2 !important;
    fill: none !important;
    flex-shrink: 0;
}

/* Badge rouge (identique sur les 2) */
.ud-topbar-icon-btn .ud-topbar-icon-badge,
.ud-topbar-icon-btn .ud-bell-badge {
    position: absolute;
    top: -5px;
    right: -5px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: #ef4444 !important;
    color: #fff !important;
    font-size: 10px;
    font-weight: 800;
    border-radius: 100px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #fff;
    font-variant-numeric: tabular-nums;
    line-height: 1;
    box-sizing: border-box;
    pointer-events: none;
}

/* ═══════════════════════════════════════════════════════════
   🎯 PANNEAUX DROPDOWN
   ═══════════════════════════════════════════════════════════ */

.ud-topbar-panel {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    width: 380px;
    max-width: calc(100vw - 32px);
    background: #fff;
    border: 1px solid #eef2f6;
    border-radius: 14px;
    box-shadow: 0 20px 60px rgba(10, 14, 23, 0.15), 0 4px 12px rgba(10, 14, 23, 0.08);
    z-index: 999;
    overflow: hidden;
    opacity: 0;
    transform: translateY(-8px) scale(0.98);
    pointer-events: none;
    transition: opacity 0.18s ease, transform 0.18s ease;
}

.ud-topbar-panel.is-open {
    opacity: 1;
    transform: translateY(0) scale(1);
    pointer-events: auto;
}

.ud-topbar-panel-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 14px 18px;
    border-bottom: 1px solid #f1f5f9;
    background: #f8fafc;
}

.ud-topbar-panel-head strong {
    font-size: 13.5px;
    font-weight: 800;
    color: #0a0e17;
    letter-spacing: -0.2px;
}

.ud-topbar-panel-link {
    font-size: 11.5px;
    font-weight: 700;
    color: #a0824d;
    text-decoration: none;
    transition: color 0.15s;
}

.ud-topbar-panel-link:hover {
    color: #0a0e17;
    text-decoration: underline;
}

.ud-topbar-panel-body {
    max-height: 420px;
    overflow-y: auto;
    padding: 6px;
}

.ud-topbar-panel-body::-webkit-scrollbar { width: 6px; }
.ud-topbar-panel-body::-webkit-scrollbar-track { background: transparent; }
.ud-topbar-panel-body::-webkit-scrollbar-thumb {
    background: #e2e8f0;
    border-radius: 10px;
}

.ud-topbar-panel-row {
    display: block;
    padding: 10px 12px;
    border-radius: 9px;
    text-decoration: none;
    color: inherit;
    transition: background 0.15s;
    cursor: pointer;
}

.ud-topbar-panel-row + .ud-topbar-panel-row {
    margin-top: 2px;
}

.ud-topbar-panel-row:hover {
    background: #f8fafc;
}

.ud-topbar-panel-row.is-unread {
    background: #fef9e7;
}

.ud-topbar-panel-row.is-unread:hover {
    background: #fef3c7;
}

.ud-topbar-panel-row-head {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 4px;
}

.ud-topbar-panel-row-ref {
    font-family: 'Courier New', monospace;
    font-size: 11px;
    font-weight: 800;
    color: #0a0e17;
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ud-topbar-panel-row-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #ef4444;
    flex-shrink: 0;
}

.ud-topbar-panel-row-date {
    font-size: 10.5px;
    color: #94a3b8;
    font-weight: 600;
    white-space: nowrap;
    flex-shrink: 0;
}

.ud-topbar-panel-row-text {
    font-size: 12.5px;
    color: #64748b;
    line-height: 1.4;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    line-clamp: 2;
}

.ud-topbar-panel-row.is-unread .ud-topbar-panel-row-text {
    color: #0a0e17;
    font-weight: 600;
}

.ud-topbar-panel-row > .ud-topbar-panel-row-icon {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    margin-right: 10px;
    vertical-align: top;
    margin-top: 6px;
    flex-shrink: 0;
}

.ud-topbar-panel-row-body {
    display: inline-block;
    width: calc(100% - 22px);
    vertical-align: top;
}

.ud-topbar-panel-empty {
    text-align: center;
    padding: 40px 20px;
}

.ud-topbar-panel-empty-icon {
    font-size: 40px;
    opacity: 0.35;
    margin-bottom: 12px;
    line-height: 1;
}

.ud-topbar-panel-empty p {
    margin: 0 0 4px;
    font-size: 13.5px;
    font-weight: 700;
    color: #64748b;
}

.ud-topbar-panel-empty span {
    font-size: 12px;
    color: #94a3b8;
    line-height: 1.5;
}

/* ═══════════════════════════════════════════════════════════
   🏷️ BRAND UNIDET — Taille réduite
   ═══════════════════════════════════════════════════════════ */

.ud-topbar-brand {
    display: flex;
    align-items: center;
    gap: 11px;
    padding-left: 16px;
    margin-left: 6px;
    border-left: 1px solid #eef2f6;
    height: 100%;
}

.ud-topbar-brand-logo {
    width: 38px;
    height: 38px;
    object-fit: contain;
    flex-shrink: 0;
    display: block;
    margin: 0;
    align-self: center;
}

.ud-topbar-brand-text {
    display: flex;
    flex-direction: column;
    gap: 1px;
    line-height: 1.2;
    justify-content: center;
    align-self: center;
}

.ud-topbar-brand-name {
    font-size: 9px;              /* ⬇️ 10.5 → 9 */
    font-weight: 700;             /* ⬇️ moins gras */
    color: #94a3b8;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    line-height: 1.2;
}

.ud-topbar-brand-tagline {
    font-size: 9.5px;             /* ⬇️ 10.5 → 9.5 */
    font-weight: 500;             /* ⬇️ non-gras */
    color: #64748b;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    line-height: 1.35;
}

/* ═══════════════════════════════════════════════════════════
   📱 RESPONSIVE
   ═══════════════════════════════════════════════════════════ */

@media (max-width: 900px) {
    .ud-topbar-brand {
        display: none;
    }
}

@media (max-width: 600px) {
    .ud-topbar-panel {
        width: calc(100vw - 24px);
        right: -50px;
    }
    .ud-topbar-icon-btn {
        width: 38px;
        height: 38px;
        min-width: 38px;
    }
}

/* ═══════════════════════════════════════════════════════════
   🎯 FIX FINAL — Messages et Notifications = DESIGN IDENTIQUE
   Force tous les états (normal, hover, focus, active, open)
   à être IDENTIQUES entre les deux icônes
   ═══════════════════════════════════════════════════════════ */

.ud-v2-layout .ud-topbar-actions .ud-topbar-icon-btn,
.ud-v2-layout .ud-topbar-actions .ud-topbar-icon-btn.ud-topbar-msg,
.ud-v2-layout .ud-topbar-actions .ud-topbar-icon-btn.ud-bell {
    /* ── Reset total ── */
    outline: 0 !important;
    -webkit-tap-highlight-color: transparent !important;
    text-decoration: none !important;

    /* ── Layout ── */
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    max-width: 40px !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;

    /* ── Couleurs BASE — identiques pour les deux ── */
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
    border: 1.5px solid #E5E9F0 !important;
    border-radius: 10px !important;
    color: #0A0E17 !important;
    box-shadow: none !important;

    cursor: pointer !important;
    transition: background-color 0.15s ease, border-color 0.15s ease,
                color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease !important;
}

/* ── HOVER + FOCUS + ACTIVE + OPEN → même état noir/or ── */
.ud-v2-layout .ud-topbar-actions .ud-topbar-icon-btn:hover,
.ud-v2-layout .ud-topbar-actions .ud-topbar-icon-btn:focus,
.ud-v2-layout .ud-topbar-actions .ud-topbar-icon-btn:focus-visible,
.ud-v2-layout .ud-topbar-actions .ud-topbar-icon-btn:focus-within,
.ud-v2-layout .ud-topbar-actions .ud-topbar-icon-btn:active,
.ud-v2-layout .ud-topbar-actions .ud-topbar-icon-btn.is-open {
    background: #0A0E17 !important;
    background-color: #0A0E17 !important;
    background-image: none !important;
    border-color: #0A0E17 !important;
    color: #C9A227 !important;
    box-shadow: 0 4px 12px rgba(10, 14, 23, 0.15) !important;
    outline: 0 !important;
    transform: translateY(-1px) !important;
}

/* ── SVG : les deux identiques ── */
.ud-v2-layout .ud-topbar-actions .ud-topbar-icon-btn svg {
    width: 18px !important;
    height: 18px !important;
    display: block !important;
    stroke: currentColor !important;
    stroke-width: 2 !important;
    fill: none !important;
    flex-shrink: 0 !important;
    pointer-events: none !important;
    color: inherit !important;
}

/* ── Badge rouge : identique ── */
.ud-v2-layout .ud-topbar-actions .ud-topbar-icon-badge {
    position: absolute !important;
    top: -5px !important;
    right: -5px !important;
    min-width: 18px !important;
    height: 18px !important;
    padding: 0 5px !important;
    background: #EF4444 !important;
    color: #FFFFFF !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    border-radius: 100px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 2px solid #FAFAF9 !important;
    font-variant-numeric: tabular-nums !important;
    line-height: 1 !important;
    box-sizing: border-box !important;
    pointer-events: none !important;
}

/* ── Neutralise TOUTES les couleurs spécifiques qui pourraient traîner ── */
.ud-v2-layout .ud-topbar-actions .ud-topbar-msg,
.ud-v2-layout .ud-topbar-actions .ud-bell {
    background: #ffffff !important;
    border-color: #E5E9F0 !important;
    color: #0A0E17 !important;
}

.ud-v2-layout .ud-topbar-actions .ud-topbar-msg:not(:hover):not(:focus):not(.is-open),
.ud-v2-layout .ud-topbar-actions .ud-bell:not(:hover):not(:focus):not(.is-open) {
    background: #ffffff !important;
    border-color: #E5E9F0 !important;
    color: #0A0E17 !important;
}

/* ═══════════════════════════════════════════════════════════
   🎯 FIX FINAL — UNIFORMISATION TOTALE hover messages/cloche
   Tue TOUTE règle spéciale .ud-bell et force le même hover
   ═══════════════════════════════════════════════════════════ */

/* 1. RÉINITIALISE toute règle .ud-bell existante (le tueur) */
.ud-v2-layout .ud-bell,
.ud-v2-layout .ud-bell:hover,
.ud-v2-layout .ud-bell:focus,
.ud-v2-layout .ud-bell:focus-visible,
.ud-v2-layout .ud-bell:focus-within,
.ud-v2-layout .ud-bell:active,
.ud-v2-layout .ud-bell.is-open,
.ud-v2-layout .ud-bell::before,
.ud-v2-layout .ud-bell::after {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    border-color: transparent !important;
    box-shadow: none !important;
    outline: 0 !important;
    transform: none !important;
    color: inherit !important;
}

/* 2. STYLE BASE IDENTIQUE pour .ud-topbar-msg ET .ud-bell */
.ud-v2-layout .ud-topbar-msg,
.ud-v2-layout .ud-bell {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;

    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
    border: 1.5px solid #E5E9F0 !important;
    border-radius: 10px !important;
    color: #0A0E17 !important;
    box-shadow: none !important;
    outline: 0 !important;

    cursor: pointer !important;
    text-decoration: none !important;
    transition: background-color 0.15s ease, border-color 0.15s ease,
                color 0.15s ease, box-shadow 0.15s ease !important;
}

/* 3. HOVER / FOCUS / ACTIVE / OPEN → IDENTIQUES pour les deux */
.ud-v2-layout .ud-topbar-msg:hover,
.ud-v2-layout .ud-topbar-msg:focus,
.ud-v2-layout .ud-topbar-msg:focus-visible,
.ud-v2-layout .ud-topbar-msg:active,
.ud-v2-layout .ud-topbar-msg.is-open,
.ud-v2-layout .ud-bell:hover,
.ud-v2-layout .ud-bell:focus,
.ud-v2-layout .ud-bell:focus-visible,
.ud-v2-layout .ud-bell:active,
.ud-v2-layout .ud-bell.is-open {
    background: #0A0E17 !important;
    background-color: #0A0E17 !important;
    background-image: none !important;
    border-color: #0A0E17 !important;
    color: #C9A227 !important;
    box-shadow: 0 4px 12px rgba(10, 14, 23, 0.15) !important;
    outline: 0 !important;
}

/* 4. ICÔNE SVG identique */
.ud-v2-layout .ud-topbar-msg svg,
.ud-v2-layout .ud-bell svg {
    width: 18px !important;
    height: 18px !important;
    display: block !important;
    stroke: currentColor !important;
    stroke-width: 2 !important;
    fill: none !important;
    color: inherit !important;
    pointer-events: none !important;
}

/* 5. BADGE rouge identique */
.ud-v2-layout .ud-topbar-msg .ud-topbar-icon-badge,
.ud-v2-layout .ud-bell .ud-topbar-icon-badge,
.ud-v2-layout .ud-bell-badge {
    position: absolute !important;
    top: -5px !important;
    right: -5px !important;
    min-width: 18px !important;
    height: 18px !important;
    padding: 0 5px !important;
    background: #EF4444 !important;
    color: #FFFFFF !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    border-radius: 100px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 2px solid #FAFAF9 !important;
    line-height: 1 !important;
    box-sizing: border-box !important;
    pointer-events: none !important;
}

/* ═══════════════════════════════════════════════════════════
   KPI CARDS (home) — Design exact capture
   ═══════════════════════════════════════════════════════════ */
.ud-v2-layout .ud-home-kpis {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 18px;
}

.ud-v2-layout .ud-home-kpi {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 16px;
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 12px;
    transition: border-color 0.15s, box-shadow 0.15s;
    min-width: 0;
}

.ud-v2-layout .ud-home-kpi:hover {
    border-color: #CBD5E1;
    box-shadow: 0 2px 8px rgba(10, 14, 23, 0.04);
}

/* Icone dans un carré coloré */
.ud-v2-layout .ud-home-kpi-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    min-width: 40px;
    border-radius: 10px;
    flex-shrink: 0;
}

.ud-v2-layout .ud-home-kpi-icon svg {
    width: 20px;
    height: 20px;
    display: block;
}

/* Couleurs des icônes */
.ud-v2-layout .ud-home-kpi.total   .ud-home-kpi-icon { background: #F1F5F9; color: #334155; }
.ud-v2-layout .ud-home-kpi.recupe  .ud-home-kpi-icon { background: #ECFDF5; color: #10B981; }
.ud-v2-layout .ud-home-kpi.cours   .ud-home-kpi-icon { background: #EFF6FF; color: #3B82F6; }
.ud-v2-layout .ud-home-kpi.cloture .ud-home-kpi-icon { background: #FEF9E7; color: #C9A227; }

.ud-v2-layout .ud-home-kpi-body {
    flex: 1;
    min-width: 0;
}

/* Label — casse normale, pas d'uppercase */
.ud-v2-layout .ud-home-kpi-label {
    font-size: 12.5px;
    font-weight: 500;
    color: #64748B;
    margin-bottom: 2px;
    line-height: 1.3;
    letter-spacing: 0;
    text-transform: none;
}

/* Valeur — grande, très grasse, noire */
.ud-v2-layout .ud-home-kpi-value {
    font-size: 22px;
    font-weight: 800;
    color: #0A0E17;
    letter-spacing: -0.5px;
    line-height: 1.1;
    margin-bottom: 2px;
    font-variant-numeric: tabular-nums;
    word-break: break-word;
    text-transform: none;
}

/* Sous-texte — petit, gris clair */
.ud-v2-layout .ud-home-kpi-sub {
    font-size: 11.5px;
    font-weight: 400;
    color: #94A3B8;
    line-height: 1.3;
    text-transform: none;
}

/* RESPONSIVE */
@media (max-width: 1100px) {
    .ud-v2-layout .ud-home-kpis {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .ud-v2-layout .ud-home-kpis {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    .ud-v2-layout .ud-home-kpi {
        padding: 12px 14px;
    }
    .ud-v2-layout .ud-home-kpi-value {
        font-size: 20px;
    }
}

/* ═══════════════════════════════════════════════════════════
   🎯 FORCE FINAL — KPI cards (écrase TOUT)
   ═══════════════════════════════════════════════════════════ */

html body .ud-v2-layout .ud-home-kpis {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin-bottom: 18px !important;
}

html body .ud-v2-layout .ud-home-kpi,
html body .ud-v2-layout .ud-home-kpi.total,
html body .ud-v2-layout .ud-home-kpi.recupe,
html body .ud-v2-layout .ud-home-kpi.cours,
html body .ud-v2-layout .ud-home-kpi.cloture {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 14px 16px !important;
    background: #ffffff !important;
    border: 1px solid #E5E9F0 !important;
    border-left: 1px solid #E5E9F0 !important;
    border-radius: 12px !important;
    box-shadow: none !important;
    transition: border-color 0.15s, box-shadow 0.15s !important;
    min-width: 0 !important;
}

html body .ud-v2-layout .ud-home-kpi::before,
html body .ud-v2-layout .ud-home-kpi::after,
html body .ud-v2-layout .ud-home-kpi.total::before,
html body .ud-v2-layout .ud-home-kpi.total::after,
html body .ud-v2-layout .ud-home-kpi.recupe::before,
html body .ud-v2-layout .ud-home-kpi.recupe::after,
html body .ud-v2-layout .ud-home-kpi.cours::before,
html body .ud-v2-layout .ud-home-kpi.cours::after,
html body .ud-v2-layout .ud-home-kpi.cloture::before,
html body .ud-v2-layout .ud-home-kpi.cloture::after {
    content: none !important;
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    background: none !important;
    border: none !important;
}

html body .ud-v2-layout .ud-home-kpi:hover {
    border-color: #CBD5E1 !important;
    box-shadow: 0 2px 8px rgba(10, 14, 23, 0.04) !important;
}

/* ICONE */
html body .ud-v2-layout .ud-home-kpi-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    max-width: 40px !important;
    border-radius: 10px !important;
    flex-shrink: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

html body .ud-v2-layout .ud-home-kpi-icon svg {
    width: 20px !important;
    height: 20px !important;
    display: block !important;
    stroke: currentColor !important;
    stroke-width: 1.8 !important;
    fill: none !important;
}

/* COULEURS DES ICONES */
html body .ud-v2-layout .ud-home-kpi.total   .ud-home-kpi-icon {
    background: #F1F5F9 !important;
    color: #334155 !important;
}
html body .ud-v2-layout .ud-home-kpi.recupe  .ud-home-kpi-icon {
    background: #ECFDF5 !important;
    color: #10B981 !important;
}
html body .ud-v2-layout .ud-home-kpi.cours   .ud-home-kpi-icon {
    background: #EFF6FF !important;
    color: #3B82F6 !important;
}
html body .ud-v2-layout .ud-home-kpi.cloture .ud-home-kpi-icon {
    background: #FEF9E7 !important;
    color: #C9A227 !important;
}

/* CORPS DE LA CARD */
html body .ud-v2-layout .ud-home-kpi-body {
    flex: 1 !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
}

/* LABEL — casse normale, PAS d'uppercase */
html body .ud-v2-layout .ud-home-kpi-label {
    font-size: 12.5px !important;
    font-weight: 500 !important;
    color: #64748B !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    line-height: 1.3 !important;
    margin: 0 0 2px 0 !important;
    padding: 0 !important;
}

/* VALEUR */
html body .ud-v2-layout .ud-home-kpi-value {
    font-size: 22px !important;
    font-weight: 800 !important;
    color: #0A0E17 !important;
    letter-spacing: -0.5px !important;
    line-height: 1.1 !important;
    margin: 0 0 2px 0 !important;
    padding: 0 !important;
    text-transform: none !important;
    font-variant-numeric: tabular-nums !important;
}

/* SOUS-TEXTE */
html body .ud-v2-layout .ud-home-kpi-sub {
    font-size: 11.5px !important;
    font-weight: 400 !important;
    color: #94A3B8 !important;
    text-transform: none !important;
    line-height: 1.3 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* RESPONSIVE */
@media (max-width: 1100px) {
    html body .ud-v2-layout .ud-home-kpis {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}
@media (max-width: 600px) {
    html body .ud-v2-layout .ud-home-kpis {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }
}

/* Fix centrage SVG dans les cards home */
.ud-v2-layout .ud-home-card-title .icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 20px !important;
    height: 20px !important;
    color: #0A0E17 !important;
}

.ud-v2-layout .ud-home-card-title .icon svg {
    width: 18px !important;
    height: 18px !important;
    display: block !important;
    stroke: currentColor !important;
    fill: none !important;
}

.ud-v2-layout .ud-home-card-empty-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    margin-bottom: 12px !important;
    color: #CBD5E1 !important;
    opacity: 1 !important;
}

.ud-v2-layout .ud-home-card-empty-icon svg {
    width: 32px !important;
    height: 32px !important;
    display: block !important;
    stroke: currentColor !important;
    fill: none !important;
}

/* ═══════════════════════════════════════════════════════════
   🆕 NOUVELLE CRÉANCE — Adaptation du formulaire legacy au V2
   ═══════════════════════════════════════════════════════════ */

/* Le wrapper général */
.ud-v2-layout .ud-nouveau-wrap {
    background: #fff;
    border: 1px solid #E5E9F0;
    border-radius: 12px;
    padding: 20px 24px;
}

/* Neutralise les marges négatives éventuelles du legacy */
.ud-v2-layout .ud-nouveau-wrap .unidet-form-container {
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Header de la section (dépôt) */
.ud-v2-layout .ud-nouveau-wrap .unidet-depot-header {
    margin-bottom: 20px !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid #F1F5F9 !important;
}

.ud-v2-layout .ud-nouveau-wrap .unidet-depot-header h1 {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #0A0E17 !important;
    margin: 0 0 4px !important;
    letter-spacing: -0.3px !important;
}

.ud-v2-layout .ud-nouveau-wrap .unidet-depot-header p {
    font-size: 12.5px !important;
    color: #64748B !important;
    margin: 0 !important;
    line-height: 1.5 !important;
}

/* Sections du formulaire (1. Débiteur, 2. Créance…) */
.ud-v2-layout .ud-nouveau-wrap .unidet-depot-section {
    background: #F8FAFC !important;
    border: 1px solid #EEF2F6 !important;
    border-radius: 10px !important;
    padding: 16px 18px !important;
    margin-bottom: 12px !important;
}

.ud-v2-layout .ud-nouveau-wrap .unidet-depot-section-head {
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;
    padding-bottom: 12px !important;
    margin-bottom: 14px !important;
    border-bottom: 1px solid #E5E9F0 !important;
}

.ud-v2-layout .ud-nouveau-wrap .unidet-depot-section-num {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    border-radius: 8px !important;
    background: #0A0E17 !important;
    color: #C9A227 !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

.ud-v2-layout .ud-nouveau-wrap .unidet-depot-section-title {
    font-size: 14px !important;
    font-weight: 800 !important;
    color: #0A0E17 !important;
    margin: 0 0 2px !important;
}

.ud-v2-layout .ud-nouveau-wrap .unidet-depot-section-sub {
    font-size: 11.5px !important;
    color: #64748B !important;
    margin: 0 !important;
}

/* Champs */
.ud-v2-layout .ud-nouveau-wrap .unidet-depot-field label {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #374151 !important;
    margin-bottom: 4px !important;
    display: block !important;
}

.ud-v2-layout .ud-nouveau-wrap .unidet-depot-field input[type="text"],
.ud-v2-layout .ud-nouveau-wrap .unidet-depot-field input[type="email"],
.ud-v2-layout .ud-nouveau-wrap .unidet-depot-field input[type="tel"],
.ud-v2-layout .ud-nouveau-wrap .unidet-depot-field input[type="date"],
.ud-v2-layout .ud-nouveau-wrap .unidet-depot-field input[type="number"],
.ud-v2-layout .ud-nouveau-wrap .unidet-depot-field textarea,
.ud-v2-layout .ud-nouveau-wrap .unidet-depot-field select {
    width: 100% !important;
    padding: 9px 12px !important;
    border: 1.5px solid #E5E9F0 !important;
    border-radius: 8px !important;
    font-family: inherit !important;
    font-size: 13px !important;
    color: #0A0E17 !important;
    background: #fff !important;
    transition: all 0.15s !important;
    box-sizing: border-box !important;
    min-height: 38px !important;
}

.ud-v2-layout .ud-nouveau-wrap .unidet-depot-field input:focus,
.ud-v2-layout .ud-nouveau-wrap .unidet-depot-field textarea:focus,
.ud-v2-layout .ud-nouveau-wrap .unidet-depot-field select:focus {
    border-color: #C9A227 !important;
    box-shadow: 0 0 0 3px rgba(201,162,39,0.1) !important;
    outline: none !important;
}

/* Grille 2 colonnes */
.ud-v2-layout .ud-nouveau-wrap .unidet-section1-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
}

.ud-v2-layout .ud-nouveau-wrap .unidet-section1-grid .full {
    grid-column: 1 / -1 !important;
}

/* Bouton de soumission */
.ud-v2-layout .ud-nouveau-wrap .unidet-depot-actions {
    display: flex !important;
    justify-content: flex-end !important;
    gap: 10px !important;
    padding-top: 16px !important;
    margin-top: 16px !important;
    border-top: 1px solid #F1F5F9 !important;
}

.ud-v2-layout .ud-nouveau-wrap .unidet-btn-transmettre {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 11px 22px !important;
    background: linear-gradient(135deg, #0A0E17 0%, #1A1F2E 100%) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 9px !important;
    font-family: inherit !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all 0.15s !important;
}

.ud-v2-layout .ud-nouveau-wrap .unidet-btn-transmettre:not(:disabled):hover {
    background: linear-gradient(135deg, #C9A227 0%, #A0824D 100%) !important;
    color: #0A0E17 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 16px rgba(201,162,39,0.3) !important;
}

.ud-v2-layout .ud-nouveau-wrap .unidet-btn-transmettre:disabled {
    opacity: 0.5 !important;
    cursor: not-allowed !important;
}

.ud-v2-layout .ud-nouveau-wrap .unidet-btn-cancel {
    display: inline-flex !important;
    align-items: center !important;
    padding: 11px 18px !important;
    background: #fff !important;
    border: 1.5px solid #E5E9F0 !important;
    border-radius: 9px !important;
    color: #64748B !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: all 0.15s !important;
}

.ud-v2-layout .ud-nouveau-wrap .unidet-btn-cancel:hover {
    border-color: #0A0E17 !important;
    color: #0A0E17 !important;
}

/* Responsive */
@media (max-width: 700px) {
    .ud-v2-layout .ud-nouveau-wrap {
        padding: 14px 16px !important;
    }
    .ud-v2-layout .ud-nouveau-wrap .unidet-section1-grid {
        grid-template-columns: 1fr !important;
    }
    .ud-v2-layout .ud-nouveau-wrap .unidet-depot-actions {
        flex-direction: column-reverse !important;
    }
    .ud-v2-layout .ud-nouveau-wrap .unidet-depot-actions .unidet-btn-transmettre,
    .ud-v2-layout .ud-nouveau-wrap .unidet-depot-actions .unidet-btn-cancel {
        width: 100% !important;
        justify-content: center !important;
    }
}

/* ═══════════════════════════════════════════════════════════
   🎯 FIX FINAL — Densité compacte + Hovers noir/or partout
   (Écrase TOUS les hovers rouges du thème)
   ═══════════════════════════════════════════════════════════ */

/* ─── DENSITÉ COMPACTE — Tous les boutons ─── */
.ud-v2-layout button,
.ud-v2-layout .udc-btn-primary,
.ud-v2-layout .udc-btn-secondary,
.ud-v2-layout .udc-panel-reset,
.ud-v2-layout .udc-tab,
.ud-v2-layout .udm-btn,
.ud-v2-layout .ud-dossiers-action {
    font-size: 12.5px !important;
    padding: 8px 14px !important;
    min-height: 36px !important;
    height: auto !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

.ud-v2-layout .udc-head {
    margin-bottom: 12px !important;
}
.ud-v2-layout .udc-title {
    font-size: 18px !important;
    margin-bottom: 2px !important;
}
.ud-v2-layout .udc-sub {
    font-size: 12px !important;
}
.ud-v2-layout .udc-title-count {
    min-width: 22px !important;
    height: 22px !important;
    font-size: 12px !important;
}

.ud-v2-layout .udc-tabs {
    gap: 5px !important;
    padding-bottom: 4px !important;
    margin-bottom: 10px !important;
}
.ud-v2-layout .udc-tab {
    padding: 6px 10px !important;
    font-size: 11.5px !important;
    min-height: 32px !important;
}

.ud-v2-layout .udc-panel {
    margin-bottom: 12px !important;
}
.ud-v2-layout .udc-panel-head {
    padding: 10px 16px !important;
}
.ud-v2-layout .udc-panel-head-icon {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
}
.ud-v2-layout .udc-panel-head-text h3 {
    font-size: 14px !important;
    margin: 0 !important;
}
.ud-v2-layout .udc-panel-head-text p {
    font-size: 11.5px !important;
    margin: 1px 0 0 !important;
}
.ud-v2-layout .udc-panel-search {
    padding: 12px 16px 0 !important;
}
.ud-v2-layout .udc-panel-search label {
    font-size: 10.5px !important;
    margin-bottom: 4px !important;
}
.ud-v2-layout .udc-panel-search input {
    height: 38px !important;
    font-size: 12.5px !important;
    padding: 8px 12px !important;
}
.ud-v2-layout .udc-panel-grid {
    padding: 12px 16px 16px !important;
    gap: 12px !important;
}
.ud-v2-layout .udc-panel-field label {
    font-size: 10.5px !important;
    margin-bottom: 4px !important;
}
.ud-v2-layout .udc-panel-field select,
.ud-v2-layout .udc-panel-field input {
    height: 38px !important;
    font-size: 12.5px !important;
    padding: 8px 12px !important;
}

/* Table plus compacte */
.ud-v2-layout .udc-table tbody td {
    padding: 10px 14px !important;
    font-size: 12.5px !important;
}
.ud-v2-layout .udc-table thead th {
    padding: 10px 14px !important;
    font-size: 10px !important;
}
.ud-v2-layout .udc-ref {
    font-size: 11.5px !important;
    padding: 3px 7px !important;
}
.ud-v2-layout .udc-deb-name {
    font-size: 12.5px !important;
}
.ud-v2-layout .udc-deb-line {
    font-size: 11px !important;
}
.ud-v2-layout .udc-amount {
    font-size: 13px !important;
}
.ud-v2-layout .udc-badge {
    font-size: 10px !important;
    padding: 3px 8px !important;
}
.ud-v2-layout .udc-act {
    width: 30px !important;
    height: 30px !important;
    font-size: 13px !important;
}
.ud-v2-layout .udc-results {
    font-size: 11.5px !important;
    margin-top: 10px !important;
}

/* ═══════════════════════════════════════════════════════════
   🚫 KILL TOUS LES HOVERS ROUGES
   (force noir/or sur n'importe quel bouton du dashboard)
   ═══════════════════════════════════════════════════════════ */

.ud-v2-layout button:hover,
.ud-v2-layout button:focus,
.ud-v2-layout .udc-btn-secondary:hover,
.ud-v2-layout .udc-btn-secondary:focus,
.ud-v2-layout .udc-panel-reset:hover,
.ud-v2-layout .udc-panel-reset:focus {
    background: #0A0E17 !important;
    border-color: #0A0E17 !important;
    color: #C9A227 !important;
}

.ud-v2-layout button:hover svg,
.ud-v2-layout button:focus svg,
.ud-v2-layout .udc-btn-secondary:hover svg,
.ud-v2-layout .udc-panel-reset:hover svg {
    stroke: #C9A227 !important;
    color: #C9A227 !important;
}

.ud-v2-layout .udc-btn-primary:hover,
.ud-v2-layout .udc-btn-primary:focus {
    background: #C9A227 !important;
    border-color: #C9A227 !important;
    color: #0A0E17 !important;
}

/* ═══════════════════════════════════════════════════════════
   🎯 FIX SIDEBAR — Logo plus grand + flèche propre
   ═══════════════════════════════════════════════════════════ */

html body.ud-v2-shell .ud-v2-layout .ud-sidebar-head {
    padding: 18px 16px !important;
    min-height: 84px !important;
    align-items: center !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-brand {
    flex: 1 !important;
    display: flex !important;
    align-items: center !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-brand-logo {
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-brand-logo img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    display: block !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar-toggle {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    border-radius: 50% !important;
    background: rgba(201, 162, 39, 0.12) !important;
    border: 1.5px solid rgba(201, 162, 39, 0.35) !important;
    color: #C9A227 !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.2s !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar-toggle:hover {
    background: rgba(201, 162, 39, 0.25) !important;
    border-color: rgba(201, 162, 39, 0.6) !important;
    transform: scale(1.06) !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-toggle-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    transform: translateX(-1px) !important;   /* centre optiquement le chevron */
}

html body.ud-v2-shell .ud-v2-layout .ud-toggle-icon svg {
    width: 14px !important;
    height: 14px !important;
    display: block !important;
    stroke: currentColor !important;
}

/* Chevron retourné quand la sidebar est collapsed */
html body.ud-v2-shell .ud-v2-layout.ud-collapsed .ud-toggle-icon {
    transform: translateX(1px) !important;
}
html body.ud-v2-shell .ud-v2-layout.ud-collapsed .ud-toggle-icon svg {
    transform: rotate(180deg) !important;
}

/* ═══════════════════════════════════════════════════════════
   🎯 FIX TABLE — Icônes d'action visibles + header Actions
   ═══════════════════════════════════════════════════════════ */

.ud-v2-layout .udc-table thead th:last-child {
    text-align: right !important;
    padding-right: 20px !important;
}

.ud-v2-layout .udc-actions {
    display: inline-flex !important;
    gap: 6px !important;
    align-items: center !important;
    justify-content: flex-end !important;
}

.ud-v2-layout .udc-act {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    border: 1.5px solid #E5E9F0 !important;
    background: #ffffff !important;
    border-radius: 8px !important;
    color: #0A0E17 !important;
    cursor: pointer !important;
    transition: all 0.15s !important;
    padding: 0 !important;
    font-size: 0 !important;   /* évite l'affichage de l'emoji texte */
}

.ud-v2-layout .udc-act svg {
    width: 16px !important;
    height: 16px !important;
    display: block !important;
    stroke: currentColor !important;
    fill: none !important;
    pointer-events: none !important;
}

.ud-v2-layout .udc-act:hover {
    background: #0A0E17 !important;
    border-color: #0A0E17 !important;
    color: #C9A227 !important;
    transform: translateY(-1px) !important;
}

.ud-v2-layout .udc-act.is-thread {
    background: linear-gradient(135deg, #C9A227 0%, #A0824D 100%) !important;
    border-color: transparent !important;
    color: #ffffff !important;
}

.ud-v2-layout .udc-act.is-thread:hover {
    background: linear-gradient(135deg, #A0824D 0%, #8B6F42 100%) !important;
    color: #ffffff !important;
}

/* ─── Colonne Contrat ─── */
.ud-v2-layout .udc-contract {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 4px 10px !important;
    border-radius: 100px !important;
    font-size: 10.5px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.3px !important;
    white-space: nowrap !important;
}
.ud-v2-layout .udc-contract.is-signed    { background: #ECFDF5 !important; color: #047857 !important; }
.ud-v2-layout .udc-contract.is-pending   { background: #FEF3C7 !important; color: #92400E !important; }
.ud-v2-layout .udc-contract.is-none      { background: #F1F5F9 !important; color: #94A3B8 !important; }
.ud-v2-layout .udc-contract.is-declined  { background: #FEF2F2 !important; color: #991B1B !important; }

/* ═══════════════════════════════════════════════════════════
   🎯 SIDEBAR — Flèche toggle réduite
   ═══════════════════════════════════════════════════════════ */

html body.ud-v2-shell .ud-v2-layout .ud-sidebar-toggle {
    width: 26px !important;
    height: 26px !important;
    min-width: 26px !important;
    border-radius: 50% !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar-toggle svg {
    width: 11px !important;
    height: 11px !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-toggle-icon {
    transform: translateX(-0.5px) !important;
}

/* ═══════════════════════════════════════════════════════════
   Modal Déconnexion — Styles
   ═══════════════════════════════════════════════════════════ */

.ud-logout-popup {
    border-radius: 20px !important;
    padding: 30px 28px 24px !important;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
    box-shadow: 0 30px 80px rgba(10, 14, 23, 0.35) !important;
}

.ud-logout-confirm,
.ud-logout-cancel {
    padding: 11px 24px !important;
    border-radius: 10px !important;
    font-family: inherit !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all 0.15s !important;
    border: 1.5px solid transparent !important;
    min-height: 42px !important;
    min-width: 130px !important;
    margin: 0 5px !important;
}

.ud-logout-confirm {
    background: linear-gradient(135deg, #DC2626 0%, #991B1B 100%) !important;
    color: #fff !important;
    box-shadow: 0 4px 14px rgba(220, 38, 38, 0.3) !important;
}
.ud-logout-confirm:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 20px rgba(220, 38, 38, 0.45) !important;
}

.ud-logout-cancel {
    background: #fff !important;
    border-color: #E5E9F0 !important;
    color: #475569 !important;
}
.ud-logout-cancel:hover {
    background: #0A0E17 !important;
    border-color: #0A0E17 !important;
    color: #C9A227 !important;
}

@keyframes udLogoutIn {
    from { opacity: 0; transform: scale(0.94) translateY(20px); }
    to   { opacity: 1; transform: scale(1) translateY(0); }
}
.ud-logout-popup-in {
    animation: udLogoutPopupIn 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
@keyframes udLogoutPopupIn {
    from { opacity: 0; transform: scale(0.94) translateY(20px); }
    to   { opacity: 1; transform: scale(1) translateY(0); }
}

/* ═══════════════════════════════════════════════════════════
   PROFIL / SÉCURITÉ / STATS — Styles
   ═══════════════════════════════════════════════════════════ */

/* ═══ PROFIL ═══ */
.ud-v2-layout .udp-head { margin-bottom: 16px; }
.ud-v2-layout .udp-title { margin: 0 0 2px; font-size: 20px; font-weight: 800; color: #0A0E17; }
.ud-v2-layout .udp-sub { margin: 0; font-size: 12.5px; color: #64748B; }
.ud-v2-layout .udp-grid { display: grid; grid-template-columns: 260px 1fr; gap: 16px; align-items: start; }
.ud-v2-layout .udp-side { display: flex; flex-direction: column; gap: 12px; }
.ud-v2-layout .udp-avatar-card { background: #fff; border: 1px solid #E5E9F0; border-radius: 14px; padding: 20px; text-align: center; }
.ud-v2-layout .udp-avatar { width: 96px; height: 96px; margin: 0 auto 14px; border-radius: 50%; background: linear-gradient(135deg, #C9A227, #A0824D); display: flex; align-items: center; justify-content: center; overflow: hidden; box-shadow: 0 6px 20px rgba(201,162,39,0.25); }
.ud-v2-layout .udp-avatar img { width: 100%; height: 100%; object-fit: cover; }
.ud-v2-layout .udp-avatar-init { font-size: 32px; font-weight: 800; color: #fff; letter-spacing: 1px; }
.ud-v2-layout .udp-avatar-name { font-size: 15px; font-weight: 800; color: #0A0E17; margin-bottom: 3px; }
.ud-v2-layout .udp-avatar-role { font-size: 11.5px; color: #94A3B8; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 14px; }
.ud-v2-layout .udp-avatar-btn { display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px; background: #F8FAFC; border: 1px solid #E5E9F0; border-radius: 8px; font-size: 12px; font-weight: 700; color: #475569; cursor: pointer; transition: all 0.15s; }
.ud-v2-layout .udp-avatar-btn:hover { background: #0A0E17; color: #C9A227; border-color: #0A0E17; }
.ud-v2-layout .udp-avatar-hint { margin: 8px 0 0; font-size: 10.5px; color: #94A3B8; }
.ud-v2-layout .udp-meta-card { background: #fff; border: 1px solid #E5E9F0; border-radius: 14px; padding: 14px; }
.ud-v2-layout .udp-meta-row { display: flex; justify-content: space-between; align-items: center; padding: 8px 0; border-bottom: 1px solid #F1F5F9; }
.ud-v2-layout .udp-meta-row:last-child { border-bottom: none; }
.ud-v2-layout .udp-meta-label { font-size: 11.5px; color: #64748B; font-weight: 600; }
.ud-v2-layout .udp-meta-value { font-size: 12.5px; font-weight: 700; color: #0A0E17; }
.ud-v2-layout .udp-meta-value.is-active { color: #10B981; }
.ud-v2-layout .udp-main { background: #fff; border: 1px solid #E5E9F0; border-radius: 14px; padding: 20px 24px; }
.ud-v2-layout .udp-section { margin-bottom: 22px; }
.ud-v2-layout .udp-section-title { margin: 0 0 14px; padding-bottom: 10px; font-size: 12px; font-weight: 800; color: #0A0E17; text-transform: uppercase; letter-spacing: 0.6px; border-bottom: 1px solid #F1F5F9; }
.ud-v2-layout .udp-fields-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.ud-v2-layout .udp-field { display: flex; flex-direction: column; gap: 5px; }
.ud-v2-layout .udp-field-full { grid-column: 1 / -1; }
.ud-v2-layout .udp-field label { font-size: 11.5px; font-weight: 700; color: #374151; }
.ud-v2-layout .udp-req { color: #DC2626; }
.ud-v2-layout .udp-field input { padding: 10px 13px; border: 1.5px solid #E5E9F0; border-radius: 9px; font-family: inherit; font-size: 13px; color: #0A0E17; outline: none; transition: all 0.15s; }
.ud-v2-layout .udp-field input:focus { border-color: #C9A227; box-shadow: 0 0 0 3px rgba(201,162,39,0.1); }
.ud-v2-layout .udp-hint { font-size: 10.5px; color: #94A3B8; }
.ud-v2-layout .udp-actions { display: flex; justify-content: flex-end; padding-top: 8px; border-top: 1px solid #F1F5F9; }
.ud-v2-layout .udp-btn-primary { display: inline-flex; align-items: center; gap: 8px; padding: 11px 22px; background: linear-gradient(135deg, #0A0E17 0%, #1A1F2E 100%); color: #fff; border: none; border-radius: 10px; font-family: inherit; font-size: 13px; font-weight: 700; cursor: pointer; transition: all 0.15s; }
.ud-v2-layout .udp-btn-primary:hover { background: linear-gradient(135deg, #C9A227 0%, #A0824D 100%); color: #0A0E17; transform: translateY(-1px); }
@media (max-width: 900px) { .ud-v2-layout .udp-grid { grid-template-columns: 1fr; } .ud-v2-layout .udp-fields-grid { grid-template-columns: 1fr; } }

/* ═══ SÉCURITÉ ═══ */
.ud-v2-layout .uds-head { margin-bottom: 16px; }
.ud-v2-layout .uds-title { margin: 0 0 2px; font-size: 20px; font-weight: 800; color: #0A0E17; }
.ud-v2-layout .uds-sub { margin: 0; font-size: 12.5px; color: #64748B; }
.ud-v2-layout .uds-info-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-bottom: 16px; }
.ud-v2-layout .uds-info-card { display: flex; gap: 12px; padding: 14px 16px; background: #fff; border: 1px solid #E5E9F0; border-radius: 12px; }
.ud-v2-layout .uds-info-icon { width: 42px; height: 42px; min-width: 42px; border-radius: 10px; display: inline-flex; align-items: center; justify-content: center; }
.ud-v2-layout .uds-info-icon.is-blue   { background: #EFF6FF; color: #1D4ED8; }
.ud-v2-layout .uds-info-icon.is-green  { background: #ECFDF5; color: #059669; }
.ud-v2-layout .uds-info-icon.is-gold   { background: #FEF9E7; color: #A0824D; }
.ud-v2-layout .uds-info-body { flex: 1; min-width: 0; }
.ud-v2-layout .uds-info-label { font-size: 10px; font-weight: 800; color: #94A3B8; text-transform: uppercase; letter-spacing: 0.4px; margin-bottom: 3px; }
.ud-v2-layout .uds-info-value { font-size: 13px; font-weight: 700; color: #0A0E17; word-break: break-word; }
.ud-v2-layout .uds-info-badge { display: inline-block; margin-top: 4px; padding: 2px 8px; border-radius: 100px; font-size: 9.5px; font-weight: 800; }
.ud-v2-layout .uds-info-badge.is-verified { background: #ECFDF5; color: #047857; }
.ud-v2-layout .uds-form-card { background: #fff; border: 1px solid #E5E9F0; border-radius: 14px; padding: 20px 24px; }
.ud-v2-layout .uds-form-head { display: flex; gap: 14px; align-items: flex-start; padding-bottom: 16px; margin-bottom: 18px; border-bottom: 1px solid #F1F5F9; }
.ud-v2-layout .uds-form-head-icon { width: 40px; height: 40px; min-width: 40px; border-radius: 10px; background: #FEF9E7; color: #A0824D; display: inline-flex; align-items: center; justify-content: center; }
.ud-v2-layout .uds-form-title { margin: 0 0 2px; font-size: 15px; font-weight: 800; color: #0A0E17; }
.ud-v2-layout .uds-form-sub { margin: 0; font-size: 12px; color: #64748B; }
.ud-v2-layout .uds-form { display: flex; flex-direction: column; gap: 14px; }
.ud-v2-layout .uds-field { display: flex; flex-direction: column; gap: 5px; }
.ud-v2-layout .uds-field label { font-size: 11.5px; font-weight: 700; color: #374151; }
.ud-v2-layout .uds-req { color: #DC2626; }
.ud-v2-layout .uds-input-wrap { position: relative; display: flex; align-items: center; }
.ud-v2-layout .uds-input-wrap input { width: 100%; padding: 10px 42px 10px 13px; border: 1.5px solid #E5E9F0; border-radius: 9px; font-family: inherit; font-size: 13px; color: #0A0E17; outline: none; transition: all 0.15s; }
.ud-v2-layout .uds-input-wrap input:focus { border-color: #C9A227; box-shadow: 0 0 0 3px rgba(201,162,39,0.1); }
.ud-v2-layout .uds-toggle { position: absolute; right: 10px; width: 26px; height: 26px; border: none; background: transparent; color: #94A3B8; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; border-radius: 6px; padding: 0; }
.ud-v2-layout .uds-toggle:hover { background: #F1F5F9; color: #0A0E17; }
.ud-v2-layout .uds-fields-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.ud-v2-layout .uds-strength { display: flex; align-items: center; gap: 12px; }
.ud-v2-layout .uds-strength-bar { flex: 1; height: 5px; background: #F1F5F9; border-radius: 100px; overflow: hidden; }
.ud-v2-layout .uds-strength-fill { height: 100%; width: 0%; transition: all 0.3s; border-radius: 100px; }
.ud-v2-layout .uds-strength-text { font-size: 11.5px; font-weight: 800; }
.ud-v2-layout .uds-rules { background: #F8FAFC; border-left: 3px solid #C9A227; padding: 10px 14px; border-radius: 0 8px 8px 0; font-size: 12px; color: #475569; }
.ud-v2-layout .uds-rules strong { display: block; margin-bottom: 4px; color: #0A0E17; }
.ud-v2-layout .uds-rules ul { margin: 0; padding-left: 18px; line-height: 1.6; }
.ud-v2-layout .uds-actions { display: flex; justify-content: flex-end; padding-top: 8px; border-top: 1px solid #F1F5F9; }
.ud-v2-layout .uds-btn-primary { display: inline-flex; align-items: center; gap: 8px; padding: 11px 22px; background: linear-gradient(135deg, #0A0E17 0%, #1A1F2E 100%); color: #fff; border: none; border-radius: 10px; font-family: inherit; font-size: 13px; font-weight: 700; cursor: pointer; transition: all 0.15s; }
.ud-v2-layout .uds-btn-primary:not(:disabled):hover { background: linear-gradient(135deg, #C9A227 0%, #A0824D 100%); color: #0A0E17; transform: translateY(-1px); }
.ud-v2-layout .uds-btn-primary:disabled { opacity: 0.45; cursor: not-allowed; }
@media (max-width: 900px) { .ud-v2-layout .uds-info-grid { grid-template-columns: 1fr; } .ud-v2-layout .uds-fields-grid { grid-template-columns: 1fr; } }

/* ═══ STATS ═══ */
.ud-v2-layout .udst-head { margin-bottom: 16px; }
.ud-v2-layout .udst-title { margin: 0 0 2px; font-size: 20px; font-weight: 800; color: #0A0E17; }
.ud-v2-layout .udst-sub { margin: 0; font-size: 12.5px; color: #64748B; }
.ud-v2-layout .udst-kpis { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-bottom: 16px; }
.ud-v2-layout .udst-kpi { display: flex; gap: 12px; align-items: center; padding: 16px; background: #fff; border: 1px solid #E5E9F0; border-radius: 12px; }
.ud-v2-layout .udst-kpi-icon { width: 44px; height: 44px; min-width: 44px; border-radius: 10px; display: inline-flex; align-items: center; justify-content: center; font-size: 20px; }
.ud-v2-layout .udst-kpi.is-total .udst-kpi-icon { background: #F1F5F9; }
.ud-v2-layout .udst-kpi.is-recupe .udst-kpi-icon { background: #ECFDF5; }
.ud-v2-layout .udst-kpi.is-cours .udst-kpi-icon { background: #EFF6FF; }
.ud-v2-layout .udst-kpi.is-perdu .udst-kpi-icon { background: #FEF2F2; }
.ud-v2-layout .udst-kpi-body { flex: 1; min-width: 0; }
.ud-v2-layout .udst-kpi-label { font-size: 10px; font-weight: 800; color: #64748B; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 3px; }
.ud-v2-layout .udst-kpi-value { font-size: 20px; font-weight: 900; color: #0A0E17; letter-spacing: -0.5px; line-height: 1.1; margin-bottom: 2px; }
.ud-v2-layout .udst-kpi-sub { font-size: 10.5px; color: #94A3B8; font-weight: 600; }
.ud-v2-layout .udst-ratio { background: #fff; border: 1px solid #E5E9F0; border-radius: 12px; padding: 18px 22px; margin-bottom: 16px; }
.ud-v2-layout .udst-ratio-head { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 12px; }
.ud-v2-layout .udst-ratio-title { font-size: 13.5px; font-weight: 800; color: #0A0E17; margin-bottom: 2px; }
.ud-v2-layout .udst-ratio-sub { font-size: 11.5px; color: #94A3B8; }
.ud-v2-layout .udst-ratio-pct { font-size: 28px; font-weight: 900; color: #10B981; letter-spacing: -0.8px; }
.ud-v2-layout .udst-ratio-bar { display: flex; height: 10px; border-radius: 100px; overflow: hidden; background: #F1F5F9; margin-bottom: 12px; }
.ud-v2-layout .udst-ratio-seg.is-win  { background: linear-gradient(90deg, #22C55E, #10B981); }
.ud-v2-layout .udst-ratio-seg.is-lose { background: linear-gradient(90deg, #EF4444, #B91C1C); }
.ud-v2-layout .udst-ratio-legend { display: flex; gap: 20px; font-size: 12px; color: #475569; }
.ud-v2-layout .udst-leg { display: inline-flex; align-items: center; gap: 6px; }
.ud-v2-layout .udst-dot { width: 8px; height: 8px; border-radius: 50%; }
.ud-v2-layout .udst-dot.is-win { background: #10B981; }
.ud-v2-layout .udst-dot.is-lose { background: #EF4444; }
.ud-v2-layout .udst-card { background: #fff; border: 1px solid #E5E9F0; border-radius: 12px; padding: 18px 22px; }
.ud-v2-layout .udst-card-title { margin: 0 0 14px; font-size: 13.5px; font-weight: 800; color: #0A0E17; }
.ud-v2-layout .udst-status-list { display: flex; flex-direction: column; gap: 10px; }
.ud-v2-layout .udst-status-row { display: grid; grid-template-columns: 130px 1fr 100px; gap: 14px; align-items: center; }
.ud-v2-layout .udst-status-label { font-size: 12px; font-weight: 700; color: #334155; }
.ud-v2-layout .udst-status-bar { height: 8px; background: #F1F5F9; border-radius: 100px; overflow: hidden; }
.ud-v2-layout .udst-status-fill { height: 100%; border-radius: 100px; transition: width 0.5s; }
.ud-v2-layout .udst-status-fill.is-green  { background: #10B981; }
.ud-v2-layout .udst-status-fill.is-blue   { background: #3B82F6; }
.ud-v2-layout .udst-status-fill.is-orange { background: #F59E0B; }
.ud-v2-layout .udst-status-fill.is-red    { background: #EF4444; }
.ud-v2-layout .udst-status-fill.is-gray   { background: #94A3B8; }
.ud-v2-layout .udst-status-count { font-size: 11.5px; color: #64748B; text-align: right; font-weight: 600; }
.ud-v2-layout .udst-status-count strong { color: #0A0E17; font-weight: 800; }
@media (max-width: 900px) {
    .ud-v2-layout .udst-kpis { grid-template-columns: repeat(2, 1fr); }
    .ud-v2-layout .udst-status-row { grid-template-columns: 1fr; gap: 4px; }
    .ud-v2-layout .udst-status-count { text-align: left; }
}
@media (max-width: 600px) { .ud-v2-layout .udst-kpis { grid-template-columns: 1fr; } }

/* ═══════════════════════════════════════════════════════════
   🎯 FIX — Bloc "Critères" du mot de passe
   ═══════════════════════════════════════════════════════════ */

.ud-v2-layout .uds-rules {
    background: #F8FAFC !important;
    border-left: 3px solid #C9A227 !important;
    padding: 12px 16px !important;
    border-radius: 0 8px 8px 0 !important;
    font-size: 12.5px !important;
    color: #475569 !important;
    line-height: 1.5 !important;
}

.ud-v2-layout .uds-rules strong {
    display: inline !important;
    font-weight: 800 !important;
    color: #0A0E17 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.ud-v2-layout .uds-rules ul {
    margin: 8px 0 0 !important;
    padding-left: 20px !important;
    list-style: disc !important;
    line-height: 1.7 !important;
}

.ud-v2-layout .uds-rules li {
    margin: 0 0 4px !important;
    padding: 0 !important;
    font-size: 12.5px !important;
    color: #475569 !important;
    line-height: 1.5 !important;
}

.ud-v2-layout .uds-rules li strong {
    display: inline !important;
    font-weight: 800 !important;
    color: #0A0E17 !important;
}

/* ═══════════════════════════════════════════════════════════
   🎯 FIX — Flèche repli sidebar (sobre, discrète)
   ═══════════════════════════════════════════════════════════ */

.ud-v2-layout .ud-sidebar-toggle,
.ud-v2-layout .ud-sidebar .ud-sidebar-toggle {
    background: rgba(255, 255, 255, 0.06) !important;
    background-image: none !important;
    border: 1px solid rgba(201, 162, 39, 0.25) !important;
    border-radius: 8px !important;
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.18s ease !important;
    color: #C9A227 !important;
    box-shadow: none !important;
}

.ud-v2-layout .ud-sidebar-toggle:hover,
.ud-v2-layout .ud-sidebar .ud-sidebar-toggle:hover {
    background: rgba(201, 162, 39, 0.15) !important;
    border-color: #C9A227 !important;
    color: #C9A227 !important;
    transform: none !important;
}

.ud-v2-layout .ud-toggle-icon,
.ud-v2-layout .ud-sidebar-toggle .ud-toggle-icon,
.ud-v2-layout .ud-sidebar-toggle span {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    background: transparent !important;
    background-image: none !important;
    border-radius: 0 !important;
    font-size: 0 !important;
    color: inherit !important;
}

.ud-v2-layout .ud-toggle-icon svg,
.ud-v2-layout .ud-sidebar-toggle svg {
    width: 14px !important;
    height: 14px !important;
    stroke: currentColor !important;
    stroke-width: 2.5 !important;
    display: block !important;
    margin: 0 auto !important;
    position: static !important;
    transform: none !important;
    vertical-align: middle !important;
}

/* Cercle décoratif éventuel : on le tue */
.ud-v2-layout .ud-sidebar-toggle::before,
.ud-v2-layout .ud-sidebar-toggle::after,
.ud-v2-layout .ud-toggle-icon::before,
.ud-v2-layout .ud-toggle-icon::after {
    display: none !important;
    content: none !important;
    background: none !important;
}

.ud-v2-page-head-actions {
    display: flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap;
} 

/* ═══════════════════════════════════════════════════════════
   🎯 Avatar image (sidebar + profil)
   ═══════════════════════════════════════════════════════════ */
.ud-avatar-img,
.udp-avatar-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 50% !important;
    display: block !important;
}
.ud-avatar {
    overflow: hidden;
}

/* ═══════════════════════════════════════════════════════════
   🎯 SIDEBAR HEAD — Logo plus grand + marges réduites
   ═══════════════════════════════════════════════════════════ */

.ud-v2-layout .ud-sidebar-head,
.ud-sidebar .ud-sidebar-head {
    padding: 14px 16px !important;
    min-height: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
}

.ud-v2-layout .ud-brand,
.ud-sidebar .ud-brand {
    display: flex !important;
    align-items: center !important;
    padding: 0 !important;
    margin: 0 !important;
    text-decoration: none !important;
    flex: 1 !important;
    min-width: 0 !important;
}

.ud-v2-layout .ud-brand-logo,
.ud-sidebar .ud-brand-logo {
    display: flex !important;
    align-items: center !important;
    padding: 0 !important;
    margin: 0 !important;
    max-width: 100% !important;
}

.ud-v2-layout .ud-brand-logo img,
.ud-sidebar .ud-brand-logo img {
    max-height: 64px !important;
    max-width: 180px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    display: block !important;
    /* Filtre pour éclaircir le logo si trop sombre */
    filter: brightness(1.05) !important;
}

/* Ajuste le bouton collapse */
.ud-v2-layout .ud-sidebar-toggle,
.ud-sidebar .ud-sidebar-toggle {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    flex-shrink: 0 !important;
}

/* Quand la sidebar est repliée : logo centré plus petit */
.ud-v2-layout .ud-sidebar.is-collapsed .ud-brand-logo img,
.ud-sidebar.is-collapsed .ud-brand-logo img {
    max-height: 36px !important;
    max-width: 36px !important;
}

/* ═══════════════════════════════════════════════════════════
   🎯 Bouton Déconnexion (button natif)
   ═══════════════════════════════════════════════════════════ */
.ud-v2-layout .ud-sidebar .ud-logout-btn,
.ud-sidebar .ud-logout-btn {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    padding: 10px 14px !important;
    background: transparent !important;
    border: 1px solid rgba(239, 68, 68, 0.2) !important;
    border-radius: 9px !important;
    color: #EF4444 !important;
    font-family: inherit !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    text-decoration: none !important;
    transition: all 0.15s ease !important;
    box-sizing: border-box !important;
    text-align: left !important;
}
.ud-v2-layout .ud-sidebar .ud-logout-btn:hover,
.ud-sidebar .ud-logout-btn:hover {
    background: rgba(239, 68, 68, 0.12) !important;
    border-color: rgba(239, 68, 68, 0.4) !important;
    color: #FCA5A5 !important;
}

/* ═══════════════════════════════════════════════════════════
   🎯 SIDEBAR COLLAPSED — Version épurée
   ═══════════════════════════════════════════════════════════ */

/* Largeur collapsed */
.ud-v2-layout .ud-sidebar.is-collapsed,
.ud-sidebar.is-collapsed {
    width: 72px !important;
    min-width: 72px !important;
    max-width: 72px !important;
}

/* Head collapsed */
.ud-v2-layout .ud-sidebar.is-collapsed .ud-sidebar-head,
.ud-sidebar.is-collapsed .ud-sidebar-head {
    padding: 12px 8px !important;
    flex-direction: column !important;
    gap: 8px !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: auto !important;
}

/* Brand collapsed : seulement le logo réduit */
.ud-v2-layout .ud-sidebar.is-collapsed .ud-brand,
.ud-sidebar.is-collapsed .ud-brand {
    width: 100% !important;
    justify-content: center !important;
    padding: 0 !important;
}

.ud-v2-layout .ud-sidebar.is-collapsed .ud-brand-logo,
.ud-sidebar.is-collapsed .ud-brand-logo {
    width: 40px !important;
    height: 40px !important;
    overflow: hidden !important;
    border-radius: 50% !important;
    background: rgba(201, 162, 39, 0.08) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.ud-v2-layout .ud-sidebar.is-collapsed .ud-brand-logo img,
.ud-sidebar.is-collapsed .ud-brand-logo img {
    max-height: 32px !important;
    max-width: 32px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
}

/* Cache le texte "UNIDET" ou tout ce qui n'est pas le logo */
.ud-v2-layout .ud-sidebar.is-collapsed .ud-brand-text,
.ud-v2-layout .ud-sidebar.is-collapsed .ud-brand-name,
.ud-sidebar.is-collapsed .ud-brand-text,
.ud-sidebar.is-collapsed .ud-brand-name {
    display: none !important;
}

/* Bouton collapse : rond discret en haut */
.ud-v2-layout .ud-sidebar.is-collapsed .ud-sidebar-toggle,
.ud-sidebar.is-collapsed .ud-sidebar-toggle {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    border-radius: 50% !important;
    background: rgba(201, 162, 39, 0.15) !important;
    border: 1px solid rgba(201, 162, 39, 0.25) !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    top: 0 !important;
    right: 0 !important;
    transform: rotate(180deg) !important;
}
.ud-v2-layout .ud-sidebar.is-collapsed .ud-sidebar-toggle:hover,
.ud-sidebar.is-collapsed .ud-sidebar-toggle:hover {
    background: rgba(201, 162, 39, 0.3) !important;
    border-color: #C9A227 !important;
}

.ud-v2-layout .ud-sidebar.is-collapsed .ud-sidebar-toggle svg,
.ud-sidebar.is-collapsed .ud-sidebar-toggle svg {
    width: 13px !important;
    height: 13px !important;
    stroke: #C9A227 !important;
}

/* Cache le bouton close mobile en mode collapsed */
.ud-v2-layout .ud-sidebar.is-collapsed .ud-sidebar-close,
.ud-sidebar.is-collapsed .ud-sidebar-close {
    display: none !important;
}

/* ═══ NAV collapsed ═══ */
.ud-v2-layout .ud-sidebar.is-collapsed .ud-nav,
.ud-sidebar.is-collapsed .ud-nav {
    padding: 8px 6px !important;
    gap: 4px !important;
}

/* Cache les labels de groupe */
.ud-v2-layout .ud-sidebar.is-collapsed .ud-nav-group-title,
.ud-sidebar.is-collapsed .ud-nav-group-title {
    display: none !important;
}

/* Groupe collapsed */
.ud-v2-layout .ud-sidebar.is-collapsed .ud-nav-group,
.ud-sidebar.is-collapsed .ud-nav-group {
    margin-bottom: 4px !important;
    padding-bottom: 4px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
}
.ud-v2-layout .ud-sidebar.is-collapsed .ud-nav-group:last-child,
.ud-sidebar.is-collapsed .ud-nav-group:last-child {
    border-bottom: none !important;
}

/* Item collapsed : centré */
.ud-v2-layout .ud-sidebar.is-collapsed .ud-nav-item,
.ud-sidebar.is-collapsed .ud-nav-item {
    justify-content: center !important;
    padding: 10px 0 !important;
    border-radius: 10px !important;
    min-height: 44px !important;
    position: relative !important;
    gap: 0 !important;
}

.ud-v2-layout .ud-sidebar.is-collapsed .ud-nav-item .ud-nav-label,
.ud-sidebar.is-collapsed .ud-nav-item .ud-nav-label {
    display: none !important;
}

.ud-v2-layout .ud-sidebar.is-collapsed .ud-nav-item .ud-nav-icon,
.ud-sidebar.is-collapsed .ud-nav-item .ud-nav-icon {
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Badge collapsed : petit point rouge en haut à droite */
.ud-v2-layout .ud-sidebar.is-collapsed .ud-nav-item .ud-nav-count,
.ud-sidebar.is-collapsed .ud-nav-item .ud-nav-count {
    position: absolute !important;
    top: 6px !important;
    right: 8px !important;
    min-width: 16px !important;
    height: 16px !important;
    padding: 0 4px !important;
    font-size: 9px !important;
    line-height: 1 !important;
    margin: 0 !important;
    border: 2px solid #0A0E17 !important;
}

/* ═══ FOOT collapsed ═══ */
.ud-v2-layout .ud-sidebar.is-collapsed .ud-sidebar-foot,
.ud-sidebar.is-collapsed .ud-sidebar-foot {
    padding: 10px 8px !important;
    gap: 8px !important;
}

.ud-v2-layout .ud-sidebar.is-collapsed .ud-user-card,
.ud-sidebar.is-collapsed .ud-user-card {
    justify-content: center !important;
    padding: 6px !important;
    gap: 0 !important;
}

.ud-v2-layout .ud-sidebar.is-collapsed .ud-user-info,
.ud-sidebar.is-collapsed .ud-user-info {
    display: none !important;
}

.ud-v2-layout .ud-sidebar.is-collapsed .ud-avatar,
.ud-sidebar.is-collapsed .ud-avatar {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    margin: 0 auto !important;
}

/* Bouton logout collapsed : rond rouge discret */
.ud-v2-layout .ud-sidebar.is-collapsed .ud-logout-btn,
.ud-sidebar.is-collapsed .ud-logout-btn {
    justify-content: center !important;
    padding: 10px 0 !important;
    width: 44px !important;
    margin: 0 auto !important;
    border-radius: 50% !important;
    min-height: 44px !important;
}

.ud-v2-layout .ud-sidebar.is-collapsed .ud-logout-btn .ud-logout-text,
.ud-sidebar.is-collapsed .ud-logout-btn .ud-logout-text {
    display: none !important;
}

/* ═══ TOOLTIPS au survol (mode collapsed) ═══ */
.ud-v2-layout .ud-sidebar.is-collapsed .ud-nav-item::after,
.ud-sidebar.is-collapsed .ud-nav-item::after {
    content: attr(data-tooltip) !important;
    position: absolute !important;
    left: calc(100% + 12px) !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    background: #0A0E17 !important;
    color: #fff !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    padding: 6px 12px !important;
    border-radius: 8px !important;
    white-space: nowrap !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity 0.15s ease !important;
    z-index: 9999 !important;
    border: 1px solid rgba(201, 162, 39, 0.3) !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.3) !important;
}
.ud-v2-layout .ud-sidebar.is-collapsed .ud-nav-item:hover::after,
.ud-sidebar.is-collapsed .ud-nav-item:hover::after {
    opacity: 1 !important;
}

/* ═══════════════════════════════════════════════════════════
   🎯 SIDEBAR COLLAPSED — VERSION NUCLÉAIRE (bat tout)
   ═══════════════════════════════════════════════════════════ */

body .ud-v2-layout aside.ud-sidebar.is-collapsed,
body .ud-sidebar.is-collapsed,
body aside.ud-sidebar[class*="collapsed"] {
    width: 72px !important;
    min-width: 72px !important;
    max-width: 72px !important;
    flex-basis: 72px !important;
}

/* ─── HEAD ─── */
body .ud-sidebar.is-collapsed .ud-sidebar-head {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 12px 0 10px !important;
    height: auto !important;
    min-height: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,0.06) !important;
    position: relative !important;
}

/* Brand = cercle doré centré */
body .ud-sidebar.is-collapsed .ud-brand {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    height: 44px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background: rgba(201, 162, 39, 0.08) !important;
    border-radius: 50% !important;
    border: 1px solid rgba(201, 162, 39, 0.2) !important;
    flex: none !important;
}

body .ud-sidebar.is-collapsed .ud-brand-logo {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

body .ud-sidebar.is-collapsed .ud-brand-logo img {
    width: 28px !important;
    height: 28px !important;
    max-width: 28px !important;
    max-height: 28px !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 auto !important;
}

/* Cache tout texte du brand */
body .ud-sidebar.is-collapsed .ud-brand-name,
body .ud-sidebar.is-collapsed .ud-brand-text,
body .ud-sidebar.is-collapsed .ud-brand-tagline {
    display: none !important;
}

/* Toggle = petit rond SOUS le logo */
body .ud-sidebar.is-collapsed .ud-sidebar-toggle {
    position: static !important;
    width: 26px !important;
    height: 26px !important;
    min-width: 26px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    border-radius: 50% !important;
    background: rgba(201, 162, 39, 0.15) !important;
    border: 1px solid rgba(201, 162, 39, 0.3) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    top: auto !important;
    right: auto !important;
    transform: none !important;
}
body .ud-sidebar.is-collapsed .ud-sidebar-toggle svg {
    width: 12px !important;
    height: 12px !important;
    stroke: #C9A227 !important;
    transform: rotate(180deg) !important;
    transition: transform 0.2s ease !important;
}
body .ud-sidebar.is-collapsed .ud-sidebar-toggle:hover {
    background: rgba(201, 162, 39, 0.3) !important;
    border-color: #C9A227 !important;
}

/* Cache bouton close mobile */
body .ud-sidebar.is-collapsed .ud-sidebar-close {
    display: none !important;
}

/* ─── NAV ─── */
body .ud-sidebar.is-collapsed .ud-nav {
    padding: 10px 8px !important;
    margin: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
}

body .ud-sidebar.is-collapsed .ud-nav-group {
    margin: 0 0 6px 0 !important;
    padding: 0 0 6px 0 !important;
    border-bottom: 1px solid rgba(255,255,255,0.05) !important;
}
body .ud-sidebar.is-collapsed .ud-nav-group:last-child {
    border-bottom: none !important;
}

body .ud-sidebar.is-collapsed .ud-nav-group-title {
    display: none !important;
}

/* Item = carré/rectangle centré */
body .ud-sidebar.is-collapsed .ud-nav-item {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 44px !important;
    height: 44px !important;
    padding: 0 !important;
    margin: 0 0 2px 0 !important;
    gap: 0 !important;
    border-radius: 10px !important;
    position: relative !important;
    overflow: visible !important;
}

body .ud-sidebar.is-collapsed .ud-nav-item .ud-nav-label {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    overflow: hidden !important;
}

body .ud-sidebar.is-collapsed .ud-nav-item .ud-nav-icon {
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 24px !important;
    height: 24px !important;
}

body .ud-sidebar.is-collapsed .ud-nav-item .ud-nav-icon svg {
    width: 18px !important;
    height: 18px !important;
    stroke-width: 2 !important;
}

/* Badge compact en haut à droite */
body .ud-sidebar.is-collapsed .ud-nav-item .ud-nav-count {
    position: absolute !important;
    top: 4px !important;
    right: 4px !important;
    min-width: 16px !important;
    height: 16px !important;
    padding: 0 4px !important;
    font-size: 9px !important;
    line-height: 16px !important;
    border-radius: 8px !important;
    background: #C9A227 !important;
    color: #0A0E17 !important;
    border: 2px solid #0A0E17 !important;
    font-weight: 900 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Tooltip au survol */
body .ud-sidebar.is-collapsed .ud-nav-item::after {
    content: attr(data-tooltip) !important;
    position: fixed !important;
    left: 82px !important;
    background: #0A0E17 !important;
    color: #fff !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    padding: 6px 12px !important;
    border-radius: 6px !important;
    white-space: nowrap !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity 0.15s ease !important;
    z-index: 99999 !important;
    border: 1px solid rgba(201, 162, 39, 0.3) !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.4) !important;
    transform: translateY(-50%) !important;
    top: var(--tooltip-y, 50%) !important;
}
body .ud-sidebar.is-collapsed .ud-nav-item:hover::after {
    opacity: 1 !important;
}

/* ─── FOOT ─── */
body .ud-sidebar.is-collapsed .ud-sidebar-foot {
    padding: 10px 8px 14px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 8px !important;
    border-top: 1px solid rgba(255,255,255,0.06) !important;
}

body .ud-sidebar.is-collapsed .ud-user-card {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 44px !important;
    height: 44px !important;
    background: transparent !important;
    border: none !important;
    gap: 0 !important;
}

body .ud-sidebar.is-collapsed .ud-user-info {
    display: none !important;
}

body .ud-sidebar.is-collapsed .ud-avatar {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    margin: 0 !important;
    font-size: 12px !important;
}

body .ud-sidebar.is-collapsed .ud-logout-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 40px !important;
    height: 40px !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 50% !important;
    background: rgba(239, 68, 68, 0.08) !important;
    border: 1px solid rgba(239, 68, 68, 0.25) !important;
    color: #EF4444 !important;
    gap: 0 !important;
    min-width: 40px !important;
}

body .ud-sidebar.is-collapsed .ud-logout-btn .ud-logout-text {
    display: none !important;
}

body .ud-sidebar.is-collapsed .ud-logout-btn svg {
    width: 16px !important;
    height: 16px !important;
}

body .ud-sidebar.is-collapsed .ud-logout-btn:hover {
    background: rgba(239, 68, 68, 0.2) !important;
    border-color: #EF4444 !important;
}

/* ═══════════════════════════════════════════════════════════
   🎯 FIX DÉFINITIF — Sidebar cassée (labels clippés + overlap)
   Ce bloc écrase TOUT ce qui a pu être ajouté par erreur :
   - position: fixed sur la sidebar (desktop)
   - padding/margin/text-indent négatifs
   - overflow cachant les labels
   ═══════════════════════════════════════════════════════════ */

/* ─── 1. LAYOUT : grid strict, pas de fixed, pas de flex cassé ─── */
@media (min-width: 1025px) {
    html body.ud-v2-shell .ud-v2-layout,
    html body.ud-v2-shell #ud-layout {
        display: grid !important;
        grid-template-columns: 210px minmax(0, 1fr) !important;
        width: 100% !important;
        max-width: 100vw !important;
        min-height: 100vh !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
        overflow: visible !important;
    }

    html body.ud-v2-shell .ud-v2-layout.ud-collapsed,
    html body.ud-v2-shell #ud-layout.ud-collapsed {
        grid-template-columns: 64px minmax(0, 1fr) !important;
    }
}

/* ─── 2. SIDEBAR : NE DOIT JAMAIS être fixed sur desktop ─── */
@media (min-width: 1025px) {
    html body.ud-v2-shell .ud-v2-layout .ud-sidebar {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;

        grid-column: 1 / 2 !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        height: 100vh !important;
        max-height: 100vh !important;

        margin: 0 !important;
        padding: 0 !important;
        transform: none !important;

        overflow-y: auto !important;
        overflow-x: hidden !important;

        z-index: 100 !important;
        box-sizing: border-box !important;
    }

    /* Neutralise tout transform/translateX parasite */
    html body.ud-v2-shell .ud-v2-layout .ud-sidebar.open {
        transform: none !important;
    }
}

/* ─── 3. CONTENT : prend l'espace restant, AUCUN offset ─── */
@media (min-width: 1025px) {
    html body.ud-v2-shell .ud-v2-layout .ud-content {
        grid-column: 2 / 3 !important;
        position: relative !important;
        left: auto !important;
        right: auto !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        transform: none !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        height: 100vh !important;
    }
}

/* ─── 4. SIDEBAR HEAD : espace interne propre ─── */
html body.ud-v2-shell .ud-v2-layout .ud-sidebar-head,
html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-sidebar-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    padding: 16px 14px !important;
    margin: 0 !important;
    text-indent: 0 !important;
    min-height: auto !important;
    box-sizing: border-box !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar-head .ud-brand,
html body.ud-v2-shell .ud-v2-layout .ud-sidebar-head .ud-brand * {
    margin: 0 !important;
    padding: 0 !important;
    text-indent: 0 !important;
    transform: none !important;
}

/* ─── 5. NAV : tue tout indent/padding négatif ─── */
html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-nav {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    padding: 12px 10px !important;
    margin: 0 !important;
    text-indent: 0 !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-nav-group {
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
    margin: 0 !important;
    padding: 0 !important;
    text-indent: 0 !important;
}

/* ─── 6. NAV GROUP TITLE : pas de clipping ─── */
html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-nav-group-title {
    display: block !important;
    padding: 4px 10px 4px 12px !important;
    margin: 0 !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    color: #6B6B6B !important;
    text-indent: 0 !important;
    white-space: nowrap !important;
    overflow: visible !important;
    line-height: 1.2 !important;
    direction: ltr !important;
    text-align: left !important;
}

/* ─── 7. NAV ITEM : FIX LABEL CLIPPÉ ─── */
html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-nav-item {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 10px 12px !important;
    margin: 0 !important;
    width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;

    text-indent: 0 !important;
    text-align: left !important;
    direction: ltr !important;

    position: relative !important;
    overflow: visible !important;
    transform: none !important;

    border-radius: 9px !important;
    text-decoration: none !important;
    color: #B8B8B8 !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    cursor: pointer !important;
    transition: background 0.15s, color 0.15s !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-nav-item:hover {
    background: rgba(255,255,255,0.05) !important;
    color: #fff !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-nav-item.active {
    background: rgba(201, 162, 39, 0.14) !important;
    color: #C9A227 !important;
    font-weight: 600 !important;
}

/* ─── 8. ICÔNE : largeur fixe pour ne pas pousser le label ─── */
html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-nav-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 20px !important;
    min-width: 20px !important;
    max-width: 20px !important;
    height: 20px !important;
    flex: 0 0 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    text-indent: 0 !important;
    color: inherit !important;
    overflow: visible !important;
    transform: none !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-nav-icon svg {
    display: block !important;
    width: 18px !important;
    height: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
    stroke: currentColor !important;
    fill: none !important;
    transform: none !important;
}

/* ─── 9. LABEL : LE FIX PRINCIPAL ─── */
html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-nav-item .ud-nav-label {
    display: block !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;

    /* ⭐ TUE TOUT CE QUI CLIPPE LE LABEL À GAUCHE */
    padding: 0 !important;
    padding-left: 0 !important;
    margin: 0 !important;
    margin-left: 0 !important;
    text-indent: 0 !important;
    text-align: left !important;
    direction: ltr !important;

    font-size: 13.5px !important;
    font-weight: inherit !important;
    line-height: 1.3 !important;
    color: inherit !important;

    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;

    position: static !important;
    transform: none !important;
    left: auto !important;
    right: auto !important;
}

/* ─── 10. COMPTEUR ─── */
html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-nav-count {
    flex: 0 0 auto !important;
    margin-left: auto !important;
    margin-right: 0 !important;
    padding: 2px 7px !important;
    min-width: 22px !important;
    height: 18px !important;
    background: #C9A227 !important;
    color: #0A0E17 !important;
    font-size: 10.5px !important;
    font-weight: 800 !important;
    border-radius: 100px !important;
    text-align: center !important;
    line-height: 14px !important;
    text-indent: 0 !important;
}

/* ─── 11. FOOT ─── */
html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-sidebar-foot {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    padding: 12px 10px !important;
    margin: 0 !important;
    border-top: 1px solid rgba(255,255,255,0.06) !important;
    text-indent: 0 !important;
    box-sizing: border-box !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-user-card {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 8px 10px !important;
    margin: 0 !important;
    border-radius: 9px !important;
    text-indent: 0 !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-user-info {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    text-indent: 0 !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-user-name,
html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-user-role {
    margin: 0 !important;
    padding: 0 !important;
    text-indent: 0 !important;
    text-align: left !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* ─── 12. LOGOUT ─── */
html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-logout-btn {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 10px 12px !important;
    margin: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
    text-indent: 0 !important;
    text-align: left !important;
    text-decoration: none !important;
    border-radius: 9px !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-logout-btn .ud-logout-text {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    text-indent: 0 !important;
    text-align: left !important;
    white-space: nowrap !important;
}

/* ─── 13. MODE COLLAPSED — labels masqués proprement ─── */
@media (min-width: 1025px) {
    html body.ud-v2-shell .ud-v2-layout.ud-collapsed .ud-nav-item {
        justify-content: center !important;
        padding: 12px 8px !important;
        gap: 0 !important;
    }

    html body.ud-v2-shell .ud-v2-layout.ud-collapsed .ud-nav-item .ud-nav-label {
        display: none !important;
        flex: 0 0 0 !important;
        width: 0 !important;
        overflow: hidden !important;
    }

    html body.ud-v2-shell .ud-v2-layout.ud-collapsed .ud-nav-group-title {
        display: none !important;
    }

    html body.ud-v2-shell .ud-v2-layout.ud-collapsed .ud-nav-count {
        position: absolute !important;
        top: 4px !important;
        right: 4px !important;
        min-width: 16px !important;
        height: 16px !important;
        padding: 0 4px !important;
        font-size: 9px !important;
        line-height: 12px !important;
        border: 2px solid #0D0D0D !important;
    }

    html body.ud-v2-shell .ud-v2-layout.ud-collapsed .ud-user-info,
    html body.ud-v2-shell .ud-v2-layout.ud-collapsed .ud-logout-text {
        display: none !important;
    }

    html body.ud-v2-shell .ud-v2-layout.ud-collapsed .ud-brand-name {
        display: none !important;
    }
}

/* ─── 14. NEUTRALISE TOUTE RÈGLE QUI POURRAIT CASSER ─── */
html body.ud-v2-shell .ud-v2-layout .ud-sidebar [style*="margin-left"],
html body.ud-v2-shell .ud-v2-layout .ud-sidebar [style*="transform"],
html body.ud-v2-shell .ud-v2-layout .ud-sidebar [style*="left:"] {
    /* On ne peut pas forcer si inline, mais au moins on log en dev */
}

/* ─── 15. CONTENU : ne déborde JAMAIS sur la sidebar ─── */
@media (min-width: 1025px) {
    html body.ud-v2-shell .ud-v2-layout .ud-content > * {
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    html body.ud-v2-shell .ud-v2-layout .ud-body {
        padding: 20px 24px 32px !important;
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* ─── 16. KPI CARDS : ne dépassent JAMAIS à gauche ─── */
@media (min-width: 1025px) {
    html body.ud-v2-shell .ud-v2-layout .ud-home-kpis,
    html body.ud-v2-shell .ud-v2-layout .ud-home-hero-cta,
    html body.ud-v2-shell .ud-v2-layout .ud-home-grid-2,
    html body.ud-v2-shell .ud-v2-layout .ud-home-grid-3 {
        margin-left: 0 !important;
        padding-left: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* ═══════════════════════════════════════════════════════════
   🎯 FIX — Alignement parfait sidebar/contenu (10px overflow)
   ═══════════════════════════════════════════════════════════ */

html body.ud-v2-shell .ud-v2-layout,
html body.ud-v2-shell #ud-layout {
    grid-template-columns: 220px minmax(0, 1fr) !important;
}
html body.ud-v2-shell .ud-v2-layout.ud-collapsed,
html body.ud-v2-shell #ud-layout.ud-collapsed {
    grid-template-columns: 72px minmax(0, 1fr) !important;
}

/* Sidebar : width forcée à la colonne, box-sizing strict */
html body.ud-v2-shell .ud-v2-layout > .ud-sidebar,
html body.ud-v2-shell .ud-v2-layout aside.ud-sidebar {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Content : aligne sur la nouvelle colonne (220px) */
html body.ud-v2-shell .ud-v2-layout > .ud-content {
    box-sizing: border-box !important;
}

/* ═══════════════════════════════════════════════════════════
   🎯 SIDEBAR COMPACTE — Tout visible sans scroll
   Écrase les réglages précédents de densité sur la sidebar.
   Objectif : ~15 items + user + logout tiennent dans 700px.
   ═══════════════════════════════════════════════════════════ */

/* ─── Largeur un peu réduite ─── */
html body.ud-v2-shell .ud-v2-layout,
html body.ud-v2-shell #ud-layout {
    grid-template-columns: 224px minmax(0, 1fr) !important;
}
html body.ud-v2-shell .ud-v2-layout.ud-collapsed,
html body.ud-v2-shell #ud-layout.ud-collapsed {
    grid-template-columns: 68px minmax(0, 1fr) !important;
}

/* ═══ HEAD — Réduit ═══ */
html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-sidebar-head {
    padding: 12px 14px !important;
    min-height: 58px !important;
    gap: 10px !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-brand-logo {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-sidebar-toggle {
    width: 26px !important;
    height: 26px !important;
    min-width: 26px !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-sidebar-toggle svg {
    width: 12px !important;
    height: 12px !important;
}

/* ═══ NAV — Padding + gaps réduits ═══ */
html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-nav {
    padding: 10px 10px !important;
    gap: 10px !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-nav-group {
    gap: 1px !important;
}

/* ═══ TITRES DE GROUPE — Plus discrets ═══ */
html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-nav-group-title {
    font-size: 9px !important;
    font-weight: 700 !important;
    letter-spacing: 0.1em !important;
    padding: 4px 10px 5px !important;
    color: rgba(255,255,255,0.32) !important;
    line-height: 1.2 !important;
}

/* ═══ NAV ITEM — Le point clé : hauteur réduite ═══ */
html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-nav-item {
    padding: 6px 10px !important;
    gap: 10px !important;
    font-size: 12.5px !important;
    font-weight: 500 !important;
    border-radius: 7px !important;
    min-height: 30px !important;
    height: auto !important;
    line-height: 1.25 !important;
    margin: 0 !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-nav-item.active {
    font-weight: 600 !important;
}

/* ═══ ICÔNES — Compensées ═══ */
html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-nav-icon {
    width: 18px !important;
    min-width: 18px !important;
    max-width: 18px !important;
    height: 18px !important;
    flex: 0 0 18px !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-nav-icon svg {
    width: 16px !important;
    height: 16px !important;
    stroke-width: 2 !important;
}

/* ═══ LABEL ═══ */
html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-nav-item .ud-nav-label {
    font-size: 12.5px !important;
    line-height: 1.3 !important;
}

/* ═══ COMPTEUR — Compact ═══ */
html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-nav-count {
    min-width: 20px !important;
    height: 16px !important;
    padding: 0 6px !important;
    font-size: 9.5px !important;
    font-weight: 800 !important;
    line-height: 16px !important;
    border-radius: 100px !important;
}

/* ═══ FOOT — Réduit ═══ */
html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-sidebar-foot {
    padding: 8px 10px 10px !important;
    gap: 6px !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-user-card {
    padding: 6px 8px !important;
    gap: 9px !important;
    border-radius: 8px !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-avatar {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-avatar-initials {
    font-size: 11px !important;
    font-weight: 800 !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-user-name {
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-user-role {
    font-size: 9px !important;
    font-weight: 600 !important;
    letter-spacing: 0.06em !important;
    margin-top: 2px !important;
}

/* ═══ LOGOUT — Compact ═══ */
html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-logout-btn {
    padding: 7px 10px !important;
    gap: 9px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    border-radius: 8px !important;
    min-height: 32px !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-logout-btn svg {
    width: 15px !important;
    height: 15px !important;
}

/* ═══ GARANTIE ANTI-SCROLL ═══ */
html body.ud-v2-shell .ud-v2-layout .ud-sidebar {
    overflow-y: auto !important;
    overflow-x: hidden !important;
    scrollbar-width: thin !important;
}

html body.ud-v2-shell .ud-v2-layout .ud-sidebar::-webkit-scrollbar {
    width: 4px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-sidebar::-webkit-scrollbar-thumb {
    background: rgba(255,255,255,0.1) !important;
    border-radius: 4px !important;
}

/* ═══ MODE COLLAPSED — Cohérent ═══ */
html body.ud-v2-shell .ud-v2-layout.ud-collapsed .ud-sidebar .ud-nav-item {
    padding: 9px 0 !important;
    min-height: 36px !important;
    gap: 0 !important;
}

html body.ud-v2-shell .ud-v2-layout.ud-collapsed .ud-sidebar .ud-nav-icon {
    width: 20px !important;
    min-width: 20px !important;
    height: 20px !important;
}

html body.ud-v2-shell .ud-v2-layout.ud-collapsed .ud-sidebar .ud-nav-icon svg {
    width: 18px !important;
    height: 18px !important;
}

html body.ud-v2-shell .ud-v2-layout.ud-collapsed .ud-sidebar .ud-sidebar-foot {
    padding: 10px 8px !important;
    gap: 8px !important;
}

html body.ud-v2-shell .ud-v2-layout.ud-collapsed .ud-sidebar .ud-avatar {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
}

/* ═══════════════════════════════════════════════════════════
   🎯 CONTENU COMPACT — Vue densifiée (zoom out global)
   Réduit paddings, gaps, fonts et hauteurs de TOUTES les
   sections pour voir plus de contenu à l'écran.
   ═══════════════════════════════════════════════════════════ */

/* ═══ BODY GLOBAL ═══ */
html body.ud-v2-shell .ud-v2-layout .ud-body {
    padding: 14px 20px 20px !important;
}

/* ═══ TOPBAR — Compacte ═══ */
html body.ud-v2-shell .ud-v2-layout .ud-topbar {
    padding: 8px 20px !important;
    min-height: 48px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-topbar-title h1 {
    font-size: 15px !important;
    letter-spacing: -0.2px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-topbar-title p {
    font-size: 11px !important;
    margin-top: 1px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-topbar-icon-btn {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    border-radius: 9px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-topbar-icon-btn svg {
    width: 16px !important;
    height: 16px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-topbar-icon-badge {
    min-width: 16px !important;
    height: 16px !important;
    font-size: 9px !important;
    padding: 0 4px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-topbar-brand-logo {
    width: 34px !important;
    height: 34px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-topbar-brand-name {
    font-size: 8.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-topbar-brand-tagline {
    font-size: 8.5px !important;
}

/* ═══════════════════════════════════════════════════════════
   🏠 HOME
   ═══════════════════════════════════════════════════════════ */

/* KPI cards */
html body.ud-v2-shell .ud-v2-layout .ud-home-kpis {
    gap: 10px !important;
    margin-bottom: 12px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-kpi {
    padding: 10px 12px !important;
    gap: 10px !important;
    border-radius: 10px !important;
    min-height: 0 !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-kpi-icon {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    border-radius: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-kpi-icon svg {
    width: 17px !important;
    height: 17px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-kpi-label {
    font-size: 11px !important;
    margin-bottom: 1px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-kpi-value {
    font-size: 18px !important;
    letter-spacing: -0.4px !important;
    margin-bottom: 1px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-kpi-sub {
    font-size: 10.5px !important;
}

/* Bandeau noir hero */
html body.ud-v2-shell .ud-v2-layout .ud-home-hero-cta {
    padding: 8px 14px !important;
    gap: 12px !important;
    border-radius: 10px !important;
    margin-bottom: 12px !important;
    min-height: 0 !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-hero-cta-icon {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    border-radius: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-hero-cta-icon svg {
    width: 16px !important;
    height: 16px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-hero-cta-text h3 {
    font-size: 13px !important;
    margin-bottom: 1px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-hero-cta-text p {
    font-size: 11px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-hero-cta-btn {
    padding: 7px 14px !important;
    font-size: 12px !important;
    border-radius: 8px !important;
    min-height: 0 !important;
}

/* Grid 2 colonnes */
html body.ud-v2-shell .ud-v2-layout .ud-home-grid-2,
html body.ud-v2-shell .ud-v2-layout .ud-home-grid-3 {
    gap: 12px !important;
    margin-bottom: 12px !important;
}

/* Cards */
html body.ud-v2-shell .ud-v2-layout .ud-home-card {
    padding: 12px 14px !important;
    border-radius: 10px !important;
    min-height: 0 !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-card-head {
    margin-bottom: 10px !important;
    padding-bottom: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-card-title {
    font-size: 13px !important;
    gap: 6px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-card-title .icon {
    width: 16px !important;
    height: 16px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-card-title .icon svg {
    width: 15px !important;
    height: 15px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-card-link {
    font-size: 11px !important;
}

/* Rows dans les cards */
html body.ud-v2-shell .ud-v2-layout .ud-home-card-row {
    padding: 8px 10px !important;
    border-radius: 7px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-card-row-ref {
    font-size: 10.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-card-row-date {
    font-size: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-card-row-text {
    font-size: 11.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-card-row-dossier-date {
    font-size: 10px !important;
}

/* Support banner */
html body.ud-v2-shell .ud-v2-layout .ud-home-support {
    padding: 10px 14px !important;
    gap: 12px !important;
    border-radius: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-support-icon {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    border-radius: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-support-text h4 {
    font-size: 12px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-support-text p {
    font-size: 10.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-home-support-btn {
    padding: 7px 14px !important;
    font-size: 12px !important;
    border-radius: 8px !important;
}

/* ═══════════════════════════════════════════════════════════
   📄 PAGE HEAD (Dossiers, Contrats, Messages…)
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-v2-page-head,
html body.ud-v2-shell .ud-v2-layout .udc-head,
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-head {
    margin-bottom: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-v2-page-title,
html body.ud-v2-shell .ud-v2-layout .udc-title,
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-title {
    font-size: 15px !important;
    margin-bottom: 1px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-v2-page-sub,
html body.ud-v2-shell .ud-v2-layout .udc-sub,
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-sub {
    font-size: 11px !important;
}

/* ═══════════════════════════════════════════════════════════
   📁 DOSSIERS — Tabs, filtres, table
   ═══════════════════════════════════════════════════════════ */

/* Tabs */
html body.ud-v2-shell .ud-v2-layout .udc-tabs,
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-tabs {
    gap: 4px !important;
    padding-bottom: 4px !important;
    margin-bottom: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-tab,
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-tab {
    padding: 5px 10px !important;
    font-size: 11.5px !important;
    min-height: 30px !important;
    border-radius: 7px !important;
    gap: 4px !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-tab-count,
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-tab-count {
    min-width: 16px !important;
    height: 14px !important;
    font-size: 9.5px !important;
    padding: 0 5px !important;
}

/* Panel filtres */
html body.ud-v2-shell .ud-v2-layout .udc-panel {
    border-radius: 10px !important;
    margin-bottom: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-panel-head {
    padding: 10px 14px !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-panel-head-icon {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-panel-head-icon svg {
    width: 14px !important;
    height: 14px !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-panel-head-text h3 {
    font-size: 12.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-panel-head-text p {
    font-size: 10.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-panel-reset {
    padding: 5px 10px !important;
    font-size: 11px !important;
    min-height: 28px !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-panel-search {
    padding: 10px 14px 0 !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-panel-search label {
    font-size: 10px !important;
    margin-bottom: 3px !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-panel-search input {
    height: 34px !important;
    font-size: 12px !important;
    padding: 6px 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-panel-grid {
    padding: 10px 14px 12px !important;
    gap: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-panel-field label {
    font-size: 10px !important;
    margin-bottom: 3px !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-panel-field select,
html body.ud-v2-shell .ud-v2-layout .udc-panel-field input {
    height: 34px !important;
    font-size: 12px !important;
    padding: 6px 10px !important;
}

/* Table */
html body.ud-v2-shell .ud-v2-layout .udc-table tbody td,
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table tbody td {
    padding: 7px 10px !important;
    font-size: 12px !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-table thead th,
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table thead th {
    padding: 7px 10px !important;
    font-size: 9.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-ref,
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-ref {
    font-size: 10.5px !important;
    padding: 2px 6px !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-deb-name,
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-debiteur-name {
    font-size: 12px !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-deb-line,
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-debiteur-email {
    font-size: 10.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-amount {
    font-size: 12.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-badge,
html body.ud-v2-shell .ud-v2-layout .ud-badge {
    font-size: 9.5px !important;
    padding: 2px 7px !important;
    line-height: 1.3 !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-act,
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-action {
    width: 26px !important;
    height: 26px !important;
    min-width: 26px !important;
    border-radius: 6px !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-act svg,
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-action svg {
    width: 13px !important;
    height: 13px !important;
}
html body.ud-v2-shell .ud-v2-layout .udc-results,
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-results {
    font-size: 11px !important;
    margin-top: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-gest-avatar {
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    font-size: 8.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-dossiers-gest-name {
    font-size: 11px !important;
}

/* ═══════════════════════════════════════════════════════════
   📜 CONTRATS
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-contrats-kpis {
    gap: 8px !important;
    margin-bottom: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-kpi {
    padding: 8px 10px !important;
    gap: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-kpi-icon {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-kpi-icon svg {
    width: 14px !important;
    height: 14px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-kpi-label {
    font-size: 9px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-kpi-value {
    font-size: 13px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-card {
    padding: 10px 12px !important;
    border-radius: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-card-head {
    gap: 10px !important;
    grid-template-columns: 28px 1fr 100px auto !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-card-icon {
    width: 28px !important;
    height: 28px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-card-ref {
    font-size: 11px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-card-meta {
    font-size: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-card-amount {
    font-size: 12px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-contrats-status {
    font-size: 9.5px !important;
    padding: 2px 7px !important;
}

/* ═══════════════════════════════════════════════════════════
   💬 MESSAGES
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-messages-list {
    gap: 3px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card {
    padding: 8px 12px !important;
    gap: 10px !important;
    border-radius: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card-avatar {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    font-size: 11px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card-ref {
    font-size: 11px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card-debiteur {
    font-size: 10.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card-excerpt {
    font-size: 11.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card-date {
    font-size: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card-badge {
    min-width: 18px !important;
    height: 16px !important;
    font-size: 9.5px !important;
    padding: 0 5px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-message-card-status {
    font-size: 9px !important;
    padding: 2px 6px !important;
}

/* ═══════════════════════════════════════════════════════════
   🔔 NOTIFICATIONS
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-notifs-list {
    gap: 3px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-notif-item {
    padding: 8px 12px !important;
    gap: 10px !important;
    border-radius: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-notif-icon {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-notif-icon svg {
    width: 13px !important;
    height: 13px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-notif-msg {
    font-size: 12px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-notif-date {
    font-size: 10px !important;
}

/* ═══════════════════════════════════════════════════════════
   📊 STATS
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .udst-kpis,
html body.ud-v2-shell .ud-v2-layout .ud-stats-kpis {
    gap: 10px !important;
    margin-bottom: 12px !important;
}
html body.ud-v2-shell .ud-v2-layout .udst-kpi {
    padding: 10px 12px !important;
    gap: 10px !important;
    border-radius: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .udst-kpi-icon {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    font-size: 16px !important;
}
html body.ud-v2-shell .ud-v2-layout .udst-kpi-label {
    font-size: 9.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .udst-kpi-value {
    font-size: 17px !important;
}
html body.ud-v2-shell .ud-v2-layout .udst-kpi-sub {
    font-size: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .udst-ratio {
    padding: 14px 18px !important;
    margin-bottom: 12px !important;
}
html body.ud-v2-shell .ud-v2-layout .udst-ratio-title {
    font-size: 12.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .udst-ratio-pct {
    font-size: 24px !important;
}
html body.ud-v2-shell .ud-v2-layout .udst-card {
    padding: 14px 18px !important;
}
html body.ud-v2-shell .ud-v2-layout .udst-card-title {
    font-size: 12.5px !important;
    margin-bottom: 12px !important;
}
html body.ud-v2-shell .ud-v2-layout .udst-status-row {
    gap: 12px !important;
}
html body.ud-v2-shell .ud-v2-layout .udst-status-label {
    font-size: 11.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .udst-status-count {
    font-size: 11px !important;
}

/* ═══════════════════════════════════════════════════════════
   👤 PROFIL
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .udp-head,
html body.ud-v2-shell .ud-v2-layout .udprof-head {
    margin-bottom: 12px !important;
}
html body.ud-v2-shell .ud-v2-layout .udp-title,
html body.ud-v2-shell .ud-v2-layout .udprof-head h1 {
    font-size: 18px !important;
}
html body.ud-v2-shell .ud-v2-layout .udp-sub,
html body.ud-v2-shell .ud-v2-layout .udprof-head p {
    font-size: 12px !important;
}

html body.ud-v2-shell .ud-v2-layout .udp-grid,
html body.ud-v2-shell .ud-v2-layout .udprof-split {
    gap: 12px !important;
}

html body.ud-v2-shell .ud-v2-layout .udp-avatar-card,
html body.ud-v2-shell .ud-v2-layout .udprof-info-top {
    padding: 14px !important;
}
html body.ud-v2-shell .ud-v2-layout .udp-avatar {
    width: 72px !important;
    height: 72px !important;
    margin-bottom: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .udp-avatar-init {
    font-size: 24px !important;
}
html body.ud-v2-shell .ud-v2-layout .udp-avatar-name {
    font-size: 13.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .udp-avatar-role {
    font-size: 10.5px !important;
    margin-bottom: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .udp-avatar-btn,
html body.ud-v2-shell .ud-v2-layout .udprof-photo-btn {
    padding: 7px 12px !important;
    font-size: 11.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .udp-avatar-hint {
    font-size: 10px !important;
    margin-top: 6px !important;
}

html body.ud-v2-shell .ud-v2-layout .udp-meta-card {
    padding: 10px 12px !important;
}
html body.ud-v2-shell .ud-v2-layout .udp-meta-row {
    padding: 6px 0 !important;
}
html body.ud-v2-shell .ud-v2-layout .udp-meta-label {
    font-size: 10.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .udp-meta-value {
    font-size: 11.5px !important;
}

html body.ud-v2-shell .ud-v2-layout .udp-main,
html body.ud-v2-shell .ud-v2-layout .udprof-edit-body {
    padding: 16px 18px !important;
}
html body.ud-v2-shell .ud-v2-layout .udp-section {
    margin-bottom: 16px !important;
}
html body.ud-v2-shell .ud-v2-layout .udp-section-title,
html body.ud-v2-shell .ud-v2-layout .udprof-edit-head h3 {
    font-size: 12.5px !important;
    margin-bottom: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .udp-fields-grid,
html body.ud-v2-shell .ud-v2-layout .udp-row {
    gap: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .udp-field label,
html body.ud-v2-shell .ud-v2-layout .udprof-label {
    font-size: 11px !important;
}
html body.ud-v2-shell .ud-v2-layout .udp-field input,
html body.ud-v2-shell .ud-v2-layout .udprof-input {
    padding: 8px 11px !important;
    font-size: 12.5px !important;
    height: 38px !important;
}
html body.ud-v2-shell .ud-v2-layout .udprof-edit-head {
    padding: 14px 18px !important;
}
html body.ud-v2-shell .ud-v2-layout .udprof-edit-actions {
    padding: 12px 18px !important;
}

/* ═══════════════════════════════════════════════════════════
   🔒 SÉCURITÉ
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .uds-head,
html body.ud-v2-shell .ud-v2-layout .udsec-head {
    margin-bottom: 12px !important;
}
html body.ud-v2-shell .ud-v2-layout .uds-title,
html body.ud-v2-shell .ud-v2-layout .udsec-head h1 {
    font-size: 18px !important;
}
html body.ud-v2-shell .ud-v2-layout .uds-sub,
html body.ud-v2-shell .ud-v2-layout .udsec-head p {
    font-size: 12px !important;
}
html body.ud-v2-shell .ud-v2-layout .uds-info-grid,
html body.ud-v2-shell .ud-v2-layout .udsec-info-grid {
    gap: 10px !important;
    margin-bottom: 12px !important;
}
html body.ud-v2-shell .ud-v2-layout .uds-info-card,
html body.ud-v2-shell .ud-v2-layout .udsec-info {
    padding: 10px 12px !important;
    gap: 10px !important;
    border-radius: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .uds-info-icon,
html body.ud-v2-shell .ud-v2-layout .udsec-info-icon {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
}
html body.ud-v2-shell .ud-v2-layout .uds-info-icon svg,
html body.ud-v2-shell .ud-v2-layout .udsec-info-icon svg {
    width: 16px !important;
    height: 16px !important;
}
html body.ud-v2-shell .ud-v2-layout .uds-info-label,
html body.ud-v2-shell .ud-v2-layout .udsec-info-label {
    font-size: 9.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .uds-info-value,
html body.ud-v2-shell .ud-v2-layout .udsec-info-value {
    font-size: 12.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .uds-form-card,
html body.ud-v2-shell .ud-v2-layout .udsec-form-card {
    padding: 16px 18px !important;
    border-radius: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .uds-form-head,
html body.ud-v2-shell .ud-v2-layout .udsec-form-head {
    padding-bottom: 12px !important;
    margin-bottom: 14px !important;
    gap: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .uds-form-head-icon,
html body.ud-v2-shell .ud-v2-layout .udsec-form-head-icon {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
}
html body.ud-v2-shell .ud-v2-layout .uds-form-title,
html body.ud-v2-shell .ud-v2-layout .udsec-card-title {
    font-size: 13.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .uds-form-sub,
html body.ud-v2-shell .ud-v2-layout .udsec-card-sub {
    font-size: 11px !important;
}
html body.ud-v2-shell .ud-v2-layout .uds-field label,
html body.ud-v2-shell .ud-v2-layout .udsec-label {
    font-size: 11px !important;
}
html body.ud-v2-shell .ud-v2-layout .uds-input-wrap input,
html body.ud-v2-shell .ud-v2-layout .udsec-input {
    padding: 8px 38px 8px 12px !important;
    font-size: 12.5px !important;
    height: 38px !important;
}
html body.ud-v2-shell .ud-v2-layout .uds-fields-grid,
html body.ud-v2-shell .ud-v2-layout .udsec-grid-2 {
    gap: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .uds-rules,
html body.ud-v2-shell .ud-v2-layout .udsec-rules {
    padding: 10px 12px !important;
    font-size: 11.5px !important;
}

/* ═══════════════════════════════════════════════════════════
   📝 NOUVELLE CRÉANCE (formulaire de dépôt)
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-wrap {
    padding: 16px 18px !important;
    border-radius: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-wrap .unidet-depot-header {
    margin-bottom: 14px !important;
    padding-bottom: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-wrap .unidet-depot-header h1 {
    font-size: 16px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-wrap .unidet-depot-header p {
    font-size: 11.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-wrap .unidet-depot-section {
    padding: 12px 14px !important;
    margin-bottom: 10px !important;
    border-radius: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-wrap .unidet-depot-section-head {
    padding-bottom: 10px !important;
    margin-bottom: 12px !important;
    gap: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-wrap .unidet-depot-section-num {
    width: 26px !important;
    height: 26px !important;
    min-width: 26px !important;
    font-size: 11px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-wrap .unidet-depot-section-title {
    font-size: 13px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-wrap .unidet-depot-section-sub {
    font-size: 11px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-wrap .unidet-depot-field label {
    font-size: 11.5px !important;
    margin-bottom: 3px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-wrap .unidet-depot-field input,
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-wrap .unidet-depot-field textarea,
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-wrap .unidet-depot-field select {
    padding: 8px 11px !important;
    font-size: 12.5px !important;
    min-height: 36px !important;
    border-radius: 7px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-wrap .unidet-section1-grid {
    gap: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-wrap .unidet-btn-transmettre,
html body.ud-v2-shell .ud-v2-layout .ud-nouveau-wrap .unidet-btn-cancel {
    padding: 9px 18px !important;
    font-size: 12.5px !important;
    border-radius: 8px !important;
}

/* ═══════════════════════════════════════════════════════════
   ⚙️ CONFIG / RÔLES / ASSIGNATIONS / REPORTING
   ═══════════════════════════════════════════════════════════ */

/* Config hub */
html body.ud-v2-shell .ud-v2-layout .ud-config-hub {
    padding: 24px 20px !important;
    max-width: 560px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-icon {
    width: 56px !important;
    height: 56px !important;
    margin-bottom: 14px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-title {
    font-size: 17px !important;
    margin-bottom: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-desc {
    font-size: 12px !important;
    margin-bottom: 18px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-feature {
    padding: 8px 10px !important;
    font-size: 15px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-feature strong {
    font-size: 11.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-feature small {
    font-size: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-config-hub-btn {
    padding: 10px 22px !important;
    font-size: 12.5px !important;
}

/* Rôles table */
html body.ud-v2-shell .ud-v2-layout .ud-roles-table thead th,
html body.ud-v2-shell .ud-v2-layout .ud-roles-table tbody td {
    padding: 7px 12px !important;
    font-size: 11.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-roles-cap-name {
    font-size: 11.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-roles-role-name {
    font-size: 11.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-roles-check {
    width: 20px !important;
    height: 20px !important;
    font-size: 11px !important;
}

/* Assignations */
html body.ud-v2-shell .ud-v2-layout .ud-assign-grid {
    gap: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-card {
    padding: 12px 14px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-avatar {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    font-size: 11.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-name {
    font-size: 12.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-count-num {
    font-size: 17px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-assign-row-item {
    padding: 4px 7px !important;
    font-size: 10.5px !important;
}

/* Reporting */
html body.ud-v2-shell .ud-v2-layout .ud-report-grid {
    gap: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-report-card {
    padding: 14px 16px !important;
    gap: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-report-icon {
    width: 36px !important;
    height: 36px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-report-title {
    font-size: 12.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-report-desc {
    font-size: 11px !important;
}

/* ═══════════════════════════════════════════════════════════
   📋 FAQ (client)
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-faq-section {
    margin-bottom: 8px !important;
    border-radius: 8px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-section-head {
    padding: 10px 14px !important;
    gap: 10px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-section-icon {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    font-size: 14px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-section-title {
    font-size: 12px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-section-desc {
    font-size: 10.5px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-question {
    padding: 9px 14px !important;
    font-size: 12px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-faq-answer-inner {
    padding: 0 14px 12px !important;
    font-size: 11.5px !important;
}

/* ═══════════════════════════════════════════════════════════
   🎯 BOUTONS GLOBAUX — Plus compacts
   ═══════════════════════════════════════════════════════════ */
html body.ud-v2-shell .ud-v2-layout .ud-btn-primary,
html body.ud-v2-shell .ud-v2-layout .ud-btn-secondary,
html body.ud-v2-shell .ud-v2-layout .ud-btn-refresh {
    padding: 6px 12px !important;
    font-size: 11.5px !important;
    min-height: 30px !important;
    border-radius: 7px !important;
    gap: 5px !important;
}
html body.ud-v2-shell .ud-v2-layout .ud-btn-primary svg,
html body.ud-v2-shell .ud-v2-layout .ud-btn-secondary svg,
html body.ud-v2-shell .ud-v2-layout .ud-btn-refresh svg {
    width: 12px !important;
    height: 12px !important;
}

/* ═══════════════════════════════════════════════════════════
   RESPONSIVE — Ajustements sur petits écrans
   ═══════════════════════════════════════════════════════════ */
@media (max-width: 1100px) {
    html body.ud-v2-shell .ud-v2-layout .ud-home-kpis {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    html body.ud-v2-shell .ud-v2-layout .ud-contrats-kpis,
    html body.ud-v2-shell .ud-v2-layout .udst-kpis {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    html body.ud-v2-shell .ud-v2-layout .ud-admin-kpis {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

@media (max-width: 640px) {
    html body.ud-v2-shell .ud-v2-layout .ud-body {
        padding: 12px 14px 18px !important;
    }
    html body.ud-v2-shell .ud-v2-layout .ud-home-kpis {
        grid-template-columns: 1fr !important;
    }
}

/* ═══════════════════════════════════════════════════════════
   🎯 RESPONSIVE — Sidebar mode overlay sur tablette/mobile
   La flèche de collapse (‹) doit être masquée < 1025px
   Le burger menu la remplace
   ═══════════════════════════════════════════════════════════ */

/* Tablette + Mobile (< 1025px) */
@media (max-width: 1024px) {

    /* 🎯 Cacher la flèche de collapse */
    .ud-sidebar-toggle,
    .ud-toggle-icon,
    #ud-sidebar-toggle,
    aside.ud-sidebar .ud-sidebar-toggle {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }

    /* 🎯 Afficher le bouton fermer (×) dans le head de la sidebar */
    .ud-sidebar-close,
    #ud-sidebar-close {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    /* 🎯 Sidebar en overlay (sortie du flux) */
    .ud-v2-layout .ud-sidebar,
    html body.ud-v2-shell .ud-v2-layout .ud-sidebar {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        bottom: 0 !important;

        width: 280px !important;
        max-width: 85vw !important;
        min-width: 0 !important;

        transform: translateX(-100%) !important;
        transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;

        z-index: 9999 !important;
        box-shadow: 4px 0 25px rgba(0, 0, 0, 0.3) !important;
    }

    /* Sidebar ouverte */
    .ud-v2-layout .ud-sidebar.open,
    html body.ud-v2-shell .ud-v2-layout .ud-sidebar.open {
        transform: translateX(0) !important;
    }

    /* Layout en block (plus de grid) */
    .ud-v2-layout,
    html body.ud-v2-shell .ud-v2-layout {
        display: block !important;
        grid-template-columns: none !important;
        width: 100% !important;
        height: 100dvh !important;
        overflow: hidden !important;
    }

    /* Content prend toute la largeur */
    .ud-v2-layout .ud-content,
    html body.ud-v2-shell .ud-v2-layout .ud-content {
        width: 100% !important;
        max-width: 100% !important;
        height: 100dvh !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Burger menu visible */
    .ud-menu-toggle,
    #ud-menu-toggle,
    html body.ud-v2-shell .ud-v2-layout .ud-menu-toggle {
        display: flex !important;
    }

    /* Overlay sombre derrière la sidebar ouverte */
    .ud-overlay {
        display: none;
    }
    .ud-overlay.active {
        display: block !important;
        position: fixed !important;
        inset: 0 !important;
        background: rgba(10, 14, 23, 0.55) !important;
        z-index: 9998 !important;
        animation: udOverlayFade 0.25s ease !important;
    }
    @keyframes udOverlayFade {
        from { opacity: 0; }
        to   { opacity: 1; }
    }
}

/* 🎯 Petits mobiles (< 560px) : sidebar un peu plus large */
@media (max-width: 560px) {
    .ud-v2-layout .ud-sidebar {
        width: 260px !important;
        max-width: 90vw !important;
    }
}

/* ═══════════════════════════════════════════════════════════
   🎯 MOBILE/TABLETTE — Override TOTAL du layout
   Force : sidebar hors flux + content 100% largeur
   Ce bloc DOIT être placé à la fin de shell.css
   ═══════════════════════════════════════════════════════════ */

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

    /* ─────────────────────────────────────────────────────
       1. LAYOUT : BLOCK au lieu de GRID
       ───────────────────────────────────────────────────── */
    html body.ud-v2-shell .ud-v2-layout,
    html body.ud-v2-shell #ud-layout,
    html body .ud-v2-layout,
    html body #ud-layout,
    .ud-v2-layout,
    #ud-layout {
        display: block !important;
        grid-template-columns: none !important;
        grid-template-areas: none !important;
        width: 100% !important;
        max-width: 100vw !important;
        min-width: 0 !important;
        height: auto !important;
        min-height: 100dvh !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        position: static !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* ─────────────────────────────────────────────────────
       2. SIDEBAR : HORS FLUX (position fixed + translateX)
       ───────────────────────────────────────────────────── */
    html body.ud-v2-shell .ud-v2-layout .ud-sidebar,
    html body .ud-v2-layout .ud-sidebar,
    .ud-v2-layout .ud-sidebar,
    aside.ud-sidebar {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        bottom: 0 !important;
        right: auto !important;

        width: 280px !important;
        min-width: 280px !important;
        max-width: 85vw !important;
        height: 100dvh !important;

        transform: translateX(-100%) !important;
        transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;

        z-index: 9999 !important;
        box-shadow: 4px 0 25px rgba(0, 0, 0, 0.3) !important;

        /* Réinitialise les offsets du grid */
        grid-column: auto !important;
        grid-row: auto !important;
        grid-area: auto !important;

        /* Reset display (mais garde flex column interne) */
        display: flex !important;
        flex-direction: column !important;
    }

    /* Sidebar ouverte */
    html body.ud-v2-shell .ud-v2-layout .ud-sidebar.open,
    html body .ud-v2-layout .ud-sidebar.open,
    .ud-v2-layout .ud-sidebar.open {
        transform: translateX(0) !important;
    }

    /* ─────────────────────────────────────────────────────
       3. CONTENT : 100% LARGEUR
       ───────────────────────────────────────────────────── */
    html body.ud-v2-shell .ud-v2-layout .ud-content,
    html body .ud-v2-layout .ud-content,
    .ud-v2-layout .ud-content {
        display: flex !important;
        flex-direction: column !important;

        position: static !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100vw !important;

        margin: 0 !important;
        padding: 0 !important;

        grid-column: auto !important;
        grid-row: auto !important;
        grid-area: auto !important;

        height: auto !important;
        min-height: 100dvh !important;
        overflow-x: hidden !important;
    }

    /* ─────────────────────────────────────────────────────
       4. CACHER LA FLÈCHE COLLAPSE (‹)
       ───────────────────────────────────────────────────── */
    .ud-sidebar-toggle,
    #ud-sidebar-toggle,
    .ud-toggle-icon,
    aside.ud-sidebar .ud-sidebar-toggle,
    html body .ud-sidebar .ud-sidebar-toggle,
    html body.ud-v2-shell .ud-v2-layout .ud-sidebar .ud-sidebar-toggle {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
        width: 0 !important;
        height: 0 !important;
        overflow: hidden !important;
    }

    /* ─────────────────────────────────────────────────────
       5. AFFICHER LE BOUTON FERMER (×)
       ───────────────────────────────────────────────────── */
    .ud-sidebar-close,
    #ud-sidebar-close,
    aside.ud-sidebar .ud-sidebar-close {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    /* ─────────────────────────────────────────────────────
       6. AFFICHER LE BURGER MENU
       ───────────────────────────────────────────────────── */
    .ud-menu-toggle,
    #ud-menu-toggle,
    html body .ud-v2-layout .ud-menu-toggle {
        display: flex !important;
    }

    /* ─────────────────────────────────────────────────────
       7. OVERLAY (derrière la sidebar ouverte)
       ───────────────────────────────────────────────────── */
    .ud-overlay {
        display: none !important;
    }
    .ud-overlay.active {
        display: block !important;
        position: fixed !important;
        inset: 0 !important;
        background: rgba(10, 14, 23, 0.55) !important;
        z-index: 9998 !important;
    }

    /* ─────────────────────────────────────────────────────
       8. NEUTRALISE toute règle grid-template-columns
       ───────────────────────────────────────────────────── */
    html body.ud-v2-shell .ud-v2-layout[style*="grid"],
    html body.ud-v2-shell .ud-v2-layout.ud-collapsed {
        grid-template-columns: none !important;
    }

    /* ─────────────────────────────────────────────────────
       9. BODY / HTML : pas de scroll horizontal
       ───────────────────────────────────────────────────── */
    html body.ud-v2-shell,
    html body.ud-v2-shell body {
        width: 100% !important;
        max-width: 100vw !important;
        overflow-x: hidden !important;
    }
}

/* ═══════════════════════════════════════════════════════════
   🎯 MOBILE/TABLETTE — Table Dossiers en CARDS (priorité absolue)
   ═══════════════════════════════════════════════════════════ */
@media screen and (max-width: 1024px) {

    /* ═══ CACHE LE THEAD (headers Dossier, Débiteur, Montant…) ═══ */
    html body.ud-v2-shell .ud-v2-layout .udc-table thead,
    html body.ud-v2-shell .ud-v2-layout .udc-table thead tr,
    html body.ud-v2-shell .ud-v2-layout .udc-table thead th,
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table thead,
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table thead tr,
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table thead th {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        width: 0 !important;
        max-height: 0 !important;
        max-width: 0 !important;
        overflow: hidden !important;
        padding: 0 !important;
        margin: 0 !important;
        border: none !important;
        position: absolute !important;
        left: -9999px !important;
    }

    /* ═══ TABLE + TBODY + TR + TD → BLOCK ═══ */
    html body.ud-v2-shell .ud-v2-layout .udc-table,
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody,
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody tr,
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody tr.udc-row,
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td,
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table,
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table tbody,
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table tbody tr,
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table tbody td {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        table-layout: auto !important;
        border-collapse: separate !important;
    }

    /* ═══ CHAQUE LIGNE = 1 CARD ═══ */
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody tr,
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody tr.udc-row,
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table tbody tr {
        background: #ffffff !important;
        border: 1px solid #E5E9F0 !important;
        border-radius: 12px !important;
        padding: 14px 16px !important;
        margin: 0 0 12px 0 !important;
        box-shadow: 0 1px 3px rgba(10, 14, 23, 0.04) !important;
        position: relative !important;
        overflow: hidden !important;
        min-height: 0 !important;
        height: auto !important;
    }

    /* ═══ CHAQUE CELLULE ═══ */
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td,
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table tbody td {
        padding: 6px 0 !important;
        border: none !important;
        text-align: left !important;
        font-size: 12.5px !important;
        line-height: 1.4 !important;
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
        min-height: 0 !important;
        height: auto !important;
        vertical-align: top !important;
    }

    /* ═══ LABELS AUTOMATIQUES (::before) ═══ */
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td::before,
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table tbody td::before {
        display: inline-block !important;
        content: '' !important;
        font-size: 10px !important;
        font-weight: 800 !important;
        color: #94A3B8 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.5px !important;
        margin-right: 8px !important;
        vertical-align: middle !important;
        min-width: 88px !important;
    }

    /* Mapping colonne → label */
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td:nth-child(1)::before { content: 'Dossier' !important; }
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td:nth-child(2)::before { content: 'Débiteur' !important; }
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td:nth-child(3)::before { content: 'Montant' !important; }
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td:nth-child(4)::before { content: 'Statut' !important; }
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td:nth-child(5)::before { content: 'Gestionnaire' !important; }
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td:nth-child(6)::before { content: 'Dépôt' !important; }
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td:nth-child(7)::before { content: '' !important; display: none !important; }

    /* ═══ Colonne Dossier : bordure basse de séparation ═══ */
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td:nth-child(1) {
        padding-bottom: 10px !important;
        margin-bottom: 8px !important;
        border-bottom: 1px dashed #F1F5F9 !important;
    }

    /* ═══ Colonne Montant : bandeau doré ═══ */
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td:nth-child(3) {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 10px 16px !important;
        margin: 8px -16px !important;
        background: #FEF9E7 !important;
        border-top: 1px solid #FDE68A !important;
        border-bottom: 1px solid #FDE68A !important;
    }
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td:nth-child(3)::before {
        min-width: auto !important;
        margin: 0 !important;
    }
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td:nth-child(3) .udc-amount {
        font-family: 'Courier New', monospace !important;
        font-size: 15px !important;
        font-weight: 900 !important;
        color: #78350F !important;
    }

    /* ═══ Colonnes 4, 5, 6 : label / valeur en ligne ═══ */
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td:nth-child(4),
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td:nth-child(5),
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td:nth-child(6) {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 6px 0 !important;
    }
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td:nth-child(4)::before,
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td:nth-child(5)::before,
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td:nth-child(6)::before {
        min-width: auto !important;
        margin: 0 !important;
    }

    /* ═══ Colonne 7 : Actions en bas ═══ */
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td:nth-child(7) {
        padding-top: 12px !important;
        margin-top: 8px !important;
        border-top: 1px solid #F1F5F9 !important;
    }
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td:nth-child(7) .udc-actions {
        display: flex !important;
        gap: 8px !important;
        justify-content: flex-end !important;
    }
    html body.ud-v2-shell .ud-v2-layout .udc-table tbody td:nth-child(7) .udc-act {
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
    }

    /* ═══ WRAPPER : pas de scroll horizontal ═══ */
    html body.ud-v2-shell .ud-v2-layout .udc-table-wrap,
    html body.ud-v2-shell .ud-v2-layout .ud-dossiers-table-wrap {
        background: transparent !important;
        border: none !important;
        border-radius: 0 !important;
        overflow: visible !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    /* ═══ DÉBITEUR : autoriser le wrap ═══ */
    html body.ud-v2-shell .ud-v2-layout .udc-table .udc-deb-line,
    html body.ud-v2-shell .ud-v2-layout .udc-table .udc-deb-name {
        white-space: normal !important;
        word-break: break-word !important;
        overflow: visible !important;
    }

    /* ═══ RÉFÉRENCE : autoriser le wrap ═══ */
    html body.ud-v2-shell .ud-v2-layout .udc-table .udc-ref {
        white-space: normal !important;
        word-break: break-all !important;
        max-width: 100% !important;
        overflow: visible !important;
        text-overflow: clip !important;
    }
}

/* ═══════════════════════════════════════════════════════════
   🔔 NOTIFICATIONS — Aligné EXACTEMENT sur le panneau Messages
   ═══════════════════════════════════════════════════════════ */

/* Le panneau : mêmes dimensions que messages */
.ud-topbar-panel-notifs {
    width: 380px !important;
    max-width: calc(100vw - 32px) !important;
    background: #fff !important;
    border: 1px solid #eef2f6 !important;
    border-radius: 14px !important;
    box-shadow: 0 20px 60px rgba(10, 14, 23, 0.15), 0 4px 12px rgba(10, 14, 23, 0.08) !important;
    overflow: hidden !important;
    position: absolute !important;
    top: calc(100% + 10px) !important;
    right: 0 !important;
    left: auto !important;
    transform: none !important;
}

/* Corps du panneau */
.ud-topbar-panel-notifs .ud-topbar-panel-body {
    max-height: 420px !important;
    overflow-y: auto !important;
    padding: 6px !important;
    background: #fff !important;
}

/* Carte : fond transparent par défaut */
.ud-topbar-panel-notifs .ud-topbar-panel-row {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    padding: 10px 12px !important;
    background: transparent !important;
    border: none !important;
    border-radius: 9px !important;
    margin: 0 !important;
    text-decoration: none !important;
    color: inherit !important;
    transition: background 0.15s !important;
    position: relative !important;
}

.ud-topbar-panel-notifs .ud-topbar-panel-row + .ud-topbar-panel-row {
    margin-top: 2px !important;
}

.ud-topbar-panel-notifs .ud-topbar-panel-row:hover {
    background: #f8fafc !important;
}

/* Non lues : même teinte que dans ton HTML d'origine */
.ud-topbar-panel-notifs .ud-topbar-panel-row.is-unread {
    background: #fef9e7 !important;
}

.ud-topbar-panel-notifs .ud-topbar-panel-row.is-unread:hover {
    background: #fef3c7 !important;
}

/* Pastille icône (à gauche) */
.ud-topbar-panel-notifs .ud-topbar-panel-row-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    border-radius: 8px !important;
    font-size: 16px !important;
    line-height: 1 !important;
    margin-top: 2px !important;
    flex-shrink: 0 !important;
    background: #f1f5f9 !important;
    color: #64748b !important;
}

/* Corps du message */
.ud-topbar-panel-notifs .ud-topbar-panel-row-body {
    display: block !important;
    flex: 1 !important;
    min-width: 0 !important;
    padding: 0 !important;
    width: auto !important;
}

/* Texte : 2 lignes max, tronqué */
.ud-topbar-panel-notifs .ud-topbar-panel-row-text {
    font-size: 12.5px !important;
    font-weight: 600 !important;
    color: #0a0e17 !important;
    line-height: 1.45 !important;
    margin: 0 0 4px 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* Date : simple, gris clair */
.ud-topbar-panel-notifs .ud-topbar-panel-row-date {
    font-size: 10.5px !important;
    color: #94a3b8 !important;
    font-weight: 600 !important;
    margin: 0 !important;
    white-space: nowrap !important;
}

/* Point rouge non lu (positionné en haut à droite) */
.ud-topbar-panel-notifs .ud-topbar-panel-row-dot {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    width: 7px !important;
    height: 7px !important;
    border-radius: 50% !important;
    background: #ef4444 !important;
    box-shadow: none !important;
}

/* État vide : identique à messages */
.ud-topbar-panel-notifs .ud-topbar-panel-empty {
    text-align: center !important;
    padding: 40px 20px !important;
}

.ud-topbar-panel-notifs .ud-topbar-panel-empty-icon {
    font-size: 40px !important;
    opacity: 0.35 !important;
    margin-bottom: 12px !important;
    line-height: 1 !important;
}

.ud-topbar-panel-notifs .ud-topbar-panel-empty p {
    margin: 0 0 4px !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #64748b !important;
}

.ud-topbar-panel-notifs .ud-topbar-panel-empty span {
    font-size: 12px !important;
    color: #94a3b8 !important;
    line-height: 1.5 !important;
}

/* Responsive : même comportement que messages */
@media (max-width: 600px) {
    .ud-topbar-panel-notifs {
        width: calc(100vw - 24px) !important;
        right: -50px !important;
    }
}

/* ═══════════════════════════════════════════════════════════
   🔔 NOTIF PANEL — Fix débordement à droite + responsive
   ═══════════════════════════════════════════════════════════ */

/* Le parent (dropdown) doit être positionné pour ancrer le panneau */
.ud-topbar-dropdown {
    position: relative !important;
}

/* Annule le right négatif + assure l'ancrage à droite */
.ud-topbar-panel-notifs {
    position: absolute !important;
    top: calc(100% + 10px) !important;
    right: 0 !important;
    left: auto !important;
    width: 380px !important;
    max-width: calc(100vw - 32px) !important;
    transform: none !important;
    z-index: 999 !important;
}

/* Tablette */
@media (max-width: 900px) {
    .ud-topbar-panel-notifs {
        width: 360px !important;
        max-width: calc(100vw - 24px) !important;
        right: 0 !important;
    }
}

/* Mobile */
@media (max-width: 640px) {
    /* Le dropdown remonte pour être ancré au bord droit du viewport */
    .ud-topbar-dropdown {
        position: static !important;
    }

    .ud-topbar-panel-notifs {
        position: fixed !important;
        top: 68px !important;      /* sous la topbar */
        right: 12px !important;
        left: 12px !important;
        width: auto !important;
        max-width: none !important;
        border-radius: 14px !important;
    }
}

/* ═══════════════════════════════════════════════════════════
   🔔💬 TOPBAR PANELS — Fix uniforme (Messages + Notifs)
   ═══════════════════════════════════════════════════════════ */

/* Le parent ancre le panneau */
.ud-topbar-dropdown {
    position: relative !important;
}

/* Base commune aux 2 panneaux (desktop) */
.ud-topbar-panel {
    position: absolute !important;
    top: calc(100% + 10px) !important;
    right: 0 !important;
    left: auto !important;
    width: 380px !important;
    max-width: calc(100vw - 32px) !important;
    transform: none !important;
    z-index: 999 !important;
    background: #fff !important;
    border: 1px solid #eef2f6 !important;
    border-radius: 14px !important;
    box-shadow: 0 20px 60px rgba(10, 14, 23, 0.15), 0 4px 12px rgba(10, 14, 23, 0.08) !important;
    overflow: hidden !important;
}

/* ═══ TABLETTE ═══ */
@media (max-width: 900px) {
    .ud-topbar-panel {
        width: 360px !important;
        max-width: calc(100vw - 24px) !important;
    }
}

/* ═══ MOBILE — Panneau ancré sous la topbar, calé entre 12px de chaque côté ═══ */
@media (max-width: 640px) {

    /* Le wrapper prend toute la largeur (pour ancrer correctement) */
    .ud-topbar-dropdown {
        position: static !important;
    }

    .ud-topbar-panel {
        position: fixed !important;
        top: 68px !important;      /* ⬅️ juste sous la topbar */
        right: 12px !important;
        left: 12px !important;
        width: auto !important;
        max-width: none !important;
        border-radius: 14px !important;
    }
}

/* ═══════════════════════════════════════════════════════════
   🎯 Avatar image dans la sidebar
   ═══════════════════════════════════════════════════════════ */

.ud-avatar {
    overflow: hidden !important;
    position: relative;
}

.ud-avatar-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    border-radius: 50% !important;
}

/* Profil page aussi */
.udp-avatar-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    border-radius: 50% !important;
}

/* ═══════════════════════════════════════════════════════════
   🎯 SweetAlert2 — Style UNIDET (modales custom)
   ═══════════════════════════════════════════════════════════ */
.unidet-swal-popup {
    border-radius: 16px !important;
    padding: 28px 26px 22px !important;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
    box-shadow: 0 30px 80px rgba(10, 14, 23, 0.35) !important;
    max-width: 460px !important;
}
.unidet-swal-popup .swal2-title {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #0A0E17 !important;
    margin-bottom: 10px !important;
    letter-spacing: -0.3px !important;
}
.unidet-swal-popup .swal2-html-container {
    margin: 0 !important;
    padding: 0 0 8px !important;
    color: #475569 !important;
    font-size: 13.5px !important;
    line-height: 1.55 !important;
}
.unidet-swal-popup .swal2-html-container strong {
    color: #0A0E17 !important;
    font-weight: 800 !important;
}
.unidet-swal-popup .swal2-icon {
    margin: 6px auto 14px !important;
    border-width: 3px !important;
}
.unidet-swal-popup .swal2-actions {
    gap: 10px !important;
    margin: 18px 0 0 !important;
    width: 100% !important;
}

.unidet-swal-confirm,
.unidet-swal-cancel {
    padding: 11px 24px !important;
    border-radius: 10px !important;
    font-family: inherit !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all 0.15s !important;
    border: 1.5px solid transparent !important;
    min-height: 42px !important;
    min-width: 130px !important;
}

.unidet-swal-confirm {
    color: #fff !important;
    border: none !important;
    box-shadow: 0 4px 14px rgba(201, 162, 39, 0.3) !important;
}
.unidet-swal-confirm:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 20px rgba(201, 162, 39, 0.45) !important;
}

.unidet-swal-cancel {
    background: #fff !important;
    border-color: #E5E9F0 !important;
    color: #475569 !important;
}
.unidet-swal-cancel:hover {
    background: #0A0E17 !important;
    border-color: #0A0E17 !important;
    color: #C9A227 !important;
}


/* ═══════════════════════════════════════════════
   15. VUE ADMIN — PAIEMENTS À VALIDER
   ═══════════════════════════════════════════════ */
.ud-payment-card {
    background: #fff;
    border: 1px solid #eef2f6;
    border-left: 4px solid #d4a373;
    border-radius: 14px;
    padding: 20px 24px;
    margin-bottom: 14px;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
}

.ud-payment-card:hover {
    border-color: #d4a373;
    box-shadow: 0 8px 24px rgba(212, 163, 115, 0.12);
    transform: translateY(-2px);
}

.ud-payment-card.has-warning {
    border-left-color: #ef4444;
}

.ud-payment-card-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
    padding-bottom: 14px;
    border-bottom: 1px dashed #eef2f6;
}

.ud-payment-card-ref {
    display: flex;
    align-items: center;
    gap: 10px;
    font-family: 'Courier New', monospace;
    font-size: 15px;
    font-weight: 800;
    color: #0a0e17;
    letter-spacing: 0.3px;
}

.ud-payment-card-ref-icon {
    width: 32px;
    height: 32px;
    border-radius: 9px;
    background: linear-gradient(135deg, #d4a373, #b8895c);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    flex-shrink: 0;
}

.ud-payment-card-amount {
    font-size: 20px;
    font-weight: 900;
    color: #0a0e17;
    font-variant-numeric: tabular-nums;
    letter-spacing: -0.5px;
}

.ud-payment-card-amount .currency {
    font-size: 14px;
    color: #94a3b8;
    margin-left: 4px;
    font-weight: 700;
}

.ud-payment-card-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-bottom: 18px;
    padding: 14px 16px;
    background: #f9fafb;
    border-radius: 10px;
}

.ud-payment-card-field {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.ud-payment-card-field-label {
    font-size: 10.5px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #94a3b8;
    font-weight: 700;
}

.ud-payment-card-field-value {
    font-size: 14px;
    font-weight: 800;
    color: #0a0e17;
    font-variant-numeric: tabular-nums;
}

.ud-payment-card-field-value.is-paid    { color: #059669; }
.ud-payment-card-field-value.is-due     { color: #dc2626; }
.ud-payment-card-field-value.is-empty   { color: #cbd5e1; font-weight: 600; font-style: italic; }

.ud-payment-card-actions {
    display: flex;
    gap: 10px;
    justify-content: flex-end;
    padding-top: 14px;
    border-top: 1px solid #f0f4f8;
}

.ud-btn-confirm {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 22px;
    background: linear-gradient(135deg, #0a0e17, #1a1f2e);
    color: #fff;
    border: none;
    border-radius: 10px;
    font-family: inherit;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 4px 12px rgba(10,14,23,.18);
}
.ud-btn-confirm:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(10,14,23,.28);
}

.ud-btn-manage {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 10px 18px;
    background: #fff;
    color: #0a0e17;
    border: 1.5px solid #e5e9f0;
    border-radius: 10px;
    font-family: inherit;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.15s;
}
.ud-btn-manage:hover {
    background: #f8fafc;
    border-color: #cbd5e1;
}

/* Badge "en attente depuis X" */
.ud-payment-card-age {
    position: absolute;
    top: 16px;
    right: 20px;
    padding: 3px 10px;
    border-radius: 100px;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}
.ud-payment-card-age.fresh   { background: #ecfdf5; color: #047857; }
.ud-payment-card-age.medium  { background: #fef3c7; color: #92400e; }
.ud-payment-card-age.old     { background: #fee2e2; color: #991b1b; }

@media (max-width: 900px) {
    .ud-payment-card-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 560px) {
    .ud-payment-card-grid { grid-template-columns: 1fr; }
    .ud-payment-card-actions { flex-direction: column-reverse; }
    .ud-btn-confirm, .ud-btn-manage { width: 100%; justify-content: center; }
}