/* ================================================================= */
/* STYLES BLEUS FORCÉS POUR CARTE DE RECHERCHE - PRIORITÉ ABSOLUE */
/* ================================================================= */

/* CARTE PRINCIPALE AVEC TOUS LES SÉLECTEURS POSSIBLES */
html body div.search-card,
html body section.search-section div.search-card,
html body .search-section .search-card,
html body section.search-section .search-card,
body div.search-card,
body section.search-section div.search-card,
body .search-section .search-card,
body section.search-section .search-card,
div.search-card,
section.search-section div.search-card,
.search-section .search-card,
section.search-section .search-card {
    background: rgba(255, 255, 255, 0.98) !important;
    border: 3px solid #3b82f6 !important;
    border-radius: 20px !important;
    padding: 2rem !important;
    box-shadow: 0 15px 50px rgba(59, 130, 246, 0.25), 0 8px 25px rgba(30, 64, 175, 0.15) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    position: relative !important;
    margin: 0 auto !important;
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}

/* LIGNE BLEUE DÉGRADÉE EN HAUT DE LA CARTE */
html body div.search-card::before,
html body section.search-section div.search-card::before,
html body .search-section .search-card::before,
html body section.search-section .search-card::before,
body div.search-card::before,
body section.search-section div.search-card::before,
body .search-section .search-card::before,
body section.search-section .search-card::before,
div.search-card::before,
section.search-section div.search-card::before,
.search-section .search-card::before,
section.search-section .search-card::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    background: linear-gradient(90deg, #3b82f6 0%, #60a5fa 50%, #93c5fd 100%) !important;
    height: 6px !important;
    border-radius: 20px 20px 0 0 !important;
    z-index: 10 !important;
}

/* TITRE H3 DE LA CARTE EN BLEU */
html body div.search-card h3,
html body section.search-section div.search-card h3,
html body .search-section .search-card h3,
html body section.search-section .search-card h3,
body div.search-card h3,
body section.search-section div.search-card h3,
body .search-section .search-card h3,
body section.search-section .search-card h3,
div.search-card h3,
section.search-section div.search-card h3,
.search-section .search-card h3,
section.search-section .search-card h3 {
    color: #1e40af !important;
    font-weight: 700 !important;
    margin-bottom: 0.75rem !important;
    text-shadow: 0 1px 3px rgba(30, 64, 175, 0.2) !important;
    font-size: 1.5rem !important;
}

/* PARAGRAPHE DE DESCRIPTION */
html body div.search-card .text-center p,
html body section.search-section div.search-card .text-center p,
html body .search-section .search-card .text-center p,
html body section.search-section .search-card .text-center p,
body div.search-card .text-center p,
body section.search-section div.search-card .text-center p,
body .search-section .search-card .text-center p,
body section.search-section .search-card .text-center p,
div.search-card .text-center p,
section.search-section div.search-card .text-center p,
.search-section .search-card .text-center p,
section.search-section .search-card .text-center p {
    color: #64748b !important;
    margin-bottom: 2rem !important;
    font-weight: 500 !important;
}

