﻿/* Base Button Styles */
button.btn, a.btn,
button.btn-primary, a.btn-primary,
button.btn-secondary, a.btn-secondary,
button.btn-success, a.btn-success,
button.btn-danger, a.btn-danger,
button.btn-info, a.btn-info,
button.btn-light, a.btn-light,
button.btn-dark, a.btn-dark,
button.btn-ghost, a.btn-ghost,
button.btn-outline, a.btn-outline,
button.btn-outline-danger, a.btn-outline-danger,
button.btn-link, a.btn-link,
button.primary, a.primary,
button.secondary, a.secondary,
button.success, a.success,
button.danger, a.danger,
button.info, a.info,
button.light, a.light,
button.dark, a.dark,
button.ghost, a.ghost,
button.outline, a.outline,
button.outline-danger, a.outline-danger,
a.link {
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5em;
    border-radius: 0.375em;
    border: none;
    padding: 0.5em 1em;
    font-weight: 500;
    font-size: 0.875rem;
    line-height: 1.5;
    text-decoration: none;
    transition: all 0.15s ease-in-out;
    position: relative;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    outline: none;
    -webkit-tap-highlight-color: transparent;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

    /* Remove ALL possible focus/active outlines */
    button.btn:focus, a.btn:focus,
    button.btn:active, a.btn:active,
    button.btn:focus:active, a.btn:focus:active,
    button.btn-primary:focus, a.btn-primary:focus,
    button.btn-primary:active, a.btn-primary:active,
    button.btn-primary:focus:active, a.btn-primary:focus:active,
    button.btn-secondary:focus, a.btn-secondary:focus,
    button.btn-secondary:active, a.btn-secondary:active,
    button.btn-secondary:focus:active, a.btn-secondary:focus:active,
    button.btn-success:focus, a.btn-success:focus,
    button.btn-success:active, a.btn-success:active,
    button.btn-success:focus:active, a.btn-success:focus:active,
    button.btn-danger:focus, a.btn-danger:focus,
    button.btn-danger:active, a.btn-danger:active,
    button.btn-danger:focus:active, a.btn-danger:focus:active,
    button.btn-info:focus, a.btn-info:focus,
    button.btn-info:active, a.btn-info:active,
    button.btn-info:focus:active, a.btn-info:focus:active,
    button.btn-light:focus, a.btn-light:focus,
    button.btn-light:active, a.btn-light:active,
    button.btn-light:focus:active, a.btn-light:focus:active,
    button.btn-dark:focus, a.btn-dark:focus,
    button.btn-dark:active, a.btn-dark:active,
    button.btn-dark:focus:active, a.btn-dark:focus:active,
    button.btn-ghost:focus, a.btn-ghost:focus,
    button.btn-ghost:active, a.btn-ghost:active,
    button.btn-ghost:focus:active, a.btn-ghost:focus:active,
    button.btn-outline:focus, a.btn-outline:focus,
    button.btn-outline:active, a.btn-outline:active,
    button.btn-outline:focus:active, a.btn-outline:focus:active,
    button.btn-outline-danger:focus, a.btn-outline-danger:focus,
    button.btn-outline-danger:active, a.btn-outline-danger:active,
    button.btn-outline-danger:focus:active, a.btn-outline-danger:focus:active,
    button.primary:focus, a.primary:focus,
    button.primary:active, a.primary:active,
    button.primary:focus:active, a.primary:focus:active,
    button.secondary:focus, a.secondary:focus,
    button.secondary:active, a.secondary:active,
    button.secondary:focus:active, a.secondary:focus:active,
    button.success:focus, a.success:focus,
    button.success:active, a.success:active,
    button.success:focus:active, a.success:focus:active,
    button.danger:focus, a.danger:focus,
    button.danger:active, a.danger:active,
    button.danger:focus:active, a.danger:focus:active,
    button.info:focus, a.info:focus,
    button.info:active, a.info:active,
    button.info:focus:active, a.info:focus:active,
    button.light:focus, a.light:focus,
    button.light:active, a.light:active,
    button.light:focus:active, a.light:focus:active,
    button.dark:focus, a.dark:focus,
    button.dark:active, a.dark:active,
    button.dark:focus:active, a.dark:focus:active,
    button.ghost:focus, a.ghost:focus,
    button.ghost:active, a.ghost:active,
    button.ghost:focus:active, a.ghost:focus:active,
    button.outline:focus, a.outline:focus,
    button.outline:active, a.outline:active,
    button.outline:focus:active, a.outline:focus:active,
    button.outline-danger:focus, a.outline-danger:focus,
    button.outline-danger:active, a.outline-danger:active,
    button.outline-danger:focus:active, a.outline-danger:focus:active {
        outline: none !important;
        -webkit-tap-highlight-color: transparent;
    }

    /* Focus visible for keyboard navigation only */
    button.btn:focus-visible, a.btn:focus-visible,
    button.btn-primary:focus-visible, a.btn-primary:focus-visible,
    button.btn-secondary:focus-visible, a.btn-secondary:focus-visible,
    button.btn-success:focus-visible, a.btn-success:focus-visible,
    button.btn-danger:focus-visible, a.btn-danger:focus-visible,
    button.btn-info:focus-visible, a.btn-info:focus-visible,
    button.btn-light:focus-visible, a.btn-light:focus-visible,
    button.btn-dark:focus-visible, a.btn-dark:focus-visible,
    button.btn-ghost:focus-visible, a.btn-ghost:focus-visible,
    button.primary:focus-visible, a.primary:focus-visible,
    button.secondary:focus-visible, a.secondary:focus-visible,
    button.success:focus-visible, a.success:focus-visible,
    button.danger:focus-visible, a.danger:focus-visible,
    button.info:focus-visible, a.info:focus-visible,
    button.light:focus-visible, a.light:focus-visible,
    button.dark:focus-visible, a.dark:focus-visible,
    button.ghost:focus-visible, a.ghost:focus-visible {
        outline: 2px solid rgba(24, 111, 181, 0.5);
        outline-offset: 2px;
}

/* Sizing Utility Classes */
.btn-sm {
    padding: 0.375em 0.75em;
    font-size: 0.8125rem;
    gap: 0.375em;
}

.btn-md {
    padding: 0.5em 1em;
    font-size: 0.875rem;
    gap: 0.5em;
}

.btn-lg {
    padding: 0.625em 1.25em;
    font-size: 1rem;
    gap: 0.625em;
}

/* Legacy size support */
.btn-small {
    padding: 0.375em 0.75em;
    font-size: 0.8125rem;
}

.btn-medium {
    padding: 0.5em 1em;
    font-size: 0.875rem;
}

.btn-large {
    padding: 0.625em 1.25em;
    font-size: 1rem;
}

/* ========================================
   PRIMARY BUTTON
   ======================================== */
button.btn-primary, a.btn-primary,
button.primary, a.primary {
    background-color: var(--blueteq-blue);
    color: #ffffff;
    border: 1px solid var(--blueteq-blue);
}

    button.btn-primary:hover, a.btn-primary:hover,
    button.primary:hover, a.primary:hover {
        background-color: #1a7cc4;
        border-color: #1a7cc4;
        color: #ffffff;
        box-shadow: 0 2px 4px rgba(24, 111, 181, 0.2);
    }

    button.btn-primary:active, a.btn-primary:active,
    button.primary:active, a.primary:active {
        background-color: #155a8f !important;
        border-color: #155a8f !important;
        color: #ffffff !important;
        box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1) !important;
    }

    button.btn-primary .k-loader, a.btn-primary .k-loader,
    button.primary .k-loader, a.primary .k-loader,
    button.btn-primary .k-loader-primary, a.btn-primary .k-loader-primary,
    button.primary .k-loader-primary, a.primary .k-loader-primary {
        color: #ffffff;
    }

