/* Ekipta AI chat — public site and authenticated customer panel */
.ekipta-ai-root{
  --ai-ink:#111a35;
  --ai-muted:#73809a;
  --ai-line:#e6eaf3;
  --ai-primary:#5268ff;
  --ai-violet:#8758f3;
  --ai-cyan:#25cbb8;
  --ai-surface:#fff;
  --ai-canvas:#f6f8fc;
  position:relative;
  z-index:3100;
  font-family:Manrope,Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--ai-ink)
}
.ekipta-ai-root *{box-sizing:border-box}
.ekipta-ai-root [hidden]{display:none!important}
.ekipta-ai-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

.ekipta-ai-launch{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:3102;
  min-width:164px;
  min-height:58px;
  display:flex;
  align-items:center;
  gap:11px;
  padding:8px 14px 8px 8px;
  border:1px solid rgba(255,255,255,.34);
  border-radius:19px;
  background:linear-gradient(135deg,#465eff 0%,#6859f5 60%,#8558ee 100%);
  color:#fff;
  box-shadow:0 18px 46px rgba(54,70,190,.32),inset 0 1px 0 rgba(255,255,255,.24);
  font:inherit;
  text-align:left;
  cursor:pointer;
  transition:transform .2s ease,box-shadow .2s ease,opacity .18s ease
}
.ekipta-ai-launch:hover{transform:translateY(-3px);box-shadow:0 23px 55px rgba(54,70,190,.38),inset 0 1px 0 rgba(255,255,255,.28)}
.ekipta-ai-launch:focus-visible{outline:3px solid rgba(82,104,255,.23);outline-offset:4px}
.ekipta-ai-launch-icon{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;border-radius:14px;background:rgba(255,255,255,.17);box-shadow:inset 0 0 0 1px rgba(255,255,255,.13);font-size:16px}
.ekipta-ai-launch-copy{display:flex;flex-direction:column;line-height:1.18}
.ekipta-ai-launch-copy small{font-size:8px;font-weight:650;color:rgba(255,255,255,.72);letter-spacing:.15px}
.ekipta-ai-launch-copy strong{margin-top:3px;font-size:13px;font-weight:850;letter-spacing:-.2px}
.ekipta-ai-online-dot{width:8px;height:8px;margin-left:auto;flex:0 0 auto;border:2px solid rgba(255,255,255,.56);border-radius:50%;background:#43e6ba;box-shadow:0 0 0 4px rgba(67,230,186,.14)}
.ekipta-ai-root[data-ai-public="0"] .ekipta-ai-launch{bottom:82px}
.ekipta-ai-root.is-open .ekipta-ai-launch{opacity:0;pointer-events:none;transform:translateY(8px) scale(.96)}

/* Authenticated screens: launcher lives in the sticky topbar, never above form CTAs. */
.app-top-actions>.ekipta-ai-root[data-ai-public="0"]{position:static;z-index:1;flex:0 0 auto}
.app-top-actions>.ekipta-ai-root[data-ai-public="0"] .ekipta-ai-launch{
  position:static;width:42px;min-width:42px;height:42px;min-height:42px;padding:5px;
  justify-content:center;border-radius:13px;box-shadow:0 5px 18px rgba(54,70,190,.18)
}
.app-top-actions>.ekipta-ai-root[data-ai-public="0"] .ekipta-ai-launch-icon{width:31px;height:31px;border-radius:10px}
.app-top-actions>.ekipta-ai-root[data-ai-public="0"] .ekipta-ai-launch-copy,
.app-top-actions>.ekipta-ai-root[data-ai-public="0"] .ekipta-ai-online-dot{display:none}

.ekipta-ai-backdrop{position:fixed;inset:0;z-index:3100;background:rgba(7,13,31,.28);backdrop-filter:blur(2px)}
.ekipta-ai-panel{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:3101;
  width:min(420px,calc(100vw - 32px));
  height:min(620px,calc(100dvh - 44px));
  min-height:480px;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid rgba(218,224,238,.94);
  border-radius:27px;
  background:rgba(255,255,255,.985);
  box-shadow:0 34px 100px rgba(14,25,65,.28),0 0 0 1px rgba(82,104,255,.04);
  transform-origin:100% 100%;
  animation:ekiptaAiIn .22s ease-out
}
@keyframes ekiptaAiIn{from{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}

.ekipta-ai-head{
  position:relative;
  min-height:84px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:15px 16px;
  overflow:hidden;
  color:#fff;
  background:radial-gradient(circle at 84% 2%,rgba(171,133,255,.82),transparent 36%),linear-gradient(135deg,#344ce1,#5964f2 56%,#7557e8)
}
.ekipta-ai-head:after{content:"";position:absolute;width:145px;height:145px;right:-74px;bottom:-104px;border:1px solid rgba(255,255,255,.18);border-radius:50%;pointer-events:none}
.ekipta-ai-avatar{position:relative;z-index:1;width:48px;height:48px;display:grid;place-items:center;flex:0 0 auto;border-radius:16px;background:rgba(255,255,255,.17);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);font-size:18px}
.ekipta-ai-head>div:nth-child(2){position:relative;z-index:1;min-width:0}
.ekipta-ai-head strong{display:block;font-size:16px;font-weight:850;letter-spacing:-.35px}
.ekipta-ai-head span{display:flex;align-items:center;gap:6px;margin-top:4px;color:rgba(255,255,255,.75);font-size:9px;font-weight:650}
.ekipta-ai-head span i{width:7px;height:7px;border-radius:50%;background:#42e6b7;box-shadow:0 0 0 4px rgba(66,230,183,.12)}
.ekipta-ai-head button{position:relative;z-index:2;width:38px;height:38px;margin-left:auto;display:grid;place-items:center;flex:0 0 auto;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:rgba(255,255,255,.12);color:#fff;font-size:15px;cursor:pointer;transition:background .18s,transform .18s}
.ekipta-ai-head button:hover{background:rgba(255,255,255,.22);transform:rotate(3deg)}
.ekipta-ai-head button:focus-visible{outline:2px solid #fff;outline-offset:2px}

.ekipta-ai-conversation{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:21px 17px 18px;background:radial-gradient(circle at 100% 0,rgba(82,104,255,.075),transparent 32%),linear-gradient(180deg,#f9faff 0%,#f6f8fc 100%);scrollbar-width:thin;scrollbar-color:#d8deea transparent}
.ekipta-ai-conversation::-webkit-scrollbar{width:5px}.ekipta-ai-conversation::-webkit-scrollbar-thumb{background:#d8deea;border-radius:99px}
.ekipta-ai-message{display:flex;align-items:flex-end;gap:9px;margin:0 0 17px;animation:ekiptaAiMessage .2s ease-out}
@keyframes ekiptaAiMessage{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
.ekipta-ai-message>div{min-width:0;max-width:84%}
.ekipta-ai-message small{display:block;margin:0 0 5px 4px;color:#8b95a8;font-size:8px;font-weight:800;letter-spacing:.15px}
.ekipta-ai-message-avatar{width:29px;height:29px;display:grid;place-items:center;flex:0 0 auto;border-radius:10px;background:linear-gradient(135deg,var(--ai-primary),var(--ai-violet));color:#fff;font-size:10px;box-shadow:0 8px 18px rgba(82,104,255,.22)}
.ekipta-ai-bubble{padding:11px 13px;border:1px solid #e2e7f0;border-radius:7px 17px 17px 17px;background:#fff;color:#33405b;box-shadow:0 6px 20px rgba(24,39,83,.055);font-size:11.5px;line-height:1.64;overflow-wrap:anywhere}
.ekipta-ai-bubble strong{display:block;margin-bottom:4px;color:var(--ai-ink);font-size:12px;line-height:1.45}
.ekipta-ai-bubble p{margin:0;white-space:pre-wrap}
.ekipta-ai-message.is-user{justify-content:flex-end}
.ekipta-ai-message.is-user>div{display:flex;flex-direction:column;align-items:flex-end}
.ekipta-ai-message.is-user small{margin:0 4px 5px 0}
.ekipta-ai-message.is-user .ekipta-ai-bubble{border-color:transparent;border-radius:17px 7px 17px 17px;background:linear-gradient(135deg,#5268ff,#7259ec);color:#fff;box-shadow:0 9px 24px rgba(82,104,255,.2)}
.ekipta-ai-message.is-error .ekipta-ai-message-avatar{background:linear-gradient(135deg,#ef5c6b,#dc3d59)}
.ekipta-ai-message.is-error .ekipta-ai-bubble{border-color:#fecdd3;background:#fff5f6;color:#a51f3c}
.ekipta-ai-message.is-typing .ekipta-ai-bubble{display:flex;align-items:center;gap:4px;min-width:53px;min-height:38px}
.ekipta-ai-message.is-typing .ekipta-ai-bubble>i{width:6px;height:6px;border-radius:50%;background:#8290aa;animation:ekiptaAiTyping 1.1s infinite ease-in-out}
.ekipta-ai-message.is-typing .ekipta-ai-bubble>i:nth-child(2){animation-delay:.14s}.ekipta-ai-message.is-typing .ekipta-ai-bubble>i:nth-child(3){animation-delay:.28s}
@keyframes ekiptaAiTyping{0%,60%,100%{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}

.ekipta-ai-suggestions{display:grid;gap:7px;margin:2px 0 3px 38px}
.ekipta-ai-suggestions button{width:fit-content;max-width:100%;display:flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid #dfe5f1;border-radius:11px;background:rgba(255,255,255,.82);color:#53617b;font:700 9.5px/1.35 Manrope,Inter,sans-serif;text-align:left;cursor:pointer;transition:border-color .16s,background .16s,color .16s,transform .16s}
.ekipta-ai-suggestions button i{color:var(--ai-primary);font-size:8px}
.ekipta-ai-suggestions button:hover{transform:translateX(2px);border-color:rgba(82,104,255,.3);background:#fff;color:#3548c7}

.ekipta-ai-form{padding:13px 14px 11px;border-top:1px solid var(--ai-line);background:#fff}
.ekipta-ai-composer{display:flex;align-items:flex-end;gap:8px;padding:7px 7px 7px 13px;border:1px solid #dbe1ec;border-radius:17px;background:#fbfcff;transition:border-color .16s,box-shadow .16s,background .16s}
.ekipta-ai-composer:focus-within{border-color:rgba(82,104,255,.62);background:#fff;box-shadow:0 0 0 4px rgba(82,104,255,.09)}
.ekipta-ai-composer textarea{width:100%;height:38px;min-height:38px;max-height:112px;padding:9px 0 7px;resize:none;overflow-y:auto;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;color:var(--ai-ink);font:500 11.5px/1.5 Manrope,Inter,sans-serif}
.ekipta-ai-composer textarea::placeholder{color:#9aa5b8}
.ekipta-ai-composer button{width:40px;height:40px;display:grid;place-items:center;flex:0 0 auto;border:0;border-radius:13px;background:linear-gradient(135deg,var(--ai-primary),var(--ai-violet));color:#fff;font-size:13px;box-shadow:0 8px 20px rgba(82,104,255,.24);cursor:pointer;transition:transform .16s,opacity .16s}
.ekipta-ai-composer button:hover:not(:disabled){transform:translateY(-1px)}
.ekipta-ai-composer button:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}
.ekipta-ai-form-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 2px 0;color:#98a2b4;font-size:7.5px;line-height:1.4}
.ekipta-ai-form-meta span{display:flex;align-items:center;gap:5px}.ekipta-ai-form-meta span i{color:#7a89a5}.ekipta-ai-form-meta b{font-weight:750;white-space:nowrap}

body.ai-chat-open .public-contact-dock,body.ai-chat-open .feedback-fab{opacity:0!important;pointer-events:none!important}

/* System-admin AI settings */
.ai-settings-status-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:20px}
.ai-settings-status-grid article{min-width:0;display:flex;align-items:center;gap:10px;padding:14px;border:1px solid var(--line,#d8deea);border-radius:15px;background:#fff;box-shadow:var(--shadow-xs,0 5px 18px rgba(15,23,42,.05))}
.ai-settings-status-grid article>span{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:11px;font-size:12px}
.ai-settings-status-grid article>span.ok{background:#ecfdf5;color:#059669}.ai-settings-status-grid article>span.bad{background:#fff1f2;color:#dc2649}.ai-settings-status-grid article>span.warn{background:#fff7ed;color:#e87919}.ai-settings-status-grid article>span.info{background:#eef2ff;color:#5268ff}
.ai-settings-status-grid strong,.ai-settings-status-grid small{display:block;overflow:hidden;text-overflow:ellipsis}.ai-settings-status-grid strong{color:var(--ink,#111827);font-size:11px;white-space:nowrap}.ai-settings-status-grid small{margin-top:3px;color:var(--muted,#6b7280);font-size:8px;line-height:1.35}
.ai-settings-layout{align-items:start}.ai-settings-layout>.app-card{height:100%}.ai-settings-layout>.full{grid-column:1/-1}
.ai-settings-icon{width:40px;height:40px;display:grid;place-items:center;flex:0 0 auto;border-radius:13px;background:linear-gradient(135deg,#eef2ff,#f3efff);color:#5268ff}
.ai-protection-note{display:flex;align-items:flex-start;gap:11px;padding:13px 14px;border:1px solid #dfe5f2;border-radius:13px;background:#f8faff;color:#52607a}
.ai-protection-note>i{width:30px;height:30px;display:grid;place-items:center;flex:0 0 auto;border-radius:9px;background:#fff1f2;color:#dc2649}.ai-protection-note strong{display:block;color:#27344f;font-size:10.5px}.ai-protection-note p{margin:4px 0 0;font-size:9px;line-height:1.6}
.ai-settings-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;height:auto!important}.ai-settings-actions strong,.ai-settings-actions small{display:block}.ai-settings-actions strong{font-size:12px}.ai-settings-actions small{margin-top:4px;color:var(--muted,#6b7280);font-size:9px;line-height:1.5}.ai-settings-actions>div:last-child{display:flex;gap:8px;flex:0 0 auto}

@media(max-width:1280px){.ai-settings-status-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

@media(max-width:760px){
  body.ai-chat-open{overflow:hidden}
  .ai-settings-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-settings-layout>.full{grid-column:auto}.ai-settings-actions{align-items:stretch;flex-direction:column}.ai-settings-actions>div:last-child{display:grid;grid-template-columns:1fr}.ai-settings-actions .app-btn{width:100%}
  .ekipta-ai-root[data-ai-public="1"] .ekipta-ai-launch{right:13px;bottom:calc(92px + env(safe-area-inset-bottom))}
  .app-top-actions>.ekipta-ai-root[data-ai-public="0"] .ekipta-ai-launch{position:static;width:42px;min-width:42px;height:42px;min-height:42px;padding:5px}
  .ekipta-ai-launch{min-width:0;min-height:50px;padding:6px 12px 6px 6px;border-radius:17px}
  .ekipta-ai-launch-icon{width:38px;height:38px;border-radius:12px;font-size:14px}
  .ekipta-ai-launch-copy small{display:none}.ekipta-ai-launch-copy strong{margin:0;font-size:11.5px}.ekipta-ai-online-dot{width:7px;height:7px}
  .ekipta-ai-panel{inset:auto 8px calc(8px + env(safe-area-inset-bottom));width:auto;height:min(720px,calc(100dvh - 16px - env(safe-area-inset-bottom)));min-height:0;border-radius:24px}
  .ekipta-ai-head{min-height:76px;padding:13px 14px}.ekipta-ai-avatar{width:44px;height:44px;border-radius:14px}.ekipta-ai-head strong{font-size:15px}
  .ekipta-ai-conversation{padding:18px 13px 15px}.ekipta-ai-message>div{max-width:87%}.ekipta-ai-bubble{font-size:11px}
  .ekipta-ai-suggestions{margin-left:37px}.ekipta-ai-suggestions button{font-size:9px}
  .ekipta-ai-form{padding:11px 11px calc(9px + env(safe-area-inset-bottom))}
  .ekipta-ai-form-meta span{max-width:240px}
}

@media(max-width:430px){
  .ekipta-ai-launch-copy{display:none}.ekipta-ai-root[data-ai-public="1"] .ekipta-ai-launch{width:50px;padding:6px}.ekipta-ai-root[data-ai-public="1"] .ekipta-ai-online-dot{position:absolute;right:3px;top:3px;border-color:#fff}
  .ekipta-ai-panel{inset:6px 6px calc(6px + env(safe-area-inset-bottom));height:auto;border-radius:22px}
  .ekipta-ai-conversation{padding-left:11px;padding-right:11px}.ekipta-ai-message>div{max-width:89%}
  .ekipta-ai-form-meta span{max-width:215px}
}

@media(prefers-reduced-motion:reduce){.ekipta-ai-root *{animation:none!important;transition:none!important}}
