.pw-ai-widget{border:1px solid #d0d7de;border-radius:8px;padding:12px;max-width:880px;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.04)}.pw-ai-widget__row{display:flex;gap:8px;margin-bottom:8px;align-items:flex-start}.pw-ai-widget__q{flex:1;min-height:64px;resize:vertical;padding:10px 12px;border:1px solid #c9d1d9;border-radius:6px;font:400 14px/1.4 system-ui,Segoe UI,Roboto,Ubuntu,Helvetica,Arial,sans-serif}.pw-ai-widget__send{display:inline-flex;align-items:center;gap:8px;border:1px solid #1f883d;background:#2da44e;color:#fff;border-radius:6px;padding:8px 14px;font-weight:600;cursor:pointer;transition:filter .15s ease}.pw-ai-widget__send:disabled{opacity:.5;cursor:not-allowed}.pw-ai-widget__send:hover{filter:brightness(1.05)}.pw-ai-widget__out{white-space:pre-wrap;border:1px solid #eaeef2;border-radius:6px;padding:12px;font:400 14px/1.55 ui-sans-serif,system-ui,Segoe UI,Roboto,Ubuntu,Helvetica,Arial,sans-serif;background:#fafbfc;min-height:48px}.pw-ai-widget__progress{position:relative;flex:1;height:8px;background:#eef2f7;border-radius:999px;overflow:hidden;margin-left:8px}.pw-ai-widget__bar{position:absolute;left:0;top:0;bottom:0;width:12%;transform-origin:left center;animation:pw-ai-indet 1.2s linear infinite}@keyframes pw-ai-indet{0%{transform:translateX(-50%) scaleX(.2)}50%{transform:translateX(50%) scaleX(.5)}to{transform:translateX(180%) scaleX(.2)}}.pw-ai-widget__stats{min-width:120px;text-align:right;font:500 12px/1.2 ui-monospace,Menlo,Consolas,monospace;color:#59636e}.pw-ai-widget--locked{border-style:dashed;opacity:.75}

/* === PWAI Frontend Widget UX Enhancements (appended) === */
.pw-ai-widget { --pwai-gap: 10px; --pwai-radius: 12px; --pwai-shadow: 0 8px 32px rgba(0,0,0,.12); }
.pw-ai-widget, .pw-ai-widget * { box-sizing: border-box; }
.pw-ai-widget__container { border-radius: var(--pwai-radius); box-shadow: var(--pwai-shadow); overflow: clip; }
.pw-ai-widget button, .pw-ai-widget input, .pw-ai-widget textarea { outline-color: #4f46e5; outline-offset: 2px; }
.pw-ai-widget__q { min-height: 42px; line-height: 1.35; padding: 10px 12px; }
.pw-ai-widget__send { min-height: 42px; }
.pw-ai-widget__out { max-height: 60vh; overflow: auto; scroll-behavior: smooth; }
.pw-ai-widget__token, .pw-ai-widget__time { font-variant-numeric: tabular-nums; opacity: .75; }
@media (prefers-reduced-motion: reduce) { .pw-ai-widget__out { scroll-behavior: auto; } }
@media (prefers-color-scheme: dark) {
  .pw-ai-widget__container { background: #0b0e12; color: #e9eef5; }
  .pw-ai-widget__q { background:#0f1318; color:#eef3fa; border-color:#212a33; }
}


/* === PWAI Frontend Widget – Themeable Colors === */
.pw-ai-widget{
  --pwai-primary: #4f46e5;
  --pwai-bg: #ffffff;
  --pwai-text: #111827;
  --pwai-button: var(--pwai-primary);
  --pwai-button-hover: #3730a3;
}
.pw-ai-widget__row,
.pw-ai-widget__out{
  color: var(--pwai-text);
}
.pw-ai-widget__q{
  color: var(--pwai-text);
}
.pw-ai-widget__send{
  background: var(--pwai-button);
  border-color: var(--pwai-button);
}
.pw-ai-widget__send:hover,
.pw-ai-widget__send:focus{
  background: var(--pwai-button-hover);
  border-color: var(--pwai-button-hover);
}
.pw-ai-widget__out a{
  color: var(--pwai-primary);
}
