.payment-select-card {
    border: 2px solid #ddd;
    border-radius: 8px;
    padding: 20px;
    width: 150px;
    text-align: center;
    cursor: pointer;
    transition: all 0.2s;
    background: #fff;
}

.payment-select-card:hover {
    border-color: #3b9cd3;
    background: #f0f8ff;
}

.payment-select-card.active {
    border-color: #3b9cd3;
    background: #e6f3fa;
    color: #3b9cd3;
    font-weight: bold;
}

.step2-input.text-dark {
    color: #333 !important;
}

.step2-input.text-dark::placeholder {
    color: #aaa !important;
}

/* ปรับ stepper (STEP 1/2/3/FINISH) ให้พอดีจอมือถือ — ลดขนาดฟอนต์/ความกว้าง ไม่ให้ข้อความซ้อนทับ */
@media (max-width: 767px) {
    /* กล่องสรุปราคา: บนมือถือจัด 2 คอลัมน์ (ซ้าย-ขวา) ให้มีระยะห่างแนวตั้ง */
    .summary-row {
        --bs-gutter-y: 1.25rem;
    }

    /* ลดช่องว่างระหว่างบรรทัดในฟอร์มจอง (สถานที่/วันที่/เวลา) ไม่ให้เลื่อนยาวเกิน */
    .blue-booking-area {
        padding: 20px 0 16px;
    }

    .blue-booking-area .row.g-4 {
        --bs-gutter-y: 0.6rem;
    }

    .blue-booking-area .row.mb-4 {
        margin-bottom: 0.6rem !important;
    }

    .blue-booking-area .form-label-white {
        margin-bottom: 4px;
    }

    .wizard-strip {
        padding: 20px 0 64px;
    }

    .wizard-row {
        max-width: 100%;
        padding: 0 6px;
    }

    .wizard-step,
    .step-dot {
        width: 18px;
    }

    .step-dot {
        height: 18px;
    }

    .step-content {
        width: 72px;
        top: 24px;
        left: 50%;
        transform: translateX(-50%);
        text-align: center;
    }

    .step-title {
        font-size: 0.72rem;
        margin-bottom: 2px;
    }

    .step-desc {
        font-size: 0.56rem;
        line-height: 1.15;
    }

    /* ขอบซ้าย/ขวา: ชิดเข้าด้านในไม่ให้ข้อความล้นจอ */
    #wiz-step-1 .step-content {
        left: 0;
        transform: none;
        text-align: left;
    }

    .wizard-step.step-finish .step-content {
        left: auto;
        right: 0;
        transform: none;
        text-align: right;
    }
}

/* popup เงื่อนไข/นโยบาย (PDPA): กันเนื้อหา CKEditor ล้นขอบขวา — บีบให้พอดีจอ + ตัดคำขึ้นบรรทัดใหม่ */
.pdpa-scroll-box {
    overflow-x: auto;
    overflow-wrap: break-word;
    word-wrap: break-word;
}

.pdpa-scroll-box * {
    max-width: 100%;
    box-sizing: border-box;
    overflow-wrap: break-word;
}

.pdpa-scroll-box img {
    height: auto;
}

.pdpa-scroll-box table {
    table-layout: fixed;
    width: 100%;
}

@media (max-width: 767px) {
    .pdpa-popup-content {
        width: 94%;
        height: 85vh;
        padding: 24px 16px;
    }

    .pdpa-scroll-box {
        padding-right: 8px;
        font-size: 0.9rem;
    }
}