.oa-chat{--oa-radius:16px;--oa-border:#e5e7eb;--oa-bg:#fff;--oa-bg-muted:#f8fafc;--oa-user:#e6f0ff;--oa-assistant:#f1f5f9;--oa-text:#111827;--oa-muted:#6b7280;
  max-width:760px;margin:0 auto;border:1px solid var(--oa-border);border-radius:var(--oa-radius);overflow:hidden;background:var(--oa-bg);
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;
  box-shadow:0 10px 20px rgba(0,0,0,.06);
}
.wp-assistants-error{
  background:#fee2e2;color:#dc2626;padding:16px;text-align:center;border-radius:8px;margin:20px 0;border:1px solid #fecaca;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;
}
.oa-chat *{box-sizing:border-box}
.oa-chat__toolbar{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--oa-border);background:var(--oa-bg)}
.oa-brand{display:flex;align-items:center;font-weight:700;color:var(--oa-text);letter-spacing:.2px}
.oa-brand__dot{width:10px;height:10px;border-radius:50%;background:#10b981;display:inline-block;margin-right:10px;box-shadow:0 0 0 6px rgba(16,185,129,.12)}
.oa-chat__log{height:420px;overflow:auto;padding:18px;background:var(--oa-bg-muted)}
.oa-bubble{display:flex;margin:12px 0}
.oa-bubble__inner{display:flex;gap:12px;align-items:flex-start;background:var(--oa-assistant);border-radius:14px;padding:12px 14px;max-width:86%}
.oa-user{justify-content:flex-end}
.oa-user .oa-bubble__inner{background:var(--oa-user)}
.oa-avatar-wrap{position:relative;flex:0 0 32px}
.oa-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;display:block;transition:transform .25s ease, box-shadow .25s ease}
.oa-spinner{position:absolute;inset:-5px;display:none;border-radius:50%;border:2px solid rgba(16,185,129,.25);border-top-color:rgba(16,185,129,1);animation:oa-spin .9s linear infinite}
@keyframes oa-spin{to{transform:rotate(360deg)}}
.oa-assistant.thinking .oa-avatar{animation: oa-pulse 1.1s infinite; box-shadow: 0 0 0 0 rgba(16,185,129,.35)}
.oa-assistant.thinking .oa-spinner{display:block}
@keyframes oa-pulse {0%{transform:scale(1);box-shadow:0 0 0 0 rgba(16,185,129,.35)}70%{transform:scale(1.04);box-shadow:0 0 0 10px rgba(16,185,129,0)}100%{transform:scale(1);box-shadow:0 0 0 0 rgba(16,185,129,0)}}
.oa-text{white-space:pre-wrap;line-height:1.5;color:var(--oa-text);font-size:15px}
/* Enhanced typing animation */
.oa-typing{display:inline-block;overflow:hidden;vertical-align:baseline;width:0ch;margin-left:4px;font-weight:600;color:#10b981}
.oa-typing::after{content:'...';animation: oa-blink 1.4s ease-in-out infinite}
.oa-assistant.thinking .oa-typing{animation: oa-ellipsis 1.2s steps(4,end) infinite;width:3ch}
@keyframes oa-ellipsis{0%{width:0ch}25%{width:1ch}50%{width:2ch}75%{width:3ch}100%{width:3ch}}
@keyframes oa-blink{0%,50%{opacity:1}51%,100%{opacity:0.3}}
.oa-chat__form{display:flex;gap:10px;padding:14px;border-top:1px solid var(--oa-border);background:var(--oa-bg)}
.oa-input{flex:1;padding:12px 14px;border:1px solid var(--oa-border);border-radius:12px;background:#fff;color:var(--oa-text);outline:none}
.oa-input:focus{border-color:#94a3b8;box-shadow:0 0 0 3px rgba(148,163,184,.25)}
.oa-btn{padding:12px 18px;border:0;border-radius:12px;background:#111827;color:#fff;cursor:pointer;appearance:none;font:inherit;line-height:1;font-weight:600}
.oa-btn:hover{filter:brightness(1.05)}
.oa-btn--ghost{background:#fff;color:#111827;border:1px solid var(--oa-border)}
.oa-btn--ghost:hover{border-color:#94a3b8}
.oa-actions-bottom{display:flex;gap:8px;justify-content:flex-end;padding:0 14px 14px}
.oa-chat__note{font-size:12px;color:var(--oa-muted);padding:0 14px 14px}

/* Suggestion chips */
.oa-suggest{display:flex;flex-wrap:wrap;gap:8px;padding:0 14px 10px;transition:opacity .18s ease}
.oa-suggest.fade-out{opacity:0}
.oa-chip{border:1px solid var(--oa-border);background:#fff;border-radius:999px;padding:8px 12px;cursor:pointer;font:inherit;color:#0f172a}
.oa-chip:hover{border-color:#94a3b8}

/* Modal */
.oa-modal{position:fixed!important;inset:0!important;background:rgba(0,0,0,.75)!important;display:none!important;align-items:center!important;justify-content:center!important;padding:20px!important;z-index:999999999!important;pointer-events:auto!important}
.oa-modal.open{display:flex!important}
.oa-modal__dialog{background:#fff!important;border-radius:14px!important;max-width:420px!important;width:100%!important;padding:18px!important;border:1px solid var(--oa-border)!important;box-shadow:0 10px 30px rgba(0,0,0,.15)!important;position:relative!important;z-index:1000000000!important}
.oa-modal__title{margin:0 0 6px 0}
.oa-modal__desc{margin:0 0 10px 0;color:var(--oa-muted)}
.oa-modal__actions{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}

/* Registration modal specific styles */
.oa-registration-benefits{text-align:left;margin:15px 0;padding-left:0;list-style:none}
.oa-registration-benefits li{margin:6px 0;color:#374151;font-size:14px}
.oa-registration-note{font-size:12px;color:#6b7280;margin:8px 0 0 0;text-align:center}

/* Markdown formatting */
.oa-text h1, .oa-text h2, .oa-text h3, .oa-text h4, .oa-text h5, .oa-text h6{margin:12px 0 8px 0;color:var(--oa-text);line-height:1.3}
.oa-text h1{font-size:1.4em;font-weight:700}
.oa-text h2{font-size:1.25em;font-weight:700}
.oa-text h3{font-size:1.1em;font-weight:600}
.oa-text p{margin:8px 0;line-height:1.5}
.oa-text p:first-child{margin-top:0}
.oa-text p:last-child{margin-bottom:0}
.oa-text strong{font-weight:600;color:var(--oa-text)}
.oa-text em{font-style:italic}
.oa-text code{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:4px;padding:2px 6px;font-family:ui-monospace,'SF Mono',Monaco,Consolas,monospace;font-size:0.9em;color:#374151}
.oa-text pre{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px;margin:12px 0;overflow-x:auto;font-family:ui-monospace,'SF Mono',Monaco,Consolas,monospace;font-size:0.9em;line-height:1.4}
.oa-text pre code{background:none;border:none;padding:0;font-size:inherit}
.oa-text ul, .oa-text ol{margin:8px 0;padding-left:20px}
.oa-text li{margin:4px 0;line-height:1.5}
.oa-text ul li{list-style:disc}
.oa-text ol li{list-style:decimal}
.oa-text blockquote{border-left:3px solid #10b981;margin:12px 0;padding:8px 0 8px 16px;background:#f8fafc;border-radius:0 6px 6px 0}
.oa-modal__msg{font-size:13px;color:var(--oa-muted);margin-top:8px}

/* Registration modal specific styles */
.oa-registration-benefits{text-align:left;margin:15px 0;padding-left:0;list-style:none}
.oa-registration-benefits li{margin:6px 0;color:#374151;font-size:14px}
.oa-registration-note{font-size:12px;color:#6b7280;margin:8px 0 0 0;text-align:center}

/* Markdown formatting */