/* TOUS LES CHAMPS DE FORMULAIRE AVEC BORDURES BLEUES */
html body div.search-card .form-control,
html body div.search-card .form-select,
html body section.search-section div.search-card .form-control,
html body section.search-section div.search-card .form-select,
html body .search-section .search-card .form-control,
html body .search-section .search-card .form-select,
html body section.search-section .search-card .form-control,
html body section.search-section .search-card .form-select,
body div.search-card .form-control,
body div.search-card .form-select,
body section.search-section div.search-card .form-control,
body section.search-section div.search-card .form-select,
body .search-section .search-card .form-control,
body .search-section .search-card .form-select,
body section.search-section .search-card .form-control,
body section.search-section .search-card .form-select,
div.search-card .form-control,
div.search-card .form-select,
section.search-section div.search-card .form-control,
section.search-section div.search-card .form-select,
.search-section .search-card .form-control,
.search-section .search-card .form-select,
section.search-section .search-card .form-control,
section.search-section .search-card .form-select {
    background: rgba(255, 255, 255, 0.95) !important;
    border: 2px solid rgba(59, 130, 246, 0.5) !important;
    border-radius: 12px !important;
    padding: 1rem !important;
    font-size: 1rem !important;
    color: #334155 !important;
    box-shadow: 0 3px 12px rgba(59, 130, 246, 0.12) !important;
    height: calc(3.5rem + 2px) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* FOCUS SUR LES CHAMPS - EFFET BLEU INTENSE */
html body div.search-card .form-control:focus,
html body div.search-card .form-select:focus,
html body section.search-section div.search-card .form-control:focus,
html body section.search-section div.search-card .form-select:focus,
html body .search-section .search-card .form-control:focus,
html body .search-section .search-card .form-select:focus,
html body section.search-section .search-card .form-control:focus,
html body section.search-section .search-card .form-select:focus,
body div.search-card .form-control:focus,
body div.search-card .form-select:focus,
body section.search-section div.search-card .form-control:focus,
body section.search-section div.search-card .form-select:focus,
body .search-section .search-card .form-control:focus,
body .search-section .search-card .form-select:focus,
body section.search-section .search-card .form-control:focus,
body section.search-section .search-card .form-select:focus,
div.search-card .form-control:focus,
div.search-card .form-select:focus,
section.search-section div.search-card .form-control:focus,
section.search-section div.search-card .form-select:focus,
.search-section .search-card .form-control:focus,
.search-section .search-card .form-select:focus,
section.search-section .search-card .form-control:focus,
section.search-section .search-card .form-select:focus {
    border-color: #3b82f6 !important;
    box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.25), 0 6px 20px rgba(59, 130, 246, 0.2) !important;
    outline: none !important;
    transform: translateY(-2px) scale(1.01) !important;
    background: rgba(255, 255, 255, 1) !important;
}

/* HOVER SUR LES CHAMPS */
html body div.search-card .form-control:hover:not(:focus),
html body div.search-card .form-select:hover:not(:focus),
html body section.search-section div.search-card .form-control:hover:not(:focus),
html body section.search-section div.search-card .form-select:hover:not(:focus),
html body .search-section .search-card .form-control:hover:not(:focus),
html body .search-section .search-card .form-select:hover:not(:focus),
html body section.search-section .search-card .form-control:hover:not(:focus),
html body section.search-section .search-card .form-select:hover:not(:focus),
body div.search-card .form-control:hover:not(:focus),
body div.search-card .form-select:hover:not(:focus),
body section.search-section div.search-card .form-control:hover:not(:focus),
body section.search-section div.search-card .form-select:hover:not(:focus),
body .search-section .search-card .form-control:hover:not(:focus),
body .search-section .search-card .form-select:hover:not(:focus),
body section.search-section .search-card .form-control:hover:not(:focus),
body section.search-section .search-card .form-select:hover:not(:focus),
div.search-card .form-control:hover:not(:focus),
div.search-card .form-select:hover:not(:focus),
section.search-section div.search-card .form-control:hover:not(:focus),
section.search-section div.search-card .form-select:hover:not(:focus),
.search-section .search-card .form-control:hover:not(:focus),
.search-section .search-card .form-select:hover:not(:focus),
section.search-section .search-card .form-control:hover:not(:focus),
section.search-section .search-card .form-select:hover:not(:focus) {
    border-color: rgba(59, 130, 246, 0.7) !important;
    box-shadow: 0 5px 15px rgba(59, 130, 246, 0.18) !important;
    transform: translateY(-1px) !important;
}

/* LABELS FLOTTANTS EN BLEU */
html body div.search-card .form-floating label,
html body section.search-section div.search-card .form-floating label,
html body .search-section .search-card .form-floating label,
html body section.search-section .search-card .form-floating label,
body div.search-card .form-floating label,
body section.search-section div.search-card .form-floating label,
body .search-section .search-card .form-floating label,
body section.search-section .search-card .form-floating label,
div.search-card .form-floating label,
section.search-section div.search-card .form-floating label,
.search-section .search-card .form-floating label,
section.search-section .search-card .form-floating label {
    color: #64748b !important;
    font-weight: 600 !important;
    font-size: 0.95rem !important;
    transition: all 0.3s ease !important;
}

