/* Kojcowo — asystent (chat bez AI). Samowystarczalny, prefiks kja- */
.kja{
  --ink:#18170f;--ink-soft:#4c4a3f;--cream:#f5f3ec;--paper:#fffdf8;
  --brand:#2f7d4f;--brand-dark:#245f3c;--brand-2:#1e4d33;--brand-soft:#edf4ef;--brand-tint:#d9e8de;
  --amber:#e2892f;--line:#e2ddce;
  --ff-d:'Fraunces',Georgia,serif;--ff-b:'Manrope',system-ui,sans-serif;
  position:fixed;right:20px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:9998;font-family:var(--ff-b);
  transition:bottom .2s ease
}
/* gdy widoczny sticky pasek zakupu — podnieś asystenta ponad niego (jedna, jednoznaczna reguła — bez duplikatu w media query) */
.kja.kja-raised{bottom:calc(var(--kja-bar,72px) + 18px + env(safe-area-inset-bottom,0px))}
.kja *{box-sizing:border-box}

/* Przycisk — GRAFIT (celowo inny niż zielone CTA zakupowe: pomoc ≠ kup) */
.kja-fab{display:inline-flex;align-items:center;gap:10px;background:var(--ink);color:#fff;border:none;
  border-radius:100px;padding:14px 20px;font-family:var(--ff-b);font-weight:700;font-size:.95rem;cursor:pointer;
  box-shadow:0 10px 26px rgba(24,23,15,.34), 0 0 0 1px rgba(255,255,255,.10) inset;
  transition:transform .15s,background .2s}
