﻿/* ═══════════════════════════════════════════════════════════════
   YABOX v3498 — Confirmation principal : panneau droit TOUJOURS lisible
   CAUSE RACINE (prouvée par test Node 7/7 — le JS génère 13k+ chars) :
   en thème sombre, les tokens texte (--text → blanc) rencontrent le
   fond BLANC forcé par mobile-first-v3418.css (background:var(--white,#fff)
   !important) → texte blanc sur fond blanc = sections "vides".
   FIX : couleurs LITTÉRALES (hex) dans #cai-detail, indépendantes du
   thème. Les styles inline colorés (tags, badges) gardent la priorité.
   ═══════════════════════════════════════════════════════════════ */

/* 0. Fond du détail : clair, déterministe, tous thèmes */
#cai-detail, #cai-detail .cai-detail-body {
  background: #FFFFFF !important;
}

/* V3498f : CSS officiel du module Confirmation.
   Anciennement injecte par confirmation.core.js. Aucun style runtime ne doit
   redefinir ces bases apres le chargement de cette feuille. */
:root {
  --ca-purple: #743e8f;
  --ca-gold: #fbbb30;
}
.cai-wrap {
  display: flex;
  height: 100%;
  background: var(--bg);
  font-family: inherit;
}
#cai-root {
  display: flex;
  height: calc(100vh - 84px);
  min-height: 0;
  overflow: hidden;
  background: var(--bg);
  font-family: inherit;
}
.cai-sidebar,
.cai-sb {
  width: 220px;
  flex-shrink: 0;
  border-right: 1px solid var(--border);
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  background: var(--white);
}
.cai-sb { height: 100%; }
.cai-main {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
}
.cai-kbar {
  flex-shrink: 0;
  padding: 8px 12px;
  border-bottom: 1px solid var(--border);
  background: var(--white);
}
.cai-content {
  display: flex;
  flex: 1;
  min-height: 0;
  overflow: hidden;
}
.cai-list,
#cai-list.cai-list {
  flex: 1;
  overflow-y: auto;
  padding: 10px;
  min-width: 0;
  background: var(--bg);
}
.cai-detail,
#cai-detail.cai-detail {
  width: 360px;
  flex-shrink: 0;
  height: 100%;
  min-height: 0;
  max-height: 100%;
  border-left: 1px solid var(--border);
  display: flex;
  flex-direction: column;
  overflow-y: auto !important;
  overflow-x: visible !important;
  background: var(--white);
}
.cai-detail-hdr {
  padding: 14px 16px 10px;
  border-bottom: 1px solid var(--border);
  flex-shrink: 0;
  background: var(--white);
}
.cai-detail-body {
  flex: 0 0 auto;
  min-height: 0;
  overflow-y: visible;
  overflow-x: visible;
  padding: 12px 14px;
}

@media (min-width: 901px) {
  .cai-content {
    align-items: flex-start;
    overflow-y: auto;
    overflow-x: hidden;
  }
  .cai-list,
  #cai-list.cai-list {
    align-self: stretch;
    max-height: 100%;
  }
  .cai-detail,
  #cai-detail.cai-detail {
    align-self: flex-start;
    height: auto;
    min-height: 100%;
    max-height: none;
    overflow-y: visible !important;
  }
}
.cai-sb-sec {
  padding: 6px 12px 4px;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--ca-purple);
  opacity: .7;
}
.cai-sb-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 7px 12px;
  cursor: pointer;
  border-radius: 0;
  border: none;
  background: transparent;
  width: 100%;
  font-size: 12px;
  color: var(--text);
  transition: background .12s;
}
.cai-sb-item:hover { background: var(--bg); }
.cai-sb-item.active {
  background: #F3ECF7;
  color: var(--ca-purple);
  font-weight: 700;
  border-left: 2.5px solid var(--ca-purple);
}
.cai-sb-icon { width: 18px; flex-shrink: 0; }
.cai-sb-lbl { flex: 1; text-align: left; }
.cai-sb-count {
  font-size: 11px;
  font-weight: 800;
  min-width: 24px;
  text-align: right;
  color: inherit;
  opacity: .8;
}
.cai-card {
  border: 1.5px solid var(--border);
  border-left: 3px solid var(--ca-purple);
  border-radius: 10px;
  padding: 10px 12px;
  margin-bottom: 6px;
  cursor: pointer;
  background: var(--white);
  transition: all .12s;
}
.cai-card:hover {
  border-color: var(--ca-purple);
  transform: translateX(2px);
  box-shadow: 0 2px 8px rgba(116, 62, 143, .12);
}
.cai-card.selected {
  border-color: var(--ca-purple);
  background: #FAF7FC;
  box-shadow: 0 2px 12px rgba(116, 62, 143, .15);
}
.cai-tag {
  display: inline-block;
  padding: 1px 6px;
  border-radius: 10px;
  font-size: 10px;
  font-weight: 700;
}
.city-dropdown {
  position: absolute;
  z-index: 200;
  background: var(--white);
  border: 1.5px solid var(--border);
  border-radius: 8px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .12);
  max-height: 200px;
  overflow-y: auto;
  min-width: 200px;
}
.city-opt {
  padding: 8px 12px;
  cursor: pointer;
  font-size: 12px;
  border-bottom: 1px solid var(--border);
}
.city-opt:hover {
  background: #F7F0FA;
  color: var(--ca-purple);
}
.city-opt .city-sla {
  font-size: 10px;
  color: var(--text2);
  margin-top: 2px;
}
@media (max-width: 900px) {
  #cai-detail.cai-detail { display: none; }
  .cai-sb { width: 180px; }
}
@media (max-width: 600px) {
  .cai-sb { display: none; }
}

