/*
 * CRM VPN Dynamic Cart
 * Safe base layer
 */

body {
    --crm-cart-primary: #2563eb;
    --crm-cart-secondary: #7c3aed;
    --crm-cart-success: #059669;
    --crm-cart-warning: #d97706;
    --crm-cart-danger: #dc2626;
    --crm-cart-text: #172033;
    --crm-cart-muted: #687386;
    --crm-cart-border: #e5eaf1;
    --crm-cart-surface: #ffffff;
    --crm-cart-soft: #f6f8fc;
    --crm-cart-radius: 22px;
}

#order-standard_cart {
    direction: rtl;
    text-align: right;
}

#order-standard_cart .products .product {
    background: var(--crm-cart-surface);
    border: 1px solid var(--crm-cart-border);
    border-radius: var(--crm-cart-radius);
    overflow: hidden;
    box-shadow: 0 10px 35px rgba(31, 43, 70, .07);
    transition:
        transform .24s ease,
        box-shadow .24s ease,
        border-color .24s ease;
}

#order-standard_cart .products .product:hover {
    transform: translateY(-4px);
    border-color: rgba(37, 99, 235, .34);
    box-shadow: 0 18px 48px rgba(31, 43, 70, .13);
}

#order-standard_cart .product header {
    background:
        radial-gradient(circle at top left, rgba(124, 58, 237, .16), transparent 42%),
        linear-gradient(135deg, #f8fbff, #ffffff);
    border-bottom: 1px solid var(--crm-cart-border);
}

#order-standard_cart .product .product-desc {
    color: var(--crm-cart-muted);
    line-height: 1.9;
}

#order-standard_cart .btn,
#order-standard_cart button,
#order-standard_cart input,
#order-standard_cart select,
#order-standard_cart textarea {
    border-radius: 14px;
}

#order-standard_cart .btn-success,
#order-standard_cart #checkout,
#order-standard_cart #btnCompleteOrder {
    border: 0;
    color: #fff;
    font-weight: 800;
    background: linear-gradient(
        135deg,
        var(--crm-cart-primary),
        var(--crm-cart-secondary)
    );
    box-shadow: 0 10px 24px rgba(37, 99, 235, .22);
    transition:
        transform .2s ease,
        box-shadow .2s ease,
        opacity .2s ease;
}

#order-standard_cart .btn-success:hover,
#order-standard_cart #checkout:hover,
#order-standard_cart #btnCompleteOrder:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 30px rgba(37, 99, 235, .29);
}

#order-standard_cart input.form-control,
#order-standard_cart select.form-control,
#order-standard_cart textarea.form-control {
    min-height: 48px;
    border: 1px solid var(--crm-cart-border);
    background: #fff;
    color: var(--crm-cart-text);
    box-shadow: none;
    transition:
        border-color .2s ease,
        box-shadow .2s ease;
}

#order-standard_cart input.form-control:focus,
#order-standard_cart select.form-control:focus,
#order-standard_cart textarea.form-control:focus {
    border-color: var(--crm-cart-primary);
    box-shadow: 0 0 0 4px rgba(37, 99, 235, .10);
}

#order-standard_cart .panel,
#order-standard_cart .card,
#order-standard_cart .view-cart-items,
#order-standard_cart .order-summary {
    border: 1px solid var(--crm-cart-border);
    border-radius: var(--crm-cart-radius);
    box-shadow: 0 10px 35px rgba(31, 43, 70, .06);
}

.crm-cart-processing {
    pointer-events: none;
    opacity: .72;
}

.crm-cart-processing::after {
    content: "در حال پردازش سفارش...";
    position: fixed;
    right: 50%;
    bottom: 24px;
    transform: translateX(50%);
    z-index: 99999;
    min-width: 240px;
    padding: 14px 22px;
    border-radius: 16px;
    color: #fff;
    text-align: center;
    font-weight: 800;
    background: rgba(17, 24, 39, .94);
    box-shadow: 0 18px 50px rgba(0, 0, 0, .22);
}

@media (max-width: 767px) {
    #order-standard_cart {
        padding-right: 0;
        padding-left: 0;
    }

    #order-standard_cart .products {
        display: block;
    }

    #order-standard_cart .products .product {
        width: 100%;
        margin-right: 0;
        margin-left: 0;
        margin-bottom: 16px;
        border-radius: 18px;
    }

    #order-standard_cart .btn,
    #order-standard_cart button {
        min-height: 48px;
        font-size: 15px;
    }

    #order-standard_cart .form-control {
        font-size: 16px;
    }

    #order-standard_cart #checkout,
    #order-standard_cart #btnCompleteOrder {
        width: 100%;
    }

    #order-standard_cart table {
        max-width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    #order-standard_cart *,
    #order-standard_cart *::before,
    #order-standard_cart *::after {
        scroll-behavior: auto !important;
        transition: none !important;
        animation: none !important;
    }
}

/* CRM_DYNAMIC_CATALOG_BEGIN */

.crm-catalog {
    max-width: 1440px;
    margin: 0 auto;
    padding: 12px 8px 48px;
    color: #172033;
}

.crm-catalog-hero {
    position: relative;
    overflow: hidden;
    min-height: 290px;
    margin-bottom: 24px;
    padding: 54px 44px;
    border-radius: 30px;
    color: #fff;
    background:
        linear-gradient(135deg, #172554 0%, #312e81 46%, #6d28d9 100%);
    box-shadow: 0 24px 65px rgba(49, 46, 129, .25);
}

.crm-catalog-hero__content {
    position: relative;
    z-index: 2;
    max-width: 780px;
}

.crm-catalog-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 18px;
    padding: 9px 14px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 999px;
    background: rgba(255, 255, 255, .1);
    backdrop-filter: blur(12px);
    font-weight: 800;
}

.crm-catalog-hero h1 {
    margin: 0 0 15px;
    color: #fff;
    font-size: clamp(30px, 5vw, 48px);
    font-weight: 950;
    line-height: 1.35;
}

.crm-catalog-hero p {
    max-width: 730px;
    margin: 0;
    color: rgba(255, 255, 255, .84);
    font-size: 16px;
    line-height: 2;
}

.crm-catalog-benefits {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 25px;
}

.crm-catalog-benefits span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 13px;
    border-radius: 12px;
    background: rgba(255, 255, 255, .11);
    font-weight: 750;
}

.crm-catalog-hero__glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(3px);
    opacity: .28;
}

.crm-catalog-hero__glow--one {
    top: -100px;
    left: -70px;
    width: 310px;
    height: 310px;
    background: #22d3ee;
}

.crm-catalog-hero__glow--two {
    right: -100px;
    bottom: -150px;
    width: 390px;
    height: 390px;
    background: #f472b6;
}

.crm-filter-panel,
.crm-products-section {
    margin-bottom: 24px;
    padding: 26px;
    border: 1px solid #e6eaf2;
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 13px 42px rgba(30, 41, 59, .07);
}

.crm-filter-heading,
.crm-products-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 22px;
}

.crm-filter-heading h2,
.crm-products-header h2 {
    margin: 4px 0 0;
    color: #172033;
    font-size: 22px;
    font-weight: 950;
}

.crm-filter-step {
    color: #7c3aed;
    font-size: 12px;
    font-weight: 900;
}

.crm-reset-filters,
.crm-reset-empty {
    border: 0;
    border-radius: 13px;
    padding: 10px 14px;
    background: #f3f0ff;
    color: #6d28d9;
    font-weight: 850;
}

.crm-filter-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.crm-filter-chip,
.crm-mini-filter {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 43px;
    border: 1px solid #e1e6ef;
    border-radius: 14px;
    padding: 9px 15px;
    background: #fff;
    color: #3b4558;
    font-weight: 800;
    transition:
        transform .2s ease,
        border-color .2s ease,
        background .2s ease,
        color .2s ease,
        box-shadow .2s ease;
}

.crm-filter-chip:hover,
.crm-mini-filter:hover {
    transform: translateY(-2px);
    border-color: #b8a6ff;
}

.crm-filter-chip.active,
.crm-mini-filter.active {
    border-color: transparent;
    color: #fff;
    background: linear-gradient(135deg, #2563eb, #7c3aed);
    box-shadow: 0 9px 21px rgba(79, 70, 229, .23);
}

.crm-filter-block {
    padding-top: 20px;
    margin-top: 20px;
    border-top: 1px dashed #e2e7ef;
}

.crm-filter-label {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 12px;
    color: #657085;
    font-size: 13px;
    font-weight: 900;
}

.crm-flag {
    font-size: 18px;
}

.crm-product-counter {
    padding: 9px 13px;
    border-radius: 13px;
    background: #f5f7fb;
    color: #687386;
    font-weight: 750;
}

.crm-product-counter strong {
    color: #2563eb;
    font-size: 18px;
}

.crm-products-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.crm-product-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
    border: 1px solid #e3e8f1;
    border-radius: 22px;
    padding: 20px;
    background:
        linear-gradient(180deg, #fff 0%, #fbfcff 100%);
    box-shadow: 0 9px 27px rgba(30, 41, 59, .06);
    transition:
        transform .24s ease,
        border-color .24s ease,
        box-shadow .24s ease;
    animation: crmCatalogCardIn .35s ease both;
}

.crm-product-card:hover {
    transform: translateY(-5px);
    border-color: #b8c6ff;
    box-shadow: 0 17px 41px rgba(30, 41, 59, .12);
}

.crm-product-card[hidden] {
    display: none !important;
}

.crm-card-topline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 18px;
}

.crm-protocol-badge,
.crm-country-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
    border-radius: 999px;
    padding: 7px 10px;
    font-size: 12px;
    font-weight: 900;
}

.crm-protocol-badge {
    color: #5b21b6;
    background: #f3e8ff;
}

.crm-country-badge {
    color: #344055;
    background: #f1f5f9;
}

.crm-card-title h3 {
    min-height: 54px;
    margin: 0 0 6px;
    color: #172033;
    font-size: 17px;
    font-weight: 950;
    line-height: 1.65;
}

.crm-card-title p {
    min-height: 23px;
    margin: 0;
    color: #7b8495;
    font-size: 12px;
    line-height: 1.7;
}

.crm-card-specs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 19px 0;
}

.crm-spec {
    display: flex;
    align-items: center;
    gap: 9px;
    min-width: 0;
    padding: 11px;
    border: 1px solid #edf0f5;
    border-radius: 15px;
    background: #f8fafc;
}

.crm-spec-icon {
    display: grid;
    flex: 0 0 35px;
    width: 35px;
    height: 35px;
    place-items: center;
    border-radius: 11px;
    color: #4f46e5;
    background: #eef2ff;
}

.crm-spec div {
    min-width: 0;
}

.crm-spec small,
.crm-spec strong {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-spec small {
    color: #8a93a3;
    font-size: 10px;
}

.crm-spec strong {
    margin-top: 3px;
    color: #30394a;
    font-size: 12px;
}

.crm-card-description {
    margin-bottom: 17px;
    padding: 12px;
    border-radius: 13px;
    background: #f7f8fb;
    color: #687386;
    font-size: 12px;
    line-height: 1.9;
}

.crm-card-footer {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    margin-top: auto;
    padding-top: 17px;
    border-top: 1px solid #e9edf3;
}

.crm-price small,
.crm-price strong,
.crm-price span {
    display: block;
}

.crm-price small {
    color: #8992a2;
    font-size: 10px;
}

.crm-price strong {
    margin-top: 4px;
    color: #172033;
    font-size: 17px;
    font-weight: 950;
}

.crm-price span {
    margin-top: 3px;
    color: #7a8495;
    font-size: 10px;
}

.crm-select-product {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 44px;
    border: 0;
    border-radius: 14px;
    padding: 10px 15px;
    color: #fff !important;
    background: linear-gradient(135deg, #2563eb, #7c3aed);
    box-shadow: 0 9px 22px rgba(79, 70, 229, .22);
    font-size: 13px;
    font-weight: 900;
    text-decoration: none !important;
    transition:
        transform .2s ease,
        box-shadow .2s ease;
}

.crm-select-product:hover {
    transform: translateY(-2px);
    box-shadow: 0 13px 27px rgba(79, 70, 229, .29);
}

.crm-select-product:disabled,
.crm-product-card.is-unavailable .crm-select-product {
    cursor: not-allowed;
    opacity: .55;
}

.crm-empty-results,
.crm-empty-catalog {
    padding: 50px 20px;
    text-align: center;
}

.crm-empty-results > span,
.crm-empty-catalog > span {
    display: grid;
    width: 76px;
    height: 76px;
    margin: 0 auto 18px;
    place-items: center;
    border-radius: 24px;
    color: #7c3aed;
    background: #f3e8ff;
    font-size: 30px;
}

.crm-empty-results h3,
.crm-empty-catalog h2 {
    color: #172033;
    font-weight: 950;
}

.crm-empty-results p,
.crm-empty-catalog p {
    color: #758094;
}

@keyframes crmCatalogCardIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 1100px) {
    .crm-products-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .crm-catalog {
        padding: 4px 0 32px;
    }

    .crm-catalog-hero {
        min-height: 0;
        margin-right: 0;
        margin-left: 0;
        padding: 32px 21px;
        border-radius: 22px;
    }

    .crm-catalog-hero h1 {
        font-size: 28px;
    }

    .crm-catalog-hero p {
        font-size: 14px;
    }

    .crm-filter-panel,
    .crm-products-section {
        padding: 18px 14px;
        border-radius: 20px;
    }

    .crm-filter-heading,
    .crm-products-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .crm-filter-row {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 7px;
        scrollbar-width: thin;
    }

    .crm-filter-chip,
    .crm-mini-filter {
        flex: 0 0 auto;
        white-space: nowrap;
    }

    .crm-products-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .crm-product-card {
        padding: 17px;
        border-radius: 19px;
    }

    .crm-card-title h3 {
        min-height: 0;
    }

    .crm-card-specs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .crm-card-footer {
        align-items: stretch;
        flex-direction: column;
    }

    .crm-select-product {
        width: 100%;
    }

    .crm-reset-filters {
        width: 100%;
    }
}

@media (max-width: 390px) {
    .crm-card-specs {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* CRM_DYNAMIC_CATALOG_END */

/* CRM_CONFIGURE_PRODUCT_UI_BEGIN */

body.crm-configure-product-page #order-standard_cart {
    max-width: 1360px;
    margin: 0 auto;
    padding-bottom: 45px;
}

.crm-configure-hero {
    position: relative;
    overflow: hidden;
    margin-bottom: 22px;
    padding: 30px;
    border-radius: 26px;
    color: #fff;
    background:
        radial-gradient(
            circle at top left,
            rgba(34, 211, 238, .30),
            transparent 38%
        ),
        linear-gradient(
            135deg,
            #172554 0%,
            #312e81 50%,
            #6d28d9 100%
        );
    box-shadow: 0 20px 55px rgba(49, 46, 129, .22);
}

.crm-configure-hero::after {
    content: "";
    position: absolute;
    left: -80px;
    bottom: -130px;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: rgba(244, 114, 182, .18);
}

.crm-configure-hero__content {
    position: relative;
    z-index: 2;
}

.crm-configure-hero__badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    padding: 8px 13px;
    border: 1px solid rgba(255, 255, 255, .20);
    border-radius: 999px;
    background: rgba(255, 255, 255, .10);
    font-size: 12px;
    font-weight: 850;
    backdrop-filter: blur(10px);
}

.crm-configure-hero h1 {
    margin: 0 0 9px;
    color: #fff;
    font-size: clamp(24px, 4vw, 36px);
    font-weight: 950;
    line-height: 1.55;
}

.crm-configure-hero p {
    max-width: 760px;
    margin: 0;
    color: rgba(255, 255, 255, .82);
    font-size: 14px;
    line-height: 2;
}

.crm-configure-progress {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 20px;
}

.crm-configure-progress__item {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 11px;
    border-radius: 12px;
    background: rgba(255, 255, 255, .10);
    color: rgba(255, 255, 255, .75);
    font-size: 11px;
    font-weight: 800;
}

.crm-configure-progress__item.is-active {
    background: #fff;
    color: #4f46e5;
}

.crm-configure-progress__line {
    width: 28px;
    height: 2px;
    background: rgba(255, 255, 255, .22);
}

body.crm-configure-product-page #order-standard_cart form {
    position: relative;
}

body.crm-configure-product-page #order-standard_cart .panel,
body.crm-configure-product-page #order-standard_cart .card,
body.crm-configure-product-page #order-standard_cart .product-info,
body.crm-configure-product-page #order-standard_cart .configurable-options,
body.crm-configure-product-page #order-standard_cart .sub-heading {
    border-radius: 21px;
}

body.crm-configure-product-page #order-standard_cart .form-group {
    margin-bottom: 18px;
}

body.crm-configure-product-page #order-standard_cart label {
    display: block;
    margin-bottom: 8px;
    color: #354052;
    font-size: 13px;
    font-weight: 850;
}

body.crm-configure-product-page #order-standard_cart .form-control,
body.crm-configure-product-page #order-standard_cart select,
body.crm-configure-product-page #order-standard_cart textarea,
body.crm-configure-product-page #order-standard_cart input[type="text"],
body.crm-configure-product-page #order-standard_cart input[type="tel"] {
    width: 100%;
    min-height: 50px;
    border: 1px solid #dfe5ee;
    border-radius: 15px;
    padding-right: 14px;
    padding-left: 14px;
    background: #fff;
    box-shadow: none;
    font-size: 15px;
    transition:
        border-color .2s ease,
        box-shadow .2s ease,
        transform .2s ease;
}

body.crm-configure-product-page #order-standard_cart .form-control:focus,
body.crm-configure-product-page #order-standard_cart select:focus,
body.crm-configure-product-page #order-standard_cart textarea:focus,
body.crm-configure-product-page #order-standard_cart input[type="text"]:focus,
body.crm-configure-product-page #order-standard_cart input[type="tel"]:focus {
    border-color: #6366f1;
    outline: 0;
    box-shadow: 0 0 0 4px rgba(99, 102, 241, .11);
}

.crm-customer-field {
    position: relative;
    margin: 23px 0 !important;
    padding: 21px !important;
    border: 2px solid #c7d2fe !important;
    border-radius: 20px !important;
    background:
        linear-gradient(
            135deg,
            rgba(238, 242, 255, .95),
            rgba(250, 245, 255, .95)
        ) !important;
    box-shadow: 0 12px 32px rgba(79, 70, 229, .10);
}

.crm-customer-field::before {
    content: "اطلاعات استفاده‌کننده سرویس";
    display: inline-flex;
    align-items: center;
    margin-bottom: 13px;
    padding: 6px 10px;
    border-radius: 10px;
    color: #5b21b6;
    background: #ede9fe;
    font-size: 11px;
    font-weight: 900;
}

.crm-customer-field label {
    color: #312e81 !important;
    font-size: 15px !important;
    font-weight: 950 !important;
}

.crm-customer-field input {
    min-height: 55px !important;
    border: 2px solid #a5b4fc !important;
    background: #fff !important;
    font-size: 16px !important;
    font-weight: 750;
}

