/*
 * Surcharges BaniAro du template fila, chargées après fila/css/style.css.
 *
 * Aligne le back-office sur l'identité de l'app mobile (police Plus Jakarta
 * Sans, vert #1E8A5A, formes arrondies, ombres douces). Les couleurs du
 * template ont déjà été remplacées dans style.css ; ce fichier ne porte que
 * la police et les formes.
 */

@font-face {
    font-family: "Plus Jakarta Sans";
    src: url("../fonts/plus-jakarta-sans/PlusJakartaSans-Regular.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Plus Jakarta Sans";
    src: url("../fonts/plus-jakarta-sans/PlusJakartaSans-Medium.ttf") format("truetype");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Plus Jakarta Sans";
    src: url("../fonts/plus-jakarta-sans/PlusJakartaSans-SemiBold.ttf") format("truetype");
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Plus Jakarta Sans";
    src: url("../fonts/plus-jakarta-sans/PlusJakartaSans-Bold.ttf") format("truetype");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Plus Jakarta Sans";
    src: url("../fonts/plus-jakarta-sans/PlusJakartaSans-ExtraBold.ttf") format("truetype");
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

:root,
[data-bs-theme=light] {
    --ba-primary: #1e8a5a;
    --ba-primary-hover: #146945;
    --ba-primary-surface: #e9f6ef;
    --ba-shadow: 0 1px 2px rgba(15, 26, 21, 0.04), 0 8px 24px rgba(15, 26, 21, 0.05);
    --bs-font-sans-serif: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    --bs-body-font-family: var(--bs-font-sans-serif);
}

[data-theme=dark] {
    --ba-primary-surface: #15291f;
    --ba-shadow: none;
}

body {
    font-family: var(--bs-font-sans-serif);
    /* L'espace de Plus Jakarta Sans est étroite aux petites tailles dans les
       navigateurs : sans ce léger ajout, les mots paraissent collés. */
    word-spacing: 0.06em;
}

/* Titres : plus gras et resserrés, comme dans l'app. */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: var(--bs-font-sans-serif);
    font-weight: 700;
    letter-spacing: -0.01em;
}

/* Cartes et barres : coins plus ronds, ombre diffuse plutôt que liseré. */
.card,
.header-area,
.footer-area {
    border-radius: 18px !important;
    box-shadow: var(--ba-shadow);
}
.footer-area {
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}
.card.border-white {
    border-color: transparent !important;
}
/* Les utilitaires du template (cartes soudées à une barre d'onglets, cf.
   page détail d'annonce) priment sur l'arrondi par défaut ci-dessus. */
.card.rounded-bottom-0 {
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}
.card.rounded-top-0 {
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

/* Boutons en pilule. */
.btn {
    border-radius: 999px;
    font-weight: 600 !important;
}
.btn-primary {
    --bs-btn-bg: var(--ba-primary);
    --bs-btn-border-color: var(--ba-primary);
    --bs-btn-hover-bg: var(--ba-primary-hover);
    --bs-btn-hover-border-color: var(--ba-primary-hover);
    --bs-btn-active-bg: var(--ba-primary-hover);
    --bs-btn-active-border-color: var(--ba-primary-hover);
}
.theme-settings-btn {
    border-radius: 50% !important;
}

/* Champs : arrondis, focus vert discret. */
.form-control,
.form-select {
    border-radius: 12px;
}
.form-control:focus,
.form-select:focus {
    border-color: var(--ba-primary);
    box-shadow: 0 0 0 3px rgba(30, 138, 90, 0.15);
}
.form-check-input:checked {
    background-color: var(--ba-primary);
    border-color: var(--ba-primary);
}

/* Badges de statut en pilule. */
.badge,
.default-table-area .badge {
    border-radius: 999px;
    font-weight: 600;
}

/* Tableaux : en-tête plus léger. */
.default-table-area .table thead th {
    font-weight: 600;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

/* Menu latéral : élément actif en pilule verte. */
.sidebar-area .menu-item.active > .menu-link,
.sidebar-area .menu-item > .menu-link.active {
    background-color: var(--ba-primary-surface);
    border-radius: 12px;
    padding-top: 9px;
    padding-bottom: 9px;
}
.sidebar-area .logo .logo-text {
    color: var(--ba-primary) !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em;
}

.dropdown-menu {
    border-radius: 14px;
    box-shadow: var(--ba-shadow);
}
.alert {
    border-radius: 14px;
}

/* Aplat discret qui suit le thème (Bootstrap `bg-light` reste clair en mode
   sombre, le template ne le redéfinit pas). Utilisé pour les compteurs,
   pastilles d'icônes et emplacements vides. */
.ba-surface-soft {
    background-color: #f6f8f7;
}
[data-theme=dark] .ba-surface-soft {
    background-color: #222c26;
}

/* Impression (reçu de paiement, souscription) : uniquement le document. */
@media print {
    .sidebar-area,
    .header-area,
    .footer-area,
    .theme-settings-btn,
    .preloader,
    .alert {
        display: none !important;
    }
    .main-content {
        margin: 0 !important;
        padding: 0 !important;
        transition: none !important;
    }
    body {
        background: #fff !important;
    }
    .card {
        box-shadow: none !important;
    }
}
