:root { --bg:#fff; --ink:#111; --muted:#6b7280; --brand:#16a34a;
    --card:#f5f7ff; --card-b:#e3e8ff; --line:#e5e7eb; --btn:#f8f8f8; }
  #ai4g-chat{position:fixed;right:20px;bottom:20px;width:360px;max-width:90vw;background:var(--bg);color:var(--ink);
    border:1px solid #ddd;border-radius:14px;box-shadow:0 12px 30px rgba(0,0,0,.12);display:none;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial;z-index:999999}
  .ai4g-header{padding:12px 14px;font-weight:700;border-bottom:1px solid var(--line);display:flex;gap:8px;align-items:center}
  .ai4g-header .dot{width:8px;height:8px;background:var(--brand);border-radius:999px;box-shadow:0 0 0 6px rgba(22,163,74,.12)}
  .ai4g-body{padding:14px;max-height:60vh;overflow:auto}
  .ai4g-btn{display:block;width:100%;margin:.4rem 0;padding:.6rem .8rem;border-radius:10px;border:1px solid #ddd;background:var(--btn);
    cursor:pointer;text-align:left;transition:transform .06s ease}
  .ai4g-btn:active{transform:scale(.99)}
  .ai4g-btn.primary{background:var(--brand);color:#fff;border-color:var(--brand);text-align:center}
  .ai4g-card{background:var(--card);border:1px solid var(--card-b);border-radius:12px;padding:10px;margin:.4rem 0}
  .ai4g-field{width:100%;padding:.6rem;margin:.3rem 0;border:1px solid #ddd;border-radius:8px}
  .ai4g-close{position:absolute;top:6px;right:8px;border:0;background:transparent;font-size:18px;cursor:pointer}
  #ai4g-chat-launcher{position:fixed;right:20px;bottom:20px;background:var(--brand);color:#fff;border-radius:999px;width:54px;height:54px;
    display:grid;place-items:center;cursor:pointer;font-size:22px;z-index:999999}
  .ai4g-muted{color:var(--muted);font-size:.9rem}
  .ai4g-group{border:1px dashed #e5e7eb;border-radius:10px;padding:.5rem .6rem;margin:.5rem 0}
  .ai4g-group label{display:flex;gap:.6rem;align-items:flex-start;padding:.35rem 0;cursor:pointer}
  .ai4g-progress{height:6px;border-radius:999px;background:#f1f5f9;overflow:hidden;margin:8px 0 4px}
  .ai4g-progress>div{height:100%;background:var(--brand);width:0%;transition:width .4s ease}
  .ai4g-typing{display:flex;gap:4px;align-items:center;margin:.2rem 0 .6rem}
  .ai4g-typing span{width:6px;height:6px;background:#cbd5e1;border-radius:999px;display:inline-block;animation:b 1s infinite ease-in-out}
  .ai4g-typing span:nth-child(2){animation-delay:.15s}.ai4g-typing span:nth-child(3){animation-delay:.3s}
  @keyframes b{0%,80%,100%{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
  .ai4g-row{display:flex;gap:8px;align-items:center}
  .ai4g-chip{display:inline-block;padding:.25rem .5rem;border:1px solid var(--line);border-radius:999px;font-size:.8rem;margin:.15rem .2rem 0 0}
