/* existing base styles... */
#wpsc-chat-root{ position: fixed; bottom: 20px; right: 20px; z-index:99999; font-family: Arial, sans-serif; }
.wpsc-container{ width:320px; max-width:90vw; box-shadow:0 6px 24px rgba(0,0,0,0.15); border-radius:10px; overflow:hidden; background:#fff; }
.wpsc-header{ padding:12px; background:#0078ff; color:#fff; }
.wpsc-messages{ height:260px; overflow:auto; padding:12px; background:#f7f7f7; display:flex; flex-direction:column; gap:8px; }
.wpsc-message{ max-width:80%; padding:8px; border-radius:8px; }
.wpsc-message.user{ align-self:flex-end; background:#d1e8ff; }
.wpsc-message.admin{ align-self:flex-start; background:#fff; border:1px solid #eee; }
.wpsc-input{ display:flex; padding:8px; background:#fff; }
.wpsc-input input{ flex:1; padding:8px; border:1px solid #ddd; border-radius:4px; }
.wpsc-input button{ margin-left:8px; padding:8px 12px; }

/* Position helpers (inline style in JS will override if set, but keep CSS fallback) */
.wpsc-position-bottom-right { right: 20px; left: auto; }
.wpsc-position-bottom-left { left: 20px; right: auto; }

/* Theme helpers */
.wpsc-theme-dark .wpsc-messages { background: #222; color: #eee; }
.wpsc-theme-dark .wpsc-container { background: #1b1b1b; color: #ddd; }
.wpsc-theme-dark .wpsc-message.user { background: #2b3b47; color:#fff; }
.wpsc-theme-dark .wpsc-message.admin { background: #141414; border-color:#333; }
.wpsc-theme-dark .wpsc-input { background:#111; }
