.anc-wrap{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:9999;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial}
.anc-toggle{display:flex;align-items:center;gap:10px;padding:14px 18px;border:none;border-radius:999px;background:#16a34a;color:#fff;box-shadow:0 10px 30px rgba(22,163,74,.35);cursor:pointer}
.anc-toggle.glow{animation:glow 2s ease-in-out infinite}
.anc-toggle .label{font-weight:700}
@keyframes glow{0%,100%{box-shadow:0 10px 30px rgba(22,163,74,.35)}50%{box-shadow:0 14px 40px rgba(22,163,74,.6)}}

.anc-window{display:none;position:fixed;left:50%;bottom:100px;transform:translateX(-50%);width:860px;max-width:92vw;height:70vh;background:rgba(255,255,255,.82);backdrop-filter:blur(14px);border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,.25);overflow:hidden}
.anc-window.open{display:block;animation:pop 220ms ease-out}
@keyframes pop{from{transform:translateX(-50%) scale(.97);opacity:.7}to{transform:translateX(-50%) scale(1);opacity:1}}

.anc-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid rgba(0,0,0,.06);background:rgba(248,250,252,.9)}
.anc-header .left{display:flex;gap:12px;align-items:center}
.anc-header .logo{width:36px;height:36px;border-radius:10px;background:#16a34a;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 12px rgba(0,0,0,.15)}
.anc-header .logo.bounce{animation:bounce 2s infinite}
@keyframes bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
.anc-header .title{font-weight:800}
.anc-header .subtitle{font-size:12px;color:#64748b}

.anc-body{height:48vh;overflow:auto;padding:16px}
.msg{margin:10px 0;padding:12px 14px;border-radius:14px;background:rgba(241,245,249,.9)}
.msg.user{background:#dcfce7}
.msg.sys{background:#e0e7ff}

.typing{display:inline-flex;gap:4px;align-items:center}
.typing .dot1,.typing .dot2,.typing .dot3{width:6px;height:6px;border-radius:50%;background:#a3a3a3;animation:blink 1.2s infinite}
.typing .dot2{animation-delay:.2s}.typing .dot3{animation-delay:.4s}
@keyframes blink{0%,80%,100%{opacity:.2}40%{opacity:1}}

.anc-suggestions{padding:8px 16px;border-top:1px solid rgba(0,0,0,.06)}
.cards{display:flex;gap:10px;flex-wrap:wrap}
.card{display:inline-block;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.9);box-shadow:0 2px 8px rgba(0,0,0,.08);text-decoration:none;color:#111}
.prompts{display:flex;gap:8px;margin-left:auto}
.chip{padding:8px 10px;border-radius:999px;border:1px solid #d1d5db;background:#fff;cursor:pointer}

.anc-input{position:sticky;bottom:0;display:flex;gap:8px;align-items:flex-start;padding:12px 16px;border-top:1px solid rgba(0,0,0,.06);background:rgba(248,250,252,.95)}
.anc-input textarea{flex:1;resize:none;height:64px;padding:10px;border:1px solid #e5e7eb;border-radius:12px;background:rgba(255,255,255,.95)}
.anc-input .anc-send{background:#16a34a;color:#fff;border:none;border-radius:12px;padding:12px 16px;cursor:pointer;transition:transform .12s ease}
.anc-input .anc-send:hover{transform:translateY(-1px)}
.anc-input .mic,.anc-input .speak{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:0 12px;height:40px;cursor:pointer}
.anc-input .mic.on{background:#fef3c7;border-color:#f59e0b}

.autosuggest{position:absolute;bottom:92px;left:16px;display:flex;gap:6px;flex-wrap:wrap;max-width:70%}
.autochip{padding:6px 10px;border-radius:999px;background:#fff;border:1px solid #e5e7eb;cursor:pointer;box-shadow:0 1px 3px rgba(0,0,0,.06)}