/* Shared public conversation surface. Scoped to avoid inheriting catalog card effects. */
.gpi-assistant{--assistant-accent:var(--primary,#14665c);--assistant-ink:#172331;--assistant-muted:#586878;--assistant-line:#dfe6eb;--assistant-bottom:24px;position:fixed;right:24px;bottom:calc(var(--assistant-bottom) + env(safe-area-inset-bottom,0px));z-index:10050;font-family:var(--gpi-site-font-body,var(--theme-font,system-ui,sans-serif));font-size:14px;line-height:1.5;color:var(--assistant-ink);text-align:left;isolation:isolate}
.gpi-assistant *, .gpi-assistant *:before,.gpi-assistant *:after{box-sizing:border-box}
.gpi-assistant [hidden]{display:none!important}
.gpi-assistant button,.gpi-assistant textarea,.gpi-assistant a{font:inherit;letter-spacing:normal}
.gpi-assistant button{cursor:pointer;-webkit-tap-highlight-color:transparent}
.gpi-assistant button:focus-visible,.gpi-assistant a:focus-visible,.gpi-assistant textarea:focus-visible{outline:3px solid var(--assistant-accent);outline-offset:3px}
.assistant-trigger{display:grid;place-items:center;width:60px;height:60px;border:1px solid #ffffff80;border-radius:22px;background:var(--assistant-accent);color:#fff;box-shadow:0 8px 26px #17233126;position:relative;transition:transform .2s ease,box-shadow .2s ease;overflow:visible}
.assistant-trigger:hover{transform:translateY(-3px);box-shadow:0 12px 32px #17233135}
.assistant-trigger img{width:100%;height:100%;border-radius:21px;object-fit:cover}
.assistant-online{position:absolute;bottom:2px;right:2px;width:12px;height:12px;background:#6ce9a6;border:3px solid white;border-radius:50%}
.assistant-window{position:absolute;right:0;bottom:76px;display:flex;flex-direction:column;width:408px;height:640px;max-width:calc(100vw - 32px);max-height:min(740px,calc(var(--assistant-viewport,100dvh) - var(--assistant-bottom) - 108px));border:1px solid #dfe6eb;border-radius:24px;background:#f5f8fa;box-shadow:0 24px 80px #142d3c33;overflow:hidden;animation:assistant-open .32s cubic-bezier(.2,.8,.2,1);transform-origin:bottom right}
.gpi-assistant .assistant-header{position:relative;inset:auto;z-index:1;width:100%;height:auto;min-height:0;transform:none;opacity:1;visibility:visible;box-shadow:none;backdrop-filter:none;display:flex;align-items:flex-start;gap:12px;padding:20px 18px 17px;background:#fff;border-bottom:1px solid var(--assistant-line);flex-shrink:0}
.assistant-heading{min-width:0;flex:1}
.gpi-assistant .assistant-eyebrow{font-size:9px;font-weight:750;letter-spacing:1.3px;color:var(--assistant-muted);display:block}
.gpi-assistant .assistant-header h2{font-family:inherit;font-size:20px;line-height:1.2;letter-spacing:-.5px;margin:5px 0;color:var(--assistant-ink);overflow-wrap:anywhere}
.gpi-assistant .assistant-header p{font-size:12px;line-height:1.4;margin:0;color:var(--assistant-muted);overflow-wrap:anywhere}
.assistant-header-actions{display:flex;gap:2px;margin:-5px -7px 0 0}
.assistant-header-actions button{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:12px;background:transparent;color:var(--assistant-muted);font-size:25px;line-height:1}
.assistant-header-actions button:hover{background:#eff3f5;color:var(--assistant-ink)}
.assistant-messages{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:20px 16px 12px;display:flex;flex-direction:column;gap:16px;scroll-padding-bottom:12px}
.assistant-message{width:100%;flex-shrink:0;animation:assistant-message-in .28s ease-out;overflow-wrap:anywhere}
.assistant-message-label{display:block;font-size:10px;color:var(--assistant-muted);font-weight:650;margin:0 4px 5px}
.assistant-message p{margin:0;white-space:pre-wrap;font-size:14px;line-height:1.65}
.assistant-message-bubble{padding:13px 15px;background:#fff;border:1px solid var(--assistant-line);border-radius:4px 17px 17px;max-width:96%}
.assistant-message-user{align-self:flex-end;width:fit-content;max-width:90%}
.assistant-message-user .assistant-message-label{text-align:right}
.assistant-message-user .assistant-message-bubble{max-width:100%;background:var(--assistant-accent);color:#fff;border-color:transparent;border-radius:17px 4px 17px 17px}
.assistant-message-error .assistant-message-bubble{border-color:#edc4aa;background:#fff9f3}
.assistant-loading{display:flex;align-items:center;gap:8px;color:var(--assistant-muted);font-size:12px;padding:10px 4px}
.assistant-loading-dot{width:7px;height:7px;border-radius:50%;background:var(--assistant-accent);animation:assistant-pulse 1.3s ease-in-out infinite}
.assistant-recommendations{display:flex;flex-direction:column;gap:12px;margin-top:12px}
.assistant-product{background:#fff;border:1px solid var(--assistant-line);border-radius:16px;overflow:hidden;box-shadow:0 3px 10px #17233105;min-width:0}
.gpi-assistant .assistant-product-image{display:block;background:#edf2f4;overflow:hidden;aspect-ratio:1.7;position:relative;text-decoration:none}
.assistant-product-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s ease}
.assistant-product-image:hover img{transform:scale(1.035)}
.assistant-product-placeholder{display:grid;place-items:center;height:100%;color:var(--assistant-muted);font-size:12px}
.assistant-product-body{padding:14px}
.gpi-assistant .assistant-product-category{color:var(--assistant-accent);font-weight:700;font-size:10px;text-transform:uppercase;letter-spacing:.7px;margin:0 0 6px}
.gpi-assistant .assistant-product h3{font-size:15px;line-height:1.45;font-family:inherit;letter-spacing:0;margin:0 0 9px;color:var(--assistant-ink)}
.assistant-product h3 a{color:inherit;text-decoration:none}
.gpi-assistant .assistant-product-reason{font-size:12px;color:var(--assistant-muted);line-height:1.5;margin:0 0 12px}
.assistant-product dl{display:grid;gap:6px;margin:0 0 13px;font-size:12px}
.assistant-product dl div{display:flex;justify-content:space-between;gap:14px;align-items:baseline}
.assistant-product dt{color:var(--assistant-muted);font-weight:400;min-width:0}
.assistant-product dd{margin:0;font-weight:650;text-align:right;min-width:0;overflow-wrap:anywhere}
.gpi-assistant .assistant-product-link{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;padding:10px 12px;border-radius:9px;background:var(--assistant-accent);color:#fff;text-decoration:none;font-size:12px;font-weight:650}
.gpi-assistant .assistant-product-contact{display:block;text-align:center;padding:12px 5px 0;min-height:44px;color:var(--assistant-accent);font-size:12px;text-decoration:underline;text-underline-offset:3px}
.assistant-format-foto_link .assistant-product-image{aspect-ratio:1.25}
.assistant-quick{display:flex;gap:7px;overflow:auto;flex-shrink:0;padding:10px 16px;scrollbar-width:thin;border-top:1px solid var(--assistant-line);background:#f5f8fa}
.assistant-quick:empty{display:none}
.assistant-quick button,.assistant-retry{background:white;border:1px solid #d6e1e6;border-radius:12px;color:var(--assistant-accent);padding:10px 12px;min-height:44px;line-height:1.35;font-size:12px;font-weight:650;flex:0 0 auto;max-width:230px;text-align:left;white-space:normal}
.assistant-quick button:hover,.assistant-retry:hover{border-color:var(--assistant-accent);background:#edf4f3}
.assistant-retry{margin-top:10px}
.assistant-composer{display:flex;gap:8px;align-items:flex-end;padding:12px 14px 8px;background:#fff;flex-shrink:0;margin:0}
.gpi-assistant .assistant-composer textarea{display:block;resize:none;flex:1;min-width:0;min-height:46px;max-height:110px;border:1px solid var(--assistant-line);border-radius:13px;padding:12px;background:#f8fafb;line-height:1.4;font-size:16px;color:var(--assistant-ink);box-shadow:none}
.assistant-composer button{width:46px;height:46px;flex-shrink:0;border:0;border-radius:14px;display:grid;place-items:center;background:var(--assistant-accent);color:#fff}
.assistant-composer button:disabled{opacity:.45;cursor:wait}
.assistant-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 16px 12px;background:#fff;font-size:9px;line-height:1.5;color:var(--assistant-muted);flex-shrink:0}
.assistant-footer span{max-width:65%;overflow-wrap:anywhere}
.assistant-footer a{color:var(--assistant-accent);min-height:30px;display:flex;align-items:center;text-underline-offset:2px}
.assistant-invitation{position:absolute;right:0;bottom:76px;width:292px;max-width:calc(100vw - 32px);background:#fff;border:1px solid var(--assistant-line);border-radius:20px 20px 5px 20px;padding:20px;box-shadow:0 12px 45px #142d3c21;animation:assistant-open .4s ease-out}
.assistant-invitation .assistant-eyebrow{padding-right:22px;letter-spacing:.35px;text-transform:none}
.gpi-assistant .assistant-invitation p{font-size:16px;font-weight:550;line-height:1.5;letter-spacing:-.2px;margin:10px 0 14px}
.assistant-invitation-close{position:absolute;top:5px;right:4px;width:44px;height:44px;border:0;background:transparent;color:var(--assistant-muted);font-size:23px;border-radius:12px}
.assistant-invitation-accept{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#edf4f3;color:var(--assistant-accent);font-size:12px;font-weight:750;min-height:44px;border:0;border-radius:10px;padding:10px 12px;width:100%}
.assistant-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@keyframes assistant-open{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}
@keyframes assistant-message-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes assistant-pulse{50%{opacity:.35;transform:scale(.75)}}
@media(max-width:600px){.gpi-assistant{right:14px;--assistant-bottom:18px}.assistant-trigger{width:54px;height:54px;border-radius:19px}.assistant-trigger img{border-radius:18px}.assistant-window{position:fixed;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px) + var(--assistant-keyboard,0px));width:calc(100vw - 24px);max-width:420px;height:680px;max-height:calc(var(--assistant-viewport,100dvh) - 24px - env(safe-area-inset-bottom,0px));border-radius:21px}.gpi-assistant .assistant-header{padding:16px 14px 13px}.assistant-messages{padding:16px 12px 12px}.assistant-quick{padding:9px 12px}.assistant-footer{padding-bottom:10px}.assistant-invitation{bottom:69px}.gpi-details .gpi-assistant{--assistant-bottom:104px}.assistant-message p{font-size:14px}.assistant-header-actions button{width:44px;min-height:44px}}
@media(prefers-reduced-motion:reduce){.gpi-assistant *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Intake on the digital business card. */
.gpi-assistant{--assistant-accent:var(--primary,var(--cor-primaria,#14665c));font-family:var(--gpi-site-font-body,var(--font-main,var(--theme-font,system-ui,sans-serif)))}
.assistant-card-pilula .assistant-trigger{width:auto;max-width:min(300px,calc(100vw - 28px));padding:0 16px;display:flex;gap:10px;height:56px;border-radius:18px}
.assistant-card-pilula .assistant-trigger img{width:34px;height:34px;border-radius:12px}
.assistant-trigger-text{max-width:210px;text-align:left;font-weight:650;font-size:13px;overflow-wrap:anywhere;line-height:1.35}
.assistant-intake{flex-shrink:0;background:#fff;border-bottom:1px solid var(--assistant-line);padding:7px 16px 10px}
.assistant-intake>div{display:flex;align-items:center;justify-content:space-between;gap:10px}
.assistant-intake-progress{font-size:11px;line-height:1.4;color:var(--assistant-muted)}
.assistant-intake-review,.assistant-intake-skip{min-height:44px;flex-shrink:0;border:0;background:transparent;color:var(--assistant-accent);font-size:12px;font-weight:650;padding:6px}
.assistant-intake progress{display:block;width:100%;height:4px;border:0;border-radius:10px;background:#e9eef0;accent-color:var(--assistant-accent)}
.assistant-intake progress::-webkit-progress-bar{background:#e9eef0;border-radius:10px}.assistant-intake progress::-webkit-progress-value{background:var(--assistant-accent);border-radius:10px}
.assistant-intake-skip{display:block;margin:4px 0 -5px;padding:5px 0;min-height:44px;font-size:11px;text-decoration:underline;text-underline-offset:3px}
.assistant-product-select{width:100%;min-height:44px;padding:9px 12px;margin-top:8px;border:1px solid var(--assistant-accent);border-radius:9px;color:var(--assistant-accent);background:#fff;font-size:12px;font-weight:650}
.assistant-product-select[aria-pressed="true"]{background:#edf4f3}
.assistant-review{flex-shrink:0;min-width:0;width:100%;background:#fff;border:1px solid var(--assistant-line);border-radius:16px;padding:16px;text-align:left;margin:0}
.gpi-assistant .assistant-review h3{font-size:17px;line-height:1.4;font-weight:700;font-family:inherit;margin:0 0 8px;color:var(--assistant-ink)}
.gpi-assistant .assistant-review p{font-size:12px;line-height:1.6;color:var(--assistant-muted);margin:0 0 15px}
.assistant-review label{display:block;font-size:12px;font-weight:650;line-height:1.45;margin:14px 0 6px}
.gpi-assistant .assistant-review input{display:block;min-height:46px;width:100%;border:1px solid #cbd8de;border-radius:9px;background:#f8fafb;color:var(--assistant-ink);padding:10px;font:inherit;font-size:16px}
.assistant-review-confirm{width:100%;min-height:48px;border:0;border-radius:10px;padding:12px;background:var(--assistant-accent);color:#fff;font-size:13px;font-weight:650;margin-top:18px}
.assistant-review-selected{display:flex;align-items:flex-start;gap:8px;margin:10px 0;padding:10px;border:1px solid var(--assistant-line);border-radius:9px;font-size:12px}
.assistant-review-selected span{flex:1;overflow-wrap:anywhere}
.assistant-review-selected button{min-height:44px;border:0;background:transparent;color:var(--assistant-accent);padding:5px}
.assistant-handoff pre{font:inherit;font-size:12px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;background:#f5f8fa;border-radius:9px;padding:12px;color:var(--assistant-ink);margin:0 0 15px}
@media(max-width:600px){.assistant-card{--assistant-bottom:18px}.assistant-intake{padding-inline:12px}.assistant-card .assistant-window{height:750px}.assistant-card .assistant-messages{padding-top:12px}}

/* Compact mobile conversation; only messages scroll when the keyboard is open. */
@media(max-width:600px){
 .gpi-assistant .assistant-window{height:auto;max-height:min(600px,calc(var(--assistant-viewport,100dvh) - 24px - env(safe-area-inset-bottom,0px)));min-height:0}
 .gpi-assistant.assistant-card .assistant-window{height:auto}
 .gpi-assistant .assistant-header{padding:10px 12px;gap:8px}
 .gpi-assistant .assistant-header h2{font-size:18px;margin:2px 0}
 .gpi-assistant .assistant-eyebrow{font-size:8px;letter-spacing:.8px}
 .gpi-assistant .assistant-header-actions{margin:0 -4px 0 0;flex-shrink:0}
 .gpi-assistant .assistant-messages{flex:1 1 auto;min-height:90px;padding:12px;gap:12px}
 .gpi-assistant .assistant-message-bubble{padding:10px 12px}
 .gpi-assistant .assistant-message p{line-height:1.5}
 .gpi-assistant .assistant-quick{padding:7px 10px}
 .gpi-assistant .assistant-composer{padding:8px 10px;gap:8px}
 .gpi-assistant .assistant-footer{padding:0 12px 6px}
 .gpi-assistant[data-keyboard-open] .assistant-window{top:calc(var(--assistant-viewport-top,0px) + 8px);bottom:auto;height:calc(var(--assistant-viewport,100dvh) - 16px);max-height:calc(var(--assistant-viewport,100dvh) - 16px);border-radius:16px}
 .gpi-assistant[data-keyboard-open] .assistant-header{padding:7px 10px;align-items:center}
 .gpi-assistant[data-keyboard-open] .assistant-eyebrow,.gpi-assistant[data-keyboard-open] .assistant-header p,.gpi-assistant[data-keyboard-open] .assistant-quick,.gpi-assistant[data-keyboard-open] .assistant-footer{display:none}
 .gpi-assistant[data-keyboard-open] .assistant-messages{min-height:0}
 .gpi-assistant[data-keyboard-open] .assistant-composer textarea{max-height:70px}
 .gpi-assistant[data-keyboard-open] .assistant-intake{padding:4px 10px}
}
