.footer-about p {
    font-size: 13px;
}
.footer-grid h4 {
    margin: 0 0 12px;
    font-size: 14px;
}
.footer-grid section > a:not(.brand) {
    font-size: 12px;
}
.footer-benefits small {
    font-size: 11px;
}
.footer-benefits b {
    font-size: 13px;
}
.product-card-body > p {

    font-size: 11px;
}
.product-card h3 {
    font-size: 13.5px;
}
.product-meta {
    font-size: 11px;
    font-weight: 600;
}
.discount-badge, .new-badge {
    position: absolute;
    top: 10px;
    inset-inline-start: 12px;
    z-index: 2;
    font-size: 11.5px;
    font-weight: 800;
    border-radius: 8px;
    padding: 4px 10px;
    color: #fff;
}
.product-rating small {
    font-size: 11px;
}
.product-rating span, .rating-stars {
    color: #ffb000;
    letter-spacing: -1px;
    font-size: 13px;
}
.product-pricing del {

    font-size: 11px;
}
.add-cart {
    
    font-size: 13.5px;
    font-weight: 700;
   
}
.filter-block > a {
    color: #01081b;
    font-size: 13px;

}
.department-nav a {
    font-size: 13px;
    font-weight: 500;

}
.back-to-top {
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    background: #222329;
    color: #d5d5d8;
    font-size: 11px;
}
.category-list {
    display: grid;
    grid-template-columns: repeat(10, 1fr);
    gap: 12px;
}
.category-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    background: var(--card);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    padding: 18px 8px 14px;
    font-size: 12.5px;
    font-weight: 600;
    text-align: center;
    transition: transform .2s, box-shadow .2s, border-color .2s;
}
.c-blue {
    background: #e3f0ff;
    color: #1d6fe0;
}

.category-item__icon {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border-radius: 16px;
    font-size: 21px;
    transition: transform .25s;
}
.fa-mobile-alt:before, .fa-mobile-screen-button:before {
    content: "\f3cd";
}
.category-item:hover {
    border-color: #ffb300;
    transform: translateY(-3px);
    box-shadow: 0 10px 28px rgba(20,20,30,.10);
}

.department-nav a:hover {
    color: #ffb800;
    border-color: #ffb800;
}

.department-nav a {
    color: #e9e9e9;
    font-size: 13.5px;
    font-weight: 500;
    padding: 8px 6px;
    white-space: nowrap;
    border-bottom: 2.5px solid transparent;
    transition: color .2s, border-color .2s;
}
.department-nav {
    background: #242527;
    border-top: 1px solid rgba(0, 0, 0, .06);
    color:#d5d5d8
}
.section-heading h2 {
    margin: 7px 0 4px;
    font-size: 18px;
    font-weight: 950;
}
.page-heading h1 {
    margin: 8px 0 6px;
    font-size: 20px;
    font-weight: 950;
}
.compare-label {
    background: #fafafa;
    display: flex;
    align-items: center;
    font-weight: 400;
    font-size: 13px;
}
.compare-product h2 {
    height: 40px;
    margin: 5px 0;
    font-size: 13.5px;
    line-height: 1.7;
}
.compare-cell {
    display: grid;
    place-items: center;
    text-align: center;
    font-size: 13px;
    font-weight: 600;
}

/* خوانایی یکدست: متن کاربردی در هیچ‌کدام از صفحات فروشگاه ریزتر از استاندارد نیست. */
.main-content :is(p, span, a, button, label, input, textarea, select, li, dt, dd, b, strong, em),
.auth-otp-page :is(p, span, a, button, label, input, textarea, select, li, b, strong, em) {
    font-size: max(12px, .8125rem);
}

.main-content small,
.auth-otp-page small { font-size: max(11px, .75rem); }

:is(.announcement-bar, .site-header, .site-footer, .mobile-drawer, .cart-drawer) :is(p, span, a, button, label, input, textarea, select, li, b, strong, em) {
    font-size: max(11px, .75rem);
}

:is(.announcement-bar, .site-header, .site-footer, .mobile-drawer, .cart-drawer) small { font-size: 12px; }

/* Product pages retain a deliberate title/price hierarchy while body text stays readable. */
.product-card h3, .product-card h3 a { font-size: 14px; }
.product-card-body > p, .product-meta, .product-meta em, .product-rating small, .product-pricing del { font-size: 12px; }
.product-pricing strong { font-size: 17px; }
.add-cart { font-size: 13px; }
.detail-description, .product-specifications > div:first-child > p, .product-questions > p,
.product-info-content article > p, .review-list p, .info-layout main p { font-size: 14px; }
.product-tabs button, .product-specifications dl div, .product-info-content dl div,
.product-all-features ul, .pros-cons ul, .review-list footer button { font-size: 13px; }

/* Admin screens use the same legible baseline without changing their compact layout. */
.admin-root :is(p, span, a, button, label, input, textarea, select, li, dt, dd, b, strong, em) {
    font-size: max(11px, .8125rem);
}
.admin-root small { font-size: 12px; }
.admin-root .admin-table-head, .admin-root .admin-table-row,
.admin-root .admin-sidebar nav :is(button, a), .admin-root .admin-primary { font-size: 13px; }

.drawer-cart-lines a { font-size: 13px; }
.drawer-cart-lines small { font-size: 12px; }
.drawer-cart-lines strong { font-size: 14px; }
.drawer-cart-total { font-size: 13px; }
.drawer-cart-total strong { font-size: 17px; }
.drawer-cart-actions a { font-size: 13px; }

@media (max-width: 760px) {
    .main-content :is(p, span, a, button, label, input, textarea, select, li, dt, dd, b, strong, em),
    .auth-otp-page :is(p, span, a, button, label, input, textarea, select, li, b, strong, em) { font-size: 13px; }
    .product-card h3, .product-card h3 a { font-size: 13px; }
    .product-pricing strong { font-size: 14px; }
    .add-cart { font-size: 12px; }
}