.crm-customer-field input::placeholder {
    color: #9aa3b2;
    font-weight: 500;
}

.crm-customer-field .field-help-text,
.crm-customer-field .help-block,
.crm-customer-field p,
.crm-customer-field small {
    color: #6b7280 !important;
    line-height: 1.9;
}

.crm-customer-field-help {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin-top: 11px;
    color: #646f82;
    font-size: 12px;
    line-height: 1.9;
}

.crm-customer-field-help i {
    margin-top: 4px;
    color: #7c3aed;
}

.crm-configure-security-note {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    margin: 18px 0;
    padding: 15px 17px;
    border: 1px solid #dbeafe;
    border-radius: 16px;
    color: #475569;
    background: #eff6ff;
    font-size: 12px;
    line-height: 1.9;
}

.crm-configure-security-note i {
    margin-top: 4px;
    color: #2563eb;
    font-size: 17px;
}

body.crm-configure-product-page #order-standard_cart
.btn-primary,
body.crm-configure-product-page #order-standard_cart
.btn-success,
body.crm-configure-product-page #order-standard_cart
button[type="submit"] {
    min-height: 50px;
    border: 0;
    border-radius: 15px;
    padding: 12px 22px;
    color: #fff;
    background:
        linear-gradient(
            135deg,
            #2563eb,
            #7c3aed
        );
    box-shadow: 0 11px 26px rgba(79, 70, 229, .22);
    font-weight: 900;
    transition:
        transform .2s ease,
        box-shadow .2s ease;
}

body.crm-configure-product-page #order-standard_cart
.btn-primary:hover,
body.crm-configure-product-page #order-standard_cart
.btn-success:hover,
body.crm-configure-product-page #order-standard_cart
button[type="submit"]:hover {
    transform: translateY(-2px);
    box-shadow: 0 15px 32px rgba(79, 70, 229, .28);
}













@keyframes crmConfigureSummaryIn {
    from {
        opacity: 0;
        transform: translateY(14px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 767px) {
    body.crm-configure-product-page #order-standard_cart {
        padding-right: 0;
        padding-left: 0;
    }

    .crm-configure-hero {
        margin-right: 0;
        margin-left: 0;
        padding: 27px 19px;
        border-radius: 21px;
    }

    .crm-configure-progress {
        overflow-x: auto;
        padding-bottom: 5px;
    }

    .crm-configure-progress__item {
        flex: 0 0 auto;
        white-space: nowrap;
    }

    .crm-configure-progress__line {
        flex: 0 0 20px;
    }

    .crm-customer-field {
        padding: 17px !important;
        border-radius: 18px !important;
    }

    

    body.crm-configure-product-page #order-standard_cart
    .row > [class*="col-"] {
        width: 100%;
    }

    body.crm-configure-product-page #order-standard_cart
    button[type="submit"],
    body.crm-configure-product-page #order-standard_cart
    .btn-success {
        width: 100%;
    }
}

/* CRM_CONFIGURE_PRODUCT_UI_END */

/* CRM_MODERN_CONFIGURE_V2_BEGIN */

#order-standard_cart.crm-modern-configure-page {
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
    padding: 8px 6px 55px;
    direction: rtl;
    color: #172033;
}

#order-standard_cart.crm-modern-configure-page > .row {
    display: block !important;
    margin: 0 !important;
}

#order-standard_cart.crm-modern-configure-page .cart-body {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

#order-standard_cart.crm-modern-configure-page .cart-sidebar {
    display: none !important;
}

/* فرم اصلی */

#order-standard_cart.crm-modern-configure-page
#frmConfigureProduct > .row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 365px;
    align-items: start;
    gap: 22px;
    margin: 0 !important;
}

/* بخش اصلی */

#order-standard_cart.crm-modern-configure-page
.secondary-cart-body {
    width: 100% !important;
    min-width: 0;
    margin: 0 !important;
    padding: 27px !important;
    border: 1px solid #e4e9f1;
    border-radius: 25px;
    background: #fff;
    box-shadow: 0 15px 44px rgba(30, 41, 59, .08);
}

/* ستون خلاصه */

#order-standard_cart.crm-modern-configure-page
.secondary-cart-sidebar {
    position: sticky;
    top: 20px;
    width: 100% !important;
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
}

#order-standard_cart.crm-modern-configure-page
#orderSummary {
    overflow: hidden;
    border: 1px solid #dfe5ee;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 17px 46px rgba(30, 41, 59, .11);
}

#order-standard_cart.crm-modern-configure-page
.order-summary {
    margin: 0 !important;
    padding: 23px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background:
        radial-gradient(
            circle at top left,
            rgba(124, 58, 237, .12),
            transparent 38%
        ),
        linear-gradient(180deg, #fbfcff, #fff);
    box-shadow: none !important;
}

#order-standard_cart.crm-modern-configure-page
.order-summary h2 {
    margin: 0 0 19px;
    color: #172033;
    font-size: 20px !important;
    font-weight: 950;
}

#order-standard_cart.crm-modern-configure-page
.summary-container {
    color: #475569;
    line-height: 1.9;
}

#order-standard_cart.crm-modern-configure-page
#orderSummary > .text-center {
    padding: 0 23px 23px;
}

#order-standard_cart.crm-modern-configure-page
#btnCompleteProductConfig {
    width: 100%;
    min-height: 54px;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 16px !important;
    color: #fff !important;
    background:
        linear-gradient(
            135deg,
            #2563eb 0%,
            #6d28d9 100%
        ) !important;
    box-shadow: 0 13px 30px rgba(79, 70, 229, .25);
    font-size: 15px;
    font-weight: 950;
    transition:
        transform .2s ease,
        box-shadow .2s ease;
}

#order-standard_cart.crm-modern-configure-page
#btnCompleteProductConfig:hover {
    transform: translateY(-2px);
    box-shadow: 0 17px 36px rgba(79, 70, 229, .32);
}

/* متن اولیه قدیمی */

#order-standard_cart.crm-modern-configure-page
.secondary-cart-body > p:first-child {
    display: none;
}

/* اطلاعات محصول */

#order-standard_cart.crm-modern-configure-page
.product-info {
    position: relative;
    overflow: hidden;
    margin: 0 0 23px !important;
    padding: 25px !important;
    border: 0 !important;
    border-radius: 22px !important;
    color: #fff;
    background:
        radial-gradient(
            circle at top left,
            rgba(34, 211, 238, .30),
            transparent 38%
        ),
        linear-gradient(
            135deg,
            #172554 0%,
            #312e81 52%,
            #6d28d9 100%
        ) !important;
    box-shadow: 0 16px 40px rgba(49, 46, 129, .22);
}

#order-standard_cart.crm-modern-configure-page
.product-info::after {
    content: "";
    position: absolute;
    left: -65px;
    bottom: -95px;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: rgba(244, 114, 182, .16);
}

#order-standard_cart.crm-modern-configure-page
.product-info .product-title {
    position: relative;
    z-index: 2;
    margin: 0 0 9px !important;
    color: #fff !important;
    font-size: clamp(22px, 4vw, 31px) !important;
    font-weight: 950 !important;
    line-height: 1.55;
}

#order-standard_cart.crm-modern-configure-page
.product-info p:not(.product-title) {
    position: relative;
    z-index: 2;
    margin: 0 !important;
    color: rgba(255,255,255,.82) !important;
    font-size: 13px;
    line-height: 2;
}

/* خطاها */

#order-standard_cart.crm-modern-configure-page
#containerProductValidationErrors {
    margin: 0 0 20px;
    padding: 15px 17px;
    border: 1px solid #fecaca;
    border-radius: 16px;
    background: #fff1f2;
    color: #991b1b;
}

/* بخش‌ها */

#order-standard_cart.crm-modern-configure-page
.field-container {
    margin: 0 0 19px !important;
    padding: 20px !important;
    border: 1px solid #e4e9f1;
    border-radius: 19px;
    background: #fbfcfe;
}

#order-standard_cart.crm-modern-configure-page
.sub-heading {
    display: flex;
    align-items: center;
    margin: 24px 0 14px !important;
    border: 0 !important;
}

#order-standard_cart.crm-modern-configure-page
.sub-heading span {
    display: inline-flex;
    align-items: center;
    min-height: 37px;
    padding: 8px 13px;
    border-radius: 11px;
    color: #5b21b6 !important;
    background: #f3e8ff !important;
    font-size: 12px;
    font-weight: 900;
}

/* لیبل و ورودی‌ها */

#order-standard_cart.crm-modern-configure-page
.form-group {
    margin-bottom: 17px;
}

#order-standard_cart.crm-modern-configure-page
.form-group:last-child {
    margin-bottom: 0;
}

#order-standard_cart.crm-modern-configure-page
label {
    display: block;
    margin-bottom: 8px;
    color: #354052;
    font-size: 13px;
    font-weight: 900;
}

#order-standard_cart.crm-modern-configure-page
.form-control,
#order-standard_cart.crm-modern-configure-page
.custom-select,
#order-standard_cart.crm-modern-configure-page
select,
#order-standard_cart.crm-modern-configure-page
textarea,
#order-standard_cart.crm-modern-configure-page
input[type="text"],
#order-standard_cart.crm-modern-configure-page
input[type="tel"],
#order-standard_cart.crm-modern-configure-page
input[type="number"] {
    width: 100%;
    min-height: 51px;
    border: 1px solid #dce3ed;
    border-radius: 14px;
    padding: 10px 14px;
    background: #fff;
    color: #263143;
    box-shadow: none;
    font-size: 15px;
    transition:
        border-color .2s ease,
        box-shadow .2s ease,
        transform .2s ease;
}

#order-standard_cart.crm-modern-configure-page
.form-control:focus,
#order-standard_cart.crm-modern-configure-page
.custom-select:focus,
#order-standard_cart.crm-modern-configure-page
select:focus,
#order-standard_cart.crm-modern-configure-page
textarea:focus,
#order-standard_cart.crm-modern-configure-page
input:focus {
    border-color: #6366f1;
    outline: 0;
    box-shadow: 0 0 0 4px rgba(99,102,241,.11);
}

/* فیلد نام مشتری */

#order-standard_cart.crm-modern-configure-page
.crm-customer-field {
    margin: 22px 0 !important;
    padding: 22px !important;
    border: 2px solid #c4b5fd !important;
    border-radius: 21px !important;
    background:
        linear-gradient(
            135deg,
            #eef2ff 0%,
            #faf5ff 100%
        ) !important;
    box-shadow: 0 13px 34px rgba(109, 40, 217, .10);
}

#order-standard_cart.crm-modern-configure-page
.crm-customer-field::before {
    content: "مشخصات استفاده‌کننده";
    display: inline-flex;
    align-items: center;
    margin-bottom: 13px;
    padding: 7px 11px;
    border-radius: 10px;
    color: #5b21b6;
    background: #ede9fe;
    font-size: 11px;
    font-weight: 950;
}

#order-standard_cart.crm-modern-configure-page
.crm-customer-field label {
    color: #312e81 !important;
    font-size: 15px !important;
    font-weight: 950 !important;
}

#order-standard_cart.crm-modern-configure-page
.crm-customer-field input {
    min-height: 57px !important;
    border: 2px solid #a5b4fc !important;
    font-size: 16px !important;
    font-weight: 750;
}

/* توضیحات فیلد */

#order-standard_cart.crm-modern-configure-page
.field-help-text {
    display: block;
    margin-top: 8px;
    color: #778195;
    font-size: 11px;
    line-height: 1.9;
}

/* Addonها */

#order-standard_cart.crm-modern-configure-page
.addon-products {
    margin-right: -6px;
    margin-left: -6px;
}

#order-standard_cart.crm-modern-configure-page
.addon-products > [class*="col-"] {
    padding-right: 6px;
    padding-left: 6px;
}

#order-standard_cart.crm-modern-configure-page
.panel-addon {
    overflow: hidden;
    border: 1px solid #e0e6ef !important;
    border-radius: 17px !important;
    background: #fff;
    box-shadow: none !important;
}

#order-standard_cart.crm-modern-configure-page
.panel-addon-selected {
    border-color: #8b5cf6 !important;
    box-shadow: 0 0 0 3px rgba(139,92,246,.10) !important;
}

/* لودر خلاصه */

#order-standard_cart.crm-modern-configure-page
#orderSummaryLoader {
    border-radius: 14px;
    color: #6d28d9;
}

/* پیام مستقل بودن سرویس */

.crm-independent-service-note {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    margin: 0 0 19px;
    padding: 16px 17px;
    border: 1px solid #bfdbfe;
    border-radius: 17px;
    color: #475569;
    background: #eff6ff;
    font-size: 12px;
    line-height: 1.9;
}

.crm-independent-service-note i {
    flex: 0 0 auto;
    margin-top: 4px;
    color: #2563eb;
    font-size: 18px;
}

.crm-independent-service-note strong {
    display: block;
    margin-bottom: 2px;
    color: #1e3a8a;
}

/* موبایل */

@media (max-width: 990px) {
    #order-standard_cart.crm-modern-configure-page
    #frmConfigureProduct > .row {
        grid-template-columns: minmax(0, 1fr);
    }

    #order-standard_cart.crm-modern-configure-page
    .secondary-cart-sidebar {
        position: static;
    }
}

@media (max-width: 767px) {
    #order-standard_cart.crm-modern-configure-page {
        padding: 3px 0 105px;
    }

    #order-standard_cart.crm-modern-configure-page
    .secondary-cart-body {
        padding: 15px !important;
        border-radius: 20px;
    }

    #order-standard_cart.crm-modern-configure-page
    .product-info {
        padding: 22px 18px !important;
        border-radius: 19px !important;
    }

    #order-standard_cart.crm-modern-configure-page
    .product-info .product-title {
        font-size: 23px !important;
    }

    #order-standard_cart.crm-modern-configure-page
    .field-container {
        padding: 16px !important;
        border-radius: 17px;
    }

    #order-standard_cart.crm-modern-configure-page
    .crm-customer-field {
        padding: 17px !important;
        border-radius: 18px !important;
    }

    #order-standard_cart.crm-modern-configure-page
    #orderSummary {
        border-radius: 20px;
    }

    #order-standard_cart.crm-modern-configure-page
    .order-summary {
        padding: 19px !important;
    }

    #order-standard_cart.crm-modern-configure-page
    #orderSummary > .text-center {
        padding: 0 19px 19px;
    }

    #order-standard_cart.crm-modern-configure-page
    .row > [class*="col-"] {
        width: 100%;
    }
}

/* CRM_MODERN_CONFIGURE_V2_END */

/* CRM_MODERN_VIEWCART_BEGIN */

#order-standard_cart.crm-modern-viewcart {
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
    padding: 8px 5px 55px;
    direction: rtl;
    color: #172033;
}

/* حذف ستون‌ها و ظاهر قدیمی */

#order-standard_cart.crm-modern-viewcart .cart-sidebar,
#order-standard_cart.crm-modern-viewcart
.sidebar-collapsed,
#order-standard_cart.crm-modern-viewcart
.categories-collapsed {
    display: none !important;
}

#order-standard_cart.crm-modern-viewcart > .row {
    display: block !important;
    margin: 0 !important;
}

#order-standard_cart.crm-modern-viewcart
.cart-body {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* سربرگ سبد خرید */

.crm-viewcart-hero {
    position: relative;
    overflow: hidden;
    margin-bottom: 22px;
    padding: 32px;
    border-radius: 27px;
    color: #fff;
    background:
        radial-gradient(
            circle at top left,
            rgba(34, 211, 238, .28),
            transparent 38%
        ),
        linear-gradient(
            135deg,
            #172554 0%,
            #312e81 50%,
            #6d28d9 100%
        );
    box-shadow: 0 20px 55px rgba(49, 46, 129, .23);
}

.crm-viewcart-hero::after {
    content: "";
    position: absolute;
    left: -80px;
    bottom: -130px;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: rgba(244, 114, 182, .18);
}

.crm-viewcart-hero__content {
    position: relative;
    z-index: 2;
}

.crm-viewcart-hero__badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    padding: 8px 13px;
    border: 1px solid rgba(255, 255, 255, .20);
    border-radius: 999px;
    background: rgba(255, 255, 255, .10);
    font-size: 12px;
    font-weight: 900;
}

.crm-viewcart-hero h1 {
    margin: 0 0 8px;
    color: #fff;
    font-size: clamp(26px, 4vw, 38px);
    font-weight: 950;
    line-height: 1.5;
}

.crm-viewcart-hero p {
    margin: 0;
    color: rgba(255, 255, 255, .82);
    font-size: 14px;
    line-height: 2;
}

.crm-viewcart-steps {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 20px;
}

.crm-viewcart-step {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 11px;
    border-radius: 12px;
    color: rgba(255,255,255,.72);
    background: rgba(255,255,255,.10);
    font-size: 11px;
    font-weight: 850;
}

.crm-viewcart-step.is-active {
    color: #4f46e5;
    background: #fff;
}

.crm-viewcart-step-line {
    width: 27px;
    height: 2px;
    background: rgba(255,255,255,.22);
}

/* کادرهای اصلی صفحه */

#order-standard_cart.crm-modern-viewcart
.view-cart-items,
#order-standard_cart.crm-modern-viewcart
.view-cart-tabs,
#order-standard_cart.crm-modern-viewcart
.order-summary,
#order-standard_cart.crm-modern-viewcart
.panel,
#order-standard_cart.crm-modern-viewcart
.card {
    overflow: hidden;
    border: 1px solid #e2e8f0 !important;
    border-radius: 23px !important;
    background: #fff;
    box-shadow: 0 14px 42px rgba(30, 41, 59, .08);
}

/* جدول محصولات */

#order-standard_cart.crm-modern-viewcart
.view-cart-items {
    margin-bottom: 21px;
}

#order-standard_cart.crm-modern-viewcart
.view-cart-items-header {
    padding: 18px 21px;
    border: 0;
    color: #fff;
    background:
        linear-gradient(
            135deg,
            #1e3a8a,
            #6d28d9
        );
    font-weight: 900;
}

#order-standard_cart.crm-modern-viewcart
.view-cart-items .item {
    margin: 0 !important;
    padding: 21px !important;
    border-bottom: 1px solid #edf0f5 !important;
    background: #fff;
    transition:
        background .2s ease,
        transform .2s ease;
}

#order-standard_cart.crm-modern-viewcart
.view-cart-items .item:last-child {
    border-bottom: 0 !important;
}

#order-standard_cart.crm-modern-viewcart
.view-cart-items .item:hover {
    background: #fafbff;
}

#order-standard_cart.crm-modern-viewcart
.product-name,
#order-standard_cart.crm-modern-viewcart
.item-title {
    color: #172033;
    font-size: 16px;
    font-weight: 950;
    line-height: 1.7;
}

#order-standard_cart.crm-modern-viewcart
.product-group {
    display: inline-flex;
    margin-top: 5px;
    padding: 5px 9px;
    border-radius: 999px;
    color: #5b21b6;
    background: #f3e8ff;
    font-size: 10px;
    font-weight: 900;
}