/* LABELS AU FOCUS - COULEUR BLEUE INTENSE */
html body div.search-card .form-floating .form-control:focus ~ label,
html body div.search-card .form-floating .form-control:not(:placeholder-shown) ~ label,
html body div.search-card .form-floating .form-select:focus ~ label,
html body section.search-section div.search-card .form-floating .form-control:focus ~ label,
html body section.search-section div.search-card .form-floating .form-control:not(:placeholder-shown) ~ label,
html body section.search-section div.search-card .form-floating .form-select:focus ~ label,
html body .search-section .search-card .form-floating .form-control:focus ~ label,
html body .search-section .search-card .form-floating .form-control:not(:placeholder-shown) ~ label,
html body .search-section .search-card .form-floating .form-select:focus ~ label,
html body section.search-section .search-card .form-floating .form-control:focus ~ label,
html body section.search-section .search-card .form-floating .form-control:not(:placeholder-shown) ~ label,
html body section.search-section .search-card .form-floating .form-select:focus ~ label,
body div.search-card .form-floating .form-control:focus ~ label,
body div.search-card .form-floating .form-control:not(:placeholder-shown) ~ label,
body div.search-card .form-floating .form-select:focus ~ label,
body section.search-section div.search-card .form-floating .form-control:focus ~ label,
body section.search-section div.search-card .form-floating .form-control:not(:placeholder-shown) ~ label,
body section.search-section div.search-card .form-floating .form-select:focus ~ label,
body .search-section .search-card .form-floating .form-control:focus ~ label,
body .search-section .search-card .form-floating .form-control:not(:placeholder-shown) ~ label,
body .search-section .search-card .form-floating .form-select:focus ~ label,
body section.search-section .search-card .form-floating .form-control:focus ~ label,
body section.search-section .search-card .form-floating .form-control:not(:placeholder-shown) ~ label,
body section.search-section .search-card .form-floating .form-select:focus ~ label,
div.search-card .form-floating .form-control:focus ~ label,
div.search-card .form-floating .form-control:not(:placeholder-shown) ~ label,
div.search-card .form-floating .form-select:focus ~ label,
section.search-section div.search-card .form-floating .form-control:focus ~ label,
section.search-section div.search-card .form-floating .form-control:not(:placeholder-shown) ~ label,
section.search-section div.search-card .form-floating .form-select:focus ~ label,
.search-section .search-card .form-floating .form-control:focus ~ label,
.search-section .search-card .form-floating .form-control:not(:placeholder-shown) ~ label,
.search-section .search-card .form-floating .form-select:focus ~ label,
section.search-section .search-card .form-floating .form-control:focus ~ label,
section.search-section .search-card .form-floating .form-control:not(:placeholder-shown) ~ label,
section.search-section .search-card .form-floating .form-select:focus ~ label {
    color: #3b82f6 !important;
    font-weight: 700 !important;
    transform: scale(0.95) !important;
}

/* ESPACEMENT ENTRE CHAMPS */
html body div.search-card .form-floating,
html body section.search-section div.search-card .form-floating,
html body .search-section .search-card .form-floating,
html body section.search-section .search-card .form-floating,
body div.search-card .form-floating,
body section.search-section div.search-card .form-floating,
body .search-section .search-card .form-floating,
body section.search-section .search-card .form-floating,
div.search-card .form-floating,
section.search-section div.search-card .form-floating,
.search-section .search-card .form-floating,
section.search-section .search-card .form-floating {
    margin-bottom: 1.75rem !important;
}

/* EFFET HOVER SUR TOUTE LA CARTE */
html body div.search-card:hover,
html body section.search-section div.search-card:hover,
html body .search-section .search-card:hover,
html body section.search-section .search-card:hover,
body div.search-card:hover,
body section.search-section div.search-card:hover,
body .search-section .search-card:hover,
body section.search-section .search-card:hover,
div.search-card:hover,
section.search-section div.search-card:hover,
.search-section .search-card:hover,
section.search-section .search-card:hover {
    transform: translateY(-4px) scale(1.005) !important;
    box-shadow: 0 20px 60px rgba(59, 130, 246, 0.3), 0 10px 30px rgba(30, 64, 175, 0.2) !important;
    transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}

