/**
 * EasyCall — Module CRM & Call Center Dolibarr
 * Charte graphique Jennifer PERROT-GAUTIER © 2026
 * Tous droits réservés — Propriété intellectuelle de Jennifer PERROT-GAUTIER
 */

:root {
    /* === PALETTE EASYCALL === */
    --lf-top-menu:      #6a52b3;   /* Menu haut */
    --lf-left-menu:     #ede8f8;   /* Menu gauche */
    --lf-bg:            #f7f5fc;   /* Fond général */
    --lf-title:         #5a3fa0;   /* Texte titre page */
    --lf-thead-bg:      #ddd7f5;   /* Fond en-têtes tableau */
    --lf-thead-txt:     #3d2b7a;   /* Texte titre tableau */
    --lf-link-th:       #7a60c4;   /* Liens titre tableau */
    --lf-row-odd:       #ffffff;   /* Lignes impaires */
    --lf-row-even:      #f0ecfb;   /* Lignes paires */
    --lf-link:          #7a60c4;   /* Couleur liens */
    --lf-hover:         #dbd3f7;   /* Survol ligne */
    --lf-checked:       #c9bee8;   /* Ligne cochée */
    --lf-btn:           #9c85d4;   /* Bouton action */
    --lf-btn-txt:       #ffffff;   /* Texte bouton */

    /* Sémantiques CRM */
    --lf-ok:            #1a7a4a;
    --lf-ok-bg:         #eafaf1;
    --lf-warn:          #7a5500;
    --lf-warn-bg:       #fef9e7;
    --lf-err:           #c0392b;
    --lf-err-bg:        #fee2e2;
    --lf-border:        #cdc5ec;
    --lf-card:          #ffffff;

    /* Statuts prospect */
    --lf-new:           #5a3fa0;
    --lf-new-bg:        #f0ecfb;
    --lf-contact:       #1a5a8a;
    --lf-contact-bg:    #e6f0fa;
    --lf-rdv:           #7a5500;
    --lf-rdv-bg:        #fef9e7;
    --lf-valide:        #1a7a4a;
    --lf-valide-bg:     #eafaf1;
    --lf-perdu:         #888;
    --lf-perdu-bg:      #f5f5f5;
}

/* ─── STRUCTURE GÉNÉRALE ────────────────────────────────────── */

.easycall-page { max-width: 1200px; }

/* ─── MENU HAUT ─────────────────────────────────────────────── */

