/* =========================================
   Liberty Fly – Public Theme Override
   Primary color replacement
   ========================================= */
:root{
    --lf-blue: #0C1F3F;
    --lf-blue-rgb: 12, 31, 63;

    --lf-silver: #A8A8A8;
    --lf-gold: #CFA256;

    --pc-primary: var(--lf-blue);
    --pc-primary-rgb: var(--lf-blue-rgb);
}

/* --- Buttons --- */
.btn-primary{
    background-color: var(--lf-blue) !important;
    border-color: var(--lf-blue) !important;
}

.btn-primary:hover,
.btn-primary:focus{
    background-color: #09162d !important; /* bleu plus sombre */
    border-color: #09162d !important;
}

.btn-outline-primary{
    color: var(--lf-blue) !important;
    border-color: rgba(var(--lf-blue-rgb), .35) !important;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus{
    background-color: rgba(var(--lf-blue-rgb), .08) !important;
    border-color: var(--lf-blue) !important;
    color: var(--lf-blue) !important;
}

/* Accent (Or) – utile pour CTA secondaires */
.btn-accent,
.btn-warning{
    background-color: var(--lf-gold) !important;
    border-color: var(--lf-gold) !important;
    color: #0b1220 !important;
}
.btn-accent:hover,
.btn-warning:hover{
    filter: brightness(0.95);
}

/* Focus ring (accessibilité) */
.btn:focus,
.btn:focus-visible,
.pc-link:focus,
.pc-link:focus-visible{
    box-shadow: 0 0 0 .2rem rgba(207, 162, 86, .25) !important;
}

/* --- Cards / borders --- */
.card{
    border-color: rgba(var(--lf-blue-rgb), .12) !important;
}

/* --- Sidebar / Horizontal menu hover & active --- */
/* Texte + icône */
.pc-sidebar .pc-navbar .pc-link:hover{
    color: var(--lf-blue) !important;
}
.pc-sidebar .pc-navbar .pc-link:hover .pc-micon i{
    color: var(--lf-blue) !important;
}

/* État actif : petit liseré or + fond très léger */
.pc-sidebar .pc-navbar > .pc-item.active > .pc-link,
.pc-sidebar .pc-navbar > .pc-item > .pc-link.active{
    color: var(--lf-blue) !important;
    background: rgba(var(--lf-blue-rgb), .06) !important;
    border-bottom: 2px solid rgba(207, 162, 86, .85) !important; /* accent or */
}
.pc-sidebar .pc-navbar > .pc-item.active > .pc-link .pc-micon i,
.pc-sidebar .pc-navbar > .pc-item > .pc-link.active .pc-micon i{
    color: var(--lf-blue) !important;
}

/* Optionnel : sous-texte / captions */
.pc-sidebar .pc-caption label{
    color: rgba(var(--lf-blue-rgb), .65) !important;
}

/* Liens “muted” */
.text-muted{
    color: var(--lf-silver) !important;
}

/* Buttons */
.btn-primary {
    background-color: var(--pc-primary);
    border-color: var(--pc-primary);
}

.btn-outline-primary {
    color: var(--pc-primary);
    border-color: var(--pc-primary);
}

.btn-outline-primary:hover {
    background-color: var(--pc-primary);
    border-color: var(--pc-primary);
    color: #fff;
}

/* Cards */
.card {
    border-color: rgba(var(--pc-primary-rgb), 0.15);
}

.card-header {
    border-bottom-color: rgba(var(--pc-primary-rgb), 0.15);
}

/* Sidebar / Horizontal menu */
.pc-sidebar .pc-navbar > .pc-item.active > .pc-link,
.pc-sidebar .pc-navbar > .pc-item > .pc-link.active {
    color: var(--pc-primary);
}

.pc-sidebar .pc-navbar .pc-link:hover {
    color: var(--pc-primary);
}

/* Icons */
.pc-micon i {
    color: var(--pc-primary);
}

/* Badges */
.badge.bg-primary {
    background-color: var(--pc-primary) !important;
}

/* Badges catégories RP */
.lf-badge-category {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.lf-badge-humanitarian_ops { background-color: #e74c3c; }  /* rouge aide */
.lf-badge-exploration_ops  { background-color: #1abc9c; }  /* vert turquoise */
.lf-badge-cargo_ops        { background-color: #f39c12; }  /* orange logistique */
.lf-badge-bush_ops         { background-color: #27ae60; }  /* vert terrain */
.lf-badge-vip_ops          { background-color: #9b59b6; }  /* violet VIP */
.lf-badge-coastal_ops      { background-color: #2980b9; }  /* bleu mer */
.lf-badge-mountain_ops     { background-color: #95a5a6; }  /* gris montagne */
.lf-badge-historical_ops   { background-color: #d35400; }  /* orange rétro */

/* Badges de niveau RP */
.lf-level-badge {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    border-radius: 999px;
    padding: 0.15rem 0.6rem;
}
.lf-level-0 { background-color: #343a40; }
.lf-level-1 { background-color: #0d6efd; }
.lf-level-2 { background-color: #20c997; }
.lf-level-3 { background-color: #ffc107; color: #000; }
.lf-level-4 { background-color: #fd7e14; }
.lf-level-5 { background-color: #dc3545; }