/* ========================================
   OUTLINE BUTTON (WHITE ON DARK)
   ======================================== */
button.btn-outline, a.btn-outline,
button.outline, a.outline {
    background-color: transparent;
    border: 1px solid #ffffff;
    color: #ffffff;
    box-shadow: none;
}

    button.btn-outline:hover, a.btn-outline:hover,
    button.outline:hover, a.outline:hover {
        background-color: #ffffff;
        border-color: #ffffff;
        color: var(--blueteq-blue);
        box-shadow: 0 2px 4px rgba(255, 255, 255, 0.3);
    }

    button.btn-outline:active, a.btn-outline:active,
    button.outline:active, a.outline:active {
        background-color: rgba(255, 255, 255, 0.9) !important;
        border-color: rgba(255, 255, 255, 0.9) !important;
        color: var(--blueteq-blue) !important;
        box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1) !important;
    }

    button.btn-outline .k-loader, a.btn-outline .k-loader,
    button.outline .k-loader, a.outline .k-loader {
        color: #ffffff;
    }

    button.btn-outline:hover .k-loader, a.btn-outline:hover .k-loader,
    button.outline:hover .k-loader, a.outline:hover .k-loader,
    button.btn-outline:active .k-loader, a.btn-outline:active .k-loader,
    button.outline:active .k-loader, a.outline:active .k-loader {
        color: var(--blueteq-blue);
    }

