:root { --bai-primary: #2f6b2f; }
.bai-widget, .bai-widget * { box-sizing: border-box; }
.bai-floating { position: fixed; bottom: 20px; z-index: 999999; font-family: Arial, Helvetica, sans-serif; }
.bai-floating.bai-right { right: 20px; }
.bai-floating.bai-left { left: 20px; }
.bai-launcher { border: 0; background: var(--bai-primary); color: #fff; padding: 13px 17px; border-radius: 999px; cursor: pointer; box-shadow: 0 8px 28px rgba(0,0,0,.22); display: flex; align-items: center; gap: 9px; font-weight: 700; font-size: 14px; }
.bai-launcher-icon { font-size: 21px; }
.bai-panel { width: min(390px, calc(100vw - 24px)); height: min(610px, calc(100vh - 100px)); background: #fff; border-radius: 18px; overflow: hidden; box-shadow: 0 14px 45px rgba(0,0,0,.27); display: flex; flex-direction: column; color: #222; }
.bai-floating .bai-panel { position: absolute; bottom: 64px; }
.bai-right .bai-panel { right: 0; }
.bai-left .bai-panel { left: 0; }
.bai-panel[hidden] { display: none !important; }
.bai-inline .bai-panel { width: 100%; max-width: 760px; height: 600px; border: 1px solid #ddd; box-shadow: none; }
.bai-header { background: var(--bai-primary); color: white; padding: 15px 17px; display: flex; justify-content: space-between; align-items: center; }
.bai-header strong { display: block; font-size: 16px; }
.bai-header small { display: block; opacity: .85; margin-top: 3px; }
.bai-close { border: 0; background: transparent; color: white; cursor: pointer; font-size: 28px; line-height: 1; }
.bai-messages { flex: 1; overflow-y: auto; padding: 15px; background: #f6f7f7; }
.bai-message { max-width: 86%; padding: 10px 12px; margin-bottom: 10px; border-radius: 13px; line-height: 1.45; font-size: 14px; overflow-wrap: anywhere; }
.bai-assistant { background: #fff; border: 1px solid #e1e1e1; border-bottom-left-radius: 4px; }
.bai-user { background: var(--bai-primary); color: white; margin-left: auto; border-bottom-right-radius: 4px; }
.bai-error { border-color: #c62828; color: #a40000; }
.bai-quick { display: flex; gap: 6px; overflow-x: auto; padding: 8px 12px; border-top: 1px solid #eee; background: #fff; }
.bai-quick button { white-space: nowrap; border: 1px solid var(--bai-primary); color: var(--bai-primary); background: #fff; border-radius: 999px; padding: 6px 9px; cursor: pointer; font-size: 12px; }
.bai-form { display: flex; gap: 7px; padding: 10px 12px 6px; border-top: 1px solid #eee; background: #fff; }
.bai-form textarea { flex: 1; resize: none; min-height: 46px; max-height: 100px; border: 1px solid #bbb; border-radius: 10px; padding: 9px; font: inherit; }
.bai-form button { border: 0; border-radius: 10px; padding: 0 13px; background: var(--bai-primary); color: #fff; cursor: pointer; font-weight: 700; }
.bai-form button:disabled, .bai-form textarea:disabled { opacity: .65; cursor: wait; }
.bai-privacy { padding: 0 12px 9px; color: #777; background: white; font-size: 10px; }
.bai-products { display: grid; gap: 7px; margin: 0 0 12px; }
.bai-product { color: #222 !important; background: #fff; border: 1px solid #ddd; border-radius: 10px; padding: 7px; display: flex; gap: 9px; align-items: center; text-decoration: none !important; }
.bai-product:hover { border-color: var(--bai-primary); }
.bai-product img { width: 48px; height: 48px; object-fit: cover; border-radius: 7px; }
.bai-product span { display: flex; flex-direction: column; gap: 4px; font-size: 12px; }
.bai-product small { color: var(--bai-primary); font-weight: 700; }
@media (max-width: 520px) {
.bai-floating { left: 10px !important; right: 10px !important; bottom: 10px; }
.bai-launcher { margin-left: auto; }
.bai-launcher-text { display: none; }
.bai-floating .bai-panel { left: 0 !important; right: 0 !important; width: 100%; height: min(680px, calc(100vh - 82px)); bottom: 58px; }
}