.aia-wrap {
  position:relative; overflow:hidden;
  border-radius:20px;
  background:linear-gradient(145deg,#060f1c 0%,#071828 60%,#060e1a 100%);
  border:1px solid rgba(34,197,94,0.22);
  box-shadow:0 0 0 1px rgba(34,197,94,0.07),0 32px 80px rgba(0,0,0,0.6),0 0 80px rgba(34,197,94,0.05);
}
.aia-wrap::before {
  content:''; position:absolute; top:-100px; right:-80px;
  width:420px; height:420px; border-radius:50%;
  background:radial-gradient(circle,rgba(34,197,94,0.07) 0%,transparent 70%);
  pointer-events:none;
}
.aia-header {
  display:flex; align-items:center; gap:14px;
  padding:24px 28px 0;
}
.aia-icon-wrap {
  width:44px; height:44px; border-radius:12px;
  background:rgba(34,197,94,0.12); border:1px solid rgba(34,197,94,0.25);
  display:flex; align-items:center; justify-content:center; flex-shrink:0;
}
.aia-title-block { flex:1; min-width:0; }
.aia-title {
  font-size:18px; font-weight:700; color:#f1f5f9; margin:0;
  letter-spacing:-0.3px;
}
.aia-sub {
  font-size:12px; color:#64748b; margin-top:2px;
}
.aia-live {
  display:flex; align-items:center; gap:6px;
  font-size:11px; font-weight:600; color:#22c55e;
  background:rgba(34,197,94,0.1); border:1px solid rgba(34,197,94,0.2);
  padding:4px 10px; border-radius:20px;
}
.aia-live-dot {
  width:6px; height:6px; border-radius:50%; background:#22c55e;
  animation:aia-pulse 2s infinite;
}
@keyframes aia-pulse {
  0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.5;transform:scale(1.2)}
}

/* ── Suggestions ── */
.aia-chips {
  display:flex; flex-wrap:wrap; gap:8px;
  padding:18px 28px 0;
}
.aia-chip {
  padding:6px 13px; border-radius:20px; font-size:12px; font-weight:500;
  color:#94a3b8; border:1px solid rgba(148,163,184,0.18);
  background:rgba(255,255,255,0.03); cursor:pointer;
  transition:all .2s; white-space:nowrap;
}
.aia-chip:hover {
  color:#22c55e; border-color:rgba(34,197,94,0.35);
  background:rgba(34,197,94,0.07);
}

/* ── Chat area ── */
.aia-messages {
  margin:18px 28px 0; min-height:160px; max-height:360px;
  overflow-y:auto; display:flex; flex-direction:column; gap:14px;
  scroll-behavior:smooth;
}
.aia-messages::-webkit-scrollbar { width:4px; }
.aia-messages::-webkit-scrollbar-thumb { background:rgba(34,197,94,0.2); border-radius:4px; }

.aia-msg { display:flex; gap:10px; animation:aia-slide .25s ease; }
@keyframes aia-slide { from{opacity:0;transform:translateY(6px)} to{opacity:1;transform:none} }

.aia-msg-avatar {
  width:30px; height:30px; border-radius:8px; flex-shrink:0;
  display:flex; align-items:center; justify-content:center; font-size:14px;
  margin-top:2px;
}
.aia-msg.user .aia-msg-avatar { background:rgba(99,102,241,0.18); margin-left:auto; order:2; }
.aia-msg.bot  .aia-msg-avatar { background:rgba(34,197,94,0.12); }
.aia-msg.user { flex-direction:row-reverse; }
.aia-msg.user .aia-msg-body { align-items:flex-end; }

