﻿/* Base button */
.rz-button:not(.rz-button-icon-only):not(.rz-numeric-button) {
    border-radius: 999px !important;
    min-height: 44px;
    padding: 0 22px !important;
    font-size: 16px;
    font-weight: 600;
    border: none !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .22), 0 2px 5px rgba(0, 0, 0, .12);
    transition: background-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.rz-button:hover:not(.rz-button-icon-only) {
    box-shadow: 0 2px 4px rgba(0, 0, 0, .22), 0 3px 8px rgba(0, 0, 0, .14);
}

.rz-button:active:not(.rz-button-icon-only) {
    transform: translateY(1px);
}

/* PRIMARY */
.rz-button.rz-primary:not(.rz-button-icon-only) {
    background-color: #1a73e8 !important;
    color: white !important;
}

.rz-button.rz-primary:hover:not(.rz-button-icon-only) {
    background-color: #1765cc !important;
}

/* SECONDARY */
.rz-button.rz-secondary:not(.rz-button-icon-only) {
    background-color: #687483 !important;
    color: white !important;
}

.rz-button.rz-secondary:hover:not(.rz-button-icon-only) {
    background-color: #596472 !important;
}

/* INFO */
.rz-button.rz-info:not(.rz-button-icon-only) {
    background-color: #006c91 !important;
    color: white !important;
}

.rz-button.rz-info:hover:not(.rz-button-icon-only) {
    background-color: #005b7b !important;
}

/* SUCCESS */
.rz-button.rz-success:not(.rz-button-icon-only) {
    background-color: #2f781f !important;
    color: white !important;
}

.rz-button.rz-success:hover:not(.rz-button-icon-only) {
    background-color: #286819 !important;
}

/* WARNING */
.rz-button.rz-warning:not(.rz-button-icon-only) {
    background-color: #f4ee62 !important;
    color: #1c1b1f !important;
}

.rz-button.rz-warning:hover:not(.rz-button-icon-only) {
    background-color: #e8e151 !important;
}

/* DANGER */
.rz-button.rz-danger:not(.rz-button-icon-only) {
    background-color: #c9251b !important;
    color: white !important;
}

.rz-button.rz-danger:hover:not(.rz-button-icon-only) {
    background-color: #ad1e16 !important;
}

.rz-button:focus-visible:not(.rz-button-icon-only) {
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(26, 115, 232, .22), 0 2px 5px rgba(0, 0, 0, .12) !important;
}

.rz-button.rz-variant-text:not(.rz-button-icon-only) {
    background-color: transparent !important;
    box-shadow: none !important;
}

/* Text Primary */
.rz-button.rz-variant-text.rz-primary:not(.rz-button-icon-only) {
    color: #1a73e8 !important;
}

.rz-button.rz-variant-text.rz-primary:hover:not(.rz-button-icon-only) {
    background-color: #d9e7fb !important;
}

/* Text Secondary */
.rz-button.rz-variant-text.rz-secondary:not(.rz-button-icon-only) {
    color: #3f4752 !important;
}

.rz-button.rz-variant-text.rz-secondary:hover:not(.rz-button-icon-only) {
    background-color: #dbe5f4 !important;
}

/* Text Danger */
.rz-button.rz-variant-text.rz-danger:not(.rz-button-icon-only) {
    color: #b3261e !important;
}

.rz-button.rz-variant-text.rz-danger:hover:not(.rz-button-icon-only) {
    background-color: #f9dedc !important;
}

.rz-button.rz-variant-outlined:not(.rz-button-icon-only) {
    background-color: transparent !important;
    border-radius: 999px !important;
    box-shadow: none !important;
}

/* PRIMARY */
.rz-button.rz-variant-outlined.rz-primary:not(.rz-button-icon-only) {
    color: #1976d2 !important;
    border: 1.5px solid #1976d2 !important;
}

.rz-button.rz-variant-outlined.rz-primary:hover:not(.rz-button-icon-only) {
    background-color: #dbeafe !important;
}

/* SECONDARY */
.rz-button.rz-variant-outlined.rz-secondary:not(.rz-button-icon-only) {
    color: #5f6670 !important;
    border: 1.5px solid #5f6670 !important;
}