/* مشخصات هر سرویس */

#order-standard_cart.crm-modern-viewcart
.item-domain,
#order-standard_cart.crm-modern-viewcart
.item-custom-fields,
#order-standard_cart.crm-modern-viewcart
.product-configurable-options {
    margin-top: 12px;
    padding: 12px 14px;
    border: 1px solid #e8ecf2;
    border-radius: 14px;
    color: #566176;
    background: #f8fafc;
    font-size: 12px;
    line-height: 1.9;
}

/* قیمت‌ها */

#order-standard_cart.crm-modern-viewcart
.item-price,
#order-standard_cart.crm-modern-viewcart
.price {
    color: #172033;
    font-size: 17px;
    font-weight: 950;
}

#order-standard_cart.crm-modern-viewcart
.cycle {
    margin-top: 3px;
    color: #8590a2;
    font-size: 10px;
}

/* دکمه‌های حذف و ویرایش */

#order-standard_cart.crm-modern-viewcart
.btn-link,
#order-standard_cart.crm-modern-viewcart
.btn-default,
#order-standard_cart.crm-modern-viewcart
.btn-danger {
    min-height: 39px;
    border-radius: 12px !important;
    padding: 8px 11px;
    font-size: 12px;
    font-weight: 850;
}

#order-standard_cart.crm-modern-viewcart
.btn-danger {
    border: 1px solid #fecaca !important;
    color: #dc2626 !important;
    background: #fff1f2 !important;
}

#order-standard_cart.crm-modern-viewcart
.btn-default {
    border: 1px solid #dbe3ee !important;
    color: #475569 !important;
    background: #fff !important;
}

/* خلاصه سفارش */

#order-standard_cart.crm-modern-viewcart
.summary-container,
#order-standard_cart.crm-modern-viewcart
.view-cart-summary {
    overflow: hidden;
    border: 1px solid #dfe5ee;
    border-radius: 23px;
    background: #fff;
    box-shadow: 0 15px 43px rgba(30,41,59,.09);
}

#order-standard_cart.crm-modern-viewcart
.summary-heading {
    padding: 18px 21px;
    color: #172033;
    background:
        linear-gradient(
            135deg,
            #eef2ff,
            #faf5ff
        );
    font-size: 18px;
    font-weight: 950;
}

#order-standard_cart.crm-modern-viewcart
.summary-totals,
#order-standard_cart.crm-modern-viewcart
.view-cart-totals {
    padding: 20px;
}

#order-standard_cart.crm-modern-viewcart
.grand-total,
#order-standard_cart.crm-modern-viewcart
.total-due-today {
    margin-top: 14px;
    padding-top: 15px;
    border-top: 1px solid #e7ebf1;
    color: #172033;
    font-size: 20px;
    font-weight: 950;
}

/* کد تخفیف */

#order-standard_cart.crm-modern-viewcart
.promo-code-form,
#order-standard_cart.crm-modern-viewcart
.view-cart-promotion-code {
    margin-top: 18px;
    padding: 17px;
    border: 1px dashed #cbd5e1;
    border-radius: 17px;
    background: #f8fafc;
}

#order-standard_cart.crm-modern-viewcart
input.form-control,
#order-standard_cart.crm-modern-viewcart
select.form-control {
    min-height: 48px;
    border: 1px solid #dce3ed;
    border-radius: 14px;
    padding: 10px 14px;
    background: #fff;
    font-size: 15px;
    box-shadow: none;
}

#order-standard_cart.crm-modern-viewcart
input.form-control:focus,
#order-standard_cart.crm-modern-viewcart
select.form-control:focus {
    border-color: #6366f1;
    outline: 0;
    box-shadow: 0 0 0 4px rgba(99,102,241,.11);
}

/* دکمه ادامه خرید */

#order-standard_cart.crm-modern-viewcart
#checkout,
#order-standard_cart.crm-modern-viewcart
.btn-checkout,
#order-standard_cart.crm-modern-viewcart
a[href*="a=checkout"] {
    min-height: 54px;
    border: 0 !important;
    border-radius: 16px !important;
    padding: 13px 22px;
    color: #fff !important;
    background:
        linear-gradient(
            135deg,
            #2563eb,
            #6d28d9
        ) !important;
    box-shadow: 0 13px 30px rgba(79,70,229,.25);
    font-size: 15px;
    font-weight: 950;
    text-decoration: none !important;
    transition:
        transform .2s ease,
        box-shadow .2s ease;
}

#order-standard_cart.crm-modern-viewcart
#checkout:hover,
#order-standard_cart.crm-modern-viewcart
.btn-checkout:hover,
#order-standard_cart.crm-modern-viewcart
a[href*="a=checkout"]:hover {
    transform: translateY(-2px);
    box-shadow: 0 17px 36px rgba(79,70,229,.32);
}

/* دکمه ادامه خرید و افزودن سرویس دیگر */

.crm-cart-add-another {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 48px;
    border: 1px solid #c7d2fe;
    border-radius: 15px;
    padding: 11px 17px;
    color: #4f46e5 !important;
    background: #eef2ff;
    font-weight: 900;
    text-decoration: none !important;
}

.crm-cart-independent-note {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    margin-bottom: 20px;
    padding: 16px 18px;
    border: 1px solid #bfdbfe;
    border-radius: 18px;
    color: #475569;
    background: #eff6ff;
    font-size: 12px;
    line-height: 1.9;
}

.crm-cart-independent-note i {
    margin-top: 4px;
    color: #2563eb;
    font-size: 18px;
}

.crm-cart-independent-note strong {
    display: block;
    margin-bottom: 2px;
    color: #1e3a8a;
}

/* موبایل */

@media (max-width: 767px) {
    #order-standard_cart.crm-modern-viewcart {
        padding: 3px 0 38px;
    }

    .crm-viewcart-hero {
        padding: 27px 19px;
        border-radius: 21px;
    }

    .crm-viewcart-hero h1 {
        font-size: 26px;
    }

    .crm-viewcart-steps {
        overflow-x: auto;
        padding-bottom: 5px;
    }

    .crm-viewcart-step {
        flex: 0 0 auto;
        white-space: nowrap;
    }

    .crm-viewcart-step-line {
        flex: 0 0 20px;
    }

    #order-standard_cart.crm-modern-viewcart
    .view-cart-items {
        border-radius: 19px !important;
    }

    #order-standard_cart.crm-modern-viewcart
    .view-cart-items-header {
        display: none !important;
    }

    #order-standard_cart.crm-modern-viewcart
    .view-cart-items .item {
        padding: 17px !important;
    }

    #order-standard_cart.crm-modern-viewcart
    .view-cart-items .item .row {
        display: block;
    }

    #order-standard_cart.crm-modern-viewcart
    .view-cart-items .item [class*="col-"] {
        width: 100%;
        max-width: 100%;
        margin-bottom: 9px;
        text-align: right !important;
    }

    #order-standard_cart.crm-modern-viewcart
    #checkout,
    #order-standard_cart.crm-modern-viewcart
    .btn-checkout,
    #order-standard_cart.crm-modern-viewcart
    a[href*="a=checkout"],
    .crm-cart-add-another {
        width: 100%;
    }
}

/* CRM_MODERN_VIEWCART_END */

/* CRM_MODERN_CHECKOUT_BEGIN */

body.crm-checkout-page #order-standard_cart {
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
    padding: 8px 5px 55px;
    direction: rtl;
    color: #172033;
}

.crm-checkout-hero {
    position: relative;
    overflow: hidden;
    margin-bottom: 22px;
    padding: 32px;
    border-radius: 27px;
    color: #fff;
    background:
        radial-gradient(
            circle at top left,
            rgba(34, 211, 238, .28),
            transparent 38%
        ),
        linear-gradient(
            135deg,
            #172554 0%,
            #312e81 50%,
            #6d28d9 100%
        );
    box-shadow: 0 20px 55px rgba(49, 46, 129, .23);
}

.crm-checkout-hero::after {
    content: "";
    position: absolute;
    left: -80px;
    bottom: -130px;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: rgba(244, 114, 182, .18);
}

.crm-checkout-hero__content {
    position: relative;
    z-index: 2;
}

.crm-checkout-hero__badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    padding: 8px 13px;
    border: 1px solid rgba(255, 255, 255, .20);
    border-radius: 999px;
    background: rgba(255, 255, 255, .10);
    font-size: 12px;
    font-weight: 900;
}

.crm-checkout-hero h1 {
    margin: 0 0 8px;
    color: #fff;
    font-size: clamp(26px, 4vw, 38px);
    font-weight: 950;
    line-height: 1.5;
}

.crm-checkout-hero p {
    margin: 0;
    color: rgba(255, 255, 255, .82);
    font-size: 14px;
    line-height: 2;
}

.crm-checkout-steps {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 20px;
}

.crm-checkout-step {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 11px;
    border-radius: 12px;
    color: rgba(255,255,255,.72);
    background: rgba(255,255,255,.10);
    font-size: 11px;
    font-weight: 850;
}

.crm-checkout-step.is-active {
    color: #4f46e5;
    background: #fff;
}

.crm-checkout-step-line {
    width: 27px;
    height: 2px;
    background: rgba(255,255,255,.22);
}

/* فرم اصلی */

body.crm-checkout-page
.crm-modern-checkout-form {
    display: block;
}

body.crm-checkout-page
.crm-modern-checkout-form .card,
body.crm-checkout-page
.crm-modern-checkout-form .panel,
body.crm-checkout-page
.crm-modern-checkout-form .checkout-form,
body.crm-checkout-page
.crm-modern-checkout-form .order-summary {
    border: 1px solid #e2e8f0 !important;
    border-radius: 23px !important;
    background: #fff;
    box-shadow: 0 14px 42px rgba(30, 41, 59, .08);
}

/* بخش‌های فرم */

body.crm-checkout-page
.crm-modern-checkout-form .sub-heading {
    display: flex;
    align-items: center;
    margin: 22px 0 14px !important;
    border: 0 !important;
}

body.crm-checkout-page
.crm-modern-checkout-form .sub-heading span {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 8px 13px;
    border-radius: 11px;
    color: #5b21b6 !important;
    background: #f3e8ff !important;
    font-size: 12px;
    font-weight: 900;
}

body.crm-checkout-page
.crm-modern-checkout-form .form-group {
    margin-bottom: 17px;
}

body.crm-checkout-page
.crm-modern-checkout-form label {
    display: block;
    margin-bottom: 8px;
    color: #354052;
    font-size: 13px;
    font-weight: 900;
}

body.crm-checkout-page
.crm-modern-checkout-form .form-control,
body.crm-checkout-page
.crm-modern-checkout-form input,
body.crm-checkout-page
.crm-modern-checkout-form select,
body.crm-checkout-page
.crm-modern-checkout-form textarea {
    min-height: 50px;
    border: 1px solid #dce3ed;
    border-radius: 14px;
    padding: 10px 14px;
    background: #fff;
    color: #263143;
    box-shadow: none;
    font-size: 15px;
}

body.crm-checkout-page
.crm-modern-checkout-form .form-control:focus,
body.crm-checkout-page
.crm-modern-checkout-form input:focus,
body.crm-checkout-page
.crm-modern-checkout-form select:focus,
body.crm-checkout-page
.crm-modern-checkout-form textarea:focus {
    border-color: #6366f1;
    outline: 0;
    box-shadow: 0 0 0 4px rgba(99,102,241,.11);
}

/* خطاها */

body.crm-checkout-page
.checkout-error-feedback,
body.crm-checkout-page
.alert-danger {
    margin-bottom: 18px;
    padding: 16px 18px;
    border: 1px solid #fecaca !important;
    border-radius: 17px;
    background: #fff1f2 !important;
    color: #991b1b !important;
    line-height: 1.9;
}

/* کیف پول */

.crm-wallet-panel {
    overflow: hidden;
    margin-bottom: 22px;
    border: 1px solid #dfe5ee;
    border-radius: 23px;
    background: #fff;
    box-shadow: 0 15px 43px rgba(30,41,59,.09);
}

.crm-wallet-panel__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding: 20px;
    color: #fff;
    background:
        linear-gradient(
            135deg,
            #1e3a8a,
            #6d28d9
        );
}

.crm-wallet-panel__title {
    display: flex;
    align-items: center;
    gap: 10px;
}

.crm-wallet-panel__title span {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 14px;
    background: rgba(255,255,255,.14);
    font-size: 18px;
}

.crm-wallet-panel__title strong,
.crm-wallet-panel__title small {
    display: block;
}

.crm-wallet-panel__title strong {
    font-size: 16px;
    font-weight: 950;
}

.crm-wallet-panel__title small {
    margin-top: 3px;
    color: rgba(255,255,255,.72);
    font-size: 10px;
}

.crm-wallet-status {
    padding: 7px 11px;
    border-radius: 999px;
    background: rgba(255,255,255,.14);
    font-size: 11px;
    font-weight: 900;
}

.crm-wallet-panel__body {
    padding: 20px;
}

.crm-wallet-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 12px;
}

.crm-wallet-stat {
    padding: 15px;
    border: 1px solid #e6eaf1;
    border-radius: 16px;
    background: #f8fafc;
}

.crm-wallet-stat small,
.crm-wallet-stat strong {
    display: block;
}

.crm-wallet-stat small {
    color: #7b8495;
    font-size: 10px;
}

.crm-wallet-stat strong {
    margin-top: 6px;
    color: #172033;
    font-size: 18px;
    font-weight: 950;
}

.crm-wallet-stat.is-positive {
    border-color: #bbf7d0;
    background: #f0fdf4;
}

.crm-wallet-stat.is-positive strong {
    color: #15803d;
}

.crm-wallet-stat.is-negative {
    border-color: #fecaca;
    background: #fff1f2;
}

.crm-wallet-stat.is-negative strong {
    color: #dc2626;
}

.crm-wallet-message {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-top: 15px;
    padding: 14px 15px;
    border-radius: 15px;
    font-size: 12px;
    line-height: 1.9;
}

.crm-wallet-message.is-success {
    border: 1px solid #bbf7d0;
    color: #166534;
    background: #f0fdf4;
}

.crm-wallet-message.is-danger {
    border: 1px solid #fecaca;
    color: #991b1b;
    background: #fff1f2;
}

.crm-wallet-message i {
    margin-top: 4px;
    font-size: 17px;
}

.crm-wallet-addfunds {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 45px;
    margin-top: 14px;
    border-radius: 14px;
    padding: 10px 15px;
    color: #fff !important;
    background: linear-gradient(135deg,#f59e0b,#ea580c);
    box-shadow: 0 10px 24px rgba(234,88,12,.20);
    font-weight: 900;
    text-decoration: none !important;
}

/* بخش اعتبار داخلی WHMCS */

body.crm-checkout-page
#applyCreditContainer {
    margin: 18px 0 !important;
    padding: 17px !important;
    border: 1px solid #c7d2fe;
    border-radius: 17px;
    background: #eef2ff;
}

body.crm-checkout-page
#applyCreditContainer p {
    color: #3730a3;
    font-weight: 900;
}

/* روش پرداخت */

body.crm-checkout-page
.payment-methods {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 11px;
}

body.crm-checkout-page
.payment-methods label,
body.crm-checkout-page
.payment-methods .payment-method {
    min-height: 54px;
    margin: 0 !important;
    padding: 13px;
    border: 1px solid #e0e6ef;
    border-radius: 15px;
    background: #fff;
}

body.crm-checkout-page
.payment-methods input:checked + span,
body.crm-checkout-page
.payment-methods .selected {
    color: #5b21b6;
}

/* قوانین */

body.crm-checkout-page
.terms-of-service {
    margin: 18px 0;
    padding: 15px 17px;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    background: #f8fafc;
    line-height: 1.9;
}

/* دکمه نهایی */

body.crm-checkout-page
#btnCompleteOrder {
    width: 100%;
    min-height: 56px;
    border: 0 !important;
    border-radius: 16px !important;
    color: #fff !important;
    background:
        linear-gradient(
            135deg,
            #2563eb,
            #6d28d9
        ) !important;
    box-shadow: 0 13px 30px rgba(79,70,229,.25);
    font-size: 16px;
    font-weight: 950;
    transition:
        transform .2s ease,
        box-shadow .2s ease,
        opacity .2s ease;
}

body.crm-checkout-page
#btnCompleteOrder:hover:not(:disabled) {
    transform: translateY(-2px);
    box-shadow: 0 17px 36px rgba(79,70,229,.32);
}

body.crm-checkout-page
#btnCompleteOrder:disabled,
body.crm-checkout-page
#btnCompleteOrder.crm-wallet-disabled {
    cursor: not-allowed !important;
    opacity: .48 !important;
    transform: none !important;
    box-shadow: none !important;
}

/* پیام پردازش */

.crm-checkout-processing-overlay {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 20px;
    background: rgba(15,23,42,.58);
    backdrop-filter: blur(7px);
}

.crm-checkout-processing-overlay.is-visible {
    display: flex;
}

.crm-checkout-processing-box {
    width: min(420px,100%);
    padding: 28px;
    border-radius: 24px;
    background: #fff;
    text-align: center;
    box-shadow: 0 25px 70px rgba(0,0,0,.25);
}

.crm-checkout-spinner {
    display: grid;
    width: 66px;
    height: 66px;
    margin: 0 auto 18px;
    place-items: center;
    border-radius: 21px;
    color: #fff;
    background: linear-gradient(135deg,#2563eb,#6d28d9);
    font-size: 26px;
}

.crm-checkout-processing-box h3 {
    margin: 0 0 8px;
    color: #172033;
    font-weight: 950;
}

.crm-checkout-processing-box p {
    margin: 0;
    color: #687386;
    line-height: 1.9;
}

@media (max-width: 767px) {
    body.crm-checkout-page #order-standard_cart {
        padding: 3px 0 38px;
    }

    .crm-checkout-hero {
        padding: 27px 19px;
        border-radius: 21px;
    }

    .crm-checkout-hero h1 {
        font-size: 26px;
    }

    .crm-checkout-steps {
        overflow-x: auto;
        padding-bottom: 5px;
    }

    .crm-checkout-step {
        flex: 0 0 auto;
        white-space: nowrap;
    }

    .crm-checkout-step-line {
        flex: 0 0 20px;
    }

    .crm-wallet-grid {
        grid-template-columns: minmax(0,1fr);
    }

    .crm-wallet-panel__header {
        align-items: flex-start;
        flex-direction: column;
    }

    body.crm-checkout-page
    .payment-methods {
        grid-template-columns: minmax(0,1fr);
    }
}

/* CRM_MODERN_CHECKOUT_END */

/* CRM_PREMIUM_POLISH_BEGIN */

/* =========================================================
   CRM Premium Design System
   ========================================================= */

