/* Website assistant (js/chat.js): launcher in the bottom corner + chat panel. Logical properties, so Arabic mirrors. */
.dc-chat{--dc-ink:#0A0B22;--dc-grad:linear-gradient(135deg,#E2378C,#9B3FC0 55%,#5B7BE0);position:fixed;inset-inline-end:24px;bottom:24px;z-index:900;font-family:Manrope,system-ui,sans-serif}
[dir=rtl] .dc-chat{font-family:"IBM Plex Sans Arabic",Manrope,system-ui,sans-serif}
.dc-launch{position:relative;display:grid;place-items:center;width:62px;height:62px;border:0;border-radius:50%;cursor:pointer;color:#fff;background:var(--dc-grad);
  box-shadow:0 14px 34px rgba(155,63,192,.45),inset 0 1px 0 rgba(255,255,255,.3);transition:transform .25s}
.dc-launch:hover{transform:scale(1.06)}
.dc-launch:focus-visible,.dc-panel button:focus-visible{outline:3px solid #9FD4E0;outline-offset:2px}
.dc-form textarea:focus,.dc-form textarea:focus-visible{outline:0}
.dc-launch:before{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid rgba(226,55,140,.5);animation:dc-pulse 2.6s ease-out infinite}
@keyframes dc-pulse{0%{transform:scale(.9);opacity:1}100%{transform:scale(1.35);opacity:0}}
.dc-launch svg{grid-area:1/1;width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s,opacity .25s}
.dc-i-close{opacity:0;transform:rotate(-90deg)}
.dc-chat.open .dc-i-chat{opacity:0;transform:rotate(90deg)}
.dc-chat.open .dc-i-close{opacity:1;transform:none}
.dc-chat.open .dc-launch:before,.dc-chat.open .dc-dot{display:none}
.dc-dot{position:absolute;top:4px;inset-inline-end:4px;width:13px;height:13px;border-radius:50%;background:#3DDC97;border:2px solid #fff}

.dc-teaser{position:absolute;bottom:76px;inset-inline-end:0;display:flex;align-items:center;gap:8px;width:max-content;max-width:260px;padding:12px 12px 12px 16px;padding-inline:16px 10px;border-radius:16px;
  background:#fff;color:#14163A;font-size:14px;font-weight:600;box-shadow:0 16px 40px rgba(20,22,58,.18);cursor:pointer;animation:dc-in .4s ease}
.dc-teaser[hidden]{display:none}
.dc-teaser-x{border:0;background:#F0F0F7;color:#555970;width:22px;height:22px;border-radius:50%;cursor:pointer;font-size:15px;line-height:1;flex-shrink:0}
@keyframes dc-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

.dc-panel{position:absolute;bottom:78px;inset-inline-end:0;width:390px;height:min(600px,calc(100vh - 120px));display:flex;flex-direction:column;overflow:hidden;border-radius:24px;background:#F6F6FB;
  box-shadow:0 30px 80px rgba(10,11,34,.35);border:1px solid rgba(20,22,58,.08);animation:dc-in .3s ease}
.dc-panel[hidden]{display:none}
.dc-head{position:relative;display:flex;align-items:center;gap:12px;padding:16px 14px 16px 18px;padding-inline:18px 12px;background:var(--dc-ink);color:#fff;overflow:hidden}
.dc-head:before{content:"";position:absolute;width:260px;height:260px;border-radius:50%;background:radial-gradient(closest-side,rgba(192,24,108,.55),transparent);top:-150px;inset-inline-start:-60px}
.dc-head>*{position:relative}
.dc-avatar{display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;border-radius:14px;background:var(--dc-grad);font-family:Sora,Manrope,sans-serif;font-weight:700;font-size:12px}
.dc-who{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.dc-who b{font-family:Sora,Manrope,sans-serif;font-size:16px}
[dir=rtl] .dc-who b{font-family:"IBM Plex Sans Arabic",Sora,sans-serif}
.dc-who small{display:flex;align-items:center;gap:6px;font-size:12px;color:#B9BBDA}
.dc-who small i{width:7px;height:7px;border-radius:50%;background:#3DDC97;flex-shrink:0}
.dc-head button{display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:10px;background:rgba(255,255,255,.08);color:#fff;cursor:pointer}
.dc-head button:hover{background:rgba(255,255,255,.16)}
.dc-head svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

.dc-log{flex:1;overflow-y:auto;padding:18px 16px;display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth}
.dc-msg{max-width:86%;padding:11px 14px;border-radius:18px;font-size:14.5px;line-height:1.55;overflow-wrap:anywhere}
.dc-msg p{margin:0 0 6px}.dc-msg p:last-child{margin:0}
.dc-msg ul{margin:4px 0 6px;padding-inline-start:18px}.dc-msg li{margin:2px 0}
.dc-bot{align-self:flex-start;background:#fff;color:#2A2C4E;border:1px solid #E7E7F2;border-end-start-radius:6px}
.dc-bot a{color:#B01A66;font-weight:700}
.dc-user{align-self:flex-end;background:var(--dc-grad);color:#fff;border-end-end-radius:6px}
.dc-error{background:#FFF5F5;border-color:#F6D5D5}
.dc-dots{display:inline-flex;gap:4px;padding:4px 0}
.dc-dots i{width:7px;height:7px;border-radius:50%;background:#B45BD0;animation:dc-bounce 1.2s infinite}
.dc-dots i:nth-child(2){animation-delay:.15s}.dc-dots i:nth-child(3){animation-delay:.3s}
@keyframes dc-bounce{0%,60%,100%{transform:none;opacity:.5}30%{transform:translateY(-5px);opacity:1}}
.dc-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.dc-chips button{border:1px solid #E1D9F2;background:#fff;color:#4B3C8E;border-radius:999px;padding:8px 13px;font:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:background .2s,color .2s}
.dc-chips button:hover{background:#14163A;color:#fff;border-color:#14163A}

.dc-form{display:flex;align-items:flex-end;gap:8px;margin:0 12px;padding:8px;border:1px solid #E1E1EE;border-radius:18px;background:#fff;box-shadow:0 6px 18px rgba(20,22,58,.06)}
.dc-form:focus-within{border-color:#B45BD0;box-shadow:0 0 0 4px rgba(180,91,208,.12)}
.dc-form textarea{flex:1;border:0;outline:0;resize:none;font:inherit;font-size:15px;line-height:1.4;padding:8px 6px;max-height:120px;background:none;color:#14163A}
.dc-form button{display:grid;place-items:center;width:40px;height:40px;flex-shrink:0;border:0;border-radius:12px;background:var(--dc-grad);color:#fff;cursor:pointer}
.dc-form button:disabled{opacity:.45;cursor:default}
.dc-form svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
[dir=rtl] .dc-form svg{transform:scaleX(-1)}
.dc-note{margin:8px 16px 12px;font-size:11.5px;line-height:1.4;color:#8C8FB0;text-align:center}
.dc-note a{color:#8C8FB0}

@media(max-width:560px){
  .dc-chat{inset-inline-end:16px;bottom:16px}
  .dc-launch{width:56px;height:56px}
  .dc-chat.open .dc-launch{display:none}
  .dc-panel{position:fixed;inset:0;width:auto;height:auto;border-radius:0;bottom:0}
  .dc-teaser{bottom:68px}
}
@media(prefers-reduced-motion:reduce){.dc-launch:before,.dc-dots i,.dc-panel,.dc-teaser{animation:none}}
@media print{.dc-chat{display:none}}

/* guided messages (js/chat-flow.js, #5): a hint under a question, the summary, the consent box, the main button */
.dc-hint{color:#7A7D96;font-size:12.5px}
.dc-summary{margin:6px 0 10px;padding:10px 12px;list-style:none;border-radius:12px;background:#F6F5FB;display:grid;gap:5px;font-size:13.5px}
.dc-summary li{white-space:pre-wrap;word-break:break-word}
.dc-summary b{color:#14163A}
.dc-consent{display:flex;gap:8px;align-items:flex-start;font-size:12.5px;line-height:1.5;color:#4B4E6A;cursor:pointer}
.dc-consent input{margin-top:3px;accent-color:#B01A66;flex:none}
.dc-chips .dc-chip-main{background:linear-gradient(135deg,#E2378C,#9B3FC0);color:#fff;border-color:transparent}
.dc-chips .dc-chip-main:hover{filter:brightness(1.08);background:linear-gradient(135deg,#E2378C,#9B3FC0)}