.rz-button.rz-variant-outlined.rz-secondary:hover:not(.rz-button-icon-only) {
    background-color: #e7ebef !important;
}

/* INFO */
.rz-button.rz-variant-outlined.rz-info:not(.rz-button-icon-only) {
    color: #006c91 !important;
    border: 1.5px solid #006c91 !important;
}

.rz-button.rz-variant-outlined.rz-info:hover:not(.rz-button-icon-only) {
    background-color: #d7f0fa !important;
}

/* SUCCESS */
.rz-button.rz-variant-outlined.rz-success:not(.rz-button-icon-only) {
    color: #2e7d32 !important;
    border: 1.5px solid #2e7d32 !important;
}

.rz-button.rz-variant-outlined.rz-success:hover:not(.rz-button-icon-only) {
    background-color: #d9f7cf !important;
}

/* WARNING */
.rz-button.rz-variant-outlined.rz-warning:not(.rz-button-icon-only) {
    color: #c2b900 !important;
    border: 1.5px solid #d8cf00 !important;
}

.rz-button.rz-variant-outlined.rz-warning:hover:not(.rz-button-icon-only) {
    background-color: #fffbd1 !important;
}

/* DANGER */
.rz-button.rz-variant-outlined.rz-danger:not(.rz-button-icon-only) {
    color: #c62828 !important;
    border: 1.5px solid #c62828 !important;
}

.rz-button.rz-variant-outlined.rz-danger:hover:not(.rz-button-icon-only) {
    background-color: #fde0df !important;
}
/* FLAT - base comune */
.rz-button.rz-variant-flat:not(.rz-button-icon-only) {
    border: none !important;
    border-radius: 999px !important;
    box-shadow: none !important;
    min-height: 44px;
    padding: 0 22px !important;
    font-weight: 600;
}

/* PRIMARY */
.rz-button.rz-variant-flat.rz-primary:not(.rz-button-icon-only) {
    background-color: #dbeafe !important;
    color: #0b57d0 !important;
}

.rz-button.rz-variant-flat.rz-primary:hover:not(.rz-button-icon-only) {
    background-color: #c7dbfb !important;
}

/* SECONDARY */
.rz-button.rz-variant-flat.rz-secondary:not(.rz-button-icon-only) {
    background-color: #d9e4f5 !important;
    color: #4b5563 !important;
}

.rz-button.rz-variant-flat.rz-secondary:hover:not(.rz-button-icon-only) {
    background-color: #c8d4e4 !important;
}

/* BASE */
.rz-button.rz-variant-flat.rz-base:not(.rz-button-icon-only) {
    background-color: #f1f3f4 !important;
    color: #202124 !important;
}

.rz-button.rz-variant-flat.rz-base:hover:not(.rz-button-icon-only) {
    background-color: #e7e9eb !important;
}

/* INFO */
.rz-button.rz-variant-flat.rz-info:not(.rz-button-icon-only) {
    background-color: #d9eefb !important;
    color: #005b7b !important;
}

.rz-button.rz-variant-flat.rz-info:hover:not(.rz-button-icon-only) {
    background-color: #c6e6f8 !important;
}

/* SUCCESS */
.rz-button.rz-variant-flat.rz-success:not(.rz-button-icon-only) {
    background-color: #d8f0c9 !important;
    color: #2f5f17 !important;
}

.rz-button.rz-variant-flat.rz-success:hover:not(.rz-button-icon-only) {
    background-color: #c4e8b3 !important;
}

/* WARNING */
.rz-button.rz-variant-flat.rz-warning:not(.rz-button-icon-only) {
    background-color: #f6f3c3 !important;
    color: #6f6500 !important;
}

.rz-button.rz-variant-flat.rz-warning:hover:not(.rz-button-icon-only) {
    background-color: #efe9a6 !important;
}

/* DANGER */
.rz-button.rz-variant-flat.rz-danger:not(.rz-button-icon-only) {
    background-color: #f7d9d2 !important;
    color: #97231c !important;
}

.rz-button.rz-variant-flat.rz-danger:hover:not(.rz-button-icon-only) {
    background-color: #f2c8c0 !important;
}
/* ExtraSmall */
.rz-button.rz-button-xs:not(.rz-button-icon-only) {
    min-height: 28px !important;
    height: 28px !important;
    padding: 0 10px !important;
    font-size: 0.75rem !important;
    border-radius: 999px !important;
}

