/* GENESIS Assistant 3.0  Premium styling */
:root{
  --bg:#08121a;--panel:#0b1722;--ink:#e6f1ff;--muted:#9fb3c8;--teal:#10b3a3;--teal2:#0edac4;--danger:#ff5470;
  --glow:0 0 28px rgba(16,179,163,.35), 0 0 80px rgba(14,218,196,.18);
}
*{box-sizing:border-box}
.ga3-hidden{display:none!important}

.ga3-fab{
  position:fixed;left:50%;transform:translateX(-50%);
  bottom:16px;display:flex;align-items:center;gap:10px;
  padding:10px 14px;border-radius:20px;background:rgba(3,18,25,.75);backdrop-filter:blur(8px);
  border:1px solid rgba(16,179,163,.25);box-shadow:var(--glow);z-index:2147483600
}
.ga3-wave{
  width:28px;height:28px;border-radius:50%;
  background:conic-gradient(from 180deg at 50% 50%,var(--teal),var(--teal2),var(--teal));
  animation:ga3-breathe 2.6s ease-in-out infinite;
  mask: radial-gradient(circle at 50% 50%, #000 62%, transparent 63%);
}
@keyframes ga3-breathe{0%{filter:brightness(90%)}50%{filter:brightness(120%)}100%{filter:brightness(90%)}}

.ga3-btn{background:var(--teal);color:#031b1f;border:none;padding:8px 12px;border-radius:12px;font-weight:700;cursor:pointer}
.ga3-btn.ghost{background:transparent;color:#aee;border:1px solid rgba(174,238,238,.35)}
.ga3-label{color:var(--muted);font-size:12px}

.ga3-panel{
  position:fixed;left:50%;transform:translateX(-50%);
  bottom:64px;width:min(880px,94vw);max-height:min(70vh,640px);overflow:hidden;
  background:linear-gradient(180deg,#0b1722,#071018);border:1px solid rgba(16,179,163,.25);
  border-radius:18px;box-shadow:var(--glow);z-index:2147483600;display:flex;flex-direction:column
}
.ga3-head{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid rgba(16,179,163,.15)}
.ga3-title{display:flex;align-items:center;gap:10px;font-weight:800}
.ga3-stream{padding:10px 14px;overflow:auto;gap:10px;display:flex;flex-direction:column}
.ga3-msg{padding:10px 12px;border-radius:12px;max-width:88%}
.ga3-msg.bot{background:#0c1f29;color:var(--ink);align-self:flex-start;border:1px solid rgba(16,179,163,.15)}
.ga3-msg.me{background:#0e2a38;color:#cde;align-self:flex-end;border:1px solid rgba(16,179,163,.15)}
.ga3-foot{display:flex;gap:8px;padding:10px;border-top:1px solid rgba(16,179,163,.15)}
.ga3-input{flex:1;background:#0b1620;color:#e6f1ff;border:1px solid rgba(16,179,163,.25);border-radius:12px;padding:10px}
.ga3-iconbtn{min-width:44px;border-radius:12px;border:1px solid rgba(16,179,163,.25);background:#0b1620;color:#aee;cursor:pointer}

.ga3-drop{border:1px dashed rgba(16,179,163,.35);border-radius:12px;padding:12px;margin-top:10px;text-align:center;color:#9fb3c8}

.ga3-perm-modal{position:fixed;inset:0;background:rgba(0,0,0,.55);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:2147483601}
.ga3-perm-card{width:min(720px,94vw);background:#0b1722;border:1px solid rgba(16,179,163,.25);border-radius:16px;padding:18px;box-shadow:var(--glow)}
.ga3-perm-row{display:flex;align-items:flex-start;gap:10px;margin-top:10px}
.ga3-perm-row input{transform:translateY(3px)}
.ga3-disclosure{margin-top:10px;border-top:1px solid rgba(16,179,163,.15);padding-top:10px;color:#9fb3c8;font-size:13px;max-height:200px;overflow:auto}

.ga3-chip{display:inline-flex;align-items:center;gap:6px;background:#0e2631;border:1px solid rgba(16,179,163,.2);border-radius:999px;padding:6px 10px;font-size:12px;color:#aee}
@media (prefers-reduced-motion: reduce){.ga3-wave{animation:none}}