/* ============================================================
   Finacalein Modern Theme — dark sidebar / light content
   Loaded globally via includes/header.php + website_header.php
============================================================ */
:root{
    --fi-primary:#0f2a6b;
    --fi-primary-2:#1a3a8a;
    --fi-primary-3:#1743c0;
    --fi-ink:#1f2937;
    --fi-muted:#6b7280;
    --fi-border:#e6eaf2;
    --fi-bg:#f3f6fb;
    --fi-radius:14px;
    --fi-shadow:0 6px 24px rgba(20,35,60,.07);
    --fi-shadow-hover:0 12px 32px rgba(20,35,60,.12);
}

/* ---------- Content backdrop ---------- */
body{
    background:var(--fi-bg) !important;
    font-family:'Segoe UI',system-ui,-apple-system,sans-serif !important;
}

/* ---------- Top navbar ---------- */
.navbar.navbar-dark#mainNav{background:transparent !important;box-shadow:none !important;}

/* ---------- Sidebar (all portals) ---------- */
.sidebar{
    background:#ffffff !important;
    border-right:1px solid #e2e8f0 !important;
}
.sidebar .small{color:#64748b !important;}
.sidebar p.small{color:#64748b !important;}
.sidebar p.small[style*="color:#0d6efd"]{color:#64748b !important;}
.sidebar-toggle{
    color:#64748b !important;
    border-radius:6px !important;
    margin:2px 6px;
    transition:all .15s ease;
}
.sidebar-toggle:hover{
    background:#f8fafc !important;
    color:#0f172a !important;
    transform:translateX(2px);
}
.sidebar a{color:#64748b !important;text-decoration:none;}
.sidebar a:hover{color:#0f172a !important;background:#f8fafc !important;}
.sidebar .sub-link{color:#64748b !important;}
.sidebar .sub-link:hover{color:#0f172a !important;background:#f8fafc !important;}
.sidebar .sub-link.active{color:#0f172a !important;background:#f1f5f9 !important;font-weight:600 !important;}
.sidebar .sidebar-group .sidebar-toggle .fa-chevron-down{color:#94a3b8;}
.sidebar::-webkit-scrollbar-thumb{background:#0878ff;border-radius:10px;}
.sidebar::-webkit-scrollbar-track{background:transparent;}
.sidebar .blink-badge{background:#0878ff;}

/* ---------- Cards ---------- */
.card,.dashboard-card,.table-card{
    border:1px solid var(--fi-border) !important;
    border-radius:var(--fi-radius) !important;
    box-shadow:var(--fi-shadow) !important;
}
.stat-card{
    border:1px solid var(--fi-border) !important;
    border-radius:var(--fi-radius) !important;
    box-shadow:var(--fi-shadow) !important;
    transition:transform .2s ease,box-shadow .2s ease !important;
}
.stat-card:hover{transform:translateY(-3px);box-shadow:var(--fi-shadow-hover) !important;}
.stat-card .stat-number{color:var(--fi-primary) !important;}

/* ---------- Tables ---------- */
.table{--bs-table-hover-bg:#f2f6ff;}
.table thead th{
    background:#0f2a6b !important;
    color:#fff !important;
    font-weight:600;
    font-size:12.5px;
    text-transform:uppercase;
    letter-spacing:.4px;
    border:none !important;
}
.table th, .table td{vertical-align:middle;border-color:var(--fi-border) !important;}
.table-hover tbody tr:hover{background:#f2f6ff !important;}
.table-responsive{border-radius:var(--fi-radius);}

/* ---------- Buttons ---------- */
.btn{border-radius:9px;font-weight:600;}
.btn-primary{background:linear-gradient(135deg,#0f2a6b,#1743c0);border:none;}
.btn-primary:hover{filter:brightness(1.12);box-shadow:0 6px 18px rgba(15,42,107,.28);}
.btn-outline-primary{border-color:#1743c0;color:#1743c0;}
.btn-outline-primary:hover{background:#1743c0;border-color:#1743c0;}
.btn-outline-secondary,.btn-outline-success,.btn-outline-danger{border-radius:9px;}

/* ---------- Forms ---------- */
.form-control,.form-select{
    border:1.5px solid #d7dbe6 !important;
    border-radius:10px !important;
    padding:10px 14px;
}
.form-control:focus,.form-select:focus{
    border-color:#1743c0 !important;
    box-shadow:0 0 0 3px rgba(23,67,192,.13) !important;
}
.form-label{font-weight:600;color:#344054;}

/* ---------- Alerts ---------- */
.alert{border-radius:10px;border:none;}

/* ---------- Admin hero / page titles ---------- */
.admin-hero{background:#0878ff;border-radius:16px;}
h2,h3,h4,h5{color:var(--fi-ink);}

/* ---------- Public site polish ---------- */
.top-bar{background:#0353C0;}
.hero{background:#0878ff;}
.hero::after{background:radial-gradient(circle,rgba(255,255,255,.12) 0%,transparent 70%);}
/* ---------- Admin buttons (uniform blue) ---------- */
.btn-primary,.btn-outline-primary,.btn-outline-secondary{
    background:#0878ff !important;
    border-color:#0878ff !important;
    color:#fff !important;
}
.btn-primary:hover,.btn-primary:focus,.btn-primary:active,
.btn-outline-primary:hover,.btn-outline-primary:focus,.btn-outline-primary:active,.btn-outline-secondary:hover,.btn-outline-secondary:focus,.btn-outline-secondary:active{
    background:#0069e0 !important;
    border-color:#0069e0 !important;
    color:#fff !important;
    box-shadow:0 2px 8px rgba(8,120,255,.3) !important;
}
.btn-primary.disabled,.btn-primary:disabled,.btn-outline-primary.disabled,.btn-outline-primary:disabled{
    background:#7fb8ff !important;border-color:#7fb8ff !important;color:#fff !important;
}
.btn,.btn-sm,.btn-lg{border-radius:8px;}

/* Click-to-call on leads */.fi-call-link{display:inline-flex;align-items:center;gap:6px;color:#0878ff;font-weight:600;text-decoration:none;padding:3px 10px;border:1px solid #bfdbfe;background:#eff6ff;border-radius:6px;font-size:12px;transition:all .15s ease;white-space:nowrap;}.fi-call-link:hover{background:#0878ff;color:#fff;border-color:#0878ff;}.fi-call-link i{font-size:11px;}
/* Call tools (dial / record / play) */.fi-call-tools{display:inline-flex;gap:5px;align-items:center;}.fi-call-btn{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;border-radius:50%;color:#64748b;background:#fff;border:1px solid #e2e8f0;text-decoration:none;font-size:11px;transition:all .15s ease;}.fi-call-btn:hover{background:#0878ff;color:#fff;border-color:#0878ff;text-decoration:none;}.fi-call-btn.has-rec{color:#16a34a;border-color:#bbf7d0;background:#f0fdf4;}.fi-call-dl.has-rec{color:#0878ff;border-color:#bfdbfe;background:#eff6ff;}.fi-call-badge{display:inline-block;font-size:10px;font-weight:700;color:#166534;background:#dcfce7;border:1px solid #bbf7d0;border-radius:999px;padding:2px 8px;letter-spacing:.2px;white-space:nowrap;cursor:pointer;}.fi-rec-ind[hidden]{display:none}.fi-rec-ind{display:inline-flex;align-items:center;gap:4px;font-size:9px;font-weight:800;letter-spacing:.8px;color:#fff;background:#dc2626;border-radius:999px;padding:2px 7px;animation:fiRecBlink .9s steps(1,end) infinite;}.fi-rec-ind i{font-size:7px;color:#fff;}@keyframes fiRecBlink{0%,49%{opacity:1;}50%,100%{opacity:.25;}}