/* Small */
.rz-button.rz-button-sm:not(.rz-button-icon-only) {
    min-height: 34px !important;
    height: 34px !important;
    padding: 0 14px !important;
    font-size: 0.875rem !important;
    border-radius: 999px !important;
}

/* Medium */
.rz-button.rz-button-md:not(.rz-button-icon-only) {
    min-height: 42px !important;
    height: 42px !important;
    padding: 0 20px !important;
    font-size: 1rem !important;
    border-radius: 999px !important;
}

/* Large */
.rz-button.rz-button-lg:not(.rz-button-icon-only) {
    min-height: 50px !important;
    height: 50px !important;
    padding: 0 26px !important;
    font-size: 1.05rem !important;
    border-radius: 999px !important;
}
/* Icon only - ExtraSmall */
.rz-button.rz-button-xs.rz-button-icon-only {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    padding: 0 !important;
    border-radius: 999px !important;
}

/* Icon only - Small */
.rz-button.rz-button-sm.rz-button-icon-only {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
    padding: 0 !important;
    border-radius: 999px !important;
}

/* Icon only - Medium */
.rz-button.rz-button-md.rz-button-icon-only {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
    border-radius: 999px !important;
}

/* Icon only - Large */
.rz-button.rz-button-lg.rz-button-icon-only {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    padding: 0 !important;
    border-radius: 999px !important;
}

/* BASE OUTLINE ALT */
.rz-button.rz-variant-outlined.outline-alt {
    background-color: transparent !important;
    box-shadow: none !important;
    transition: background-color .15s ease, color .15s ease, border-color .15s ease;
}

    /* PRIMARY */
    .rz-button.rz-variant-outlined.outline-alt.rz-primary {
        color: #1976d2 !important;
        border-color: #1976d2 !important;
    }

        .rz-button.rz-variant-outlined.outline-alt.rz-primary:hover {
            background-color: #125aa3 !important;
            border-color: #125aa3 !important;
            color: #fff !important;
        }

    /* SECONDARY */
    .rz-button.rz-variant-outlined.outline-alt.rz-secondary {
        color: #687483 !important;
        border-color: #687483 !important;
    }

        .rz-button.rz-variant-outlined.outline-alt.rz-secondary:hover {
            background-color: #4f5965 !important;
            border-color: #4f5965 !important;
            color: #fff !important;
        }

    /* BASE */
    .rz-button.rz-variant-outlined.outline-alt.rz-base {
        color: #4b4f54 !important;
        border-color: #4b4f54 !important;
    }

        .rz-button.rz-variant-outlined.outline-alt.rz-base:hover {
            background-color: #34373b !important;
            border-color: #34373b !important;
            color: #fff !important;
        }

    /* INFO */
    .rz-button.rz-variant-outlined.outline-alt.rz-info {
        color: #006c91 !important;
        border-color: #006c91 !important;
    }

        .rz-button.rz-variant-outlined.outline-alt.rz-info:hover {
            background-color: #00506b !important;
            border-color: #00506b !important;
            color: #fff !important;
        }

    /* SUCCESS */
    .rz-button.rz-variant-outlined.outline-alt.rz-success {
        color: #2f781f !important;
        border-color: #2f781f !important;
    }

        .rz-button.rz-variant-outlined.outline-alt.rz-success:hover {
            background-color: #245c18 !important;
            border-color: #245c18 !important;
            color: #fff !important;
        }

    /* WARNING */
    .rz-button.rz-variant-outlined.outline-alt.rz-warning {
        color: #9a8f00 !important;
        border-color: #9a8f00 !important;
    }

        .rz-button.rz-variant-outlined.outline-alt.rz-warning:hover {
            background-color: #756d00 !important;
            border-color: #756d00 !important;
            color: #fff !important;
        }

    /* DANGER */
    .rz-button.rz-variant-outlined.outline-alt.rz-danger {
        color: #c62828 !important;
        border-color: #c62828 !important;
    }

        .rz-button.rz-variant-outlined.outline-alt.rz-danger:hover {
            background-color: #951d1d !important;
            border-color: #951d1d !important;
            color: #fff !important;
        }

.text-underline .rz-button-text {
    text-decoration: underline;
}