.aia-msg-body { display:flex; flex-direction:column; gap:4px; max-width:88%; }
.aia-bubble {
  padding:10px 14px; border-radius:14px; font-size:13.5px; line-height:1.6;
}
.aia-msg.bot  .aia-bubble { background:rgba(255,255,255,0.05); color:#e2e8f0; border-radius:4px 14px 14px 14px; }
.aia-msg.user .aia-bubble { background:rgba(34,197,94,0.15); color:#dcfce7; border:1px solid rgba(34,197,94,0.2); border-radius:14px 4px 14px 14px; }

/* ── Welcome state ── */
.aia-welcome {
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:10px; padding:24px 16px; text-align:center; color:#475569;
}
.aia-welcome-icon { font-size:36px; opacity:.5; }
.aia-welcome p { font-size:13px; max-width:340px; line-height:1.6; margin:0; }

/* ── Typing indicator ── */
.aia-typing {
  display:flex; align-items:center; gap:4px;
  padding:10px 14px; background:rgba(255,255,255,0.05); border-radius:4px 14px 14px 14px;
  width:fit-content;
}
.aia-typing span {
  width:6px; height:6px; border-radius:50%; background:#22c55e; display:inline-block;
  animation:aia-bounce .8s infinite;
}
.aia-typing span:nth-child(2){animation-delay:.15s}
.aia-typing span:nth-child(3){animation-delay:.3s}
@keyframes aia-bounce { 0%,60%,100%{transform:translateY(0)} 30%{transform:translateY(-6px)} }

/* ── Data tables ── */
.aia-table-wrap { margin-top:10px; overflow-x:auto; border-radius:10px; border:1px solid rgba(255,255,255,0.07); }
.aia-table {
  width:100%; border-collapse:collapse; font-size:12px;
}
.aia-table th {
  padding:7px 10px; text-align:left; font-weight:600; font-size:11px;
  color:#64748b; text-transform:uppercase; letter-spacing:.5px;
  background:rgba(255,255,255,0.04); border-bottom:1px solid rgba(255,255,255,0.07);
  white-space:nowrap;
}
.aia-table td {
  padding:7px 10px; color:#e2e8f0; border-bottom:1px solid rgba(255,255,255,0.04);
  white-space:nowrap;
}
.aia-table tr:last-child td { border-bottom:none; }
.aia-table tr:hover td { background:rgba(255,255,255,0.025); }
.aia-table .sym { font-weight:700; color:#f1f5f9; }
.aia-table .sym a { color:inherit; text-decoration:none; }
.aia-table .sym a:hover { color:#22c55e; }
.aia-pos { color:#22c55e; font-weight:600; }
.aia-neg { color:#ef4444; font-weight:600; }
.aia-neu { color:#94a3b8; }

/* ── Input bar ── */
.aia-input-row {
  display:flex; gap:8px; align-items:flex-end;
  padding:16px 28px 22px; margin-top:4px;
  border-top:1px solid rgba(255,255,255,0.06);
}
.aia-input-field { flex:1; min-width:0; display:flex; flex-direction:column; gap:6px; }
.aia-input-label { color:#94a3b8; font-size:12px; font-weight:600; }
.aia-input {
  width:100%; background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.1);
  border-radius:12px; padding:11px 16px; color:#f1f5f9; font-size:14px;
  outline:none; resize:none; font-family:inherit; line-height:1.5;
  min-height:44px; max-height:120px; overflow-y:auto;
  transition:border-color .2s;
}
.aia-input:focus { border-color:rgba(34,197,94,0.4); }
.aia-input::placeholder { color:#475569; }
.aia-send {
  flex-shrink:0; width:44px; height:44px; border-radius:12px;
  background:linear-gradient(135deg,#16a34a,#22c55e); border:none;
  cursor:pointer; display:flex; align-items:center; justify-content:center;
  transition:opacity .2s,transform .15s; color:#fff;
}
.aia-send:hover:not(:disabled) { opacity:.9; transform:scale(1.05); }
.aia-send:disabled { opacity:.4; cursor:not-allowed; }

/* ── News cards ── */
.aia-news { display:flex; flex-direction:column; gap:6px; margin-top:10px; }
.aia-news-item {
  padding:9px 12px; border-radius:8px; background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.07);
}
.aia-news-item a { color:#22c55e; font-size:13px; font-weight:500; text-decoration:none; line-height:1.4; display:block; }
.aia-news-item a:hover { text-decoration:underline; }
.aia-news-item .aia-news-meta { font-size:11px; color:#64748b; margin-top:3px; }
.aia-news-item .aia-news-summary { font-size:12px; color:#94a3b8; margin-top:4px; line-height:1.5; }

@media(max-width:600px) {
  .aia-header { padding:18px 18px 0; }
  .aia-chips  { padding:14px 18px 0; }
  .aia-messages { margin:14px 18px 0; }
  .aia-input-row { padding:12px 18px 18px; }
  .aia-title { font-size:16px; }
  .aia-chip { font-size:11px; padding:5px 10px; }
}

/* ── Stand-alone page ────────────────────────────────── */
.aia-page { max-width: 1100px; margin: 0 auto; padding: 24px 24px 64px; }
.aia-page-head { margin: 8px 0 24px; }
.aia-page-head h1 { margin: 0 0 10px; font-size: clamp(28px, 4vw, 38px); line-height: 1.15; letter-spacing: -.02em; color: var(--text-main, #f1f5f9); }
.aia-page-head p { margin: 0; max-width: 70ch; font-size: 16px; line-height: 1.7; color: var(--text-muted, #94a3b8); }
.aia-page-notes { margin-top: 36px; max-width: 78ch; color: var(--text-muted, #94a3b8); font-size: 15px; line-height: 1.75; }
.aia-page-notes h2 { margin: 24px 0 8px; font-size: 20px; color: var(--text-main, #f1f5f9); }
.aia-page-notes ul { margin: 0 0 8px; padding-left: 20px; }
.aia-page-notes li { margin: 6px 0; }
.aia-page-notes a { color: var(--accent, #22c55e); }
@media (max-width: 600px) { .aia-page { padding: 16px 16px 48px; } }