:root {
    --crm-font:
        "Vazirmatn",
        "IRANSansX",
        "IRANSans",
        "Dana",
        "Yekan Bakh",
        "Shabnam",
        Tahoma,
        Arial,
        sans-serif;

    --crm-navy: #172554;
    --crm-indigo: #3730a3;
    --crm-blue: #2563eb;
    --crm-violet: #7c3aed;
    --crm-purple: #6d28d9;
    --crm-cyan: #0891b2;

    --crm-text: #172033;
    --crm-text-soft: #4c586d;
    --crm-muted: #7a8496;

    --crm-border: #e2e7ef;
    --crm-border-strong: #d4dbe7;

    --crm-surface: #ffffff;
    --crm-surface-soft: #f7f9fc;
    --crm-surface-purple: #f5f3ff;
    --crm-surface-blue: #eff6ff;

    --crm-success: #059669;
    --crm-danger: #dc2626;
    --crm-warning: #d97706;

    --crm-shadow-sm:
        0 8px 25px rgba(30, 41, 59, .065);

    --crm-shadow-md:
        0 15px 42px rgba(30, 41, 59, .09);

    --crm-shadow-lg:
        0 24px 65px rgba(30, 41, 59, .14);

    --crm-gradient:
        linear-gradient(
            135deg,
            #1d4ed8 0%,
            #4f46e5 48%,
            #7c3aed 100%
        );

    --crm-gradient-dark:
        linear-gradient(
            135deg,
            #172554 0%,
            #312e81 52%,
            #6d28d9 100%
        );
}

/* =========================================================
   فونت و خوانایی عمومی
   ========================================================= */

.crm-catalog,
#order-standard_cart.crm-modern-configure-page,
#order-standard_cart.crm-modern-viewcart,
body.crm-checkout-page #order-standard_cart,
.crm-configure-floating-summary,
.crm-checkout-processing-overlay {
    font-family: var(--crm-font) !important;
    font-feature-settings: "ss01", "ss02";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.crm-catalog *,
#order-standard_cart.crm-modern-configure-page *,
#order-standard_cart.crm-modern-viewcart *,
body.crm-checkout-page #order-standard_cart * {
    font-family: inherit;
}

.crm-catalog h1,
.crm-catalog h2,
.crm-catalog h3,
#order-standard_cart.crm-modern-configure-page h1,
#order-standard_cart.crm-modern-configure-page h2,
#order-standard_cart.crm-modern-configure-page h3,
#order-standard_cart.crm-modern-viewcart h1,
#order-standard_cart.crm-modern-viewcart h2,
#order-standard_cart.crm-modern-viewcart h3,
body.crm-checkout-page #order-standard_cart h1,
body.crm-checkout-page #order-standard_cart h2,
body.crm-checkout-page #order-standard_cart h3 {
    letter-spacing: -.25px;
    text-wrap: balance;
}

.crm-catalog p,
#order-standard_cart.crm-modern-configure-page p,
#order-standard_cart.crm-modern-viewcart p,
body.crm-checkout-page #order-standard_cart p {
    text-wrap: pretty;
}

/* =========================================================
   سربرگ‌های اصلی
   ========================================================= */

.crm-catalog-hero,
.crm-configure-hero,
.crm-viewcart-hero,
.crm-checkout-hero,
#order-standard_cart.crm-modern-configure-page .product-info {
    border: 1px solid rgba(255, 255, 255, .13);
    background:
        radial-gradient(
            circle at 8% 15%,
            rgba(34, 211, 238, .25),
            transparent 31%
        ),
        radial-gradient(
            circle at 94% 92%,
            rgba(244, 114, 182, .19),
            transparent 34%
        ),
        var(--crm-gradient-dark) !important;
    box-shadow:
        0 24px 65px rgba(49, 46, 129, .23),
        inset 0 1px 0 rgba(255, 255, 255, .12);
}

.crm-catalog-hero::before,
.crm-configure-hero::before,
.crm-viewcart-hero::before,
.crm-checkout-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .28;
    background-image:
        linear-gradient(
            rgba(255,255,255,.045) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,.045) 1px,
            transparent 1px
        );
    background-size: 34px 34px;
    mask-image:
        linear-gradient(
            to left,
            transparent,
            #000 25%,
            #000 75%,
            transparent
        );
}

/* =========================================================
   Badgeها
   ========================================================= */

.crm-catalog-eyebrow,
.crm-configure-hero__badge,
.crm-viewcart-hero__badge,
.crm-checkout-hero__badge {
    min-height: 36px;
    border-color: rgba(255,255,255,.20);
    background: rgba(255,255,255,.105);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.10),
        0 8px 22px rgba(0,0,0,.08);
}

.crm-protocol-badge {
    color: #5b21b6;
    background:
        linear-gradient(
            135deg,
            #f3e8ff,
            #ede9fe
        );
    box-shadow: inset 0 0 0 1px rgba(124,58,237,.08);
}

.crm-country-badge {
    color: #334155;
    background:
        linear-gradient(
            135deg,
            #f8fafc,
            #eef2f7
        );
    box-shadow: inset 0 0 0 1px rgba(71,85,105,.07);
}

/* =========================================================
   آیکون‌های عمومی
   ========================================================= */

.crm-catalog i,
.crm-modern-configure-page i,
.crm-modern-viewcart i,
body.crm-checkout-page #order-standard_cart i {
    line-height: 1;
}

.crm-filter-label > i,
.crm-independent-service-note > i,
.crm-cart-independent-note > i,
.crm-wallet-message > i,
.crm-configure-security-note > i {
    display: grid;
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    margin: 0 !important;
    place-items: center;
    border-radius: 12px;
    color: #4f46e5;
    background: #eef2ff;
    box-shadow: inset 0 0 0 1px rgba(79,70,229,.08);
}

.crm-spec-icon {
    width: 39px;
    height: 39px;
    flex-basis: 39px;
    border-radius: 13px;
    color: #4f46e5;
    background:
        linear-gradient(
            135deg,
            #eef2ff,
            #f5f3ff
        );
    box-shadow:
        inset 0 0 0 1px rgba(79,70,229,.08),
        0 7px 18px rgba(79,70,229,.07);
}

/* =========================================================
   کارت محصولات
   ========================================================= */

.crm-products-grid {
    gap: 20px;
}

.crm-product-card {
    border-color: var(--crm-border);
    border-radius: 24px;
    padding: 21px;
    background:
        radial-gradient(
            circle at top right,
            rgba(99,102,241,.055),
            transparent 28%
        ),
        linear-gradient(
            180deg,
            #fff 0%,
            #fbfcff 100%
        );
    box-shadow: var(--crm-shadow-sm);
}

.crm-product-card:hover {
    transform: translateY(-6px);
    border-color: #bac5fb;
    box-shadow:
        0 20px 48px rgba(30,41,59,.13),
        0 0 0 4px rgba(99,102,241,.045);
}

.crm-card-title h3 {
    color: var(--crm-text);
    font-size: 17px;
    font-weight: 900;
}

.crm-card-title p {
    color: var(--crm-muted);
}

.crm-spec {
    min-height: 67px;
    border-color: #e9edf4;
    background:
        linear-gradient(
            145deg,
            #fbfcfe,
            #f5f7fb
        );
}

.crm-spec small {
    color: #8a94a5;
    font-weight: 600;
}

.crm-spec strong {
    color: #303a4d;
    font-weight: 850;
}

.crm-card-description {
    border: 1px solid #edf0f5;
    color: #657085;
    background: #fafbfc;
}

.crm-card-footer {
    border-top-color: #e8ecf2;
}

.crm-price strong {
    color: #111827;
    font-size: 18px;
}

/* =========================================================
   فیلترها
   ========================================================= */

.crm-filter-panel,
.crm-products-section {
    border-color: var(--crm-border);
    box-shadow: var(--crm-shadow-md);
}

.crm-filter-chip,
.crm-mini-filter {
    min-height: 45px;
    border-color: #dde3ed;
    background:
        linear-gradient(
            180deg,
            #fff,
            #fafbfc
        );
    box-shadow: 0 4px 13px rgba(30,41,59,.035);
}

.crm-filter-chip:hover,
.crm-mini-filter:hover {
    border-color: #aebaff;
    color: #4f46e5;
    background: #f8f7ff;
}

.crm-filter-chip.active,
.crm-mini-filter.active {
    background: var(--crm-gradient);
    box-shadow:
        0 10px 24px rgba(79,70,229,.24),
        inset 0 1px 0 rgba(255,255,255,.15);
}

/* =========================================================
   فرم تنظیم محصول
   ========================================================= */

#order-standard_cart.crm-modern-configure-page
.secondary-cart-body {
    border-color: var(--crm-border);
    box-shadow: var(--crm-shadow-md);
}

#order-standard_cart.crm-modern-configure-page
.field-container {
    border-color: #e3e8f0;
    background:
        linear-gradient(
            145deg,
            #fbfcff,
            #f7f9fc
        );
}

#order-standard_cart.crm-modern-configure-page
.crm-customer-field {
    border-color: #b9adff !important;
    background:
        radial-gradient(
            circle at top left,
            rgba(59,130,246,.10),
            transparent 33%
        ),
        linear-gradient(
            135deg,
            #eef2ff 0%,
            #faf5ff 100%
        ) !important;
    box-shadow:
        0 16px 38px rgba(109,40,217,.105),
        inset 0 1px 0 rgba(255,255,255,.70);
}

#order-standard_cart.crm-modern-configure-page
.crm-customer-field input {
    border-color: #9daafa !important;
    box-shadow:
        0 7px 20px rgba(79,70,229,.06);
}

#order-standard_cart.crm-modern-configure-page
.crm-customer-field input:focus {
    border-color: #6366f1 !important;
    box-shadow:
        0 0 0 4px rgba(99,102,241,.12),
        0 10px 22px rgba(79,70,229,.08) !important;
}

/* =========================================================
   خلاصه سفارش
   ========================================================= */

#order-standard_cart.crm-modern-configure-page
#orderSummary,
#order-standard_cart.crm-modern-viewcart
.summary-container,
#order-standard_cart.crm-modern-viewcart
.view-cart-summary {
    border-color: var(--crm-border-strong);
    box-shadow: var(--crm-shadow-md);
}

#order-standard_cart.crm-modern-configure-page
.order-summary h2,
#order-standard_cart.crm-modern-viewcart
.summary-heading {
    color: var(--crm-text);
}

/* =========================================================
   سبد خرید
   ========================================================= */

#order-standard_cart.crm-modern-viewcart
.view-cart-items .item {
    position: relative;
}

#order-standard_cart.crm-modern-viewcart
.view-cart-items .item::before {
    content: "";
    position: absolute;
    top: 17px;
    right: 0;
    bottom: 17px;
    width: 4px;
    border-radius: 999px;
    background: var(--crm-gradient);
    opacity: .72;
}

#order-standard_cart.crm-modern-viewcart
.view-cart-items .item:hover {
    background:
        linear-gradient(
            90deg,
            rgba(99,102,241,.035),
            transparent 32%
        ),
        #fbfcff;
}

/* =========================================================
   کیف پول
   ========================================================= */

.crm-wallet-panel {
    border-color: var(--crm-border-strong);
    box-shadow: var(--crm-shadow-md);
}

.crm-wallet-panel__header {
    background: var(--crm-gradient-dark);
}

.crm-wallet-panel__title span {
    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,.13),
        0 8px 20px rgba(0,0,0,.09);
}

.crm-wallet-stat {
    min-height: 92px;
    border-color: #e4e9f1;
    background:
        linear-gradient(
            145deg,
            #fbfcfe,
            #f5f7fa
        );
}

.crm-wallet-stat.is-positive {
    border-color: #a7f3d0;
    background:
        linear-gradient(
            145deg,
            #ecfdf5,
            #f0fdf4
        );
}

.crm-wallet-stat.is-negative {
    border-color: #fecaca;
    background:
        linear-gradient(
            145deg,
            #fff1f2,
            #fff7f7
        );
}

/* =========================================================
   دکمه‌های اصلی
   ========================================================= */

.crm-select-product,
#order-standard_cart.crm-modern-configure-page
#btnCompleteProductConfig,
#order-standard_cart.crm-modern-viewcart
#checkout,
#order-standard_cart.crm-modern-viewcart
.btn-checkout,
body.crm-checkout-page
#btnCompleteOrder {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background: var(--crm-gradient) !important;
    box-shadow:
        0 12px 28px rgba(79,70,229,.25),
        inset 0 1px 0 rgba(255,255,255,.17);
}

.crm-select-product::before,
#order-standard_cart.crm-modern-configure-page
#btnCompleteProductConfig::before,
#order-standard_cart.crm-modern-viewcart
#checkout::before,
body.crm-checkout-page
#btnCompleteOrder::before {
    content: "";
    position: absolute;
    top: 0;
    right: -120%;
    z-index: -1;
    width: 70%;
    height: 100%;
    transform: skewX(-22deg);
    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.22),
            transparent
        );
    transition: right .55s ease;
}

.crm-select-product:hover::before,
#order-standard_cart.crm-modern-configure-page
#btnCompleteProductConfig:hover::before,
#order-standard_cart.crm-modern-viewcart
#checkout:hover::before,
body.crm-checkout-page
#btnCompleteOrder:hover::before {
    right: 145%;
}

.crm-select-product:hover,
#order-standard_cart.crm-modern-configure-page
#btnCompleteProductConfig:hover,
#order-standard_cart.crm-modern-viewcart
#checkout:hover,
body.crm-checkout-page
#btnCompleteOrder:hover:not(:disabled) {
    transform: translateY(-3px);
    box-shadow:
        0 17px 36px rgba(79,70,229,.32),
        inset 0 1px 0 rgba(255,255,255,.20);
}

/* دکمه‌های ثانویه */

.crm-reset-filters,
.crm-reset-empty,
.crm-cart-add-another {
    border: 1px solid #c7d2fe;
    color: #4f46e5 !important;
    background:
        linear-gradient(
            145deg,
            #f5f3ff,
            #eef2ff
        );
    box-shadow: 0 7px 18px rgba(79,70,229,.07);
}

.crm-reset-filters:hover,
.crm-reset-empty:hover,
.crm-cart-add-another:hover {
    transform: translateY(-2px);
    border-color: #a5b4fc;
    color: #4338ca !important;
}

/* =========================================================
   فرم‌ها
   ========================================================= */

#order-standard_cart.crm-modern-configure-page
.form-control,
#order-standard_cart.crm-modern-configure-page
.custom-select,
#order-standard_cart.crm-modern-viewcart
.form-control,
body.crm-checkout-page
.crm-modern-checkout-form .form-control,
body.crm-checkout-page
.crm-modern-checkout-form input,
body.crm-checkout-page
.crm-modern-checkout-form select,
body.crm-checkout-page
.crm-modern-checkout-form textarea {
    border-color: #d9e0ea;
    background:
        linear-gradient(
            180deg,
            #fff,
            #fdfdfe
        );
    box-shadow:
        inset 0 1px 2px rgba(15,23,42,.025);
}

#order-standard_cart.crm-modern-configure-page
.form-control:hover,
#order-standard_cart.crm-modern-viewcart
.form-control:hover,
body.crm-checkout-page
.crm-modern-checkout-form input:hover,
body.crm-checkout-page
.crm-modern-checkout-form select:hover {
    border-color: #bbc5d5;
}

/* =========================================================
   Scrollbar فیلترهای موبایل
   ========================================================= */

.crm-filter-row::-webkit-scrollbar,
.crm-configure-progress::-webkit-scrollbar,
.crm-viewcart-steps::-webkit-scrollbar,
.crm-checkout-steps::-webkit-scrollbar {
    height: 5px;
}

.crm-filter-row::-webkit-scrollbar-track,
.crm-configure-progress::-webkit-scrollbar-track,
.crm-viewcart-steps::-webkit-scrollbar-track,
.crm-checkout-steps::-webkit-scrollbar-track {
    border-radius: 999px;
    background: #eef2f7;
}

.crm-filter-row::-webkit-scrollbar-thumb,
.crm-configure-progress::-webkit-scrollbar-thumb,
.crm-viewcart-steps::-webkit-scrollbar-thumb,
.crm-checkout-steps::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: #a5b4fc;
}

/* =========================================================
   موبایل
   ========================================================= */

@media (max-width: 767px) {
    .crm-catalog-hero,
    .crm-configure-hero,
    .crm-viewcart-hero,
    .crm-checkout-hero {
        box-shadow:
            0 16px 42px rgba(49,46,129,.20),
            inset 0 1px 0 rgba(255,255,255,.10);
    }

    .crm-catalog-hero h1,
    .crm-configure-hero h1,
    .crm-viewcart-hero h1,
    .crm-checkout-hero h1 {
        font-size: 25px !important;
        line-height: 1.55;
    }

    .crm-product-card {
        padding: 18px;
        border-radius: 21px;
    }

    .crm-card-title h3 {
        font-size: 16px;
    }

    .crm-spec {
        min-height: 64px;
    }

    .crm-filter-chip,
    .crm-mini-filter {
        min-height: 44px;
        font-size: 12px;
    }

    #order-standard_cart.crm-modern-configure-page
    .secondary-cart-body {
        box-shadow: 0 12px 34px rgba(30,41,59,.075);
    }

    .crm-wallet-stat {
        min-height: 82px;
    }
}

/* کاهش حرکت برای کاربرانی که انیمیشن را غیرفعال کرده‌اند */

@media (prefers-reduced-motion: reduce) {
    .crm-product-card,
    .crm-filter-chip,
    .crm-mini-filter,
    .crm-select-product,
    #btnCompleteProductConfig,
    #checkout,
    #btnCompleteOrder {
        transition: none !important;
        animation: none !important;
    }

    .crm-select-product::before,
    #btnCompleteProductConfig::before,
    #checkout::before,
    #btnCompleteOrder::before {
        display: none !important;
    }
}

/* CRM_PREMIUM_POLISH_END */

/* CRM_VPN_BRAND_THEME_BEGIN */

/* =========================================================
   CRM VPN Brand Theme
   WireGuard Red + OpenVPN Orange
   ========================================================= */

:root {
    --crm-brand-black: #171717;
    --crm-brand-charcoal: #262626;
    --crm-brand-dark: #333333;

    --crm-brand-red: #c91f28;
    --crm-brand-red-dark: #991b1f;
    --crm-brand-red-soft: #fff1f2;

    --crm-brand-orange: #f58220;
    --crm-brand-orange-dark: #d85f08;
    --crm-brand-orange-soft: #fff7ed;

    --crm-brand-gold: #f59e0b;

    --crm-brand-text: #202124;
    --crm-brand-muted: #71717a;

    --crm-brand-border: #e7e5e4;
    --crm-brand-border-strong: #d6d3d1;

    --crm-brand-surface: #ffffff;
    --crm-brand-surface-soft: #fafaf9;
    --crm-brand-page: #f5f5f4;

    --crm-brand-gradient:
        linear-gradient(
            135deg,
            #b91c1c 0%,
            #dc2626 45%,
            #f97316 100%
        );

    --crm-brand-gradient-dark:
        linear-gradient(
            135deg,
            #171717 0%,
            #292524 50%,
            #7f1d1d 100%
        );

    --crm-brand-shadow:
        0 16px 42px rgba(41, 37, 36, .10);

    --crm-brand-shadow-hover:
        0 22px 50px rgba(41, 37, 36, .16);
}