/* ========================================
   SUCCESS BUTTON
   ======================================== */
button.btn-success, a.btn-success,
button.success, a.success {
    background-color: var(--success-green);
    color: #ffffff;
    border: 1px solid var(--success-green);
}

    button.btn-success:hover, a.btn-success:hover,
    button.success:hover, a.success:hover {
        background-color: rgb(21 128 61);
        border-color: rgb(21 128 61);
        color: #ffffff;
        box-shadow: 0 2px 4px rgba(22, 163, 74, 0.2);
    }

    button.btn-success:active, a.btn-success:active,
    button.success:active, a.success:active {
        background-color: rgb(20 83 45) !important;
        border-color: rgb(20 83 45) !important;
        color: #ffffff !important;
        box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1) !important;
    }

    button.btn-success .k-loader, a.btn-success .k-loader,
    button.success .k-loader, a.success .k-loader {
        color: #ffffff;
    }

/* ========================================
   WARNING BUTTON
   ======================================== */
button.btn-warning, a.btn-warning,
button.warning, a.warning {
    background-color: #f59e0b;
    color: #ffffff;
    border: 1px solid #f59e0b;
}

    button.btn-warning:hover, a.btn-warning:hover,
    button.warning:hover, a.warning:hover {
        background-color: #d97706;
        border-color: #d97706;
        color: #ffffff;
        box-shadow: 0 2px 4px rgba(245, 158, 11, 0.2);
    }

    button.btn-warning:active, a.btn-warning:active,
    button.warning:active, a.warning:active {
        background-color: #b45309 !important;
        border-color: #b45309 !important;
        color: #ffffff !important;
        box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1) !important;
    }

    button.btn-warning .k-loader, a.btn-warning .k-loader,
    button.warning .k-loader, a.warning .k-loader {
        color: #ffffff;
    }

/* ========================================
   DANGER BUTTON
   ======================================== */
button.btn-danger, a.btn-danger,
button.danger, a.danger {
    background-color: #dc2626;
    color: #ffffff;
    border: 1px solid #dc2626;
}

    button.btn-danger:hover, a.btn-danger:hover,
    button.danger:hover, a.danger:hover {
        background-color: #b91c1c;
        border-color: #b91c1c;
        color: #ffffff;
        box-shadow: 0 2px 4px rgba(220, 38, 38, 0.2);
    }

    button.btn-danger:active, a.btn-danger:active,
    button.danger:active, a.danger:active {
        background-color: #991b1b !important;
        border-color: #991b1b !important;
        color: #ffffff !important;
        box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1) !important;
    }

    button.btn-danger .k-loader, a.btn-danger .k-loader,
    button.danger .k-loader, a.danger .k-loader {
        color: #ffffff;
    }

/* ========================================
   SECONDARY BUTTON
   ======================================== */
