/*
<?php
*/
/**
 * Button Themes - Institution-Specific Button Colors
 *
 * Custom button styling for each institution to match brand colors
 * and create a more cohesive, professional appearance.
 *
 * @package Shared
 * @subpackage CSS/Themes
 */
/*
?>
*/

/* ============================================================================
   TRUIST BUTTON THEME
   ============================================================================ */

[data-institution="truist"] {
    --btn-primary: #2e1a47;              /* Truist purple */
    --btn-primary-hover: #1e0a37;
    --btn-primary-active: #0e0027;
}

/* ============================================================================
   RAYMOND JAMES BUTTON THEME
   ============================================================================ */

[data-institution="raymondjames"] {
    --btn-primary: #003087;              /* Raymond James blue */
    --btn-primary-hover: #002067;
    --btn-primary-active: #001047;
}

/* ============================================================================
   STIFEL BUTTON THEME
   ============================================================================ */

[data-institution="stifel"] {
    --btn-primary: #010b15;              /* Stifel dark navy (brand primary) */
    --btn-primary-hover: #0a1a2a;
    --btn-primary-active: #000408;
}

/* ============================================================================
   SOUTHSTATE BUTTON THEME
   ============================================================================ */

[data-institution="southstate"] {
    --btn-primary: #003366;              /* SouthState blue */
    --btn-primary-hover: #002346;
    --btn-primary-active: #001326;
}

/* ============================================================================
   CENTRAL1 BUTTON THEME
   ============================================================================ */

[data-institution="central1"] {
    --btn-primary: #00a651;              /* Central1 green */
    --btn-primary-hover: #008641;
    --btn-primary-active: #006631;
}

/* ============================================================================
   FHN BUTTON THEME
   ============================================================================ */

[data-institution="fhn"] {
    --btn-primary: #005da6;              /* FHN blue */
    --btn-primary-hover: #004d86;
    --btn-primary-active: #003d66;
}

/* ============================================================================
   EMPYREAN DEFAULT BUTTON THEME
   ============================================================================ */

[data-institution="empyrean"] {
    --btn-primary: #2e5c8a;              /* Empyrean blue */
    --btn-primary-hover: #1e4c7a;
    --btn-primary-active: #0e3c6a;
}

/* ============================================================================
   PTCP BUTTON THEME
   ============================================================================ */

[data-institution="ptcp"] {
    --btn-primary: #00529A;              /* PTCP blue */
    --btn-primary-hover: #00417b;
    --btn-primary-active: #00315c;
}

/* ============================================================================
   FBBS BUTTON THEME
   ============================================================================ */

[data-institution="fbbs"] {
    --btn-primary: #00402b;              /* FBBS dark green */
    --btn-primary-hover: #003020;
    --btn-primary-active: #002015;
}

/* ============================================================================
   QUANTYPHI BUTTON THEME
   ============================================================================ */

[data-institution="quantyphi"] {
    --btn-primary: #3366cc;              /* QuantyPhi blue */
    --btn-primary-hover: #2356bc;
    --btn-primary-active: #1346ac;
}

/* ============================================================================
   TAYLOR BUTTON THEME
   ============================================================================ */

[data-institution="taylor"] {
    --btn-primary: #002f6d;              /* Taylor navy blue */
    --btn-primary-hover: #001f5d;
    --btn-primary-active: #000f4d;
}

/* ============================================================================
   ENHANCED BUTTON EFFECTS (Optional - Apply to all institutions)
   ============================================================================ */

/* Gradient primary buttons */
.btn--primary.btn--gradient {
    background: linear-gradient(135deg, var(--btn-primary) 0%, var(--btn-primary-hover) 100%);
    border: none;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.btn--primary.btn--gradient:hover:not(:disabled) {
    background: linear-gradient(135deg, var(--btn-primary-hover) 0%, var(--btn-primary-active) 100%);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
    transform: translateY(-2px);
}

/* Elevated buttons (material design) */
.btn--elevated {
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1), 0 4px 8px rgba(0, 0, 0, 0.05);
}

.btn--elevated:hover:not(:disabled) {
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15), 0 8px 16px rgba(0, 0, 0, 0.1);
    transform: translateY(-3px);
}

.btn--elevated:active:not(:disabled) {
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
    transform: translateY(0);
}

/* Glassmorphism buttons (modern frosted glass effect) */
.btn--glass {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: var(--btn-text);
}

.btn--glass:hover:not(:disabled) {
    background: rgba(255, 255, 255, 0.2);
    border-color: rgba(255, 255, 255, 0.3);
}

/* Neumorphism buttons (soft UI) */
.btn--neuro {
    background: #e0e5ec;
    border: none;
    box-shadow: 9px 9px 16px rgba(163, 177, 198, 0.6),
                -9px -9px 16px rgba(255, 255, 255, 0.5);
}

.btn--neuro:hover:not(:disabled) {
    box-shadow: 6px 6px 12px rgba(163, 177, 198, 0.6),
                -6px -6px 12px rgba(255, 255, 255, 0.5);
}

.btn--neuro:active:not(:disabled) {
    box-shadow: inset 4px 4px 8px rgba(163, 177, 198, 0.5),
                inset -4px -4px 8px rgba(255, 255, 255, 0.5);
}

/* Pulse animation for important actions */
@keyframes pulse {
    0%, 100% {
        box-shadow: 0 0 0 0 rgba(46, 92, 138, 0.7);
    }
    50% {
        box-shadow: 0 0 0 10px rgba(46, 92, 138, 0);
    }
}

.btn--pulse {
    animation: pulse 2s infinite;
}

/* Shimmer effect for premium buttons */
@keyframes shimmer {
    0% {
        background-position: -1000px 0;
    }
    100% {
        background-position: 1000px 0;
    }
}

.btn--shimmer {
    background: linear-gradient(
        90deg,
        var(--btn-primary) 0%,
        var(--btn-primary-hover) 50%,
        var(--btn-primary) 100%
    );
    background-size: 1000px 100%;
    animation: shimmer 3s infinite;
}

/* Loading state with spinner */
.btn--loading {
    position: relative;
    color: transparent;
    pointer-events: none;
}

.btn--loading::after {
    content: "";
    position: absolute;
    width: 16px;
    height: 16px;
    top: 50%;
    left: 50%;
    margin-left: -8px;
    margin-top: -8px;
    border: 2px solid #ffffff;
    border-radius: 50%;
    border-top-color: transparent;
    animation: spin 0.6s linear infinite;
}

@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}

/* Glow effect for success actions */
.btn--glow {
    box-shadow: 0 0 5px var(--btn-primary),
                0 0 10px var(--btn-primary),
                0 0 15px var(--btn-primary);
}

.btn--glow:hover:not(:disabled) {
    box-shadow: 0 0 10px var(--btn-primary),
                0 0 20px var(--btn-primary),
                0 0 30px var(--btn-primary);
}

/* 3D effect buttons */
.btn--3d {
    box-shadow: 0 6px 0 var(--btn-primary-hover),
                0 8px 4px rgba(0, 0, 0, 0.2);
    transform: translateY(0);
}

.btn--3d:hover:not(:disabled) {
    box-shadow: 0 4px 0 var(--btn-primary-hover),
                0 6px 4px rgba(0, 0, 0, 0.2);
    transform: translateY(2px);
}

.btn--3d:active:not(:disabled) {
    box-shadow: 0 2px 0 var(--btn-primary-hover),
                0 4px 4px rgba(0, 0, 0, 0.2);
    transform: translateY(4px);
}
