/**
 * Heading Separator Widget Styles
 */

/* Base Divider class */
.wml-heading-separator {
    display: flex !important;
    align-items: center !important;
    margin: 1em 0 !important;
}

.wml-heading-separator:before,
.wml-heading-separator:after {
    content: "" !important;
    flex: 1 1 auto !important;
    display: block !important;
    background: var(--wml-hs-line-color, #ffffff) !important;
    /* Default white background on ALL pseudo-elements */
    height: 1px !important;
}

/* Base line styles */
.wml-heading-separator.wml-hs-line:before,
.wml-heading-separator.wml-hs-line:after {
    margin: 0 1em !important;
}

/* One Line - Simple 1px solid */
.wml-heading-separator.wml-hs-one-line:before,
.wml-heading-separator.wml-hs-one-line:after {
    background: var(--wml-hs-line-color, #ffffff) !important;
}

/* Razor - 0.5px line */
.wml-heading-separator.wml-hs-razor:before,
.wml-heading-separator.wml-hs-razor:after {
    background: transparent !important;
    box-shadow: 0 0.5px 0 var(--wml-hs-line-color, #ffffff) !important;
}

/* Double Razor - Double 0.5px lines */
.wml-heading-separator.wml-hs-double-razor:before,
.wml-heading-separator.wml-hs-double-razor:after {
    height: 3px !important;
    background: transparent !important;
    box-shadow:
        0 -0.5px 0 var(--wml-hs-line-color, #ffffff) !important,
        0 0.5px 0 var(--wml-hs-line-color, #ffffff) !important;
}

/* Glow - Light Saber effect */
.wml-heading-separator.wml-hs-glow:before,
.wml-heading-separator.wml-hs-glow:after {
    height: 6px !important;
    -webkit-filter: blur(5px) !important;
    filter: blur(5px) !important;
    border-radius: 5px !important;
}

.wml-heading-separator.wml-hs-glow:before {
    background: linear-gradient(to right, var(--wml-hs-glow-color-1, #0000ff), var(--wml-hs-glow-color-2, #ff69b4)) !important;
}

.wml-heading-separator.wml-hs-glow:after {
    background: linear-gradient(to left, var(--wml-hs-glow-color-1, #0000ff), var(--wml-hs-glow-color-2, #ff69b4)) !important;
}

/* Gradient - Full gradient background */
.wml-heading-separator.wml-hs-gradient {
    height: 2em !important;
    line-height: 2em !important;
    color: var(--wml-hs-gradient-text, #ffffff) !important;
    background: var(--wml-hs-gradient-bg, #000000) !important;
}

.wml-heading-separator.wml-hs-gradient:before {
    background: linear-gradient(to right, var(--wml-hs-gradient-side, #ffffff), var(--wml-hs-gradient-bg, #000000)) !important;
    height: auto !important;
}

.wml-heading-separator.wml-hs-gradient:after {
    background: linear-gradient(to left, var(--wml-hs-gradient-side, #ffffff), var(--wml-hs-gradient-bg, #000000)) !important;
    height: auto !important;
}

/* Do Not Cross - Ribbon/Caution tape style */
.wml-heading-separator.wml-hs-donotcross {
    overflow: hidden !important;
    background: var(--wml-hs-dnc-bg, #ffcc00) !important;
    color: var(--wml-hs-dnc-text, #000000) !important;
    height: 2em !important;
    line-height: 2em !important;
}

.wml-heading-separator.wml-hs-donotcross:before,
.wml-heading-separator.wml-hs-donotcross:after {
    background: var(--wml-hs-dnc-stripe, #ffffff) !important;
    padding: 50px 0 !important;
    height: 0 !important;
    transform: rotate(45deg) !important;
}

/* Heading text container */
.wml-hs-heading {
    white-space: nowrap !important;
    padding: 0 0.5em !important;
}