.ks-real-ai{position:fixed;right:24px;bottom:max(20px,env(safe-area-inset-bottom));z-index:9998;font:14px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:#233b30;text-align:left;letter-spacing:normal;text-transform:none}.ks-real-ai *{box-sizing:border-box}.ks-real-ai [hidden]{display:none!important}.ks-real-ai button,.ks-real-ai textarea,.ks-real-ai a,.ks-real-ai summary{font:inherit;letter-spacing:normal;text-transform:none}.ks-real-ai button{cursor:pointer;box-shadow:none}.ks-real-ai button:before,.ks-real-ai button:after,.ks-real-ai p:before,.ks-real-ai p:after,.ks-real-ai a:before,.ks-real-ai a:after{display:none}.ks-real-ai p{padding:0;text-align:left;text-transform:none;font-weight:400;letter-spacing:normal}.ks-real-ai svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.ks-real-toggle{display:flex;align-items:center;gap:10px;margin-left:auto;min-height:54px;padding:12px 20px;border:1px solid #ffffff35;border-radius:30px;background:#145c3c;color:#fff;box-shadow:0 6px 24px #103d3430!important;font-weight:600!important;transition:background .2s,transform .2s}.ks-real-toggle:hover{background:#0a472d;transform:translateY(-2px)}.ks-real-panel{display:flex;flex-direction:column;width:378px;max-width:calc(100vw - 32px);height:548px;max-height:calc(var(--ks-view-height,100dvh) - 104px);margin-bottom:12px;border:1px solid #d9e3dc;border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 20px 65px #12382a30;animation:ks-chat-in .2s ease-out}.ks-real-head{display:flex;align-items:center;gap:11px;padding:18px 16px;border-bottom:1px solid #e9ede9;flex-shrink:0;background:#fff}.ks-real-avatar{display:grid;place-items:center;width:43px;height:43px;flex-shrink:0;border-radius:14px;background:#145c3c;color:#f1dc77;font-size:13px;font-weight:750;letter-spacing:-.5px}.ks-real-identity{flex:1;min-width:0}.ks-real-identity strong{display:block;font-size:15px;line-height:1.5;font-weight:650;color:#183d2c}.ks-real-sub{display:block;font-size:11px;color:#718478}.ks-real-icon{display:grid;place-items:center;width:34px;height:38px;padding:0;border:0;border-radius:10px;color:#78897e;background:transparent}.ks-real-icon:hover{background:#f0f4ef;color:#174b33}.ks-real-icon svg{width:18px;height:18px}.ks-real-log{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c8d6cc transparent;padding:20px 16px;background:#f5f7f4;outline-offset:-4px!important}.ks-real-welcome{padding:18px 4px}.ks-real-welcome strong{display:block;max-width:260px;color:#244b36;font-size:24px;font-weight:650;line-height:1.25;letter-spacing:-.7px}.ks-real-welcome p{margin:14px 0 22px;color:#65786c;font-size:14px;line-height:1.65;max-width:285px}.ks-real-chips{display:flex;gap:8px;flex-wrap:wrap}.ks-real-chips button{border:1px solid #d5e0d5;border-radius:20px;padding:9px 13px;background:#fff;color:#245b3a;min-height:40px;font-size:12px;font-weight:550}.ks-real-chips button:hover{background:#e8f0e5;border-color:#acc4ad}.ks-message{display:table;max-width:94%;margin:0 0 14px;padding:13px 15px;border-radius:15px 15px 15px 4px;white-space:pre-wrap;overflow-wrap:anywhere;background:#fff;border:1px solid #e3e9e0;color:#2d4436;font-size:14px;line-height:1.65;text-align:left;font-weight:400;letter-spacing:normal;text-transform:none}.ks-user{max-width:88%;margin-left:auto;border-radius:15px 15px 4px 15px;background:#185d3d;border-color:#185d3d;color:#fff}.ks-message a{display:inline-flex;align-items:center;min-height:36px;padding:5px 11px;margin:5px 0 0;border:1px solid #d5e2d3;border-radius:9px;background:#f2f6ee;color:#24633d;text-decoration:none;font-size:12px;font-weight:600;white-space:normal}.ks-message a:hover{background:#e5efdc}.ks-real-form{display:flex;gap:9px;align-items:flex-end;padding:12px 14px 8px;margin:0;background:white;border-top:1px solid #e6ece5;flex-shrink:0}.ks-real-form textarea{display:block;flex:1;min-width:0;width:100%;height:44px;min-height:44px;max-height:104px;resize:none;margin:0;padding:11px 10px;border:0;border-radius:10px;background:#f6f7f4;color:#273d30;font-size:16px;line-height:22px;box-shadow:none}.ks-real-form textarea::placeholder{color:#859085;opacity:1;font-size:14px}.ks-real-send{display:grid;place-items:center;flex-shrink:0;width:42px;height:44px;border:0;border-radius:13px;background:#185d3d;color:#fff;padding:0}.ks-real-send:disabled{background:#eaf0e6;color:#9ead9c;cursor:default}.ks-real-footer{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px 17px 13px;flex-shrink:0;background:white;font-size:11px;color:#7c8a7d}.ks-real-links{display:flex;gap:14px;flex-wrap:wrap}.ks-real-links a,.ks-real-info>a{font-size:11px;color:#627567;text-decoration:none;min-height:30px;display:inline-flex;align-items:center}.ks-real-links a:hover{text-decoration:underline}.ks-real-info summary{cursor:pointer;font-size:11px;min-height:30px;display:flex;align-items:center;white-space:nowrap;list-style:none}.ks-real-info summary::-webkit-details-marker{display:none}.ks-real-info[open]{position:absolute;bottom:0;left:0;right:0;padding:12px 18px;background:#fff;box-shadow:0 -8px 25px #12382a12;border-top:1px solid #e1e8df}.ks-real-info[open] summary{color:#245b3a;font-weight:600}.ks-real-info p{margin:8px 0;font-size:11px;line-height:1.6;color:#637268}.ks-real-state{padding:10px 16px;font-size:12px;line-height:1.5;color:#6c5736;background:#faf3e5;border-top:1px solid #eddfc7;flex-shrink:0;max-height:125px;overflow:auto}.ks-real-typing{display:flex;gap:5px;width:57px;padding:15px 12px;background:#fff;border:1px solid #e3e9e0;border-radius:14px 14px 14px 4px}.ks-real-typing span{width:5px;height:5px;border-radius:50%;background:#91a68b;animation:ks-chat-dot 1s ease-in-out infinite}.ks-real-typing span:nth-child(2){animation-delay:.15s}.ks-real-typing span:nth-child(3){animation-delay:.3s}.ks-real-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ks-real-ai :focus-visible{outline:2px solid #c9a82a;outline-offset:3px}.ks-real-ai button:disabled{cursor:default}.ks-real-icon:disabled,.ks-real-chips button:disabled{opacity:.45}@keyframes ks-chat-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes ks-chat-dot{50%{opacity:.35;transform:translateY(-3px)}}@media(max-width:640px){.ks-real-ai{right:10px;bottom:calc(max(10px,env(safe-area-inset-bottom)) + var(--ks-keyboard,0px))}.ks-real-panel{width:calc(100vw - 20px);max-width:400px;height:580px;max-height:calc(var(--ks-view-height,100dvh) - 24px - env(safe-area-inset-bottom));margin-bottom:0;border-radius:20px}.ks-real-ai.ks-open .ks-real-toggle{display:none}.ks-real-toggle{font-size:13px;min-height:50px;padding:11px 17px}.ks-real-head{padding:14px}.ks-real-log{padding:16px 13px}.ks-real-welcome{padding:18px 4px}.ks-real-welcome strong{font-size:25px}.ks-real-footer{padding-bottom:10px}.ks-message{max-width:95%}}@media(prefers-reduced-motion:reduce){.ks-real-ai *{animation:none!important;transition:none!important}}@media print{.ks-real-ai{display:none}}

/* Farmer mascot: self-contained vectors, respects reduced-motion preferences. */
.ks-real-ai .ks-farmer{display:inline-block;width:64px;height:69px;flex-shrink:0;position:relative;line-height:0}.ks-real-ai .ks-farmer svg{display:block;width:100%;height:100%;fill:initial;stroke:none;overflow:visible}.ks-real-toggle{padding-left:9px;gap:8px;min-height:56px}.ks-real-toggle>.ks-farmer{margin:-22px 0 -3px;width:66px;height:71px;filter:drop-shadow(0 2px 2px #103d3420)}.ks-real-avatar{background:#f4edd7;border-radius:50%;overflow:hidden;width:46px;height:46px}.ks-real-avatar .ks-farmer{width:45px;height:49px;margin-top:4px}.ks-farmer-wave{transform-origin:78px 83px;animation:ks-farmer-hello 1.3s ease-in-out 2}.ks-real-toggle:hover .ks-farmer-wave{animation:ks-farmer-hello 1.3s ease-in-out infinite}.ks-farmer-eyes{transform-origin:52px 53px;animation:ks-farmer-blink 7s infinite}.ks-farmer-sleep-eyes,.ks-farmer-zzz{display:none}.ks-thinking .ks-farmer-head{transform-origin:52px 70px;animation:ks-farmer-think 1.8s ease-in-out infinite}.ks-sleeping .ks-farmer-eyes{display:none}.ks-sleeping .ks-farmer-sleep-eyes,.ks-sleeping .ks-farmer-zzz{display:block}.ks-sleeping .ks-farmer-zzz{animation:ks-farmer-dream 2.5s ease-in-out infinite}.ks-sleeping .ks-farmer-wave,.ks-thinking .ks-farmer-wave{animation:none!important;transform:rotate(15deg)}.ks-sleeping .ks-farmer-head{transform-origin:52px 70px;transform:rotate(-6deg);animation:none}@keyframes ks-farmer-hello{0%,100%{transform:rotate(0)}25%,65%{transform:rotate(-15deg)}45%,85%{transform:rotate(9deg)}}@keyframes ks-farmer-blink{0%,42%,46%,100%{transform:scaleY(1)}44%{transform:scaleY(.12)}}@keyframes ks-farmer-think{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(4deg)}}@keyframes ks-farmer-dream{0%,100%{opacity:.5;transform:translateY(1px)}50%{opacity:1;transform:translateY(-3px)}}@media(max-width:640px){.ks-real-toggle{padding-left:7px;min-height:52px}.ks-real-toggle>.ks-farmer{width:58px;height:63px;margin-top:-18px}}

/* Reserve the lower-right row for the existing mobile shop shortcut. */
@media(max-width:900px){.ks-real-ai{bottom:calc(72px + env(safe-area-inset-bottom) + var(--ks-keyboard,0px))}.ks-real-panel{max-height:calc(var(--ks-view-height,100dvh) - 168px - env(safe-area-inset-bottom))}}
@media(max-width:640px){.ks-real-panel{max-height:calc(var(--ks-view-height,100dvh) - 86px - env(safe-area-inset-bottom))}}

/* Opposite corners: farmer left, shop right. Keep the shop clear when chat opens. */
.ks-real-ai{left:24px;right:auto}.ks-real-toggle{margin-left:0;margin-right:auto}
@media(max-width:900px){.ks-real-ai{left:14px;right:auto}.ks-real-ai:not(.ks-open){bottom:calc(14px + env(safe-area-inset-bottom) + var(--ks-keyboard,0px))}.ks-real-toggle{max-width:calc(100vw - 142px)}.ks-real-toggle>span:not(.ks-farmer){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-shop-shortcut{bottom:calc(14px + env(safe-area-inset-bottom));animation:ks-shop-pulse 6s ease-out 2s infinite}.mobile-shop-shortcut:hover,.mobile-shop-shortcut:focus-visible{animation:none}}
@media(max-width:640px){.ks-real-ai{left:10px;right:auto}.ks-real-toggle{gap:5px;padding-right:12px}}
@keyframes ks-shop-pulse{0%,24%,100%{box-shadow:0 8px 24px #00000030,0 0 0 0 #f4cd0000}3%{box-shadow:0 8px 24px #00000030,0 0 0 0 #f4cd0070}22%{box-shadow:0 8px 24px #00000030,0 0 0 12px #f4cd0000}}
@media(prefers-reduced-motion:reduce){.mobile-shop-shortcut{animation:none!important}}
@media(max-width:900px){.ks-real-toggle{max-width:calc(100vw - 190px)}}
@media(max-width:380px){.ks-real-toggle>span:not(.ks-farmer){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.ks-real-toggle{padding-right:7px;gap:0}}

/* Stronger shop CTA: readable label and two short pulses followed by a pause. */
@media(max-width:900px){body .mobile-shop-shortcut{justify-content:center;min-width:132px;min-height:52px;padding:12px 17px;border:2px solid #23623b;background:#ffe101;color:#123f2a;font-size:14px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;box-shadow:0 6px 20px #173f2940;transform-origin:center;animation:ks-shop-attention 4s ease-in-out .7s infinite}body .mobile-shop-shortcut:hover,body .mobile-shop-shortcut:focus-visible{animation:none;transform:translateY(-2px)}}
@keyframes ks-shop-attention{0%,32%,100%{transform:translateY(0) scale(1);box-shadow:0 6px 20px #173f2940,0 0 0 0 #ffda0000}7%,21%{transform:translateY(-4px) scale(1.04);box-shadow:0 9px 24px #173f294d,0 0 0 7px #ffda0050}14%,28%{transform:translateY(0) scale(1);box-shadow:0 6px 20px #173f2940,0 0 0 13px #ffda0000}}
@media(prefers-reduced-motion:reduce){body .mobile-shop-shortcut{animation:none!important;transform:none!important}}

/* More visible movement without enlarging the shop button. */
@media(max-width:900px){body .mobile-shop-shortcut{overflow:hidden;isolation:isolate;animation:ks-shop-wave 4.5s ease-in-out .5s infinite}body .mobile-shop-shortcut::after{content:"";display:block;position:absolute;inset:-25% auto -25% -70%;width:55%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.8),transparent);pointer-events:none;transform:skewX(-18deg);animation:ks-shop-shine 4.5s ease-in-out .5s infinite}body .mobile-shop-shortcut:hover,body .mobile-shop-shortcut:focus-visible{animation:none;transform:none}body .mobile-shop-shortcut:hover::after,body .mobile-shop-shortcut:focus-visible::after{animation:none;opacity:0}}
@keyframes ks-shop-wave{0%,28%,100%{transform:translateY(0) rotate(0)}5%{transform:translateY(-5px) rotate(-5deg)}10%{transform:translateY(-5px) rotate(5deg)}15%{transform:translateY(-5px) rotate(-4deg)}20%{transform:translateY(-3px) rotate(3deg)}}
@keyframes ks-shop-shine{0%{left:-70%;opacity:0}5%{opacity:.8}28%{left:130%;opacity:.8}29%,100%{left:130%;opacity:0}}
@media(prefers-reduced-motion:reduce){body .mobile-shop-shortcut,body .mobile-shop-shortcut::after{animation:none!important;transform:none!important}body .mobile-shop-shortcut::after{display:none}}

.ks-real-ai .ks-real-recording{flex-shrink:0;margin:0;padding:3px 17px 5px;background:#fff;color:#617164;font-size:11px;line-height:1.45;text-align:left}

/* Keep navigation unobstructed; chat state is retained while hidden. */
body.mobile-menu-open .ks-real-ai{visibility:hidden;pointer-events:none}
.ks-real-ai .ks-real-icon{width:44px;height:44px;min-width:44px;min-height:44px}
@media(max-width:380px){.ks-real-head{gap:7px;padding:12px 10px}.ks-real-identity strong{font-size:14px}}
