/**
 * Button Block Styles
 *
 * Värit käyttävät theme.json:n CSS-muuttujia:
 * --wp--preset--color--primary      (#CEDC00 lime)
 * --wp--preset--color--primary-dark  (#B5C102)
 * --wp--preset--color--dark-blue     (#001020)
 * --wp--preset--color--white         (#FFFFFF)
 * --wp--preset--color--secondary     (#001020)
 */


/* =============================================
   BASE STYLES (all buttons)
   ============================================= */

/* Reset WP core button defaults */
.wp-block-button .wp-element-button,
.wp-block-button .wp-block-button__link {
    background-color: transparent;
    border-width: 2px;
    color: inherit;
    padding: 15px 20px;
}

.wp-block-button .wp-block-button__link,
.editor-styles-wrapper .wp-block-button .wp-block-button__link,
.gb-button,
.btn,
.btn.btn-primary,
.nf-form-cont .nf-form-content button,
.nf-form-cont .nf-form-content input[type=button],
.nf-form-cont .nf-form-content input[type=submit] {
    font-size: 16px;
    padding: 15px 20px;
    font-weight: 600;
    border: 2px solid transparent;
    border-radius: 5px;
    text-decoration: none !important;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    line-height: 1.3;
}


/* =============================================
   ARROW (::after pseudo-element)
   Uses mask-image so arrow inherits currentColor
   ============================================= */

.wp-block-button .wp-block-button__link::after,
.editor-styles-wrapper .wp-block-button .wp-block-button__link::after {
    content: "";
    display: inline-block;
    width: 12px;
    height: 11px;
    flex-shrink: 0;
    background-color: currentColor;
    -webkit-mask-image: url('../../../images/arrow-new-right-black.svg');
    mask-image: url('../../../images/arrow-new-right-black.svg');
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: background-color 0.2s ease;
}

/* No arrow style */
.wp-block-button.is-style-no-arrow .wp-block-button__link::after,
.editor-styles-wrapper .wp-block-button.is-style-no-arrow .wp-block-button__link::after {
    display: none;
}


/* =============================================
   DEFAULT (ei täyttöä)
   ============================================= */

.wp-block-button:not([class*="is-style-"]) .wp-block-button__link,
.editor-styles-wrapper .wp-block-button:not([class*="is-style-"]) .wp-block-button__link {
    background-color: transparent !important;
    color: var(--wp--preset--color--dark-blue) !important;
    border: 2px solid var(--wp--preset--color--dark-blue);
}

.wp-block-button:not([class*="is-style-"]) .wp-block-button__link:hover,
.wp-block-button:not([class*="is-style-"]) .wp-block-button__link:focus {
    background-color: var(--wp--preset--color--dark-blue) !important;
    color: var(--wp--preset--color--white) !important;
}


/* =============================================
   FILL (tumma nappi)
   Tumma bg, valkoinen teksti
   ============================================= */

.wp-block-button.is-style-fill .wp-block-button__link,
.editor-styles-wrapper .wp-block-button.is-style-fill .wp-block-button__link {
    background-color: var(--wp--preset--color--dark-blue) !important;
    color: var(--wp--preset--color--white) !important;
    border-color: var(--wp--preset--color--dark-blue);
}

.wp-block-button.is-style-fill .wp-block-button__link:hover,
.wp-block-button.is-style-fill .wp-block-button__link:focus {
    background-color: var(--wp--preset--color--primary) !important;
    color: var(--wp--preset--color--dark-blue) !important;
    border-color: var(--wp--preset--color--primary);
}


/* =============================================
   OUTLINE (tumma reunaviiva)
   Tumma border, läpinäkyvä bg, tumma teksti
   ============================================= */

.wp-block-button.is-style-outline .wp-block-button__link,
.editor-styles-wrapper .wp-block-button.is-style-outline .wp-block-button__link {
    background-color: transparent !important;
    color: var(--wp--preset--color--dark-blue) !important;
    border: 2px solid var(--wp--preset--color--dark-blue);
}

.wp-block-button.is-style-outline .wp-block-button__link:hover,
.wp-block-button.is-style-outline .wp-block-button__link:focus {
    background-color: var(--wp--preset--color--dark-blue) !important;
    color: var(--wp--preset--color--white) !important;
}


/* =============================================
   OUTLINE LIGHT (vaalea reunaviiva, ei täyttöä)
   Läpinäkyvä tausta, #D9D9D9 border, ei radiusta
   Käytetään filttereinä ja tageina
   ============================================= */
.wp-block-button.is-style-outline-light .wp-block-button__link,
.editor-styles-wrapper .wp-block-button.is-style-outline-light .wp-block-button__link {
    background-color: transparent !important;
    color: var(--wp--preset--color--dark-blue) !important;
    border: 1px solid #D9D9D9;
    border-radius: 0 !important;
}

.wp-block-button.is-style-outline-light .wp-block-button__link:hover,
.wp-block-button.is-style-outline-light .wp-block-button__link:focus {
    background-color: var(--wp--preset--color--dark-blue) !important;
    color: var(--wp--preset--color--white) !important;
    border-color: var(--wp--preset--color--dark-blue);
}