/* 1. Sections et corps : jamais masqués */
#cai-detail .cai-section,
#cai-detail .cai-section .sec-body {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  max-height: none !important;
  height: auto !important;
}

/* 2. Texte : couleurs LITTÉRALES — anti blanc-sur-blanc.
      Les styles inline (color:#...) des tags/badges gagnent toujours. */
#cai-detail .cai-detail-body,
#cai-detail .sec-body {
  color: #1E293B !important;
}
#cai-detail .sec-lbl   { color: #0F172A !important; }
#cai-detail .flbl      { color: #64748B !important; }
#cai-detail .sec-body a:not([style*="color"]) { color: #743e8f; }

/* 3. Inputs/textarea/select du détail : lisibles, tous thèmes */
#cai-detail input, #cai-detail textarea, #cai-detail select,
#cai-detail .yabox-input {
  color: #0F172A !important;
  background: #FFFFFF !important;
  border-color: #E2E8F0 !important;
}
#cai-detail input::placeholder, #cai-detail textarea::placeholder {
  color: #94A3B8 !important;
}

/* 4. Cart items / blocs gris : texte sombre garanti */
#cai-detail .ca-cart-item, #cai-detail .ca-cart-item * {
  color: #1E293B;
}

/* 5. Commande chargée (.cai-style-a) : neutralise le masquage mobile
      "mobile-detail-empty" (MutationObserver textuel faillible) */
#cai-detail.cai-style-a.mobile-detail-empty,
.cai-detail.cai-style-a.mobile-detail-empty {
  display: block !important;
}

/* 6. Mobile : détail visible et scrollable */
@media (max-width: 768px) {
  #cai-detail.cai-style-a { display: block !important; }
  #cai-detail .cai-detail-body { display: block !important; }
}

/* 7. Fold BI : marqueur accessible, flèche neutre */
#cai-detail .sec-lbl span:last-child { opacity: .3; }

/* 8. V3498 : contenu critique visible sans dependance a un accordéon ferme */
#cai-detail .cai-section .sec-body,
#cai-detail .cai-fold,
#cai-detail .cai-fold .cai-fold-body,
#cai-detail .ca-visible-summary {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  max-height: none !important;
  height: auto !important;
  overflow: visible !important;
}
#cai-detail .cai-fold-body,
#cai-detail .ca-visible-summary,
#cai-detail .ca-visible-summary * {
  color: #1E293B !important;
}
#cai-detail .ca-visible-summary {
  display: grid !important;
  gap: 6px !important;
  margin: 0 0 10px !important;
  padding: 10px !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 10px !important;
  background: #F8FAFC !important;
}
#cai-detail .ca-visible-row {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 10px !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}
#cai-detail .ca-visible-k {
  flex: 0 0 auto !important;
  color: #64748B !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  font-size: 10px !important;
}
#cai-detail .ca-visible-v {
  min-width: 0 !important;
  color: #1E293B !important;
  font-weight: 700 !important;
  text-align: right !important;
  white-space: normal !important;
  overflow: visible !important;
}
#cai-detail .ca-visible-v.strong,
#cai-detail .ca-visible-note {
  color: #0F172A !important;
  font-weight: 900 !important;
}

