﻿:root {
    /* از بلاک پایینی (اولویت) */
    --color-text-dark: #4F4F4F;
    --color-border-light: #e2e9fb;
    --color-white: #ffffff;
    --color-check: #07a86b;
    --color-sms: #ff6a00;
    --color-avanak: #42BFB9;
    --color-owjCloud: #582F87;
    --color-alavan: #ED1944;
    --color-muted: #828282;
    --border: #d9dee7; /* override شد */
    --muted: #70798b; /* override شد */
    --bg: #FCFCFC;
    --bg-white: #ffffff;
    --row: #f8fafc;
    --radius: 12px; /* override شد */
    --success: #08a860; /* override شد */
    --color-amoot: #2166AE;
    --primary: #2b5aa6;
    --primary-contrast: #ffffff;
    --badge-bg: #1F1F1F; /* black badge */
    /* متغیرهای منحصربه‌فرد بلاک اول (اضافه‌شده) */
    --blue: #2166AE;
    --gray: #9B9999;
    --danger: #E34444;
    --ribbon-sale: linear-gradient(95.54deg,#E42154 4.42%,#FF8F3E 96.44%);
    --ribbon-pop: linear-gradient(95.54deg,#2166AE 4.42%,#9EB3FF 96.44%);
    --ribbon-h: 44px;
    --ribbon-gap: 0px;
}


/* --------------------------- */

.buy-container {
    padding: 40px 0;
}

/* tab code */
    .buy-container .tabs {
        width: 80%;
        margin: 0 auto;
    }

    .buy-container .tab-links {
        list-style: none;
        padding: 0;
        margin: 0;
        display: flex;
        justify-content: center;
    }

        .buy-container .tab-links li {
            margin: 0;
            border-bottom: 0;
            z-index: 1;
            transform: scale(1.1);
        }

        .buy-container .tab-links a {
            display: block;
            padding: 10px 20px;
            text-decoration: none;
            color: var(--text-color);
            border: 1px solid #ddd;
            border-bottom: none;
            background: #f9f9f9;
            border-radius: 4px 4px 0px 0px;
            margin: 0 24px;
            background: rgba(255, 255, 255, 0.10);
            backdrop-filter: blur(2px);
            border-bottom: 0 !important;
            width: 230px;
            text-align: center;
            vertical-align: middle;
        }

            .buy-container .tab-links a:hover {
                background: #eee;
            }

        .buy-container .tab-links .active a {
            background: #fff;
            border-bottom: 1px solid #fff;
            color: var(--amoot-color);
            border-color: currentColor;
            background: linear-gradient(0deg, rgba(255, 255, 255, 0.00) 5.36%, rgba(140, 176, 213, 0.02) 45.8%, rgba(33, 102, 174, 0.05) 100%), var(--Neutral-White, #FFF);
        }

    .buy-container .tab-content {
        padding: 20px;
        background: var(--Neutral-White, #FFF);
        box-shadow: 0px 0px 2px 0px rgba(33, 102, 174, 0.10);
    }

    .buy-container .tab {
        display: none;
    }

        .buy-container .tab.active {
            display: block;
        }

/* end Tab code */

    .buy-container .plan-card article {
        border: 1px solid var(--color-border-light);
        border-radius: 10px;
        padding: 1.5rem 1.6rem 1rem 1.8rem;
        background: var(--color-white);
        transition: transform 0.3s ease, box-shadow 0.3s ease;
        text-align: start;
        height: 100%;
    }

    .buy-container a.plan-card article:hover {
        transform: scale(1.02) !important;
        border-color: var(--color-amoot) !important;
    }

    .buy-container .plan-card ul {
        list-style: none;
        padding: 0;
        margin: 1.4rem 0 1.8rem;
    }

.buy-container .plan-card li {
    display: flex;
    align-items: center;
    color: var(--color-text-dark);
    margin-bottom: 0.65rem;
    font-size: 0.97rem;
}

.buy-container .plan-card .check {
    width: 26px;
    height: 26px;
    color: var(--color-check);
    font-size: 0.85rem;
    font-weight: 700;
}

.buy-container .plan-logo img {
    height: 30px;
}

/* Hover border colors */
.plan-sms:hover {
    border-color: var(--color-sms);
}

.plan-avanak:hover {
    border-color: var(--color-avanak);
}

.plan-owjCloud:hover {
    border-color: var(--color-owjCloud);
}

.plan-alavan:hover {
    border-color: var(--color-alavan);
}

/* Tab section */
.buy-container .tab .title {
    margin: 30px 0;
}

    .buy-container .tab .title h1 {
        font-size: 24px;
        font-weight: 600;
    }

    .buy-container .tab .title p {
        color: var(--color-muted);
    }

/* پایه جدول */
.buy-container .table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid var(--color-border-light);
    border-radius: var(--radius);
    overflow: hidden;
    direction: rtl;
}

    .buy-container .table * {
        background: var(--bg) !important;
    }

    .buy-container .table th,
    .buy-container .table td {
        padding: .9rem 1rem;
        border-bottom: 1px solid var(--border);
        text-align: center;
        vertical-align: middle;
    }


    .buy-container .table thead th {
        background: #f1f5fb;
        font-weight: 700;
    }

.buy-container .badge-success {
    color: var(--success);
    font-weight: 700;
}

/* ظرف زیر جدول خیریه */

.buy-container .below-table {
    margin: 4rem 0 2rem 0 ;
}

.buy-container .below-table .card {
    background-color: #F6F7FA;
    border-radius: 4px;
    height: 334px;
    min-height: fit-content;
    border: none;
    padding: 2rem;
    margin-bottom:1rem;
}

    .buy-container .below-table .card .card-title {
        color: var(--color-amoot);
        font-size: 18px;
        font-weight: 600;
    }

    .buy-container .below-table .card img {
        width: 50px;
    }


    .buy-container .below-table .card ul li {
        line-height: 3rem;
    }

    .buy-container .below-table .card-products ul li {
        line-height: 3.5rem !important;
    }

    .buy-container .below-table .card-benefits ul {
        list-style-type: disc;
        padding-right: 20px;
    }

.buy-container .start-steps {
    margin-top: 1.6rem;
    padding: 1.2rem 0 2rem;
    text-align: center;
}

.buy-container .start-title {
    margin: 0 0 .8rem 0;
    font-size: 1.2rem;
    font-weight: 800;
    color: #141b2d;
}

.buy-container .start-list {
    margin: 0 auto 1.1rem;
    padding: 0;
    max-width: 820px;
    line-height: 1.9;
    text-align: center;
}

    .buy-container .start-list li + li {
        margin-top: .35rem;
    }

.buy-container .btn {
    display: inline-block;
    padding: .62rem 1.1rem;
    border-radius: 8px;
    font-weight: 600;
    line-height: 1;
    text-decoration: none;
    transition: transform .15s ease, box-shadow .2s ease, background-color .2s ease;
    border: 1px solid transparent;
}

    .buy-container .btn:active {
        transform: translateY(1px);
    }

.buy-container .btn-primary {
    background: var(--primary);
    color: var(--primary-contrast);
    box-shadow: 0 6px 18px rgba(43, 90, 166, .18);
}

    .buy-container .btn-primary:hover {
        background: #244e90;
    }

    .buy-container .btn-primary:focus {
        outline: none;
        box-shadow: 0 0 0 3px rgba(43, 90, 166, .25), 0 6px 18px rgba(43, 90, 166, .18);
    }

/* Offer Banner */
.buy-container .offer-banner {
    margin: 3rem 0 1rem 0;
    text-align: center;
}

.buy-container .offer-body {
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    background: var(--bg-white);
    padding: .9rem 1rem;
}

    .buy-container .offer-body p {
        margin: 0;
        line-height: 1.9;
        color: #1d2430;
    }

.buy-container .hotline {
    margin: .6rem 0 0;
}

.buy-container .hotline-ico {
    font-size: 1.3rem;
    margin-inline-end: .35rem;
    color: var(--color-amoot);
}

.buy-container .hotline-number {
    color: inherit;
    text-decoration: none;
}

    .buy-container .hotline-number:hover {
        text-decoration: underline;
    }


/* ===== Segmented Toggle ===== */


.filter-button-container button {
    outline: none;
    border: 1px solid var(--color-amoot);
    background-color: #fff;
    color: var(--color-amoot);
    width: 148px;
    font-size: 14px;
    padding: 12px 0;
    border-radius: 8px;
    transition: all 0.5s;
    margin:10px;
}

    .filter-button-container button:hover,
    .filter-button-container button.active {
        background-color: var(--color-amoot);
        color: #fff;
    }

    /**===================== Pricing Section ====================*/
    .pricing {
        margin: 2rem 0 2rem 0;
    }

.pricing .row {
    align-items: stretch;
}
    .pricing .row > [class^="col-"], 
    .pricing .row > [class*=" col-"] {
        display: flex;
    }

.pricing .p-card {
    display: flex;
    flex-direction: column;
    width: 100%;
    position: relative;
    overflow: visible;
    margin:2rem 0;
}


.pricing .ribbon-bar {
    position: absolute;
    top: calc(-1 * (var(--ribbon-h) + var(--ribbon-gap)));
    inset-inline: 0;
    height: var(--ribbon-h);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    border-top-left-radius: var(--radius);
    border-top-right-radius: var(--radius);
    z-index: 2;
    pointer-events: none;
}

.pricing .ribbon-bar.sale {
    background: var(--ribbon-sale);
    border: 2px solid #FF8F3E;
    border-bottom: 0;
}

.pricing .ribbon-bar.pop {
    background: var(--ribbon-pop);
    border: 2px solid var(--blue);
    border-bottom: 0;
}

.pricing .card {
    position: relative;
    background: #fff;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 18px 18px 14px;
    box-shadow: 0 1px 0 rgba(0,0,0,.02);
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    overflow: hidden;
    transition:all 0.5s;
    cursor:pointer;
}


.pricing .has-ribbon .card {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border: 2px solid var(--border);
    border-top: 0;
}

.pricing .p-card.sale .card {
    border-color: #FF8F3E;
}

.pricing .p-card.popular .card {
    border-color: var(--blue);
}

    .pricing .card:hover{

        border-color: var(--color-amoot);
    }

    .pricing .p-card {
        transition: 0.3s all;
    }

        .pricing .p-card:hover {
            border-color: var(--color-amoot);
            transform: scale(1.02);
        }


    .pricing .title-row {
        display: flex;
        align-items: center;
    }

    .pricing .title-row h3 {
        margin: 0;
        font-size: 20px;
        font-weight: 600;
        color: #2B2B2B;
    }

.pricing .logo-slot {
    width: 50px;
    height: 50px;
    flex: 0 0 auto;
}

    .pricing  .logo-slot img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        display: block;
    }

        .pricing .logo-slot img[src=""],
        .pricing .logo-slot img:not([src]) {
            display: none;
        }

.pricing  .subtitle {
    margin: 6px 0 0;
    color: var(--muted);
    font-size: 14px;
}

    .pricing .period {
        color: var(--period-color); 
        font-weight: 700;
        font-size: 14px;
        margin-top: 14px;
        display: inline-block;
    }

    .pricing .price {
        color: var(--price-color);
        margin-top: 6px;
        font-weight: 600;
        font-size: 22px;
        letter-spacing: 1px;
    }

    .pricing .price .currency {
        color: #333;
        font-weight: 600;
        font-size: 15px;
        margin-inline-start: 0px;
    }

.pricing  .price-row {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.pricing .old-price {
    color: #888;
    text-decoration: line-through;
    font-size: 14px;
}

.pricing  .off {
    color: #E42154;
    font-weight: 700;
    font-size: 14px;
}

.pricing .cta {
    margin-top: 14px;
    width: 100%;
    border: 0;
    border-radius: 10px;
    background: var(--color-amoot);
    color: #fff;
    padding: 8px 10px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
}

.pricing .features {
    list-style: none;
    padding: 0;
    margin: 16px 0 14px;
    color: #1D1D1D;
    font-size: 16px;
}

    .pricing .features li {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 6px 0;
        font-size:14px;
    }

    .pricing .features svg {
        width: 18px;
        height: 18px;
        flex: 0 0 auto;
    }

    .pricing .features .ok {
        color: var(--success);
    }

    .pricing .features .no {
        color: var(--danger);
    }

.pricing .card-foot {
    margin-top: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-top: 1px dashed #E7E7E7;
    padding-top: 10px;
    color: #5B5B5B;
    font-size: 13px;
}

.pricing .foot-item {
    display: flex;
    align-items: center;
    gap: 6px;
}

    .pricing .foot-item svg {
        width: 16px;
        height: 16px;
    }


/* ===================== موبایل ===================== */
@media (max-width: 768px) {
    .buy-container .tab-links li {
        width: 50%;
        transform: scale(1);
        height: 60px;
    }

    .buy-container .tab-links a {
        width: 100%;
        margin: 0;
        height: 100%;
        vertical-align: middle;
        padding: 18px 0 0 0;
    }

    .table thead {
        display: none;
    }

    .table, .table tbody, .table tr, .table td {
        display: block;
        width: 100%;
    }

        .table{
            border:0;
        }

        .table tr {
            margin: 0 0 1rem 0;
            border: 1px solid var(--border);
            border-radius: var(--radius);
            padding: .6rem .9rem;
        }

        .table td {
            border: 0;
            border-bottom: 1px dashed var(--border);
            text-align: right;
            padding: .6rem 0 .7rem;
            position: relative;
        }

            .table td:last-child {
                border-bottom: 0;
            }

            .table td::before {
                content: attr(data-label);
                display: block;
                font-weight: 600;
                color: var(--muted);
                margin-bottom: .25rem;
            }

    .offer-body {
        padding: .8rem .9rem;
    }
}

.btn-add-service.is-loading {
    pointer-events: none;
    opacity: 0.6;
}

/* =========================================
   product global detail ( Show Invoice Product Detail Or Proforma Invoice Product Detail Or Payment Invoice Info) 
========================================= */


.product-global-detail {
    background: #F6F7FA;
    padding: 0 0px 16px;
    border-radius: 8px;
    gap: 8px;
    margin-top: 30px;
    overflow: hidden;
}

@media only screen and (max-width: 920px) {
    .product-global-detail {
        font-size: 16px;
    }
}

@media only screen and (max-width: 768px) {
    .product-global-detail {
        font-size: 13px;
    }
}

.product-global-detail table thead {
    border-bottom: 1px solid #E0E0E0;
}

    .product-global-detail table thead th {
        padding-bottom: 10px;
    }

.product-global-detail table tbody td {
    padding-top: 10px;
}

.product-global-detail h3 {
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    margin: 0;
}

.product-global-detail > .head-product-detail {
    padding: 12px 16px;
    background: #E1F1FF;
}

.product-global-detail > div {
    padding: 4px 16px;
}

    .product-global-detail > div.spacing,
    .product-global-detail > div.spacing hr {
        padding: 0;
        margin: 4px
    }


/* =========================================
   INVOICE — BEM + aliases
   Block: .invoice
========================================= */

/* پایه */
.invoice {
    padding-bottom: 40px;
}

    /* ستون‌ها */
    .invoice__detail,
    .invoice .detail {
        padding: 20px 16px 30px;
        border-left: 1px solid #E0E0E0;
    }

    .invoice__payment,
    .invoice .payment {
        padding: 20px 16px 30px;
    }

    /* عنوان صفحه */
    .invoice__title,
    .invoice h2.page-title {
        font-size: 18px !important;
        margin: 0;
        font-weight: 600 !important;
    }

    /* هدر و ردیف عنوان/دکمه */
    .invoice__header .invoice__title-row,
    .invoice .header .title-container {
        margin-bottom: 30px !important;
    }

    /* تاریخ‌ها */
    .invoice__date *,
    .invoice .header .date * {
        font-size: 14px !important;
    }

    .invoice__label,
    .invoice .header .label {
        color: #90A4AE;
        margin-left: 8px;
    }

    /* دکمه دانلود پیش‌فاکتور */
    .invoice__download,
    .invoice .downloadPreinvoice {
        font-size: 14px;
        display: flex;
        align-items: center;
        gap: 6px;
        flex-direction: row-reverse;
    }

        .invoice__download:before,
        .invoice .downloadPreinvoice:before {
            font-size: 18px;
        }

    /* مشخصات خریدار */
    .invoice__buyer,
    .invoice .buyer-info {
        margin: 28px 0;
    }

        .invoice__buyer-header,
        .invoice .buyer-info .header {
            color: #90A4AE;
            font-size: 14px;
            font-weight: 450;
            display: block;
            margin: 10px 0 8px;
        }

        .invoice__buyer-list-item:before,
        .invoice .buyer-info .data li:before {
            content: "";
            width: 6px;
            height: 6px;
            border-radius: 50px;
            display: inline-block;
            background-color: #90A4AE;
            margin-left: 20px;
        }

        .invoice__buyer-list-item,
        .invoice .buyer-info .data li {
            font-size: 14px;
            font-weight: 600;
            margin-bottom: 8px;
        }

            .invoice__buyer-list-item small,
            .invoice .buyer-info .data li small {
                font-weight: 400;
                font-size: 14px;
            }

    /* توضیح پرداخت */
    .invoice__payment-desc,
    .invoice .payment-description {
        font-size: 12px;
        font-weight: 450;
        text-align: justify;
        color: #546E7A;
    }

    /* تب‌ها */
    .invoice__tabs-link,
    .invoice li a.nav-link {
        font-size: 14px;
        color: #4F4F4F;
    }

        .invoice__tabs-link--active,
        .invoice li a.nav-link.active {
            color: #2166AE;
            border: 0;
            border-bottom: 2px solid currentColor;
        }

    .invoice__tabs,
    .invoice li {
        color: currentColor;
    }

    .invoice__tab-content,
    .invoice .tab-content {
        padding: 0;
    }

    /* گروه ورودی داخل کارت پرداخت (کوپنِ بالا یا سایر ورودی‌ها) */
    .invoice__input-group,
    .invoice .payment-checker .input-group {
        position: relative;
    }

        .invoice__input,
        .invoice .payment-checker .input-group input {
            position: relative;
            width: 100%;
            border-radius: 6px !important;
        }

        .invoice__input-btn,
        .invoice .payment-checker .input-group button {
            position: absolute;
            width: 60px;
            left: 5px;
            top: 5px;
            background: var(--amoot-color);
            color: #fff;
            border-radius: 6px !important;
            font-size: 14px;
            z-index: 8;
        }

    /* کیف پول */
    .invoice__wallet,
    .invoice .creadit-wallet {
        margin-top: 1rem;
    }

        .invoice__wallet *,
        .invoice .creadit-wallet * {
            font-size: 14px;
        }

        .invoice__wallet .form-check,
        .invoice .creadit-wallet .form-check {
            padding-left: 0;
        }

    /* زیرجمع‌ها */
    .invoice__subtotal,
    .invoice .sub-total-wrapper {
        gap: 12px;
        font-size: 14px;
    }

    /* متن قوانین */
    .invoice__roles,
    .invoice p.roles-text {
        margin: 10px 0;
        font-size: 12px;
    }

    /* دکمه پرداخت نهایی */
    .invoice__purchase-btn,
    .invoice .purchace-wrapper button {
        width: 100%;
        padding: 10px;
    }

    .invoice__purchase,
    .invoice .purchace-wrapper {
        margin-top: 2rem;
    }

    /* کوپن */
    .invoice__coupon-text,
    .invoice .coupon-text {
        border: var(--bs-border-width) solid var(--bs-border-color);
        width: 100%;
        border-radius: 6px !important;
        padding: 6px;
    }

    .invoice__coupon,
    .invoice .coupon-container {
        margin-top: 1rem;
    }

        .invoice__coupon p,
        .invoice .coupon-container p {
            font-size: 12px;
            color: #828282;
        }

    .invoice__coupon-form,
    .invoice #coupon-form {
        width: 600px;
        position: relative;
    }

        .invoice__coupon-input,
        .invoice #coupon-form input {
            width: 100%;
            border-radius: 4px;
            font-size: 14px;
            padding: 12px;
            position: relative;
        }

        .invoice__coupon-btn,
        .invoice #coupon-form button {
            position: absolute;
            left: 8px;
            top: 9px;
            background: var(--amoot-color);
            color: #fff;
            border-radius: 4px !important;
            font-size: 12px;
            z-index: 8;
            padding: 6px 16px;
        }