button.btn-secondary, a.btn-secondary,
button.secondary, a.secondary {
    background-color: transparent;
    border: 1px solid var(--blueteq-blue);
    color: var(--blueteq-blue);
    box-shadow: none;
}

    button.btn-secondary:hover, a.btn-secondary:hover,
    button.secondary:hover, a.secondary:hover {
        background-color: var(--blueteq-blue);
        border-color: var(--blueteq-blue);
        color: #ffffff;
        box-shadow: 0 2px 4px rgba(24, 111, 181, 0.2);
    }

    button.btn-secondary:active, a.btn-secondary:active,
    button.secondary:active, a.secondary:active {
        background-color: #155a8f !important;
        border-color: #155a8f !important;
        color: #ffffff !important;
        box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1) !important;
    }

    button.btn-secondary .k-loader, a.btn-secondary .k-loader,
    button.secondary .k-loader, a.secondary .k-loader {
        color: var(--blueteq-blue);
    }

    button.btn-secondary:hover .k-loader, a.btn-secondary:hover .k-loader,
    button.secondary:hover .k-loader, a.secondary:hover .k-loader {
        color: #ffffff;
    }

/* ==================== Dark Mode Button Styles ==================== */

/* Primary buttons - keep blue in dark mode */
[data-theme="dark"] button.btn-primary,
[data-theme="dark"] a.btn-primary,
[data-theme="dark"] button.primary,
[data-theme="dark"] a.primary {
    background-color: var(--blueteq-blue) !important;
    color: #ffffff !important;
    border-color: var(--blueteq-blue) !important;
}

    [data-theme="dark"] button.btn-primary:hover,
    [data-theme="dark"] a.btn-primary:hover,
    [data-theme="dark"] button.primary:hover,
    [data-theme="dark"] a.primary:hover {
        background-color: #1a7cc4 !important;
        border-color: #1a7cc4 !important;
    }

/* Warning buttons - keep orange in dark mode */
[data-theme="dark"] button.btn-warning,
[data-theme="dark"] a.btn-warning,
[data-theme="dark"] button.warning,
[data-theme="dark"] a.warning {
    background-color: #f59e0b !important;
    color: #ffffff !important;
    border-color: #f59e0b !important;
}

    [data-theme="dark"] button.btn-warning:hover,
    [data-theme="dark"] a.btn-warning:hover,
    [data-theme="dark"] button.warning:hover,
    [data-theme="dark"] a.warning:hover {
        background-color: #d97706 !important;
        border-color: #d97706 !important;
    }

/* Danger buttons - keep red in dark mode */
[data-theme="dark"] button.btn-danger,
[data-theme="dark"] a.btn-danger,
[data-theme="dark"] button.danger,
[data-theme="dark"] a.danger {
    background-color: #dc2626 !important;
    color: #ffffff !important;
    border-color: #dc2626 !important;
}

    [data-theme="dark"] button.btn-danger:hover,
    [data-theme="dark"] a.btn-danger:hover,
    [data-theme="dark"] button.danger:hover,
    [data-theme="dark"] a.danger:hover {
        background-color: #b91c1c !important;
        border-color: #b91c1c !important;
    }

/* Success buttons - keep green in dark mode */
[data-theme="dark"] button.btn-success,
[data-theme="dark"] a.btn-success,
[data-theme="dark"] button.success,
[data-theme="dark"] a.success {
    background-color: var(--success-green) !important;
    color: #ffffff !important;
    border-color: var(--success-green) !important;
}

    [data-theme="dark"] button.btn-success:hover,
    [data-theme="dark"] a.btn-success:hover,
    [data-theme="dark"] button.success:hover,
    [data-theme="dark"] a.success:hover {
        background-color: rgb(21 128 61) !important;
        border-color: rgb(21 128 61) !important;
    }

/* Info buttons - keep blue in dark mode */
[data-theme="dark"] button.btn-info,
[data-theme="dark"] a.btn-info,
[data-theme="dark"] button.info,
[data-theme="dark"] a.info {
    background-color: #0ea5e9 !important;
    color: #ffffff !important;
    border-color: #0ea5e9 !important;
}

    [data-theme="dark"] button.btn-info:hover,
    [data-theme="dark"] a.btn-info:hover,
    [data-theme="dark"] button.info:hover,
    [data-theme="dark"] a.info:hover {
        background-color: #0284c7 !important;
        border-color: #0284c7 !important;
    }

