/* ==========================================================================
   WhatsApp Page  —  v2.2.0 (2026-08-27; "Traité hors appel" band added)
   Cold-outreach WhatsApp campaign reporting.

   v1.0.0 styled an editable 389-row list (status <select>, "Converti"
   checkbox, notes <input>). That page is gone: the tab is read-only now, so
   every editable-control rule was deleted rather than left orphaned.
   What survives is the Zoho origin badge palette, which the origin table
   still uses.

   Layout/KPI styling is deliberately NOT redefined here — the page reuses
   .sales-summary-item--big / --good / --bad / --accent and
   .rdv-leads-chart-box from css/components/leads.css (effectively global,
   only one #page-leads selector in the whole file) so the two report pages
   stay visually identical instead of drifting apart.
   ========================================================================== */

/* --------------------------------------------------------------------------
   Zoho origin badge — was this number already known to Zoho when the campaign
   was built? Colour language matches the rest of the app: blue = new, amber =
   an existing Lead, green = an existing Contact (warmest), red = unexpected
   value we didn't plan for.
   -------------------------------------------------------------------------- */
.zoho-status-badge {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
}

.zoho-status-badge.new {
    background: rgba(42, 120, 214, .12);
    color: #246abd;
}

.zoho-status-badge.lead {
    background: rgba(217, 119, 6, .12);
    color: #B45309;
}

.zoho-status-badge.contact {
    background: rgba(16, 185, 129, .12);
    color: #0d9668;
}

/* Any zoho_status the import produced that this page doesn't know about.
   Shown in red rather than hidden — an unrecognised value is a data signal. */
.zoho-status-badge.unknown {
    background: rgba(227, 73, 72, .10);
    color: #C43B3A;
}

/* --------------------------------------------------------------------------
   Call-window caption under the KPI row.
   The derived figures are only true within the call window actually loaded,
   so that window is printed instead of assumed. .sms-window-warn is the
   "no call data loaded at all" case, where "0 appelés" would be misleading.
   -------------------------------------------------------------------------- */
.sms-window-note {
    margin: 12px 0 0;
    font-size: 13px;
    color: var(--gray-500, #6b7280);
    font-style: italic;
}

.sms-window-note.sms-window-warn {
    color: #C43B3A;
    font-style: normal;
    font-weight: 600;
}

/* --------------------------------------------------------------------------
   Per-seller table
   -------------------------------------------------------------------------- */
#smsVendorTable td.sms-vendor-cell {
    font-weight: 600;
    white-space: nowrap;
}

/* The row matching the seller filter, so picking one in the dropdown keeps
   them findable in the full comparison table (which never filters down —
   otherwise the comparison would have nothing left to compare against). */
#smsVendorTable tr.sms-vendor-row--active {
    background: rgba(79, 70, 229, .06);
}

/* Rate colour language shared with the chart: green / amber / red at the same
   70% and 40% thresholds used by the Leads vendor chart. */
.sms-rate-good { color: #10B981; font-weight: 700; }
.sms-rate-mid  { color: #B45309; font-weight: 700; }
.sms-rate-bad  { color: #DC2626; font-weight: 700; }

/* Leads still owed a first call — the actionable number on the page. */
#smsVendorTable td.sms-remaining-open {
    font-weight: 700;
    color: var(--gray-900, #0F172A);
}

/* Worked through a channel Ringover cannot see — a Zoho tag ("Messagerie"),
   a note, a conversion. Amber: real work, but not a call, so it reads as
   distinct from both "appelé" and "jamais touché". */
#smsVendorTable td.sms-treated-other {
    font-weight: 700;
    color: #B45309;
}

/* Share of this seller's leads that belong to the NEWEST batch (still 100%
   un-worked by definition). Tinted, not bolded like `remaining` above: it is the
   fresh dispatch to be aware of, not the overdue pile to act on today. */
#smsVendorTable td.sms-fresh-open {
    font-weight: 700;
    color: #2563EB;
}

/* --------------------------------------------------------------------------
   Origin table
   -------------------------------------------------------------------------- */
#smsZohoTable td {
    white-space: nowrap;
}

@media (max-width: 768px) {
    .sms-window-note {
        font-size: 12px;
    }
}
