/* =====================================================
   SmartCLN Booking Form – UX Polish (Phase 7)
===================================================== */

#smartcln-booking-form {
    max-width: 620px;
    margin: 30px auto;
    padding: 25px;
    background: #ffffff;
    border: 1px solid #e2e2e2;
    border-radius: 8px;
    box-shadow: 0 4px 14px rgba(0,0,0,0.06);
}

#smartcln-booking-form h3 {
    margin-top: 0;
    margin-bottom: 20px;
    font-size: 22px;
    font-weight: 600;
}

#smartcln-form p {
    margin-bottom: 16px;
}

#smartcln-form label {
    font-weight: 600;
    display: block;
    margin-bottom: 6px;
}

#smartcln-form input[type="text"],
#smartcln-form input[type="number"],
#smartcln-form input[type="datetime-local"],
#smartcln-form select {
    width: 100%;
    padding: 10px 12px;
    border-radius: 4px;
    border: 1px solid #ccc;
    font-size: 14px;
}

#smartcln-form select:focus,
#smartcln-form input:focus {
    border-color: #2271b1;
    outline: none;
}

/* Buttons */

#smartcln-preview {
    background: #f0f0f0;
}

#smartcln-book-pay {
    width: 100%;
    font-size: 16px;
    padding: 12px;
}

#smartcln-book-pay[disabled] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Quote box */

#smartcln-quote {
    margin-top: 15px;
    padding: 14px;
    background: #f7fbff;
    border: 1px solid #cfe5ff;
    border-radius: 6px;
    font-size: 16px;
}

#smartcln-price {
    font-weight: bold;
    color: #2271b1;
}

/* Loading state */

.smartcln-loading {
    opacity: 0.6;
    pointer-events: none;
}

/* Mobile */

@media (max-width: 600px) {
    #smartcln-booking-form {
        padding: 18px;
    }
}