/* Outline danger buttons - keep red in dark mode */
[data-theme="dark"] button.btn-outline-danger,
[data-theme="dark"] a.btn-outline-danger,
[data-theme="dark"] button.outline-danger,
[data-theme="dark"] a.outline-danger {
    border-color: #dc2626 !important;
    color: #dc2626 !important;
}

    [data-theme="dark"] button.btn-outline-danger:hover,
    [data-theme="dark"] a.btn-outline-danger:hover,
    [data-theme="dark"] button.outline-danger:hover,
    [data-theme="dark"] a.outline-danger:hover {
        background-color: #dc2626 !important;
        border-color: #dc2626 !important;
        color: #ffffff !important;
    }

/* Secondary buttons in dark mode */
[data-theme="dark"] button.btn-secondary,
[data-theme="dark"] a.btn-secondary,
[data-theme="dark"] button.secondary,
[data-theme="dark"] a.secondary {
    background-color: #373c40;
    border-color: #454a4f;
    color: #e0e0e0;
}

    [data-theme="dark"] button.btn-secondary:hover,
    [data-theme="dark"] a.btn-secondary:hover,
    [data-theme="dark"] button.secondary:hover,
    [data-theme="dark"] a.secondary:hover {
        background-color: #454a4f;
        border-color: #505559;
        color: #e0e0e0;
    }

    [data-theme="dark"] button.btn-secondary:active,
    [data-theme="dark"] a.btn-secondary:active,
    [data-theme="dark"] button.secondary:active,
    [data-theme="dark"] a.secondary:active {
        background-color: #2d3135 !important;
        border-color: #373c40 !important;
        color: #e0e0e0 !important;
    }

/* ========================================
   OUTLINE DANGER BUTTON
   ======================================== */
button.btn-outline-danger, a.btn-outline-danger,
button.outline-danger, a.outline-danger {
    background-color: transparent;
    border: 1px solid #dc2626;
    color: #dc2626;
    box-shadow: none;
}

    button.btn-outline-danger:hover, a.btn-outline-danger:hover,
    button.outline-danger:hover, a.outline-danger:hover {
        background-color: #dc2626;
        border-color: #dc2626;
        color: #ffffff;
        box-shadow: 0 2px 4px rgba(220, 38, 38, 0.2);
    }

    button.btn-outline-danger:active, a.btn-outline-danger:active,
    button.outline-danger:active, a.outline-danger:active {
        background-color: #b91c1c !important;
        border-color: #b91c1c !important;
        color: #ffffff !important;
        box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1) !important;
    }

    button.btn-outline-danger .k-loader, a.btn-outline-danger .k-loader,
    button.outline-danger .k-loader, a.outline-danger .k-loader {
        color: #dc2626;
    }

    button.btn-outline-danger:hover .k-loader, a.btn-outline-danger:hover .k-loader,
    button.outline-danger:hover .k-loader, a.outline-danger:hover .k-loader,
    button.btn-outline-danger:active .k-loader, a.btn-outline-danger:active .k-loader,
    button.outline-danger:active .k-loader, a.outline-danger:active .k-loader {
        color: #ffffff;
    }

/* ========================================
   INFO BUTTON
   ======================================== */
button.btn-info, a.btn-info,
button.info, a.info {
    background-color: #0ea5e9;
    color: #ffffff;
    border: 1px solid #0ea5e9;
}

    button.btn-info:hover, a.btn-info:hover,
    button.info:hover, a.info:hover {
        background-color: #0284c7;
        border-color: #0284c7;
        color: #ffffff;
        box-shadow: 0 2px 4px rgba(14, 165, 233, 0.2);
    }

    button.btn-info:active, a.btn-info:active,
    button.info:active, a.info:active {
        background-color: #0369a1 !important;
        border-color: #0369a1 !important;
        color: #ffffff !important;
        box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1) !important;
    }

    button.btn-info .k-loader, a.btn-info .k-loader,
    button.info .k-loader, a.info .k-loader {
        color: #ffffff;
    }

/* ========================================
   LIGHT BUTTON
   ======================================== */
