.gw-witt,
.gw-witt * { box-sizing: border-box; }
.gw-witt { --witt-ink:#171713; --witt-blue:#78c8f6; --witt-lime:#c8f04b; position:fixed; right:20px; bottom:18px; z-index:99990; font-family:Inter,Arial,sans-serif; letter-spacing:0; }
.gw-witt-launcher { position:relative; display:grid; place-items:center; width:82px; height:82px; padding:0; border:2px solid var(--witt-ink); border-radius:50%; background:var(--witt-lime); color:var(--witt-ink); box-shadow:5px 6px 0 var(--witt-ink); cursor:pointer; transform:translateY(120px) rotate(8deg); transition:transform .45s cubic-bezier(.2,.9,.25,1.25),box-shadow .2s; }
.gw-witt.is-ready .gw-witt-launcher { transform:translateY(0) rotate(0); }
.gw-witt-launcher:hover { box-shadow:3px 4px 0 var(--witt-ink); transform:translateY(2px) rotate(-4deg); }
.gw-witt-launcher:focus-visible,.gw-witt button:focus-visible,.gw-witt textarea:focus-visible,.gw-witt a:focus-visible { outline:3px solid var(--witt-blue); outline-offset:3px; }
.gw-witt-launcher img { width:72px; height:72px; object-fit:contain; pointer-events:none; filter:drop-shadow(0 2px 1px rgba(0,0,0,.18)); }
.gw-witt.is-ready .gw-witt-launcher img { animation:witt-float 4.5s ease-in-out 1.2s infinite; }
.gw-witt-launcher span { position:absolute; right:62px; bottom:8px; width:max-content; padding:6px 9px; border:1px solid var(--witt-ink); border-radius:4px; background:#fff; color:var(--witt-ink); font-size:12px; font-weight:800; box-shadow:2px 2px 0 var(--witt-ink); opacity:0; transform:translateX(8px); transition:.2s; }
.gw-witt-launcher:hover span,.gw-witt-launcher:focus-visible span { opacity:1; transform:none; }
.gw-witt-nudge { position:absolute; right:64px; bottom:70px; width:max-content; max-width:180px; padding:8px 11px; border:1px solid var(--witt-ink); border-radius:5px 5px 0 5px; background:#fff; color:var(--witt-ink); box-shadow:3px 3px 0 var(--witt-blue); font-size:13px; font-weight:750; opacity:0; transform:translateY(8px); pointer-events:none; }
.gw-witt.is-ready .gw-witt-nudge:not([hidden]) { animation:witt-nudge 7s ease 2.2s both; }
.gw-witt-panel { position:absolute; right:0; bottom:96px; display:flex; flex-direction:column; width:min(390px,calc(100vw - 28px)); height:min(620px,calc(100vh - 130px)); min-height:430px; overflow:hidden; border:2px solid var(--witt-ink); border-radius:8px; background:#f8f7f1; box-shadow:8px 9px 0 var(--witt-ink); opacity:0; visibility:hidden; transform:translateY(18px) scale(.96); transform-origin:bottom right; transition:opacity .2s,transform .25s cubic-bezier(.2,.8,.2,1),visibility .2s; }
.gw-witt.is-open .gw-witt-panel { opacity:1; visibility:visible; transform:none; }
.gw-witt.is-open .gw-witt-launcher { animation:none; transform:scale(.88); opacity:.75; }
.gw-witt-header { display:flex; align-items:center; min-height:72px; padding:8px 10px 8px 13px; border-bottom:2px solid var(--witt-ink); background:var(--witt-lime); color:var(--witt-ink); }
.gw-witt-header img { width:52px; height:52px; object-fit:contain; margin-right:8px; animation:witt-wave 5s ease-in-out 1s infinite; }
.gw-witt-header div { display:grid; gap:1px; }
.gw-witt-header strong { font-family:"Playfair Display",Georgia,serif; font-size:22px; line-height:1; }
.gw-witt-header span { font-size:11px; font-weight:700; text-transform:uppercase; }
.gw-witt-close { margin-left:auto; display:grid; place-items:center; width:38px; height:38px; padding:0; border:0; border-radius:50%; background:transparent; color:var(--witt-ink); font:400 30px/1 Arial,sans-serif; cursor:pointer; }
.gw-witt-close:hover { background:rgba(255,255,255,.65); }
.gw-witt-messages { flex:1; display:flex; flex-direction:column; gap:12px; overflow-y:auto; padding:16px; overscroll-behavior:contain; scrollbar-width:thin; }
.gw-witt-message { max-width:90%; padding:11px 13px; border:1px solid var(--witt-ink); border-radius:6px; background:#fff; color:var(--witt-ink); box-shadow:2px 2px 0 rgba(23,23,19,.18); font-size:14px; line-height:1.45; }
.gw-witt-message p { margin:0; white-space:pre-wrap; }
.gw-witt-message--user { align-self:flex-end; background:var(--witt-blue); }
.gw-witt-message--bot { align-self:flex-start; }
.gw-witt-message.is-thinking p { animation:witt-pulse 1s ease-in-out infinite; }
.gw-witt-suggestions { display:flex; flex-wrap:wrap; gap:7px; }
.gw-witt-suggestions button { padding:7px 9px; border:1px solid var(--witt-ink); border-radius:4px; background:#fff; color:var(--witt-ink); font:700 12px/1.2 Inter,Arial,sans-serif; cursor:pointer; }
.gw-witt-suggestions button:hover { background:var(--witt-lime); }
.gw-witt-links { display:grid; gap:5px; margin-top:10px; padding-top:9px; border-top:1px solid #d8d7d0; }
.gw-witt-links strong { font-size:10px; text-transform:uppercase; }
.gw-witt-links a { color:#075c88; font-size:12px; font-weight:750; text-decoration:underline; text-underline-offset:2px; }
.gw-witt-links--products a { color:#5b4600; }
.gw-witt-links small { margin-top:3px; color:#56564f; font-size:10px; line-height:1.35; }
.gw-witt-form { display:flex; align-items:flex-end; gap:8px; padding:10px; border-top:2px solid var(--witt-ink); background:#fff; }
.gw-witt-form textarea { flex:1; min-height:42px; max-height:96px; resize:none; padding:10px 11px; border:1px solid #8e8e87; border-radius:5px; background:#fff; color:var(--witt-ink); font:500 14px/1.4 Inter,Arial,sans-serif; }
.gw-witt-form button { flex:0 0 42px; display:grid; place-items:center; width:42px; height:42px; padding:0; border:2px solid var(--witt-ink); border-radius:5px; background:var(--witt-lime); color:var(--witt-ink); cursor:pointer; }
.gw-witt-form button:hover { background:var(--witt-blue); }
.gw-witt-form button svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.gw-witt-form.is-busy button { opacity:.5; pointer-events:none; }
.gw-witt-note { margin:0; padding:0 11px 9px; background:#fff; color:#66665f; font-size:9px; line-height:1.35; text-align:center; }
@keyframes witt-float { 0%,100%{transform:translateY(0) rotate(0)} 45%{transform:translateY(-7px) rotate(-2deg)} 55%{transform:translateY(-7px) rotate(2deg)} }
@keyframes witt-wave { 0%,82%,100%{transform:rotate(0)} 86%{transform:rotate(-8deg)} 90%{transform:rotate(7deg)} 94%{transform:rotate(-4deg)} }
@keyframes witt-nudge { 0%{opacity:0;transform:translateY(8px)} 10%,78%{opacity:1;transform:none} 100%{opacity:0;transform:translateY(4px)} }
@keyframes witt-pulse { 50%{opacity:.45} }
@media (max-width:600px) { .gw-witt{right:12px;bottom:12px}.gw-witt-launcher{width:70px;height:70px}.gw-witt-launcher img{width:62px;height:62px}.gw-witt-panel{position:fixed;inset:10px 10px 92px;width:auto;height:auto;min-height:0;transform-origin:bottom right}.gw-witt-launcher span{display:none}.gw-witt-nudge{right:54px;bottom:62px} }
@media (prefers-reduced-motion:reduce) { .gw-witt *{animation:none!important;scroll-behavior:auto!important}.gw-witt-launcher{transition:none}.gw-witt-panel{transition:none} }
