:root{--kp:#63795a;--kpd:#4e5f47;--kpl:#8fa882;--kpale:#f0f4ee;--kw:#fff;--kbg:#f5f8f4;--kbdr:#dde8d8;--kt:#2d3b28;--km:#8a9e83;--kshadow:0 10px 30px rgba(99,121,90,.18);--kr:16px;--khs:#63795a;--khe:#4e5f47;--kbotbg:#fff;--kbottext:#2d3b28;--kuserbg:#63795a;--kusertext:#fff;--kinputbg:#fff}
#aicb-chat-widget *{box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif}

/* Bubble */
#aicb-chat-bubble{position:fixed;bottom:18px;right:18px;width:56px;height:56px;background:var(--kp);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--kshadow);z-index:99999;transition:transform .2s,box-shadow .2s;border:2px solid #fff}
#aicb-chat-bubble:hover{transform:scale(1.08);box-shadow:0 16px 48px rgba(99,121,90,.35)}
#aicb-bubble-logo{width:36px;height:36px;border-radius:50%;object-fit:cover}
#aicb-bubble-close{color:#fff;font-size:20px;font-weight:700}
#aicb-unread-badge{position:absolute;top:-4px;right:-4px;background:#e74c3c;color:#fff;border-radius:50%;width:20px;height:20px;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid #fff}

/* Window */
#aicb-chat-window{position:fixed;bottom:82px;right:14px;width:352px;max-height:580px;background:var(--kw);border-radius:var(--kr);box-shadow:var(--kshadow);z-index:99998;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--kbdr);animation:kSlide .3s ease}
@keyframes kSlide{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}

/* Header */
#aicb-chat-header{background:linear-gradient(135deg,var(--khs) 0%,var(--khe) 100%);padding:10px 11px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
#aicb-header-left{display:flex;align-items:center;gap:10px}
#aicb-header-logo{width:33px;height:33px;border-radius:50%;border:2px solid rgba(255,255,255,.45);object-fit:cover}
#aicb-header-title{color:#fff;font-weight:700;font-size:13px}
#aicb-header-status{color:rgba(255,255,255,.8);font-size:10px;display:flex;align-items:center;gap:4px;margin-top:1px}
.aicb-online-dot{width:7px;height:7px;background:#5ef07e;border-radius:50%;animation:kPulse 2s infinite}
@keyframes kPulse{0%,100%{opacity:1}50%{opacity:.4}}
#aicb-header-actions{display:flex;gap:5px}
#aicb-header-actions button{background:rgba(255,255,255,.15);border:none;border-radius:8px;color:#fff;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s;font-size:13px}
#aicb-header-actions button:hover{background:rgba(255,255,255,.3)}

/* Messages */
#aicb-chat-messages{flex:1;overflow-y:auto;padding:9px 9px 4px;display:flex;flex-direction:column;gap:7px;background:var(--kbg);scroll-behavior:smooth}
#aicb-chat-messages::-webkit-scrollbar{width:4px}
#aicb-chat-messages::-webkit-scrollbar-thumb{background:var(--kbdr);border-radius:4px}
.aicb-msg{display:flex;flex-direction:column;max-width:88%}
.aicb-bot-msg{align-self:flex-start}
.aicb-user-msg{align-self:flex-end;align-items:flex-end}
.aicb-msg-bubble{padding:8px 10px;border-radius:12px;font-size:12.5px;line-height:1.45;color:var(--kt);word-break:break-word;white-space:pre-line}
.aicb-bot-msg .aicb-msg-bubble{background:var(--kbotbg);color:var(--kbottext);border:1px solid var(--kbdr);border-bottom-left-radius:4px;box-shadow:0 1px 4px rgba(0,0,0,.05)}
.aicb-user-msg .aicb-msg-bubble{background:var(--kuserbg);color:var(--kusertext);border-bottom-right-radius:4px}
.aicb-msg-time{font-size:10px;color:var(--km);margin-top:3px;padding:0 3px}

/* WhatsApp CTA */
.k-wa-btn{display:inline-flex;align-items:center;gap:6px;background:#25D366;color:#fff;padding:7px 12px;border-radius:20px;font-size:12px;font-weight:600;margin-top:8px;text-decoration:none;transition:background .15s}
.k-wa-btn:hover{background:#1ebe5d;color:#fff}

/* Typing */
#aicb-typing{padding:8px 14px;display:flex;align-items:center;gap:5px;background:var(--kbg);flex-shrink:0}
.aicb-typing-label{font-size:11px;color:var(--km);margin-right:4px}
.aicb-typing-dot{width:6px;height:6px;background:var(--kpl);border-radius:50%;animation:kBounce 1.2s infinite}
.aicb-typing-dot:nth-child(3){animation-delay:.2s}.aicb-typing-dot:nth-child(4){animation-delay:.4s}
@keyframes kBounce{0%,60%,100%{transform:translateY(0)}30%{transform:translateY(-6px)}}

/* Order Form */
#aicb-order-form{padding:8px 12px;display:flex;gap:8px;background:var(--kbg);border-top:1px solid var(--kbdr);flex-shrink:0}
#aicb-order-input{flex:1;border:1.5px solid var(--kbdr);border-radius:10px;padding:8px 12px;font-size:13px;outline:none;transition:border-color .15s}
#aicb-order-input:focus{border-color:var(--kp)}
#aicb-order-submit{background:var(--kp);color:#fff;border:none;border-radius:10px;padding:8px 14px;font-size:13px;font-weight:600;cursor:pointer}
#aicb-order-submit:hover{background:var(--kpd)}

/* Checkout Form */
#aicb-checkout-form{padding:9px 12px;background:var(--kbg);border-top:1px solid var(--kbdr);flex-shrink:0}
.k-checkout-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.k-checkout-grid input,.k-checkout-grid select{border:1.5px solid var(--kbdr);border-radius:10px;padding:8px 10px;font-size:12.5px;outline:none;background:#fff}
.k-checkout-grid input:focus,.k-checkout-grid select:focus{border-color:var(--kp)}
#aicb-co-address,#aicb-co-email{grid-column:1 / -1}
#aicb-place-order-btn{margin-top:8px;width:100%;background:var(--kp);color:#fff;border:none;border-radius:10px;padding:9px 10px;font-size:13px;font-weight:700;cursor:pointer}
#aicb-place-order-btn:hover{background:var(--kpd)}
.k-checkout-inline-btns{display:flex;gap:8px;margin-top:8px}
.k-checkout-inline-btns #aicb-place-order-btn{margin-top:0;flex:1}
.k-btn-cancel{flex:1;border:1.5px solid var(--kbdr);background:#fff;color:var(--kt);border-radius:10px;font-size:12.5px;font-weight:600;cursor:pointer}
.k-btn-cancel:hover{border-color:var(--kp);color:var(--kp)}

.k-flow-actions{display:flex;gap:6px;flex-wrap:wrap}
.k-flow-btn{border:1px solid var(--kbdr);background:#fff;color:var(--kp);font-size:11px;padding:5px 8px;border-radius:16px;cursor:pointer}
.k-flow-btn:hover{background:var(--kpale);border-color:var(--kp)}

/* Quiz */
.aicb-quiz-row{max-width:100%!important;width:100%}
.k-quiz-opts{display:flex;flex-wrap:wrap;gap:7px;padding:2px 0}
.aicb-quiz-opt{background:#fff;border:1.5px solid var(--kbdr);color:var(--kt);padding:7px 12px;border-radius:22px;font-size:13px;cursor:pointer;transition:all .15s}
.aicb-quiz-opt:hover:not(:disabled){background:var(--kp);border-color:var(--kp);color:#fff}
.aicb-quiz-opt:disabled{opacity:.6;cursor:default}
.kq-selected{background:var(--kp)!important;border-color:var(--kp)!important;color:#fff!important}

/* Product Grid */
.k-product-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;width:100%}
.k-prod-card{background:#fff;border:1.5px solid var(--kbdr);border-radius:13px;overflow:hidden;transition:box-shadow .2s;position:relative}
.k-prod-card:hover{box-shadow:0 4px 16px rgba(99,121,90,.15)}
.k-prod-img{width:100%;height:110px;object-fit:cover;display:block}
.k-prod-img-ph{width:100%;height:110px;display:flex;align-items:center;justify-content:center;background:var(--kpale);font-size:30px}
.k-out-badge{position:absolute;top:7px;left:7px;background:#e74c3c;color:#fff;font-size:10px;font-weight:700;padding:2px 7px;border-radius:10px}
.k-prod-info{padding:8px 9px 9px}
.k-prod-name{font-weight:700;font-size:12px;color:var(--kt);line-height:1.3;margin-bottom:3px}
.k-prod-price{font-size:13px;font-weight:700;color:var(--kp);margin-bottom:7px}
.k-prod-actions{display:flex;gap:5px}
.aicb-add-cart-btn{flex:1;background:var(--kp);color:#fff;border:none;border-radius:8px;padding:6px 4px;font-size:11px;font-weight:600;cursor:pointer;transition:background .15s}
.aicb-add-cart-btn:hover:not(:disabled){background:var(--kpd)}
.aicb-add-cart-btn:disabled{background:#ccc;cursor:default}
.aicb-add-cart-btn.k-added{background:#27ae60}
.aicb-view-btn{background:transparent;border:1.5px solid var(--kbdr);color:var(--kp);border-radius:8px;padding:6px 7px;font-size:11px;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}
.aicb-view-btn:hover{background:var(--kpale);border-color:var(--kp)}

/* Cart Summary */
.k-cart-summary{background:var(--kpale);border:1.5px solid var(--kbdr);border-radius:13px;padding:12px 14px;width:100%}
.k-cart-title{font-weight:700;font-size:14px;color:var(--kt);margin-bottom:10px}
.k-cart-item{display:flex;align-items:center;gap:6px;padding:5px 0;border-bottom:1px solid var(--kbdr);font-size:13px}
.k-cart-item:last-child{border:none}
.k-item-name{flex:1;color:var(--kt)}
.k-item-qty{color:var(--km);font-size:12px}
.k-item-price{font-weight:700;color:var(--kp)}
.k-cart-total{font-weight:700;font-size:14px;color:var(--kt);margin:10px 0 10px;text-align:right}
.k-cart-btns,.k-checkout-btns{display:flex;gap:8px;margin-bottom:6px}
.k-btn-cart{flex:1;padding:8px;border-radius:10px;text-align:center;font-size:12.5px;font-weight:600;text-decoration:none;background:#fff;border:1.5px solid var(--kbdr);color:var(--kt);transition:all .15s}
.k-btn-cart:hover{border-color:var(--kp);color:var(--kp)}
.k-btn-checkout{flex:1;padding:8px;border-radius:10px;text-align:center;font-size:12.5px;font-weight:600;text-decoration:none;background:var(--kp);color:#fff;transition:background .15s}
.k-btn-checkout:hover{background:var(--kpd);color:#fff}

/* Checkout Prompt */
.k-checkout-prompt{background:var(--kpale);border:1.5px solid var(--kbdr);border-radius:12px;padding:12px 14px;width:100%}
.k-checkout-prompt p{margin:0 0 9px;font-size:13px;color:var(--kt)}
.k-btn-coupon{width:100%;background:#fff;border:1.5px solid var(--kbdr);color:var(--kp);padding:8px;border-radius:10px;font-size:12.5px;font-weight:700;cursor:pointer;margin-bottom:6px}
.k-btn-coupon:hover{border-color:var(--kp);background:var(--kpale)}
.k-btn-place-order{width:100%;background:var(--kp);border:none;color:#fff;padding:8px;border-radius:10px;font-size:12.5px;font-weight:700;cursor:pointer;margin-bottom:6px}
.k-btn-place-order:hover{background:var(--kpd)}
.k-btn-guide{width:100%;background:transparent;border:1.5px dashed var(--kpl);color:var(--kp);padding:7px;border-radius:10px;font-size:12.5px;font-weight:600;cursor:pointer;transition:all .15s;margin-top:2px}
.k-btn-guide:hover{background:#fff;border-style:solid}

/* Suggested Questions */
#aicb-quick-replies-wrap{background:var(--kbg);border-top:1px solid var(--kbdr);flex-shrink:0}
#aicb-quick-replies-toggle{width:100%;border:none;background:transparent;color:var(--kp);padding:6px 12px;font-size:11.5px;font-weight:600;text-align:left;cursor:pointer}
#aicb-suggested-questions{padding:0 12px 6px;background:var(--kbg)}
.k-suggestions{display:flex;flex-wrap:wrap;gap:5px}
.aicb-suggestion-btn{background:#fff;border:1.5px solid var(--kbdr);color:var(--kp);padding:5px 10px;border-radius:20px;font-size:11.5px;cursor:pointer;transition:all .15s}
.aicb-suggestion-btn:hover{background:var(--kp);border-color:var(--kp);color:#fff}

/* Input */
#aicb-chat-input-area{padding:7px 8px;display:flex;gap:6px;align-items:flex-end;border-top:1px solid var(--kbdr);background:var(--kinputbg);flex-shrink:0}
#aicb-chat-input{flex:1;border:1.5px solid var(--kbdr);border-radius:11px;padding:8px 10px;font-size:12.5px;resize:none;outline:none;line-height:1.35;max-height:90px;overflow-y:auto;font-family:inherit;transition:border-color .15s}
#aicb-chat-input:focus{border-color:var(--kp)}
#aicb-send-btn{background:var(--kp);border:none;border-radius:10px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;flex-shrink:0;transition:background .15s,transform .1s}
#aicb-send-btn:hover{background:var(--kpd)}
#aicb-send-btn:active{transform:scale(.93)}
#aicb-send-btn:disabled{background:#aaa;cursor:default}

/* Footer */
#aicb-chat-footer{text-align:center;font-size:9.5px;color:var(--km);padding:4px 0 6px;background:var(--kinputbg);flex-shrink:0}
#aicb-chat-footer a{color:var(--kp);text-decoration:none}

/* Mobile */
@media(max-width:480px){
  #aicb-chat-window{width:calc(100vw - 16px);right:8px;bottom:86px;max-height:75vh}
  #aicb-chat-bubble{bottom:16px;right:16px}
  .k-product-grid{grid-template-columns:1fr 1fr;gap:7px}
}
