:root {
    --aacdr-primary: #173b67;
    --aacdr-primary-dark: #102d4e;
    --aacdr-primary-soft: #eaf1f8;
    --aacdr-accent: #c7a34b;
    --aacdr-bg: #f4f7fb;
    --aacdr-surface: #ffffff;
    --aacdr-border: #e5eaf1;
    --aacdr-text: #1d2939;
    --aacdr-muted: #667085;
    --aacdr-success: #17834a;
    --aacdr-danger: #c9363f;
    --aacdr-warning: #a86d00;
    --aacdr-sidebar-width: 274px;
    --aacdr-header-height: 78px;
    --aacdr-radius: 14px;
    --aacdr-shadow: 0 8px 28px rgba(16, 45, 78, .06);
}

* { box-sizing: border-box; }

html { font-size: 15px; }

body {
    margin: 0;
    min-height: 100vh;
    background: var(--aacdr-bg);
    color: var(--aacdr-text);
    font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
}

body.sidebar-open { overflow: hidden; }

a { color: inherit; }

.aacdr-app { min-height: 100vh; }

/* Sidebar */
.aacdr-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    width: var(--aacdr-sidebar-width);
    z-index: 1040;
    display: flex;
    flex-direction: column;
    color: #fff;
    background: linear-gradient(180deg, #173b67 0%, #123256 100%);
    box-shadow: 8px 0 30px rgba(16, 45, 78, .10);
}

.aacdr-brand {
    display: flex;
    align-items: center;
    gap: 13px;
    min-height: 82px;
    padding: 18px 22px;
    border-bottom: 1px solid rgba(255,255,255,.10);
}