.invoice__coupon_applied_container {
    background-color: #e6efed;
    color: #219653;
}

    .invoice__coupon_applied_container a{
        cursor:pointer;
    }
    /* بنر ارجاع برند (آوانک/پیامک/اوج/آلاوان) */
    .invoice__banner,
    .invoice .banner-reffer {
        padding: 14px;
        margin-bottom: 1rem;
        border-radius: 4px;
        position: relative;
    }

        .invoice__banner img,
        .invoice .banner-reffer img {
            margin-left: 8px;
            max-height: 34px;
        }

        .invoice__banner a,
        .invoice .banner-reffer a {
            padding: 6px 10px;
            border-radius: 4px;
            color: #fff;
            font-size: 14px;
            position: relative;
        }

            .invoice__banner a:before,
            .invoice .banner-reffer a:before {
                content: "";
                position: absolute;
                right: 0;
                top: 0;
                width: 10px;
                height: 100%;
                background: inherit;
                border-radius: 10px 0 0 10px;
            }

    /* ------------------------------------------
   OfflinePay block (as built before) — تحت .invoice
-------------------------------------------*/

    /* کارت‌های فرم و نتیجه */
    .invoice .offline-pay__form,
    .invoice .offline-pay__result {
        box-shadow: var(--shadow);
        max-width: 460px;
        margin: 0 auto;
    }

    .invoice .offline-pay__result {
        margin-top: 16px;
    }

    /* فیلد عمومی */
    .invoice .form-field {
        margin-bottom: 14px;
    }

    .invoice .form-field__label {
        font-size: 14px;
        font-weight: 600;
        margin-bottom: 8px;
        color: var(--text);
    }

    .invoice .form-field__control {
        width: 100%;
    }

    .invoice .form-field__input,
    .invoice .amount__custom-input,
    .invoice .file-upload input[type="file"],
    .invoice .form-control {
        border: 1px solid var(--border);
        border-radius: 4px;
        padding: 5px 12px;
        outline: none;
        background: #fff;
        width: 100%;
        transition: border-color .2s, box-shadow .2s;
    }

        .invoice .form-field__input:focus,
        .invoice .amount__custom-input:focus,
        .invoice .form-control:focus {
            border-color: var(--primary);
            box-shadow: 0 0 0 3px rgba(31,95,255,.12);
        }

    /* کارت اطلاعات بانک */
    .invoice .bank-info {
        border-radius: 4px;
        padding: 12px;
        background: #F6F7FA;
    }

    .invoice .bank-info__name img {
        width: 28px;
        height: 28px;
        margin-left: 8px;
    }

    .invoice .bank-info__title {
        font-weight: 700;
    }

    .invoice .bank-info__list {
        margin-top: 10px;
    }

    .invoice .bank-info__row {
        padding: 8px 0;
        border-bottom: 1px solid var(--border);
        font-size: 14px;
    }

        .invoice .bank-info__row:last-child {
            border-bottom: 0;
        }

    .invoice .bank-info__value {
        direction: ltr;
        cursor: pointer;
        color: #2166AE;
    }

        .invoice .bank-info__value:before {
            margin-right: 10px;
        }

    .invoice .icon-copy:hover {
        text-decoration: underline;
    }

    /* مبلغ */
    .invoice .amount__option {
        display: flex;
        align-items: center;
        font-size: 14px;
        margin: 20px 0;
        gap: 10px;
    }

    .invoice .amount__radio {
        accent-color: var(--primary);
    }

    .invoice .amount__custom-input {
        direction: ltr;
    }

    /* شماره پیگیری */
    .invoice .trackingCode .form-control {
        direction: ltr;
    }

    /* آپلود فایل */
    .invoice .file-upload__btn {
        background: #E1F1FF;
        border: 1px dotted #2166AE;
        color: #2166AE;
        padding: 8px 12px;
        border-radius: 4px;
        font-weight: 600;
        transition: .2s;
        width: 100%;
    }

        .invoice .file-upload__btn:hover {
            background: rgba(31,95,255,.06);
        }

    .invoice .file-upload__hint {
        display: block;
        font-size: 12px;
        color: var(--muted);
        margin-top: 6px;
    }

    .invoice .file-upload__list {
        margin-top: 10px;
    }

    .invoice .file-upload__item {
        border: 1px solid var(--border);
        border-radius: 10px;
        padding: 8px 10px;
        background: #fff;
        box-shadow: var(--shadow-sm);
    }

    .invoice .file-upload__remove {
        color: var(--danger);
        cursor: pointer;
        font-size: 14px;
    }

    .invoice .file-upload__preview {
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .invoice .file-upload__preview-img {
        width: 30px;
        height: 30px;
        border-radius: 6px;
        object-fit: cover;
        background: #f3f4f6;
    }

    .invoice .file-upload__preview-name {
        font-size: 12px;
        color: var(--text);
    }

    /* دکمه‌ها */
    .invoice .offline-pay__submit,
    .invoice .offline-pay__cancel {
        width: 100%;
        border-radius: 4px;
        padding: 10px 14px;
        border: 0;
    }

    .invoice .offline-pay__cancel {
        background: #fff;
        color: var(--danger);
        border: 1px solid var(--danger);
        margin-top: 10px;
    }

        .invoice .offline-pay__cancel:hover {
            background: rgba(239,68,68,.06);
        }

    /* وضعیت پس از ارسال */
    .invoice .status-alert {
        background: #fff8e1;
        border: 1px solid var(--warning-border);
        color: var(--warning-text);
        border-radius: 10px;
        padding: 10px 12px;
        margin:20px 0 12px 0;
        font-size:14px;
    }

        .invoice .status-alert p {
            margin: 0;
        }

    /* خلاصه‌ی پرداخت */
    .invoice .result-summary {
        margin-top: 12px;
        border: 1px solid var(--border);
        border-radius: 12px;
        padding: 10px 12px;
        background: #fff;
    }

    .invoice .result-summary__row {
        padding: 8px 0;
        border-bottom: 1px solid var(--border);
    }

        .invoice .result-summary__row:last-child {
            border-bottom: 0;
        }

    .invoice .result-summary__label {
        color: var(--muted);
        font-size: 13px;
    }

    .invoice .result-summary__value {
        font-size: 13px;
    }

    /* چک‌لیست */
    .invoice .activation-checklist {
        margin-top: 12px;
        border: 1px solid #27AE60;
        border-radius: 12px;
        background: #28995814;
        padding: 12px;
    }

    .invoice .activation-checklist__title {
        font-size: 14px;
        margin: 0 0 8px;
        font-weight: 800;
    }

    .invoice .activation-checklist__list {
        list-style: none;
        padding: 0;
        margin: 0;
    }

    .invoice .activation-checklist__item {
        position: relative;
        padding-right: 22px;
        margin: 8px 0;
        color: var(--text);
        font-size: 13px;
    }

        .invoice .activation-checklist__item::before {
            content: "";
            position: absolute;
            right: 0;
            top: 50%;
            transform: translateY(-50%);
            width: 12px;
            height: 12px;
            border-radius: 50%;
            background: #d1d5db;
            box-shadow: inset 0 0 0 2px #fff;
            border: 1px solid #cbd5e1;
        }

    .invoice .activation-checklist__item--done::before {
        background: #22c55e;
        border-color: #16a34a;
    }

    .invoice .activation-checklist__item--pending {
        color: #9ca3af;
    }

/* ریسپانسیو */
@media (max-width:620px) {

    .invoice__coupon-form,
    .invoice #coupon-form
    {
        width:100%;
    }

    .invoice .bank-info__row,
    .invoice .result-summary__row {
        font-size: 12px;
    }

    .invoice .offline-pay__form,
    .invoice .offline-pay__result {
        padding: 12px;
    }
}

/* ===== Disabled state برای دکمه ارسال آفلاین ===== */
.invoice .amoot-btn.offline-pay__submit:disabled,
.invoice .amoot-btn.offline-pay__submit[disabled],
.invoice .offline-pay__submit:disabled,
.invoice .offline-pay__submit[disabled],
/* بکاپ اگر به‌جای disabled از aria-disabled استفاده شد */
.invoice .amoot-btn.offline-pay__submit[aria-disabled="true"],
.invoice .offline-pay__submit[aria-disabled="true"],
/* کلاس کمکی در صورت نیاز */
.invoice .amoot-btn.offline-pay__submit.is-disabled,
.invoice .offline-pay__submit.is-disabled,
.invoice #confirmPaymentButton.is-disabled {
    background: #cbd5e1 !important; /* خاکستری روشن */
    color: #6b7280 !important; /* خاکستری متن */
    border-color: #cbd5e1 !important;
    box-shadow: none !important;
    cursor: not-allowed !important;
    filter: grayscale(20%);
    opacity: 0.65;
    pointer-events: none; /* برای anchor یا هر چیزی که شبیه دکمه است */
    transition: none;
}

    /* جلوگیری از تغییر رنگ در :hover وقتی disabled است */
    .invoice .amoot-btn.offline-pay__submit:disabled:hover,
    .invoice .amoot-btn.offline-pay__submit[disabled]:hover,
    .invoice .offline-pay__submit:disabled:hover,
    .invoice .offline-pay__submit[disabled]:hover,
    .invoice .amoot-btn.offline-pay__submit[aria-disabled="true"]:hover,
    .invoice .offline-pay__submit[aria-disabled="true"]:hover,
    .invoice .amoot-btn.offline-pay__submit.is-disabled:hover,
    .invoice .offline-pay__submit.is-disabled:hover,
    .invoice #confirmPaymentButton.is-disabled:hover {
        background: #cbd5e1 !important;
        color: #6b7280 !important;
    }

    /* حذف فوکوس/اوت‌لاین برای disabled */
    .invoice .amoot-btn.offline-pay__submit:disabled:focus,
    .invoice .amoot-btn.offline-pay__submit[disabled]:focus,
    .invoice .offline-pay__submit:disabled:focus,
    .invoice .offline-pay__submit[disabled]:focus {
        outline: none !important;
        box-shadow: none !important;
    }