/* ============================================================================
   iClinika Copilot — Widget transverse
   Palette réelle : bleu marine = primaire Copilot, vert = accents/actions.
   ========================================================================== */
:root{
  --cp-green:#42c8a5;      /* navbar / accents / actions / chips */
  --cp-green-d:#2fa888;
  --cp-navy:#1B4571;       /* primaire Copilot : header, bulles user, bouton */
  --cp-navy-d:#0d2c50;
  --cp-cta:#EB082F;        /* "Plus de détails" */
}

/* ── Bouton flottant (bleu marine) ── */
.cp-fab{position:fixed;right:26px;bottom:26px;z-index:11000;width:62px;height:62px;
  border-radius:50%;border:none;background:var(--cp-navy);color:#fff;font-size:24px;
  box-shadow:0 6px 18px rgba(27,69,113,.5);cursor:pointer;transition:transform .15s;}
.cp-fab:hover{transform:scale(1.06);background:var(--cp-navy-d);}
.cp-fab .cp-pulse{position:absolute;top:-3px;right:-3px;width:16px;height:16px;
  background:var(--cp-green);border-radius:50%;border:2px solid #fff;}

/* ── Panneau ── */
.cp-panel{position:fixed;right:26px;bottom:100px;z-index:11000;width:430px;
  max-width:calc(100vw - 40px);height:620px;max-height:calc(100vh - 130px);
  background:#fff;border-radius:16px;box-shadow:0 14px 40px rgba(0,0,0,.25);
  display:none;flex-direction:column;overflow:hidden;font-family:Arial,sans-serif;}
.cp-panel.cp-open{display:flex;}

.cp-header{background:var(--cp-navy);color:#fff;padding:14px 16px;display:flex;
  align-items:center;justify-content:space-between;}
.cp-header .cp-title{font-weight:700;font-size:16px;display:flex;align-items:center;gap:8px;}
.cp-badge{background:#fff;color:var(--cp-navy);font-size:10px;padding:2px 7px;
  border-radius:10px;font-weight:800;}
.cp-close{background:none;border:none;color:#fff;font-size:18px;cursor:pointer;}

.cp-body{flex:1;overflow-y:auto;padding:14px;background:#f8faf9;}
.cp-disclaimer{font-size:11px;color:#7a7a7a;background:#fff7e6;border:1px solid #ffe2a8;
  border-radius:8px;padding:6px 9px;margin-bottom:12px;}

/* ── Bulles ── */
.cp-msg{margin-bottom:14px;display:flex;flex-direction:column;}
.cp-msg.cp-user{align-items:flex-end;}
.cp-bubble-user{background:var(--cp-navy);color:#fff;padding:9px 13px;
  border-radius:14px 14px 4px 14px;max-width:85%;font-size:14px;}
.cp-bubble-ai{background:#fff;border:1px solid #e3ece9;padding:0;
  border-radius:14px 14px 14px 4px;max-width:97%;width:97%;font-size:14px;overflow:hidden;}

.cp-synth{padding:11px 13px;border-bottom:1px solid #eef2f0;}
.cp-synth .cp-summary{color:#222;line-height:1.45;}
.cp-kpis{margin-top:8px;display:flex;gap:8px;flex-wrap:wrap;}
.cp-kpi{background:#e7f6f1;color:var(--cp-green-d);border-radius:8px;padding:4px 9px;
  font-size:12px;font-weight:600;}
.cp-kpi.warn{background:#fdecea;color:#b3261e;}

.cp-res-list{padding:6px 8px 8px;}
.cp-res-item{display:flex;align-items:center;justify-content:space-between;gap:8px;
  padding:8px;border-radius:9px;}
.cp-res-item:hover{background:#f1f8f5;}
.cp-res-main .cp-name{font-weight:700;color:#1f2937;font-size:13px;}
.cp-res-main .cp-meta{color:#6b7280;font-size:12px;}
.cp-pill{font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:20px;white-space:nowrap;}
.cp-pill.green{background:#e6f4ea;color:#1e7e34;}
.cp-pill.amber{background:#fff3cd;color:#9a6700;}
.cp-pill.red{background:#fdecea;color:#b3261e;}
.cp-pill.gray{background:#eceff3;color:#555;}

.cp-actions{padding:9px 12px;border-top:1px solid #eef2f0;display:flex;gap:7px;
  flex-wrap:wrap;background:#fcfdfc;}
.cp-act{font-size:12px;font-weight:600;border-radius:8px;padding:6px 11px;
  text-decoration:none;border:1px solid transparent;cursor:pointer;display:inline-block;}
.cp-act.primary{background:var(--cp-green);color:#fff;}
.cp-act.ghost{background:#fff;color:var(--cp-green-d);border-color:#bfe6da;}
.cp-act.cta{background:var(--cp-cta);color:#fff;}

.cp-notfound{padding:11px 13px;font-size:13px;color:#7a4a00;background:#fff7e6;}
.cp-error{padding:11px 13px;font-size:13px;color:#b3261e;background:#fdecea;}

/* Désambiguïsation : boutons de choix (homonymes) */
.cp-disambig{padding:8px 10px 10px;display:flex;flex-direction:column;gap:6px;}
.cp-choice{display:block;width:100%;text-align:left;background:#fff;border:1px solid #dfe6e3;
  border-radius:9px;padding:9px 11px;font-size:13px;cursor:pointer;color:#1f2937;
  transition:border-color .12s,background .12s;}
.cp-choice:hover{border-color:var(--cp-navy);background:#f1f6fb;}

.cp-input{border-top:1px solid #e3ece9;padding:10px;background:#fff;}
.cp-chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:9px;}
.cp-chip{font-size:11.5px;background:#e7f6f1;color:var(--cp-green-d);border:1px solid #cdeae0;
  border-radius:16px;padding:4px 10px;cursor:pointer;}
.cp-chip:hover{background:#d6efe6;}
.cp-input-row{display:flex;gap:8px;}
.cp-input-row input{flex:1;border:1px solid #cdd3dd;border-radius:10px;padding:9px 12px;
  font-size:14px;outline:none;}
.cp-input-row input:focus{border-color:var(--cp-navy);}
.cp-send{background:var(--cp-green);color:#fff;border:none;border-radius:10px;width:44px;
  font-size:16px;cursor:pointer;}
.cp-send:hover{background:var(--cp-green-d);}
.cp-typing{font-size:12px;color:#888;padding:2px 4px 8px;}