/* پس‌زمینه کلی صفحات */

body.crm-configure-product-page,
body.crm-viewcart-page,
body.crm-checkout-page {
    background:
        radial-gradient(
            circle at top right,
            rgba(245, 130, 32, .055),
            transparent 26%
        ),
        radial-gradient(
            circle at bottom left,
            rgba(201, 31, 40, .045),
            transparent 28%
        ),
        var(--crm-brand-page) !important;
}

.crm-catalog,
#order-standard_cart.crm-modern-configure-page,
#order-standard_cart.crm-modern-viewcart,
body.crm-checkout-page #order-standard_cart {
    color: var(--crm-brand-text);
}

/* =========================================================
   سربرگ‌های اصلی
   ========================================================= */

.crm-catalog-hero,
.crm-configure-hero,
.crm-viewcart-hero,
.crm-checkout-hero,
#order-standard_cart.crm-modern-configure-page
.product-info {
    border: 1px solid rgba(255,255,255,.12) !important;

    background:
        radial-gradient(
            circle at 12% 12%,
            rgba(245,130,32,.28),
            transparent 30%
        ),
        radial-gradient(
            circle at 88% 88%,
            rgba(201,31,40,.25),
            transparent 34%
        ),
        var(--crm-brand-gradient-dark) !important;

    box-shadow:
        0 22px 60px rgba(23,23,23,.24),
        inset 0 1px 0 rgba(255,255,255,.10) !important;
}

.crm-catalog-hero::before,
.crm-configure-hero::before,
.crm-viewcart-hero::before,
.crm-checkout-hero::before {
    opacity: .18 !important;
}

.crm-catalog-hero h1,
.crm-configure-hero h1,
.crm-viewcart-hero h1,
.crm-checkout-hero h1,
#order-standard_cart.crm-modern-configure-page
.product-info .product-title {
    color: #fff !important;
}

.crm-catalog-hero p,
.crm-configure-hero p,
.crm-viewcart-hero p,
.crm-checkout-hero p,
#order-standard_cart.crm-modern-configure-page
.product-info p {
    color: rgba(255,255,255,.80) !important;
}

/* Badge بالای سربرگ */

.crm-catalog-eyebrow,
.crm-configure-hero__badge,
.crm-viewcart-hero__badge,
.crm-checkout-hero__badge {
    border-color: rgba(255,255,255,.18) !important;
    color: #fff !important;
    background: rgba(255,255,255,.09) !important;
}

/* =========================================================
   مراحل خرید
   ========================================================= */

.crm-configure-progress__item,
.crm-viewcart-step,
.crm-checkout-step {
    color: rgba(255,255,255,.75) !important;
    background: rgba(255,255,255,.09) !important;
}

.crm-configure-progress__item.is-active,
.crm-viewcart-step.is-active,
.crm-checkout-step.is-active {
    color: var(--crm-brand-red-dark) !important;
    background: #fff !important;
    box-shadow: 0 7px 20px rgba(0,0,0,.15);
}

.crm-configure-progress__line,
.crm-viewcart-step-line,
.crm-checkout-step-line {
    background: rgba(255,255,255,.24) !important;
}

/* =========================================================
   کارت‌ها و پنل‌ها
   ========================================================= */

.crm-filter-panel,
.crm-products-section,
.crm-product-card,
#order-standard_cart.crm-modern-configure-page
.secondary-cart-body,
#order-standard_cart.crm-modern-configure-page
#orderSummary,
#order-standard_cart.crm-modern-viewcart
.view-cart-items,
#order-standard_cart.crm-modern-viewcart
.summary-container,
#order-standard_cart.crm-modern-viewcart
.view-cart-summary,
.crm-wallet-panel,
body.crm-checkout-page
.crm-modern-checkout-form .card,
body.crm-checkout-page
.crm-modern-checkout-form .panel {
    border-color: var(--crm-brand-border) !important;
    background: var(--crm-brand-surface) !important;
    box-shadow: var(--crm-brand-shadow) !important;
}

.crm-product-card {
    background:
        radial-gradient(
            circle at top left,
            rgba(245,130,32,.045),
            transparent 28%
        ),
        linear-gradient(
            180deg,
            #fff 0%,
            #fdfcfb 100%
        ) !important;
}

.crm-product-card:hover {
    border-color: #f0a36b !important;
    box-shadow: var(--crm-brand-shadow-hover) !important;
}

/* خط کناری کارت سبد */

#order-standard_cart.crm-modern-viewcart
.view-cart-items .item::before {
    background:
        linear-gradient(
            180deg,
            var(--crm-brand-red),
            var(--crm-brand-orange)
        ) !important;
}

/* =========================================================
   پروتکل‌ها
   ========================================================= */

.crm-protocol-badge {
    color: #991b1b !important;
    background:
        linear-gradient(
            135deg,
            #fff1f2,
            #fee2e2
        ) !important;
    box-shadow:
        inset 0 0 0 1px rgba(201,31,40,.10) !important;
}

.crm-country-badge {
    color: #44403c !important;
    background:
        linear-gradient(
            135deg,
            #fafaf9,
            #f5f5f4
        ) !important;
}

/* WireGuard */

.crm-product-card[data-protocol="wireguard"]
.crm-protocol-badge {
    color: #991b1b !important;
    background:
        linear-gradient(
            135deg,
            #fff1f2,
            #fecdd3
        ) !important;
}

.crm-product-card[data-protocol="wireguard"] {
    border-top: 4px solid var(--crm-brand-red) !important;
}

/* OpenVPN و خانواده MikroTik VPN */

.crm-product-card[data-protocol="openvpn"]
.crm-protocol-badge,
.crm-product-card[data-protocol="mikrotik-vpn"]
.crm-protocol-badge {
    color: #9a3412 !important;
    background:
        linear-gradient(
            135deg,
            #fff7ed,
            #fed7aa
        ) !important;
}

.crm-product-card[data-protocol="openvpn"],
.crm-product-card[data-protocol="mikrotik-vpn"] {
    border-top: 4px solid var(--crm-brand-orange) !important;
}

/* سایر پروتکل‌ها */

.crm-product-card:not([data-protocol="wireguard"]):
not([data-protocol="openvpn"]):
not([data-protocol="mikrotik-vpn"]) {
    border-top: 4px solid #57534e !important;
}

/* =========================================================
   فیلترها
   ========================================================= */

.crm-filter-step {
    color: var(--crm-brand-red) !important;
}

.crm-filter-label {
    color: #57534e !important;
}

.crm-filter-label > i {
    color: var(--crm-brand-orange) !important;
    background: var(--crm-brand-orange-soft) !important;
}

.crm-filter-chip,
.crm-mini-filter {
    border-color: var(--crm-brand-border) !important;
    color: #44403c !important;
    background:
        linear-gradient(
            180deg,
            #fff,
            #fafaf9
        ) !important;
}

.crm-filter-chip:hover,
.crm-mini-filter:hover {
    border-color: #f0a36b !important;
    color: #c2410c !important;
    background: #fff7ed !important;
}

.crm-filter-chip.active,
.crm-mini-filter.active {
    border-color: transparent !important;
    color: #fff !important;
    background: var(--crm-brand-gradient) !important;
    box-shadow:
        0 10px 24px rgba(220,38,38,.20) !important;
}

/* =========================================================
   آیکون‌ها
   ========================================================= */

.crm-spec-icon {
    color: var(--crm-brand-red) !important;
    background:
        linear-gradient(
            135deg,
            #fff1f2,
            #fff7ed
        ) !important;
    box-shadow:
        inset 0 0 0 1px rgba(201,31,40,.08),
        0 7px 18px rgba(201,31,40,.06) !important;
}

.crm-independent-service-note > i,
.crm-cart-independent-note > i,
.crm-configure-security-note > i {
    color: var(--crm-brand-red) !important;
    background: var(--crm-brand-red-soft) !important;
}

.crm-wallet-message > i {
    background: transparent !important;
}

/* =========================================================
   فیلد نام مشتری
   ========================================================= */

#order-standard_cart.crm-modern-configure-page
.crm-customer-field {
    border-color: #f1a16b !important;

    background:
        radial-gradient(
            circle at top left,
            rgba(245,130,32,.10),
            transparent 33%
        ),
        linear-gradient(
            135deg,
            #fff7ed 0%,
            #fff1f2 100%
        ) !important;

    box-shadow:
        0 16px 38px rgba(201,31,40,.08),
        inset 0 1px 0 rgba(255,255,255,.72) !important;
}

#order-standard_cart.crm-modern-configure-page
.crm-customer-field::before {
    color: #9a3412 !important;
    background: #ffedd5 !important;
}

#order-standard_cart.crm-modern-configure-page
.crm-customer-field label {
    color: #7f1d1d !important;
}

#order-standard_cart.crm-modern-configure-page
.crm-customer-field input {
    border-color: #fb923c !important;
}

#order-standard_cart.crm-modern-configure-page
.crm-customer-field input:focus {
    border-color: var(--crm-brand-red) !important;
    box-shadow:
        0 0 0 4px rgba(201,31,40,.10),
        0 10px 22px rgba(201,31,40,.07) !important;
}

/* =========================================================
   Field Container
   ========================================================= */

#order-standard_cart.crm-modern-configure-page
.field-container {
    border-color: var(--crm-brand-border) !important;
    background:
        linear-gradient(
            145deg,
            #fdfdfc,
            #fafaf9
        ) !important;
}

#order-standard_cart.crm-modern-configure-page
.sub-heading span,
body.crm-checkout-page
.crm-modern-checkout-form .sub-heading span {
    color: #9a3412 !important;
    background: #fff7ed !important;
}

/* =========================================================
   کیف پول
   ========================================================= */

.crm-wallet-panel__header {
    background:
        linear-gradient(
            135deg,
            #292524,
            #7f1d1d,
            #c2410c
        ) !important;
}

.crm-wallet-status {
    color: #fff !important;
    background: rgba(255,255,255,.14) !important;
}

.crm-wallet-stat {
    border-color: var(--crm-brand-border) !important;
    background:
        linear-gradient(
            145deg,
            #fdfdfc,
            #f7f7f6
        ) !important;
}

.crm-wallet-stat.is-positive {
    border-color: #bbf7d0 !important;
    background:
        linear-gradient(
            145deg,
            #f0fdf4,
            #ecfdf5
        ) !important;
}

.crm-wallet-stat.is-negative {
    border-color: #fecaca !important;
    background:
        linear-gradient(
            145deg,
            #fff1f2,
            #fff7ed
        ) !important;
}

/* =========================================================
   دکمه‌های اصلی
   ========================================================= */

.crm-select-product,
#order-standard_cart.crm-modern-configure-page
#btnCompleteProductConfig,
#order-standard_cart.crm-modern-viewcart
#checkout,
#order-standard_cart.crm-modern-viewcart
.btn-checkout,
#order-standard_cart.crm-modern-viewcart
a[href*="a=checkout"],
body.crm-checkout-page
#btnCompleteOrder {
    color: #fff !important;
    background: var(--crm-brand-gradient) !important;
    box-shadow:
        0 12px 28px rgba(201,31,40,.22),
        inset 0 1px 0 rgba(255,255,255,.18) !important;
}

.crm-select-product:hover,
#order-standard_cart.crm-modern-configure-page
#btnCompleteProductConfig:hover,
#order-standard_cart.crm-modern-viewcart
#checkout:hover,
body.crm-checkout-page
#btnCompleteOrder:hover:not(:disabled) {
    box-shadow:
        0 17px 36px rgba(201,31,40,.29),
        inset 0 1px 0 rgba(255,255,255,.20) !important;
}

/* دکمه افزودن سرویس دیگر */

.crm-cart-add-another,
.crm-reset-filters,
.crm-reset-empty {
    border-color: #fdba74 !important;
    color: #c2410c !important;
    background:
        linear-gradient(
            145deg,
            #fff7ed,
            #ffedd5
        ) !important;
    box-shadow:
        0 7px 18px rgba(234,88,12,.08) !important;
}

.crm-cart-add-another:hover,
.crm-reset-filters:hover,
.crm-reset-empty:hover {
    border-color: #fb923c !important;
    color: #9a3412 !important;
}

/* افزایش موجودی */

.crm-wallet-addfunds {
    background:
        linear-gradient(
            135deg,
            #ea580c,
            #f97316,
            #f59e0b
        ) !important;
}

/* =========================================================
   فرم‌ها
   ========================================================= */

#order-standard_cart.crm-modern-configure-page
.form-control,
#order-standard_cart.crm-modern-configure-page
.custom-select,
#order-standard_cart.crm-modern-viewcart
.form-control,
body.crm-checkout-page
.crm-modern-checkout-form input,
body.crm-checkout-page
.crm-modern-checkout-form select,
body.crm-checkout-page
.crm-modern-checkout-form textarea {
    border-color: var(--crm-brand-border-strong) !important;
    background: #fff !important;
}

#order-standard_cart.crm-modern-configure-page
.form-control:focus,
#order-standard_cart.crm-modern-configure-page
.custom-select:focus,
#order-standard_cart.crm-modern-viewcart
.form-control:focus,
body.crm-checkout-page
.crm-modern-checkout-form input:focus,
body.crm-checkout-page
.crm-modern-checkout-form select:focus,
body.crm-checkout-page
.crm-modern-checkout-form textarea:focus {
    border-color: var(--crm-brand-orange) !important;
    box-shadow:
        0 0 0 4px rgba(245,130,32,.11) !important;
}

/* =========================================================
   خلاصه سفارش
   ========================================================= */

#order-standard_cart.crm-modern-viewcart
.summary-heading {
    color: var(--crm-brand-text) !important;
    background:
        linear-gradient(
            135deg,
            #fff1f2,
            #fff7ed
        ) !important;
}

#order-standard_cart.crm-modern-configure-page
.order-summary {
    background:
        radial-gradient(
            circle at top left,
            rgba(245,130,32,.08),
            transparent 36%
        ),
        linear-gradient(
            180deg,
            #fdfdfc,
            #fff
        ) !important;
}

/* =========================================================
   پیام‌های اطلاعاتی
   ========================================================= */

.crm-independent-service-note,
.crm-cart-independent-note,
.crm-configure-security-note {
    border-color: #fed7aa !important;
    color: #57534e !important;
    background:
        linear-gradient(
            135deg,
            #fff7ed,
            #fffaf5
        ) !important;
}

.crm-independent-service-note strong,
.crm-cart-independent-note strong,
.crm-configure-security-note strong {
    color: #9a3412 !important;
}

/* =========================================================
   قیمت
   ========================================================= */

.crm-price strong,
#order-standard_cart.crm-modern-viewcart
.item-price,
#order-standard_cart.crm-modern-viewcart
.price {
    color: #991b1b !important;
}

/* =========================================================
   اسکرول بار
   ========================================================= */

.crm-filter-row::-webkit-scrollbar-thumb,
.crm-configure-progress::-webkit-scrollbar-thumb,
.crm-viewcart-steps::-webkit-scrollbar-thumb,
.crm-checkout-steps::-webkit-scrollbar-thumb {
    background:
        linear-gradient(
            90deg,
            var(--crm-brand-red),
            var(--crm-brand-orange)
        ) !important;
}

/* =========================================================
   موبایل
   ========================================================= */

@media (max-width: 767px) {
    .crm-catalog-hero,
    .crm-configure-hero,
    .crm-viewcart-hero,
    .crm-checkout-hero {
        border-radius: 20px !important;
    }

    .crm-product-card {
        border-radius: 20px !important;
    }

    .crm-product-card[data-protocol="wireguard"],
    .crm-product-card[data-protocol="openvpn"],
    .crm-product-card[data-protocol="mikrotik-vpn"] {
        border-top-width: 4px !important;
    }
}

/* CRM_VPN_BRAND_THEME_END */

/* CRM_UNIFIED_FONT_BEGIN */

@font-face {
    font-family: 'CRM Persian';
    src: url('/modules/addons/modules/addons/irangateway/dist/fonts/IRANSansWeb.ttf') format('truetype');
    font-weight: 300 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'CRM Persian';
    src: url('/modules/addons/modules/addons/irangateway/dist/fonts/IRANSansWeb_Bold.ttf') format('truetype');
    font-weight: 700 900;
    font-style: normal;
    font-display: swap;
}

/*
 * فونت یکپارچه صفحات سفارش
 * ترتیب فونت‌ها طوری است که ابتدا فونت محلی CRM استفاده شود.
 */

:root {
    --crm-persian-font:
        "CRM Persian",
        "Vazirmatn",
        "Vazir",
        "IRANSansX",
        "IRANSans",
        "Dana",
        "Yekan Bakh",
        "Shabnam",
        Tahoma,
        Arial,
        sans-serif;
}

/* محدوده صفحات خرید */

.crm-catalog,
#order-standard_cart.crm-modern-configure-page,
#order-standard_cart.crm-modern-viewcart,
body.crm-checkout-page #order-standard_cart,
.crm-configure-floating-summary,
.crm-checkout-processing-overlay,
.crm-wallet-panel {
    font-family: var(--crm-persian-font) !important;
    font-weight: 400;
    letter-spacing: 0 !important;
    font-variant-numeric: normal;
    font-feature-settings: "kern", "liga";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

/* همه عناصر متنی */

.crm-catalog
:not(i):not(.fa):not(.fas):not(.far):not(.fab):not(.fal):not(.fad),
#order-standard_cart.crm-modern-configure-page
:not(i):not(.fa):not(.fas):not(.far):not(.fab):not(.fal):not(.fad),
#order-standard_cart.crm-modern-viewcart
:not(i):not(.fa):not(.fas):not(.far):not(.fab):not(.fal):not(.fad),
body.crm-checkout-page #order-standard_cart
:not(i):not(.fa):not(.fas):not(.far):not(.fab):not(.fal):not(.fad) {
    font-family: var(--crm-persian-font) !important;
}

/* عنوان اصلی */

.crm-catalog h1,
.crm-configure-hero h1,
.crm-viewcart-hero h1,
.crm-checkout-hero h1,
#order-standard_cart.crm-modern-configure-page
.product-info .product-title {
    font-family: var(--crm-persian-font) !important;
    font-weight: 800 !important;
    letter-spacing: -.35px !important;
    line-height: 1.65 !important;
}

/* عنوان‌های درجه دوم */

.crm-catalog h2,
.crm-catalog h3,
#order-standard_cart.crm-modern-configure-page h2,
#order-standard_cart.crm-modern-configure-page h3,
#order-standard_cart.crm-modern-viewcart h2,
#order-standard_cart.crm-modern-viewcart h3,
body.crm-checkout-page #order-standard_cart h2,
body.crm-checkout-page #order-standard_cart h3 {
    font-family: var(--crm-persian-font) !important;
    font-weight: 750 !important;
    letter-spacing: -.2px !important;
    line-height: 1.7 !important;
}

/* متن‌های عمومی */

