
/* Enhanced form input focus effects */
.form-control:focus {
    border-color: #3498db !important;
    box-shadow: 0 0 0 0.2rem rgba(52, 152, 219, 0.25) !important;
    background: white !important;
    transform: translateY(-1px);
}

/* Button hover effects */
#send_button_pre:hover, #send_button:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(46, 204, 113, 0.4) !important;
}

#send_button_cancel:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(231, 76, 60, 0.4) !important;
}

/* Card hover effects */
.card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(0,0,0,0.15) !important;
}

/* Add team button hover */
.add_another_team_button:hover {
    background: #3498db !important;
    color: white !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(52, 152, 219, 0.3);
}

/* Header button hover */
.btn-outline-light:hover {
    background: white !important;
    color: #667eea !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(255, 255, 255, 0.3);
}

/* Smooth transitions for all interactive elements */
* {
    transition: all 0.3s ease;
}

/* Enhanced alert styling */
.alert {
    border-radius: 10px !important;
    border: none !important;
}

/* Better spacing for form sections */
.form-group {
    margin-bottom: 25px;
}

/* Enhanced checkbox styling */
input[type=checkbox] + label {
    border-radius: 50px;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border: 2px solid #e1e8ed;
    transition: all 0.3s ease;
}

input[type=checkbox] + label:hover {
    background: linear-gradient(135deg, #e9ecef 0%, #dee2e6 100%);
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}

input[type=checkbox]:checked + label {
    background: linear-gradient(135deg, #27ae60 0%, #2ecc71 100%);
    border-color: #27ae60;
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(46, 204, 113, 0.3);
}

/* Enhanced page background */
body {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    min-height: 100vh;
}

/* Smooth page transitions */
.page-header {
    transition: all 0.3s ease;
}

/* Enhanced form container hover */
.invitation_form_frame:hover {
    transform: translateY(-2px);
}

/* Better link styling */
a {
    transition: all 0.3s ease;
}

a:hover {
    text-decoration: none;
    transform: translateY(-1px);
}

/* Enhanced image hover effects */
img:hover {
    transform: scale(1.02);
    transition: all 0.3s ease;
}

/* Better list item hover effects */
li:hover {
    transform: translateX(5px);
    transition: all 0.3s ease;
}

/* Enhanced select dropdown styling */
select:focus {
    border-color: #3498db !important;
    box-shadow: 0 0 0 0.2rem rgba(52, 152, 219, 0.25) !important;
    transform: translateY(-1px);
}

/* Better textarea styling */
textarea:focus {
    border-color: #3498db !important;
    box-shadow: 0 0 0 0.2rem rgba(52, 152, 219, 0.25) !important;
    background: white !important;
    transform: translateY(-1px);
}

/* Enhanced popover styling */
.popover {
    border-radius: 10px !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.15) !important;
    border: none !important;
}

/* Better table styling */
table {
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}

/* Enhanced scrollbar styling */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 4px;
}

::-webkit-scrollbar-thumb {
    background: #3498db;
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: #2980b9;
}

/* Better mobile responsiveness */
@media (max-width: 768px) {
    .card {
        margin-bottom: 20px;
    }
    
    .form-control {
        font-size: 16px; /* Prevents zoom on iOS */
    }
    
    /* Application found section mobile styles */
    .application-found-container {
        padding: 20px !important;
        margin-bottom: 20px !important;
    }
    
    .application-header {
        flex-direction: column !important;
        text-align: center !important;
        margin-bottom: 20px !important;
    }
    
    .application-icon {
        margin-right: 0 !important;
        margin-bottom: 10px !important;
    }
    
    .application-details-grid {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }
    
    .application-detail-item {
        flex-direction: column !important;
        align-items: flex-start !important;
        padding: 10px 0 !important;
    }
    
    .application-detail-item i {
        margin-right: 0 !important;
        margin-bottom: 5px !important;
    }
    
    .application-detail-item strong {
        margin-right: 0 !important;
        margin-bottom: 3px !important;
        display: block !important;
    }
    
    .application-detail-item span {
        word-break: break-word !important;
        overflow-wrap: break-word !important;
    }
    
    .teams-section {
        padding: 15px !important;
    }
    
    .team-item {
        flex-direction: column !important;
        align-items: flex-start !important;
        padding: 8px 0 !important;
    }
    
    .team-item i {
        margin-right: 0 !important;
        margin-bottom: 5px !important;
    }
    
    .team-item strong {
        margin-right: 0 !important;
        margin-bottom: 3px !important;
    }
    
    .team-item .fa-arrow-right {
        display: none !important;
    }
    
    .application-button {
        padding: 10px 20px !important;
        font-size: 14px !important;
    }
}

/* Enhanced loading states */
.btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    transform: none !important;
}

/* Better error styling */
.validate_error {
    border-color: #e74c3c !important;
    box-shadow: 0 0 0 0.2rem rgba(231, 76, 60, 0.25) !important;
    animation: shake 0.5s ease-in-out;
}

@keyframes shake {
    0%, 100% { transform: translateX(0); }
    25% { transform: translateX(-5px); }
    75% { transform: translateX(5px); }
}

/* Enhanced success states */
.success {
    border-color: #27ae60 !important;
    box-shadow: 0 0 0 0.2rem rgba(39, 174, 96, 0.25) !important;
}