/* Страница оплаты: способы оплаты (итог переиспользует checkout-page.css) */

.payment-methods__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.payment-methods__option {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    border-radius: var(--radius-md, 8px);
    border: 1px solid var(--color-border, rgba(0, 0, 0, 0.12));
    background: var(--color-surface, #fff);
    cursor: pointer;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.payment-methods__option:hover:not(.payment-methods__option--disabled) {
    border-color: var(--color-primary, #e85a1c);
    box-shadow: 0 0 0 1px rgba(232, 90, 28, 0.15);
}

.payment-methods__option--disabled {
    cursor: not-allowed;
    opacity: 0.65;
    background: var(--color-muted-bg, #f5f5f5);
}

.payment-methods__input {
    margin: 0;
    flex-shrink: 0;
    width: 1.125rem;
    height: 1.125rem;
    accent-color: var(--color-primary, #e85a1c);
}

.payment-methods__option--disabled .payment-methods__input {
    cursor: not-allowed;
}

/* Высота как у иконки — радио по центру, вровень с иконкой и первой строкой текста */
.payment-methods__control {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    align-self: flex-start;
    min-height: 2.5rem;
    width: 1.25rem;
}

.payment-methods__body {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    flex: 1 1 auto;
    min-width: 0;
}

.payment-methods__icon {
    flex-shrink: 0;
    width: 2.5rem;
    height: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-primary, #e85a1c);
}

.payment-methods__icon svg {
    width: 100%;
    height: 100%;
}

.payment-methods__option--disabled .payment-methods__icon {
    color: var(--color-text-muted, #888);
}

.payment-methods__main {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    flex: 1 1 auto;
    min-width: 0;
}

.payment-methods__label {
    font-weight: 500;
}

.payment-methods__hint {
    font-size: 0.8125rem;
    font-weight: 400;
    color: var(--color-text-muted, #666);
    line-height: 1.35;
}

.payment-methods__badge {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--color-text-muted, #666);
}

/* Чек после оплаты */
.payment-receipt-backdrop {
    position: fixed;
    inset: 0;
    z-index: 10060;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: rgba(0, 0, 0, 0.45);
    overflow-y: auto;
}

.payment-receipt-backdrop[hidden] {
    display: none;
}

.payment-receipt {
    width: 100%;
    max-width: 28rem;
    max-height: min(90vh, 42rem);
    overflow-y: auto;
    padding: 1.5rem 1.25rem;
    border-radius: var(--radius-md, 8px);
    background: var(--color-surface, #fff);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.2);
}

.payment-receipt__title {
    margin: 0 0 0.35rem;
    font-size: 1.35rem;
    font-weight: 500;
}

.payment-receipt__subtitle {
    margin: 0 0 1rem;
    font-size: 0.9rem;
    color: var(--color-text-muted, #666);
    line-height: 1.4;
}

.payment-receipt__block {
    margin-bottom: 1rem;
}

.payment-receipt__block:last-of-type {
    margin-bottom: 0.75rem;
}

.payment-receipt__h3 {
    margin: 0 0 0.5rem;
    font-size: 0.95rem;
    font-weight: 500;
}

.payment-receipt__row {
    display: flex;
    gap: 0.75rem;
    justify-content: space-between;
    align-items: baseline;
    font-size: 0.875rem;
    padding: 0.35rem 0;
    border-bottom: 1px solid var(--color-border, rgba(0, 0, 0, 0.08));
}

.payment-receipt__row:last-child {
    border-bottom: none;
}

.payment-receipt__row-label {
    color: var(--color-text-muted, #666);
    flex-shrink: 0;
}

.payment-receipt__row-val {
    text-align: right;
    font-weight: 500;
    word-break: break-word;
}

.payment-receipt__lines {
    list-style: none;
    margin: 0;
    padding: 0;
}

.payment-receipt__line {
    display: flex;
    gap: 0.5rem;
    justify-content: space-between;
    align-items: baseline;
    font-size: 0.875rem;
    padding: 0.45rem 0;
    border-bottom: 1px solid var(--color-border, rgba(0, 0, 0, 0.06));
}

.payment-receipt__line:last-child {
    border-bottom: none;
}

.payment-receipt__line-name {
    flex: 1;
    min-width: 0;
    padding-right: 0.5rem;
}

.payment-receipt__line-meta {
    flex-shrink: 0;
    color: var(--color-text-muted, #666);
    font-size: 0.8125rem;
}

.payment-receipt__line-sum {
    flex-shrink: 0;
    font-weight: 500;
    font-variant-numeric: tabular-nums;
}

.payment-receipt__total {
    margin: 0.5rem 0 1rem;
    font-size: 1.05rem;
    font-weight: 500;
    font-variant-numeric: tabular-nums;
}

.payment-receipt .payment-receipt__home {
    display: block;
    width: 100%;
    text-align: center;
    text-decoration: none;
    box-sizing: border-box;
}
.payment-methods__icon--kaspi{display:grid!important;place-items:center;background:#f14635!important;color:#fff!important;border-radius:9px;font-weight:800;font-size:20px}.kaspi-payment{text-align:center;max-width:440px}.kaspi-payment__logo{display:grid;place-items:center;width:48px;height:48px;margin:0 auto 12px;border-radius:14px;background:#f14635;color:#fff;font-size:27px;font-weight:800}.kaspi-payment__qr{display:block;width:min(290px,80vw);height:auto;margin:18px auto;border:1px solid #eee;border-radius:16px}.kaspi-payment__open{display:flex;margin:14px auto;max-width:290px;text-decoration:none;align-items:center;justify-content:center}.kaspi-payment__waiting{margin:18px 0;color:#656b73}.kaspi-payment__waiting span{display:inline-block;width:9px;height:9px;margin-right:7px;border-radius:50%;background:#ff7a00;animation:kaspi-pulse 1.2s infinite}.kaspi-payment__cancel{border:0;background:none;cursor:pointer}.kaspi-payment--paid .kaspi-payment__waiting{color:#168343}.kaspi-payment--paid .kaspi-payment__waiting span{background:#168343;animation:none}@keyframes kaspi-pulse{50%{opacity:.25;transform:scale(.75)}}