.crm-catalog p,
.crm-catalog small,
.crm-catalog span,
.crm-modern-configure-page p,
.crm-modern-configure-page small,
.crm-modern-viewcart p,
.crm-modern-viewcart small,
body.crm-checkout-page #order-standard_cart p,
body.crm-checkout-page #order-standard_cart small {
    line-height: 1.9;
}

/* دکمه‌ها و فیلترها */

.crm-filter-chip,
.crm-mini-filter,
.crm-select-product,
.crm-reset-filters,
.crm-reset-empty,
.crm-cart-add-another,
.crm-wallet-addfunds,
#btnCompleteProductConfig,
#checkout,
#btnCompleteOrder,


/* ورودی‌ها */

#order-standard_cart input,
#order-standard_cart select,
#order-standard_cart textarea,
#order-standard_cart option,
#order-standard_cart button {
    font-family: var(--crm-persian-font) !important;
}

#order-standard_cart input,
#order-standard_cart select,
#order-standard_cart textarea {
    font-weight: 500 !important;
}

/* لیبل‌ها */

#order-standard_cart label,
.crm-filter-label,
.crm-filter-step,
.crm-product-counter,
.crm-protocol-badge,
.crm-country-badge,
.crm-catalog-eyebrow,
.crm-configure-hero__badge,
.crm-viewcart-hero__badge,
.crm-checkout-hero__badge {
    font-family: var(--crm-persian-font) !important;
    font-weight: 700 !important;
}

/* عنوان کارت محصولات */

.crm-card-title h3 {
    font-weight: 750 !important;
}

.crm-card-title p {
    font-weight: 400 !important;
}

/* مشخصات کارت */

.crm-spec small {
    font-weight: 400 !important;
}

.crm-spec strong {
    font-weight: 700 !important;
}

/* قیمت‌ها */

.crm-price strong,
.crm-wallet-stat strong,
#order-standard_cart.crm-modern-viewcart .item-price,
#order-standard_cart.crm-modern-viewcart .price,
#order-standard_cart.crm-modern-viewcart .grand-total,
#order-standard_cart.crm-modern-viewcart .total-due-today {
    font-family: var(--crm-persian-font) !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
}

/* جلوگیری از وزن‌های غیرواقعی و بدشکل */

.crm-catalog [style*="font-weight: 900"],
.crm-catalog [style*="font-weight:900"],
#order-standard_cart [style*="font-weight: 900"],
#order-standard_cart [style*="font-weight:900"] {
    font-weight: 800 !important;
}

/*
 * بازگرداندن فونت اصلی Font Awesome
 * این قسمت برای سالم ماندن تمام آیکون‌ها ضروری است.
 */

.crm-catalog i.fa,
.crm-catalog i.fas,
.crm-catalog i.far,
.crm-catalog i.fab,
.crm-catalog i.fal,
.crm-catalog i.fad,
#order-standard_cart i.fa,
#order-standard_cart i.fas,
#order-standard_cart i.far,
#order-standard_cart i.fab,
#order-standard_cart i.fal,
#order-standard_cart i.fad,
.crm-catalog .fa::before,
.crm-catalog .fas::before,
.crm-catalog .far::before,
.crm-catalog .fab::before,
#order-standard_cart .fa::before,
#order-standard_cart .fas::before,
#order-standard_cart .far::before,
#order-standard_cart .fab::before {
    font-family: "Font Awesome 5 Free" !important;
    font-style: normal !important;
    font-variant: normal !important;
    text-rendering: auto !important;
    line-height: 1 !important;
}

.crm-catalog i.fab,
#order-standard_cart i.fab,
.crm-catalog .fab::before,
#order-standard_cart .fab::before {
    font-family: "Font Awesome 5 Brands" !important;
}

.crm-catalog i.far,
#order-standard_cart i.far,
.crm-catalog .far::before,
#order-standard_cart .far::before {
    font-weight: 400 !important;
}

.crm-catalog i.fa,
.crm-catalog i.fas,
#order-standard_cart i.fa,
#order-standard_cart i.fas,
.crm-catalog .fa::before,
.crm-catalog .fas::before,
#order-standard_cart .fa::before,
#order-standard_cart .fas::before {
    font-weight: 900 !important;
}

/* موبایل */

@media (max-width: 767px) {
    .crm-catalog h1,
    .crm-configure-hero h1,
    .crm-viewcart-hero h1,
    .crm-checkout-hero h1 {
        font-weight: 800 !important;
        line-height: 1.7 !important;
    }

    .crm-card-title h3 {
        font-size: 16px !important;
        line-height: 1.75 !important;
    }

    #order-standard_cart input,
    #order-standard_cart select,
    #order-standard_cart textarea {
        font-size: 16px !important;
    }
}

/* CRM_UNIFIED_FONT_END */

/* CRM_FINAL_UX_FIX_BEGIN */

/* فونت یکسان و مطمئن برای تمام صفحات خرید */

.crm-catalog,
#order-standard_cart.crm-modern-configure-page,
#order-standard_cart.crm-modern-viewcart,
body.crm-checkout-page #order-standard_cart,
.crm-wallet-panel,
.crm-configure-floating-summary,
.crm-checkout-processing-overlay {
    font-family: Tahoma, Arial, sans-serif !important;
}

.crm-catalog
:not(.fa):not(.fas):not(.far):not(.fab):not(i),
#order-standard_cart.crm-modern-configure-page
:not(.fa):not(.fas):not(.far):not(.fab):not(i),
#order-standard_cart.crm-modern-viewcart
:not(.fa):not(.fas):not(.far):not(.fab):not(i),
body.crm-checkout-page #order-standard_cart
:not(.fa):not(.fas):not(.far):not(.fab):not(i) {
    font-family: Tahoma, Arial, sans-serif !important;
}

.crm-catalog h1,
.crm-catalog h2,
.crm-catalog h3,
.crm-modern-configure-page h1,
.crm-modern-configure-page h2,
.crm-modern-configure-page h3,
.crm-modern-viewcart h1,
.crm-modern-viewcart h2,
.crm-modern-viewcart h3,
body.crm-checkout-page h1,
body.crm-checkout-page h2,
body.crm-checkout-page h3 {
    font-weight: 700 !important;
    letter-spacing: 0 !important;
}

/* حفظ فونت اصلی Font Awesome */

.crm-catalog .fa,
.crm-catalog .fas,
.crm-catalog .far,
.crm-catalog .fab,
#order-standard_cart .fa,
#order-standard_cart .fas,
#order-standard_cart .far,
#order-standard_cart .fab,
.crm-catalog .fa::before,
.crm-catalog .fas::before,
.crm-catalog .far::before,
.crm-catalog .fab::before,
#order-standard_cart .fa::before,
#order-standard_cart .fas::before,
#order-standard_cart .far::before,
#order-standard_cart .fab::before {
    font-family: "Font Awesome 5 Free" !important;
    font-style: normal !important;
    font-variant: normal !important;
    line-height: 1 !important;
}

.crm-catalog .fab,
#order-standard_cart .fab,
.crm-catalog .fab::before,
#order-standard_cart .fab::before {
    font-family: "Font Awesome 5 Brands" !important;
}

.crm-catalog .fas,
#order-standard_cart .fas,
.crm-catalog .fas::before,
#order-standard_cart .fas::before {
    font-weight: 900 !important;
}

.crm-catalog .far,
#order-standard_cart .far,
.crm-catalog .far::before,
#order-standard_cart .far::before {
    font-weight: 400 !important;
}

/* حذف ستون قدیمی سمت چپ فقط در پرداخت نهایی */

body.crm-checkout-page
#order-standard_cart .cart-sidebar,
body.crm-checkout-page
#order-standard_cart .sidebar-collapsed,
body.crm-checkout-page
#order-standard_cart .categories-collapsed {
    display: none !important;
}

body.crm-checkout-page
#order-standard_cart > .row,
body.crm-checkout-page
#order-standard_cart .cart-body {
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}

/* کارت محصولات در مرور نهایی */

#order-standard_cart.crm-modern-viewcart
.view-cart-items-header {
    color: #fff !important;
    background:
        linear-gradient(
            135deg,
            #292524,
            #7f1d1d,
            #ea580c
        ) !important;
}

#order-standard_cart.crm-modern-viewcart
.view-cart-items .item {
    border-radius: 0 !important;
}

#order-standard_cart.crm-modern-viewcart
.view-cart-items .item::before {
    width: 4px !important;
    background:
        linear-gradient(
            180deg,
            #c91f28,
            #f58220
        ) !important;
}

/* بخش خلاصه مالی مرور نهایی */

#order-standard_cart.crm-modern-viewcart
.view-cart-totals,
#order-standard_cart.crm-modern-viewcart
.summary-totals {
    padding: 22px !important;
}

#order-standard_cart.crm-modern-viewcart
.grand-total,
#order-standard_cart.crm-modern-viewcart
.total-due-today {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin-top: 14px !important;
    padding: 17px 18px !important;
    border: 1px solid #fed7aa !important;
    border-radius: 16px;
    color: #7f1d1d !important;
    background:
        linear-gradient(
            135deg,
            #fff7ed,
            #fff1f2
        ) !important;
}

/* کوپن تخفیف */

#order-standard_cart.crm-modern-viewcart
.promo-code-form,
#order-standard_cart.crm-modern-viewcart
.view-cart-promotion-code {
    border: 1px solid #fed7aa !important;
    border-radius: 18px !important;
    background:
        linear-gradient(
            135deg,
            #fffaf5,
            #fff7ed
        ) !important;
}

#order-standard_cart.crm-modern-viewcart
.promo-code-form button,
#order-standard_cart.crm-modern-viewcart
.view-cart-promotion-code button {
    border: 0 !important;
    border-radius: 13px !important;
    color: #fff !important;
    background:
        linear-gradient(
            135deg,
            #ea580c,
            #f59e0b
        ) !important;
    font-weight: 700 !important;
}

/* خلاصه سفارش صفحه تنظیم سرویس */

#order-standard_cart.crm-modern-configure-page
#orderSummary {
    border: 1px solid #e7e5e4 !important;
    border-radius: 23px !important;
    background: #fff !important;
    box-shadow: 0 15px 43px rgba(41,37,36,.10) !important;
}

#order-standard_cart.crm-modern-configure-page
.order-summary {
    padding: 0 !important;
    background: #fff !important;
}

#order-standard_cart.crm-modern-configure-page
.order-summary h2 {
    margin: 0 !important;
    padding: 17px 19px !important;
    border-bottom: 1px solid #bbf7d0;
    color: #166534 !important;
    background:
        linear-gradient(
            135deg,
            #dcfce7,
            #bbf7d0
        ) !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    text-align: center;
}

#order-standard_cart.crm-modern-configure-page
#producttotal {
    padding: 18px !important;
}

#order-standard_cart.crm-modern-configure-page
#producttotal > div,
#order-standard_cart.crm-modern-configure-page
#producttotal .clearfix {
    padding-top: 7px;
    padding-bottom: 7px;
    border-bottom: 1px dashed #e7e5e4;
}

#order-standard_cart.crm-modern-configure-page
#producttotal .total-due-today,
#order-standard_cart.crm-modern-configure-page
#producttotal .amt {
    color: #991b1b !important;
    font-weight: 700 !important;
}

/* نشان کشور در عنوان محصول و سرویس */

.crm-product-country-flag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    min-height: 31px;
    margin-left: 8px;
    padding: 4px 9px;
    border: 1px solid #fed7aa;
    border-radius: 999px;
    background: #fff7ed;
    font-size: 20px;
    vertical-align: middle;
}

.crm-product-country-name {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

/* آیکون‌های سفارشی بدون وابستگی به فونت */

.crm-emoji-icon {
    display: inline-grid;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 11px;
    background: #fff7ed;
    font-family:
        "Segoe UI Emoji",
        "Apple Color Emoji",
        sans-serif !important;
    font-size: 17px;
}

/* مخفی‌کردن آیکون‌های مربعی داخل دکمه‌های مهم */

#btnCompleteProductConfig > i,
#checkout > i,
#btnCompleteOrder > i,
.crm-cart-add-another > i {
    display: none !important;
}

#btnCompleteProductConfig::after {
    content: " ←";
    font-family: Tahoma, Arial, sans-serif !important;
}

#checkout::after,
#btnCompleteOrder::after {
    content: " ✓";
    font-family: Tahoma, Arial, sans-serif !important;
}

.crm-cart-add-another::before {
    content: "＋";
    margin-left: 6px;
    font-family: Arial, sans-serif !important;
    font-size: 17px;
}

/* بهبود فیلتر مدت */

.crm-mini-filter[data-filter-duration] {
    min-width: 83px;
}

.crm-card-specs .crm-spec strong {
    white-space: normal !important;
    line-height: 1.7 !important;
}

/* موبایل */

@media (max-width: 767px) {
    #order-standard_cart.crm-modern-viewcart
    .grand-total,
    #order-standard_cart.crm-modern-viewcart
    .total-due-today {
        align-items: flex-start;
        flex-direction: column;
    }

    #order-standard_cart.crm-modern-configure-page
    #producttotal {
        padding: 15px !important;
    }

    .crm-product-country-flag {
        min-width: 36px;
        min-height: 29px;
        font-size: 18px;
    }
}

/* CRM_FINAL_UX_FIX_END */

/* CRM_FINAL_IDENTITY_BEGIN */

/* =========================================================
   تایپوگرافی یکپارچه با قالب اصلی Simurgh
   ========================================================= */

.crm-catalog,
#order-standard_cart.crm-modern-configure-page,
#order-standard_cart.crm-modern-viewcart,
body.crm-checkout-page #order-standard_cart,
.crm-wallet-panel,
.crm-checkout-processing-overlay,


.crm-catalog
:not(svg):not(path):not(i):not(.fa):not(.fas):not(.far):not(.fab),
#order-standard_cart
:not(svg):not(path):not(i):not(.fa):not(.fas):not(.far):not(.fab) {
    font-family: inherit !important;
}

.crm-catalog h1,
.crm-catalog h2,
.crm-catalog h3,
.crm-modern-configure-page h1,
.crm-modern-configure-page h2,
.crm-modern-configure-page h3,
.crm-modern-viewcart h1,
.crm-modern-viewcart h2,
.crm-modern-viewcart h3,
body.crm-checkout-page h1,
body.crm-checkout-page h2,
body.crm-checkout-page h3 {
    font-family: inherit !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    line-height: 1.75 !important;
}

.crm-catalog p,
.crm-modern-configure-page p,
.crm-modern-viewcart p,
body.crm-checkout-page p {
    font-weight: 400;
    line-height: 2;
}

/* =========================================================
   حذف کامل Sidebarهای Order Form
   ========================================================= */

.crm-catalog .cart-sidebar,
.crm-catalog .sidebar-categories,
.crm-catalog .sidebar-categories-collapsed,
.crm-catalog .categories-collapsed,

#order-standard_cart.crm-modern-configure-page .cart-sidebar,
#order-standard_cart.crm-modern-configure-page
.sidebar-categories,
#order-standard_cart.crm-modern-configure-page
.sidebar-categories-collapsed,
#order-standard_cart.crm-modern-configure-page
.categories-collapsed,

#order-standard_cart.crm-modern-viewcart .cart-sidebar,
#order-standard_cart.crm-modern-viewcart
.sidebar-categories,
#order-standard_cart.crm-modern-viewcart
.sidebar-categories-collapsed,
#order-standard_cart.crm-modern-viewcart
.categories-collapsed,

body.crm-checkout-page #order-standard_cart .cart-sidebar,
body.crm-checkout-page #order-standard_cart
.sidebar-categories,
body.crm-checkout-page #order-standard_cart
.sidebar-categories-collapsed,
body.crm-checkout-page #order-standard_cart
.categories-collapsed {
    display: none !important;
}

#order-standard_cart.crm-modern-configure-page
.cart-body,
#order-standard_cart.crm-modern-viewcart
.cart-body,
body.crm-checkout-page #order-standard_cart
.cart-body {
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}

/* =========================================================
   آیکون‌های SVG اختصاصی
   ========================================================= */

.crm-protocol-svg {
    display: inline-grid;
    flex: 0 0 32px;
    width: 32px;
    height: 32px;
    place-items: center;
    border-radius: 11px;
    vertical-align: middle;
}

.crm-protocol-svg svg {
    display: block;
    width: 20px;
    height: 20px;
}

.crm-protocol-svg--wireguard {
    color: #b91c1c;
    background: #fee2e2;
    box-shadow: inset 0 0 0 1px rgba(185,28,28,.09);
}

.crm-protocol-svg--openvpn {
    color: #ea580c;
    background: #ffedd5;
    box-shadow: inset 0 0 0 1px rgba(234,88,12,.10);
}

.crm-protocol-svg--all,
.crm-protocol-svg--other {
    color: #44403c;
    background: #f5f5f4;
    box-shadow: inset 0 0 0 1px rgba(68,64,60,.08);
}

.crm-filter-chip .crm-protocol-svg {
    width: 29px;
    height: 29px;
    flex-basis: 29px;
}

.crm-filter-chip.active .crm-protocol-svg {
    color: #fff;
    background: rgba(255,255,255,.17);
}

/* حذف آیکون Font Awesome فقط در محل‌هایی که SVG جایگزین شده */

.crm-filter-chip > i,
.crm-protocol-badge > i,
.crm-protocol-title-badge > i {
    display: none !important;
}

/* =========================================================
   پرچم کشور
   ========================================================= */

.crm-flag,
.crm-country-badge > span:first-child,
.crm-product-country-flag {
    font-family:
        "Segoe UI Emoji",
        "Apple Color Emoji",
        "Noto Color Emoji",
        sans-serif !important;

    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 1 !important;
}

.crm-flag {
    display: inline-block;
    min-width: 24px;
    font-size: 20px;
    text-align: center;
}

.crm-country-badge {
    min-height: 34px;
}

.crm-product-country-flag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    min-height: 33px;
    margin-left: 8px;
    padding: 4px 9px;
    border: 1px solid #fed7aa;
    border-radius: 999px;
    background: #fff7ed;
    font-size: 20px;
}

/* =========================================================
   حذف مربع‌های خراب
   ========================================================= */

.crm-filter-label > i,
.crm-catalog-eyebrow > i,
.crm-configure-hero__badge > i,
.crm-viewcart-hero__badge > i,
.crm-checkout-hero__badge > i,
.crm-independent-service-note > i,
.crm-cart-independent-note > i,
.crm-configure-security-note > i,
.crm-wallet-panel__title i {
    display: none !important;
}

.crm-filter-label::before {
    content: "●";
    display: inline-grid;
    width: 27px;
    height: 27px;
    margin-left: 7px;
    place-items: center;
    border-radius: 9px;
    color: #ea580c;
    background: #fff7ed;
    font-family: Arial, sans-serif !important;
    font-size: 9px;
}

.crm-catalog-eyebrow::before {
    content: "◆";
    margin-left: 7px;
    color: #fdba74;
    font-family: Arial, sans-serif !important;
}

.crm-configure-hero__badge::before,
.crm-viewcart-hero__badge::before,
.crm-checkout-hero__badge::before {
    content: "✓";
    display: inline-grid;
    width: 24px;
    height: 24px;
    place-items: center;
    border-radius: 8px;
    background: rgba(255,255,255,.14);
    font-family: Arial, sans-serif !important;
}

