/* WP LAB Recipes 1.4.1. All styles scoped to this widget; no global chat/textarea/button selectors. */
.wplr-floating-chat{--wplr-chat-accent:#4f7f2c;--wplr-chat-ink:#22332b;--wplr-chat-muted:#65716b;--wplr-chat-line:#e3eae2;--wplr-chat-bottom:24px;--wplr-chat-bottom-safe:min(var(--wplr-chat-bottom),max(0px,calc(100dvh - 400px)));--wplr-chat-top:16px;position:fixed;right:max(20px,env(safe-area-inset-right));bottom:calc(var(--wplr-chat-bottom-safe) + env(safe-area-inset-bottom));z-index:99990;font:400 15px/1.55 var(--theme-font-family,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif);color:var(--wplr-chat-ink);text-align:left;isolation:isolate;color-scheme:light}
.wplr-floating-chat,.wplr-floating-chat *{box-sizing:border-box}
.wplr-floating-chat [hidden],.wplr-floating-chat[hidden]{display:none!important}
.wplr-floating-chat.wplr-chat-left{left:max(20px,env(safe-area-inset-left));right:auto}
.wplr-floating-chat button{font:inherit;cursor:pointer;text-transform:none;letter-spacing:normal;box-shadow:none;margin:0;min-height:0;line-height:1.3}
.wplr-floating-chat button:disabled{opacity:.45;cursor:default}
.wplr-floating-chat button:focus-visible,.wplr-floating-chat textarea:focus-visible,.wplr-floating-chat a:focus-visible,.wplr-floating-chat summary:focus-visible,.wplr-floating-chat [tabindex]:focus-visible{outline:3px solid var(--wplr-chat-accent);outline-offset:3px}
.wplr-floating-chat .wplr-float-launcher{display:inline-flex;align-items:center;justify-content:center;gap:10px;max-width:280px;min-height:56px;padding:14px 22px;background:var(--wplr-chat-accent);border:1px solid #ffffff25;border-radius:40px;color:#fff;font-size:14px;font-weight:650;box-shadow:0 6px 26px #18291533}
.wplr-float-launcher>.wplr-icon{width:24px;height:24px;font-size:24px}
.wplr-float-unread{width:9px;height:9px;border-radius:50%;background:#fff;box-shadow:0 0 0 3px #ffffff3a}
.wplr-floating-chat .wplr-float-panel{position:fixed;inset:auto max(20px,env(safe-area-inset-right)) calc(var(--wplr-chat-bottom-safe) + 72px + env(safe-area-inset-bottom)) auto;display:flex;flex-direction:column;gap:0;width:min(460px,calc(100vw - 32px));height:min(720px,calc(100vh - var(--wplr-chat-bottom-safe) - 96px - var(--wplr-chat-top)));height:min(720px,calc(100dvh - var(--wplr-chat-bottom-safe) - 96px - var(--wplr-chat-top)));max-width:calc(100vw - 16px);max-height:none;min-height:220px;padding:0;margin:0;background:#fff;color:var(--wplr-chat-ink);border:1px solid var(--wplr-chat-line);border-radius:20px;box-shadow:0 16px 65px #1b342337;overflow:hidden;font:inherit;overscroll-behavior:contain}
.wplr-floating-chat .wplr-float-panel:not([open]){display:none!important}
.wplr-floating-chat.wplr-chat-left .wplr-float-panel{right:auto;left:max(20px,env(safe-area-inset-left))}
.wplr-floating-chat .wplr-float-panel.is-expanded{width:min(780px,calc(100vw - 32px))}
.wplr-float-panel::backdrop{background:#14201755;backdrop-filter:blur(2px)}
.wplr-floating-chat .wplr-float-header{display:flex;align-items:center;gap:11px;flex-shrink:0;padding:17px 15px;background:var(--wplr-chat-accent);color:#fff;border:0}
.wplr-float-avatar{width:41px;height:41px;display:grid;place-items:center;flex:0 0 41px;background:#ffffff21;border:1px solid #ffffff2b;border-radius:12px}
.wplr-float-avatar .wplr-icon{width:25px;height:25px;font-size:25px}
.wplr-float-heading{min-width:0;flex:1}
.wplr-floating-chat .wplr-float-heading h2{font-family:inherit;font-size:16px;font-weight:700;line-height:1.3;letter-spacing:-.02em;margin:0 0 3px;color:#fff;overflow-wrap:anywhere}
.wplr-float-heading>span{display:block;font-size:11px;color:#ffffffe0;line-height:1.4}
.wplr-float-tools{display:flex;gap:2px;align-items:center;flex-shrink:0}
.wplr-floating-chat .wplr-float-tools button{width:30px;height:34px;padding:0;display:grid;place-items:center;background:transparent;border:0;border-radius:8px;color:#fff}
.wplr-float-tools .wplr-icon{width:17px;height:17px;font-size:17px}
.wplr-floating-chat .wplr-float-tools button:hover{background:#ffffff26}
.wplr-floating-chat .wplr-float-tools button:focus-visible{outline-color:#fff;outline-width:2px;outline-offset:1px}
.wplr-float-context{display:flex;align-items:center;gap:10px;padding:12px 17px;border-bottom:1px solid var(--wplr-chat-line);background:#f6f9f3;flex-shrink:0}
.wplr-float-context>.wplr-icon{color:var(--wplr-chat-accent)}
.wplr-float-context>div{min-width:0}
.wplr-float-context strong{display:block;font-size:12px;font-weight:650;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;line-height:1.5}
.wplr-float-context [data-chat-portions]{display:block;font-size:11px;color:var(--wplr-chat-muted)}
.wplr-float-scroll{flex:1 1 auto;min-height:40px;overflow-y:auto;padding:18px 17px 14px;scrollbar-width:thin;overscroll-behavior:contain;background:linear-gradient(180deg,#fcfdfb,#fff 200px);overflow-wrap:anywhere}
.wplr-float-welcome{padding:15px 8px 18px;text-align:center}
.wplr-float-welcome-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;background:#edf3e7;color:var(--wplr-chat-accent);border-radius:50%;margin-bottom:10px}
.wplr-floating-chat .wplr-float-welcome h3{margin:0 0 8px;font-size:19px;line-height:1.3;color:var(--wplr-chat-ink);letter-spacing:-.02em}
.wplr-floating-chat .wplr-float-welcome p{margin:0 auto;font-size:13px;color:var(--wplr-chat-muted);max-width:360px;line-height:1.65}
.wplr-float-messages:empty{display:none}
.wplr-floating-chat .wplr-float-message{max-width:94%;margin:0 0 15px;padding:13px 15px;background:#f0f5ec;border:1px solid #e7eee1;border-radius:4px 15px 15px 15px;color:var(--wplr-chat-ink)}
.wplr-floating-chat .wplr-float-message.is-user{margin-left:auto;background:#f2f4f6;border-color:#e9edef;border-radius:15px 4px 15px 15px;max-width:90%}
.wplr-float-message-label{display:block;font-size:10px;letter-spacing:.055em;text-transform:uppercase;color:var(--wplr-chat-muted);font-weight:650;margin-bottom:4px}
.wplr-floating-chat .wplr-float-message p{font-size:14px;line-height:1.65;white-space:pre-wrap;margin:0;overflow-wrap:anywhere;color:inherit}
.wplr-float-message-context{display:block;font-size:10px;color:var(--wplr-chat-muted);margin-top:6px}
.wplr-float-recommendations{display:grid;gap:9px;margin-top:12px}
.wplr-float-recommendation{display:flex;gap:10px;padding:10px;border:1px solid var(--wplr-chat-line);border-radius:10px;background:#fff;color:var(--wplr-chat-ink);text-decoration:none}
.wplr-float-recommendation img{width:60px;height:60px;object-fit:cover;border-radius:7px;align-self:flex-start;margin:0}
.wplr-float-recommendation strong{font-size:13px;display:block;line-height:1.4}
.wplr-float-recommendation small{display:block;font-size:11px;line-height:1.5;color:var(--wplr-chat-muted);margin-top:4px}
.wplr-floating-chat .wplr-float-suggestions{display:flex;flex-wrap:wrap;gap:7px;padding:0 17px 10px;flex-shrink:0}
.wplr-floating-chat .wplr-float-suggestions button{background:#fff;border:1px solid #dfe7d9;border-radius:16px;padding:7px 10px;color:var(--wplr-chat-accent);font-size:11px;font-weight:550;max-width:100%}
.wplr-floating-chat .wplr-float-suggestions button:hover{background:#f1f6ec}
.wplr-float-waiting{display:flex;gap:5px;align-items:center;padding:10px 14px;background:#f0f5ec;border-radius:12px;width:62px;margin-bottom:8px}
.wplr-float-waiting span{width:6px;height:6px;border-radius:50%;background:var(--wplr-chat-accent);animation:wplr-chat-wait 1.2s ease-in-out infinite}
.wplr-float-waiting span:nth-child(2){animation-delay:.15s}.wplr-float-waiting span:nth-child(3){animation-delay:.3s}
@keyframes wplr-chat-wait{0%,70%,100%{opacity:.3;transform:translateY(0)}35%{opacity:1;transform:translateY(-3px)}}
.wplr-float-status{padding:0 17px;font-size:11px;line-height:1.45;color:var(--wplr-chat-muted);flex-shrink:0;max-height:65px;overflow:auto}
.wplr-float-status:empty{display:none}
.wplr-float-status.is-error{color:#a33220}
.wplr-floating-chat .wplr-float-form{display:flex;align-items:flex-end;gap:9px;margin:11px 14px 8px;padding:8px 8px 8px 12px;border:1px solid #dce5d6;border-radius:14px;background:#fff;flex-shrink:0;position:relative}
.wplr-float-input{min-width:0;flex:1;margin:0}
.wplr-floating-chat .wplr-float-input textarea{display:block;width:100%;min-width:0;min-height:38px;max-height:100px;height:38px;margin:0;padding:8px 0;font-family:inherit;font-size:14px;line-height:1.5;background:#fff;color:var(--wplr-chat-ink);border:0;border-radius:0;box-shadow:none;resize:none;overflow:auto}
.wplr-floating-chat .wplr-float-input textarea:focus{outline:0;box-shadow:none}
.wplr-floating-chat .wplr-float-form:focus-within{border-color:var(--wplr-chat-accent);box-shadow:0 0 0 2px #4f7f2c18}
.wplr-floating-chat .wplr-float-send{display:grid;place-items:center;width:38px;height:38px;flex-shrink:0;border-radius:10px;padding:0;background:var(--wplr-chat-accent);color:#fff;border:0}
.wplr-float-footer{padding:0 17px 12px;text-align:center;flex-shrink:0;border:0;background:#fff}
.wplr-float-footer summary{display:inline-flex;align-items:center;gap:5px;cursor:pointer;font-size:10px;color:var(--wplr-chat-muted);list-style:none}
.wplr-float-footer summary::-webkit-details-marker{display:none}
.wplr-float-footer summary .wplr-icon{width:12px;height:12px;font-size:12px}
.wplr-floating-chat .wplr-float-footer details p{font-size:11px;line-height:1.5;margin:8px 0 0;color:var(--wplr-chat-muted);text-align:left;max-height:110px;overflow-y:auto}
.wplr-float-new-confirm{margin:0 14px;padding:12px;border:1px solid #e1dfce;border-radius:10px;background:#fffcf2;flex-shrink:0}
.wplr-floating-chat .wplr-float-new-confirm p{font-size:12px;margin:0 0 8px}
.wplr-float-new-confirm>div{display:flex;gap:8px}
.wplr-floating-chat .wplr-float-new-confirm button{padding:7px 10px;border:1px solid #d4dccc;border-radius:6px;background:#fff;color:var(--wplr-chat-ink);font-size:12px}
body.admin-bar .wplr-floating-chat{--wplr-chat-top:48px}
@media(max-width:782px){body.admin-bar .wplr-floating-chat{--wplr-chat-top:62px}}
@media(max-width:600px){
 .wplr-floating-chat{right:max(14px,env(safe-area-inset-right))}.wplr-floating-chat.wplr-chat-left{left:max(14px,env(safe-area-inset-left))}
 .wplr-floating-chat .wplr-float-launcher{min-height:52px;padding:13px 18px;font-size:13px}
 .wplr-floating-chat .wplr-float-panel,.wplr-floating-chat .wplr-float-panel.is-expanded,.wplr-floating-chat.wplr-chat-left .wplr-float-panel{width:calc(100vw - 16px);max-width:none;height:calc(var(--wplr-chat-vvh,100dvh) - 16px - env(safe-area-inset-top) - env(safe-area-inset-bottom));min-height:190px;inset:calc(var(--wplr-chat-vvtop,0px) + 8px + env(safe-area-inset-top)) 8px auto 8px;margin:0;border-radius:16px}
 .wplr-float-header{gap:9px!important;padding:14px 12px!important}.wplr-float-heading h2{font-size:15px!important}
 .wplr-float-tools [data-chat-expand]{display:none!important}.wplr-float-avatar{width:34px;height:34px;flex-basis:34px;border-radius:9px}.wplr-float-avatar .wplr-icon{width:22px;height:22px;font-size:22px}
 .wplr-floating-chat .wplr-float-input textarea{font-size:16px;min-height:40px}.wplr-float-context{padding:10px 14px}.wplr-float-scroll{padding:14px}.wplr-float-suggestions{padding:0 14px 8px!important}
 .wplr-float-context strong{max-width:calc(100vw - 78px)}
}
@media(max-height:550px){.wplr-float-welcome{padding:3px 0 10px}.wplr-float-welcome-icon{display:none}.wplr-float-suggestions{display:none!important}.wplr-float-context{padding:7px 14px}.wplr-floating-chat .wplr-float-header{padding:10px 12px}.wplr-float-footer{padding-bottom:7px}}
@media(prefers-reduced-motion:reduce){.wplr-float-waiting span{animation:none}}
@media print{.wplr-floating-chat,.wplr-float-panel{display:none!important}}
