:root{--aida-navy:#0a1d7a;--aida-navy-700:#0b2497;--aida-gold:#f2b705;--aida-surface:#ffffff;--aida-bot-bg:#f1f5f9;--aida-text:#0f172a;--aida-muted:#64748b;--aida-border:#e2e8f0;--aida-danger:#b91c1c;--aida-danger-bg:#fef2f2}*{box-sizing:border-box}body,html{margin:0;padding:0;height:100%}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:var(--aida-text)}.aida-app,body{background:var(--aida-surface)}.aida-app{display:flex;flex-direction:column;height:100vh;height:100dvh}.aida-header{justify-content:space-between;gap:8px;padding:12px 14px;background:var(--aida-navy);color:#fff;border-bottom:3px solid var(--aida-gold)}.aida-brand,.aida-header{display:flex;align-items:center}.aida-brand{gap:10px;min-width:0}.aida-avatar{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:#fff;color:var(--aida-navy);font-weight:700;font-size:15px;flex:0 0 auto}.aida-title{line-height:1.2;min-width:0}.aida-title strong{font-size:15px;font-weight:700}.aida-title small{display:block;font-size:11px;color:#c7d2fe}.aida-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:#fff;font-size:22px;line-height:1;width:32px;height:32px;border-radius:8px;cursor:pointer;flex:0 0 auto}.aida-close:hover{background:rgba(255,255,255,.15)}.aida-close:focus-visible{outline:2px solid var(--aida-gold);outline-offset:2px}.aida-disclosure{padding:8px 14px;font-size:11px;line-height:1.4;color:var(--aida-muted);background:#f8fafc;border-bottom:1px solid var(--aida-border)}.aida-disclosure a{color:var(--aida-navy)}.aida-recaptcha-note{margin-top:4px;color:#94a3b8}.aida-log{flex:1 1 auto;overflow-y:auto;padding:14px;gap:12px}.aida-log,.aida-row{display:flex;flex-direction:column}.aida-row{max-width:88%}.aida-row.user{align-self:flex-end;align-items:flex-end}.aida-row.bot,.aida-row.system{align-self:flex-start;align-items:flex-start}.aida-bubble{padding:9px 12px;border-radius:14px;font-size:14px;line-height:1.5;word-wrap:break-word;overflow-wrap:anywhere}.aida-row.bot .aida-bubble{background:var(--aida-bot-bg);color:var(--aida-text);border-bottom-left-radius:4px}.aida-row.user .aida-bubble{background:var(--aida-navy);color:#fff;border-bottom-right-radius:4px}.aida-bubble p{margin:0 0 8px}.aida-bubble p:last-child{margin-bottom:0}.aida-bubble ul{margin:4px 0;padding-left:18px}.aida-bubble li{margin:2px 0}.aida-bubble a{color:var(--aida-navy);text-decoration:underline;overflow-wrap:anywhere}.aida-row.user .aida-bubble a{color:#e0e7ff}.aida-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.aida-chip{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border-radius:999px;border:1px solid var(--aida-border);background:#fff;color:var(--aida-navy);font-size:12px;font-weight:600;text-decoration:none}.aida-chip:hover{background:#f8fafc}.aida-card{margin-top:8px;border:1px solid var(--aida-border);border-radius:12px;padding:10px 12px;background:#fff;font-size:13px;line-height:1.45;max-width:100%}.aida-card h3{margin:0 0 6px;font-size:13px;color:var(--aida-navy)}.aida-card dl{margin:0;display:grid;grid-template-columns:auto 1fr;grid-gap:2px 8px;gap:2px 8px}.aida-card dt{color:var(--aida-muted);font-weight:600}.aida-card dd{margin:0;overflow-wrap:anywhere}.aida-card a{color:var(--aida-navy)}.aida-card-links{margin-top:8px;display:flex;flex-wrap:wrap;gap:6px}.aida-card.emergency{border-color:#fecaca;background:var(--aida-danger-bg)}.aida-card.emergency h3{color:var(--aida-danger)}.aida-emergency-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.aida-emergency-actions a{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:10px;background:var(--aida-danger);color:#fff;font-weight:700;text-decoration:none;font-size:13px}.aida-quick{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.aida-quick-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;padding:8px 12px;border-radius:12px;border:1px solid var(--aida-border);background:#fff;color:var(--aida-navy);font-size:13px;cursor:pointer}.aida-quick-btn:hover{background:#f8fafc}.aida-chip:focus-visible,.aida-quick-btn:focus-visible,.aida-retry:focus-visible{outline:2px solid var(--aida-navy);outline-offset:2px}.aida-typing{display:inline-flex;gap:4px;padding:11px 12px;background:var(--aida-bot-bg);border-radius:14px;border-bottom-left-radius:4px}.aida-typing span{width:6px;height:6px;border-radius:50%;background:#94a3b8;animation:aida-blink 1.2s ease-in-out infinite both}.aida-typing span:nth-child(2){animation-delay:.2s}.aida-typing span:nth-child(3){animation-delay:.4s}@keyframes aida-blink{0%,80%,to{opacity:.3}40%{opacity:1}}.aida-system{font-size:13px;color:var(--aida-text);background:#fff7ed;border:1px solid #fed7aa;border-radius:12px;padding:9px 12px;line-height:1.45}.aida-retry{margin-top:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--aida-navy);background:#fff;color:var(--aida-navy);font-size:12px;font-weight:600;padding:5px 10px;border-radius:8px;cursor:pointer}.aida-composer{border-top:1px solid var(--aida-border);padding:10px 12px;background:#fff}.aida-composer-row{display:flex;align-items:flex-end;gap:8px}.aida-textarea{flex:1 1 auto;resize:none;border:1px solid var(--aida-border);border-radius:12px;padding:9px 12px;font:inherit;font-size:14px;line-height:1.4;max-height:120px;color:var(--aida-text)}.aida-textarea:focus-visible{outline:2px solid var(--aida-navy);outline-offset:0;border-color:var(--aida-navy)}.aida-textarea:disabled{background:#f8fafc;color:var(--aida-muted)}.aida-send{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:0 0 auto;width:40px;height:40px;border:0;border-radius:12px;background:var(--aida-navy);color:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.aida-send:disabled{background:#cbd5e1;cursor:not-allowed}.aida-send:focus-visible{outline:2px solid var(--aida-gold);outline-offset:2px}.aida-counter{margin-top:4px;text-align:right;font-size:11px;color:var(--aida-muted)}.aida-counter.warn{color:var(--aida-danger)}@media (prefers-reduced-motion:reduce){.aida-typing span{animation:none;opacity:.6}}