/*
 * account-ui.css — تمِ سایتِ فروشگاه برای صفحه‌های مشتری (ورود، ثبت‌نام، پروفایل، سبد، تسویه، آدرس، علاقه‌مندی،
 * مقایسه، رسید، فروشنده‌شدن، خطا). فقط وقتی فعال است که <body class="cs-themed"> باشد.
 * رنگ‌ها و شکل‌ها از خودِ سایت گرفته شده: سبزآبیِ #016B75 (هدر/فوتر/دکمه‌های صفحهٔ اصلی)، قرمزِ #E6123D برای تخفیف،
 * متنِ #2C3E50، پس‌زمینهٔ #F8F9FA، کارتِ گرد و سایهٔ ملایم. Bootstrap 5.3 فقط با متغیر و بازنویسیِ نرم تم می‌شود؛
 * نام کلاس‌ها و شناسه‌ها دست‌نخورده‌اند (JS صفحه‌ها btn-primary / btn-outline-primary را جابه‌جا می‌کند).
 */

body.cs-themed {
  --cs-primary: #016b75;        /* روی سفید ۶٫۲۵:۱ */
  --cs-primary-hover: #014f57;  /* ۹٫۳:۱ */
  --cs-primary-soft: #e6f4f5;
  --cs-accent: #e6123d;         /* روی سفید ۴٫۶۵:۱ (تخفیف/قیمت) */
  --cs-ink: #2c3e50;            /* ۱۱:۱ */
  --cs-muted: #5b6472;          /* ۶:۱ */
  --cs-line: #e5e7eb;
  --cs-line-strong: #cbd5e1;
  --cs-bg: #f8f9fa;
  --cs-success: #15803d;
  --cs-danger: #b91c1c;
  --cs-warning-bg: #fff3cd;
  --cs-warning-ink: #6b4a00;
  --cs-r: 12px;
  --cs-r-lg: 20px;
  --cs-tap: 44px;
  --cs-shadow: 0 1px 2px rgba(15, 23, 42, .05), 0 6px 20px rgba(15, 23, 42, .06);

  --bs-info: #0b5963;
  --bs-info-rgb: 11, 89, 99;
  --bs-primary: #016b75;
  --bs-primary-rgb: 1, 107, 117;
  --bs-link-color: #016b75;
  --bs-link-color-rgb: 1, 107, 117;
  --bs-link-hover-color: #014f57;
  --bs-link-hover-color-rgb: 1, 79, 87;
  --bs-body-color: #2c3e50;
  --bs-body-color-rgb: 44, 62, 80;
  --bs-body-bg: #f8f9fa;
  --bs-border-color: #e5e7eb;
  --bs-border-radius: 12px;
  --bs-secondary-color: #5b6472;
  background: var(--cs-bg);
  color: var(--cs-ink);
}

/* فوکوس: همیشه دیده شود */
.cs-themed a:focus-visible, .cs-themed button:focus-visible, .cs-themed input:focus-visible,
.cs-themed select:focus-visible, .cs-themed textarea:focus-visible, .cs-themed summary:focus-visible,
.cs-themed [tabindex]:focus-visible {
  outline: 3px solid #0e9aa7 !important; outline-offset: 2px !important; box-shadow: none;
}

/* تیترها */
.cs-themed main h1, .cs-themed main h2, .cs-themed main h3, .cs-themed main h4, .cs-themed main h5, .cs-themed main h6 {
  color: var(--cs-ink); font-weight: 800; line-height: 1.5;
}
.cs-themed main h2 { font-size: 1.5rem; }
.cs-themed main h3 { font-size: 1.3rem; }
.cs-themed .text-muted, .cs-themed .form-text { color: var(--cs-muted) !important; }

