.gpss-social-share-buttons {
    margin-top: 20px;
    padding: 15px;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

/* Base style for all buttons */
.gpss-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 15px; /* Default padding for square buttons */
    color: #ffffff;
    text-decoration: none;
    border-radius: 5px; /* Default for square/rounded corners */
    font-weight: bold;
    transition: background-color 0.3s ease, border-radius 0.3s ease, width 0.3s ease, height 0.3s ease, padding 0.3s ease;
    box-sizing: border-box; /* Include padding and border in the element's total width and height */
}

/* Icon + Text (Square/Rectangular) Style */
.gpss-icon-text-square {
    min-width: 150px; /* Ensure buttons have a minimum width */
    padding: 10px 15px; /* Standard padding */
    border-radius: 5px; /* Slightly rounded corners */
}

.gpss-icon-text-square span {
    display: inline-block; /* Ensure text is visible */
    margin-left: 8px; /* Space between icon and text */
}

/* Only Icon (Circle) Style */
.gpss-icon-only-circle {
    width: 45px; /* Fixed width for circle */
    height: 45px; /* Fixed height for circle */
    padding: 0; /* No padding, rely on width/height */
    border-radius: 50%; /* Makes it a circle */
    min-width: unset; /* Remove min-width inherited from .gpss-button */
}

.gpss-icon-only-circle i {
    margin-right: 0; /* No margin for icon in circle style */
}

.gpss-icon-only-circle span {
    display: none; /* Hide the text for icon-only style */
}

/* Icon Sizing based on admin option */
.gpss-icon-size-small i {
    font-size: 16px;
}
.gpss-icon-size-medium i {
    font-size: 20px; /* Default size */
}
.gpss-icon-size-large i {
    font-size: 24px;
}

/* Adjust size for icon-only buttons to fit the icon */
.gpss-icon-only-circle.gpss-icon-size-small {
    width: 38px; /* 16px icon + padding */
    height: 38px;
}
.gpss-icon-only-circle.gpss-icon-size-medium {
    width: 45px; /* 20px icon + padding */
    height: 45px;
}
.gpss-icon-only-circle.gpss-icon-size-large {
    width: 52px; /* 24px icon + padding */
    height: 52px;
}


/* Default colors (overridden by custom settings) */
.gpss-facebook { background-color: #3b5998; }
.gpss-twitter { background-color: #1da1f2; }
.gpss-linkedin { background-color: #0077b5; }
.gpss-pinterest { background-color: #bd081c; }
.gpss-whatsapp { background-color: #25D366; } /* New WhatsApp color */

/* Hover effects */
.gpss-button:hover {
    filter: brightness(110%); /* Slightly brighten on hover */
    color: #fff; /* Ensure text color stays white */
}