/* BOUTONS DANS LA CARTE - GRADIENT BLEU */
html body div.search-card .btn-primary,
html body section.search-section div.search-card .btn-primary,
html body .search-section .search-card .btn-primary,
html body section.search-section .search-card .btn-primary,
body div.search-card .btn-primary,
body section.search-section div.search-card .btn-primary,
body .search-section .search-card .btn-primary,
body section.search-section .search-card .btn-primary,
div.search-card .btn-primary,
section.search-section div.search-card .btn-primary,
.search-section .search-card .btn-primary,
section.search-section .search-card .btn-primary {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%) !important;
    border: none !important;
    box-shadow: 0 4px 15px rgba(59, 130, 246, 0.4) !important;
    transition: all 0.3s ease !important;
}

html body div.search-card .btn-primary:hover,
html body section.search-section div.search-card .btn-primary:hover,
html body .search-section .search-card .btn-primary:hover,
html body section.search-section .search-card .btn-primary:hover,
body div.search-card .btn-primary:hover,
body section.search-section div.search-card .btn-primary:hover,
body .search-section .search-card .btn-primary:hover,
body section.search-section .search-card .btn-primary:hover,
div.search-card .btn-primary:hover,
section.search-section div.search-card .btn-primary:hover,
.search-section .search-card .btn-primary:hover,
section.search-section .search-card .btn-primary:hover {
    transform: translateY(-2px) scale(1.02) !important;
    box-shadow: 0 6px 20px rgba(59, 130, 246, 0.5) !important;
}

/* SECTION AVEC ARRIÈRE-PLAN BLEU FORCÉ */
html body section.search-section,
body section.search-section,
section.search-section {
    background: linear-gradient(135deg, #1e40af 0%, #3b82f6 25%, #60a5fa 50%, #93c5fd 75%, #dbeafe 100%) !important;
    position: relative !important;
    z-index: 1 !important;
}

/* CONTENEUR POUR CENTRAGE PARFAIT */
html body section.search-section .container-fluid,
body section.search-section .container-fluid,
section.search-section .container-fluid {
    position: relative !important;
    z-index: 2 !important;
}

/* FORÇAGE ABSOLU DES COULEURS - DERNIÈRE CHANCE */
* .search-card {
    background: rgba(255, 255, 255, 0.98) !important;
    border: 3px solid #3b82f6 !important;
}

* .search-card::before {
    background: linear-gradient(90deg, #3b82f6 0%, #60a5fa 50%, #93c5fd 100%) !important;
}

* .search-card h3 {
    color: #1e40af !important;
}

* .search-card .form-control,
* .search-card .form-select {
    border: 2px solid rgba(59, 130, 246, 0.5) !important;
}

* .search-card .form-control:focus,
* .search-card .form-select:focus {
    border-color: #3b82f6 !important;
    box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.25) !important;
}

* .search-card .form-floating .form-control:focus ~ label,
* .search-card .form-floating .form-select:focus ~ label {
    color: #3b82f6 !important;
}

* .search-card .btn-primary {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%) !important;
}

/* ================================================================ */
/* FORÇAGE ULTIME DES CHAMPS DE FORMULAIRE - STYLES ÉLÉGANTS */
/* ================================================================ */

/* CIBLAGE DIRECT PAR ID ET ATTRIBUTS - MAXIMUM DE SPÉCIFICITÉ */
html body section.search-section div.search-card form div.form-floating input#searchQuery,
html body section.search-section div.search-card form div.form-floating select#sportSelect,
html body section.search-section div.search-card form div.form-floating input#cityInput,
html body section.search-section div.search-card form div.form-floating select#priceRange,
html body .search-card form input#searchQuery,
html body .search-card form select#sportSelect,
html body .search-card form input#cityInput,
html body .search-card form select#priceRange,
body .search-card form input#searchQuery,
body .search-card form select#sportSelect,
body .search-card form input#cityInput,
body .search-card form select#priceRange,
.search-card form input#searchQuery,
.search-card form select#sportSelect,
.search-card form input#cityInput,
.search-card form select#priceRange,
input#searchQuery,
select#sportSelect,
input#cityInput,
select#priceRange {
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.98) 0%, rgba(248, 250, 252, 0.95) 100%) !important;
    border: 2px solid rgba(59, 130, 246, 0.6) !important;
    border-radius: 12px !important;
    padding: 1rem !important;
    font-size: 1rem !important;
    color: #334155 !important;
    box-shadow: 0 4px 15px rgba(59, 130, 246, 0.15), 0 2px 8px rgba(30, 64, 175, 0.1) !important;
    height: calc(3.5rem + 2px) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    font-weight: 500 !important;
    outline: none !important;
}

