.donation-flow__container .amount-choose-item:is(.amount_button, .amount_button_surcharge),
.donation-flow__container .donation-flow__desktop-card:is(.amount_button, .amount_button_surcharge) {
    width: 100% !important;
    height: auto !important;
    min-height: 0;
    max-width: none;
    font-family: var(--font-sans);
    font-weight: 600;
    font-size: inherit;
    background: var(--white);
    color: var(--text-color);
    border: 1px solid var(--border-color);
    box-shadow: 0 2px 8px var(--shadow-card);
    opacity: 1;
}

.donation-flow__container .donation-flow__desktop-card.amount_button_surcharge,
.donation-flow__container .amount-choose-item.amount_button_surcharge {
    background: var(--bg-checked) !important;
    color: var(--text-color) !important;
    border-color: var(--accent) !important;
    border-width: 1px !important;
    opacity: 1 !important;
    box-shadow: 0 2px 8px var(--shadow-card) !important;
}

.donation-flow__container .donation-flow__desktop-card.amount_button_surcharge:focus,
.donation-flow__container .amount-choose-item.amount_button_surcharge:focus {
    background: var(--bg-checked) !important;
    color: var(--text-color) !important;
}

.donation-flow__container {
    .amount-choose-sheet {
        display: flex;
        flex-direction: column;
        gap: 0;
    }

    @media (max-width: 767px) {
        .amount-choose-sheet {
            gap: 4px;
            padding-bottom: 4px;
        }

        .donation-flow__list {
            margin-bottom: 12px;
        }
    }

    .donation-flow__item.amount-choose-item {
        text-decoration: none;

        &:focus-visible {
            outline: 2px solid var(--accent);
            outline-offset: 2px;
        }

        &.amount_button_surcharge {
            border-color: var(--accent);
            background: var(--bg-checked);
            box-shadow: 0 2px 8px var(--shadow-card);
        }

        .amount_dollar_look {
            font-family: var(--font-sans);
            font-weight: 700;
            font-size: 18px;
            color: var(--text-color);
            letter-spacing: -0.02em;
        }

        .amount_label_look {
            font-family: var(--font-sans);
            font-weight: 500;
            font-size: 13px;
            color: var(--text-muted);
        }
    }

    .amount-choose-checkmark {
        display: none;
        align-items: center;
        justify-content: center;
        color: var(--accent);
        font-size: 18px;
        line-height: 1;
    }

    .amount_button_surcharge .amount-choose-checkmark {
        display: inline-flex;
    }

    .donation-flow__item.amount-choose-item .amount-choose-checkmark {
        margin-right: 2px;
    }

    .donation-flow__desktop .donation-flow__desktop-card.amount_button {
        padding: 24px 16px;

        &:focus-visible {
            outline: 2px solid var(--accent);
            outline-offset: 2px;
        }

        &:hover:not(.amount_button_surcharge) {
            border-color: var(--accent);
            box-shadow: 0 4px 12px var(--shadow-modal);
        }

        &.amount_button_surcharge:hover {
            border-color: var(--accent);
            box-shadow: 0 2px 8px var(--shadow-card);
        }

        .amount_dollar_look {
            font-family: var(--font-sans);
            font-weight: 700;
            font-size: 22px;
            color: var(--text-color);
            margin-bottom: 4px;
            letter-spacing: -0.02em;
        }

        .amount_label_look {
            font-family: var(--font-sans);
            font-weight: 500;
            font-size: 14px;
            color: var(--text-muted);
            line-height: 1.35;
            word-break: break-word;
        }

        .amount-choose-checkmark {
            margin-top: 8px;
        }
    }

    .donation-flow__desktop--in-sheet {
        margin-bottom: 0;
        background: transparent;
        border: none;
        border-radius: 0;
        box-shadow: none;
        padding: 0;
    }

    .amount-choose-force-info {
        background: var(--accent-tint);
        color: var(--text-color);
        border-radius: 12px;
        padding: 14px 16px;
        margin-top: 8px;
        margin-bottom: 12px;
        font-size: 14px;
        line-height: 1.45;
        text-align: center;
        border: 1px solid var(--accent-border);
    }

    .amount-choose-footer {
        margin-top: 4px;
    }

    .amount-choose-custom {
        padding: 16px;
        background: var(--white);
        border: 1px solid var(--border-color);
        border-radius: 12px;
        box-shadow: 0 2px 8px var(--shadow-card);
        margin-bottom: 0;
    }

    .amount-choose-custom-label {
        font-family: var(--font-sans);
        font-weight: 600;
        font-size: 15px;
        color: var(--text-color);
        display: block;
        margin-bottom: 10px;
    }

    .amount-choose-input-group {
        display: flex;
        flex-wrap: wrap;
        align-items: stretch;
        gap: 10px;

        .form-control {
            border-color: var(--border-color);
            color: var(--text-color);
            min-width: 0;
            flex: 1 1 160px;
            border-radius: 10px;
            padding: 0.6rem 0.85rem;
            font-size: 16px;
        }

        .form-control:focus {
            border-color: var(--accent);
            box-shadow: 0 0 0 3px var(--accent-tint);
        }

        .amount-choose-confirm {
            flex-shrink: 0;
            background: var(--accent);
            color: var(--white);
            border: none;
            border-radius: 10px;
            padding: 0.6rem 1.25rem;
            font-weight: 600;
            text-decoration: none;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: 44px;

            &:hover {
                background: var(--accent-dark);
                color: var(--white);
            }

            &:focus-visible {
                outline: 2px solid var(--accent);
                outline-offset: 2px;
            }
        }
    }

    @media (max-width: 767px) {
        .amount-choose-input-group {
            flex-direction: column;

            .form-control,
            .amount-choose-confirm {
                flex: 1 1 auto;
                width: 100%;
            }
        }
    }

    .amount-choose-surcharge-row {
        margin-top: 14px;
        padding-top: 14px;
        border-top: 1px solid var(--border-color);

        &:first-child {
            margin-top: 0;
            padding-top: 0;
            border-top: none;
        }

        .amount-choose-check {
            display: flex;
            align-items: center;
            gap: 0.75rem;
            width: 100%;
            min-width: 0;
        }

        .amount-choose-check .form-check-input {
            position: static;
            float: none;
            margin: 0;
            flex-shrink: 0;
            accent-color: var(--accent);
        }

        .amount-choose-check .form-check-label {
            flex: 1;
            min-width: 0;
            margin-bottom: 0;
            padding-left: 0;
            color: var(--text-color);
            font-size: 14px;
            line-height: 1.45;
            text-align: left;
        }
    }

    .amount-choose-next {
        margin-top: 14px;
        display: flex;
        justify-content: center;
        width: 100%;

        .action-btn {
            width: auto !important;
            min-width: clamp(220px, 40vw, 320px);
            min-height: 56px;
            padding: 0.85rem 1.75rem;
            font-size: clamp(1.05rem, 1.7vw, 1.25rem);
            font-weight: 700;
        }
    }

    .amount-choose-min-err {
        color: var(--danger);
        font-size: 14px;
        line-height: 1.4;
        padding: 10px 12px;
        margin-top: 10px;
        background: var(--danger-bg);
        border-radius: 10px;
        border: 1px solid color-mix(in srgb, var(--danger) 25%, transparent);
    }

    @media (min-width: 768px) {
        .amount-choose-sheet {
            background: var(--white);
            border: 1px solid var(--border-color);
            border-top: none;
            border-radius: 0;
            box-shadow: 0 2px 8px var(--shadow-card);
            padding: 24px;
        }

        .amount-choose-footer {
            margin-top: 8px;
        }

        .amount-choose-custom {
            margin-top: 0;
            box-shadow: none;
            border: 1px solid var(--border-color);
            background: var(--white);
        }

        .amount-choose-footer .amount-choose-custom {
            border-radius: 0 0 12px 12px;
        }

        .amount-choose-force-info {
            margin-top: 8px;
            margin-bottom: 0;
        }
    }
}

