/**
 * Guidee Button Design System
 * Version: 1.0.11 (2026-07-24 – #fff → var(--color-white))
 * Last modified: 2026-07-24
 *
 * CHANGELOG v1.0.11:
 * - CTA variants: replaced hardcoded #fff with var(--color-white)
 * - Text fills already use charcoal / white tokens
 */
/* Base Button */
.wce-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
    height: 48px;
    padding: 0 32px;
    border-radius: 9999px;
    font-family: var(--font-ui);
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    white-space: nowrap;
    cursor: pointer;
    border: 2px solid transparent;
    box-sizing: border-box;
}
/* Primary Button */
.wce-button--primary {
    background: var(--color-cobalt);
    color: var(--color-white);
    border-color: var(--color-cobalt);
}
.wce-button--primary:hover {
    background: var(--color-white);
    color: var(--color-cobalt);
    border-color: var(--color-cobalt);
}
/* Secondary Button */
.wce-button--secondary {
    background: transparent;
    color: var(--color-charcoal);
    border-color: var(--color-charcoal);
}
.wce-button--secondary:hover {
    background: var(--color-cobalt);
    color: var(--color-white);
    border-color: var(--color-cobalt);
}
/* Tertiary Button */
.wce-button--tertiary {
    background: var(--color-charcoal);
    color: var(--color-white);
    border-color: var(--color-charcoal);
}
.wce-button--tertiary:hover {
    background: var(--color-white);
    color: var(--color-charcoal);
    border-color: var(--color-charcoal);
}
/* Ghost Button */
.wce-button--ghost {
    background: transparent;
    color: var(--color-charcoal);
    border-color: transparent;
}
.wce-button--ghost:hover {
    background: var(--color-bg-subtle);
    color: var(--color-charcoal);
    border-color: transparent;
}
/*=== WIDGET CREATOR BUTTON STYLE VARIANTS (Phase 6/5/3) ===*/
.wce-button--cta.wce-button--primary {
    background: var(--color-cobalt);
    color: var(--color-white);
    border-color: var(--color-cobalt);
    font-weight: 700;
}
.wce-button--cta.wce-button--primary:hover {
    background: var(--color-white);
    color: var(--color-cobalt);
    border-color: var(--color-cobalt);
}
.wce-button--cta.wce-button--secondary {
    background: transparent;
    color: var(--color-charcoal);
    border-color: var(--color-charcoal);
    font-weight: 700;
}
.wce-button--cta.wce-button--secondary:hover {
    background: var(--color-cobalt);
    color: var(--color-white);
    border-color: var(--color-cobalt);
}
/*=== FINAL CTA BUTTON – CONTENT WIDTH + PROPER PADDING ===*/
.wce-universal-layout .wce-buttons-group .wce-button.wce-button--cta,
.wce-universal-layout .wce-buttons-group .wce-button--primary.wce-button--cta {
    width: auto !important;
    min-width: 200px !important;
    padding: 0 40px !important;
    height: 48px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
}
/* Extra override for the group itself */
.wce-universal-layout .wce-buttons-group {
    align-items: flex-start !important;
}
/*=== OTHER VARIANTS ===*/
.wce-button--wide {
    width: auto;
    min-width: 180px;
    padding: 0 40px;
}
.wce-button--full {
    width: 100%;
}
.wce-button--compact {
    padding: 0 20px;
    height: 40px;
    font-size: 14px;
}
.wce-button--large {
    padding: 0 48px;
    height: 56px;
    font-size: 17px;
}
/* Buttons Group */
.wce-buttons-group {
    display: flex;
    flex-direction: column;
    gap: 14px;
    width: 100%;
    margin-top: 1.25rem;
}
.wce-buttons-group .wce-button {
    width: 100%;
    justify-content: center;
}
@media (min-width: 768px) {
    .wce-buttons-group.horizontal {
        flex-direction: row;
        flex-wrap: wrap;
    }
    .wce-buttons-group.horizontal .wce-button {
        width: auto;
        flex: 1 1 auto;
        min-width: 180px;
    }
}