/* FOCUS SUR LES CHAMPS SPÉCIFIQUES - EFFET ÉLÉGANT */
html body section.search-section div.search-card form div.form-floating input#searchQuery:focus,
html body section.search-section div.search-card form div.form-floating select#sportSelect:focus,
html body section.search-section div.search-card form div.form-floating input#cityInput:focus,
html body section.search-section div.search-card form div.form-floating select#priceRange:focus,
html body .search-card form input#searchQuery:focus,
html body .search-card form select#sportSelect:focus,
html body .search-card form input#cityInput:focus,
html body .search-card form select#priceRange:focus,
body .search-card form input#searchQuery:focus,
body .search-card form select#sportSelect:focus,
body .search-card form input#cityInput:focus,
body .search-card form select#priceRange:focus,
.search-card form input#searchQuery:focus,
.search-card form select#sportSelect:focus,
.search-card form input#cityInput:focus,
.search-card form select#priceRange:focus,
input#searchQuery:focus,
select#sportSelect:focus,
input#cityInput:focus,
select#priceRange:focus {
    border-color: #3b82f6 !important;
    box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.25), 0 6px 25px rgba(59, 130, 246, 0.2) !important;
    outline: none !important;
    transform: translateY(-3px) scale(1.02) !important;
    background: linear-gradient(145deg, rgba(255, 255, 255, 1) 0%, rgba(248, 250, 252, 1) 100%) !important;
    border-width: 3px !important;
}

/* HOVER SUR LES CHAMPS - EFFET SUBTIL */
html body section.search-section div.search-card form div.form-floating input#searchQuery:hover:not(:focus),
html body section.search-section div.search-card form div.form-floating select#sportSelect:hover:not(:focus),
html body section.search-section div.search-card form div.form-floating input#cityInput:hover:not(:focus),
html body section.search-section div.search-card form div.form-floating select#priceRange:hover:not(:focus),
html body .search-card form input#searchQuery:hover:not(:focus),
html body .search-card form select#sportSelect:hover:not(:focus),
html body .search-card form input#cityInput:hover:not(:focus),
html body .search-card form select#priceRange:hover:not(:focus),
body .search-card form input#searchQuery:hover:not(:focus),
body .search-card form select#sportSelect:hover:not(:focus),
body .search-card form input#cityInput:hover:not(:focus),
body .search-card form select#priceRange:hover:not(:focus),
.search-card form input#searchQuery:hover:not(:focus),
.search-card form select#sportSelect:hover:not(:focus),
.search-card form input#cityInput:hover:not(:focus),
.search-card form select#priceRange:hover:not(:focus),
input#searchQuery:hover:not(:focus),
select#sportSelect:hover:not(:focus),
input#cityInput:hover:not(:focus),
select#priceRange:hover:not(:focus) {
    border-color: rgba(59, 130, 246, 0.8) !important;
    box-shadow: 0 6px 20px rgba(59, 130, 246, 0.18), 0 3px 10px rgba(30, 64, 175, 0.12) !important;
    transform: translateY(-2px) scale(1.01) !important;
    background: linear-gradient(145deg, rgba(255, 255, 255, 1) 0%, rgba(248, 250, 252, 0.98) 100%) !important;
}

/* LABELS SPÉCIFIQUES AVEC STYLES ÉLÉGANTS */
html body section.search-section div.search-card form div.form-floating label[for="searchQuery"],
html body section.search-section div.search-card form div.form-floating label[for="sportSelect"],
html body section.search-section div.search-card form div.form-floating label[for="cityInput"],
html body section.search-section div.search-card form div.form-floating label[for="priceRange"],
html body .search-card form label[for="searchQuery"],
html body .search-card form label[for="sportSelect"],
html body .search-card form label[for="cityInput"],
html body .search-card form label[for="priceRange"],
body .search-card form label[for="searchQuery"],
body .search-card form label[for="sportSelect"],
body .search-card form label[for="cityInput"],
body .search-card form label[for="priceRange"],
.search-card form label[for="searchQuery"],
.search-card form label[for="sportSelect"],
.search-card form label[for="cityInput"],
.search-card form label[for="priceRange"],
label[for="searchQuery"],
label[for="sportSelect"],
label[for="cityInput"],
label[for="priceRange"] {
    color: #64748b !important;
    font-weight: 600 !important;
    font-size: 0.95rem !important;
    transition: all 0.3s ease !important;
    text-shadow: 0 1px 2px rgba(100, 116, 139, 0.1) !important;
}