/* =============================================
   OUTLINE WHITE (valkoinen reunaviiva)
   Valkoinen border + teksti, läpinäkyvä bg
   Käytetään tummien kuvien/taustojen päällä
   ============================================= */

.wp-block-button.is-style-outline-white .wp-block-button__link,
.editor-styles-wrapper .wp-block-button.is-style-outline-white .wp-block-button__link {
    background-color: transparent !important;
    color: var(--wp--preset--color--white) !important;
    border: 2px solid var(--wp--preset--color--white);
}

.wp-block-button.is-style-outline-white .wp-block-button__link:hover,
.wp-block-button.is-style-outline-white .wp-block-button__link:focus {
    background-color: var(--wp--preset--color--white) !important;
    color: var(--wp--preset--color--dark-blue) !important;
}


/* =============================================
   FILL PRIMARY (lime täytetty)
   Primary/lime bg, tumma teksti
   ============================================= */

.wp-block-button.is-style-fill-primary .wp-block-button__link,
.editor-styles-wrapper .wp-block-button.is-style-fill-primary .wp-block-button__link {
    background-color: var(--wp--preset--color--primary) !important;
    color: var(--wp--preset--color--dark-blue) !important;
    border-color: var(--wp--preset--color--primary);
}

.wp-block-button.is-style-fill-primary .wp-block-button__link:hover,
.wp-block-button.is-style-fill-primary .wp-block-button__link:focus {
    background-color: var(--wp--preset--color--primary-dark) !important;
    border-color: var(--wp--preset--color--primary-dark);
}

/* FILL SECONDARY (tumma sininen) */
.wp-block-button.is-style-fill-secondary .wp-block-button__link,
.editor-styles-wrapper .wp-block-button.is-style-fill-secondary .wp-block-button__link {
    background-color: var(--wp--preset--color--secondary) !important;
    color: #fff !important;
    border-color: var(--wp--preset--color--secondary);
}

.wp-block-button.is-style-fill-secondary .wp-block-button__link:hover,
.wp-block-button.is-style-fill-secondary .wp-block-button__link:focus {
    background-color: #001a33 !important;
    border-color: #001a33;
}


/* =============================================
   CTA PRIMARY (lime reunaviiva)
   Primary border, läpinäkyvä bg, valkoinen teksti
   Käytetään tummalla taustalla (esim. navbar)
   ============================================= */

.wp-block-button.is-style-cta-primary .wp-block-button__link,
.editor-styles-wrapper .wp-block-button.is-style-cta-primary .wp-block-button__link {
    background-color: transparent !important;
    color: var(--wp--preset--color--white) !important;
    border: 2px solid var(--wp--preset--color--primary);
}

.wp-block-button.is-style-cta-primary .wp-block-button__link:hover,
.wp-block-button.is-style-cta-primary .wp-block-button__link:focus {
    background-color: var(--wp--preset--color--primary) !important;
    color: var(--wp--preset--color--dark-blue) !important;
}


/* =============================================
   LEGACY: BLACK (yhteensopivuus)
   ============================================= */

.wp-block-button.is-style-black .wp-block-button__link {
    background-color: var(--wp--preset--color--dark-blue) !important;
    color: var(--wp--preset--color--white) !important;
    border-color: var(--wp--preset--color--dark-blue);
}

.wp-block-button.is-style-black .wp-block-button__link:hover,
.wp-block-button.is-style-black .wp-block-button__link:focus {
    background-color: var(--wp--preset--color--primary) !important;
    color: var(--wp--preset--color--dark-blue) !important;
    border-color: var(--wp--preset--color--primary);
}


/* =============================================
   BUTTON GROUP (wp:buttons)
   ============================================= */

.wp-block-buttons.is-layout-flex {
    gap: 1rem;
}


/* =============================================
   FORM BUTTONS (Ninja Forms etc.)
   ============================================= */

.nf-form-cont .nf-form-content button,
.nf-form-cont .nf-form-content input[type=button],
.nf-form-cont .nf-form-content input[type=submit] {
    background-color: var(--wp--preset--color--dark-blue) !important;
    color: var(--wp--preset--color--white);
    border-color: var(--wp--preset--color--dark-blue);
}

.nf-form-cont .nf-form-content button:hover,
.nf-form-cont .nf-form-content input[type=button]:hover,
.nf-form-cont .nf-form-content input[type=submit]:hover {
    background-color: var(--wp--preset--color--primary) !important;
    color: var(--wp--preset--color--dark-blue);
    border-color: var(--wp--preset--color--primary);
}

/* Button inline icon */
.dg-btn-icon {
    width: 16px;
    height: 16px;
    margin-left: 5px;
    vertical-align: middle;
}

.has-secondary-background-color .nf-form-cont .nf-form-content input[type=submit] {
    border-color: var(--wp--preset--color--white);
}
.has-secondary-background-color .nf-form-cont .nf-form-content input[type=submit]:hover {
    border-color: var(--wp--preset--color--primary);
}


/* =============================================
   DISABLED BUTTONS
   ============================================= */

button:disabled,
button[disabled] {
    opacity: .5 !important;
    cursor: not-allowed !important;
    pointer-events: none;
}