/* =========================================================
   FLOATING WHATSAPP + AI SALES MANAGER
   Additive only; original GermanStep design above is untouched.
   ========================================================= */
.gs-float-stack{position:fixed;right:22px;bottom:22px;z-index:80;display:flex;flex-direction:column;gap:10px;align-items:flex-end}
.gs-float-btn{position:relative;width:56px;height:56px;border:0;border-radius:17px;display:grid;place-items:center;cursor:pointer;box-shadow:0 16px 40px rgba(17,24,39,.16);transition:transform .18s ease,box-shadow .18s ease;text-decoration:none}
.gs-float-btn:hover{transform:translateY(-2px);box-shadow:0 20px 46px rgba(17,24,39,.21)}
.gs-float-label{position:absolute;right:66px;top:50%;transform:translateY(-50%) translateX(4px);padding:7px 9px;border:1px solid rgba(215,220,226,.95);border-radius:8px;background:rgba(255,255,255,.96);color:#525a64;font-size:9px;font-weight:850;white-space:nowrap;opacity:0;pointer-events:none;transition:.18s ease;box-shadow:0 10px 28px rgba(17,24,39,.08)}
.gs-float-btn:hover .gs-float-label{opacity:1;transform:translateY(-50%) translateX(0)}
.gs-whatsapp-float{background:#20b566;color:#fff}
.gs-whatsapp-float svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.gs-ai-float{background:#15171a;color:#fff;overflow:hidden}
.gs-ai-float::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,#111 0 33.33%,#d2132c 33.33% 66.66%,#f0be24 66.66%)}
.gs-ai-mark{font-size:14px;font-weight:900;letter-spacing:.2px}
.gs-ai-panel{position:fixed;right:22px;bottom:154px;z-index:79;width:min(390px,calc(100vw - 24px));height:min(610px,calc(100vh - 190px));min-height:470px;display:flex;flex-direction:column;border:1px solid #d9dee3;border-radius:18px;background:#f7f8f9;box-shadow:0 28px 80px rgba(17,24,39,.20);overflow:hidden;opacity:0;transform:translateY(12px) scale(.985);pointer-events:none;transition:opacity .2s ease,transform .2s ease;isolation:isolate}
.gs-ai-panel::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;z-index:4;background:linear-gradient(90deg,#111 0 33.33%,#d2132c 33.33% 66.66%,#f0be24 66.66%)}
.gs-ai-panel.open{opacity:1;transform:none;pointer-events:auto}
.gs-ai-head{height:72px;flex:none;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px 11px;background:rgba(255,255,255,.96);border-bottom:1px solid #e1e5e9}
.gs-ai-identity{display:flex;align-items:center;gap:10px}.gs-ai-avatar{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#17191c;color:#fff;box-shadow:0 8px 22px rgba(17,24,39,.12);position:relative;overflow:hidden}.gs-ai-avatar::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,#111 0 33%,#d2132c 33% 66%,#f0be24 66%)}.gs-ai-avatar span{font-size:11px;font-weight:900}
.gs-ai-identity strong{display:block;font-size:12px;letter-spacing:-.15px}.gs-ai-identity small{display:flex;align-items:center;gap:6px;margin-top:2px;color:#7a828b;font-size:9px;font-weight:700}.gs-ai-identity small i{width:6px;height:6px;border-radius:50%;background:#1a8d60;box-shadow:0 0 0 4px rgba(26,141,96,.08)}
.gs-ai-close{width:34px;height:34px;border:1px solid #dde2e7;border-radius:9px;background:#fff;color:#68717b;font-size:21px;line-height:1;cursor:pointer}.gs-ai-close:hover{background:#f1f3f5;color:#17191c}
.gs-ai-messages{flex:1;overflow:auto;padding:16px 14px 10px;scroll-behavior:smooth;background:linear-gradient(180deg,#f7f8f9,#f4f5f7)}
.gs-ai-message{max-width:88%;margin-bottom:13px;display:flex;flex-direction:column;align-items:flex-start}.gs-ai-message.user{margin-left:auto;align-items:flex-end}.gs-ai-message-label{margin:0 5px 4px;color:#949ba3;font-size:8px;font-weight:800;letter-spacing:.25px}
.gs-ai-bubble{padding:10px 12px;border:1px solid #dce1e6;border-radius:13px 13px 13px 4px;background:#fff;color:#31363c;font-size:11px;line-height:1.62;white-space:pre-wrap;word-break:break-word;box-shadow:0 8px 24px rgba(17,24,39,.035)}
.gs-ai-message.user .gs-ai-bubble{border-color:#17191c;border-radius:13px 13px 4px 13px;background:#17191c;color:#fff;box-shadow:0 8px 24px rgba(17,24,39,.10)}.gs-ai-message.typing .gs-ai-bubble{color:#7b838d;font-style:italic}
.gs-ai-topics{display:flex;gap:6px;overflow-x:auto;padding:8px 12px 10px;background:#f7f8f9;border-top:1px solid #e5e8eb;scrollbar-width:none}.gs-ai-topics::-webkit-scrollbar{display:none}.gs-ai-topics[hidden]{display:none!important}.gs-ai-topics button{flex:none;padding:7px 9px;border:1px solid #dce1e6;border-radius:999px;background:#fff;color:#59616a;font-size:8.5px;font-weight:800;cursor:pointer;white-space:nowrap}.gs-ai-topics button:hover{border-color:#bfc6cd;color:#17191c}
.gs-ai-form{flex:none;padding:10px 11px 10px;background:#fff;border-top:1px solid #dfe3e7}.gs-ai-input-row{display:grid;grid-template-columns:1fr 42px;gap:7px;align-items:end}.gs-ai-input-row textarea{width:100%;min-height:42px;max-height:96px;resize:none;border:1px solid #d9dee3;border-radius:10px;background:#fff;color:#17191c;padding:11px 12px;outline:none;font:inherit;font-size:11px;line-height:1.45}.gs-ai-input-row textarea:focus{border-color:#aeb5bd;box-shadow:0 0 0 4px rgba(17,24,39,.035)}.gs-ai-input-row button{width:42px;height:42px;border:0;border-radius:10px;background:#17191c;color:#fff;display:grid;place-items:center;cursor:pointer}.gs-ai-input-row button:disabled{opacity:.55;cursor:wait}.gs-ai-input-row button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.gs-ai-privacy{margin-top:7px;color:#9aa1a8;font-size:8px;line-height:1.4}
@media(max-width:640px){.gs-float-stack{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));gap:8px}.gs-float-btn{width:52px;height:52px;border-radius:15px}.gs-float-label{display:none}.gs-ai-panel{right:11px;bottom:calc(132px + env(safe-area-inset-bottom));width:calc(100vw - 22px);height:min(590px,calc(100vh - 158px - env(safe-area-inset-bottom)));min-height:430px;border-radius:16px}.gs-ai-head{height:66px;padding:11px 12px 9px}.gs-ai-messages{padding:13px 10px 8px}.gs-ai-message{max-width:91%}.gs-ai-bubble{font-size:10.5px}.gs-ai-form{padding:9px 9px 8px}}