/* LABELS AU FOCUS - COULEUR BLEUE ÉLÉGANTE */
html body section.search-section div.search-card form div.form-floating input#searchQuery:focus ~ label[for="searchQuery"],
html body section.search-section div.search-card form div.form-floating select#sportSelect:focus ~ label[for="sportSelect"],
html body section.search-section div.search-card form div.form-floating input#cityInput:focus ~ label[for="cityInput"],
html body section.search-section div.search-card form div.form-floating select#priceRange:focus ~ label[for="priceRange"],
html body section.search-section div.search-card form div.form-floating input#searchQuery:not(:placeholder-shown) ~ label[for="searchQuery"],
html body section.search-section div.search-card form div.form-floating input#cityInput:not(:placeholder-shown) ~ label[for="cityInput"],
html body .search-card form input#searchQuery:focus ~ label,
html body .search-card form select#sportSelect:focus ~ label,
html body .search-card form input#cityInput:focus ~ label,
html body .search-card form select#priceRange:focus ~ label,
body .search-card form input#searchQuery:focus ~ label,
body .search-card form select#sportSelect:focus ~ label,
body .search-card form input#cityInput:focus ~ label,
body .search-card form select#priceRange:focus ~ label,
.search-card form input#searchQuery:focus ~ label,
.search-card form select#sportSelect:focus ~ label,
.search-card form input#cityInput:focus ~ label,
.search-card form select#priceRange:focus ~ label {
    color: #3b82f6 !important;
    font-weight: 700 !important;
    transform: scale(0.95) translateY(-2px) !important;
    text-shadow: 0 2px 4px rgba(59, 130, 246, 0.2) !important;
}

/* CONTENEURS FORM-FLOATING AVEC ESPACEMENT ÉLÉGANT */
html body section.search-section div.search-card form div.form-floating,
html body .search-card form div.form-floating,
body .search-card form div.form-floating,
.search-card form div.form-floating,
.search-card .form-floating {
    margin-bottom: 1.75rem !important;
    position: relative !important;
}

/* EFFET GLOW SUBTIL SUR LES CONTENEURS */
html body section.search-section div.search-card form div.form-floating:hover,
html body .search-card form div.form-floating:hover,
body .search-card form div.form-floating:hover,
.search-card form div.form-floating:hover {
    transform: translateY(-1px) !important;
    transition: all 0.3s ease !important;
}

/* SURCHARGE DE TOUS LES STYLES BOOTSTRAP */
* input.form-control,
* select.form-select,
* .form-control,
* .form-select {
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.98) 0%, rgba(248, 250, 252, 0.95) 100%) !important;
    border: 2px solid rgba(59, 130, 246, 0.6) !important;
    border-radius: 12px !important;
    padding: 1rem !important;
    font-size: 1rem !important;
    color: #334155 !important;
    box-shadow: 0 4px 15px rgba(59, 130, 246, 0.15) !important;
    height: calc(3.5rem + 2px) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

* input.form-control:focus,
* select.form-select:focus,
* .form-control:focus,
* .form-select:focus {
    border-color: #3b82f6 !important;
    box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.25), 0 6px 25px rgba(59, 130, 246, 0.2) !important;
    outline: none !important;
    transform: translateY(-3px) scale(1.02) !important;
    background: linear-gradient(145deg, rgba(255, 255, 255, 1) 0%, rgba(248, 250, 252, 1) 100%) !important;
}

* input.form-control:hover:not(:focus),
* select.form-select:hover:not(:focus),
* .form-control:hover:not(:focus),
* .form-select:hover:not(:focus) {
    border-color: rgba(59, 130, 246, 0.8) !important;
    box-shadow: 0 6px 20px rgba(59, 130, 246, 0.18) !important;
    transform: translateY(-2px) scale(1.01) !important;
}