/* کارت: گرد، سایهٔ ملایم، بی پرشِ hover */
.cs-themed main .card {
  border: 1px solid var(--cs-line); border-radius: var(--cs-r-lg); background: #fff; box-shadow: var(--cs-shadow);
  transform: none; overflow: hidden;
}
.cs-themed main .card:hover { transform: none; box-shadow: var(--cs-shadow); }
.cs-themed main .card.shadow, .cs-themed main .card.shadow-sm, .cs-themed main .card.shadow-lg { box-shadow: var(--cs-shadow) !important; }
.cs-themed main .card-header, .cs-themed main .card-footer { background: #fff; border-color: var(--cs-line); }
.cs-themed main .card-header { font-weight: 700; }

/* دکمه‌ها: primary سبزآبی، secondary سفید، danger قرمز؛ لمسِ ≥ ۴۴ */
.cs-themed main .btn, .cs-themed .modal .btn {
  display: inline-flex; align-items: center; justify-content: center; gap: .5rem;
  min-height: var(--cs-tap); padding: .5rem 1.25rem; border-radius: var(--cs-r); font-weight: 700; line-height: 1.4;
  font-family: inherit; transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}
.cs-themed main .btn-sm, .cs-themed .modal .btn-sm { min-height: var(--cs-tap); padding: .375rem 1rem; font-size: .9rem; }
.cs-themed main .btn-lg { min-height: 52px; font-size: 1.05rem; }
.cs-themed main .btn:active { transform: scale(.98); }
.cs-themed .btn-primary, .cs-themed .btn-success {
  --bs-btn-bg: #016b75; --bs-btn-border-color: #016b75; --bs-btn-color: #fff;
  --bs-btn-hover-bg: #014f57; --bs-btn-hover-border-color: #014f57; --bs-btn-hover-color: #fff;
  --bs-btn-active-bg: #014f57; --bs-btn-active-border-color: #014f57; --bs-btn-active-color: #fff;
  --bs-btn-disabled-bg: #016b75; --bs-btn-disabled-border-color: #016b75; --bs-btn-disabled-color: #fff;
  --bs-btn-focus-shadow-rgb: 1, 107, 117;
  background: #016b75; border-color: #016b75; color: #fff;
}
.cs-themed .btn-primary:hover, .cs-themed .btn-success:hover { background: #014f57; border-color: #014f57; color: #fff; }
.cs-themed .btn-outline-primary, .cs-themed .btn-outline-success {
  --bs-btn-color: #016b75; --bs-btn-border-color: #016b75; --bs-btn-bg: #fff;
  --bs-btn-hover-bg: #016b75; --bs-btn-hover-border-color: #016b75; --bs-btn-hover-color: #fff;
  --bs-btn-active-bg: #016b75; --bs-btn-active-border-color: #016b75; --bs-btn-active-color: #fff;
  background: #fff; color: #016b75; border-color: #016b75;
}
.cs-themed .btn-outline-primary:hover, .cs-themed .btn-outline-success:hover { background: #016b75; color: #fff; }
.cs-themed .btn-danger {
  --bs-btn-bg: #b91c1c; --bs-btn-border-color: #b91c1c; --bs-btn-color: #fff;
  --bs-btn-hover-bg: #991b1b; --bs-btn-hover-border-color: #991b1b; --bs-btn-hover-color: #fff;
  background: #b91c1c; border-color: #b91c1c; color: #fff;
}
.cs-themed .btn-outline-danger { --bs-btn-color: #b91c1c; --bs-btn-border-color: #b91c1c; --bs-btn-hover-bg: #b91c1c; --bs-btn-hover-border-color: #b91c1c; color: #b91c1c; border-color: #b91c1c; background: #fff; }
.cs-themed .btn-outline-danger:hover { background: #b91c1c; color: #fff; }
.cs-themed .btn-secondary, .cs-themed .btn-outline-secondary, .cs-themed .btn-light {
  --bs-btn-bg: #fff; --bs-btn-color: #2c3e50; --bs-btn-border-color: #cbd5e1;
  --bs-btn-hover-bg: #f1f5f9; --bs-btn-hover-color: #2c3e50; --bs-btn-hover-border-color: #94a3b8;
  --bs-btn-active-bg: #e2e8f0; --bs-btn-active-color: #2c3e50;
  background: #fff; color: #2c3e50; border-color: #cbd5e1;
}
.cs-themed .btn-secondary:hover, .cs-themed .btn-outline-secondary:hover, .cs-themed .btn-light:hover { background: #f1f5f9; color: #2c3e50; }
.cs-themed .btn-link { color: #016b75; font-weight: 600; text-decoration: none; }
.cs-themed .btn-link:hover { color: #014f57; text-decoration: underline; }
.cs-themed .btn:disabled, .cs-themed .btn.disabled { opacity: .55; }
/* گروهِ دکمه‌ها (تبِ ورود): قطعه‌ای و گرد */
.cs-themed main .btn-group { border-radius: var(--cs-r); box-shadow: none; }
.cs-themed main .btn-group > .btn { flex: 1 1 auto; }

/* فرم */
.cs-themed main .form-label { color: var(--cs-ink); font-weight: 700; margin-bottom: .375rem; }
.cs-themed main .form-control, .cs-themed main .form-select, .cs-themed .modal .form-control, .cs-themed .modal .form-select {
  min-height: 48px; border: 1px solid var(--cs-line-strong); border-radius: var(--cs-r); background-color: #fff;
  color: var(--cs-ink); font-family: inherit; padding: .5rem .875rem;
}
.cs-themed main textarea.form-control { min-height: 96px; }
.cs-themed main .form-control::placeholder { color: #6b7280; opacity: 1; }
.cs-themed main .form-control:focus, .cs-themed main .form-select:focus {
  border-color: var(--cs-primary); box-shadow: 0 0 0 4px rgba(1, 107, 117, .18);
}
.cs-themed main .form-check-input { width: 1.25rem; height: 1.25rem; border-color: #94a3b8; }
.cs-themed main .form-check-input:checked { background-color: var(--cs-primary); border-color: var(--cs-primary); }
.cs-themed main .form-check-label { padding-inline-start: .25rem; }
.cs-themed main .input-group-text { background: var(--cs-primary-soft); border-color: var(--cs-line-strong); color: var(--cs-primary); }

/* پیام‌ها */
.cs-themed .alert { border-radius: var(--cs-r); border-width: 1px; font-weight: 500; }
.cs-themed .alert-success { background: #f0fdf4; border-color: #bbf7d0; color: #14532d; }
.cs-themed .alert-danger { background: #fef2f2; border-color: #fecaca; color: #7f1d1d; }
.cs-themed .alert-warning { background: var(--cs-warning-bg); border-color: #ffe08a; color: var(--cs-warning-ink); }
.cs-themed .alert-info { background: var(--cs-primary-soft); border-color: #b6dfe2; color: #014f57; }
.cs-themed .btn-close { width: 44px; height: 44px; padding: 0; background-size: .8rem; margin: 0; }

/* نشان */
.cs-themed .badge { border-radius: 999px; font-weight: 700; padding: .4em .75em; }
.cs-themed .badge.bg-primary { background-color: var(--cs-primary) !important; color: #fff; }
.cs-themed .badge.bg-success { background-color: var(--cs-success) !important; color: #fff; }
.cs-themed .badge.bg-danger { background-color: var(--cs-danger) !important; color: #fff; }
.cs-themed .badge.bg-warning { background-color: var(--cs-warning-bg) !important; color: var(--cs-warning-ink) !important; }
.cs-themed .badge.bg-secondary { background-color: #475569 !important; color: #fff; }
.cs-themed .badge.bg-info { background-color: var(--cs-primary-soft) !important; color: #014f57 !important; }
.cs-themed .text-primary { color: var(--cs-primary) !important; }
.cs-themed .text-success { color: var(--cs-success) !important; }
.cs-themed .text-danger { color: var(--cs-danger) !important; }
.cs-themed .bg-primary { background-color: var(--cs-primary) !important; }
.cs-themed .border-primary { border-color: var(--cs-primary) !important; }

/* تب‌ها و لیست‌ها */
.cs-themed .nav-tabs { border-bottom: 1px solid var(--cs-line); gap: .25rem; }
.cs-themed .nav-tabs .nav-link, .cs-themed .nav-pills .nav-link {
  min-height: var(--cs-tap); display: inline-flex; align-items: center; color: var(--cs-muted); font-weight: 700; border-radius: var(--cs-r) var(--cs-r) 0 0;
}
.cs-themed .nav-pills .nav-link { border-radius: var(--cs-r); }
.cs-themed .nav-tabs .nav-link.active { color: var(--cs-primary); border-color: var(--cs-line) var(--cs-line) #fff; }
.cs-themed .nav-pills .nav-link.active { background: var(--cs-primary); color: #fff; }
.cs-themed .list-group-item { border-color: var(--cs-line); }
.cs-themed .list-group-item.active { background: var(--cs-primary); border-color: var(--cs-primary); }
.cs-themed .table { --bs-table-bg: #fff; color: var(--cs-ink); }
.cs-themed .table > thead > tr > th { background: var(--cs-primary-soft); color: #014f57; font-weight: 700; border-bottom: 0; }
.cs-themed .pagination .page-link { min-width: var(--cs-tap); min-height: var(--cs-tap); display: inline-flex; align-items: center; justify-content: center; color: var(--cs-primary); border-radius: var(--cs-r); margin: 0 .125rem; }
.cs-themed .pagination .active > .page-link { background: var(--cs-primary); border-color: var(--cs-primary); color: #fff; }
.cs-themed .progress-bar { background-color: var(--cs-primary); }
.cs-themed .breadcrumb a { color: var(--cs-primary); }

/* پنجره‌ها */
.cs-themed .modal-content { border: 0; border-radius: var(--cs-r-lg); box-shadow: 0 24px 60px rgba(15, 23, 42, .25); overflow: hidden; }
.cs-themed .modal-header, .cs-themed .modal-footer { border-color: var(--cs-line); }
.cs-themed .modal-title { font-weight: 800; color: var(--cs-ink); }

/* لینک‌های متنی در محتوا */
.cs-themed main a:not([class*="btn"]):not(.nav-link):not(.list-group-item):not(.page-link):not(.dropdown-item) { color: var(--cs-primary); }
.cs-themed main a:not([class*="btn"]):not(.nav-link):not(.list-group-item):not(.page-link):not(.dropdown-item):hover { color: var(--cs-primary-hover); text-decoration: underline; }

/* چیدمان */
.cs-themed main .container { padding-block: 1.5rem; }
@media (max-width: 767.98px) {
  .cs-themed main .container { padding-block: 1rem; padding-inline: .875rem; }
  .cs-themed main .py-5 { padding-top: 1.25rem !important; padding-bottom: 1.25rem !important; }
  .cs-themed main .card-body.p-5 { padding: 1.25rem !important; }
  .cs-themed main .card-body { padding: 1rem; }
  .cs-themed main h2 { font-size: 1.3rem; }
  .cs-themed main .btn-group { width: 100%; }
}
.cs-themed .cs-auth-card { max-width: 460px; margin-inline: auto; }

@media (prefers-reduced-motion: reduce) { .cs-themed * { transition-duration: .01ms !important; animation-duration: .01ms !important; } }

/* ───────── جریانِ سبد و تسویه (checkout-flow.css با پالتِ آبیِ جدا) → همان سبزآبیِ سایت ───────── */
.cs-themed .checkout-page-header { border-radius: var(--cs-r-lg); border: 1px solid var(--cs-line); border-inline-start: 4px solid var(--cs-primary); box-shadow: var(--cs-shadow); background: #fff; }
.cs-themed .checkout-page-header:hover { transform: none; box-shadow: var(--cs-shadow); }
.cs-themed .checkout-page-header p { color: var(--cs-muted); }
.cs-themed .checkout-card, .cs-themed .cart-item-card {
  border: 1px solid var(--cs-line); border-radius: var(--cs-r-lg); box-shadow: var(--cs-shadow); background: #fff; overflow: hidden;
}
.cs-themed .checkout-card:hover, .cs-themed .cart-item-card:hover { transform: none; box-shadow: var(--cs-shadow); }
.cs-themed .checkout-card-header { background: var(--cs-primary); border-bottom: 0; color: #fff; }
.cs-themed .checkout-card-header h5, .cs-themed .checkout-card-header h6 { color: #fff; }
.cs-themed .checkout-btn { min-height: var(--cs-tap); border-radius: var(--cs-r); font-weight: 700; display: inline-flex; align-items: center; justify-content: center; gap: .5rem; }
.cs-themed .checkout-btn-primary, .cs-themed .checkout-btn-success { background: #016b75; border-color: #016b75; color: #fff; }
.cs-themed .checkout-btn-primary:hover, .cs-themed .checkout-btn-success:hover { background: #014f57; border-color: #014f57; color: #fff; }
.cs-themed .checkout-btn-danger { background: #b91c1c; border-color: #b91c1c; color: #fff; }
.cs-themed .checkout-btn-danger:hover { background: #991b1b; border-color: #991b1b; }
.cs-themed .checkout-btn-secondary { background: #fff; border: 1px solid var(--cs-line-strong); color: var(--cs-ink); }
.cs-themed .checkout-btn-secondary:hover { background: #f1f5f9; border-color: #94a3b8; color: var(--cs-ink); }
.cs-themed .checkout-btn-outline { background: #fff; border: 1px solid #016b75; color: #016b75; }
.cs-themed .checkout-btn-outline:hover { background: #016b75; color: #fff; }
.cs-themed .checkout-form-control { border: 1px solid var(--cs-line-strong); border-radius: var(--cs-r); min-height: 48px; }
.cs-themed .checkout-form-control:focus { border-color: var(--cs-primary); box-shadow: 0 0 0 4px rgba(1, 107, 117, .18); }
.cs-themed .checkout-form-label { color: var(--cs-ink); font-weight: 700; }
.cs-themed .checkout-form-check { border: 1px solid var(--cs-line-strong); border-radius: var(--cs-r); min-height: var(--cs-tap); }
.cs-themed .checkout-form-check:hover { border-color: var(--cs-primary); background: var(--cs-primary-soft); }
.cs-themed .checkout-form-check.checked { border-color: var(--cs-primary); background: var(--cs-primary-soft); }
.cs-themed .checkout-alert { border-radius: var(--cs-r); border-width: 1px; }
.cs-themed .checkout-alert-success { background: #f0fdf4; border-color: #bbf7d0; color: #14532d; }
.cs-themed .checkout-alert-danger { background: #fef2f2; border-color: #fecaca; color: #7f1d1d; }
.cs-themed .checkout-alert-warning { background: var(--cs-warning-bg); border-color: #ffe08a; color: var(--cs-warning-ink); }
.cs-themed .checkout-alert-info { background: var(--cs-primary-soft); border-color: #b6dfe2; color: #014f57; }
.cs-themed .cart-item-image { border: 1px solid var(--cs-line); border-radius: var(--cs-r); }
.cs-themed .quantity-btn { border-color: var(--cs-primary); color: var(--cs-primary); min-width: var(--cs-tap); min-height: var(--cs-tap); border-radius: var(--cs-r); }
.cs-themed .quantity-btn:hover { background: var(--cs-primary); color: #fff; }
.cs-themed .quantity-display { border: 1px solid var(--cs-line-strong); border-radius: var(--cs-r); min-height: var(--cs-tap); }
.cs-themed .empty-cart, .cs-themed .empty-cart h3, .cs-themed .empty-cart p { color: var(--cs-muted); }
.cs-themed main .card-header.bg-primary { background: var(--cs-primary) !important; color: #fff; }
.cs-themed main .card-header.bg-info { background: #0b5963 !important; color: #fff; }
.cs-themed main .card-header.bg-success { background: #15803d !important; color: #fff; }
.cs-themed .bg-info.bg-opacity-10, .cs-themed .bg-primary.bg-opacity-10 { background-color: var(--cs-primary-soft) !important; }
.cs-themed .list-group-item-action { min-height: var(--cs-tap); display: flex; align-items: center; gap: .5rem; }
/* تیتر داخلِ سرتیترِ رنگی یا .text-white رنگِ سفیدِ خودش را نگه دارد */
.cs-themed main .card-header[class*="bg-"] :is(h1, h2, h3, h4, h5, h6),
.cs-themed main .text-white :is(h1, h2, h3, h4, h5, h6),
.cs-themed main .checkout-card-header :is(h1, h2, h3, h4, h5, h6) { color: inherit; }

/* آبیِ/فیروزه‌ایِ info هم به رنگِ سایت */
.cs-themed .border-info { border-color: #0b5963 !important; }
.cs-themed .text-info { color: #0b5963 !important; }
.cs-themed .btn-info { background: #0b5963; border-color: #0b5963; color: #fff; }
.cs-themed .link-primary, .cs-themed .link-info { color: var(--cs-primary) !important; }
