/*
 * Ingressos MS — ETAPA 1
 * Ajuste visual do Wizard v1.0.2
 *
 * Objetivo:
 * - manter as 5 etapas na mesma linha no desktop;
 * - aumentar a altura dos blocos;
 * - permitir mais quebras de linha no texto;
 * - evitar sobreposição entre ícone, título e descrição;
 * - eliminar rolagem horizontal.
 */

.ims-event-wizard {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
}

.ims-event-wizard .fi-sc-wizard-header {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: 0 !important;
    overflow: visible !important;
}

.ims-event-wizard .fi-sc-wizard-header-step {
    width: 100% !important;
    min-width: 0 !important;
    display: block !important;
}

.ims-event-wizard .fi-sc-wizard-header-step-button {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 126px !important;
    height: 100% !important;
    padding: 18px 16px !important;

    display: grid !important;
    grid-template-columns: 42px minmax(0, 1fr) !important;
    grid-template-rows: auto 1fr !important;
    column-gap: 12px !important;
    row-gap: 4px !important;

    align-items: start !important;
    align-content: start !important;
}

.ims-event-wizard .fi-sc-wizard-header-step-button > * {
    min-width: 0 !important;
    max-width: 100% !important;
}

/* Mantém o ícone em sua própria coluna */
.ims-event-wizard .fi-sc-wizard-header-step-icon,
.ims-event-wizard .fi-sc-wizard-header-step-button > svg,
.ims-event-wizard .fi-sc-wizard-header-step-button > span:first-child {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    align-self: start !important;
}

/* Texto em coluna separada */
.ims-event-wizard .fi-sc-wizard-header-step-label {
    grid-column: 2 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    line-height: 1.25 !important;
    margin: 0 !important;
}

.ims-event-wizard .fi-sc-wizard-header-step-description {
    grid-column: 2 !important;
    grid-row: 2 !important;
    min-width: 0 !important;
    max-width: 17ch !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    line-height: 1.35 !important;
    margin: 0 !important;
}

/* Remove separadores que empurravam/espremiam os textos */
.ims-event-wizard .fi-sc-wizard-header-step-separator {
    display: none !important;
}

/* Garante que o cabeçalho não crie barra de rolagem horizontal */
.ims-event-wizard .fi-sc-wizard-header,
.ims-event-wizard .fi-sc-wizard-header-step,
.ims-event-wizard .fi-sc-wizard-header-step-button {
    overflow-x: visible !important;
}

/* Desktop intermediário: mantém 5 colunas, mas aumenta mais a altura */
@media (max-width: 1500px) {
    .ims-event-wizard .fi-sc-wizard-header-step-button {
        min-height: 138px !important;
        padding: 16px 12px !important;
        grid-template-columns: 38px minmax(0, 1fr) !important;
        column-gap: 10px !important;
    }

    .ims-event-wizard .fi-sc-wizard-header-step-description {
        max-width: 14ch !important;
    }
}

/* Tablet: 3 colunas, sem scroll */
@media (max-width: 1050px) {
    .ims-event-wizard .fi-sc-wizard-header {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    .ims-event-wizard .fi-sc-wizard-header-step-button {
        min-height: 105px !important;
    }

    .ims-event-wizard .fi-sc-wizard-header-step-description {
        max-width: 24ch !important;
    }
}

/* Mobile: uma etapa por linha */
@media (max-width: 720px) {
    .ims-event-wizard .fi-sc-wizard-header {
        grid-template-columns: 1fr !important;
    }

    .ims-event-wizard .fi-sc-wizard-header-step-button {
        min-height: 82px !important;
        padding: 12px 14px !important;
        grid-template-columns: 38px minmax(0, 1fr) !important;
    }

    .ims-event-wizard .fi-sc-wizard-header-step-description {
        max-width: none !important;
    }
}
