.details__payment-buttons {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
    margin-top: 20px;
}

.payment-method-btn {
    width: 190px;
    height: 190px;
    border: 2px solid #ddd;
    border-radius: 12px;
    background-color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-size: 18px;
    font-weight: 600;
    color: #333;
    text-align: center;
    padding: 10px;
    transition:
        background-color 0.05s linear,
        color 0.05s linear,
        border-color 0.05s linear,
        transform 0.2s ease-in-out,
        box-shadow 0.2s ease-in-out;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
    outline: none;               /* ← убираем системную обводку */
}

.payment-method-btn:focus {
    outline: none !important;    /* ← гарантированно убираем у фокуса */
    box-shadow: none !important;
}

.payment-method-btn img {
    width: calc(100% - 50px); /* ширина минус паддинги слева и справа */
    margin: 3px;             /* отступы со всех сторон */
    box-sizing: border-box;   /* чтобы паддинги не ломали расчет ширины */
    border-radius: 6px;       /* можно добавить для эстетики */
}

/* Hover — только лёгкая тень */
.payment-method-btn:hover {
    background-color: #fff;
    /*transform: translateY(2px);*/
    border-color: #aaa;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
}

/* Активная — плавно синяя, белый текст */
.payment-method-btn.active {
    background-color: #337ed3;
    border-color: #aaa;
    color: #fff;
    /*transform: translateY(2px);*/
}

#giftcard-balance {
    font-size: 16px;
    margin: 6px 0 12px 0;
    height:20px;
}

.payment-summary, .bonus_balance {
    text-align: center;
    margin: 10px 0 15px;
}

.summary-label {
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 4px;
}

#giftcard-total-summary { /* общая сумма (крупная) */
    font-size: 24px;
    font-weight: 800;
    margin-bottom: 10px;
}

.split-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
}

.amount-large {
    font-size: 24px;
    font-weight: 800;
}
.amount-small {
    font-size: 18px;
    font-weight: 700;
}

.method-label {
    font-size: 15px;
    font-weight: 600;
    color: #555;
    line-height: 1.3;
}

.balance_loading {
    color: grey;
    font-style: italic;
    font-weight: bold;
}

#giftcard-input-group {
    margin-top: 20px;
    height: 100px;
}
#pushka-input-group {
    margin-top: 16px;
}




@media (max-width: 1200px) {
    .payment-method-btn {
        width: 160px;
        height: 160px;
        font-size: 16px;
        padding: 8px;
    }

    .payment-method-btn img {
        width: calc(100% - 40px); /* чуть меньше из-за паддингов */
        margin: 3px;
        box-sizing: border-box;
    }
}
@media (max-width: 768px) {
    .details__payment-buttons {
        flex-direction: column;     /* кнопки одна под другой */
        align-items: stretch;       /* растянуть на всю ширину контейнера */
        gap: 10px;
        padding: 0 16px;
        box-sizing: border-box;
    }

    .payment-method-btn {
        width: 100%;
        max-width: none;
        height: auto;
        padding: 12px 16px;
        font-size: 17px;
        flex-direction: row;        /* иконка слева, текст справа */
        justify-content: flex-start;
        border-radius: 10px;
        text-align: left;
        gap: 12px;
    }

    .payment-method-btn img {
        width: 48px;
        height: 48px;
        margin-bottom: 0;
    }
}
