/* Estilos específicos para o formulário de passageiros ClubMed */

/* Seção de passageiro */
.passenger-section {
    margin-bottom: 2rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--border-color);
}

.passenger-section:last-of-type {
    border-bottom: none;
}

/* Subtítulos de seção */
.section-subtitle {
    color: var(--text-secondary);
    font-size: 0.9rem;
    font-weight: 500;
    margin-top: 1.5rem;
    margin-bottom: 1rem;
    padding-left: 10px;
    border-left: 2px solid var(--primary-color);
}

/* Checkbox para mesmo endereço */
.same-address-check {
    background-color: rgba(230, 57, 70, 0.1);
    padding: 0.8rem 1rem;
    border-radius: 8px;
    margin-bottom: 1.5rem;
}

.same-address-check label {
    margin-bottom: 0 !important;
}

/* Hidden class */
.hidden {
    display: none !important;
}

/* Tabela de revisão */
.review-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 1rem;
    font-size: 0.9rem;
}

.review-table th,
.review-table td {
    padding: 0.8rem;
    text-align: left;
    border: 1px solid var(--border-color);
}

.review-table th {
    background-color: var(--bg-dark);
    color: var(--text-secondary);
    font-weight: 500;
    white-space: nowrap;
}

.review-table td {
    background-color: rgba(0, 0, 0, 0.2);
}

.review-table tr:hover td {
    background-color: rgba(230, 57, 70, 0.1);
}

/* Responsividade da tabela */
@media (max-width: 768px) {
    .review-table {
        font-size: 0.75rem;
    }

    .review-table th,
    .review-table td {
        padding: 0.5rem;
    }

    /* Scroll horizontal para a tabela */
    #summaryTableContainer {
        overflow-x: auto;
    }
}

/* Animação suave ao mostrar passageiros */
.passenger-section {
    animation: slideDown 0.3s ease-out;
}

@keyframes slideDown {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Campos desabilitados (quando usa mesmo endereço) */
input:disabled,
select:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    background-color: var(--bg-light-dark) !important;
}

/* Success box customizado */
#successContainer .success-box {
    text-align: center;
    padding: 3rem 2rem;
}

#successContainer .success-box h2 {
    margin-bottom: 1rem;
}

#successContainer .success-box p {
    color: var(--text-secondary);
    font-size: 1.1rem;
}