/* =========================================================
   کارت محصول حرفه‌ای
   ========================================================= */

.crm-card-features {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin: 4px 0 18px;
}

.crm-card-features span {
    display: flex;
    align-items: center;
    gap: 7px;
    min-height: 39px;
    padding: 8px 10px;
    border: 1px solid #e7e5e4;
    border-radius: 12px;
    color: #44403c;
    background: #fafaf9;
    font-size: 11px;
    font-weight: 700;
}

.crm-feature-check {
    display: inline-grid;
    flex: 0 0 21px;
    width: 21px;
    height: 21px;
    place-items: center;
    border-radius: 7px;
    color: #fff;
    background: linear-gradient(135deg, #dc2626, #f97316);
    font-family: Arial, sans-serif !important;
    font-size: 12px;
}

.crm-product-card[data-protocol="wireguard"]
.crm-feature-check {
    background: linear-gradient(135deg, #991b1b, #dc2626);
}

.crm-product-card[data-protocol="openvpn"]
.crm-feature-check,
.crm-product-card[data-protocol="mikrotik-vpn"]
.crm-feature-check {
    background: linear-gradient(135deg, #ea580c, #f59e0b);
}

/* =========================================================
   Badge پروتکل داخل صفحات دیگر
   ========================================================= */

.crm-protocol-title-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-left: 9px;
    padding: 5px 9px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 800;
    vertical-align: middle;
}

.crm-protocol-title-badge.is-wireguard {
    color: #991b1b;
    background: #fee2e2;
}

.crm-protocol-title-badge.is-openvpn {
    color: #9a3412;
    background: #ffedd5;
}

/* =========================================================
   فیلتر موبایل
   ========================================================= */

.crm-mobile-filter-title {
    display: none;
}

@media (max-width: 767px) {
    .crm-filter-panel {
        padding: 16px 13px !important;
    }

    .crm-filter-heading {
        margin-bottom: 17px;
    }

    .crm-filter-heading h2 {
        font-size: 18px !important;
    }

    .crm-filter-row {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px !important;
        overflow: visible !important;
        padding-bottom: 0 !important;
    }

    .crm-protocol-filter {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .crm-filter-chip,
    .crm-mini-filter {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 47px;
        padding: 8px 9px !important;
        white-space: normal !important;
        font-size: 11px;
        line-height: 1.6;
    }

    .crm-filter-block {
        margin-top: 16px;
        padding-top: 16px;
    }

    .crm-filter-label {
        margin-bottom: 10px;
    }

    .crm-card-features {
        grid-template-columns: minmax(0, 1fr);
    }

    .crm-products-grid {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .crm-product-card {
        width: 100%;
        min-width: 0;
    }

    .crm-card-topline {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .crm-card-title h3 {
        font-size: 16px !important;
        line-height: 1.8 !important;
    }

    .crm-card-specs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .crm-select-product {
        width: 100%;
    }

    .crm-product-country-flag {
        min-width: 38px;
        min-height: 30px;
        font-size: 18px;
    }
}

@media (max-width: 380px) {
    .crm-filter-row,
    .crm-protocol-filter,
    .crm-card-specs {
        grid-template-columns: minmax(0, 1fr) !important;
    }
}

/* =========================================================
   پیام موفقیت خرید
   ========================================================= */

.crm-purchase-success-overlay {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    background: rgba(15, 23, 42, .44);
    backdrop-filter: blur(7px);
    animation: crmSuccessBackdropIn .25s ease both;
}

.crm-purchase-success-card {
    width: min(430px, 100%);
    padding: 31px 25px;
    border-radius: 25px;
    background: #fff;
    text-align: center;
    box-shadow: 0 28px 80px rgba(0,0,0,.24);
    animation: crmSuccessCardIn .38s cubic-bezier(.2,.8,.2,1) both;
}

.crm-purchase-success-icon {
    display: grid;
    width: 76px;
    height: 76px;
    margin: 0 auto 18px;
    place-items: center;
    border-radius: 25px;
    color: #fff;
    background: linear-gradient(135deg, #059669, #22c55e);
    box-shadow: 0 15px 35px rgba(5,150,105,.25);
    font-family: Arial, sans-serif !important;
    font-size: 38px;
    font-weight: 700;
}

.crm-purchase-success-card h3 {
    margin: 0 0 8px;
    color: #14532d;
    font-size: 21px;
    font-weight: 800;
}

.crm-purchase-success-card p {
    margin: 0;
    color: #64748b;
    line-height: 1.9;
}

.crm-purchase-success-progress {
    overflow: hidden;
    height: 5px;
    margin-top: 21px;
    border-radius: 999px;
    background: #dcfce7;
}

.crm-purchase-success-progress span {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #059669, #22c55e);
    animation: crmSuccessProgress 2.8s linear forwards;
}

.crm-purchase-success-overlay.is-hiding {
    animation: crmSuccessBackdropOut .28s ease forwards;
}

@keyframes crmSuccessCardIn {
    from {
        opacity: 0;
        transform: translateY(18px) scale(.96);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes crmSuccessBackdropIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes crmSuccessBackdropOut {
    from { opacity: 1; }
    to { opacity: 0; }
}

@keyframes crmSuccessProgress {
    from { width: 100%; }
    to { width: 0; }
}

/* CRM_FINAL_IDENTITY_END */


/* CRM_REMOVE_FLOATING_SUMMARY_BEGIN */

.crm-configure-floating-summary,
#crmConfigureFloatingSummary {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* CRM_REMOVE_FLOATING_SUMMARY_END */

/* CRM_COMPACT_HERO_BEGIN */

.crm-catalog-hero.crm-catalog-hero--compact {
    min-height: 0 !important;
    margin-bottom: 18px !important;
    padding: 26px 30px !important;
    border-radius: 22px !important;
}

.crm-catalog-hero--compact
.crm-catalog-hero__content {
    max-width: 920px;
}

.crm-catalog-hero--compact
.crm-catalog-eyebrow {
    min-height: 31px !important;
    margin-bottom: 10px !important;
    padding: 6px 11px !important;
    font-size: 11px !important;
}

.crm-catalog-hero--compact h1 {
    margin: 0 0 7px !important;
    font-size: clamp(24px, 3.5vw, 34px) !important;
    line-height: 1.5 !important;
}

.crm-catalog-hero--compact p {
    max-width: 780px !important;
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.9 !important;
}

.crm-catalog-hero--compact
.crm-catalog-benefits {
    gap: 8px !important;
    margin-top: 14px !important;
}

.crm-catalog-hero--compact
.crm-catalog-benefits span {
    min-height: 34px;
    padding: 6px 10px !important;
    border-radius: 10px !important;
    font-size: 11px !important;
}

.crm-benefit-symbol {
    display: inline-grid;
    width: 24px;
    height: 24px;
    place-items: center;
    border-radius: 8px;
    background: rgba(255,255,255,.12);
    font-family:
        "Segoe UI Emoji",
        "Apple Color Emoji",
        sans-serif !important;
    font-size: 14px;
    font-weight: 400;
}

.crm-catalog-hero--compact
.crm-catalog-hero__glow--one {
    top: -110px !important;
    left: -95px !important;
    width: 250px !important;
    height: 250px !important;
}

.crm-catalog-hero--compact
.crm-catalog-hero__glow--two {
    right: -105px !important;
    bottom: -160px !important;
    width: 310px !important;
    height: 310px !important;
}

/* تبلت */

@media (max-width: 990px) {
    .crm-catalog-hero.crm-catalog-hero--compact {
        padding: 23px 24px !important;
    }
}

/* موبایل */

@media (max-width: 767px) {
    .crm-catalog-hero.crm-catalog-hero--compact {
        margin-bottom: 14px !important;
        padding: 20px 16px !important;
        border-radius: 18px !important;
    }

    .crm-catalog-hero--compact
    .crm-catalog-eyebrow {
        margin-bottom: 8px !important;
        font-size: 10px !important;
    }

    .crm-catalog-hero--compact h1 {
        margin-bottom: 6px !important;
        font-size: 22px !important;
        line-height: 1.55 !important;
    }

    .crm-catalog-hero--compact p {
        font-size: 12px !important;
        line-height: 1.85 !important;
    }

    .crm-catalog-hero--compact
    .crm-catalog-benefits {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 6px !important;
        margin-top: 12px !important;
    }

    .crm-catalog-hero--compact
    .crm-catalog-benefits span {
        align-items: center;
        flex-direction: column;
        gap: 4px !important;
        min-width: 0;
        padding: 7px 5px !important;
        text-align: center;
        font-size: 9px !important;
        line-height: 1.5;
    }

    .crm-benefit-symbol {
        width: 23px;
        height: 23px;
        font-size: 13px;
    }
}

@media (max-width: 390px) {
    .crm-catalog-hero--compact
    .crm-catalog-benefits {
        grid-template-columns: minmax(0, 1fr);
    }

    .crm-catalog-hero--compact
    .crm-catalog-benefits span {
        flex-direction: row;
        justify-content: flex-start;
        text-align: right;
    }
}

/* CRM_COMPACT_HERO_END */

/* CRM_ORDER_FINAL_POLISH_BEGIN */

/* =========================================================
   تایپوگرافی یکپارچه
   ========================================================= */

.crm-catalog,
#order-standard_cart.crm-modern-configure-page,
#order-standard_cart.crm-modern-viewcart,
body.crm-checkout-page #order-standard_cart,
.crm-purchase-success-overlay,
.crm-checkout-processing-overlay {
    font-family:
        inherit,
        Tahoma,
        Arial,
        sans-serif !important;

    direction: rtl;
    letter-spacing: 0 !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.crm-catalog h1,
.crm-catalog h2,
.crm-catalog h3,
.crm-modern-configure-page h1,
.crm-modern-configure-page h2,
.crm-modern-configure-page h3,
.crm-modern-viewcart h1,
.crm-modern-viewcart h2,
.crm-modern-viewcart h3,
body.crm-checkout-page h1,
body.crm-checkout-page h2,
body.crm-checkout-page h3 {
    font-family: inherit !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    line-height: 1.75 !important;
}

.crm-catalog p,
.crm-modern-configure-page p,
.crm-modern-viewcart p,
body.crm-checkout-page p {
    line-height: 2 !important;
}

/* =========================================================
   حذف کامل Sidebarهای قدیمی Order Form
   ========================================================= */

.crm-catalog .cart-sidebar,
.crm-catalog .sidebar-categories,
.crm-catalog .sidebar-categories-collapsed,
.crm-catalog .categories-collapsed,
.crm-catalog .sidebar,

#order-standard_cart.crm-modern-configure-page .cart-sidebar,
#order-standard_cart.crm-modern-configure-page .sidebar-categories,
#order-standard_cart.crm-modern-configure-page .sidebar-categories-collapsed,
#order-standard_cart.crm-modern-configure-page .categories-collapsed,

#order-standard_cart.crm-modern-viewcart .cart-sidebar,
#order-standard_cart.crm-modern-viewcart .sidebar-categories,
#order-standard_cart.crm-modern-viewcart .sidebar-categories-collapsed,
#order-standard_cart.crm-modern-viewcart .categories-collapsed,

body.crm-checkout-page #order-standard_cart .cart-sidebar,
body.crm-checkout-page #order-standard_cart .sidebar-categories,
body.crm-checkout-page #order-standard_cart .sidebar-categories-collapsed,
body.crm-checkout-page #order-standard_cart .categories-collapsed {
    display: none !important;
}

#order-standard_cart.crm-modern-configure-page .cart-body,
#order-standard_cart.crm-modern-viewcart .cart-body,
body.crm-checkout-page #order-standard_cart .cart-body {
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}

/* =========================================================
   حذف مربع‌های Font Awesome
   ========================================================= */

.crm-catalog i[class*="fa-"],
.crm-modern-configure-page i[class*="fa-"],
.crm-modern-viewcart i[class*="fa-"],
body.crm-checkout-page #order-standard_cart i[class*="fa-"] {
    display: none !important;
}

/* =========================================================
   آیکون SVG عمومی
   ========================================================= */

.crm-inline-svg {
    display: inline-grid;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 11px;
    color: #b91c1c;
    background: #fff1f2;
    box-shadow: inset 0 0 0 1px rgba(185, 28, 28, .08);
    vertical-align: middle;
}

.crm-inline-svg svg {
    display: block;
    width: 19px;
    height: 19px;
    stroke: currentColor;
}

.crm-inline-svg.is-orange {
    color: #ea580c;
    background: #fff7ed;
}

.crm-inline-svg.is-dark {
    color: #44403c;
    background: #f5f5f4;
}

.crm-inline-svg.is-green {
    color: #059669;
    background: #ecfdf5;
}

/* =========================================================
   آیکون پروتکل
   ========================================================= */

.crm-protocol-svg {
    display: inline-grid;
    flex: 0 0 31px;
    width: 31px;
    height: 31px;
    place-items: center;
    border-radius: 10px;
    vertical-align: middle;
}

.crm-protocol-svg svg {
    display: block;
    width: 19px;
    height: 19px;
}

.crm-protocol-svg--wireguard {
    color: #b91c1c;
    background: #fee2e2;
}

.crm-protocol-svg--openvpn {
    color: #ea580c;
    background: #ffedd5;
}

.crm-protocol-svg--other {
    color: #44403c;
    background: #f5f5f4;
}

.crm-filter-chip.active .crm-protocol-svg {
    color: #fff;
    background: rgba(255, 255, 255, .17);
}

/* =========================================================
   پرچم کشورها
   ========================================================= */

.crm-flag,
.crm-country-badge > span:first-child,
.crm-product-country-flag {
    font-family:
        "Segoe UI Emoji",
        "Apple Color Emoji",
        "Noto Color Emoji",
        sans-serif !important;

    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 1 !important;
}

.crm-flag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 26px;
    font-size: 20px;
}

.crm-product-country-flag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 41px;
    min-height: 32px;
    margin-left: 8px;
    padding: 4px 9px;
    border: 1px solid #fed7aa;
    border-radius: 999px;
    background: #fff7ed;
    font-size: 20px;
    vertical-align: middle;
}

/* =========================================================
   کارت‌های محصول
   ========================================================= */

.crm-product-card {
    overflow: hidden;
    border-radius: 22px !important;
}

.crm-card-title h3,
.crm-card-title p,
.crm-card-description {
    overflow-wrap: anywhere;
    word-break: normal;
}

.crm-card-features {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin: 5px 0 18px;
}

.crm-card-features span {
    display: flex;
    align-items: center;
    gap: 7px;
    min-height: 40px;
    padding: 8px 10px;
    border: 1px solid #e7e5e4;
    border-radius: 12px;
    color: #44403c;
    background: #fafaf9;
    font-size: 11px;
    font-weight: 700;
}

.crm-feature-check {
    display: inline-grid;
    flex: 0 0 21px;
    width: 21px;
    height: 21px;
    place-items: center;
    border-radius: 7px;
    color: #fff;
    background: linear-gradient(135deg, #dc2626, #f97316);
    font-family: Arial, sans-serif !important;
    font-size: 12px;
}

/* =========================================================
   فرم‌ها، جدول‌ها و بخش‌های قدیمی WHMCS
   ========================================================= */

#order-standard_cart table {
    width: 100%;
    border-collapse: separate !important;
    border-spacing: 0;
}

#order-standard_cart table th {
    padding: 13px 14px !important;
    border-bottom: 1px solid #e7e5e4 !important;
    color: #fff !important;
    background: linear-gradient(135deg, #292524, #7f1d1d) !important;
    font-weight: 700 !important;
}

#order-standard_cart table td {
    padding: 14px !important;
    border-bottom: 1px solid #f0eeec !important;
    color: #44403c;
    background: #fff;
}

#order-standard_cart .panel-heading,
#order-standard_cart .card-header {
    color: #7f1d1d !important;
    background: linear-gradient(135deg, #fff1f2, #fff7ed) !important;
    font-weight: 800 !important;
}

#order-standard_cart .btn-default,
#order-standard_cart .btn-secondary {
    border: 1px solid #fdba74 !important;
    color: #c2410c !important;
    background: #fff7ed !important;
}

/* =========================================================
   دکمه‌های موبایل
   ========================================================= */

#btnCompleteProductConfig,
#checkout,
#btnCompleteOrder,
.crm-select-product,
.crm-cart-add-another {
    min-height: 50px;
    border-radius: 14px !important;
    white-space: normal;
    text-align: center;
}

/* =========================================================
   فیلترهای موبایل
   ========================================================= */

@media (max-width: 767px) {
    .crm-catalog {
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
    }

    .crm-filter-panel,
    .crm-products-section {
        width: 100%;
        max-width: 100%;
        padding: 15px 12px !important;
    }

    .crm-filter-heading,
    .crm-products-header {
        width: 100%;
    }

    .crm-filter-row,
    .crm-protocol-filter {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px !important;
        width: 100%;
        overflow: visible !important;
        padding: 0 !important;
    }

    .crm-filter-chip,
    .crm-mini-filter {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 48px;
        margin: 0 !important;
        padding: 8px !important;
        white-space: normal !important;
        line-height: 1.6;
    }

    .crm-products-grid {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        width: 100%;
        gap: 13px !important;
    }

    .crm-product-card {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        padding: 16px !important;
    }

    .crm-card-topline {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .crm-card-specs {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .crm-card-footer {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .crm-select-product,
    .crm-cart-add-another,
    #btnCompleteProductConfig,
    #checkout,
    #btnCompleteOrder {
        width: 100% !important;
    }

    #order-standard_cart table,
    #order-standard_cart table tbody,
    #order-standard_cart table tr,
    #order-standard_cart table td {
        display: block;
        width: 100%;
    }

    #order-standard_cart table thead {
        display: none;
    }

    #order-standard_cart table tr {
        overflow: hidden;
        margin-bottom: 12px;
        border: 1px solid #e7e5e4;
        border-radius: 15px;
        background: #fff;
    }

    #order-standard_cart table td {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 13px;
        padding: 12px 13px !important;
        text-align: right !important;
    }

    #order-standard_cart table td:last-child {
        border-bottom: 0 !important;
    }

    .crm-card-features {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 390px) {
    .crm-filter-row,
    .crm-protocol-filter,
    .crm-card-specs {
        grid-template-columns: minmax(0, 1fr) !important;
    }
}

/* =========================================================
   پیام موفقیت
   ========================================================= */

.crm-purchase-success-overlay {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    background: rgba(15, 23, 42, .48);
    backdrop-filter: blur(7px);
    animation: crmSuccessOverlayIn .25s ease both;
}

.crm-purchase-success-card {
    width: min(430px, 100%);
    padding: 31px 25px;
    border: 1px solid #bbf7d0;
    border-radius: 25px;
    background: #fff;
    text-align: center;
    box-shadow: 0 28px 80px rgba(0, 0, 0, .24);
    animation: crmSuccessCardIn .38s cubic-bezier(.2, .8, .2, 1) both;
}

