/* Uses tokens from d.css; fallbacks are the BRAND dark values. */
.kwb{--k-bg:var(--surface,#181F22);--k-bg2:var(--surface-2,#1E282B);--k-tx:var(--text,#E8ECEC);--k-mu:var(--muted,#9DAAAC);--k-ln:var(--line,#2A3438);--k-ac:var(--accent,#FF7A55);--k-on:var(--on-accent,#101517);
  font:400 15px/1.45 var(--sans,"Helvetica Neue",Arial,sans-serif);color:var(--k-tx)}
.kwb *{box-sizing:border-box}
.kwb-launch,.kwb-panel{position:fixed;z-index:50;right:16px;bottom:16px}
.kwb-launch{display:none;align-items:center;gap:10px;min-height:44px;padding:0 20px;border-radius:48px;border:1px solid var(--k-ln);background:var(--k-bg);color:var(--k-tx);font:600 15px/1 var(--sans,Arial,sans-serif);cursor:pointer}
.kwb-launch:hover{border-color:var(--k-mu)}
.kwb-ready .kwb-launch{display:inline-flex}
.kwb-open .kwb-launch{display:none}
.kwb-dot{width:8px;height:8px;border-radius:50%;background:var(--k-ac);flex:none}
.kwb-panel{width:360px;max-width:calc(100vw - 32px);max-height:min(560px,calc(100vh - 32px));display:flex;flex-direction:column;background:var(--k-bg);border:1px solid var(--k-ln);border-radius:20px;overflow:hidden}
.kwb-panel[hidden]{display:none}
.kwb-head{display:flex;align-items:center;gap:8px;padding:6px 6px 6px 16px;border-bottom:1px solid var(--k-ln)}
.kwb-title{margin:0;flex:1;font:500 13px/1 var(--mono,monospace);color:var(--k-mu)}
.kwb-link{min-height:44px;padding:0 12px;background:none;border:0;color:var(--k-tx);font:500 14px/1 var(--sans,Arial,sans-serif);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.kwb-x{width:44px;height:44px;border-radius:50%;background:none;border:0;color:var(--k-tx);font:400 26px/1 var(--sans,Arial,sans-serif);cursor:pointer}
.kwb-x:hover,.kwb-link:hover{color:var(--k-ac)}
.kwb-log{flex:1 1 auto;min-height:80px;overflow-y:auto;padding:14px 16px;display:flex;flex-direction:column;gap:8px}
.kwb-msg{margin:0;max-width:88%;padding:9px 14px;border-radius:16px;background:var(--k-bg2);align-self:flex-start}
.kwb-me{align-self:flex-end;background:none;border:1px solid var(--k-ln)}
.kwb-demo{color:var(--k-ac);font-weight:600;text-underline-offset:3px;display:inline-block;min-height:24px}
.kwb-opts{display:flex;flex-wrap:wrap;gap:8px;padding:12px 16px 16px;border-top:1px solid var(--k-ln);flex:none}
.kwb-opt{min-height:44px;padding:0 16px;border-radius:48px;border:1px solid var(--k-ln);background:transparent;color:var(--k-tx);font:500 15px/1.2 var(--sans,Arial,sans-serif);text-align:left;cursor:pointer}
.kwb-opt:hover{border-color:var(--k-mu)}
.kwb-go{background:var(--k-ac);color:var(--k-on);border-color:var(--k-ac);font-weight:600}
.kwb-ta{width:100%;padding:10px 12px;border-radius:12px;border:1px solid var(--k-ln);background:var(--k-bg2);color:var(--k-tx);font:400 16px/1.4 var(--sans,Arial,sans-serif);resize:vertical}
.kwb :focus-visible{outline:2px solid var(--k-ac);outline-offset:2px}
@media (max-width:519px){
  .kwb-launch,.kwb-panel{left:0;right:0;bottom:0;width:100%;max-width:none}
  .kwb-launch{border-radius:0;border-width:1px 0 0;min-height:48px;padding:0 16px calc(env(safe-area-inset-bottom,0px));justify-content:flex-start}
  .kwb-panel{border-radius:20px 20px 0 0;border-width:1px 0 0;max-height:70vh;padding-bottom:env(safe-area-inset-bottom,0px)}
  html.kwb-on{padding-bottom:48px}
}
@media (prefers-reduced-motion:no-preference){
  .kwb-panel:not([hidden]){animation:kwb-in .2s ease-out}
  @keyframes kwb-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
}
