/* Acesso ao acompanhamento exibido enquanto o pagamento aguarda confirmação. */
.app-payment-followup {
    position: relative;
    min-width: 0;
    margin: 16px 0 6px;
    padding: 14px;
    overflow: hidden;
    border: 1px solid var(--mx-border-h, rgba(255, 255, 255, .12));
    border-radius: var(--mx-r-input, 12px);
    background: var(--mx-glass-bg, rgba(17, 17, 17, .78));
    box-shadow: inset 3px 0 0 var(--mx-warn, #f59e0b);
}

.app-payment-followup__head {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.app-payment-followup__icon {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid var(--mx-border-h, rgba(255, 255, 255, .12));
    border-radius: var(--mx-r-pill, 999px);
    color: var(--mx-warn, #f59e0b);
    background: var(--mx-surface-l, #1a1a1a);
}

.app-payment-followup__icon svg {
    width: 18px;
    height: 18px;
}

.app-payment-followup__copy {
    min-width: 0;
}

.app-payment-followup__eyebrow {
    display: block;
    margin: 0 0 2px;
    color: var(--mx-warn, #f59e0b);
    font-size: .66rem;
    font-weight: 800;
    line-height: 1.25;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.app-payment-followup__title {
    display: block;
    margin: 0;
    color: var(--mx-text, #fff);
    font-family: var(--mx-font-h, 'Plus Jakarta Sans', system-ui, sans-serif);
    font-size: .9rem;
    font-weight: 700;
    line-height: 1.35;
}

.app-payment-followup__intro {
    margin: 4px 0 0;
    color: var(--mx-text-mid, #a0a0a0);
    font-size: .74rem;
    line-height: 1.5;
}

.app-payment-followup__access {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 8px;
    margin-top: 12px;
}

.app-payment-followup__credential {
    min-width: 0;
    padding: 9px 10px;
    border: 1px solid var(--mx-border, rgba(255, 255, 255, .06));
    border-radius: var(--mx-r-sm, 8px);
    background: var(--mx-surface-l, #1a1a1a);
}

.app-payment-followup__credential span {
    display: block;
    margin-bottom: 2px;
    color: var(--mx-text-mid, #a0a0a0);
    font-size: .65rem;
    font-weight: 600;
    line-height: 1.35;
}

.app-payment-followup__credential strong {
    display: block;
    min-width: 0;
    overflow-wrap: anywhere;
    color: var(--mx-text, #fff);
    font-size: .74rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    line-height: 1.4;
}

.app-payment-followup__steps {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin: 12px 0 0;
    padding: 0;
    list-style: none;
}

.app-payment-followup__steps li {
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr);
    gap: 7px;
    align-items: start;
    min-width: 0;
}

.app-payment-followup__step-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border: 1px solid var(--mx-border-h, rgba(255, 255, 255, .12));
    border-radius: var(--mx-r-pill, 999px);
    color: var(--mx-green, #00e676);
    background: var(--mx-green-dim, rgba(0, 230, 118, .15));
    font-size: .64rem;
    font-weight: 800;
    line-height: 1;
}

.app-payment-followup__steps p {
    margin: 1px 0 0;
    color: var(--mx-text-mid, #a0a0a0);
    font-size: .68rem;
    line-height: 1.45;
}

.app-payment-followup__steps strong {
    color: var(--mx-text, #fff);
    font-weight: 700;
}

.app-payment-followup__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-top: 12px;
}

.app-payment-followup__action,
.app-payment-followup__actions .co-link-out {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    margin: 0;
    padding: 0 13px;
    border: 1px solid var(--mx-border-h, rgba(255, 255, 255, .12));
    border-radius: var(--mx-r-pill, 999px);
    color: var(--mx-text, #fff);
    background: var(--mx-surface-l, #1a1a1a);
    font: 700 .72rem/1.2 var(--mx-font, 'Inter', system-ui, sans-serif);
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    transition: border-color .15s, background-color .15s, color .15s, transform .15s;
}

.app-payment-followup__action:hover,
.app-payment-followup__actions .co-link-out:hover {
    border-color: var(--mx-border-h, rgba(255, 255, 255, .12));
    color: var(--mx-green, #00e676);
    transform: translateY(-1px);
}

.app-payment-followup__action--primary,
.app-payment-followup__actions .co-link-out.app-payment-followup__action--primary {
    border-color: var(--mx-green, #00e676);
    color: var(--mx-bg, #0a0a0a);
    background: var(--mx-green, #00e676);
}

.app-payment-followup__action--primary:hover,
.app-payment-followup__actions .co-link-out.app-payment-followup__action--primary:hover {
    color: var(--mx-bg, #0a0a0a);
    background: var(--mx-green, #00e676);
}

.app-payment-followup__action:focus-visible,
.app-payment-followup__actions .co-link-out:focus-visible {
    outline: 2px solid var(--mx-green, #00e676);
    outline-offset: 2px;
}

.app-payment-followup__action:disabled {
    cursor: not-allowed;
    opacity: .5;
    transform: none;
}

.app-payment-followup--guard {
    margin-top: 12px;
    border-color: color-mix(in srgb, var(--mx-warn, #f59e0b) 38%, transparent);
    background: color-mix(in srgb, var(--mx-warn, #f59e0b) 7%, var(--mx-glass-bg, rgba(17, 17, 17, .78)));
}

.app-payment-followup--tracking {
    margin: 12px 0;
}

.app-payment-followup__note {
    margin: 10px 0 0;
    color: var(--mx-text-mid, #a0a0a0);
    font-size: .68rem;
    font-weight: 600;
    line-height: 1.45;
}

.app-payment-followup__note strong {
    color: var(--mx-text, #fff);
    font-weight: 700;
    overflow-wrap: anywhere;
}

@media (max-width: 760px) {
    .app-payment-followup__steps {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 520px) {
    .app-payment-followup {
        padding: 13px 12px;
    }

    .app-payment-followup__access {
        grid-template-columns: minmax(0, 1fr);
    }

    .app-payment-followup__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .app-payment-followup__action,
    .app-payment-followup__actions .co-link-out {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .app-payment-followup__action,
    .app-payment-followup__actions .co-link-out {
        transition: none;
    }
}