button.btn-light, a.btn-light,
button.light, a.light {
    background-color: #f8fafc;
    color: #334155;
    border: 1px solid #e2e8f0;
}

    button.btn-light:hover, a.btn-light:hover,
    button.light:hover, a.light:hover {
        background-color: #f1f5f9;
        border-color: #cbd5e1;
        color: #1e293b;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    }

    button.btn-light:active, a.btn-light:active,
    button.light:active, a.light:active {
        background-color: #e2e8f0 !important;
        border-color: #cbd5e1 !important;
        color: #1e293b !important;
        box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.05) !important;
    }

    button.btn-light .k-loader, a.btn-light .k-loader,
    button.light .k-loader, a.light .k-loader {
        color: #334155;
    }

/* ========================================
   DARK BUTTON
   ======================================== */
button.btn-dark, a.btn-dark,
button.dark, a.dark {
    background-color: #1e293b;
    color: #ffffff;
    border: 1px solid #1e293b;
}

    button.btn-dark:hover, a.btn-dark:hover,
    button.dark:hover, a.dark:hover {
        background-color: #334155;
        border-color: #334155;
        color: #ffffff;
        box-shadow: 0 2px 4px rgba(30, 41, 59, 0.3);
    }

    button.btn-dark:active, a.btn-dark:active,
    button.dark:active, a.dark:active {
        background-color: #0f172a !important;
        border-color: #0f172a !important;
        color: #ffffff !important;
        box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.2) !important;
    }

    button.btn-dark .k-loader, a.btn-dark .k-loader,
    button.dark .k-loader, a.dark .k-loader {
        color: #ffffff;
    }

/* ========================================
   GHOST BUTTON
   ======================================== */
button.btn-ghost, a.btn-ghost,
button.ghost, a.ghost {
    background-color: transparent;
    color: #64748b;
    border: none;
    box-shadow: none;
}

    button.btn-ghost:hover, a.btn-ghost:hover,
    button.ghost:hover, a.ghost:hover {
        background-color: #f1f5f9;
        color: #334155;
        box-shadow: none;
    }

    button.btn-ghost:active, a.btn-ghost:active,
    button.ghost:active, a.ghost:active {
        background-color: #e2e8f0 !important;
        color: #1e293b !important;
        box-shadow: none !important;
    }

    button.btn-ghost .k-loader, a.btn-ghost .k-loader,
    button.ghost .k-loader, a.ghost .k-loader {
        color: #64748b;
    }

/* ========================================
   LINK BUTTON
   ======================================== */
button.btn-link, a.btn-link,
a.link {
    background-color: transparent;
    border: none;
    color: var(--blueteq-blue);
    text-decoration: underline;
    box-shadow: none;
    padding: 0.25em 0.5em;
}

    button.btn-link:hover, a.btn-link:hover,
    a.link:hover {
        color: #1a7cc4;
        text-decoration: underline;
        background-color: transparent;
    }

    button.btn-link:active, a.btn-link:active,
    a.link:active {
        color: #155a8f !important;
    text-decoration: underline;
        background-color: transparent !important;
    }

/* ========================================
   DISABLED STATE
   ======================================== */
button:disabled, a.disabled,
button.btn:disabled, a.btn.disabled,
button.btn-primary:disabled, a.btn-primary.disabled,
button.btn-secondary:disabled, a.btn-secondary.disabled,
button.btn-success:disabled, a.btn-success.disabled,
button.btn-danger:disabled, a.btn-danger.disabled,
button.btn-info:disabled, a.btn-info.disabled,
button.btn-light:disabled, a.btn-light.disabled,
button.btn-dark:disabled, a.btn-dark.disabled,
button.btn-ghost:disabled, a.btn-ghost.disabled,
button.primary:disabled, a.primary.disabled,
button.secondary:disabled, a.secondary.disabled,
button.success:disabled, a.success.disabled,
button.danger:disabled, a.danger.disabled,
button.info:disabled, a.info.disabled,
button.light:disabled, a.light.disabled,
button.dark:disabled, a.dark.disabled,
button.ghost:disabled, a.ghost.disabled {
    opacity: 0.6;
    cursor: not-allowed;
    pointer-events: none;
}

/* ========================================
   FULL WIDTH UTILITY
   ======================================== */