.kja-fab:hover{background:#262419;transform:translateY(-2px)}
.kja-fab svg{width:22px;height:22px;flex:0 0 auto;color:#8fd6a9}
.kja-fab .kja-fab-label{color:#fff}
.kja-fab .kja-ico-close{display:none}
.kja-fab.open .kja-ico-chat{display:none}
.kja-fab.open .kja-ico-close{display:block}
.kja-fab.open .kja-fab-label{display:none}
.kja-fab.open{padding:14px;border-radius:50%}
/* kropka statusu — sygnał „wsparcie dostępne" */
.kja-fab::after{content:"";position:absolute;top:10px;right:10px;width:9px;height:9px;border-radius:50%;
  background:#8fd6a9;box-shadow:0 0 0 2.5px var(--ink);opacity:1;transition:opacity .2s}
.kja-fab{position:relative}
.kja-fab.open::after{opacity:0}

/* Panel */
.kja-panel{position:absolute;right:0;bottom:calc(100% + 12px);width:380px;max-width:calc(100vw - 32px);
  max-height:min(620px, calc(100vh - 140px));background:var(--paper);border:1px solid var(--line);border-radius:22px;
  box-shadow:0 30px 80px rgba(20,40,25,.26);display:flex;flex-direction:column;overflow:hidden;
  opacity:0;transform:translateY(12px) scale(.98);pointer-events:none;transition:opacity .22s,transform .22s}
.kja-panel.open{opacity:1;transform:none;pointer-events:auto}

.kja-head{display:flex;align-items:center;gap:12px;background:var(--brand-2);color:#fff;padding:14px 16px;flex:0 0 auto}
.kja-avatar{width:38px;height:38px;border-radius:11px;background:rgba(255,255,255,.12);display:grid;place-items:center;flex:0 0 auto}
.kja-avatar svg{width:24px;height:24px}
.kja-head-txt{flex:1;min-width:0}
.kja-head-txt b{display:block;font-family:var(--ff-d);font-weight:600;font-size:1.02rem;line-height:1.2}
.kja-head-txt small{display:flex;align-items:center;gap:6px;font-size:.78rem;color:#bcd6c4}
.kja-head-txt small::before{content:"";width:7px;height:7px;border-radius:50%;background:#8fd6a9}
.kja-x{background:none;border:none;color:#cfe3d5;font-size:1.05rem;cursor:pointer;padding:6px;border-radius:8px;line-height:1}
.kja-x:hover{background:rgba(255,255,255,.12);color:#fff}

.kja-body{flex:1 1 auto;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px;background:var(--cream)}
.kja-msg{max-width:88%;padding:12px 14px;border-radius:16px;font-size:.92rem;line-height:1.55;animation:kjaIn .22s ease}
@keyframes kjaIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.kja-bot{background:var(--paper);border:1px solid var(--line);color:var(--ink);border-bottom-left-radius:6px;align-self:flex-start}
.kja-user{background:var(--brand);color:#fff;border-bottom-right-radius:6px;align-self:flex-end;font-weight:600}
.kja-msg p{margin:0 0 8px}.kja-msg p:last-child{margin:0}
.kja-list{margin:6px 0 8px;padding-left:18px}
.kja-list li{margin-bottom:5px}
.kja-msg a{color:var(--brand-dark);font-weight:700;text-decoration:underline;text-underline-offset:2px}
.kja-cta{display:inline-flex;align-items:center;gap:6px;background:var(--brand);color:#fff !important;
  border-radius:100px;padding:10px 16px;font-weight:700;font-size:.88rem;text-decoration:none !important;margin-top:4px}
.kja-cta:hover{background:var(--brand-dark)}
.kja-badge{display:inline-block;background:var(--amber);color:#fff;font-size:.66rem;font-weight:800;
  text-transform:uppercase;letter-spacing:.04em;padding:2px 7px;border-radius:100px;margin-left:4px;vertical-align:middle}
.kja-note{display:block;color:var(--ink-soft);font-size:.8rem;margin-top:6px}

/* wskaźnik pisania */
.kja-typing{padding:14px 16px}
.kja-dots{display:inline-flex;gap:4px}
.kja-dots i{width:7px;height:7px;border-radius:50%;background:#b9c3b3;animation:kjaBounce 1s infinite}
.kja-dots i:nth-child(2){animation-delay:.15s}.kja-dots i:nth-child(3){animation-delay:.3s}
@keyframes kjaBounce{0%,60%,100%{transform:translateY(0);opacity:.5}30%{transform:translateY(-4px);opacity:1}}

/* szybkie odpowiedzi */
.kja-quick{display:flex;flex-wrap:wrap;gap:7px;padding:12px 14px;background:var(--paper);border-top:1px solid var(--line);flex:0 0 auto;max-height:180px;overflow-y:auto}
.kja-chip{background:var(--cream);border:1.5px solid var(--line);border-radius:100px;padding:9px 14px;
  font-family:var(--ff-b);font-weight:700;font-size:.84rem;color:var(--ink);cursor:pointer;transition:.15s;text-align:left}
.kja-chip:hover{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-dark)}

.kja-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;
  border-top:1px solid var(--line);background:var(--paper);flex:0 0 auto}
.kja-restart,.kja-mail{background:none;border:none;font-family:var(--ff-b);font-weight:700;font-size:.8rem;
  color:var(--ink-soft);cursor:pointer;text-decoration:none;padding:4px}
.kja-restart:hover,.kja-mail:hover{color:var(--brand-dark)}

/* MOBILE — pełny ekran, nad sticky paskami */
@media (max-width:600px){
  .kja{right:14px}
  .kja-fab{padding:13px 18px;font-size:.9rem}
  .kja-panel{position:fixed;inset:0;width:100vw;max-width:100vw;max-height:100vh;border-radius:0;border:none;
    transform:translateY(100%);opacity:1}
  .kja-panel.open{transform:none}
  .kja-head{padding:16px;padding-top:calc(16px + env(safe-area-inset-top,0px))}
  .kja-body{padding:14px}
  .kja-msg{max-width:92%;font-size:.95rem}
  .kja-quick{max-height:34vh;padding-bottom:12px}
  .kja-foot{padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))}
  body.kja-lock{overflow:hidden}
}
@media (max-width:380px){ .kja-fab-label{display:none} .kja-fab{padding:14px;border-radius:50%} }

@media (prefers-reduced-motion:reduce){
  .kja-panel,.kja-msg,.kja-fab{transition:none;animation:none}
  .kja-dots i{animation:none}
}
