.payment-header {
    color: white;
    border: none;
    border-radius: 0.5rem 0.5rem 0 0;
}

.payment-method-btn {
    transition: all 0.3s ease;
    border: 2px solid transparent;
}

.payment-method-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

.payment-method-btn.active {
    border-color: #007bff;
    background-color: #e7f3ff;
}

.qr-code-container img {
    border-radius: 4px;
}

@media (max-width: 768px) {
    /* 手机模式下弹窗更紧凑 - 覆盖内联样式 */
    #paymentModal.modal .modal-dialog,
    #paymentModal #paymentModalDialog {
        margin: 0.5rem !important;
        max-width: calc(100% - 1rem) !important;
    }
    
    /* 弹窗头部紧凑 */
    #paymentModal .modal-header,
    #paymentModal #paymentModalHeader {
        padding: 0.5rem 0.75rem !important;
    }
    
    #paymentModal .payment-header .payment-icon {
        margin-right: 0.5rem !important;
    }
    
    #paymentModal .payment-header .payment-icon .badge,
    #paymentModal #paymentAmount {
        font-size: 0.85rem !important;
        min-width: 40px !important;
        height: 28px !important;
        padding: 0.25rem 0.5rem !important;
    }
    
    #paymentModal .modal-title,
    #paymentModal #paymentModalLabel {
        font-size: 0.9rem !important;
    }
    
    #paymentModal .modal-header .btn-sm {
        padding: 0.25rem 0.4rem !important;
        font-size: 0.75rem !important;
    }
    
    /* 弹窗主体紧凑 */
    #paymentModal .modal-body {
        padding: 0.75rem !important;
    }
    
    /* 订单信息区域紧凑 */
    #paymentModal .bg-light.rounded {
        padding: 0.5rem !important;
    }
    
    #paymentModal #paymentTitle {
        font-size: 0.85rem !important;
        line-height: 1.3 !important;
    }
    
    /* 文档标题紧凑 */
    #paymentModal #documentTitle {
        margin-top: 0.5rem !important;
    }
    
    #paymentModal #documentTitleText {
        font-size: 0.7rem !important;
    }
    
    /* 环境提示紧凑 */
    #paymentModal #environmentTip {
        padding: 0.4rem 0.6rem !important;
        margin-bottom: 0.75rem !important;
        font-size: 0.75rem !important;
    }
    
    /* VIP套餐：一行两个，高度随内容，不被 gap 挤成单列 */
    #paymentModal .vip-levels {
        margin-bottom: 0.75rem !important;
        min-height: auto !important;
    }

    #paymentModal .vip-levels .row {
        --bs-gutter-x: 0.5rem;
        --bs-gutter-y: 0.5rem;
    }

    #paymentModal .vip-levels .vip-level-col,
    #paymentModal .vip-levels .col-6 {
        flex: 0 0 50%;
        max-width: 50%;
        width: 50%;
    }
    
    /* 购买次数选择区域紧凑 */
    #paymentModal .quota-counts {
        margin-bottom: 0.75rem !important;
        min-height: auto !important;
    }
    
    #paymentModal .quota-counts small {
        font-size: 0.75rem !important;
        margin-bottom: 0.5rem !important;
    }
    
    /* 购买次数按钮紧凑 */
    #paymentModal .quota-count-btn {
        height: 55px !important;
        font-size: 0.75rem !important;
        padding: 0.25rem !important;
    }
    
    #paymentModal .quota-count-btn .fw-bold {
        font-size: 0.95rem !important;
        margin-bottom: 0.15rem !important;
    }
    
    #paymentModal .quota-count-btn small {
        font-size: 0.7rem !important;
    }
    
    #paymentModal .vip-level-btn {
        height: auto !important;
        min-height: 0 !important;
        font-size: 0.72rem !important;
        padding: 0.45rem 0.3rem !important;
        white-space: normal !important;
    }

    #paymentModal .vip-level-btn .vip-level-name {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 100%;
    }

    #paymentModal .vip-level-meta {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 0.1rem 0.35rem;
    }
    
    /* 支付方式按钮紧凑 */
    #paymentModal .payment-method-btn,
    #paymentModal [data-payment-method] {
        height: 45px !important;
        font-size: 0.75rem !important;
        padding: 0.25rem !important;
    }
    
    #paymentModal .payment-method-btn i,
    #paymentModal [data-payment-method] i {
        font-size: 0.9rem !important;
        margin-bottom: 0.15rem !important;
    }
    
    /* 二维码区域紧凑 */
    #paymentModal .qr-code-container {
        height: 120px !important;
        padding: 0.5rem !important;
    }
    
    #paymentModal #qrTitle {
        font-size: 0.75rem !important;
        margin-top: 0.5rem !important;
    }
    
    /* 余额支付区域紧凑 */
    #paymentModal #balanceState {
        padding: 0.5rem 0 !important;
    }
    
    /* 手机模式下隐藏钱包图标 */
    #paymentModal #balanceState .fas.fa-wallet {
        display: none !important;
    }
    
    #paymentModal #balanceState h6 {
        font-size: 0.85rem !important;
        margin-bottom: 0.5rem !important;
    }
    
    #paymentModal .balance-info {
        margin-bottom: 0.75rem !important;
    }
    
    #paymentModal .balance-item small {
        font-size: 0.7rem !important;
    }
    
    #paymentModal .balance-amount,
    #paymentModal .payment-amount {
        font-size: 0.85rem !important;
    }
    
    #paymentModal .balance-status .alert {
        padding: 0.4rem 0.6rem !important;
        font-size: 0.75rem !important;
        margin-bottom: 0.5rem !important;
    }
    
    #paymentModal .balance-actions .btn {
        font-size: 0.8rem !important;
        padding: 0.35rem 0.6rem !important;
    }
    
    /* 支付提示紧凑 */
    #paymentModal #paymentTip {
        padding: 0.5rem 0 !important;
    }
    
    #paymentModal #paymentTip .spinner-border {
        width: 0.9rem !important;
        height: 0.9rem !important;
    }
    
    #paymentModal #paymentTipText {
        font-size: 0.8rem !important;
    }
    
    /* 减少各区域间距 */
    #paymentModal .row.mb-2,
    #paymentModal .row.mb-3 {
        margin-bottom: 0.75rem !important;
    }
}
.btn:disabled, .btn.disabled, fieldset:disabled .btn {
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
}