.crm-purchase-success-icon {
    display: grid;
    width: 76px;
    height: 76px;
    margin: 0 auto 18px;
    place-items: center;
    border-radius: 25px;
    color: #fff;
    background: linear-gradient(135deg, #059669, #22c55e);
    box-shadow: 0 15px 35px rgba(5, 150, 105, .25);
    font-family: Arial, sans-serif !important;
    font-size: 38px;
    font-weight: 700;
}

.crm-purchase-success-card h3 {
    margin: 0 0 8px;
    color: #14532d;
    font-size: 21px;
    font-weight: 800;
}

.crm-purchase-success-card p {
    margin: 0;
    color: #64748b;
    line-height: 1.9;
}

.crm-purchase-success-progress {
    overflow: hidden;
    height: 5px;
    margin-top: 21px;
    border-radius: 999px;
    background: #dcfce7;
}

.crm-purchase-success-progress span {
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, #059669, #22c55e);
    animation: crmSuccessProgress 2.8s linear forwards;
}

.crm-purchase-success-overlay.is-hiding {
    animation: crmSuccessOverlayOut .3s ease forwards;
}

@keyframes crmSuccessCardIn {
    from {
        opacity: 0;
        transform: translateY(18px) scale(.96);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes crmSuccessOverlayIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes crmSuccessOverlayOut {
    from { opacity: 1; }
    to { opacity: 0; }
}

@keyframes crmSuccessProgress {
    from { width: 100%; }
    to { width: 0; }
}

/* CRM_ORDER_FINAL_POLISH_END */

/* CRM_DESKTOP_SVG_FLAGS_BEGIN */

.crm-svg-country-flag {
    display: inline-flex !important;
    flex: 0 0 38px;
    width: 38px;
    height: 27px;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    margin-left: 8px;
    border: 1px solid rgba(120, 113, 108, .22);
    border-radius: 7px;
    background: #fff;
    box-shadow:
        0 4px 11px rgba(41, 37, 36, .10),
        inset 0 0 0 1px rgba(255, 255, 255, .35);
    vertical-align: middle;
}

.crm-svg-country-flag svg {
    display: block !important;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/*
 * پرچم ایموجی قبلی مخفی می‌شود؛
 * SVG جدید جای آن را می‌گیرد.
 */
.crm-product-country-flag:not(.crm-svg-country-flag),
.crm-country-badge .crm-flag {
    display: none !important;
}

/* پرچم داخل Badge کشور */

.crm-country-badge .crm-svg-country-flag {
    flex-basis: 31px;
    width: 31px;
    height: 22px;
    margin-left: 6px;
    border-radius: 6px;
}

/* پرچم کنار عنوان محصول */

.crm-card-title h3 .crm-svg-country-flag,
.product-title .crm-svg-country-flag,
.view-cart-items .product-name .crm-svg-country-flag,
.view-cart-items .item-title .crm-svg-country-flag,
#producttotal strong .crm-svg-country-flag {
    position: relative;
    top: 1px;
}

/* موبایل */

@media (max-width: 767px) {
    .crm-svg-country-flag {
        flex-basis: 35px;
        width: 35px;
        height: 25px;
        margin-left: 6px;
    }

    .crm-country-badge .crm-svg-country-flag {
        flex-basis: 29px;
        width: 29px;
        height: 21px;
    }
}

/* CRM_DESKTOP_SVG_FLAGS_END */

/* CRM_COUNTRY_FILTER_FLAGS_BEGIN */

[data-filter-country] {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px !important;
}

.crm-country-filter-flag {
    display: inline-flex !important;
    flex: 0 0 32px;
    width: 32px;
    height: 23px;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 1px solid rgba(120,113,108,.20);
    border-radius: 6px;
    background: #fff;
    box-shadow: 0 3px 8px rgba(41,37,36,.09);
}

.crm-country-filter-flag svg {
    display: block !important;
    width: 100%;
    height: 100%;
}

[data-filter-country].active
.crm-country-filter-flag {
    border-color: rgba(255,255,255,.40);
    box-shadow:
        0 3px 9px rgba(0,0,0,.14),
        0 0 0 1px rgba(255,255,255,.16);
}

.crm-country-filter-code {
    display: none !important;
}

/* دکمه همه موقعیت‌ها */

[data-filter-country="all"]::before {
    content: "🌍";
    display: inline-grid;
    width: 29px;
    height: 29px;
    place-items: center;
    border-radius: 9px;
    background: rgba(120,113,108,.08);
    font-family:
        "Segoe UI Emoji",
        "Apple Color Emoji",
        sans-serif !important;
    font-size: 17px;
}

[data-filter-country="all"].active::before {
    background: rgba(255,255,255,.17);
}

/* چند موقعیت */

[data-filter-country="multiple"]::before,
[data-filter-country="multi"]::before {
    content: "🌐";
    display: inline-grid;
    width: 29px;
    height: 29px;
    place-items: center;
    border-radius: 9px;
    background: rgba(120,113,108,.08);
    font-family:
        "Segoe UI Emoji",
        "Apple Color Emoji",
        sans-serif !important;
    font-size: 17px;
}

@media (max-width: 767px) {
    .crm-country-filter-flag {
        flex-basis: 30px;
        width: 30px;
        height: 21px;
    }

    [data-filter-country] {
        gap: 6px !important;
    }
}

/* CRM_COUNTRY_FILTER_FLAGS_END */

/* CRM_FORCE_CSS_FLAGS_BEGIN */

/*
 * پرچم‌های فیلتر کشور، کاملاً CSS و بدون وابستگی به JS یا Emoji
 */

button[data-filter-country] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 9px !important;
}

/* قاب مشترک تمام پرچم‌ها */

button[data-filter-country="fi"]::before,
button[data-filter-country="finland"]::before,
button[data-filter-country="it"]::before,
button[data-filter-country="italy"]::before,
button[data-filter-country="us"]::before,
button[data-filter-country="usa"]::before,
button[data-filter-country="america"]::before,
button[data-filter-country="de"]::before,
button[data-filter-country="germany"]::before,
button[data-filter-country="nl"]::before,
button[data-filter-country="netherlands"]::before,
button[data-filter-country="fr"]::before,
button[data-filter-country="france"]::before,
button[data-filter-country="tr"]::before,
button[data-filter-country="turkey"]::before {
    content: "" !important;
    display: inline-block !important;
    flex: 0 0 34px !important;
    width: 34px !important;
    height: 23px !important;
    margin: 0 !important;
    border: 1px solid rgba(120, 113, 108, .25) !important;
    border-radius: 6px !important;
    box-sizing: border-box !important;
    background-repeat: no-repeat !important;
    background-size: 100% 100% !important;
    box-shadow:
        0 3px 8px rgba(41, 37, 36, .12),
        inset 0 0 0 1px rgba(255,255,255,.25) !important;
}

/* فنلاند */

button[data-filter-country="fi"]::before,
button[data-filter-country="finland"]::before {
    background:
        linear-gradient(
            to bottom,
            transparent 0 37.5%,
            #003580 37.5% 58.5%,
            transparent 58.5% 100%
        ),
        linear-gradient(
            to right,
            #fff 0 27%,
            #003580 27% 42%,
            #fff 42% 100%
        ) !important;
}

/* ایتالیا */

button[data-filter-country="it"]::before,
button[data-filter-country="italy"]::before {
    background:
        linear-gradient(
            to right,
            #009246 0 33.333%,
            #fff 33.333% 66.666%,
            #ce2b37 66.666% 100%
        ) !important;
}

/* آلمان */

button[data-filter-country="de"]::before,
button[data-filter-country="germany"]::before {
    background:
        linear-gradient(
            to bottom,
            #000 0 33.333%,
            #dd0000 33.333% 66.666%,
            #ffce00 66.666% 100%
        ) !important;
}

/* هلند */

button[data-filter-country="nl"]::before,
button[data-filter-country="netherlands"]::before {
    background:
        linear-gradient(
            to bottom,
            #ae1c28 0 33.333%,
            #fff 33.333% 66.666%,
            #21468b 66.666% 100%
        ) !important;
}

/* فرانسه */

button[data-filter-country="fr"]::before,
button[data-filter-country="france"]::before {
    background:
        linear-gradient(
            to right,
            #0055a4 0 33.333%,
            #fff 33.333% 66.666%,
            #ef4135 66.666% 100%
        ) !important;
}

/* آمریکا */

button[data-filter-country="us"]::before,
button[data-filter-country="usa"]::before,
button[data-filter-country="america"]::before {
    background:
        linear-gradient(
            to bottom,
            #b22234 0 7.69%,
            #fff 7.69% 15.38%,
            #b22234 15.38% 23.07%,
            #fff 23.07% 30.76%,
            #b22234 30.76% 38.45%,
            #fff 38.45% 46.14%,
            #b22234 46.14% 53.83%,
            #fff 53.83% 61.52%,
            #b22234 61.52% 69.21%,
            #fff 69.21% 76.9%,
            #b22234 76.9% 84.59%,
            #fff 84.59% 92.28%,
            #b22234 92.28% 100%
        ) !important;
    position: relative;
}

/* ترکیه */

button[data-filter-country="tr"]::before,
button[data-filter-country="turkey"]::before {
    background:
        radial-gradient(
            circle at 42% 50%,
            #fff 0 24%,
            transparent 25%
        ),
        radial-gradient(
            circle at 49% 50%,
            #e30a17 0 20%,
            transparent 21%
        ),
        #e30a17 !important;
}

/* همه موقعیت‌ها */

button[data-filter-country="all"]::before {
    content: "◎" !important;
    display: inline-grid !important;
    flex: 0 0 29px !important;
    width: 29px !important;
    height: 29px !important;
    place-items: center !important;
    margin: 0 !important;
    border-radius: 9px !important;
    color: #c2410c !important;
    background: #fff7ed !important;
    font-family: Arial, sans-serif !important;
    font-size: 18px !important;
    font-weight: 700 !important;
}

/* چند موقعیت */

button[data-filter-country="multiple"]::before,
button[data-filter-country="multi"]::before {
    content: "✦" !important;
    display: inline-grid !important;
    flex: 0 0 29px !important;
    width: 29px !important;
    height: 29px !important;
    place-items: center !important;
    margin: 0 !important;
    border-radius: 9px !important;
    color: #0284c7 !important;
    background: #e0f2fe !important;
    font-family: Arial, sans-serif !important;
    font-size: 16px !important;
}

/* حالت فعال */

button[data-filter-country].active::before {
    border-color: rgba(255,255,255,.65) !important;
    box-shadow:
        0 4px 11px rgba(0,0,0,.18),
        0 0 0 2px rgba(255,255,255,.16) !important;
}

/* حذف عناصر پرچم قبلی تا تکراری نشوند */

button[data-filter-country]
.crm-country-filter-flag,
button[data-filter-country]
.crm-svg-country-flag,
button[data-filter-country]
.crm-flag {
    display: none !important;
}

/* موبایل */

@media (max-width: 767px) {
    button[data-filter-country="fi"]::before,
    button[data-filter-country="finland"]::before,
    button[data-filter-country="it"]::before,
    button[data-filter-country="italy"]::before,
    button[data-filter-country="us"]::before,
    button[data-filter-country="usa"]::before,
    button[data-filter-country="america"]::before,
    button[data-filter-country="de"]::before,
    button[data-filter-country="germany"]::before,
    button[data-filter-country="nl"]::before,
    button[data-filter-country="netherlands"]::before,
    button[data-filter-country="fr"]::before,
    button[data-filter-country="france"]::before,
    button[data-filter-country="tr"]::before,
    button[data-filter-country="turkey"]::before {
        flex-basis: 31px !important;
        width: 31px !important;
        height: 21px !important;
    }
}

/* CRM_FORCE_CSS_FLAGS_END */

/* CRM_US_FLAG_SHARP_FIX_BEGIN */

/*
 * پرچم واقعی آمریکا با SVG داخلی
 * واضح در ویندوز، موبایل و تمام مرورگرها
 */

button[data-filter-country="us"]::before,
button[data-filter-country="usa"]::before,
button[data-filter-country="america"]::before {
    content: "" !important;
    display: inline-block !important;
    flex: 0 0 36px !important;
    width: 36px !important;
    height: 24px !important;
    border: 1px solid rgba(120,113,108,.25) !important;
    border-radius: 6px !important;
    background-color: #fff !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7410 3900'%3E%3Cpath fill='%23b22234' d='M0 0h7410v3900H0z'/%3E%3Cpath stroke='%23fff' stroke-width='300' d='M0 450h7410M0 1050h7410M0 1650h7410M0 2250h7410M0 2850h7410M0 3450h7410'/%3E%3Cpath fill='%233c3b6e' d='M0 0h2964v2100H0z'/%3E%3Cg fill='%23fff'%3E%3Cg id='s18'%3E%3Cg id='s9'%3E%3Cg id='s5'%3E%3Cg id='s4'%3E%3Cpath id='s' d='M247 90l70.5 217h228.2L361 441l70.6 217L247 524 62.4 658 133 441-51.7 307h228.2z' transform='scale(.18)'/%3E%3Cuse href='%23s' x='494'/%3E%3Cuse href='%23s' x='988'/%3E%3Cuse href='%23s' x='1482'/%3E%3Cuse href='%23s' x='1976'/%3E%3Cuse href='%23s' x='2470'/%3E%3C/g%3E%3Cuse href='%23s4' x='247' y='210'/%3E%3C/g%3E%3Cuse href='%23s5' y='420'/%3E%3Cuse href='%23s4' y='840'/%3E%3C/g%3E%3Cuse href='%23s9' y='840'/%3E%3C/g%3E%3Cuse href='%23s18' y='1680'/%3E%3C/g%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: cover !important;
    box-shadow:
        0 3px 8px rgba(41,37,36,.12),
        inset 0 0 0 1px rgba(255,255,255,.20) !important;
}

button[data-filter-country="us"].active::before,
button[data-filter-country="usa"].active::before,
button[data-filter-country="america"].active::before {
    border-color: rgba(255,255,255,.70) !important;
    box-shadow:
        0 4px 11px rgba(0,0,0,.20),
        0 0 0 2px rgba(255,255,255,.18) !important;
}

@media (max-width: 767px) {
    button[data-filter-country="us"]::before,
    button[data-filter-country="usa"]::before,
    button[data-filter-country="america"]::before {
        flex-basis: 33px !important;
        width: 33px !important;
        height: 22px !important;
    }
}

/* CRM_US_FLAG_SHARP_FIX_END */

/* CRM_PURCHASE_SPEC_ICONS_BEGIN */

/*
 * فقط کارت‌های مشخصات صفحه انتخاب سرویس
 */
.crm-catalog .crm-spec-icon {
    position: relative;
    display: grid !important;
    flex: 0 0 46px !important;
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
    place-items: center !important;
    overflow: hidden;
    border: 1px solid #fed7aa !important;
    border-radius: 15px !important;
    color: #ea580c !important;
    background:
        radial-gradient(
            circle at 25% 20%,
            rgba(255,255,255,.95),
            transparent 32%
        ),
        linear-gradient(
            145deg,
            #fffaf5 0%,
            #fff1e7 100%
        ) !important;
    box-shadow:
        0 8px 20px rgba(234,88,12,.09),
        inset 0 1px 0 rgba(255,255,255,.92) !important;
    transition:
        transform .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

/* حذف هر آیکون خراب یا Font Awesome قبلی */

.crm-catalog .crm-spec-icon > i,
.crm-catalog .crm-spec-icon > .fa,
.crm-catalog .crm-spec-icon > .fas,
.crm-catalog .crm-spec-icon > .far {
    display: none !important;
}

/* SVG اصلی */

.crm-catalog .crm-spec-icon
.crm-purchase-spec-svg {
    display: block !important;
    width: 25px !important;
    height: 25px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.85 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    pointer-events: none;
}

/* سرعت‌سنج کمی بزرگ‌تر باشد */

.crm-catalog .crm-spec-icon[data-crm-icon="speed"]
.crm-purchase-spec-svg {
    width: 27px !important;
    height: 27px !important;
}

/* افکت ظریف روی کارت */

.crm-catalog .crm-spec:hover .crm-spec-icon {
    transform: translateY(-2px) scale(1.04);
    border-color: #fb923c !important;
    box-shadow:
        0 11px 25px rgba(234,88,12,.15),
        inset 0 1px 0 rgba(255,255,255,.95) !important;
}

/* رنگ اختصاصی هر نوع آیکون */

.crm-catalog .crm-spec-icon[data-crm-icon="speed"] {
    color: #ea580c !important;
}

.crm-catalog .crm-spec-icon[data-crm-icon="duration"] {
    color: #d97706 !important;
}

.crm-catalog .crm-spec-icon[data-crm-icon="location"] {
    color: #0284c7 !important;
    border-color: #bae6fd !important;
    background:
        linear-gradient(
            145deg,
            #f0f9ff,
            #e0f2fe
        ) !important;
}

.crm-catalog .crm-spec-icon[data-crm-icon="volume"] {
    color: #7c3aed !important;
    border-color: #ddd6fe !important;
    background:
        linear-gradient(
            145deg,
            #faf5ff,
            #f3e8ff
        ) !important;
}

.crm-catalog .crm-spec-icon[data-crm-icon="protocol"] {
    color: #b91c1c !important;
    border-color: #fecaca !important;
    background:
        linear-gradient(
            145deg,
            #fff1f2,
            #ffe4e6
        ) !important;
}

.crm-catalog .crm-spec-icon[data-crm-icon="customer"] {
    color: #059669 !important;
    border-color: #a7f3d0 !important;
    background:
        linear-gradient(
            145deg,
            #ecfdf5,
            #d1fae5
        ) !important;
}

.crm-catalog .crm-spec-icon[data-crm-icon="price"] {
    color: #ca8a04 !important;
    border-color: #fde68a !important;
    background:
        linear-gradient(
            145deg,
            #fffbeb,
            #fef3c7
        ) !important;
}

/*
 * چیدمان داخل کارت مشخصات
 */
.crm-catalog .crm-spec {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
}

.crm-catalog .crm-spec > div:not(.crm-spec-icon) {
    min-width: 0;
    flex: 1 1 auto;
}

.crm-catalog .crm-spec small,
.crm-catalog .crm-spec strong {
    overflow-wrap: anywhere;
}

/* موبایل */

@media (max-width: 767px) {
    .crm-catalog .crm-spec-icon {
        flex-basis: 43px !important;
        width: 43px !important;
        height: 43px !important;
        min-width: 43px !important;
        min-height: 43px !important;
        border-radius: 14px !important;
    }

    .crm-catalog .crm-spec-icon
    .crm-purchase-spec-svg {
        width: 23px !important;
        height: 23px !important;
    }

    .crm-catalog .crm-spec-icon[data-crm-icon="speed"]
    .crm-purchase-spec-svg {
        width: 25px !important;
        height: 25px !important;
    }

    .crm-catalog .crm-spec {
        gap: 10px !important;
    }
}

/* CRM_PURCHASE_SPEC_ICONS_END */
