/* website assistant: launcher + panel */
.kc-open{position:fixed;z-index:80;bottom:22px;inset-inline-end:22px;display:inline-flex;align-items:center;gap:10px;height:48px;padding:0 20px 0 16px;border:0;border-radius:999px;background:var(--red);color:#000;font:600 13px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;box-shadow:0 14px 40px rgba(0,0,0,.5);transition:transform .3s var(--ease),background .3s}
.kc-open:hover{transform:translateY(-2px);background:var(--paper)}
.kc-open.on{transform:scale(.9);opacity:.0;pointer-events:none}
.kc-dot{width:9px;height:9px;border-radius:50%;background:#16c46b;box-shadow:0 0 0 3px rgba(22,196,107,.25);display:inline-block;flex:none}
.kc-open .kc-dot{background:#000;box-shadow:0 0 0 3px rgba(0,0,0,.18)}

.kc-box{position:fixed;z-index:81;bottom:22px;inset-inline-end:22px;width:min(400px,calc(100vw - 32px));height:min(620px,calc(100vh - 110px));display:flex;flex-direction:column;border:1px solid var(--line2);border-radius:22px;background:rgba(12,12,11,.985);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 30px 80px rgba(0,0,0,.65);overflow:hidden;animation:kcin .35s var(--ease)}
.kc-box[hidden]{display:none}
@keyframes kcin{from{opacity:0;transform:translateY(14px) scale(.98)}}
.kc-hd{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line2)}
.kc-hd img{width:36px;height:36px;border-radius:50%}
.kc-hd div{flex:1;min-width:0}
.kc-hd b{display:block;font:600 15px/1.2 var(--sans)}
.kc-hd small{display:flex;align-items:center;gap:7px;margin-top:4px;font:500 11px/1 var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--fog)}
.kc-hd small .kc-dot{width:7px;height:7px}
.kc-x{width:34px;height:34px;border-radius:50%;border:1px solid var(--line2);background:none;color:var(--paper);font-size:20px;line-height:1;cursor:pointer}
.kc-x:hover{background:var(--paper);color:#000}

.kc-log{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px;scrollbar-width:thin}
.kc-m{max-width:86%;padding:11px 14px;border-radius:16px;font:400 14.5px/1.45 var(--sans);overflow-wrap:anywhere}
.kc-m.a{align-self:flex-start;background:#1c1c1a;color:#e9e6de;border-end-start-radius:6px}
.kc-m.u{align-self:flex-end;background:var(--red);color:#000;border-end-end-radius:6px}
.kc-m a{color:inherit;text-decoration:underline}
.kc-m.typing::after{content:"";display:inline-block;width:28px;height:8px;background:radial-gradient(circle,#999 3px,transparent 3.5px) 0 0/10px 8px repeat-x;animation:kcdots 1s steps(3) infinite}
@keyframes kcdots{from{width:8px}to{width:30px}}
.kc-note{align-self:stretch;padding:10px 12px;border:1px dashed var(--line2);border-radius:14px;font:400 13px/1.4 var(--sans);color:#cfccc3}
.kc-note .ok{color:#16c46b}
.kc-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.kc-links a{padding:8px 12px;border-radius:999px;background:var(--paper);color:#000;font:600 12px/1 var(--sans)}

.kc-chips{display:flex;flex-wrap:wrap;gap:8px;padding:0 16px 12px}
.kc-chips[hidden]{display:none}
.kc-chips button{padding:9px 12px;border-radius:999px;border:1px solid var(--line2);background:none;color:#dcd9d1;font:500 13px/1 var(--sans);cursor:pointer}
.kc-chips button:hover{border-color:var(--red);color:var(--paper)}
.kc-in{display:flex;gap:8px;padding:12px 12px 8px;border-top:1px solid var(--line2)}
.kc-in input{flex:1;min-width:0;height:44px;padding:0 14px;border-radius:999px;border:1px solid var(--line2);background:#151513;color:var(--paper);font:400 15px/1 var(--sans)}
.kc-in input:focus{outline:none;border-color:var(--red)}
.kc-in button{width:44px;height:44px;border-radius:50%;border:0;background:var(--red);color:#000;font:700 18px/1 var(--sans);cursor:pointer}
.kc-ft{display:flex;align-items:center;gap:10px;padding:0 14px 12px;font:400 11px/1.3 var(--sans);color:#7d7a72}
.kc-ft span{flex:1}
.kc-ft button{background:none;border:0;color:#cfccc3;font:600 11px/1 var(--sans);text-decoration:underline;cursor:pointer;white-space:nowrap;padding:0}

@media (max-width:560px){
  .kc-open{bottom:16px;inset-inline-end:16px;height:46px}
  .kc-box{inset:auto 0 0 0;width:100%;height:min(86vh,680px);border-radius:22px 22px 0 0;border-bottom:0}
}

/* price list: website-assistant add-on preview */
.v-chat{position:absolute;inset:0;padding:14% 9% 9%;display:flex;flex-direction:column;justify-content:flex-end;gap:7px;background:radial-gradient(120% 80% at 80% 0%,#2a1410,#0c0c0b)}
.v-chat p{max-width:78%;padding:8px 11px;border-radius:13px;font:500 12.5px/1.3 var(--sans);opacity:0;animation:vchat 8s infinite}
.v-chat .u{align-self:flex-end;background:var(--red);color:#000;border-end-end-radius:4px}
.v-chat .a{align-self:flex-start;background:#1f1f1c;color:#e9e6de;border-end-start-radius:4px}
.v-chat .a.ok{color:#5be39a}
.v-chat p:nth-child(2){animation-delay:.9s}.v-chat p:nth-child(3){animation-delay:1.8s}.v-chat p:nth-child(4){animation-delay:2.7s}
.v-chat.mini{padding:10% 10%;justify-content:center}
@keyframes vchat{0%{opacity:0;transform:translateY(8px)}6%,85%{opacity:1;transform:none}95%,100%{opacity:0}}
@media (prefers-reduced-motion:reduce){.v-chat p{animation:none;opacity:1}}