/* V3498e : nouveau panneau droit Confirmation fixe, sans accordéon ni placeholder. */
#cai-detail .ca-fixed-panel {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
  flex: 0 0 auto !important;
  padding: 0 !important;
  color: #0F172A !important;
}
#cai-detail .ca-fixed-card {
  display: block !important;
  flex: 0 0 auto !important;
  padding: 14px !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 12px !important;
  background: #FFFFFF !important;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .04) !important;
}
#cai-detail .ca-fixed-title {
  margin: 0 0 10px !important;
  color: #0F172A !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
}
#cai-detail .ca-fixed-content {
  display: grid !important;
  gap: 7px !important;
}
#cai-detail .ca-fixed-row {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  gap: 12px !important;
  min-height: 20px !important;
}
#cai-detail .ca-fixed-k {
  flex: 0 0 auto !important;
  color: #64748B !important;
  font-size: 11px !important;
  font-weight: 800 !important;
}
#cai-detail .ca-fixed-v {
  min-width: 0 !important;
  color: #0F172A !important;
  font-size: 12px !important;
  font-weight: 750 !important;
  text-align: right !important;
  white-space: normal !important;
}
#cai-detail .ca-fixed-v.strong {
  font-weight: 950 !important;
}
#cai-detail .ca-fixed-actions {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
}
#cai-detail .ca-fixed-action {
  min-height: 38px !important;
  padding: 8px 10px !important;
  border: 1px solid var(--ca-action-color, #743e8f) !important;
  border-radius: 9px !important;
  background: var(--ca-action-color, #743e8f) !important;
  color: #FFFFFF !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  cursor: pointer !important;
}
#cai-detail .ca-fixed-action.ghost {
  background: #FFFFFF !important;
  color: var(--ca-action-color, #64748B) !important;
}
#cai-detail .ca-fixed-action:disabled {
  background: #F1F5F9 !important;
  border-color: #CBD5E1 !important;
  color: #64748B !important;
  cursor: not-allowed !important;
}
#cai-detail .ca-fixed-warning,
#cai-detail .ca-fixed-notice {
  grid-column: 1 / -1 !important;
  padding: 9px 10px !important;
  border-radius: 9px !important;
  font-size: 12px !important;
  font-weight: 850 !important;
}
#cai-detail .ca-fixed-warning {
  background: #FFF7ED !important;
  border: 1px solid #FDBA74 !important;
  color: #9A3412 !important;
}
#cai-detail .ca-fixed-notice {
  background: #EFF6FF !important;
  border: 1px solid #BFDBFE !important;
  color: #1D4ED8 !important;
}