.aacdr-brand-mark {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    background: linear-gradient(145deg, #e1c46f, #b88c31);
    color: #173b67;
    font-weight: 900;
    font-size: 21px;
    box-shadow: 0 5px 15px rgba(0,0,0,.15);
    overflow: hidden;
}

.aacdr-brand-mark img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.aacdr-brand-title { font-size: 20px; line-height: 1; font-weight: 800; letter-spacing: .04em; }
.aacdr-brand-subtitle { margin-top: 5px; color: rgba(255,255,255,.64); font-size: 11px; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; }

.aacdr-organization {
    margin: 18px 18px 6px;
    padding: 14px 15px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 12px;
    background: rgba(255,255,255,.055);
    color: rgba(255,255,255,.78);
    font-size: 11.5px;
    line-height: 1.55;
}

.aacdr-organization-label { display:block; margin-bottom: 4px; color: #dfc269; font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .12em; }
.aacdr-sidebar-nav { flex: 1; padding: 14px 14px 10px; overflow-y: auto; }
.aacdr-sidebar-section-title { padding: 15px 11px 7px; color: rgba(255,255,255,.42); font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .12em; }
.aacdr-sidebar-menu { list-style: none; padding: 0; margin: 0; }
.aacdr-sidebar-menu li { margin: 3px 0; }
.aacdr-sidebar-menu a {
    display: flex;
    align-items: center;
    gap: 11px;
    min-height: 44px;
    padding: 9px 11px;
    border-radius: 10px;
    color: rgba(255,255,255,.72);
    text-decoration: none;
    font-size: 13.5px;
    font-weight: 600;
    transition: .18s ease;
}
.aacdr-sidebar-menu a:hover { color: #fff; background: rgba(255,255,255,.08); transform: translateX(2px); }
.aacdr-sidebar-menu a.active { color: #fff; background: rgba(255,255,255,.12); box-shadow: inset 3px 0 0 var(--aacdr-accent); }
.menu-icon { width: 26px; text-align: center; color: rgba(255,255,255,.55); font-size: 14px; }
.aacdr-sidebar-menu a.active .menu-icon { color: #e0c267; }

.aacdr-sidebar-footer { padding: 15px 18px 18px; border-top: 1px solid rgba(255,255,255,.10); }
.aacdr-security-note { display:flex; align-items:center; gap:10px; padding:10px 11px; border-radius:10px; background:rgba(0,0,0,.12); }
.aacdr-security-note > i { color:#d8bd68; font-size:15px; }
.aacdr-security-note strong { display:block; color:rgba(255,255,255,.82); font-size:10.5px; }
.aacdr-security-note span { display:block; margin-top:2px; color:rgba(255,255,255,.42); font-size:10px; }
.aacdr-version { padding:10px 2px 0; color:rgba(255,255,255,.32); font-size:9.5px; text-transform:uppercase; letter-spacing:.08em; text-align:center; }

/* Main */
.aacdr-main { min-height:100vh; margin-left: var(--aacdr-sidebar-width); display:flex; flex-direction:column; }
.aacdr-header {
    position:sticky;
    top:0;
    z-index:1000;
    min-height:var(--aacdr-header-height);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:12px 32px;
    background:rgba(255,255,255,.94);
    border-bottom:1px solid var(--aacdr-border);
    backdrop-filter: blur(14px);
}
.aacdr-header-left, .aacdr-header-right { display:flex; align-items:center; }
.aacdr-header-left { gap:15px; min-width:0; }
.aacdr-breadcrumb { margin-bottom:2px; color:#98a2b3; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.10em; }
.aacdr-page-title { margin:0; color:#152a43; font-size:21px; line-height:1.25; font-weight:750; }
.aacdr-menu-toggle { display:none; width:40px; height:40px; border:1px solid var(--aacdr-border); border-radius:10px; background:#fff; color:var(--aacdr-primary); }
.aacdr-header-right { gap:17px; }
.aacdr-user { display:flex; align-items:center; gap:10px; padding-right:17px; border-right:1px solid var(--aacdr-border); }
.aacdr-user-avatar { width:38px; height:38px; display:grid; place-items:center; border-radius:50%; background:var(--aacdr-primary-soft); color:var(--aacdr-primary); font-size:14px; }
.aacdr-user-name { max-width:180px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12.5px; font-weight:750; }
.aacdr-user-role { margin-top:2px; color:var(--aacdr-muted); font-size:10px; font-weight:600; text-transform:uppercase; letter-spacing:.06em; }
.aacdr-logout-form { margin:0; }
.aacdr-logout-btn { display:inline-flex; align-items:center; gap:7px; min-height:38px; padding:7px 12px; border:1px solid #e7c9cc; border-radius:9px; background:#fff; color:var(--aacdr-danger); font-size:11.5px; font-weight:700; cursor:pointer; transition:.18s ease; }
.aacdr-logout-btn:hover { background:#fff5f5; border-color:#e5aeb2; }

.aacdr-content { flex:1; }
.aacdr-page-container { width:100%; max-width:1600px; margin:0 auto; padding:28px 32px 24px; }
.aacdr-footer { display:flex; justify-content:space-between; gap:15px; padding:16px 32px 20px; color:#98a2b3; font-size:10.5px; border-top:1px solid var(--aacdr-border); background:#fff; }
.aacdr-footer strong { color:#667085; }
.aacdr-footer-separator { margin:0 5px; color:#c5cbd3; }
.aacdr-sidebar-overlay { display:none; }

/* Global Bootstrap refinements */
.container-fluid { padding-left:0 !important; padding-right:0 !important; }
.card { border:1px solid var(--aacdr-border) !important; border-radius:var(--aacdr-radius) !important; box-shadow:var(--aacdr-shadow) !important; }
.card-header { padding:14px 18px; border-bottom:1px solid var(--aacdr-border); background:#fff; }
.card-body { padding:20px; }
.btn { border-radius:9px; font-weight:650; font-size:13px; padding:9px 14px; }
.btn-primary { background:var(--aacdr-primary); border-color:var(--aacdr-primary); }
.btn-primary:hover, .btn-primary:focus { background:var(--aacdr-primary-dark); border-color:var(--aacdr-primary-dark); }
.form-control, .form-select { min-height:42px; border-color:#d9e0e8; border-radius:9px; font-size:13px; box-shadow:none; }
.form-control:focus, .form-select:focus { border-color:#7895b5; box-shadow:0 0 0 3px rgba(23,59,103,.09); }
.form-label { margin-bottom:6px; color:#344054; font-size:12px; font-weight:700; }
.table { margin-bottom:0; font-size:12.5px; }
.table > :not(caption) > * > * { padding:11px 12px; border-color:#edf0f4; vertical-align:middle; }
.table thead th { background:#f8fafc; color:#667085; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
.badge { border-radius:999px; padding:.45em .7em; font-weight:700; }
.text-primary { color:var(--aacdr-primary) !important; }

/* Dashboard helpers */
.aacdr-logo-placeholder { display:grid; place-items:center; width:54px; height:54px; border-radius:14px; background:var(--aacdr-primary); color:#fff; font-weight:850; box-shadow:0 8px 20px rgba(23,59,103,.18); }

/* Responsive */
@media (max-width: 1100px) {
    .aacdr-header { padding-left:22px; padding-right:22px; }
    .aacdr-page-container { padding-left:22px; padding-right:22px; }
    .aacdr-footer { padding-left:22px; padding-right:22px; }
}

@media (max-width: 991.98px) {
    .aacdr-sidebar { transform:translateX(-100%); transition:transform .22s ease; box-shadow:14px 0 35px rgba(0,0,0,.20); }
    .aacdr-sidebar.open { transform:translateX(0); }
    .aacdr-main { margin-left:0; }
    .aacdr-menu-toggle { display:grid; place-items:center; }
    .aacdr-sidebar-overlay { position:fixed; inset:0; z-index:1030; background:rgba(15,28,45,.42); opacity:0; pointer-events:none; display:block; transition:opacity .2s ease; }
    .aacdr-sidebar-overlay.visible { opacity:1; pointer-events:auto; }
}

@media (max-width: 700px) {
    .aacdr-header { align-items:flex-start; padding:12px 16px; }
    .aacdr-header-right { margin-left:auto; }
    .aacdr-user-details, .aacdr-logout-btn span { display:none; }
    .aacdr-user { padding-right:0; border-right:0; }
    .aacdr-logout-btn { width:38px; justify-content:center; padding:7px; }
    .aacdr-page-title { font-size:18px; }
    .aacdr-page-container { padding:20px 16px; }
    .aacdr-footer { flex-direction:column; padding:14px 16px; }
}

@media (max-width: 480px) {
    .aacdr-brand { padding-left:18px; }
    .aacdr-page-title { font-size:17px; }
    .aacdr-header { gap:10px; }
}


/* Membres — tableau professionnel */
.aacdr-table-container {
    border: 1px solid var(--aacdr-border);
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
}
.aacdr-members-table {
    width: 100%;
    min-width: 980px;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 12.5px;
}
.aacdr-members-table thead th {
    padding: 13px 14px;
    background: #f7f9fc;
    border-bottom: 1px solid var(--aacdr-border);
    color: #667085;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em;
    white-space: nowrap;
}
.aacdr-members-table tbody td {
    padding: 13px 14px;
    border-bottom: 1px solid #eef1f5;
    color: #344054;
    vertical-align: middle;
}
.aacdr-members-table tbody tr:last-child td { border-bottom: 0; }
.aacdr-members-table tbody tr { transition: background .15s ease; }
.aacdr-members-table tbody tr:hover { background: #fbfcfe; }
.aacdr-members-table .col-id { width: 55px; text-align: center; }
.member-id { color: #98a2b3 !important; font-weight: 700; text-align: center; }
.member-matricule {
    display: inline-flex;
    padding: 5px 8px;
    border-radius: 7px;
    background: var(--aacdr-primary-soft);
    color: var(--aacdr-primary);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .03em;
}
.member-identity { display: flex; align-items: center; gap: 10px; min-width: 210px; }
.member-avatar {
    width: 36px; height: 36px; flex: 0 0 36px;
    display: grid; place-items: center;
    border-radius: 10px;
    background: linear-gradient(145deg, #edf3f9, #dfe9f3);
    color: var(--aacdr-primary);
    font-size: 11px; font-weight: 850;
}
.member-name-block { min-width: 0; }
.member-name-block strong { display:block; color:#172b45; font-size:12.5px; font-weight:750; }
.member-name-block small {
    display:block; max-width:220px; margin-top:3px; overflow:hidden;
    color:#98a2b3; font-size:10px; white-space:nowrap; text-overflow:ellipsis;
}
.member-email { max-width:190px; display:inline-block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.aacdr-status {
    display:inline-flex; align-items:center; gap:6px;
    padding:5px 9px; border-radius:999px;
    font-size:10.5px; font-weight:750; white-space:nowrap;
}
.aacdr-status > span { width:6px; height:6px; border-radius:50%; display:inline-block; }
.aacdr-status-active { color:#167044; background:#eaf7ef; }
.aacdr-status-active > span { background:#1c9a58; }
.aacdr-status-inactive { color:#a52f38; background:#fff0f1; }
.aacdr-status-inactive > span { background:#d44a54; }
.aacdr-status-pending { color:#8a6200; background:#fff7df; }
.aacdr-status-pending > span { background:#c99419; }
.member-actions { display:flex; align-items:center; gap:5px; }
.member-action-btn {
    width:32px; height:32px; display:grid; place-items:center;
    border:1px solid #e1e6ed; border-radius:8px;
    background:#fff; color:#526173; text-decoration:none;
    transition:all .15s ease;
}
.member-action-btn:hover { border-color:#b8c6d6; background:#f6f8fb; color:var(--aacdr-primary); transform:translateY(-1px); }
.member-action-danger:hover { border-color:#e7b5b9; background:#fff5f5; color:var(--aacdr-danger); }
.aacdr-card-header { display:flex; align-items:center; justify-content:space-between; gap:15px; }
.aacdr-card-header > span { color:#667085; font-size:11px; font-weight:700; }

@media (max-width: 991.98px) {
    .aacdr-table-container { overflow-x:auto; }
}

/* ==========================================================
   FORMULAIRES — même identité visuelle que Journal / Membres
   ========================================================== */
.aacdr-form-section {
    padding: 4px 0 24px;
    margin-bottom: 24px;
    border-bottom: 1px solid var(--aacdr-border);
}
.aacdr-form-section-title {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
    color: #172b45;
}
.aacdr-form-section-title strong {
    display: block;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .035em;
}
.aacdr-form-section-title small {
    display: block;
    margin-top: 3px;
    color: #98a2b3;
    font-size: 11px;
    font-weight: 500;
    text-transform: none;
    letter-spacing: 0;
}
.aacdr-form-number {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    background: var(--aacdr-primary-soft);
    color: var(--aacdr-primary);
    font-size: 12px;
    font-weight: 850;
}
.aacdr-form-section .form-control,
.aacdr-form-section .form-select {
    background-color: #fff;
}
.aacdr-form-section .input-group-text {
    border-color: #d9e0e8;
    background: #f8fafc;
    color: #667085;
    font-size: 12px;
    font-weight: 700;
}
.aacdr-form-section .text-danger {
    display: block;
    margin-top: 5px;
    font-size: 11px;
}

/* Version 1 - gestion du compte gestionnaire */
.gestionnaire-compte .form-control:focus { box-shadow: 0 0 0 .2rem rgba(13,110,253,.12); }


/* Photos de profil - VERSION 1 */
.aacdr-user-avatar img { display:block; }
.membre-photo { width:44px; height:44px; object-fit:cover; border-radius:50%; }

/* VERSION 2 — DETAILS & ESPACE MEMBRE */
.aacdr-detail-page{width:100%}.aacdr-detail-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}.aacdr-detail-kicker{margin-bottom:5px;color:var(--aacdr-accent);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.12em}.aacdr-detail-title{margin:0;color:#152a43;font-size:25px;line-height:1.2;font-weight:800}.aacdr-detail-description{margin:7px 0 0;color:var(--aacdr-muted);font-size:12.5px}.aacdr-detail-actions,.aacdr-bottom-actions{display:flex;flex-wrap:wrap;gap:8px}.aacdr-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 13px;border:1px solid transparent;border-radius:9px;font-size:12px;font-weight:750;text-decoration:none;transition:.18s ease}.aacdr-btn-primary{background:var(--aacdr-primary);border-color:var(--aacdr-primary);color:#fff}.aacdr-btn-primary:hover{background:var(--aacdr-primary-dark);border-color:var(--aacdr-primary-dark);color:#fff}.aacdr-btn-light{background:#fff;border-color:#dce2e9;color:#526173}.aacdr-btn-light:hover{background:#f7f9fc;color:var(--aacdr-primary)}.aacdr-detail-card{margin-bottom:18px;overflow:hidden;background:#fff;border:1px solid var(--aacdr-border);border-radius:var(--aacdr-radius);box-shadow:var(--aacdr-shadow)}.aacdr-detail-card-header{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:54px;padding:14px 18px;border-bottom:1px solid var(--aacdr-border);background:#fff}.aacdr-detail-card-title{display:flex;align-items:center;gap:10px;margin:0;color:#172b45;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.045em}.aacdr-detail-card-title i{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:var(--aacdr-primary-soft);color:var(--aacdr-primary);font-size:12px}.aacdr-detail-card-meta{color:#98a2b3;font-size:10.5px;font-weight:750}.aacdr-detail-card-body{padding:20px}.aacdr-profile-strip{display:flex;align-items:center;gap:15px;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--aacdr-border)}.aacdr-profile-photo,.aacdr-profile-placeholder{width:78px;height:78px;flex:0 0 78px;display:grid;place-items:center;overflow:hidden;border:1px solid #dce3eb;border-radius:50%;background:linear-gradient(145deg,#edf3f9,#dfe9f3);color:var(--aacdr-primary)}.aacdr-profile-photo{object-fit:cover}.aacdr-profile-placeholder{font-size:25px}.aacdr-profile-label{margin-bottom:3px;color:#98a2b3;font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.10em}.aacdr-profile-name{margin:0 0 7px;color:#172b45;font-size:19px;font-weight:800}.aacdr-profile-meta{color:var(--aacdr-muted);font-size:11px}.aacdr-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid var(--aacdr-border);border-radius:11px;background:var(--aacdr-border)}.aacdr-detail-item{min-width:0;padding:14px 15px;background:#fff}.aacdr-detail-item-full{grid-column:1/-1}.aacdr-detail-label{display:block;margin-bottom:5px;color:#98a2b3;font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.aacdr-detail-value{display:block;color:#344054;font-size:13px;font-weight:700;overflow-wrap:anywhere}.aacdr-detail-value-muted{color:#98a2b3;font-weight:600}.aacdr-finance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.aacdr-finance-box{padding:17px;border:1px solid var(--aacdr-border);border-radius:11px;background:#fbfcfe}.aacdr-finance-label{color:#667085;font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.aacdr-finance-value{margin-top:6px;color:#172b45;font-size:20px;font-weight:800}.aacdr-finance-primary{color:var(--aacdr-primary)}.aacdr-finance-success{color:var(--aacdr-success)}.aacdr-finance-danger{color:var(--aacdr-danger)}.aacdr-finance-warning{color:var(--aacdr-warning)}.aacdr-status-message{display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid var(--aacdr-border);border-radius:11px;background:#fbfcfe}.aacdr-status-icon{width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;border-radius:10px;background:var(--aacdr-primary-soft);color:var(--aacdr-primary)}.aacdr-status-message strong{font-size:12.5px}.aacdr-status-message p{margin:5px 0 0;color:var(--aacdr-muted);font-size:11.5px}.aacdr-empty{padding:25px 15px;text-align:center;color:#98a2b3;font-size:12px}.aacdr-bottom-actions{margin:4px 0 24px}@media(max-width:800px){.aacdr-detail-header{align-items:flex-start;flex-direction:column;gap:15px}.aacdr-detail-title{font-size:22px}.aacdr-finance-grid{grid-template-columns:1fr}}@media(max-width:600px){.aacdr-details-grid{grid-template-columns:1fr}.aacdr-detail-item-full{grid-column:auto}.aacdr-detail-card-body{padding:15px}.aacdr-profile-strip{align-items:flex-start}.aacdr-profile-photo,.aacdr-profile-placeholder{width:66px;height:66px;flex-basis:66px}}

/* Pages de suppression — même design que les pages Détails */
.aacdr-delete-warning{display:flex;align-items:flex-start;gap:13px;margin-bottom:18px;padding:15px 17px;border:1px solid #e7b5b9;border-radius:var(--aacdr-radius);background:#fff7f7;box-shadow:var(--aacdr-shadow)}
.aacdr-delete-warning-icon{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:10px;background:#fde8ea;color:var(--aacdr-danger);font-size:15px}
.aacdr-delete-warning strong{display:block;color:#8f252c;font-size:11px;font-weight:850;letter-spacing:.05em}
.aacdr-delete-warning p{margin:5px 0 0;color:#7a4a4e;font-size:11.5px;line-height:1.55}
.aacdr-delete-confirmation{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px;padding:17px 18px;border:1px solid #e7b5b9;border-radius:var(--aacdr-radius);background:#fff;box-shadow:var(--aacdr-shadow)}
.aacdr-delete-message strong{display:block;color:#172b45;font-size:12.5px;font-weight:800}
.aacdr-delete-message span{display:block;margin-top:4px;color:var(--aacdr-muted);font-size:11px}
.aacdr-delete-confirmation form{margin:0}.aacdr-delete-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.aacdr-btn-danger{background:var(--aacdr-danger);border-color:var(--aacdr-danger);color:#fff}.aacdr-delete-error{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px;padding:14px;border:1px solid #f3c2c5;border-radius:11px;background:#fff5f5;color:#842029}.aacdr-delete-error-icon{width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;border-radius:10px;background:#fde2e4;color:var(--aacdr-danger)}.aacdr-delete-error strong{font-size:12.5px}.aacdr-delete-error p{margin:5px 0 0;font-size:11.5px;line-height:1.55}.aacdr-btn-danger:disabled{opacity:.5;cursor:not-allowed}.aacdr-btn-danger:hover{background:#a92c34;border-color:#a92c34;color:#fff}
@media(max-width:700px){.aacdr-delete-confirmation{align-items:stretch;flex-direction:column}.aacdr-delete-actions{justify-content:flex-start}.aacdr-delete-actions .aacdr-btn{flex:1}.aacdr-delete-warning{padding:13px}.aacdr-delete-warning-icon{width:34px;height:34px;flex-basis:34px}}

/* ============================================================
   VERSION 1 — HARMONISATION DES PAGES MODIFIER
   ============================================================ */
.aacdr-edit-page{width:100%;}
.aacdr-edit-page .aacdr-detail-header{margin-bottom:22px;}
.aacdr-edit-page .row.justify-content-center{margin:0;}
.aacdr-edit-page .row.justify-content-center > [class*="col-"]{max-width:100%;padding:0;}
.aacdr-edit-page .card{overflow:hidden;background:#fff;border:1px solid var(--aacdr-border);border-radius:var(--aacdr-radius);box-shadow:var(--aacdr-shadow)!important;}
.aacdr-edit-page .card-header{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:54px;padding:14px 18px;border-bottom:1px solid var(--aacdr-border);background:#fff!important;color:#172b45!important;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.045em;}
.aacdr-edit-page .card-body{padding:20px;}
.aacdr-edit-page .card-body h5{margin-top:20px;color:#172b45;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.045em;border-bottom:1px solid var(--aacdr-border)!important;padding-bottom:10px!important;}
.aacdr-edit-page .form-label{color:#526173;font-size:11px;font-weight:750;}
.aacdr-edit-page .form-control,.aacdr-edit-page .form-select{min-height:40px;border:1px solid #dce2e9;border-radius:9px;font-size:12px;box-shadow:none;}
.aacdr-edit-page .form-control:focus,.aacdr-edit-page .form-select:focus{border-color:var(--aacdr-primary);box-shadow:0 0 0 3px var(--aacdr-primary-soft);}
.aacdr-edit-page .btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 13px;border-radius:9px;font-size:12px;font-weight:750;text-decoration:none;}
.aacdr-edit-page .btn-primary,.aacdr-edit-page .btn-warning,.aacdr-edit-page .btn-info,.aacdr-edit-page .btn-secondary{background:var(--aacdr-primary)!important;border-color:var(--aacdr-primary)!important;color:#fff!important;}
.aacdr-edit-page .btn-primary:hover,.aacdr-edit-page .btn-warning:hover,.aacdr-edit-page .btn-info:hover,.aacdr-edit-page .btn-secondary:hover{background:var(--aacdr-primary-dark)!important;border-color:var(--aacdr-primary-dark)!important;color:#fff!important;}
.aacdr-edit-page .btn-outline-secondary,.aacdr-edit-page .btn-light{background:#fff!important;border:1px solid #dce2e9!important;color:#526173!important;}
.aacdr-edit-page .btn-outline-secondary:hover,.aacdr-edit-page .btn-light:hover{background:#f7f9fc!important;color:var(--aacdr-primary)!important;}
.aacdr-edit-page .text-danger{font-size:11px;}
.aacdr-edit-page .alert-danger{border:1px solid #f1c4c7;border-radius:10px;font-size:11px;}
.aacdr-edit-page .mt-4.mb-5,.aacdr-edit-page .mt-4{margin-top:0!important;}
.aacdr-edit-page .mt-4{margin-bottom:24px!important;}
@media(max-width:700px){.aacdr-edit-page .card-body{padding:15px;}.aacdr-edit-page .aacdr-detail-header{align-items:flex-start;flex-direction:column;gap:15px}.aacdr-edit-page .card-header{align-items:flex-start;flex-direction:column;}.aacdr-edit-page .btn{width:100%;}}


/* =========================================================
   AUTHENTIFICATION / ESPACE MEMBRE
   ========================================================= */

.aacdr-auth-page {
    min-height: calc(100vh - 78px);
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 42px 20px 55px;
}

.aacdr-auth-card {
    width: 100%;
    max-width: 520px;
    padding: 30px;
    border: 1px solid var(--aacdr-border);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 18px 55px rgba(16, 45, 78, .10);
}

.aacdr-auth-card-register {
    max-width: 720px;
}

.aacdr-auth-brand {
    display: flex;
    align-items: center;
    gap: 13px;
    margin-bottom: 28px;
}

.aacdr-auth-logo {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border-radius: 14px;
    background: linear-gradient(145deg, #e1c46f, #b88c31);
    color: var(--aacdr-primary);
    font-weight: 900;
    box-shadow: 0 7px 18px rgba(0,0,0,.12);
}

.aacdr-auth-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.aacdr-auth-logo span {
    width: 100%;
    height: 100%;
    place-items: center;
}

.aacdr-auth-brand-title {
    color: var(--aacdr-primary);
    font-size: 21px;
    line-height: 1;
    font-weight: 850;
    letter-spacing: .04em;
}

.aacdr-auth-brand-subtitle {
    margin-top: 5px;
    color: var(--aacdr-muted);
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .10em;
    text-transform: uppercase;
}

.aacdr-auth-heading {
    margin-bottom: 22px;
}

.aacdr-auth-kicker {
    margin-bottom: 6px;
    color: var(--aacdr-accent);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .13em;
}

.aacdr-auth-heading h1 {
    margin: 0;
    color: #152a43;
    font-size: 27px;
    font-weight: 800;
}

.aacdr-auth-heading p {
    margin: 7px 0 0;
    color: var(--aacdr-muted);
    font-size: 13px;
    line-height: 1.55;
}

.aacdr-auth-form {
    margin-top: 4px;
}

.aacdr-auth-field {
    margin-bottom: 17px;
}

.aacdr-auth-input-wrap {
    position: relative;
}

.aacdr-auth-input-wrap > i {
    position: absolute;
    left: 14px;
    top: 50%;
    z-index: 2;
    transform: translateY(-50%);
    color: #98a2b3;
    font-size: 13px;
    pointer-events: none;
}

.aacdr-auth-input-wrap .form-control {
    padding-left: 40px;
}

.aacdr-auth-options {
    margin: 2px 0 18px;
}

.aacdr-auth-options .form-check {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.aacdr-auth-options .form-check-input {
    margin-top: 0;
}

.aacdr-auth-options .form-check-label {
    color: var(--aacdr-muted);
    font-size: 12px;
}

.aacdr-auth-submit {
    width: 100%;
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 10px 16px;
    border: 1px solid var(--aacdr-primary);
    border-radius: 10px;
    background: var(--aacdr-primary);
    color: #fff;
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
    transition: .18s ease;
}

.aacdr-auth-submit:hover {
    background: var(--aacdr-primary-dark);
    border-color: var(--aacdr-primary-dark);
    transform: translateY(-1px);
}

.aacdr-auth-errors {
    margin-bottom: 16px;
    color: var(--aacdr-danger);
    font-size: 12px;
}

.aacdr-auth-errors:empty {
    display: none;
}

.aacdr-auth-errors ul {
    margin: 0;
    padding-left: 18px;
}

.aacdr-auth-alert {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 18px;
    padding: 12px 13px;
    border-radius: 10px;
    font-size: 12px;
    line-height: 1.5;
}

.aacdr-auth-alert i {
    margin-top: 2px;
}

.aacdr-auth-alert-success {
    border: 1px solid #b9e3ca;
    background: #f0fbf4;
    color: #176b3c;
}

.aacdr-auth-alert-info {
    border: 1px solid #cbdceb;
    background: #f4f8fc;
    color: #315579;
}

.aacdr-auth-divider {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 25px 0 18px;
    color: #98a2b3;
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .12em;
}

.aacdr-auth-divider::before,
.aacdr-auth-divider::after {
    content: "";
    flex: 1;
    height: 1px;
    background: var(--aacdr-border);
}

.aacdr-auth-register {
    text-align: center;
}

.aacdr-auth-register p {
    margin: 0 0 12px;
    color: var(--aacdr-muted);
    font-size: 12px;
}

.aacdr-auth-register-btn {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 9px 15px;
    border: 1px solid #cdd9e6;
    border-radius: 9px;
    background: #fff;
    color: var(--aacdr-primary);
    text-decoration: none;
    font-size: 12px;
    font-weight: 750;
    transition: .18s ease;
}

.aacdr-auth-register-btn:hover {
    border-color: var(--aacdr-primary);
    background: var(--aacdr-primary-soft);
    color: var(--aacdr-primary);
}

.aacdr-auth-section-title {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--aacdr-border);
}

.aacdr-auth-section-title > span {
    width: 27px;
    height: 27px;
    flex: 0 0 27px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    background: var(--aacdr-primary-soft);
    color: var(--aacdr-primary);
    font-size: 11px;
    font-weight: 850;
}

.aacdr-auth-section-title strong {
    display: block;
    color: #253b55;
    font-size: 12.5px;
}

.aacdr-auth-section-title small {
    display: block;
    margin-top: 2px;
    color: #98a2b3;
    font-size: 10px;
}

.aacdr-auth-back {
    margin-top: 19px;
    text-align: center;
}

.aacdr-auth-back a {
    color: var(--aacdr-primary);
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
}

.aacdr-auth-back a:hover {
    text-decoration: underline;
}

.aacdr-auth-security {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin-top: 22px;
    padding-top: 15px;
    border-top: 1px solid var(--aacdr-border);
    color: #98a2b3;
    font-size: 10px;
    line-height: 1.5;
}

.aacdr-auth-security i {
    color: var(--aacdr-accent);
    margin-top: 1px;
}

@media (max-width: 600px) {
    .aacdr-auth-page {
        padding: 22px 12px 35px;
    }

    .aacdr-auth-card {
        padding: 22px 17px;
        border-radius: 14px;
    }

    .aacdr-auth-heading h1 {
        font-size: 23px;
    }
}