.btn-block {
    width: 100%;
    display: flex;
}

a {
    text-decoration: none !important;
}

a:hover {
    color: none !important;
    text-decoration: none !important;
}

/* ==================== High Contrast Mode Button Styles ==================== */
[data-theme="high-contrast"] button,
[data-theme="high-contrast"] a.btn,
[data-theme="high-contrast"] button.btn-primary,
[data-theme="high-contrast"] a.btn-primary,
[data-theme="high-contrast"] button.primary,
[data-theme="high-contrast"] a.primary {
    background-color: #0066ff !important;
    color: #ffffff !important;
    border: 3px solid #ffffff !important;
    font-weight: 700 !important;
    box-shadow: none !important;
}

[data-theme="high-contrast"] button.btn-secondary,
[data-theme="high-contrast"] a.btn-secondary,
[data-theme="high-contrast"] button.secondary,
[data-theme="high-contrast"] a.secondary {
    background-color: #000000 !important;
    color: #ffffff !important;
    border: 3px solid #ffffff !important;
    font-weight: 700 !important;
}

[data-theme="high-contrast"] button.btn-success,
[data-theme="high-contrast"] a.btn-success,
[data-theme="high-contrast"] button.success,
[data-theme="high-contrast"] a.success {
    background-color: #00ff00 !important;
    color: #000000 !important;
    border: 3px solid #ffffff !important;
    font-weight: 700 !important;
}

[data-theme="high-contrast"] button.btn-warning,
[data-theme="high-contrast"] a.btn-warning,
[data-theme="high-contrast"] button.warning,
[data-theme="high-contrast"] a.warning {
    background-color: #ff9900 !important;
    color: #000000 !important;
    border: 3px solid #ffffff !important;
    font-weight: 700 !important;
}

[data-theme="high-contrast"] button.btn-danger,
[data-theme="high-contrast"] a.btn-danger,
[data-theme="high-contrast"] button.danger,
[data-theme="high-contrast"] a.danger {
    background-color: #ff0000 !important;
    color: #ffffff !important;
    border: 3px solid #ffffff !important;
    font-weight: 700 !important;
}

[data-theme="high-contrast"] button.btn-info,
[data-theme="high-contrast"] a.btn-info,
[data-theme="high-contrast"] button.info,
[data-theme="high-contrast"] a.info {
    background-color: #0066ff !important;
    color: #ffffff !important;
    border: 3px solid #ffffff !important;
    font-weight: 700 !important;
}

[data-theme="high-contrast"] button:hover,
[data-theme="high-contrast"] a.btn:hover {
    background-color: #ffffff !important;
    color: #000000 !important;
    border: 3px solid #ffffff !important;
}

[data-theme="high-contrast"] button:active,
[data-theme="high-contrast"] a.btn:active {
    transform: scale(0.95);
}

[data-theme="high-contrast"] button:disabled,
[data-theme="high-contrast"] a.btn:disabled {
    background-color: #666666 !important;
    color: #ffffff !important;
    border: 3px solid #999999 !important;
    opacity: 1 !important;
}

/* Save As split button */
.btn-split {
    position: relative;
    display: inline-flex;
    align-items: stretch;
}

.btn-split-toggle {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-left: 1px solid rgba(0, 0, 0, 0.08);
}

.btn-split-menu {
    position: absolute;
    right: 0;
    top: 100%;
    margin-top: 0.25rem;
    min-width: 12rem;
    background-color: var(--bg-primary, #ffffff);
    border: 1px solid var(--border-color, #e5e7eb);
    border-radius: 0.375rem;
    box-shadow: 0 10px 25px rgba(15, 23, 42, 0.15);
    padding: 0.25rem 0;
    z-index: 50;
    display: none;
}

    .btn-split-menu.open {
        display: block;
    }

.btn-split-item {
    width: 100%;
    padding: 0.375rem 0.75rem;
    background: transparent;
    border: none;
    text-align: left;
    font-size: 0.875rem;
    color: var(--blueteq-blue);
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: .6em;
}

    .btn-split-item:hover {
        color: #fff;
        background-color: var(--blueteq-blue);
    }