/* V3499 : poste agent COD compact, informations critiques visibles en premier. */
#cai-detail .ca-agent-console {
  gap: 6px !important;
}
#cai-detail .ca-agent-console .ca-fixed-card {
  padding: 8px 10px !important;
  border-radius: 9px !important;
}
#cai-detail .ca-agent-console .ca-fixed-title {
  margin-bottom: 5px !important;
  font-size: 10px !important;
}
#cai-detail .ca-agent-console .ca-fixed-content {
  gap: 4px !important;
}
#cai-detail .ca-agent-client-name {
  color: #0F172A !important;
  font-size: 15px !important;
  line-height: 1.15 !important;
  font-weight: 950 !important;
}
#cai-detail .ca-agent-phone {
  margin-top: 2px !important;
  color: #743E8F !important;
  font-size: 21px !important;
  line-height: 1.05 !important;
  font-weight: 950 !important;
  font-family: "DM Mono", ui-monospace, SFMono-Regular, Menlo, monospace !important;
}
#cai-detail .ca-agent-meta {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 4px !important;
  margin-top: 5px !important;
}
#cai-detail .ca-agent-meta span,
#cai-detail .ca-status-pill {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 18px !important;
  padding: 1px 6px !important;
  border-radius: 999px !important;
  background: #F8FAFC !important;
  color: #334155 !important;
  border: 1px solid #E2E8F0 !important;
  font-size: 10px !important;
  font-weight: 850 !important;
}
#cai-detail .ca-status-pill {
  background: color-mix(in srgb, var(--ca-status-color, #64748B) 12%, #FFFFFF) !important;
  border-color: color-mix(in srgb, var(--ca-status-color, #64748B) 35%, #E2E8F0) !important;
  color: var(--ca-status-color, #64748B) !important;
}
#cai-detail .ca-agent-quickbar {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 5px !important;
  margin-top: 6px !important;
}
#cai-detail .ca-agent-quick {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 30px !important;
  padding: 6px 7px !important;
  border-radius: 8px !important;
  border: 1px solid #CBD5E1 !important;
  background: #FFFFFF !important;
  color: #0F172A !important;
  font-size: 11.5px !important;
  font-weight: 900 !important;
  text-decoration: none !important;
  cursor: pointer !important;
}
#cai-detail .ca-agent-quick.call {
  background: #ECFDF5 !important;
  border-color: #A7F3D0 !important;
  color: #047857 !important;
}
#cai-detail .ca-agent-quick.wa {
  background: #F0FDF4 !important;
  border-color: #BBF7D0 !important;
  color: #15803D !important;
}
#cai-detail .ca-agent-quick.copy {
  background: #F8FAFC !important;
}
#cai-detail .ca-agent-quick:disabled {
  opacity: .5 !important;
  cursor: not-allowed !important;
}
#cai-detail .ca-primary-actions {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 5px !important;
}
#cai-detail .ca-primary-actions .ca-fixed-action,
#cai-detail .ca-agent-console .ca-ship-main,
#cai-detail .ca-agent-console .ca-note-actions .ca-fixed-action {
  min-height: 29px !important;
  padding: 6px 7px !important;
  border-radius: 7px !important;
  font-size: 10.5px !important;
}
#cai-detail .ca-agent-console .ca-fixed-row {
  min-height: 15px !important;
  gap: 7px !important;
}
#cai-detail .ca-agent-console .ca-fixed-k,
#cai-detail .ca-agent-console .ca-fixed-v {
  font-size: 10.5px !important;
  line-height: 1.18 !important;
}
#cai-detail .ca-agent-console .ca-fixed-v.strong {
  font-size: 11.5px !important;
}
#cai-detail .ca-agent-console .ca-ship-main {
  width: 100% !important;
  margin-top: 4px !important;
}
#cai-detail .ca-note-actions {
  display: grid !important;
  gap: 5px !important;
  margin-top: 3px !important;
}
#cai-detail .ca-history-line {
  padding: 6px 7px !important;
  border-radius: 7px !important;
  background: #F8FAFC !important;
  border: 1px solid #E2E8F0 !important;
  color: #475569 !important;
  font-size: 10.5px !important;
  font-weight: 750 !important;
}

@media (min-width: 901px) {
  #cai-kbar.cai-kbar {
    padding: 5px 8px !important;
  }
  #cai-kbar .kpi {
    padding: 7px 9px !important;
    min-height: 48px !important;
    border-radius: 9px !important;
  }
  #cai-kbar .kpil {
    font-size: 8.5px !important;
    line-height: 1.1 !important;
  }
  #cai-kbar .kpiv {
    font-size: 17px !important;
    line-height: 1.05 !important;
    margin-top: 2px !important;
  }
  #cai-kbar .kpi-sub,
  #cai-kbar .kpi-icon {
    display: none !important;
  }
  #cai-detail .cai-detail-body {
    padding: 6px 8px !important;
  }
}

@media (min-width: 1200px) {
  .cai-detail,
  #cai-detail.cai-detail {
    width: min(560px, 42vw) !important;
  }
  #cai-detail .ca-agent-console {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: start !important;
  }
  #cai-detail .ca-agent-console .client,
  #cai-detail .ca-agent-console .actions {
    grid-column: 1 / -1 !important;
  }
  #cai-detail .ca-agent-console .ca-fixed-row {
    display: grid !important;
    grid-template-columns: 78px minmax(0, 1fr) !important;
  }
  #cai-detail .ca-agent-console .ca-fixed-v {
    text-align: right !important;
  }
  #cai-detail .ca-primary-actions {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }
}

