/* ============================================================
   APTEVIA - Thème principal ADMIN
   Fichier : theme_admin.css
   Version : V1.0 - 2025-11-16
   Rôle : Fichier maître — une seule source pour tout le design
   ============================================================ */

/* ------------------------------------------------------------
   PALETTE APTEVIA ADMIN (Unique et Officielle)
   ------------------------------------------------------------ */
:root {
    --admin-bleu: #002F3F;         /* Couleur principale */
    --admin-bleu-hover: #3B2F2F;

    --admin-taupe: #A89E8F;        /* Taupe APTEVIA */
    --admin-taupe-light: #D7D3CB;  /* Taupe clair */

    --admin-beige: #F9F6F0;        /* Fond général */
    --admin-white: #FFFFFF;

    --admin-success: #9BCB4A;
    --admin-danger: #D66A6A;
    --admin-warning: #F0C674;

    --admin-border: #3B2F2F;       /* Couleur de bordure officielle */

    --admin-radius: 8px;           /* Rayon standard */
    --admin-shadow: 0 2px 6px rgba(0,0,0,0.15);


    /* Alias pratiques utilisés dans les modules */
    --admin-green: #9BCB4A;
    --admin-red: #D66A6A;
    --admin-blue: #002F3F;
    --admin-accent: #A89E8F;
    --admin-accent-light: #D7D3CB;
    --admin-beige-light: #F0EBE0;

    /* Ombre légère si tu veux la distinguer */
    --admin-shadow-light: 0 2px 4px rgba(0,0,0,0.08);
}


/* ------------------------------------------------------------
   TYPOGRAPHIE
   ------------------------------------------------------------ */
body, input, select, textarea, button {
    font-family: "Segoe UI", Roboto, Arial, sans-serif;
    color: var(--admin-bleu);
}

/* ------------------------------------------------------------
   BOUTONS — Standardisés (1 seule source)
   ------------------------------------------------------------ */
.btn,
button {
    background: var(--admin-bleu);
    color: var(--admin-white);
    border: none;
    padding: 10px 18px;
    border-radius: var(--admin-radius);
    cursor: pointer;
    font-weight: 600;
    transition: 0.2s;
}

.btn:hover,
button:hover {
    background: var(--admin-bleu-hover);
}

/* Boutons secondaires */
.btn-secondary {
    background: var(--admin-taupe);
    color: var(--admin-white);
}

.btn-secondary:hover {
    background: var(--admin-taupe-light);
}

/* Bouton succès */
.btn-success {
    background: var(--admin-success);
    color: #1a2a0a;
}

.btn-success:hover {
    background: #85b63d;
}

/* Bouton danger */
.btn-danger {
    background: var(--admin-danger);
    color: white;
}

.btn-danger:hover {
    background: #c75959;
}

/* ------------------------------------------------------------
   TABLEAUX — Style unique
   ------------------------------------------------------------ */

.admin-table,
.table-centres,
.table-aptevia {
    width: 100%;
    border-collapse: collapse;
    background: var(--admin-white);
    border-radius: var(--admin-radius);
    overflow: hidden;
    margin-top: 20px;
    font-size: 0.95rem;
}

.admin-table th,
.table-centres th,
.table-aptevia th {
    background: var(--admin-bleu);
    color: white;
    padding: 12px;
    font-weight: 600;
}

.admin-table td,
.table-centres td,
.table-aptevia td {
    padding: 10px 14px;
    border-bottom: 1px solid var(--admin-border);
}

.admin-table tr:nth-child(even),
.table-centres tr:nth-child(even),
.table-aptevia tr:nth-child(even) {
    background: #f3f0eb;
}

.admin-table tr:hover,
.table-centres tr:hover,
.table-aptevia tr:hover {
    background: var(--admin-taupe-light);
}

/* ------------------------------------------------------------
   FORMULAIRES — Standardisation
   ------------------------------------------------------------ */
input[type="text"],
input[type="email"],
input[type="number"],
textarea,
select {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid var(--admin-border);
    border-radius: var(--admin-radius);
    margin-top: 5px;
    font-size: 0.95rem;
    background: white;
    transition: border-color 0.2s;
}

input:focus,
textarea:focus,
select:focus {
    border-color: var(--admin-bleu);
    outline: none;
    box-shadow: 0 0 0 2px rgba(0,47,63,0.15);
}

label {
    font-weight: 600;
    color: var(--admin-bleu);
    margin-top: 12px;
    display: inline-block;
}

/* ------------------------------------------------------------
   ALERTES / NOTIFICATIONS
   ------------------------------------------------------------ */
.alert {
    padding: 12px 18px;
    border-radius: var(--admin-radius);
    font-weight: 600;
    margin: 10px 0;
    text-align: center;
}

.alert-success {
    background: #E4F3D1;
    border: 1px solid var(--admin-success);
    color: #2a3e15;
}

.alert-danger {
    background: #F8D6D6;
    border: 1px solid var(--admin-danger);
    color: #6b1d1d;
}

.alert-warning {
    background: #FFF2CB;
    border: 1px solid var(--admin-warning);
    color: #8a6d1d;
}

/* ------------------------------------------------------------
   BLOCS / CARTES
   ------------------------------------------------------------ */
.card {
    background: var(--admin-white);
    border: 1px solid var(--admin-border);
    border-radius: var(--admin-radius);
    padding: 20px;
    box-shadow: var(--admin-shadow);
    margin-bottom: 20px;
}

/* ------------------------------------------------------------
   TABLEAU DE BORD (dashboard)
   ------------------------------------------------------------ */
.dashboard-card {
    background: var(--admin-white);
    padding: 20px;
    border-radius: var(--admin-radius);
    border: 1px solid var(--admin-border);
    box-shadow: var(--admin-shadow);
    width: 280px;
    display: inline-block;
    margin: 10px;
    transition: 0.2s;
}

.dashboard-card:hover {
    transform: translateY(-3px);
}

/* ------------------------------------------------------------
   BADGES (status planning / centre / intervenant)
   ------------------------------------------------------------ */
.badge {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 700;
    color: white;
}

.badge-success { background: var(--admin-success); }
.badge-danger  { background: var(--admin-danger); }
.badge-warning { background: var(--admin-warning); }
.badge-info    { background: var(--admin-bleu); }