/* روش‌های ارسال و پرداخت در تسویه‌حساب */
.checkout-option-grid { display: grid !important; gap: 12px; margin-top: 10px; }
.shipping-options.checkout-option-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.payment-options.checkout-option-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.checkout-option-grid label { min-width: 0; min-height: 92px; display: grid !important; grid-template-columns: 18px 34px minmax(0, 1fr) auto; align-items: center; gap: 9px; padding: 13px; border: 1px solid #dfe1e6; border-radius: 11px; background: #fff; cursor: pointer; transition: border-color .15s, background .15s, box-shadow .15s; }
.payment-options.checkout-option-grid label { grid-template-columns: 18px 34px minmax(0, 1fr); align-items: start; }
.checkout-option-grid label:hover { border-color: #e7b634; background: #fffdf7; }
.checkout-option-grid label.selected { border-color: #f0aa00; background: #fff8e8; box-shadow: 0 0 0 3px rgba(255,179,0,.11); }
.checkout-option-grid input[type="radio"] { width: 17px; height: 17px; margin: 0; accent-color: #f0a900; align-self: center; }
.payment-options.checkout-option-grid input[type="radio"] { align-self: start; margin-top: 3px; }
.checkout-option-grid > label > i { align-self: center; color: #f07800; font-size: 22px; }
.payment-options.checkout-option-grid > label > i { align-self: start; margin-top: 1px; }
.checkout-option-grid > label > span { min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.checkout-option-grid > label b { overflow: hidden; font-size: 13px; font-weight: 850; line-height: 1.65; }
.checkout-option-grid > label small { display: block; overflow: hidden; color: #70737c; font-size: 12px; line-height: 1.75; }
.checkout-option-grid > label strong { align-self: center; color: #1f2025; font-size: 13px; white-space: nowrap; }
.checkout-option-empty, .checkout-availability-warning { display: flex; align-items: center; gap: 9px; margin-top: 11px; padding: 12px 14px; border: 1px solid #f1d18a; border-radius: 10px; background: #fff9eb; color: #825200; font-size: 13px; line-height: 1.8; }
.checkout-option-empty > i, .checkout-availability-warning > i { flex: 0 0 auto; font-size: 19px; color: #d98a00; }

/* تنظیمات روش‌های پرداخت و ارسال در پنل مدیریت */
.checkout-settings-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
.payment-settings-options { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.checkout-settings-options article { padding: 14px; border: 1px solid #e3e4e8; border-radius: 11px; background: #fbfbfc; }
.checkout-setting-title { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
.checkout-setting-title > div { min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.checkout-setting-title b { font-size: 14px; }
.checkout-setting-title small { color: #747780; font-size: 12px; line-height: 1.75; }
.checkout-setting-toggle { flex: 0 0 auto !important; display: inline-flex !important; align-items: center; gap: 6px; margin: 0 !important; color: #265b46; font-size: 13px !important; white-space: nowrap; }
.checkout-setting-toggle input { width: 17px !important; min-height: 17px !important; padding: 0 !important; accent-color: #0b9568; }
.checkout-settings-options .settings-fields { gap: 9px; }

@media (max-width: 1100px) {
    .payment-options.checkout-option-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .payment-settings-options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
    .shipping-options.checkout-option-grid, .payment-options.checkout-option-grid,
    .checkout-settings-options, .payment-settings-options { grid-template-columns: 1fr; }
    .checkout-option-grid label { min-height: 82px; }
}

.brand-mark {

    background: #17181b00;

    box-shadow: inset 0px 0px 0px rgba(0, 0, 0, .18);

}
.footer-brand .brand-mark {
    background: #ffb30000;
    color: #ffffff;
}

/* بنرهای تصویری صفحه نخست: متن روی تصویر ندارند و فقط به لینک مقصد می‌روند. */
.home-banner-slider { margin-top: 20px; }
.home-banner-viewport { position: relative; min-height: 1px; overflow: hidden; border-radius: 22px; background: #f2f3f5; box-shadow: 0 10px 28px rgba(31, 33, 38, .12); isolation: isolate; }
.home-banner-slide { position: absolute; inset: 0; display: block; opacity: 0; pointer-events: none; transition: opacity .38s ease; }
.home-banner-slide.is-active { position: relative; opacity: 1; pointer-events: auto; }
.home-banner-slide picture, .home-banner-slide img { display: block; width: 100%; height: 100%; }
.home-banner-slide.is-active picture, .home-banner-slide.is-active img { height: auto; }
.home-banner-slide img { object-fit: cover; }
.configurable-product-section { padding: 18px 14px 16px; border-radius: 18px; background: var(--section-bg, #fff); }
.configurable-product-section .section-heading { padding-inline: 4px; }
.configurable-product-section.is-deal-row { border: 2px solid #ef476f; background: linear-gradient(135deg, #fff5f7, #fff 62%, #fff0f2); box-shadow: 0 12px 30px rgba(239,71,111,.12); }
.configurable-product-section.is-deal-row .deal-row-kicker { display: inline-flex; align-items: center; gap: 5px; padding: 5px 10px; border-radius: 8px; background: #ffe0e8; color: #d82f5a; font-size: 12px; font-weight: 900; }
.configurable-product-section.is-deal-row .deal-row-kicker i { color: #ef476f; font-size: 15px; }
.configurable-product-section.is-deal-row .section-heading h2 { color: #bd2449; }
@media (min-width: 769px) {
    /* ارتفاع بنر دسکتاپ حدود ۸۰٪ نسبت به نسبت قبلی نگه داشته می‌شود. */
    .home-banner-viewport { aspect-ratio: 2000 / 520; min-height: 0; }
    .home-banner-slide.is-active picture, .home-banner-slide.is-active img { height: 100%; }
    .home-banner-slide img { object-fit: contain; background: #f2f3f5; }
}
.home-banner-dots { position: absolute; z-index: 2; inset-inline: 0; bottom: 12px; display: flex; justify-content: center; gap: 7px; direction: ltr; }
.home-banner-dots button { width: 8px; height: 8px; min-width: 8px; padding: 0; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .62); box-shadow: 0 1px 4px rgba(0, 0, 0, .25); cursor: pointer; transition: width .18s, background .18s; }
.home-banner-dots button.is-active { width: 22px; border-radius: 999px; background: #fff; }

/* مدیریت بنرهای صفحه نخست */
.home-banners-admin .admin-section-heading { align-items: start; }
.banner-size-guide { display: grid; gap: 3px; max-width: 290px; padding: 12px 15px; border: 1px solid #f1ce75; border-radius: 12px; background: #fffaea; color: #72500c; }
.banner-size-guide strong { font-size: 13px; }
.banner-size-guide span { color: #252629; font-weight: 850; font-size: 15px; direction: ltr; text-align: right; }
.banner-size-guide small { color: #80671f; font-size: 11px; line-height: 1.75; }
.home-banner-admin-grid { display: grid; grid-template-columns: minmax(300px, .85fr) minmax(420px, 1.35fr); gap: 18px; align-items: start; }
.home-banner-form { display: grid; gap: 15px; }
.home-banner-form .button-primary { justify-content: center; }
.banner-upload-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.home-banner-upload { position: relative; display: inline-flex !important; align-items: center; justify-content: center; gap: 7px; min-height: 43px; padding: 10px 12px; border: 1px dashed #e5a600; border-radius: 10px; background: #fff9e9; color: #7d5800; font-size: 12px !important; font-weight: 800; cursor: pointer; overflow: hidden; }
.home-banner-upload:hover { border-color: #c88e00; background: #fff3cf; }
.home-banner-upload-muted { border-color: #b7c0ce; background: #f8fafc; color: #536174; }
.home-banner-upload input[type="file"] { position: absolute; inset: 0; width: 100%; min-height: 100%; padding: 0 !important; opacity: 0; cursor: pointer; }
.home-banner-upload:has(input:disabled) { opacity: .65; cursor: wait; }
.banner-form-previews { display: flex; align-items: start; gap: 12px; padding: 11px; border: 1px solid #e4e6e9; border-radius: 12px; background: #fafbfc; }
.banner-form-previews > div { display: grid; gap: 6px; flex: 1 1 0; min-width: 0; }
.banner-form-previews > div > span { color: #626872; font-size: 11px; font-weight: 750; }
.banner-form-previews img { display: block; width: 100%; aspect-ratio: 2000 / 650; border-radius: 7px; object-fit: cover; background: #e9ebee; }
.banner-form-previews .banner-mobile-preview { flex: 0 0 90px; }
.banner-form-previews .banner-mobile-preview img { aspect-ratio: 1 / 1; }
.banner-active-toggle { display: flex !important; align-items: center; gap: 8px; min-height: 43px; margin-top: 25px; padding: 0 10px; border: 1px solid #dee2e7; border-radius: 9px; background: #fafbfc; color: #374151; font-size: 12px !important; cursor: pointer; }
.banner-active-toggle input { width: 17px !important; min-height: 17px !important; margin: 0; padding: 0 !important; accent-color: #009b70; }
.home-banner-list-card { display: grid; gap: 13px; }
.home-banner-list { display: grid; gap: 11px; }
.home-banner-item { display: grid; grid-template-columns: 180px minmax(0, 1fr) auto; gap: 13px; align-items: center; padding: 11px; border: 1px solid #e1e4e8; border-radius: 12px; background: #fff; }
.home-banner-item.is-inactive { opacity: .64; background: #fafafa; }
.home-banner-item-image { position: relative; overflow: hidden; border-radius: 8px; background: #eef0f3; }
.home-banner-item-image img { display: block; width: 100%; aspect-ratio: 2000 / 650; object-fit: cover; }
.banner-status { position: absolute; top: 6px; inset-inline-start: 6px; padding: 3px 7px; border-radius: 999px; color: #fff; font-size: 10px !important; font-weight: 800; }
.banner-status.is-active { background: #0b9b6c; }
.banner-status.is-inactive { background: #6d7580; }
.home-banner-item-details { display: grid; min-width: 0; gap: 5px; }
.home-banner-item-details strong { color: #272a2f; font-size: 13px; }
.home-banner-item-details a { overflow: hidden; color: #3971ba; font-size: 11px; text-decoration: none; text-overflow: ellipsis; white-space: nowrap; direction: ltr; text-align: right; }
.home-banner-item-details > span { color: #737981; font-size: 11px; }
.home-banner-item-actions { display: flex; flex-wrap: wrap; justify-content: end; gap: 7px; }
.button-danger-ghost { border: 1px solid #ffc9ce; background: #fff; color: #dc4050; }
.button-danger-ghost:hover { border-color: #ed6170; background: #fff1f2; }
.home-banner-empty { min-height: 230px; }
.home-banner-empty > i { color: #f2ad00; font-size: 35px; }
.home-banner-empty strong { color: #41444a; font-size: 14px; }

@media (max-width: 1050px) {
    .home-banner-admin-grid { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
    .home-banner-slider { width: min(100% - 20px, var(--shell, 1200px)); margin-top: 12px; }
    /* نسبت تصویر آپلودی حفظ می‌شود؛ بنابراین بنرهای ۷۰۰ پیکسلی هم بدون برش نمایش داده می‌شوند. */
    .home-banner-viewport { border-radius: 14px; }
    .home-banner-viewport.desktop-only-banners { background: #fff; }
    .home-banner-viewport.desktop-only-banners img { object-fit: contain; }
    .home-banner-dots { bottom: 9px; }
    .home-banner-dots button { width: 7px; height: 7px; min-width: 7px; }
    .home-banner-dots button.is-active { width: 18px; }
    .home-banners-admin .admin-section-heading { display: grid; gap: 12px; }
    .banner-size-guide { max-width: none; }
    .banner-upload-fields { grid-template-columns: 1fr; }
    .home-banner-item { grid-template-columns: 1fr; gap: 10px; }
    .home-banner-item-image { max-width: 330px; }
    .home-banner-item-actions { justify-content: start; }
    .banner-active-toggle { margin-top: 0; }
}

@media (prefers-reduced-motion: reduce) {
    .home-banner-slide, .home-banner-dots button { transition: none; }
}

/* زیرمنوهای نوار اصلی و منوی حساب کاربری */
.desktop-menu-dismiss { position: fixed; z-index: 49; inset: 0; width: 100%; height: 100%; padding: 0; border: 0; background: rgba(17, 19, 23, .12); cursor: default; }
.department-nav .shell { position: relative; overflow: visible; }
.department-menu-trigger { display: inline-flex; align-items: center; gap: 6px; min-height: 34px; padding: 6px 8px; border: 0; border-bottom: 2.5px solid transparent; background: transparent; color: #e9e9e9; font-size: 13px; font-weight: 700; white-space: nowrap; }
.department-menu-trigger:hover, .department-menu-trigger[aria-expanded="true"] { color: #ffbf22; border-bottom-color: #ffbf22; }
.department-menu-trigger > i:first-child { font-size: 15px; }
.department-menu-trigger > i:last-child { font-size: 10px; }
.department-mega-menu { position: absolute; z-index: 3; top: calc(100% + 8px); inset-inline-start: 0; width: min(930px, calc(100vw - 32px)); max-height: min(640px, 72vh); overflow: auto; padding: 16px; border: 1px solid #e2e5e9; border-radius: 15px; background: #fff; color: #26282d; box-shadow: 0 18px 42px rgba(19, 22, 28, .2); }
.department-mega-menu > header { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-bottom: 14px; padding-bottom: 12px; border-bottom: 1px solid #ebedf0; }
.department-mega-menu > header > div { display: flex; flex-direction: column; gap: 3px; }
.department-mega-menu > header span { font-size: 15px; font-weight: 900; }
.department-mega-menu > header small { color: #717680; font-size: 11px; }
.department-mega-menu > header > a { display: inline-flex; align-items: center; gap: 5px; padding: 7px 10px; border: 1px solid #f0c552; border-radius: 8px; color: #8e6500; font-size: 12px; font-weight: 800; }
.department-mega-menu > header > a:hover { border-color: #d49a00; background: #fff7de; color: #624700; }
.department-mega-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.department-mega-group { min-width: 0; padding: 10px; border: 1px solid #eef0f3; border-radius: 10px; background: #fcfcfd; }
.department-mega-root { display: flex; align-items: center; gap: 8px; min-width: 0; padding: 3px 0 !important; color: #25272c !important; font-size: 13px !important; font-weight: 850 !important; }
.department-mega-root > i { width: 25px; height: 25px; display: grid; flex: 0 0 auto; place-items: center; border-radius: 7px; background: #fff0c2; color: #c77900; font-size: 14px; }
.department-mega-root > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.department-mega-root:hover { color: #a46100 !important; }
.department-mega-children { display: grid; gap: 4px; margin-top: 8px; padding-top: 7px; border-top: 1px dashed #e5e7eb; }
.department-mega-children a { overflow: hidden; padding: 2px 0 !important; color: #686e78 !important; font-size: 11px !important; text-overflow: ellipsis; white-space: nowrap; }
.department-mega-children a:hover { color: #b16b00 !important; }
.header-account-menu { position: relative; flex: 0 0 auto; }
button.header-account { align-items: stretch; padding: 4px 6px; border: 0; border-radius: 8px; background: transparent; color: inherit; text-align: right; }
button.header-account:hover, button.header-account[aria-expanded="true"] { background: rgba(255, 255, 255, .28); }
.account-flyout { position: absolute; z-index: 4; top: calc(100% + 9px); inset-inline-end: 0; display: grid; min-width: 195px; padding: 7px; border: 1px solid #e0e3e7; border-radius: 12px; background: #fff; box-shadow: 0 14px 30px rgba(19, 22, 28, .18); }
.account-flyout a { display: flex; align-items: center; gap: 9px; padding: 9px 10px; border-radius: 8px; color: #3e424a; font-size: 12px; font-weight: 700; }
.account-flyout a:hover { background: #fff5d8; color: #915700; }
.account-flyout i { width: 18px; color: #d17e00; font-size: 15px; text-align: center; }
.mobile-category-toggle { width: 100%; display: flex; align-items: center; gap: 12px; padding: 13px 22px; border: 0; border-bottom: 1px solid #f1f1f2; background: #fff; color: #282b31; font-weight: 750; text-align: right; }
.mobile-category-toggle > i:first-child { width: 22px; color: var(--orange); font-size: 18px; }
.mobile-category-toggle > i:last-child { margin-inline-start: auto; color: #747982; font-size: 12px; }
.mobile-category-tree { display: grid; gap: 8px; padding: 10px 18px 12px; border-bottom: 1px solid #f1f1f2; background: #fafbfc; }
.mobile-category-tree section { display: grid; gap: 2px; }
.mobile-category-tree a { display: flex; align-items: center; gap: 8px; min-height: 34px; padding: 7px 9px; border-radius: 7px; color: #41464f; font-size: 12px; font-weight: 700; }
.mobile-category-tree a:hover { background: #fff0ca; color: #9a5b00; }
.mobile-category-tree a > i { width: 18px; color: #d17e00; font-size: 15px; text-align: center; }
.mobile-category-tree .mobile-category-child { min-height: 28px; margin-inline-start: 18px; padding-block: 5px; color: #737983; font-size: 11px; font-weight: 600; }

@media (max-width: 980px) {
    .desktop-menu-dismiss { display: none; }
    .department-mega-menu { display: none; }
}

@media (max-width: 650px) {
    .mobile-category-tree { padding-inline: 12px; }
}

/* آکاردئون فیلترهای لیست محصولات */
.filter-block { padding: 0; }
.filter-block-toggle { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 48px; padding: 0; border: 0; background: transparent; color: #272a30; font-size: 14px; font-weight: 850; text-align: right; }
.filter-block-toggle:hover { color: #9d5e00; }
.filter-block-toggle > i { color: #68707b; font-size: 12px; transition: transform .18s ease; }
.filter-block-toggle[aria-expanded="true"] > i { color: #a76300; }
.filter-block-content { padding: 0 0 12px; }
.filter-block-content > a { min-height: 34px; display: flex; align-items: center; justify-content: space-between; gap: 8px; color: #555861; font-size: 12px; border-radius: 7px; padding: 0 8px; }
.filter-block-content > a > span { display: flex; gap: 7px; align-items: center; }
.filter-block-content > a.selected { background: #fff4cf; color: #a95300; font-weight: 900; }
.filter-block-content .filter-check { justify-content: flex-start; }
.filter-block-content .filter-check i { color: var(--orange); }
.filter-block-content .price-range-control { margin-top: 10px; }
.filter-brand-search { min-height: 34px; display: flex; align-items: center; gap: 7px; margin: 1px 7px 7px; padding: 0 9px; border: 1px solid #e1e4e8; border-radius: 7px; background: #fff; color: #737984; }
.filter-brand-search:focus-within { border-color: #e7b13e; box-shadow: 0 0 0 3px rgba(245, 173, 30, .12); }
.filter-brand-search i { font-size: 12px; }
.filter-brand-search input { width: 100%; min-width: 0; height: 32px; border: 0; outline: 0; background: transparent; color: #30333a; font: inherit; font-size: 11px; }
.filter-brand-list { display: grid; gap: 2px; max-height: 236px; overflow-y: auto; padding-inline-end: 2px; }
.filter-brand-list > a { min-height: 33px; display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 0 8px; border-radius: 7px; color: #555861; font-size: 12px; }
.filter-brand-list > a > span:last-child { color: #8c929c; font-size: 10px; }
.filter-brand-list > a:hover, .filter-brand-list > a.selected { background: #fff4cf; color: #a95300; font-weight: 850; }
.filter-brand-list > a.selected > span:last-child { color: inherit; }
.filter-category-node { margin: 2px 0; border-radius: 8px; }
.filter-category-node > summary { min-height: 35px; display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 0 8px; border-radius: 7px; color: #555861; font-size: 12px; cursor: pointer; list-style: none; }
.filter-category-node > summary::-webkit-details-marker { display: none; }
.filter-category-node > summary > span { display: flex; align-items: center; gap: 7px; }
.filter-category-node > summary > i { color: #69717c; font-size: 11px; transition: transform .18s ease; }
.filter-category-node[open] > summary { background: #fff4cf; color: #a95300; font-weight: 850; }
.filter-category-node[open] > summary > i { color: #a95300; transform: rotate(-90deg); }
.filter-category-node.selected > summary { color: #a95300; }
.filter-category-children { display: grid; gap: 3px; margin: 4px 8px 7px 19px; padding: 6px 9px; border-inline-start: 1px solid #e7c66e; }
.filter-category-children a { min-height: 28px; display: flex; align-items: center; border-radius: 6px; color: #6d737c; font-size: 11px; }
.filter-category-children a:hover, .filter-category-children a.selected { color: #9d5f00; font-weight: 800; }
.filter-category-show-all { color: #8f5c00 !important; font-weight: 800; }
.filter-category-leaf { min-height: 35px; display: flex; align-items: center; gap: 7px; padding: 0 8px; border-radius: 7px; color: #555861; font-size: 12px; }
.filter-category-leaf > span { display: flex; align-items: center; gap: 7px; }
.filter-category-leaf:hover, .filter-category-leaf.selected { background: #fff4cf; color: #a95300; font-weight: 850; }
.filter-category-children .filter-category-leaf { min-height: 28px; padding: 0; color: #6d737c; font-size: 11px; }
.filter-category-node-nested { margin: 0; }
.filter-category-node-nested > summary { min-height: 28px; padding: 0; font-size: 11px; }
.filter-category-node-nested > summary > i { font-size: 10px; }
.filter-category-node-nested .filter-category-children { margin: 3px 0 3px 12px; padding-block: 4px; }
.filter-mobile-dismiss { display: none; }

@media (max-width: 980px) {
    .filters.mobile-filters-open { display: block; position: fixed; z-index: 110; top: 12px; right: 12px; bottom: 12px; width: min(350px, calc(100vw - 24px)); max-height: none; overflow-y: auto; padding: 14px; }
    .filter-mobile-dismiss { position: fixed; z-index: 105; inset: 0; display: block; width: 100%; height: 100%; padding: 0; border: 0; background: rgba(14, 16, 20, .48); }
    .filters.mobile-filters-open .filter-assurance { margin-bottom: 0; }
}

/* ویرایش گروهی قیمت در پنل مدیریت */
.product-admin-toolbar { align-items: flex-start; flex-direction: column; gap: 10px; padding-block: 13px; }
.product-admin-toolbar > label { flex: 0 0 auto; width: min(330px, 100%); background: #fff; }
.product-admin-toolbar .admin-product-filter-controls { width: 100%; display: flex; flex-wrap: wrap; align-items: center; gap: 7px; }
.product-admin-toolbar .admin-product-filter-controls > select { min-width: 130px; }
.product-admin-toolbar .admin-price-filter { width: 136px; height: 34px; display: flex; align-items: center; gap: 5px; padding: 0 8px; border: 1px solid var(--line); border-radius: 7px; background: #fff; }
.product-admin-toolbar .admin-price-filter span { flex: 0 0 auto; color: #737984; font-size: 11px; font-weight: 750; }
.product-admin-toolbar .admin-price-filter input { min-width: 0; height: 100%; font-size: 11px; }
.admin-filter-reset { min-height: 34px; display: inline-flex; align-items: center; justify-content: center; gap: 5px; padding: 0 10px; border: 1px solid var(--line); border-radius: 7px; background: #fff; color: #5e646e; font-size: 11px; font-weight: 750; white-space: nowrap; }
.admin-filter-reset:hover:not(:disabled) { border-color: #e7be53; background: #fff8e7; color: #9a5b00; }
.admin-filter-reset:disabled { cursor: not-allowed; opacity: .45; }
.bulk-price-toolbar { min-height: 66px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 11px 16px; border-bottom: 1px solid var(--line); background: linear-gradient(90deg, #fffaf0, #fff); }
.bulk-price-toolbar > div { display: flex; align-items: center; gap: 8px; }
.bulk-price-toolbar > div:first-child > i { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 9px; background: #fff0c5; color: #b46c00; font-size: 17px; }
.bulk-price-toolbar > div:first-child { flex-wrap: wrap; }
.bulk-price-toolbar span { color: #30333a; font-size: 12px; font-weight: 850; }
.bulk-price-toolbar small { width: 100%; margin-right: 42px; color: #777d87; font-size: 10px; }
.bulk-price-toolbar .admin-primary { min-height: 34px; font-size: 11px; white-space: nowrap; }
.products-admin-table .admin-table-head, .products-admin-table .admin-table-row { min-width: 970px; grid-template-columns: 34px 2fr 1fr 1.05fr .6fr .65fr .7fr; }
.products-admin-table .product-select-cell { align-items: center; justify-content: center; }
.products-admin-table input[type="checkbox"] { width: 16px; height: 16px; margin: 0; accent-color: #ef9b00; cursor: pointer; }

/* Admin invoice registry */
.invoice-stats { grid-template-columns: repeat(3, 1fr); margin-bottom: 13px; }
.invoices-table .admin-table-head, .invoices-table .admin-table-row { min-width: 900px; grid-template-columns: 1.15fr 1.2fr .9fr 1fr .75fr .5fr; }
.invoices-table .invoice-refund { color: #c2410c; }
.admin-table-row em.status-paid, .admin-table-row em.status-returned { display: inline-flex; width: max-content; padding: 5px 8px; border-radius: 7px; font-size: 7px; font-style: normal; white-space: nowrap; }
.admin-table-row em.status-paid { color: #087f5b; background: #eaf9f3; }
.admin-table-row em.status-returned { color: #a63b13; background: #fff0e7; }
.admin-empty-link { display: inline-flex; align-items: center; justify-content: center; min-height: 34px; margin-top: 8px; padding: 0 12px; border: 1px solid #e3e4e7; border-radius: 8px; color: #34363a; background: #fff; font-size: 12px; font-weight: 800; }

@media (max-width: 720px) {
  .invoice-stats { grid-template-columns: 1fr; }
}
.bulk-price-editor { left: 0; width: min(470px, 94vw); }
.bulk-price-editor-body { display: grid; gap: 14px; padding: 20px; }
.bulk-price-editor-body > label { display: flex; flex-direction: column; gap: 6px; color: #32353b; font-size: 12px; font-weight: 800; }
.bulk-price-editor-body select, .bulk-price-editor-body input[type="number"] { width: 100%; min-height: 40px; border: 1px solid var(--line); border-radius: 8px; padding: 0 10px; background: #fff; color: #2b2e34; font-size: 12px; outline: 0; }
.bulk-price-editor-body select:focus, .bulk-price-editor-body input[type="number"]:focus { border-color: #e7ad20; box-shadow: 0 0 0 3px rgba(255,179,0,.14); }
.bulk-price-editor-body label > small { color: #777d87; font-size: 10px; font-weight: 500; line-height: 1.8; }
.bulk-price-notice { display: flex; align-items: flex-start; gap: 9px; padding: 11px; border: 1px solid #efd281; border-radius: 9px; background: #fff9e9; color: #795719; }
.bulk-price-notice i { margin-top: 1px; color: #c27b00; font-size: 16px; }
.bulk-price-notice p { margin: 0; font-size: 11px; line-height: 1.8; }
.bulk-original-price-toggle { flex-direction: row !important; align-items: flex-start; gap: 9px !important; padding: 11px; border: 1px solid var(--line); border-radius: 9px; background: #fafbfc; cursor: pointer; }
.bulk-original-price-toggle input { width: 17px; height: 17px; margin: 1px 0 0; accent-color: #ef9b00; }
.bulk-original-price-toggle span { display: grid; gap: 2px; font-size: 11px; line-height: 1.7; }
.bulk-original-price-toggle small { color: #777d87; font-size: 10px; font-weight: 500; }
.bulk-price-selection { display: grid; gap: 5px; padding: 11px; border-radius: 9px; background: #f5f6f8; }
.bulk-price-selection b { font-size: 11px; }
.bulk-price-selection span { color: #656b75; font-size: 10px; line-height: 1.8; }
.brand-review-badge { display: inline-flex; align-items: center; margin-inline-start: 5px; padding: 1px 5px; border-radius: 5px; background: #fff0d4; color: #a45b00; font-size: 9px; font-style: normal; font-weight: 850; white-space: nowrap; }
.bulk-price-editor-body input[type="text"] { width: 100%; min-height: 40px; border: 1px solid var(--line); border-radius: 8px; padding: 0 10px; background: #fff; color: #2b2e34; font-size: 12px; outline: 0; }
.bulk-price-editor-body input[type="text"]:focus { border-color: #e7ad20; box-shadow: 0 0 0 3px rgba(255,179,0,.14); }

/* loyalty points */
.order-summary > .loyalty-checkout-box { display: grid !important; gap: 10px; margin: 13px 0 !important; padding: 13px; border: 1px solid #dec3ff; border-radius: 12px; background: linear-gradient(135deg,#fcfaff,#f3eaff); }
.order-summary > .loyalty-checkout-box > .loyalty-checkout-head { display: flex !important; align-items: center; justify-content: space-between; gap: 10px; margin: 0 !important; }
.loyalty-checkout-head > span { display: grid; grid-template-columns: 21px 1fr; column-gap: 6px; align-items: center; min-width: 0; color: #4d1fa2; }
.loyalty-checkout-head > span i { grid-row: 1 / 3; width: 21px; height: 21px; display: grid; place-items: center; border-radius: 7px; background: #eadbff; color: #7c3aed; font-size: 12px; }
.loyalty-checkout-head > span b { overflow: hidden; font-size: 11px; font-weight: 950; text-overflow: ellipsis; white-space: nowrap; }
.loyalty-checkout-head > span small { color: #8464ad; font-size: 9px; }
.loyalty-checkout-head > a { display: grid; flex: 0 0 auto; gap: 1px; min-width: 70px; padding: 5px 7px; border: 1px solid #d7b7ff; border-radius: 8px; background: #fff; color: #6322bf; text-align: center; text-decoration: none; }
.loyalty-checkout-head > a b { font-size: 12px; line-height: 1.1; }
.loyalty-checkout-head > a small { color: #8a68af; font-size: 8px; white-space: nowrap; }
.loyalty-points-input { display: grid !important; grid-template-columns: 1fr 78px; align-items: center; gap: 8px; margin: 0 !important; color: #493467; font-size: 10px; font-weight: 850; }
.loyalty-points-input input { width: 100%; min-height: 34px; border: 1px solid #cda5ff; border-radius: 8px; padding: 4px 7px; background: #fff; color: #3d2166; font: inherit; text-align: center; outline: 0; }
.loyalty-points-input input:focus { border-color: #8b4be0; box-shadow: 0 0 0 3px rgba(124,58,237,.12); }
.loyalty-checkout-box p { margin: 0 !important; color: #765893; font-size: 9px !important; line-height: 1.9 !important; text-align: right !important; }
.loyalty-summary-discount { color: #5b21b6; font-size: 11px; font-weight: 850; }
.loyalty-summary-discount strong { color: #6d28d9 !important; }
.wallet-table .loyalty-increase { color: #12845a; }
.wallet-table .loyalty-decrease { color: #8b5a13; }

@media (max-width: 800px) {
    .product-admin-toolbar .admin-product-filter-controls { align-items: stretch; }
    .product-admin-toolbar .admin-product-filter-controls > select, .product-admin-toolbar .admin-price-filter { flex: 1 1 calc(50% - 6px); min-width: 0; }
    .bulk-price-toolbar { align-items: stretch; flex-direction: column; }
    .bulk-price-toolbar > div:last-child { justify-content: stretch; }
    .bulk-price-toolbar > div:last-child > button { flex: 1; }
}

@media (max-width: 500px) {
    .product-admin-toolbar .admin-product-filter-controls > select, .product-admin-toolbar .admin-price-filter, .product-admin-toolbar .admin-filter-reset { flex-basis: 100%; }
    .bulk-price-toolbar .admin-primary { white-space: normal; }
}

/* صندوق فروش حضوری و ورود موجودی */
.instore-heading { margin-bottom: 15px; }
.instore-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-bottom: 14px; }
.instore-stats article { position: relative; min-height: 118px; padding: 16px; border: 1px solid #dedfe3; border-radius: 13px; background: #fff; box-shadow: 0 5px 14px rgba(21, 24, 30, .035); display: flex; flex-direction: column; gap: 5px; }
.instore-stats article > span { position: absolute; top: 14px; left: 14px; width: 37px; height: 37px; display: grid; place-items: center; border-radius: 10px; font-size: 18px; }
.instore-stats .green { background: #e9faf3; color: #07815a; }
.instore-stats .violet { background: #f1eaff; color: #6e38b8; }
.instore-stats .orange { background: #fff1d0; color: #b86d00; }
.instore-stats small { color: #737984; font-size: 12px; }
.instore-stats strong { margin-top: 9px; color: #22252b; font-size: 20px; }
.instore-stats em { margin-top: auto; color: #797f89; font-size: 11px; font-style: normal; }
.positive { color: #07815a !important; }
.negative { color: #c92e4c !important; }
.instore-workspace { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(310px, .8fr); gap: 14px; align-items: start; }
.instore-panel-heading { min-height: 67px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 16px; border-bottom: 1px solid #e7e8eb; }
.instore-panel-heading > div { display: grid; gap: 3px; }
.instore-panel-heading span { color: #24272d; font-size: 14px; font-weight: 900; }
.instore-panel-heading span i { margin-left: 6px; color: #d98400; }
.instore-panel-heading p { margin: 0; color: #737984; font-size: 11px; line-height: 1.7; }
.instore-panel-heading > b { padding: 7px 9px; border-radius: 7px; background: #fff2ce; color: #965a00; font-size: 11px; white-space: nowrap; }
.instore-sale-grid { display: grid; grid-template-columns: minmax(220px, .75fr) minmax(340px, 1.25fr); min-height: 360px; }
.instore-product-picker { display: flex; flex-direction: column; border-left: 1px solid #e7e8eb; background: #fbfcfd; }
.instore-product-picker > label { min-height: 45px; display: flex; align-items: center; gap: 8px; margin: 11px; padding: 0 10px; border: 1px solid #dfe2e6; border-radius: 8px; background: #fff; color: #7c838d; }
.instore-product-picker > label i { font-size: 15px; }
.instore-product-picker input { width: 100%; min-width: 0; border: 0; outline: 0; color: #2d3037; font-size: 12px; }
.instore-product-results { display: grid; align-content: start; gap: 5px; max-height: 365px; overflow-y: auto; padding: 0 11px 11px; }
.instore-product-results > button { width: 100%; min-height: 64px; display: grid; grid-template-columns: 42px 1fr auto 20px; align-items: center; gap: 8px; padding: 7px; border: 1px solid transparent; border-radius: 9px; background: transparent; color: #2f3238; text-align: right; }
.instore-product-results > button:hover:not(:disabled) { border-color: #f0c65b; background: #fff8e7; }
.instore-product-results > button:disabled { opacity: .52; cursor: not-allowed; }
.instore-product-results img { width: 42px; height: 42px; border-radius: 7px; background: #fff; object-fit: contain; }
.instore-product-results button span { display: flex; min-width: 0; flex-direction: column; gap: 2px; }
.instore-product-results b { overflow: hidden; color: #34373d; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.instore-product-results small { color: #777d87; font-size: 10px; }
.instore-product-results strong { color: #22252b; font-size: 11px; white-space: nowrap; }
.instore-product-results i { color: #c47700; font-size: 15px; }
.instore-cart { display: grid; align-content: start; max-height: 430px; overflow-y: auto; padding: 7px 15px; }
.instore-cart article { display: grid; grid-template-columns: 48px minmax(120px, 1fr) minmax(180px, .9fr) auto; align-items: center; gap: 10px; min-height: 84px; padding: 9px 0; border-bottom: 1px solid #eceef0; }
.instore-cart article:last-child { border-bottom: 0; }
.instore-cart article > img { width: 46px; height: 46px; border-radius: 8px; background: #f7f8fa; object-fit: contain; }
.instore-cart article > div:nth-child(2) { display: flex; min-width: 0; flex-direction: column; gap: 4px; }
.instore-cart article b { overflow: hidden; color: #2c2f35; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.instore-cart article small { color: #767d87; font-size: 10px; }
.instore-cart article button { width: max-content; padding: 0; border: 0; background: transparent; color: #cf3150; font-size: 10px; }
.instore-cart article > strong { color: #202329; font-size: 13px; white-space: nowrap; }
.instore-line-inputs { display: grid; grid-template-columns: 74px minmax(105px, 1fr); gap: 6px; }
.instore-line-inputs label, .instore-sale-fields label, .instore-receipt-form label { display: flex; flex-direction: column; gap: 5px; color: #41454d; font-size: 11px; font-weight: 800; }
.instore-line-inputs input, .instore-sale-fields input, .instore-sale-fields select, .instore-sale-fields textarea, .instore-receipt-form input, .instore-receipt-form select, .instore-receipt-form textarea { width: 100%; min-height: 35px; border: 1px solid #dde0e4; border-radius: 7px; padding: 7px 9px; background: #fff; color: #292c32; font-size: 12px; outline: 0; }
.instore-line-inputs input:focus, .instore-sale-fields :is(input, select, textarea):focus, .instore-receipt-form :is(input, select, textarea):focus { border-color: #e6aa20; box-shadow: 0 0 0 3px rgba(255,179,0,.13); }
.instore-line-inputs input { min-height: 32px; padding: 4px 6px; font-size: 11px; }
.instore-cart-empty { display: grid; place-items: center; align-content: center; min-height: 290px; color: #7c828c; text-align: center; }
.instore-cart-empty i { color: #d5a331; font-size: 34px; }
.instore-cart-empty p { margin: 10px 0 4px; color: #4f555e; font-size: 13px; font-weight: 800; }
.instore-cart-empty small { max-width: 260px; font-size: 11px; line-height: 1.9; }
.instore-sale-summary { display: grid; grid-template-columns: minmax(0, 1fr) 235px; gap: 16px; padding: 15px; border-top: 1px solid #e7e8eb; background: #fdfdfd; }
.instore-sale-fields { display: grid; grid-template-columns: .75fr 1.25fr; gap: 10px; }
.instore-sale-fields label.wide { grid-column: 1 / -1; }
.instore-sale-fields small, .instore-receipt-form label > small { color: #858b94; font-size: 10px; font-weight: 500; }
.instore-sale-fields textarea { min-height: 54px; resize: vertical; }
.instore-totals { display: grid; align-content: start; gap: 7px; padding: 10px 12px; border: 1px solid #edd888; border-radius: 10px; background: #fffaf0; }
.instore-totals p { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 0; color: #5e5d59; font-size: 11px; }
.instore-totals p b { color: #33332f; font-size: 12px; }
.instore-totals .profit { margin-top: 2px; padding-top: 8px; border-top: 1px dashed #e5cc7f; font-weight: 900; }
.instore-totals .profit strong { font-size: 14px; }
.instore-totals .admin-primary { width: 100%; min-height: 39px; margin-top: 3px; font-size: 12px; }
.instore-receipt-form { display: grid; gap: 12px; padding: 16px; }
.instore-receipt-form > div { display: grid; grid-template-columns: 1fr 1.3fr; gap: 9px; }
.instore-receipt-form textarea { min-height: 54px; resize: vertical; }
.receipt-estimate { display: grid !important; gap: 6px; padding: 10px; border-radius: 8px; background: #eef9f4; color: #277457; }
.receipt-estimate span { display: flex; justify-content: space-between; gap: 10px; font-size: 11px; }
.receipt-estimate b { color: #0b6e4c; font-size: 11px; }
.instore-receipt-form .admin-primary { width: 100%; min-height: 40px; font-size: 12px; }
.instore-history-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 14px; }
.instore-history-list { display: grid; padding: 4px 15px 12px; }
.instore-history-list article { display: grid; grid-template-columns: minmax(120px, 1fr) auto auto; align-items: center; gap: 15px; min-height: 58px; border-bottom: 1px solid #eceef0; }
.instore-history-list article > div { display: flex; flex-direction: column; gap: 3px; }
.instore-history-list article > div:not(:first-child) { text-align: left; }
.instore-history-list b { color: #33363c; font-size: 12px; }
.instore-history-list small { color: #7a808a; font-size: 10px; }
.instore-empty { margin: 16px 0; color: #818792; font-size: 12px; text-align: center; }
.instore-order-locked { display: grid; grid-template-columns: 38px minmax(0, 1fr) auto; align-items: center; gap: 10px; padding: 13px; border: 1px solid #bde6d4; border-radius: 10px; background: #effaf5; color: #166b4d; }
.instore-order-locked > i { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 9px; background: #d9f3e7; font-size: 17px; }
.instore-order-locked > div { display: grid; gap: 3px; }
.instore-order-locked b { font-size: 12px; }
.instore-order-locked p, .instore-order-locked small { margin: 0; color: #397961; font-size: 10px; line-height: 1.8; }
.instore-order-locked > span { padding: 6px 8px; border-radius: 7px; background: #fff; color: #176545; font-size: 10px; font-weight: 800; white-space: nowrap; }

@media (max-width: 1180px) {
    .instore-workspace { grid-template-columns: 1fr; }
    .instore-receipt-panel { max-width: none; }
}

@media (max-width: 850px) {
    .instore-stats { grid-template-columns: 1fr; }
    .instore-sale-grid { grid-template-columns: 1fr; }
    .instore-product-picker { max-height: 300px; border-bottom: 1px solid #e7e8eb; border-left: 0; }
    .instore-product-results { grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: 225px; }
    .instore-sale-summary { grid-template-columns: 1fr; }
    .instore-history-grid { grid-template-columns: 1fr; }
    .instore-order-locked { grid-template-columns: 38px 1fr; }
    .instore-order-locked > span { grid-column: 2; width: max-content; }
}

@media (max-width: 600px) {
    .instore-product-results { grid-template-columns: 1fr; }
    .instore-cart article { grid-template-columns: 42px 1fr; gap: 7px; }
    .instore-cart article > img { width: 40px; height: 40px; }
    .instore-line-inputs { grid-column: 1 / -1; grid-template-columns: 85px 1fr; }
    .instore-cart article > strong { grid-column: 1 / -1; padding-inline-start: 47px; }
    .instore-sale-fields, .instore-receipt-form > div { grid-template-columns: 1fr; }
    .instore-history-list article { grid-template-columns: 1fr auto; gap: 7px; padding: 8px 0; }
    .instore-history-list article > div:nth-child(3) { grid-column: 2; }
}

/* invoice and return accounting */
.order-document-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.order-document-actions a, .order-document-actions button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 36px; padding: 7px 10px; border: 1px solid #dfe3e8; border-radius: 8px; background: #fff; color: #30343b; font-size: 11px; font-weight: 800; text-decoration: none; }
.order-document-actions .order-invoice-button { border-color: #c8dfd4; background: #f0faf5; color: #14734f; }
.order-document-actions .order-return-button { border-color: #f1c8cf; background: #fff6f7; color: #b43048; }
.order-return-history { display: grid; gap: 0; border: 1px solid #f0d4d9; border-radius: 10px; overflow: hidden; }
.order-return-history h3 { margin: 0; padding: 10px 12px; background: #fff7f8; color: #a72e45; font-size: 12px; }
.order-return-history h3 i { margin-inline-end: 5px; }
.order-return-history article { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 12px; border-top: 1px solid #f3e1e4; }
.order-return-history article > div { display: grid; gap: 3px; }
.order-return-history article b { color: #33363c; font-size: 11px; }
.order-return-history article small { color: #747982; font-size: 10px; line-height: 1.7; }
.order-return-history article > strong { color: #bd3a50; font-size: 11px; white-space: nowrap; }
.return-modal-backdrop { z-index: 125 !important; }
.return-editor { z-index: 130 !important; overflow-y: auto; }
.return-editor-body { display: grid; gap: 13px; padding: 18px; }
.return-editor-body > label { display: grid; gap: 6px; color: #424850; font-size: 11px; font-weight: 800; }
.return-editor-body :is(input[type="number"], textarea) { width: 100%; border: 1px solid #dce1e6; border-radius: 8px; padding: 8px 9px; background: #fff; color: #252a30; font-size: 12px; outline: 0; }
.return-editor-body :is(input[type="number"], textarea):focus { border-color: #df7b8d; box-shadow: 0 0 0 3px rgba(211,61,91,.1); }
.return-editor-body textarea { resize: vertical; min-height: 54px; }
.return-editor-notice { display: grid; grid-template-columns: 28px 1fr; gap: 8px; align-items: start; padding: 10px; border-radius: 8px; background: #f4f7fb; color: #5d6672; }
.return-editor-notice i { color: #4c7ac7; font-size: 17px; }
.return-editor-notice p { margin: 0; font-size: 10px; line-height: 1.9; }
.return-lines { display: grid; max-height: 245px; overflow-y: auto; border: 1px solid #eaedf0; border-radius: 9px; }
.return-lines article { display: grid; grid-template-columns: 42px minmax(0,1fr) 70px; align-items: center; gap: 8px; padding: 9px; border-bottom: 1px solid #eff1f3; }
.return-lines article:last-child { border-bottom: 0; }
.return-lines img { width: 40px; height: 40px; border-radius: 7px; background: #f7f8fa; object-fit: contain; }
.return-lines article > div { display: grid; gap: 3px; min-width: 0; }
.return-lines b { overflow: hidden; color: #30343a; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.return-lines small { color: #787e87; font-size: 9px; line-height: 1.6; }
.return-lines label { display: grid; gap: 4px; color: #636a73; font-size: 9px; font-weight: 700; }
.return-lines input { min-height: 31px; padding: 5px !important; text-align: center; }
.return-restock-toggle { grid-template-columns: 18px minmax(0,1fr); align-items: start; padding: 10px; border: 1px solid #d8e8df; border-radius: 8px; background: #f2faf5; cursor: pointer; }
.return-restock-toggle input { width: 15px; height: 15px; margin-top: 2px; accent-color: #158257; }
.return-restock-toggle span { display: grid; gap: 3px; }
.return-restock-toggle b { color: #287052; font-size: 11px; }
.return-restock-toggle small { color: #5a806d; font-size: 9px; font-weight: 500; line-height: 1.8; }
.return-amount-summary { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px; border-radius: 8px; background: #fff8e6; color: #71613b; font-size: 10px; }
.return-amount-summary strong { color: #8e6300; font-size: 12px; white-space: nowrap; }

.invoice-loading, .invoice-not-found { display: grid; place-items: center; align-content: center; min-height: 60vh; gap: 10px; color: #626a75; text-align: center; }
.invoice-loading i, .invoice-not-found i { color: #e6a615; font-size: 34px; }
.invoice-not-found h1 { margin: 0; color: #2d3238; font-size: 20px; }
.invoice-not-found p { margin: 0; font-size: 12px; }
.invoice-not-found a { padding: 9px 13px; border-radius: 8px; background: #ffb400; color: #24201a; font-size: 12px; font-weight: 800; text-decoration: none; }
.invoice-page { min-height: 100vh; padding: 28px 16px 45px; background: #f1f3f5; }
.invoice-toolbar { display: flex; width: min(900px,100%); margin: 0 auto 12px; justify-content: space-between; gap: 10px; }
.invoice-toolbar :is(a, button) { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 38px; padding: 8px 12px; border: 1px solid #d9dee4; border-radius: 8px; background: #fff; color: #454a51; font: inherit; font-size: 11px; font-weight: 800; text-decoration: none; cursor: pointer; }
.invoice-toolbar button { border-color: #e5af28; background: #ffb400; color: #272016; }
.sales-invoice { width: min(900px,100%); margin: 0 auto; border: 1px solid #dfe3e6; border-radius: 14px; overflow: hidden; background: #fff; box-shadow: 0 10px 32px rgba(20,26,34,.08); }
.invoice-header { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 25px 30px; border-bottom: 4px solid #ffb400; }
.invoice-brand { display: flex; align-items: center; gap: 11px; }
.invoice-brand > span { display: grid; width: 48px; height: 48px; place-items: center; border-radius: 14px; background: #171a1f; color: #ffba13; font-size: 17px; font-weight: 900; }
.invoice-brand div, .invoice-title { display: grid; gap: 3px; }
.invoice-brand b { color: #24272d; font-size: 18px; }
.invoice-brand small, .invoice-title p { margin: 0; color: #6f7680; font-size: 10px; }
.invoice-title { text-align: left; }
.invoice-title h1 { margin: 0; color: #25282d; font-size: 20px; }
.invoice-title p b { color: #2f3540; }
.invoice-parties { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; padding: 22px 30px; }
.invoice-parties > div { display: grid; gap: 5px; min-height: 95px; padding: 13px; border: 1px solid #e4e7eb; border-radius: 9px; background: #fbfcfd; }
.invoice-parties span, .invoice-payment > span { color: #8a919a; font-size: 10px; }
.invoice-parties b { color: #30343b; font-size: 13px; }
.invoice-parties p, .invoice-payment p { margin: 0; color: #606872; font-size: 10px; line-height: 1.8; }
.invoice-items { width: calc(100% - 60px); margin: 0 30px 22px; border-collapse: separate; border-spacing: 0; overflow: hidden; border: 1px solid #e1e5e9; border-radius: 9px; font-size: 11px; }
.invoice-items th { padding: 11px 9px; background: #24272d; color: #fff; font-size: 10px; font-weight: 700; text-align: right; }
.invoice-items td { padding: 11px 9px; border-top: 1px solid #edf0f2; color: #555d67; vertical-align: middle; }
.invoice-items td:first-child { width: 45px; }
.invoice-items td:nth-child(3), .invoice-items td:nth-child(4), .invoice-items td:nth-child(5) { white-space: nowrap; }
.invoice-items td b { color: #2c3036; font-size: 11px; }
.invoice-items td small { display: block; margin-top: 3px; color: #8a9199; font-size: 8px; }
.invoice-summary { display: grid; grid-template-columns: 1fr minmax(260px,.8fr); gap: 28px; padding: 0 30px 25px; }
.invoice-payment { display: grid; align-content: start; gap: 5px; padding-top: 9px; }
.invoice-payment .paid { color: #168355; font-size: 12px; }
.invoice-payment .pending { color: #c77900; font-size: 12px; }
.invoice-totals { display: grid; gap: 7px; padding: 13px; border: 1px solid #e3e6e9; border-radius: 9px; background: #fbfcfd; }
.invoice-totals p { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 0; color: #616872; font-size: 10px; }
.invoice-totals p > b { color: #343940; font-size: 11px; }
.invoice-totals .refund { color: #b43a51; }
.invoice-totals .refund b { color: #bd3e54; }
.invoice-totals .grand-total { margin-top: 4px; padding-top: 10px; border-top: 1px dashed #cfd5da; color: #292d33; font-size: 12px; font-weight: 800; }
.invoice-totals .grand-total strong { color: #b77900; font-size: 16px; }
.invoice-return-note { margin: 0 30px 20px; padding: 12px; border-radius: 8px; background: #fff6f7; color: #933248; font-size: 10px; }
.invoice-return-note b { font-size: 11px; }
.invoice-return-note ul { margin: 7px 0 0; padding: 0 17px 0 0; }
.invoice-return-note li { margin: 4px 0; line-height: 1.8; }
.invoice-footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 30px; border-top: 1px solid #e9ecef; background: #fafbfc; color: #7e858d; font-size: 9px; }
.invoice-footer p { margin: 0; }
.invoice-footer b { color: #4d535b; }

@media (max-width: 600px) {
    .return-lines article { grid-template-columns: 38px minmax(0,1fr); }
    .return-lines label { grid-column: 1 / -1; grid-template-columns: 1fr 80px; align-items: center; }
    .return-lines input { width: 80px !important; justify-self: end; }
    .invoice-page { padding: 14px 8px 30px; }
    .invoice-header, .invoice-parties, .invoice-summary { padding-right: 15px; padding-left: 15px; }
    .invoice-header { align-items: flex-start; flex-direction: column; }
    .invoice-title { text-align: right; }
    .invoice-parties, .invoice-summary { grid-template-columns: 1fr; gap: 12px; }
    .invoice-items { width: calc(100% - 30px); margin-right: 15px; margin-left: 15px; font-size: 9px; }
    .invoice-items th, .invoice-items td { padding: 8px 5px; }
    .invoice-items th:nth-child(1), .invoice-items td:nth-child(1), .invoice-items th:nth-child(4), .invoice-items td:nth-child(4) { display: none; }
    .invoice-return-note { margin-right: 15px; margin-left: 15px; }
    .invoice-footer { align-items: flex-start; flex-direction: column; padding-right: 15px; padding-left: 15px; }
}

@media print {
    @page { size: A4; margin: 10mm; }
    body { background: #fff !important; }
    .no-print, #blazor-error-ui { display: none !important; }
    .invoice-page { min-height: auto; padding: 0; background: #fff; }
    .sales-invoice { width: 100%; border: 0; border-radius: 0; box-shadow: none; }
    .invoice-header { padding-top: 0; }
}

/* تکمیل تجربهٔ موبایل: جلوگیری از فشردگی و اسکرول افقی در همهٔ بخش‌ها */
@media (max-width: 760px) {
    html, body { max-width: 100%; overflow-x: hidden; }
    .main-content, .page-shell, .account-content, .admin-main, .admin-content { min-width: 0; }
    .page-shell, .account-page { padding-top: 18px; padding-bottom: 36px; }
    .breadcrumbs { max-width: 100%; overflow-x: auto; white-space: nowrap; scrollbar-width: none; }
    .breadcrumbs::-webkit-scrollbar { display: none; }

    .page-heading, .admin-page-heading { align-items: flex-start; flex-direction: column; gap: 10px; margin-bottom: 16px; }
    .page-heading > a, .admin-page-heading > :is(a, button, label) { min-height: 42px; width: 100%; justify-content: center; }
    .page-heading h1 { font-size: 21px; line-height: 1.55; }
    .page-heading p { display: block; font-size: 12px; line-height: 1.9; }

    .site-search { min-width: 0; }
    .site-search input { min-width: 0; padding-inline: 10px; font-size: 12px; }
    .mobile-drawer, .cart-drawer { width: min(100%, 390px); }
    .drawer-cart-lines { padding-inline: 14px; }
    .drawer-cart-lines article { grid-template-columns: 62px minmax(0, 1fr) 28px; }
    .drawer-cart-lines img { width: 62px; height: 62px; }
    .drawer-cart-actions { padding-inline: 14px; }

    .catalog-toolbar { min-height: 0; align-items: stretch; flex-direction: column; gap: 9px; padding: 10px; }
    .catalog-toolbar > div { justify-content: space-between; }
    .catalog-toolbar label, .catalog-toolbar select { width: 100%; }
    .catalog-toolbar select { height: 38px; }
    .mobile-filter-trigger { min-height: 38px; justify-content: center; }
    .product-card { min-width: 0; }
    .product-card-body > p { height: auto; min-height: 40px; }
    .product-card h3 { height: auto; min-height: 40px; }

    .product-detail { gap: 14px; }
    .main-product-image { height: min(82vw, 350px); }
    .thumbnail-row { overflow-x: auto; padding-bottom: 3px; }
    .thumbnail-row button { flex: 0 0 58px; }
    .detail-secondary-actions { width: 100%; grid-template-columns: repeat(3, 1fr); }
    .product-tabs { max-width: 100%; overflow-x: auto; white-space: nowrap; gap: 18px; scrollbar-width: none; }
    .product-tabs::-webkit-scrollbar { display: none; }
    .product-tabs button { flex: 0 0 auto; }
    .product-info-content, .product-specifications, .product-questions, .reviews-section { padding: 16px; }

    .cart-items > header { align-items: flex-start; flex-wrap: wrap; gap: 8px; padding-block: 11px; }
    .cart-line { grid-template-columns: 76px minmax(0, 1fr); gap: 10px; }
    .cart-line-image { width: 76px; height: 76px; }
    .cart-line-info h2 { font-size: 12px; line-height: 1.8; }
    .cart-line-info ul { display: none; }
    .cart-line-side { width: 100%; padding-top: 10px; border-top: 1px solid var(--line); }
    .cart-line-side strong { font-size: 14px; }
    .shipping-progress { align-items: flex-start; padding: 12px; }
    .order-summary { padding: 15px; }

    .checkout-shell { padding: 18px 0 38px; }
    .checkout-heading { grid-template-columns: 1fr; gap: 8px; }
    .checkout-heading > div { text-align: right; }
    .checkout-heading > a { justify-self: start; }
    .checkout-steps, .order-progress { justify-content: flex-start; overflow-x: auto; padding-bottom: 5px; }
    .checkout-steps > i { flex: 0 0 42px; width: 42px; }
    .checkout-form { padding-inline: 13px; }
    .form-section { padding-block: 18px; gap: 10px; }
    .shipping-options.checkout-option-grid label, .payment-options.checkout-option-grid label { grid-template-columns: 20px 28px minmax(0, 1fr); align-items: start; }

    .account-sidebar { border-radius: 11px; }
    .account-sidebar nav a { justify-content: center; min-height: 42px; }
    .order-tabs { max-width: 100%; overflow-x: auto; white-space: nowrap; scrollbar-width: none; }
    .order-tabs::-webkit-scrollbar { display: none; }
    .order-tabs button { flex: 0 0 auto; }
    .order-card { padding: 13px; }
    .order-card > header { align-items: flex-start; gap: 10px; }
    .order-card > header > div:last-child strong { font-size: 12px; }
    .order-card > footer { gap: 12px; }
    .customer-order-detail { width: 100vw; max-width: 100vw; }
    .customer-order-body { padding: 14px; }
    .customer-order-body article { grid-template-columns: 50px minmax(0, 1fr); gap: 8px; }
    .customer-order-body article strong { grid-column: 2; }
    .wallet-table article { grid-template-columns: 32px minmax(0, 1fr) auto; gap: 9px; padding-inline: 13px; }
    .wallet-table article > div:nth-child(3) { display: none; }
    .wallet-table strong { font-size: 10px; white-space: nowrap; }

    .compare-table-wrap { max-width: 100%; border-radius: 10px; }
    .empty-state { min-height: 320px; padding: 24px 16px; }
    .empty-state h1, .empty-state h2 { font-size: 20px; }

    .admin-topbar { min-height: 58px; padding-inline: 13px; gap: 8px; }
    .admin-topbar h1 { max-width: 185px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 15px; }
    .admin-content { padding: 14px 12px 34px; }
    .admin-page-heading h2 { font-size: 19px; }
    .admin-page-heading > div { width: 100%; }
    .admin-primary { min-height: 42px; font-size: 11px; }
    .admin-stats > div { min-width: 0; min-height: 112px; padding: 13px; }
    .admin-stats strong { font-size: 15px; }
    .admin-table-toolbar { align-items: stretch; flex-direction: column; gap: 9px; padding: 12px; }
    .admin-table-toolbar label { width: 100%; min-height: 38px; }
    .admin-table-toolbar > div { display: grid; grid-template-columns: 1fr 1fr; }
    .admin-table-toolbar select { width: 100%; min-width: 0; }
    .admin-editor { width: 100vw; max-width: 100vw; }
    .admin-editor form { padding: 15px; }
    .product-media-thumbnails { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .media-library-heading { align-items: stretch; flex-direction: column; gap: 10px; }
    .media-library-heading label { width: 100%; }

    .order-document-actions > * { flex: 1 1 145px; }
    .order-return-history article { align-items: flex-start; flex-direction: column; gap: 5px; }
    .return-amount-summary { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 480px) {
    .shell { width: calc(100% - 16px); }
    .header-main { column-gap: 6px; }
    .brand-copy { display: flex; }
    .brand-copy strong { font-size: 12px; letter-spacing: -.2px; }
    .site-search > button { width: 42px; }
    .home-hero { min-height: 430px; padding: 20px 15px; }
    .home-hero h1 { font-size: 27px; }
    .product-grid, .deal-products, .catalog-grid, .wishlist-grid, .related-grid { gap: 7px; }
    .product-card-media, .compact-card .product-card-media { height: 132px; }
    .product-card-body { padding: 8px; }
    .product-card h3 { min-height: 36px; font-size: 11px; }
    .product-pricing strong { font-size: 12px; }
    .add-cart { min-height: 34px; font-size: 10px; }
    .main-product-image { height: 290px; }
    .purchase-summary { align-items: stretch; }
    .purchase-summary .quantity-stepper { margin-right: auto; }
    .detail-secondary-actions { gap: 6px; }
    .detail-secondary-actions button { padding-inline: 4px; font-size: 10px; }
    .cart-line-actions { gap: 10px; }
    .cart-line-actions button { font-size: 10px; }
    .checkout-steps > span b { font-size: 9px; }
    .account-sidebar nav { grid-template-columns: 1fr 1fr; }
    .admin-stats { grid-template-columns: 1fr; }
    .product-media-thumbnails { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .invoice-toolbar { align-items: stretch; flex-direction: column; }
    .invoice-toolbar :is(a, button) { width: 100%; }
}
.product-tabs {
    display: flex;
    gap: 26px;
    min-height: 60px;
    align-items: center;
    padding: 0 24px;
    border-bottom: 1px solid var(--line);
    overflow-x: auto;
}
.category-item__icon {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border-radius: 16px;
    font-size: 21px !important;
    transition: transform .25s;
}
.category-list {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 12px;
}
/* چیدمان سه‌ستونهٔ صفحهٔ کالا فقط برای نمایشگرهای بزرگ است. */
@media (min-width: 1320px) {
    .product-detail { grid-template-columns: 386px 524px 302px; }
}

@media (max-width: 760px) {
    .product-detail { grid-template-columns: minmax(0, 1fr); }
    .product-tabs { gap: 18px; padding-inline: 15px; }
    .category-list { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
}

@media (max-width: 480px) {
    .category-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* هدر و کارت سفارش در موبایل باید نام فروشگاه و مراحل سفارش را کامل نگه دارند. */
.brand { min-width: 0; }
.brand-mark img { width: 100%; height: 100%; object-fit: contain; }

@media (max-width: 760px) {
    .order-products { max-width: 100%; overflow-x: auto; justify-content: flex-start; padding-bottom: 4px; }
    .order-products > * { flex: 0 0 auto; }
    .order-progress { gap: 0; margin: 12px 0 16px; }
    .order-progress > span { min-width: 52px; flex: 0 0 52px; }
    .order-progress > span b { display: block; font-size: 9px; white-space: nowrap; }
    .order-progress > i { width: 18px; flex: 0 0 18px; margin-inline: 2px; }
    .order-card > footer > div { min-width: 0; }
    .order-card > footer small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
}

@media (max-width: 480px) {
    .brand { gap: 5px; }
    .brand-mark { width: 34px; height: 34px; }
    .brand-copy strong { font-size: 12px; }
    .order-progress > span { min-width: 48px; flex-basis: 48px; }
    .order-progress > span b { font-size: 8px; }
    .order-progress > i { width: 12px; flex-basis: 12px; }
}

/* کارت سفارش موبایل: اطلاعات اصلی در ستون مستقل تا شماره سفارش نشکند. */
@media (max-width: 760px) {
    .orders-list { gap: 12px; }
    .order-card { padding: 14px; border-radius: 14px; }
    .order-card > header {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: start;
        gap: 12px;
        padding-bottom: 12px;
    }
    .order-card > header > div:first-child {
        display: flex;
        min-width: 0;
        flex-direction: column;
        align-items: flex-start;
        gap: 5px;
    }
    .order-card h2 {
        width: 100%;
        margin: 0;
        overflow: hidden;
        font-size: 14px;
        line-height: 1.45;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .order-card header small { font-size: 9px; }
    .order-card > header > div:last-child {
        min-width: 78px;
        padding-right: 10px;
        border-right: 1px solid var(--line);
    }
    .order-card > header > div:last-child strong { font-size: 13px; white-space: nowrap; }
    .order-status { width: max-content; font-size: 9px; }

    .order-products { justify-content: flex-start; min-height: 72px; padding: 12px 2px; }
    .order-products span { width: 58px; height: 58px; }
    .order-products img { width: 58px; height: 58px; }
    .order-products em { font-size: 9px; }

    .order-progress { width: 100%; align-items: flex-start; justify-content: stretch; overflow: visible; margin: 5px 0 14px; }
    .order-progress > span { min-width: 45px; flex: 0 0 45px; gap: 5px; }
    .order-progress > span i { width: 28px; height: 28px; }
    .order-progress > span b { display: block; font-size: 8px; line-height: 1.4; white-space: normal; text-align: center; }
    .order-progress > i { width: auto; min-width: 8px; flex: 1 1 8px; margin: 13px 3px 0; }

    .order-card > footer { display: grid; grid-template-columns: 1fr; gap: 9px; padding-top: 12px; }
    .order-card > footer > div { min-height: 30px; }
    .order-card > footer b { font-size: 10px; }
    .order-card > footer small { font-size: 9px; }
    .order-card > footer button { width: 100%; min-height: 38px; font-size: 11px; }
}

@media (max-width: 360px) {
    .order-card { padding: 11px; }
    .order-card > header > div:last-child { min-width: 70px; padding-right: 7px; }
    .order-card > header > div:last-child strong { font-size: 11px; }
    .order-progress > span { min-width: 41px; flex-basis: 41px; }
    .order-progress > i { min-width: 5px; margin-inline: 2px; }
    .order-progress > span b { font-size: 7px; }
}

/* وضعیت سفارش از مرحلهٔ واقعی سفارش می‌آید؛ شکل نقاط و خط‌ها ثابت می‌ماند. */
.order-progress > span.current { color: #a45d00; }
.order-progress > span.current i { background: var(--amber); border-color: var(--amber); color: var(--ink); }
.order-progress > span.pending i { background: #fff; border-color: #dfe2e7; color: #9ba0a8; }
.order-progress > span.done i { background: var(--green); border-color: var(--green); color: #fff; }
.order-progress > i.pending { background: #dfe2e7; }
.order-progress > i.done { background: var(--green); }
.order-status.status-delivered { background: #eaf9f2 !important; color: #087b55 !important; }
.order-status.status-shipped { background: #f1efff !important; color: #6145c8 !important; }
.order-status.status-ready, .order-status.status-processing { background: #fff4d0 !important; color: #a65c00 !important; }
.order-status.status-waiting { background: #fff0f3 !important; color: #c2294d !important; }
.order-status.status-cancelled { background: #f1f1f3 !important; color: #686b73 !important; }
.order-status.status-delivered i { background: #0a9f70; }
.order-status.status-shipped i { background: #765be0; }
.order-status.status-waiting i, .order-status.status-cancelled i { background: #ef3355; }

/* صفحهٔ نخست موبایل: هدر تک‌ردیفه، منوی قابل‌اسکرول و ترتیب مزیت ← بنر ← دسته‌ها */
@media (max-width: 760px) {
    .site-header { position: sticky; top: 0; }
    .header-main {
        display: flex;
        min-height: 62px;
        gap: 8px;
        padding-block: 7px;
    }
    .mobile-menu-button { flex: 0 0 30px; order: 0; font-size: 22px; }
    .site-header .brand { order: 1; flex: 0 0 auto; gap: 5px; }
    .site-header .brand-mark {
        width: 38px;
        height: 38px;
        padding: 6px;
        border-radius: 10px;
        background: #191a1e;
        box-shadow: none;
    }
    .site-header .brand-mark img { filter: brightness(0) invert(1); }
    .site-header .brand-copy { display: flex; }
    .site-header .brand-copy strong { font-size: 12px; }
    .site-search { order: 2; flex: 1 1 90px; height: 42px; margin: 0; }
    .site-search input { padding-inline: 8px; font-size: 11px; }
    .site-search > button { width: 40px; font-size: 18px; }
    .header-icon-link { order: 3; flex: 0 0 31px; width: 31px; height: 31px; }
    .cart-link { order: 4; flex: 0 0 38px; min-width: 38px; height: 38px; }
    .cart-link > i { font-size: 22px; }
    .cart-link em { right: 20px; }

    .department-nav { display: block; background: #ff9d00; }
    .department-nav .shell {
        min-height: 36px;
        gap: 19px;
        overflow-x: auto !important;
        scrollbar-width: none;
    }
    .department-nav .shell::-webkit-scrollbar { display: none; }
    .department-nav .shell > a { flex: 0 0 auto; color: #202124; font-size: 11px; font-weight: 800; }
    .department-nav .shell > a:first-child { color: #fff; }
    .department-menu-trigger { display: none; }

    .home-purchase-benefits { padding-top: 14px; }
    .home-purchase-benefits > div { min-height: 72px; padding: 9px; border-radius: 13px; }
    .home-purchase-benefits > div > span { width: 34px; height: 34px; }
    .home-purchase-benefits strong { font-size: 11px; }
    .home-purchase-benefits small { font-size: 8px; }
    .home-banner-slider { margin-top: 18px; }
    .category-section { padding-top: 26px; }
    .category-section .section-heading { margin-bottom: 12px; }
}

@media (max-width: 480px) {
    .site-header .brand-copy strong { font-size: 11px; }
    .site-search { flex-basis: 75px; }
    .site-search input::placeholder { color: #9497a0; }
    .department-nav .shell { gap: 16px; }
    .home-purchase-benefits > div { min-height: 68px; }
}

.sms-api-help {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin-top: 12px;
    padding: 11px 12px;
    border: 1px solid #d9e5f5;
    border-radius: 9px;
    background: #f5f9ff;
    color: #526273;
    font-size: 11px;
    line-height: 1.9;
}
.sms-api-help > i { color: #3674bd; font-size: 16px; }
.sms-api-help span { display: grid; gap: 2px; }
.sms-api-help b { color: #2f4e70; }
.sms-api-help small { font-size: 10px; direction: ltr; text-align: right; }
.site-header .brand-mark {
    background: #ffffff00;
}
    .site-header .brand-mark img {
        filter: brightness(0) invert(0);
    }
.auth-otp-icon {
    width: 50px;
    height: 50px;
    margin: 0 auto 13px;
    display: grid;
    place-items: center;
    border-radius: 15px;
    background: #ffffff;
    color: #ff8519;
    font-size: 23px;
}
.home-benefits > div {
    min-height: 32px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 13px;
    box-shadow: var(--shadow-sm);
    display: grid;
    grid-template-columns: 44px 1fr;
    align-content: center;
    padding: 5px 18px;
}
.home-benefits {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
    padding-top: 18px;
}
    .home-benefits > div {
        min-height: 32px;
        background: #ffffff00;
        border: 1px solid var(--line);
        border-radius: 13px;
        box-shadow: unset;
        display: grid;
        grid-template-columns: 44px 1fr;
        align-content: center;
        padding: 5px 18px;
    }
        .home-benefits > div > span {
            grid-row: 1 / 3;
            width: 39px;
            height: 39px;
            display: grid;
            place-items: center;
            border-radius: 50%;
            background: #ffffff00;
            color: var(--orange);
            font-size: 18px;
        }
.product-card-body > p, .product-meta, .product-meta em, .product-rating small, .product-pricing del {
    font-size: .75rem;
}
.product-card h3, .product-card h3 a {
    font-size: 13px;
    font-weight: 500;
}
@media (min-width: 1181px) {
    .product-title-line h1 {
        font-size: 21px;
    }
}
.category-item__icon > img {
    object-fit: contain;
    max-width: 60%;
}
.category-item__icon {
    width: unset;
    height: unset;
}
.category-item {
    padding: 6px 8px 4px;
    background: #dddddd33;
}
.footer-benefits i {
    font-size: 18px;
}
.enamad {
    cursor: pointer !important;
    width: 55% !important;
    border: 1px solid #e1e1e1 !important;
    border-radius: 8px !important;
    float: left;
}

.enamad>img {
    filter: brightness(100%) contrast(100%) saturate(120%);
}
.socials a {
    width: unset;
    height: unset;
    border-radius: unset;
    background-color: #e9e9e9 !important
}
.socials {
    margin-top: 1px;
}
.product-info-content:has(.admin-product-content) > article:not(.admin-product-content) { display: none; }
.product-specifications:has(.managed-specifications) > div:not(.managed-specifications),
.product-specifications:has(.managed-specifications) > dl,
.product-specifications:has(.managed-specifications) > .product-all-features { display: none; }
.managed-specifications { display: grid; gap: 1rem; }
.managed-specifications ul { list-style: none; padding: 0; margin: 0; display: grid; gap: .65rem; }
.managed-specifications li { padding: .75rem 1rem; border: 1px solid var(--line, #e5e7eb); border-radius: .75rem; }
.managed-specifications i { color: #00a878; margin-left: .4rem; }
