.gwwp-component {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    position: relative;
    z-index: auto;
    isolation: isolate;
}

.gwwp-component,
.gwwp-component * {
    box-sizing: border-box;
}


.gwwp-component .gwwp-whatsapp-button {
    --gwwp-bg: #25D366;
    --gwwp-text: #FFFFFF;
    --gwwp-hover-bg: #1EBE5D;
    --gwwp-hover-text: #FFFFFF;
    --gwwp-border: #25D366;
    --gwwp-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border: 2px solid var(--gwwp-border);
    border-radius: var(--gwwp-radius);
    text-decoration: none !important;
    font-weight: 700;
    line-height: 1.2;
    transition: background-color .2s ease, color .2s ease, box-shadow .2s ease, border-color .2s ease;
    cursor: pointer;
    box-sizing: border-box;
}

.gwwp-component .gwwp-whatsapp-button:hover,
.gwwp-component .gwwp-whatsapp-button:focus {
    background: var(--gwwp-hover-bg);
    color: var(--gwwp-hover-text) !important;
    border-color: var(--gwwp-hover-bg);
}

.gwwp-component .gwwp-style-solid {
    background: var(--gwwp-bg);
    color: var(--gwwp-text) !important;
}

.gwwp-component .gwwp-style-outline {
    background: transparent;
    color: var(--gwwp-bg) !important;
    border-color: var(--gwwp-border);
}

.gwwp-component .gwwp-style-gradient {
    background: linear-gradient(135deg, var(--gwwp-bg), var(--gwwp-hover-bg));
    color: var(--gwwp-text) !important;
    border-color: transparent;
}

.gwwp-component .gwwp-style-minimal {
    background: transparent;
    color: var(--gwwp-bg) !important;
    border-color: transparent;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.gwwp-component .gwwp-style-pill {
    background: var(--gwwp-bg);
    color: var(--gwwp-text) !important;
    border-radius: 999px !important;
}

.gwwp-component .gwwp-size-small { min-height: 40px; padding: 9px 16px; font-size: 14px; }
.gwwp-component .gwwp-size-medium { min-height: 52px; padding: 14px 22px; font-size: 16px; }
.gwwp-component .gwwp-size-large { min-height: 60px; padding: 17px 28px; font-size: 18px; }

.gwwp-component .gwwp-width-auto { width: auto; }
.gwwp-component .gwwp-width-full { width: 100%; max-width: 460px; }

.gwwp-component .gwwp-shadow-none { box-shadow: none; }
.gwwp-component .gwwp-shadow-soft { box-shadow: 0 8px 20px rgba(0,0,0,.12); }
.gwwp-component .gwwp-shadow-strong { box-shadow: 0 12px 28px rgba(0,0,0,.22); }

.gwwp-component .gwwp-icon-right { flex-direction: row-reverse; }
.gwwp-component .gwwp-icon-top { flex-direction: column; gap: 6px; }

.gwwp-component .gwwp-icon-wrap {
    display: inline-flex;
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
}

.gwwp-component .gwwp-icon-wrap svg {
    width: 100%;
    height: 100%;
    fill: currentColor;
}

.gwwp-component .gwwp-admin-warning {
    padding: 12px 14px;
    border-left: 4px solid #d63638;
    background: #fff4f4;
    color: #8a2424;
}

@media (max-width: 767px) {
    .gwwp-component .gwwp-width-full {
        max-width: none;
    }
}