.llxheader,
div.mainmenu-easycall {
    background: var(--lf-top-menu) !important;
}
.llxheader a,
.llxheader span,
.llxheader .login_block a {
    color: rgba(255,255,255,0.88) !important;
}
.llxheader a:hover { color: #ffffff !important; }

/* ─── MENU GAUCHE ───────────────────────────────────────────── */

#id-left,
.blockvmenu,
.blockvmenupair,
.blockvmenuimpair,
.blockvmenulast,
.blockvmenufirst,
.blockvmenuend,
.menu_contenu {
    background: var(--lf-left-menu) !important;
    border-color: var(--lf-border) !important;
}
#id-left a,
#id-left span,
a.vmenu { color: var(--lf-link) !important; }

#id-left a:hover { color: var(--lf-thead-txt) !important; background: var(--lf-hover) !important; }

.vmenusel .menu_titre,
.vmenusel .menu_titre a {
    color: var(--lf-top-menu) !important;
    background: var(--lf-checked) !important;
    border-left: 3px solid var(--lf-top-menu) !important;
}

/* ─── FOND GÉNÉRAL ───────────────────────────────────────────── */

#id-right,
.id-container-page,
.fiche,
.fichecenter,
.div-table-responsive,
.centpercent,
.tabBar {
    background: var(--lf-bg) !important;
}

/* ─── TITRES DE PAGE ─────────────────────────────────────────── */

h1, .titre, .titremodule { color: var(--lf-title) !important; }
h2, h3 { color: var(--lf-thead-txt) !important; }

/* ─── TABLEAUX ───────────────────────────────────────────────── */

.liste_titre th,
tr.liste_titre th {
    background: var(--lf-thead-bg) !important;
    color: var(--lf-thead-txt) !important;
    border-color: var(--lf-border) !important;
    font-weight: 700;
}
.liste_titre th a,
tr.liste_titre th a { color: var(--lf-link-th) !important; text-decoration: none; }
.liste_titre th a:hover { text-decoration: underline; }

tr.oddeven, tr.impair { background: var(--lf-row-odd) !important; }
tr.pair               { background: var(--lf-row-even) !important; }

tr.oddeven:hover,
tr.pair:hover,
tr.impair:hover { background: var(--lf-hover) !important; }

tr.highlight,
tr.tagtr.selected { background: var(--lf-checked) !important; }

td, th { color: #2d2060 !important; border-color: var(--lf-border) !important; }

a { color: var(--lf-link) !important; }
a:hover { color: var(--lf-title) !important; }

/* ─── BOUTONS ────────────────────────────────────────────────── */

.butAction,
input[type="submit"],
button.btn-primary,
.lf-btn {
    background: var(--lf-btn) !important;
    color: var(--lf-btn-txt) !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 7px 16px !important;
    font-weight: 700 !important;
    cursor: pointer;
    transition: background .15s;
}
.butAction:hover,
input[type="submit"]:hover,
.lf-btn:hover { background: var(--lf-top-menu) !important; }

.butActionRefused {
    background: #e0daf5 !important;
    color: #9c85d4 !important;
    cursor: not-allowed !important;
}

/* ─── DASHBOARD KPI ──────────────────────────────────────────── */

.lf-kpi-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 14px;
    margin-bottom: 24px;
}

.lf-kpi-card {
    background: var(--lf-card);
    border: 1.5px solid var(--lf-border);
    border-radius: 10px;
    padding: 16px 18px;
    text-align: center;
}
.lf-kpi-label {
    font-size: .78em;
    color: #8070b0;
    text-transform: uppercase;
    letter-spacing: .05em;
    margin-bottom: 6px;
}
.lf-kpi-value {
    font-size: 1.8em;
    font-weight: 800;
    color: var(--lf-title);
    line-height: 1.1;
}
.lf-kpi-sub {
    font-size: .78em;
    color: #8070b0;
    margin-top: 4px;
}
.lf-kpi-card.accent { background: var(--lf-top-menu); border-color: var(--lf-top-menu); }
.lf-kpi-card.accent .lf-kpi-label,
.lf-kpi-card.accent .lf-kpi-value,
.lf-kpi-card.accent .lf-kpi-sub { color: rgba(255,255,255,0.9); }

/* ─── CARTE PROSPECT ─────────────────────────────────────────── */

.lf-prospect-card {
    background: var(--lf-card);
    border: 1.5px solid var(--lf-border);
    border-radius: 10px;
    padding: 14px 18px;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 14px;
    transition: box-shadow .15s, border-color .15s;
}
.lf-prospect-card:hover {
    box-shadow: 0 4px 14px rgba(106,82,179,.12);
    border-color: var(--lf-top-menu);
}

.lf-prospect-avatar {
    width: 40px; height: 40px;
    background: var(--lf-thead-bg);
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-weight: 800; font-size: .88em;
    color: var(--lf-title);
    flex-shrink: 0;
}

.lf-prospect-name { font-weight: 700; color: var(--lf-title); font-size: .95em; }
.lf-prospect-tel  { font-size: .82em; color: #8070b0; margin-top: 2px; }

/* ─── BADGES STATUTS PROSPECT ────────────────────────────────── */

.lf-badge {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: .76em;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
    white-space: nowrap;
}
.lf-badge-new     { background: var(--lf-new-bg);     color: var(--lf-new); }
.lf-badge-contact { background: var(--lf-contact-bg); color: var(--lf-contact); }
.lf-badge-rdv     { background: var(--lf-rdv-bg);     color: var(--lf-rdv); }
.lf-badge-valide  { background: var(--lf-valide-bg);  color: var(--lf-valide); }
.lf-badge-perdu   { background: var(--lf-perdu-bg);   color: var(--lf-perdu); }
.lf-badge-avoir   { background: #fee2e2; color: #c0392b; }

/* ─── BARRE D'APPEL (CALL CENTER) ────────────────────────────── */

.lf-callbar {
    background: var(--lf-top-menu);
    color: #fff;
    border-radius: 10px;
    padding: 14px 20px;
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 20px;
    flex-wrap: wrap;
}
.lf-callbar-name  { font-weight: 800; font-size: 1.05em; }
.lf-callbar-tel   { font-size: .9em; opacity: .85; }
.lf-callbar-timer { font-size: 1.2em; font-weight: 700; letter-spacing: .08em; margin-left: auto; }

.lf-callbar-btn {
    background: rgba(255,255,255,.18);
    color: #fff;
    border: 1.5px solid rgba(255,255,255,.4);
    border-radius: 6px;
    padding: 6px 14px;
    font-size: .85em;
    font-weight: 700;
    cursor: pointer;
    transition: background .15s;
}
.lf-callbar-btn:hover { background: rgba(255,255,255,.3); color: #fff !important; }
.lf-callbar-btn.success { background: #27ae60; border-color: #27ae60; }
.lf-callbar-btn.danger  { background: #e74c3c; border-color: #e74c3c; }

/* ─── PLANNING / AGENDA ──────────────────────────────────────── */

.lf-rdv-slot {
    background: var(--lf-left-menu);
    border-left: 4px solid var(--lf-btn);
    border-radius: 0 8px 8px 0;
    padding: 10px 14px;
    margin-bottom: 8px;
    cursor: pointer;
    transition: background .15s;
}
.lf-rdv-slot:hover { background: var(--lf-hover); }
.lf-rdv-slot.valide { border-left-color: #27ae60; }
.lf-rdv-slot.annule { border-left-color: #e74c3c; opacity: .7; }

.lf-rdv-time   { font-weight: 700; color: var(--lf-title); font-size: .9em; }
.lf-rdv-client { font-size: .85em; color: #8070b0; margin-top: 2px; }

/* ─── CAMPAGNES ──────────────────────────────────────────────── */

.lf-campaign-card {
    background: var(--lf-card);
    border: 1.5px solid var(--lf-border);
    border-radius: 10px;
    padding: 16px 20px;
    margin-bottom: 12px;
}
.lf-campaign-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
}
.lf-campaign-name { font-weight: 700; color: var(--lf-title); font-size: 1em; }

.lf-progress {
    background: var(--lf-left-menu);
    border-radius: 20px;
    height: 7px;
    overflow: hidden;
    margin-top: 8px;
}
.lf-progress-fill {
    height: 100%;
    background: var(--lf-btn);
    border-radius: 20px;
    transition: width .4s ease;
}

/* ─── INPUTS / FORMULAIRES ───────────────────────────────────── */

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="date"],
input[type="number"],
select,
textarea {
    border: 1px solid var(--lf-border) !important;
    border-radius: 6px !important;
    background: #fff !important;
    color: #2d2060 !important;
}
input:focus, select:focus, textarea:focus {
    outline: none !important;
    border-color: var(--lf-btn) !important;
    box-shadow: 0 0 0 2px rgba(156,133,212,.2) !important;
}

/* ─── DARK MODE (héritage Easycall) ──────────────────────── */

body.easycall-dark {
    --lf-bg:         #08121a;
    --lf-card:       #0d1e28;
    --lf-left-menu:  #060e14;
    --lf-thead-bg:   #0a1e2a;
    --lf-row-odd:    #08121a;
    --lf-row-even:   #0d1e28;
    --lf-hover:      #112233;
    --lf-checked:    #1a2e42;
    --lf-border:     #1e4a5a;
    background: #08121a;
    color: #d0d8f8;
}
body.easycall-dark td,
body.easycall-dark th { color: #d0d8f8 !important; }
body.easycall-dark a  { color: #a898e8 !important; }
body.easycall-dark h1,
body.easycall-dark h2 { color: #c0b0f8 !important; }

/* ─── ICÔNE MENU PRINCIPAL ───────────────────────────────────── */

div.mainmenu.easycall span::before {
    content: "\f590" !important;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

/* ─── COPYRIGHT ──────────────────────────────────────────────── */
/* EasyCall — Jennifer PERROT-GAUTIER © 2026 — Tous droits réservés */
