.anne-widget{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));z-index:60;color:var(--ink,#0b1e2c);font:400 14px/1.5 var(--body,sans-serif);width:min(368px,calc(100vw - 32px));pointer-events:none}
.anne-widget *{box-sizing:border-box}
.anne-widget [hidden]{display:none!important}
body.no-scroll .anne-widget{visibility:hidden;pointer-events:none}
.anne-widget button,.anne-widget input{font:inherit}
.anne-widget button{cursor:pointer}
.anne-widget button:focus-visible,.anne-widget input:focus-visible{outline:3px solid var(--coral,#ff6f61);outline-offset:3px}
.anne-launcher{pointer-events:auto;display:flex;align-items:center;gap:10px;margin-left:auto;min-height:64px;padding:7px 16px 7px 7px;border:1px solid var(--ink,#0b1e2c);background:var(--ink,#0b1e2c);color:#fff;font-weight:600!important}
.anne-avatar{display:block;flex:0 0 48px;width:48px;height:48px;object-fit:cover;object-position:center;border:0;background:#eee8df}
.anne-panel{pointer-events:auto;display:flex;flex-direction:column;height:min(510px,calc(100dvh - 120px));margin-bottom:10px;background:var(--paper,#f5f2eb);border:1px solid var(--ink,#0b1e2c);box-shadow:0 8px 28px #0b1e2c26}
.anne-header{display:flex;align-items:center;gap:10px;padding:14px 16px;background:var(--ink,#0b1e2c);color:white;flex-shrink:0}
.anne-header h2{margin:0;font-size:19px;line-height:1.2;text-transform:none;letter-spacing:0}
.anne-header p{margin:3px 0 0;font-size:11px;color:#fff}
.anne-close{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;padding:0;border:0;background:transparent;color:inherit;font-size:26px!important;line-height:1}
.anne-close{margin-left:auto;margin-right:-10px}
.anne-log{overflow-y:auto;overscroll-behavior:contain;flex:1;min-height:0;padding:18px 16px;scroll-behavior:auto}
.anne-message{margin:0 26px 12px 0;padding:10px 12px;background:#fff;border:1px solid #0b1e2c1a;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.5}
.anne-message--user{margin:0 0 12px 26px;background:var(--ink,#0b1e2c);color:#fff}
.anne-products{display:flex;flex-direction:column;gap:6px;margin:0 26px 14px 0}
.anne-products button{text-align:left;min-height:40px;padding:8px 12px;border:1px solid var(--ink,#0b1e2c);color:inherit;background:transparent;font-size:13px}
.anne-products button:hover{background:var(--coral,#ff6f61)}
.anne-form{display:flex;gap:8px;flex-shrink:0;padding:12px;border-top:1px solid #0b1e2c33}
.anne-form input{width:0;flex:1;min-width:0;min-height:44px;padding:10px;border:1px solid #0b1e2c55;background:#fff;color:inherit;font-size:16px}
.anne-send{min-height:44px;padding:8px 14px;border:1px solid var(--ink,#0b1e2c);background:var(--ink,#0b1e2c);color:#fff}
.anne-form :disabled{cursor:default;opacity:.55}
.anne-ended{margin:0;padding:0 12px 12px;text-align:center;font-size:12px;font-weight:600}
.anne-typing{display:flex;align-items:center;gap:9px;margin:0 26px 12px 0;padding:10px 12px;color:var(--ink,#0b1e2c);font-size:12px}
.anne-dots{display:inline-flex;gap:4px;align-items:center}
.anne-dots i{width:5px;height:5px;background:currentColor;border-radius:50%;animation:anne-dot 1s infinite ease-in-out}
.anne-dots i:nth-child(2){animation-delay:.15s}.anne-dots i:nth-child(3){animation-delay:.3s}
@keyframes anne-dot{0%,60%,100%{transform:translateY(0);opacity:.35}30%{transform:translateY(-3px);opacity:1}}
@media(prefers-reduced-motion:reduce){.anne-dots i{animation:none;opacity:1}}
.anne-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}
@media(max-width:480px){.anne-widget{right:16px;bottom:max(12px,env(safe-area-inset-bottom))}.anne-panel{height:min(480px,calc(100dvh - 110px))}}
