:root { --sm-ai-green:#202A24; --sm-ai-orange:#D96B3B; --sm-ai-ivory:#F5F1E8; --sm-ai-border:#E7E8E3; }
.sm-ai-root, .sm-ai-root * { box-sizing:border-box; }
.sm-ai-root { font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:#263129; z-index:999999; }
.sm-ai-floating-root { position:fixed; right:22px; bottom:22px; }
.sm-ai-toggle { display:flex; align-items:center; gap:10px; border:0; border-radius:999px; padding:13px 19px; background:var(--sm-ai-orange); color:#fff; font-size:14px; font-weight:750; box-shadow:0 8px 28px rgba(32,42,36,.22); cursor:pointer; }
.sm-ai-toggle:hover { background:#B95127; }
.sm-ai-toggle-icon { display:grid; place-items:center; width:27px; height:27px; border-radius:50%; background:rgba(255,255,255,.18); font-size:19px; }
.sm-ai-panel { display:flex; flex-direction:column; width:min(390px,calc(100vw - 28px)); height:min(580px,calc(100vh - 110px)); min-height:360px; background:#fff; border:1px solid var(--sm-ai-border); border-radius:18px; overflow:hidden; box-shadow:0 18px 65px rgba(22,32,25,.22); }
.sm-ai-panel[hidden] { display:none; }
.sm-ai-floating-root .sm-ai-panel { margin-bottom:12px; }
.sm-ai-header { display:flex; align-items:center; gap:11px; padding:15px 16px; background:var(--sm-ai-green); color:#fff; }
.sm-ai-avatar { display:grid; place-items:center; width:39px; height:39px; flex:0 0 39px; border-radius:12px; background:var(--sm-ai-orange); color:#fff; font-size:22px; }
.sm-ai-header-copy { display:flex; flex:1; flex-direction:column; gap:3px; }
.sm-ai-header-copy strong { font-size:15px; }
.sm-ai-header-copy small { color:#DDE4DD; font-size:12px; }
.sm-ai-close { border:0; background:transparent; color:#fff; font-size:28px; line-height:1; cursor:pointer; }
.sm-ai-messages { flex:1; overflow-y:auto; padding:15px; background:#FCFCFA; }
.sm-ai-message { display:flex; margin:0 0 12px; }
.sm-ai-message--user { justify-content:flex-end; }
.sm-ai-bubble { max-width:88%; padding:11px 13px; border-radius:14px 14px 14px 4px; background:#F0F1EC; color:#29332C; font-size:14px; line-height:1.5; white-space:pre-wrap; overflow-wrap:anywhere; }
.sm-ai-message--user .sm-ai-bubble { border-radius:14px 14px 4px 14px; background:var(--sm-ai-green); color:#fff; }
.sm-ai-waiting .sm-ai-bubble { color:#606960; font-style:italic; }
.sm-ai-products { margin:0 0 14px; }
.sm-ai-products-title { margin:0 0 8px; font-size:12px; font-weight:800; color:#586159; text-transform:uppercase; letter-spacing:.04em; }
.sm-ai-product { display:flex; gap:10px; margin:8px 0; padding:9px; border:1px solid var(--sm-ai-border); border-radius:12px; background:#fff; color:inherit; text-decoration:none; }
.sm-ai-product:hover { border-color:var(--sm-ai-orange); color:inherit; }
.sm-ai-product-image { width:68px; height:68px; flex:0 0 68px; object-fit:contain; border-radius:8px; background:#F8F7F3; }
.sm-ai-product-info { display:flex; flex-direction:column; align-items:flex-start; gap:3px; min-width:0; }
.sm-ai-product-name { font-size:13px; line-height:1.35; }
.sm-ai-product-price { font-size:13px; font-weight:800; color:var(--sm-ai-green); }
.sm-ai-product-description { color:#697169; font-size:11px; line-height:1.35; }
.sm-ai-product-link { color:#B95127; font-size:12px; font-weight:750; }
.sm-ai-form { display:flex; align-items:flex-end; gap:8px; padding:12px; border-top:1px solid var(--sm-ai-border); background:#fff; }
.sm-ai-input { display:block; flex:1; width:0; min-height:43px; max-height:100px; resize:vertical; border:1px solid #D8DDD7; border-radius:10px; padding:11px 12px; font:inherit; font-size:14px; color:#263129; background:#fff; }
.sm-ai-input:focus { outline:2px solid rgba(217,107,59,.3); border-color:var(--sm-ai-orange); }
.sm-ai-send { min-height:43px; border:0; border-radius:10px; padding:0 15px; background:var(--sm-ai-orange); color:#fff; font-size:13px; font-weight:750; cursor:pointer; }
.sm-ai-send:disabled { opacity:.55; cursor:wait; }
.sm-ai-note { padding:0 12px 10px; background:#fff; color:#7B827C; font-size:10px; line-height:1.4; }
.sm-ai-inline-mount { width:100%; max-width:760px; margin:20px auto; }
.sm-ai-inline-mount .sm-ai-panel { width:100%; height:560px; }
.sm-ai-inline-mount .sm-ai-toggle { display:none; }
@media(max-width:600px) {
 .sm-ai-floating-root { right:12px; bottom:12px; }
 .sm-ai-toggle { padding:11px 14px; }
 .sm-ai-toggle-label { font-size:13px; }
 .sm-ai-panel { width:calc(100vw - 24px); height:min(72vh,590px); min-height:340px; }
 .sm-ai-inline-mount .sm-ai-panel { height:65vh; min-height:420px; }
}
@media(prefers-reduced-motion:reduce) { .sm-ai-root * { scroll-behavior:auto !important; } }

/* Optional Shailmart premium homepage hero: [shailmart_home_hero] */
.sm-home-hero { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); align-items:center; gap:clamp(22px,4vw,54px); margin:24px 0 42px; padding:clamp(24px,5vw,62px); overflow:hidden; border-radius:22px; background:var(--sm-ai-ivory); }
.sm-home-hero-copy { max-width:590px; }
.sm-home-eyebrow { margin:0 0 13px; color:var(--sm-ai-orange); font-size:12px; font-weight:800; letter-spacing:1.5px; }
.sm-home-hero h1 { margin:0 0 17px; color:var(--sm-ai-green); font-size:clamp(34px,4.4vw,58px); font-weight:750; line-height:1.08; letter-spacing:-1.5px; }
.sm-home-hero-copy > p:not(.sm-home-eyebrow) { max-width:480px; margin:0 0 24px; color:#505850; font-size:17px; line-height:1.7; }
.sm-home-hero-actions { display:flex; flex-wrap:wrap; gap:11px; }
.sm-home-btn { display:inline-flex; align-items:center; justify-content:center; min-height:47px; padding:12px 18px; border:1px solid transparent; border-radius:9px; font-size:14px; font-weight:750; text-decoration:none!important; }
.sm-home-btn-primary { background:var(--sm-ai-orange); color:#fff!important; }
.sm-home-btn-primary:hover { background:#B95127; color:#fff!important; }
.sm-home-btn-secondary { border-color:var(--sm-ai-green); color:var(--sm-ai-green)!important; }
.sm-home-btn-secondary:hover { background:var(--sm-ai-green); color:#fff!important; }
.sm-home-points { display:flex; flex-wrap:wrap; gap:8px 18px; margin-top:20px; color:#606960; font-size:12px; }
.sm-home-points span:before { content:'✓'; margin-right:6px; color:var(--sm-ai-orange); font-weight:800; }
.sm-home-hero-image { display:flex; align-items:center; justify-content:center; min-height:250px; overflow:hidden; border-radius:16px; background:#fff; }
.sm-home-hero-image img { display:block; width:100%; height:auto; max-height:470px; object-fit:cover; }
.sm-home-image-placeholder { padding:35px; color:var(--sm-ai-green); text-align:center; font-size:24px; font-weight:700; }
/* Safe, restrained WooCommerce product styling */
.woocommerce ul.products li.product { overflow:hidden; border:1px solid var(--sm-ai-border); border-radius:14px; padding:10px; background:#fff; }
.woocommerce ul.products li.product a img { border-radius:9px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { color:var(--sm-ai-green); font-size:15px; line-height:1.4; }
.woocommerce ul.products li.product .price, .woocommerce div.product p.price, .woocommerce div.product span.price { color:var(--sm-ai-green); font-weight:750; }
.woocommerce ul.products li.product .button, .woocommerce div.product form.cart .single_add_to_cart_button { border:0; border-radius:8px; background:var(--sm-ai-orange); color:#fff; font-weight:750; }
.woocommerce ul.products li.product .button:hover, .woocommerce div.product form.cart .single_add_to_cart_button:hover { background:#B95127; color:#fff; }
.woocommerce div.product div.images img { border-radius:14px; }
.woocommerce div.product .product_title { color:var(--sm-ai-green); line-height:1.2; }
@media(max-width:700px) { .sm-home-hero { grid-template-columns:1fr; gap:22px; padding:24px 18px; margin:12px 0 28px; border-radius:15px; } .sm-home-hero h1 { font-size:36px; letter-spacing:-.8px; } .sm-home-hero-copy > p:not(.sm-home-eyebrow) { font-size:15px; } .sm-home-hero-actions { flex-direction:column; } .sm-home-btn { width:100%; } .sm-home-hero-image { min-height:180px; } .sm-home-points { flex-direction:column; gap:6px; } }
