/* ===========================================
   PDF to Excel - Utilities & Responsive (Part 4)
   =========================================== */

/* ===== Payment Failed ===== */
.p2e-payment-failed {
    text-align: center;
    padding: 25px;
}

.p2e-payment-failed-icon svg {
    stroke: var(--p2e-red);
}

.p2e-payment-failed h4 {
    color: var(--p2e-red);
    margin: 15px 0 8px;
    font-size: 18px;
}

.p2e-payment-failed p {
    color: var(--p2e-text-light);
    font-size: 14px;
}

.p2e-retry-payment-btn {
    margin-top: 15px;
}

.p2e-connection-error {
    color: #856404;
    background: #fff3cd;
    padding: 12px;
    border-radius: var(--p2e-radius-sm);
    margin: 15px 0;
    font-size: 14px;
}

.p2e-hidden {
    display: none !important;
}

.p2e-btn .p2e-spinner {
    vertical-align: middle;
}

/* ===== Error Messages ===== */
.p2e-error {
    background: var(--p2e-red-light);
    color: var(--p2e-red-dark);
    padding: 12px 16px;
    border-radius: var(--p2e-radius-sm);
    font-size: 14px;
    margin-top: 12px;
    text-align: center;
}

.p2e-success {
    background: #d4edda;
    color: #155724;
    padding: 12px 16px;
    border-radius: var(--p2e-radius-sm);
    font-size: 14px;
    margin-top: 12px;
    text-align: center;
}

/* ===== Responsive ===== */
@media (max-width: 600px) {
    .p2e-container {
        margin: 0;
    }

    .p2e-steps {
        padding: 0;
    }

    .p2e-header {
        padding: 25px 20px;
    }

    .p2e-title {
        font-size: 22px;
    }

    .p2e-card {
        padding: 20px;
    }

    .p2e-upload-zone {
        padding: 30px 20px;
    }

    .p2e-step-connector {
        width: 25px;
    }

    .p2e-tracking-form {
        flex-direction: column;
    }

    .p2e-download-buttons {
        flex-direction: column;
    }

    /* ---- Prevent filename overflow on mobile ---- */
    .p2e-file-info {
        flex-wrap: nowrap;
        gap: 8px;
    }

    .p2e-price-row,
    .p2e-summary-row {
        gap: 6px;
    }

    #p2e-display-filename,
    #p2e-pay-filename {
        max-width: 60%;
    }

    .p2e-file-name {
        max-width: 100%;
    }
}
