.gq-wrapper {
    --gq-primary: #39b875 !important; 
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
    color: #333 !important;
}
.gq-mode-widget { position: fixed !important; z-index: 999999 !important; }
.gq-pos-bottom-right { bottom: 24px !important; right: 24px !important; }
.gq-pos-bottom-left { bottom: 24px !important; left: 24px !important; }

.gq-widget-toggle {
    width: 60px !important; height: 60px !important; border-radius: 50% !important;
    background: var(--gq-primary) !important; color: #fff !important;
    border: none !important; box-shadow: 0 4px 12px rgba(0,0,0,0.25) !important;
    cursor: pointer !important; display: flex !important; align-items: center !important; justify-content: center !important;
    transition: transform 0.2s !important; position: absolute !important; bottom: 0 !important;
}
.gq-pos-bottom-right .gq-widget-toggle { right: 0 !important; }
.gq-pos-bottom-left .gq-widget-toggle { left: 0 !important; }
.gq-widget-toggle:hover { transform: scale(1.05) !important; }
.gq-widget-toggle svg { width: 28px !important; height: 28px !important; stroke: currentColor !important; }

.gq-widget-panel {
    position: absolute !important; bottom: 80px !important; width: 450px !important; max-width: calc(100vw - 48px) !important;
    opacity: 0 !important; visibility: hidden !important; transform: translateY(20px) !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    box-shadow: 0 10px 40px rgba(0,0,0,0.15) !important; border-radius: 16px !important; background: #fff !important;
}
.gq-pos-bottom-right .gq-widget-panel { right: 0 !important; transform-origin: bottom right !important; }
.gq-pos-bottom-left .gq-widget-panel { left: 0 !important; transform-origin: bottom left !important; }
.gq-mode-widget.gq-widget-open .gq-widget-panel { opacity: 1 !important; visibility: visible !important; transform: translateY(0) !important; }
.gq-mode-widget.gq-widget-open .gq-icon-open { display: none !important; }
.gq-mode-widget.gq-widget-open .gq-icon-close { display: block !important; }

.gq-mode-inline .gq-form-container { max-width: 600px !important; margin: 0 auto !important; background: #ffffff !important; border-radius: 12px !important; box-shadow: 0 4px 20px rgba(0,0,0,0.08) !important; }
.gq-form-container { padding: 30px !important; box-sizing: border-box !important; }
.gq-progress { height: 8px !important; background: #e2e8f0 !important; border-radius: 4px !important; margin-bottom: 24px !important; overflow: hidden !important; }
.gq-progress-bar { height: 100% !important; background: var(--gq-primary) !important; transition: width 0.3s ease !important; }
.gq-step-container { display: none !important; animation: gqFadeIn 0.3s ease !important; }
.gq-step-container.active { display: block !important; }
@keyframes gqFadeIn { from { opacity: 0 !important; transform: translateY(10px) !important; } to { opacity: 1 !important; transform: translateY(0) !important; } }

.gq-step-container h3 { margin-top: 0 !important; margin-bottom: 20px !important; font-size: 20px !important; color: #1a202c !important; font-weight: 600 !important; }
.gq-input { width: 100% !important; padding: 12px !important; border: 1px solid #cbd5e1 !important; border-radius: 6px !important; font-size: 16px !important; margin-bottom: 16px !important; box-sizing: border-box !important; outline: none !important; background: #fff !important; transition: border-color 0.2s !important; }
.gq-input:focus { border-color: var(--gq-primary) !important; outline: 1px solid var(--gq-primary) !important; }
.gq-row { display: flex !important; gap: 16px !important; margin-bottom: 16px !important; }
.gq-col { flex: 1 !important; }
.gq-col label { display: block !important; margin-bottom: 6px !important; font-weight: 500 !important; font-size: 14px !important; }
.gq-btn-group { display: flex !important; justify-content: space-between !important; margin-top: 16px !important; gap: 12px !important; }
.gq-btn { padding: 12px 24px !important; background: var(--gq-primary) !important; color: white !important; border: none !important; border-radius: 6px !important; font-size: 16px !important; font-weight: 600 !important; cursor: pointer !important; transition: filter 0.2s !important; text-align: center !important; }
.gq-btn:hover { filter: brightness(0.9) !important; }
.gq-btn-outline { background: transparent !important; color: #475569 !important; border: 1px solid #cbd5e1 !important; }
.gq-btn-outline:hover { background: #f1f5f9 !important; filter: none !important; }
.gq-btn:disabled { opacity: 0.7 !important; cursor: not-allowed !important; }
.gq-result-box { background: #f8fafc !important; border: 2px dashed #cbd5e1 !important; padding: 20px !important; text-align: center !important; border-radius: 8px !important; }
.gq-result-box h4 { margin: 0 !important; font-size: 28px !important; color: #0f172a !important; }
.gq-result-box small { color: #64748b !important; font-size: 14px !important; }

/* Success Checkmark Animation */
.gq-success-checkmark { width: 80px !important; height: 80px !important; border-radius: 50% !important; display: block !important; stroke-width: 2 !important; stroke: #4bb71b !important; stroke-miterlimit: 10 !important; margin: 10% auto !important; box-shadow: inset 0px 0px 0px #4bb71b !important; animation: gq-fill .4s ease-in-out .4s forwards, gq-scale .3s ease-in-out .9s both !important; }
.gq-checkmark-circle { stroke-dasharray: 166 !important; stroke-dashoffset: 166 !important; stroke-width: 2 !important; stroke-miterlimit: 10 !important; stroke: #4bb71b !important; fill: none !important; animation: gq-stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards !important; }
.gq-checkmark-check { transform-origin: 50% 50% !important; stroke-dasharray: 48 !important; stroke-dashoffset: 48 !important; animation: gq-stroke 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.8s forwards !important; }
@keyframes gq-stroke { 100% { stroke-dashoffset: 0 !important; } }
@keyframes gq-scale { 0%, 100% { transform: none !important; } 50% { transform: scale3d(1.1, 1.1, 1) !important; } }
@keyframes gq-fill { 100% { box-shadow: inset 0px 0px 0px 40px #4bb71b !important; } }