:root{--ggc-primary:#6C3DC5;--ggc-primary-dark:#5a31a8;--ggc-bg:#fff;--ggc-surface:#F5F3FF;--ggc-text:#1f2937;--ggc-text-light:#6b7280;--ggc-border:#e5e7eb;--ggc-shadow:0 8px 40px rgba(108,61,197,.22);--ggc-radius:20px;--ggc-font:Tahoma,'Vazir',Arial,sans-serif}
#ggc-chatbot-container{position:fixed;z-index:99999;font-family:var(--ggc-font);direction:rtl}
#ggc-chatbot-container.ggc-bottom-right{bottom:24px;right:24px}
#ggc-chatbot-container.ggc-bottom-left{bottom:24px;left:24px}

/* Toggle Button */
#ggc-toggle-btn{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--ggc-primary) 0%,var(--ggc-primary-dark) 100%);border:none;cursor:pointer;box-shadow:var(--ggc-shadow);transition:transform .2s ease,box-shadow .2s ease;display:flex;align-items:center;justify-content:center;outline:none;padding:0}
#ggc-toggle-btn:hover{transform:scale(1.1);box-shadow:0 14px 40px rgba(108,61,197,.38)}
#ggc-toggle-btn:active{transform:scale(.94)}
.ggc-icon-open,.ggc-icon-close{display:flex;align-items:center;justify-content:center}

/* Chat Window */
#ggc-chat-window{width:380px;max-width:calc(100vw - 48px);max-height:calc(100vh - 110px);background:var(--ggc-bg);border-radius:var(--ggc-radius);box-shadow:var(--ggc-shadow);display:flex;flex-direction:column;overflow:hidden;margin-bottom:14px;border:1px solid rgba(108,61,197,.15);animation:ggcSlideUp .28s cubic-bezier(.22,.68,0,1.2)}
@keyframes ggcSlideUp{from{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}

/* Header */
#ggc-chat-header{background:linear-gradient(135deg,var(--ggc-primary) 0%,var(--ggc-primary-dark) 100%);color:#fff;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
.ggc-header-info{display:flex;align-items:center;gap:10px}
.ggc-avatar{width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;flex-shrink:0;border:2px solid rgba(255,255,255,.3)}
.ggc-title{font-weight:700;font-size:15px}
.ggc-status{font-size:11px;opacity:.88;margin-top:2px;display:flex;align-items:center;gap:4px}
.ggc-status::before{content:'';display:inline-block;width:7px;height:7px;background:#4ade80;border-radius:50%;box-shadow:0 0 0 2px rgba(74,222,128,.3)}
#ggc-clear-btn{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.25);color:#fff;width:34px;height:34px;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;padding:0}
#ggc-clear-btn:hover{background:rgba(255,255,255,.28)}

/* ── Lead Form ── */
#ggc-lead-form{padding:20px 18px;background:var(--ggc-surface);flex:1;overflow-y:auto}
.ggc-form-inner{display:flex;flex-direction:column;gap:14px}
.ggc-form-icon{display:flex;justify-content:center}
.ggc-form-title{text-align:center;font-size:14px;font-weight:600;color:var(--ggc-text);line-height:1.6;margin:0}
.ggc-form-row{display:flex;gap:10px}
.ggc-form-row .ggc-form-group{flex:1}
.ggc-form-group{display:flex;flex-direction:column;gap:5px}
.ggc-form-group label{font-size:12px;font-weight:600;color:var(--ggc-text);display:flex;align-items:center;gap:3px}
.ggc-form-group label .req{color:#dc2626}
.ggc-form-group input{border:1.5px solid var(--ggc-border);border-radius:10px;padding:9px 12px;font-size:13px;font-family:var(--ggc-font);outline:none;transition:border-color .2s,box-shadow .2s;direction:rtl;background:#fff;color:var(--ggc-text)}
.ggc-form-group input:focus{border-color:var(--ggc-primary);box-shadow:0 0 0 3px rgba(108,61,197,.12)}
.ggc-form-group input::placeholder{color:#9ca3af;font-size:12px}
#ggc-form-error{background:#fef2f2;border:1px solid #fca5a5;color:#dc2626;padding:8px 12px;border-radius:8px;font-size:12px;text-align:center}
#ggc-form-submit{background:linear-gradient(135deg,var(--ggc-primary) 0%,var(--ggc-primary-dark) 100%);color:#fff;border:none;border-radius:12px;padding:12px;font-size:14px;font-family:var(--ggc-font);font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px;transition:opacity .15s,transform .1s,box-shadow .15s;box-shadow:0 4px 14px rgba(108,61,197,.35);margin-top:4px}
#ggc-form-submit:hover{box-shadow:0 6px 20px rgba(108,61,197,.45);transform:translateY(-1px)}
#ggc-form-submit:active{transform:scale(.97)}
#ggc-form-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}

/* ── Messages ── */
#ggc-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;background:var(--ggc-surface);scroll-behavior:smooth;min-height:200px;max-height:360px}
#ggc-messages::-webkit-scrollbar{width:4px}
#ggc-messages::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}
.ggc-message-row{display:flex;align-items:flex-end;gap:8px;animation:ggcFadeIn .2s ease}
.ggc-message-row.ggc-user{flex-direction:row-reverse}
.ggc-message-row.ggc-bot{flex-direction:row}
@keyframes ggcFadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.ggc-msg-avatar{width:30px;height:30px;border-radius:50%;background:var(--ggc-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 2px 8px rgba(108,61,197,.3)}
.ggc-message-row.ggc-user .ggc-msg-avatar{background:#e5e7eb}
.ggc-message-col{display:flex;flex-direction:column;max-width:80%}
.ggc-message-row.ggc-user .ggc-message-col{align-items:flex-end}
.ggc-message-row.ggc-bot .ggc-message-col{align-items:flex-start}
.ggc-bubble{padding:10px 14px;border-radius:18px;font-size:14px;line-height:1.65;word-wrap:break-word;white-space:pre-wrap}
.ggc-message-row.ggc-user .ggc-bubble{background:var(--ggc-primary);color:#fff;border-bottom-left-radius:5px}
.ggc-message-row.ggc-bot .ggc-bubble{background:#fff;color:var(--ggc-text);border:1px solid var(--ggc-border);border-bottom-right-radius:5px;box-shadow:0 1px 4px rgba(0,0,0,.06)}
.ggc-bubble.ggc-error{background:#fef2f2!important;border-color:#fca5a5!important;color:#dc2626!important}
.ggc-time{font-size:10px;color:var(--ggc-text-light);margin-top:3px;padding:0 4px}
.ggc-typing .ggc-bubble{padding:12px 16px;min-width:60px}
.ggc-typing-dots{display:flex;gap:5px;align-items:center}
.ggc-typing-dots span{width:8px;height:8px;background:var(--ggc-primary);border-radius:50%;animation:ggcBounce 1.3s infinite;opacity:.5}
.ggc-typing-dots span:nth-child(2){animation-delay:.2s}
.ggc-typing-dots span:nth-child(3){animation-delay:.4s}
@keyframes ggcBounce{0%,60%,100%{transform:translateY(0);opacity:.5}30%{transform:translateY(-6px);opacity:1}}

/* ── Consult Banner ── */
#ggc-consult-banner{flex-shrink:0;background:linear-gradient(135deg,var(--ggc-primary) 0%,var(--ggc-primary-dark) 100%);padding:0}
#ggc-consult-link{display:flex;align-items:center;gap:10px;padding:10px 14px;text-decoration:none;color:#fff;transition:opacity .15s}
#ggc-consult-link:hover{opacity:.9}
.ggc-banner-icon{width:36px;height:36px;background:rgba(255,255,255,.18);border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ggc-banner-text{display:flex;flex-direction:column;flex:1}
.ggc-banner-title{font-size:13px;font-weight:700;color:#fff}
.ggc-banner-desc{font-size:11px;color:rgba(255,255,255,.82);margin-top:1px}
.ggc-banner-arrow{flex-shrink:0;opacity:.8;transform:rotate(180deg)}

/* ── Input Area ── */
#ggc-input-area{display:flex;align-items:flex-end;gap:8px;padding:12px 14px;border-top:1px solid var(--ggc-border);background:#fff;flex-shrink:0}
#ggc-user-input{flex:1;border:1.5px solid var(--ggc-border);border-radius:14px;padding:10px 14px;font-size:14px;font-family:var(--ggc-font);resize:none;outline:none;line-height:1.5;max-height:100px;overflow-y:auto;transition:border-color .2s,box-shadow .2s;direction:rtl;color:var(--ggc-text);background:var(--ggc-surface)}
#ggc-user-input:focus{border-color:var(--ggc-primary);background:#fff;box-shadow:0 0 0 3px rgba(108,61,197,.12)}
#ggc-send-btn{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--ggc-primary) 0%,var(--ggc-primary-dark) 100%);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:opacity .15s,transform .1s,box-shadow .15s;box-shadow:0 4px 12px rgba(108,61,197,.38);padding:0}
#ggc-send-btn:hover{box-shadow:0 6px 18px rgba(108,61,197,.48);transform:translateY(-1px)}
#ggc-send-btn:active{transform:scale(.92)}
#ggc-send-btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}

/* Mobile */
@media(max-width:480px){
  #ggc-chatbot-container.ggc-bottom-right,#ggc-chatbot-container.ggc-bottom-left{bottom:0;right:0;left:0}
  #ggc-chat-window{width:100vw;max-width:100vw;border-radius:var(--ggc-radius) var(--ggc-radius) 0 0;margin-bottom:64px}
  #ggc-toggle-btn{position:absolute;bottom:0;right:16px}
  #ggc-chatbot-container.ggc-bottom-left #ggc-toggle-btn{right:auto;left:16px}
  .ggc-form-row{flex-direction:column}
}

/* ── Lead Form ── */
#ggc-lead-form {
    flex: 1;
    overflow-y: auto;
    background: var(--ggc-surface);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px 16px;
}

.ggc-form-inner {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
}

.ggc-form-icon { margin-bottom: 4px; }

.ggc-form-title {
    font-size: 14px;
    font-weight: 700;
    color: var(--ggc-text);
    text-align: center;
    margin: 0;
    line-height: 1.6;
}

.ggc-form-row {
    display: flex;
    gap: 10px;
    width: 100%;
}

.ggc-form-group {
    display: flex;
    flex-direction: column;
    gap: 5px;
    flex: 1;
}

.ggc-form-group label {
    font-size: 12px;
    font-weight: 600;
    color: var(--ggc-text);
}

.ggc-form-group .req { color: #ef4444; }

.ggc-form-group input {
    border: 1.5px solid var(--ggc-border);
    border-radius: 10px;
    padding: 9px 12px;
    font-size: 13px;
    font-family: var(--ggc-font);
    outline: none;
    transition: border-color 0.2s, box-shadow 0.2s;
    direction: rtl;
    background: white;
    color: var(--ggc-text);
    width: 100%;
    box-sizing: border-box;
}

.ggc-form-group input:focus {
    border-color: var(--ggc-primary);
    box-shadow: 0 0 0 3px rgba(108,61,197,0.1);
}

.ggc-form-group input.ggc-input-error {
    border-color: #ef4444;
    box-shadow: 0 0 0 3px rgba(239,68,68,0.1);
}

#ggc-form-error {
    color: #dc2626;
    font-size: 12px;
    text-align: center;
    background: #fef2f2;
    border: 1px solid #fca5a5;
    border-radius: 8px;
    padding: 8px 12px;
    width: 100%;
    box-sizing: border-box;
    display: none;
}

#ggc-form-submit {
    width: 100%;
    padding: 12px;
    background: linear-gradient(135deg, var(--ggc-primary) 0%, var(--ggc-primary-dark) 100%);
    color: white;
    border: none;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 700;
    font-family: var(--ggc-font);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    box-shadow: 0 4px 14px rgba(108,61,197,0.35);
    transition: transform 0.15s, box-shadow 0.15s;
}

#ggc-form-submit:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 20px rgba(108,61,197,0.45);
}

#ggc-form-submit:active { transform: scale(0.97); }

#ggc-form-submit:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    transform: none;
}

/* ── Consult Banner ── */
#ggc-consult-banner {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    background: linear-gradient(135deg, var(--ggc-primary) 0%, var(--ggc-primary-dark) 100%);
    text-decoration: none;
    transition: opacity 0.15s;
    flex-shrink: 0;
    border-top: none;
}

#ggc-consult-banner:hover { opacity: 0.92; }

.ggc-banner-icon {
    width: 36px;
    height: 36px;
    background: rgba(255,255,255,0.2);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.ggc-banner-text {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.ggc-banner-title {
    color: white;
    font-size: 13px;
    font-weight: 700;
}

.ggc-banner-desc {
    color: rgba(255,255,255,0.8);
    font-size: 11px;
}

.ggc-banner-arrow {
    flex-shrink: 0;
    opacity: 0.8;
    transform: scaleX(-1);
}

/* ── Voice Bar ── */
#ggc-voice-bar {
    padding: 10px 14px 0;
    background: white;
    flex-shrink: 0;
}

#ggc-voice-btn {
    width: 100%;
    padding: 10px 16px;
    border: 2px dashed var(--ggc-border);
    border-radius: 14px;
    background: var(--ggc-surface);
    color: var(--ggc-text-light);
    font-family: var(--ggc-font);
    font-size: 13px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: all 0.2s ease;
    position: relative;
    overflow: hidden;
}

#ggc-voice-btn:hover {
    border-color: var(--ggc-primary);
    color: var(--ggc-primary);
    background: rgba(108,61,197,0.05);
}

#ggc-voice-btn.ggc-recording {
    border: 2px solid #ef4444;
    background: #fef2f2;
    color: #ef4444;
    animation: ggcPulse 1.5s infinite;
}

#ggc-voice-btn.ggc-not-supported {
    opacity: 0.5;
    cursor: not-allowed;
    border-style: solid;
}

@keyframes ggcPulse {
    0%, 100% { box-shadow: 0 0 0 0 rgba(239,68,68,0.3); }
    50%       { box-shadow: 0 0 0 8px rgba(239,68,68,0); }
}

.ggc-voice-icon {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

#ggc-voice-label { flex: 1; text-align: center; }

/* موج‌های صوتی */
.ggc-voice-waves {
    display: flex;
    align-items: center;
    gap: 3px;
    height: 20px;
}

.ggc-voice-waves span {
    display: inline-block;
    width: 3px;
    background: #ef4444;
    border-radius: 3px;
    animation: ggcWave 0.8s infinite ease-in-out;
}

.ggc-voice-waves span:nth-child(1) { height: 6px;  animation-delay: 0s;    }
.ggc-voice-waves span:nth-child(2) { height: 12px; animation-delay: 0.1s;  }
.ggc-voice-waves span:nth-child(3) { height: 18px; animation-delay: 0.2s;  }
.ggc-voice-waves span:nth-child(4) { height: 12px; animation-delay: 0.3s;  }
.ggc-voice-waves span:nth-child(5) { height: 6px;  animation-delay: 0.4s;  }

@keyframes ggcWave {
    0%, 100% { transform: scaleY(0.5); opacity: 0.6; }
    50%       { transform: scaleY(1);   opacity: 1; }
}

/* دکمه میکروفون کوچک کنار فیلد */
#ggc-mic-btn {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: var(--ggc-surface);
    border: 1.5px solid var(--ggc-border);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: all 0.2s;
    color: var(--ggc-text-light);
    padding: 0;
}

#ggc-mic-btn:hover {
    background: var(--ggc-primary);
    border-color: var(--ggc-primary);
    color: white;
}

#ggc-mic-btn svg { stroke: currentColor; }

#ggc-mic-btn.ggc-recording {
    background: #ef4444;
    border-color: #ef4444;
    color: white;
    animation: ggcPulse 1s infinite;
}

#ggc-mic-btn.ggc-recording svg { stroke: white; }

/* ── Limit Message ── */
.ggc-limit-bubble {
    background: #fefce8 !important;
    border: 1px solid #fde68a !important;
    color: #92400e !important;
}

.ggc-limit-link {
    display: block;
    text-align: center;
    background: var(--ggc-primary);
    color: white !important;
    padding: 8px 14px;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    transition: opacity 0.15s;
}

.ggc-limit-link:hover { opacity: 0.88; }

/* ══════════════════════════════
   Inline Chatbot (Shortcode)
══════════════════════════════ */
.ggc-inline-wrapper {
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
    border-radius: var(--ggc-radius);
    overflow: hidden;
    box-shadow: var(--ggc-shadow);
    border: 1px solid rgba(108,61,197,0.12);
    font-family: var(--ggc-font);
    display: flex;
    flex-direction: column;
}

.ggc-inline-header {
    background: linear-gradient(135deg, var(--ggc-primary) 0%, var(--ggc-primary-dark) 100%);
    color: white;
    padding: 14px 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-shrink: 0;
}

.ggc-inline-clear-btn {
    background: rgba(255,255,255,0.15);
    border: 1px solid rgba(255,255,255,0.25);
    color: white;
    width: 34px; height: 34px;
    border-radius: 10px;
    cursor: pointer;
    display: flex; align-items: center; justify-content: center;
    transition: background 0.15s;
    padding: 0;
}
.ggc-inline-clear-btn:hover { background: rgba(255,255,255,0.28); }

/* فرم inline */
.ggc-inline-lead-form {
    background: #F5F3FF;
    padding: 24px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ggc-inline-form-error {
    color: #dc2626;
    font-size: 12px;
    text-align: center;
    background: #fef2f2;
    border: 1px solid #fca5a5;
    border-radius: 8px;
    padding: 8px 12px;
    width: 100%;
    box-sizing: border-box;
}

/* پیام‌های inline */
.ggc-inline-messages {
    min-height: 300px;
    max-height: 420px;
    overflow-y: auto;
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    background: #F5F3FF;
    scroll-behavior: smooth;
}

.ggc-inline-messages::-webkit-scrollbar { width: 4px; }
.ggc-inline-messages::-webkit-scrollbar-thumb { background: #d1d5db; border-radius: 4px; }

/* بنر inline */
.ggc-inline-consult-banner {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    background: linear-gradient(135deg, var(--ggc-primary) 0%, var(--ggc-primary-dark) 100%);
    text-decoration: none;
    transition: opacity 0.15s;
    flex-shrink: 0;
}
.ggc-inline-consult-banner:hover { opacity: 0.92; }

/* voice bar inline */
.ggc-inline-voice-bar {
    padding: 10px 14px 0;
    background: white;
}

.ggc-inline-voice-btn {
    width: 100%;
    padding: 10px 16px;
    border: 2px dashed var(--ggc-border);
    border-radius: 14px;
    background: #F5F3FF;
    color: var(--ggc-text-light);
    font-family: var(--ggc-font);
    font-size: 13px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: all 0.2s ease;
}
.ggc-inline-voice-btn:hover { border-color: var(--ggc-primary); color: var(--ggc-primary); }
.ggc-inline-voice-btn.ggc-recording { border: 2px solid #ef4444; background: #fef2f2; color: #ef4444; animation: ggcPulse 1.5s infinite; }

.ggc-inline-voice-waves { display: flex; align-items: center; gap: 3px; height: 20px; }
.ggc-inline-voice-waves span { display: inline-block; width: 3px; background: #ef4444; border-radius: 3px; animation: ggcWave 0.8s infinite ease-in-out; }
.ggc-inline-voice-waves span:nth-child(1) { height: 6px; animation-delay: 0s; }
.ggc-inline-voice-waves span:nth-child(2) { height: 12px; animation-delay: 0.1s; }
.ggc-inline-voice-waves span:nth-child(3) { height: 18px; animation-delay: 0.2s; }
.ggc-inline-voice-waves span:nth-child(4) { height: 12px; animation-delay: 0.3s; }
.ggc-inline-voice-waves span:nth-child(5) { height: 6px; animation-delay: 0.4s; }

/* input area inline */
.ggc-inline-input-area {
    display: flex;
    align-items: flex-end;
    gap: 8px;
    padding: 12px 14px;
    border-top: 1px solid var(--ggc-border);
    background: white;
}

.ggc-inline-input {
    flex: 1;
    border: 1.5px solid var(--ggc-border);
    border-radius: 14px;
    padding: 10px 14px;
    font-size: 14px;
    font-family: var(--ggc-font);
    resize: none;
    outline: none;
    line-height: 1.5;
    max-height: 100px;
    overflow-y: auto;
    transition: border-color 0.2s, box-shadow 0.2s;
    direction: rtl;
    color: var(--ggc-text);
    background: #F5F3FF;
}
.ggc-inline-input:focus { border-color: var(--ggc-primary); background: white; box-shadow: 0 0 0 3px rgba(108,61,197,0.12); }

.ggc-inline-send-btn {
    width: 42px; height: 42px;
    border-radius: 14px;
    background: linear-gradient(135deg, var(--ggc-primary) 0%, var(--ggc-primary-dark) 100%);
    border: none; cursor: pointer;
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
    transition: transform 0.1s, box-shadow 0.15s;
    box-shadow: 0 4px 12px rgba(108,61,197,0.38);
    padding: 0;
}
.ggc-inline-send-btn:hover { transform: translateY(-1px); box-shadow: 0 6px 18px rgba(108,61,197,0.48); }
.ggc-inline-send-btn:active { transform: scale(0.92); }
.ggc-inline-send-btn:disabled { opacity: 0.45; cursor: not-allowed; transform: none; }

.ggc-inline-mic-btn {
    width: 38px; height: 38px;
    border-radius: 10px;
    background: #F5F3FF;
    border: 1.5px solid var(--ggc-border);
    cursor: pointer;
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
    transition: all 0.2s;
    padding: 0;
}
.ggc-inline-mic-btn:hover { background: var(--ggc-primary); border-color: var(--ggc-primary); }
.ggc-inline-mic-btn:hover svg { stroke: white; }
.ggc-inline-mic-btn svg { stroke: var(--ggc-text-light); }
.ggc-inline-mic-btn.ggc-recording { background: #ef4444; border-color: #ef4444; animation: ggcPulse 1s infinite; }
.ggc-inline-mic-btn.ggc-recording svg { stroke: white; }
