/* /assets/css/bootstrap.rtl.css */
@charset "UTF-8";
/*!
 * Bootstrap v5.1.0 (https://getbootstrap.com/)
 * Copyright 2011-2021 The Bootstrap Authors
 * Copyright 2011-2021 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
:root {
  --bs-blue: #0d6efd;
  --bs-indigo: #6610f2;
  --bs-purple: #6f42c1;
  --bs-pink: #d63384;
  --bs-red: #dc3545;
  --bs-orange: #fd7e14;
  --bs-yellow: #ffc107;
  --bs-green: #198754;
  --bs-teal: #20c997;
  --bs-cyan: #0dcaf0;
  --bs-white: #fff;
  --bs-gray: #6c757d;
  --bs-gray-dark: #343a40;
  --bs-gray-100: #f8f9fa;
  --bs-gray-200: #e9ecef;
  --bs-gray-300: #dee2e6;
  --bs-gray-400: #ced4da;
  --bs-gray-500: #adb5bd;
  --bs-gray-600: #6c757d;
  --bs-gray-700: #495057;
  --bs-gray-800: #343a40;
  --bs-gray-900: #212529;
  --bs-primary: #0d6efd;
  --bs-secondary: #6c757d;
  --bs-success: #198754;
  --bs-info: #0dcaf0;
  --bs-warning: #ffc107;
  --bs-danger: #dc3545;
  --bs-light: #f8f9fa;
  --bs-dark: #212529;
  --bs-primary-rgb: 13, 110, 253;
  --bs-secondary-rgb: 108, 117, 125;
  --bs-success-rgb: 25, 135, 84;
  --bs-info-rgb: 13, 202, 240;
  --bs-warning-rgb: 255, 193, 7;
  --bs-danger-rgb: 220, 53, 69;
  --bs-light-rgb: 248, 249, 250;
  --bs-dark-rgb: 33, 37, 41;
  --bs-white-rgb: 255, 255, 255;
  --bs-black-rgb: 0, 0, 0;
  --bs-body-rgb: 33, 37, 41;
  --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
  --bs-body-font-family: var(--bs-font-sans-serif);
  --bs-body-font-size: 1rem;
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.5;
  --bs-body-color: #212529;
  --bs-body-bg: #fff;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

@media (prefers-reduced-motion: no-preference) {
  :root {
    scroll-behavior: smooth;
  }
}

body {
  margin: 0;
  font-family: var(--bs-body-font-family);
  font-size: var(--bs-body-font-size);
  font-weight: var(--bs-body-font-weight);
  line-height: var(--bs-body-line-height);
  color: var(--bs-body-color);
  text-align: var(--bs-body-text-align);
  background-color: var(--bs-body-bg);
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

hr {
  margin: 1rem 0;
  color: inherit;
  background-color: currentColor;
  border: 0;
  opacity: 0.25;
}

hr:not([size]) {
  height: 1px;
}

h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-weight: 500;
  line-height: 1.2;
}

h1, .h1 {
  font-size: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  h1, .h1 {
    font-size: 2.5rem;
  }
}

h2, .h2 {
  font-size: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  h2, .h2 {
    font-size: 2rem;
  }
}

h3, .h3 {
  font-size: calc(1.3rem + 0.6vw);
}
@media (min-width: 1200px) {
  h3, .h3 {
    font-size: 1.75rem;
  }
}

h4, .h4 {
  font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  h4, .h4 {
    font-size: 1.5rem;
  }
}

h5, .h5 {
  font-size: 1.25rem;
}

h6, .h6 {
  font-size: 1rem;
}

p {
  margin-top: 0;
  margin-bottom: 1rem;
}

abbr[title],
abbr[data-bs-original-title] {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  cursor: help;
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul {
  padding-right: 2rem;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: 700;
}

dd {
  margin-bottom: 0.5rem;
  margin-right: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small, .small {
  font-size: 0.875em;
}

mark, .mark {
  padding: 0.2em;
  background-color: #fcf8e3;
}

sub,
sup {
  position: relative;
  font-size: 0.75em;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  color: #0d6efd;
  text-decoration: underline;
}
a:hover {
  color: #0a58ca;
}

a:not([href]):not([class]), a:not([href]):not([class]):hover {
  color: inherit;
  text-decoration: none;
}

pre,
code,
kbd,
samp {
  font-family: var(--bs-font-monospace);
  font-size: 1em;
  direction: ltr ;
  unicode-bidi: bidi-override;
}

pre {
  display: block;
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  font-size: 0.875em;
}
pre code {
  font-size: inherit;
  color: inherit;
  word-break: normal;
}

code {
  font-size: 0.875em;
  color: #d63384;
  word-wrap: break-word;
}
a > code {
  color: inherit;
}

kbd {
  padding: 0.2rem 0.4rem;
  font-size: 0.875em;
  color: #fff;
  background-color: #212529;
  border-radius: 0.2rem;
}
kbd kbd {
  padding: 0;
  font-size: 1em;
  font-weight: 700;
}

figure {
  margin: 0 0 1rem;
}

img,
svg {
  vertical-align: middle;
}

table {
  caption-side: bottom;
  border-collapse: collapse;
}

caption {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  color: #6c757d;
  text-align: right;
}

th {
  text-align: inherit;
  text-align: -webkit-match-parent;
}

thead,
tbody,
tfoot,
tr,
td,
th {
  border-color: inherit;
  border-style: solid;
  border-width: 0;
}

label {
  display: inline-block;
}

button {
  border-radius: 0;
}

button:focus:not(:focus-visible) {
  outline: 0;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
select {
  text-transform: none;
}

[role=button] {
  cursor: pointer;
}

select {
  word-wrap: normal;
}
select:disabled {
  opacity: 1;
}

[list]::-webkit-calendar-picker-indicator {
  display: none;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}
button:not(:disabled),
[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled) {
  cursor: pointer;
}

::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

textarea {
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  float: right;
  width: 100%;
  padding: 0;
  margin-bottom: 0.5rem;
  font-size: calc(1.275rem + 0.3vw);
  line-height: inherit;
}
@media (min-width: 1200px) {
  legend {
    font-size: 1.5rem;
  }
}
legend + * {
  clear: right;
}

::-webkit-datetime-edit-fields-wrapper,
::-webkit-datetime-edit-text,
::-webkit-datetime-edit-minute,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-year-field {
  padding: 0;
}

::-webkit-inner-spin-button {
  height: auto;
}

[type=search] {
  outline-offset: -2px;
  -webkit-appearance: textfield;
}

[type="tel"],
[type="url"],
[type="email"],
[type="number"] {
  direction: ltr;
}
::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-color-swatch-wrapper {
  padding: 0;
}

::file-selector-button {
  font: inherit;
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

iframe {
  border: 0;
}

summary {
  display: list-item;
  cursor: pointer;
}

progress {
  vertical-align: baseline;
}

[hidden] {
  display: none !important;
}

.lead {
  font-size: 1.25rem;
  font-weight: 300;
}

.display-1 {
  font-size: calc(1.625rem + 4.5vw);
  font-weight: 300;
  line-height: 1.2;
}
@media (min-width: 1200px) {
  .display-1 {
    font-size: 5rem;
  }
}

.display-2 {
  font-size: calc(1.575rem + 3.9vw);
  font-weight: 300;
  line-height: 1.2;
}
@media (min-width: 1200px) {
  .display-2 {
    font-size: 4.5rem;
  }
}

.display-3 {
  font-size: calc(1.525rem + 3.3vw);
  font-weight: 300;
  line-height: 1.2;
}
@media (min-width: 1200px) {
  .display-3 {
    font-size: 4rem;
  }
}

.display-4 {
  font-size: calc(1.475rem + 2.7vw);
  font-weight: 300;
  line-height: 1.2;
}
@media (min-width: 1200px) {
  .display-4 {
    font-size: 3.5rem;
  }
}

.display-5 {
  font-size: calc(1.425rem + 2.1vw);
  font-weight: 300;
  line-height: 1.2;
}
@media (min-width: 1200px) {
  .display-5 {
    font-size: 3rem;
  }
}

.display-6 {
  font-size: calc(1.375rem + 1.5vw);
  font-weight: 300;
  line-height: 1.2;
}
@media (min-width: 1200px) {
  .display-6 {
    font-size: 2.5rem;
  }
}

.list-unstyled {
  padding-right: 0;
  list-style: none;
}

.list-inline {
  padding-right: 0;
  list-style: none;
}

.list-inline-item {
  display: inline-block;
}
.list-inline-item:not(:last-child) {
  margin-left: 0.5rem;
}

.initialism {
  font-size: 0.875em;
  text-transform: uppercase;
}

.blockquote {
  margin-bottom: 1rem;
  font-size: 1.25rem;
}
.blockquote > :last-child {
  margin-bottom: 0;
}

.blockquote-footer {
  margin-top: -1rem;
  margin-bottom: 1rem;
  font-size: 0.875em;
  color: #6c757d;
}
.blockquote-footer::before {
  content: "— ";
}

.img-fluid {
  max-width: 100%;
  height: auto;
}

.img-thumbnail {
  padding: 0.25rem;
  background-color: #fff;
  border: 1px solid #dee2e6;
  border-radius: 0.25rem;
  max-width: 100%;
  height: auto;
}

.figure {
  display: inline-block;
}

.figure-img {
  margin-bottom: 0.5rem;
  line-height: 1;
}

.figure-caption {
  font-size: 0.875em;
  color: #6c757d;
}

.container,
.container-fluid,
.container-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm {
  width: 100%;
  padding-left: var(--bs-gutter-x, 0.75rem);
  padding-right: var(--bs-gutter-x, 0.75rem);
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 576px) {
  .container-sm, .container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container-md, .container-sm, .container {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container-lg, .container-md, .container-sm, .container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1140px;
  }
}
@media (min-width: 1400px) {
  .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1320px;
  }
}
.row {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(var(--bs-gutter-y) * -1);
  margin-left: calc(var(--bs-gutter-x) * -.5);
  margin-right: calc(var(--bs-gutter-x) * -.5);
}
.row > * {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-left: calc(var(--bs-gutter-x) * .5);
  padding-right: calc(var(--bs-gutter-x) * .5);
  margin-top: var(--bs-gutter-y);
}

.col {
  flex: 1 0 0%;
}

.row-cols-auto > * {
  flex: 0 0 auto;
  width: auto;
}

.row-cols-1 > * {
  flex: 0 0 auto;
  width: 100%;
}

.row-cols-2 > * {
  flex: 0 0 auto;
  width: 50%;
}

.row-cols-3 > * {
  flex: 0 0 auto;
  width: 33.3333333333%;
}

.row-cols-4 > * {
  flex: 0 0 auto;
  width: 25%;
}

.row-cols-5 > * {
  flex: 0 0 auto;
  width: 20%;
}

.row-cols-6 > * {
  flex: 0 0 auto;
  width: 16.6666666667%;
}

.col-auto {
  flex: 0 0 auto;
  width: auto;
}

.col-1 {
  flex: 0 0 auto;
  width: 8.33333333%;
}

.col-2 {
  flex: 0 0 auto;
  width: 16.66666667%;
}

.col-3 {
  flex: 0 0 auto;
  width: 25%;
}

.col-4 {
  flex: 0 0 auto;
  width: 33.33333333%;
}

.col-5 {
  flex: 0 0 auto;
  width: 41.66666667%;
}

.col-6 {
  flex: 0 0 auto;
  width: 50%;
}

.col-7 {
  flex: 0 0 auto;
  width: 58.33333333%;
}

.col-8 {
  flex: 0 0 auto;
  width: 66.66666667%;
}

.col-9 {
  flex: 0 0 auto;
  width: 75%;
}

.col-10 {
  flex: 0 0 auto;
  width: 83.33333333%;
}

.col-11 {
  flex: 0 0 auto;
  width: 91.66666667%;
}

.col-12 {
  flex: 0 0 auto;
  width: 100%;
}

.offset-1 {
  margin-right: 8.33333333%;
}

.offset-2 {
  margin-right: 16.66666667%;
}

.offset-3 {
  margin-right: 25%;
}

.offset-4 {
  margin-right: 33.33333333%;
}

.offset-5 {
  margin-right: 41.66666667%;
}

.offset-6 {
  margin-right: 50%;
}

.offset-7 {
  margin-right: 58.33333333%;
}

.offset-8 {
  margin-right: 66.66666667%;
}

.offset-9 {
  margin-right: 75%;
}

.offset-10 {
  margin-right: 83.33333333%;
}

.offset-11 {
  margin-right: 91.66666667%;
}

.g-0,
.gx-0 {
  --bs-gutter-x: 0;
}

.g-0,
.gy-0 {
  --bs-gutter-y: 0;
}

.g-1,
.gx-1 {
  --bs-gutter-x: 0.25rem;
}

.g-1,
.gy-1 {
  --bs-gutter-y: 0.25rem;
}

.g-2,
.gx-2 {
  --bs-gutter-x: 0.5rem;
}

.g-2,
.gy-2 {
  --bs-gutter-y: 0.5rem;
}

.g-3,
.gx-3 {
  --bs-gutter-x: 1rem;
}

.g-3,
.gy-3 {
  --bs-gutter-y: 1rem;
}

.g-4,
.gx-4 {
  --bs-gutter-x: 1.5rem;
}

.g-4,
.gy-4 {
  --bs-gutter-y: 1.5rem;
}

.g-5,
.gx-5 {
  --bs-gutter-x: 3rem;
}

.g-5,
.gy-5 {
  --bs-gutter-y: 3rem;
}

@media (min-width: 576px) {
  .col-sm {
    flex: 1 0 0%;
  }

  .row-cols-sm-auto > * {
    flex: 0 0 auto;
    width: auto;
  }

  .row-cols-sm-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }

  .row-cols-sm-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }

  .row-cols-sm-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

  .row-cols-sm-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }

  .row-cols-sm-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }

  .row-cols-sm-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
  }

  .col-sm-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }

  .col-sm-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }

  .col-sm-3 {
    flex: 0 0 auto;
    width: 25%;
  }

  .col-sm-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }

  .col-sm-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }

  .col-sm-6 {
    flex: 0 0 auto;
    width: 50%;
  }

  .col-sm-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }

  .col-sm-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }

  .col-sm-9 {
    flex: 0 0 auto;
    width: 75%;
  }

  .col-sm-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }

  .col-sm-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }

  .col-sm-12 {
    flex: 0 0 auto;
    width: 100%;
  }

  .offset-sm-0 {
    margin-right: 0;
  }

  .offset-sm-1 {
    margin-right: 8.33333333%;
  }

  .offset-sm-2 {
    margin-right: 16.66666667%;
  }

  .offset-sm-3 {
    margin-right: 25%;
  }

  .offset-sm-4 {
    margin-right: 33.33333333%;
  }

  .offset-sm-5 {
    margin-right: 41.66666667%;
  }

  .offset-sm-6 {
    margin-right: 50%;
  }

  .offset-sm-7 {
    margin-right: 58.33333333%;
  }

  .offset-sm-8 {
    margin-right: 66.66666667%;
  }

  .offset-sm-9 {
    margin-right: 75%;
  }

  .offset-sm-10 {
    margin-right: 83.33333333%;
  }

  .offset-sm-11 {
    margin-right: 91.66666667%;
  }

  .g-sm-0,
.gx-sm-0 {
    --bs-gutter-x: 0;
  }

  .g-sm-0,
.gy-sm-0 {
    --bs-gutter-y: 0;
  }

  .g-sm-1,
.gx-sm-1 {
    --bs-gutter-x: 0.25rem;
  }

  .g-sm-1,
.gy-sm-1 {
    --bs-gutter-y: 0.25rem;
  }

  .g-sm-2,
.gx-sm-2 {
    --bs-gutter-x: 0.5rem;
  }

  .g-sm-2,
.gy-sm-2 {
    --bs-gutter-y: 0.5rem;
  }

  .g-sm-3,
.gx-sm-3 {
    --bs-gutter-x: 1rem;
  }

  .g-sm-3,
.gy-sm-3 {
    --bs-gutter-y: 1rem;
  }

  .g-sm-4,
.gx-sm-4 {
    --bs-gutter-x: 1.5rem;
  }

  .g-sm-4,
.gy-sm-4 {
    --bs-gutter-y: 1.5rem;
  }

  .g-sm-5,
.gx-sm-5 {
    --bs-gutter-x: 3rem;
  }

  .g-sm-5,
.gy-sm-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 768px) {
  .col-md {
    flex: 1 0 0%;
  }

  .row-cols-md-auto > * {
    flex: 0 0 auto;
    width: auto;
  }

  .row-cols-md-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }

  .row-cols-md-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }

  .row-cols-md-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

  .row-cols-md-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }

  .row-cols-md-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }

  .row-cols-md-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
  }

  .col-md-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }

  .col-md-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }

  .col-md-3 {
    flex: 0 0 auto;
    width: 25%;
  }

  .col-md-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }

  .col-md-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }

  .col-md-6 {
    flex: 0 0 auto;
    width: 50%;
  }

  .col-md-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }

  .col-md-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }

  .col-md-9 {
    flex: 0 0 auto;
    width: 75%;
  }

  .col-md-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }

  .col-md-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }

  .col-md-12 {
    flex: 0 0 auto;
    width: 100%;
  }

  .offset-md-0 {
    margin-right: 0;
  }

  .offset-md-1 {
    margin-right: 8.33333333%;
  }

  .offset-md-2 {
    margin-right: 16.66666667%;
  }

  .offset-md-3 {
    margin-right: 25%;
  }

  .offset-md-4 {
    margin-right: 33.33333333%;
  }

  .offset-md-5 {
    margin-right: 41.66666667%;
  }

  .offset-md-6 {
    margin-right: 50%;
  }

  .offset-md-7 {
    margin-right: 58.33333333%;
  }

  .offset-md-8 {
    margin-right: 66.66666667%;
  }

  .offset-md-9 {
    margin-right: 75%;
  }

  .offset-md-10 {
    margin-right: 83.33333333%;
  }

  .offset-md-11 {
    margin-right: 91.66666667%;
  }

  .g-md-0,
.gx-md-0 {
    --bs-gutter-x: 0;
  }

  .g-md-0,
.gy-md-0 {
    --bs-gutter-y: 0;
  }

  .g-md-1,
.gx-md-1 {
    --bs-gutter-x: 0.25rem;
  }

  .g-md-1,
.gy-md-1 {
    --bs-gutter-y: 0.25rem;
  }

  .g-md-2,
.gx-md-2 {
    --bs-gutter-x: 0.5rem;
  }

  .g-md-2,
.gy-md-2 {
    --bs-gutter-y: 0.5rem;
  }

  .g-md-3,
.gx-md-3 {
    --bs-gutter-x: 1rem;
  }

  .g-md-3,
.gy-md-3 {
    --bs-gutter-y: 1rem;
  }

  .g-md-4,
.gx-md-4 {
    --bs-gutter-x: 1.5rem;
  }

  .g-md-4,
.gy-md-4 {
    --bs-gutter-y: 1.5rem;
  }

  .g-md-5,
.gx-md-5 {
    --bs-gutter-x: 3rem;
  }

  .g-md-5,
.gy-md-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 992px) {
  .col-lg {
    flex: 1 0 0%;
  }

  .row-cols-lg-auto > * {
    flex: 0 0 auto;
    width: auto;
  }

  .row-cols-lg-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }

  .row-cols-lg-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }

  .row-cols-lg-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

  .row-cols-lg-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }

  .row-cols-lg-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }

  .row-cols-lg-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
  }

  .col-lg-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }

  .col-lg-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }

  .col-lg-3 {
    flex: 0 0 auto;
    width: 25%;
  }

  .col-lg-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }

  .col-lg-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }

  .col-lg-6 {
    flex: 0 0 auto;
    width: 50%;
  }

  .col-lg-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }

  .col-lg-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }

  .col-lg-9 {
    flex: 0 0 auto;
    width: 75%;
  }

  .col-lg-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }

  .col-lg-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }

  .col-lg-12 {
    flex: 0 0 auto;
    width: 100%;
  }

  .offset-lg-0 {
    margin-right: 0;
  }

  .offset-lg-1 {
    margin-right: 8.33333333%;
  }

  .offset-lg-2 {
    margin-right: 16.66666667%;
  }

  .offset-lg-3 {
    margin-right: 25%;
  }

  .offset-lg-4 {
    margin-right: 33.33333333%;
  }

  .offset-lg-5 {
    margin-right: 41.66666667%;
  }

  .offset-lg-6 {
    margin-right: 50%;
  }

  .offset-lg-7 {
    margin-right: 58.33333333%;
  }

  .offset-lg-8 {
    margin-right: 66.66666667%;
  }

  .offset-lg-9 {
    margin-right: 75%;
  }

  .offset-lg-10 {
    margin-right: 83.33333333%;
  }

  .offset-lg-11 {
    margin-right: 91.66666667%;
  }

  .g-lg-0,
.gx-lg-0 {
    --bs-gutter-x: 0;
  }

  .g-lg-0,
.gy-lg-0 {
    --bs-gutter-y: 0;
  }

  .g-lg-1,
.gx-lg-1 {
    --bs-gutter-x: 0.25rem;
  }

  .g-lg-1,
.gy-lg-1 {
    --bs-gutter-y: 0.25rem;
  }

  .g-lg-2,
.gx-lg-2 {
    --bs-gutter-x: 0.5rem;
  }

  .g-lg-2,
.gy-lg-2 {
    --bs-gutter-y: 0.5rem;
  }

  .g-lg-3,
.gx-lg-3 {
    --bs-gutter-x: 1rem;
  }

  .g-lg-3,
.gy-lg-3 {
    --bs-gutter-y: 1rem;
  }

  .g-lg-4,
.gx-lg-4 {
    --bs-gutter-x: 1.5rem;
  }

  .g-lg-4,
.gy-lg-4 {
    --bs-gutter-y: 1.5rem;
  }

  .g-lg-5,
.gx-lg-5 {
    --bs-gutter-x: 3rem;
  }

  .g-lg-5,
.gy-lg-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 1200px) {
  .col-xl {
    flex: 1 0 0%;
  }

  .row-cols-xl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }

  .row-cols-xl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }

  .row-cols-xl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }

  .row-cols-xl-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

  .row-cols-xl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }

  .row-cols-xl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }

  .row-cols-xl-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
  }

  .col-xl-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }

  .col-xl-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }

  .col-xl-3 {
    flex: 0 0 auto;
    width: 25%;
  }

  .col-xl-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }

  .col-xl-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }

  .col-xl-6 {
    flex: 0 0 auto;
    width: 50%;
  }

  .col-xl-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }

  .col-xl-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }

  .col-xl-9 {
    flex: 0 0 auto;
    width: 75%;
  }

  .col-xl-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }

  .col-xl-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }

  .col-xl-12 {
    flex: 0 0 auto;
    width: 100%;
  }

  .offset-xl-0 {
    margin-right: 0;
  }

  .offset-xl-1 {
    margin-right: 8.33333333%;
  }

  .offset-xl-2 {
    margin-right: 16.66666667%;
  }

  .offset-xl-3 {
    margin-right: 25%;
  }

  .offset-xl-4 {
    margin-right: 33.33333333%;
  }

  .offset-xl-5 {
    margin-right: 41.66666667%;
  }

  .offset-xl-6 {
    margin-right: 50%;
  }

  .offset-xl-7 {
    margin-right: 58.33333333%;
  }

  .offset-xl-8 {
    margin-right: 66.66666667%;
  }

  .offset-xl-9 {
    margin-right: 75%;
  }

  .offset-xl-10 {
    margin-right: 83.33333333%;
  }

  .offset-xl-11 {
    margin-right: 91.66666667%;
  }

  .g-xl-0,
.gx-xl-0 {
    --bs-gutter-x: 0;
  }

  .g-xl-0,
.gy-xl-0 {
    --bs-gutter-y: 0;
  }

  .g-xl-1,
.gx-xl-1 {
    --bs-gutter-x: 0.25rem;
  }

  .g-xl-1,
.gy-xl-1 {
    --bs-gutter-y: 0.25rem;
  }

  .g-xl-2,
.gx-xl-2 {
    --bs-gutter-x: 0.5rem;
  }

  .g-xl-2,
.gy-xl-2 {
    --bs-gutter-y: 0.5rem;
  }

  .g-xl-3,
.gx-xl-3 {
    --bs-gutter-x: 1rem;
  }

  .g-xl-3,
.gy-xl-3 {
    --bs-gutter-y: 1rem;
  }

  .g-xl-4,
.gx-xl-4 {
    --bs-gutter-x: 1.5rem;
  }

  .g-xl-4,
.gy-xl-4 {
    --bs-gutter-y: 1.5rem;
  }

  .g-xl-5,
.gx-xl-5 {
    --bs-gutter-x: 3rem;
  }

  .g-xl-5,
.gy-xl-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 1400px) {
  .col-xxl {
    flex: 1 0 0%;
  }

  .row-cols-xxl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }

  .row-cols-xxl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }

  .row-cols-xxl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }

  .row-cols-xxl-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

  .row-cols-xxl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }

  .row-cols-xxl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }

  .row-cols-xxl-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-xxl-auto {
    flex: 0 0 auto;
    width: auto;
  }

  .col-xxl-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }

  .col-xxl-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }

  .col-xxl-3 {
    flex: 0 0 auto;
    width: 25%;
  }

  .col-xxl-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }

  .col-xxl-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }

  .col-xxl-6 {
    flex: 0 0 auto;
    width: 50%;
  }

  .col-xxl-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }

  .col-xxl-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }

  .col-xxl-9 {
    flex: 0 0 auto;
    width: 75%;
  }

  .col-xxl-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }

  .col-xxl-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }

  .col-xxl-12 {
    flex: 0 0 auto;
    width: 100%;
  }

  .offset-xxl-0 {
    margin-right: 0;
  }

  .offset-xxl-1 {
    margin-right: 8.33333333%;
  }

  .offset-xxl-2 {
    margin-right: 16.66666667%;
  }

  .offset-xxl-3 {
    margin-right: 25%;
  }

  .offset-xxl-4 {
    margin-right: 33.33333333%;
  }

  .offset-xxl-5 {
    margin-right: 41.66666667%;
  }

  .offset-xxl-6 {
    margin-right: 50%;
  }

  .offset-xxl-7 {
    margin-right: 58.33333333%;
  }

  .offset-xxl-8 {
    margin-right: 66.66666667%;
  }

  .offset-xxl-9 {
    margin-right: 75%;
  }

  .offset-xxl-10 {
    margin-right: 83.33333333%;
  }

  .offset-xxl-11 {
    margin-right: 91.66666667%;
  }

  .g-xxl-0,
.gx-xxl-0 {
    --bs-gutter-x: 0;
  }

  .g-xxl-0,
.gy-xxl-0 {
    --bs-gutter-y: 0;
  }

  .g-xxl-1,
.gx-xxl-1 {
    --bs-gutter-x: 0.25rem;
  }

  .g-xxl-1,
.gy-xxl-1 {
    --bs-gutter-y: 0.25rem;
  }

  .g-xxl-2,
.gx-xxl-2 {
    --bs-gutter-x: 0.5rem;
  }

  .g-xxl-2,
.gy-xxl-2 {
    --bs-gutter-y: 0.5rem;
  }

  .g-xxl-3,
.gx-xxl-3 {
    --bs-gutter-x: 1rem;
  }

  .g-xxl-3,
.gy-xxl-3 {
    --bs-gutter-y: 1rem;
  }

  .g-xxl-4,
.gx-xxl-4 {
    --bs-gutter-x: 1.5rem;
  }

  .g-xxl-4,
.gy-xxl-4 {
    --bs-gutter-y: 1.5rem;
  }

  .g-xxl-5,
.gx-xxl-5 {
    --bs-gutter-x: 3rem;
  }

  .g-xxl-5,
.gy-xxl-5 {
    --bs-gutter-y: 3rem;
  }
}
.table {
  --bs-table-bg: transparent;
  --bs-table-accent-bg: transparent;
  --bs-table-striped-color: #212529;
  --bs-table-striped-bg: rgba(0, 0, 0, 0.05);
  --bs-table-active-color: #212529;
  --bs-table-active-bg: rgba(0, 0, 0, 0.1);
  --bs-table-hover-color: #212529;
  --bs-table-hover-bg: rgba(0, 0, 0, 0.075);
  width: 100%;
  margin-bottom: 1rem;
  color: #212529;
  vertical-align: top;
  border-color: #dee2e6;
}
.table > :not(caption) > * > * {
  padding: 0.5rem 0.5rem;
  background-color: var(--bs-table-bg);
  border-bottom-width: 1px;
  box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg);
}
.table > tbody {
  vertical-align: inherit;
}
.table > thead {
  vertical-align: bottom;
}
.table > :not(:last-child) > :last-child > * {
  border-bottom-color: currentColor;
}

.caption-top {
  caption-side: top;
}

.table-sm > :not(caption) > * > * {
  padding: 0.25rem 0.25rem;
}

.table-bordered > :not(caption) > * {
  border-width: 1px 0;
}
.table-bordered > :not(caption) > * > * {
  border-width: 0 1px;
}

.table-borderless > :not(caption) > * > * {
  border-bottom-width: 0;
}

.table-striped > tbody > tr:nth-of-type(odd) {
  --bs-table-accent-bg: var(--bs-table-striped-bg);
  color: var(--bs-table-striped-color);
}

.table-active {
  --bs-table-accent-bg: var(--bs-table-active-bg);
  color: var(--bs-table-active-color);
}

.table-hover > tbody > tr:hover {
  --bs-table-accent-bg: var(--bs-table-hover-bg);
  color: var(--bs-table-hover-color);
}

.table-primary {
  --bs-table-bg: #cfe2ff;
  --bs-table-striped-bg: #c5d7f2;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #bacbe6;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #bfd1ec;
  --bs-table-hover-color: #000;
  color: #000;
  border-color: #bacbe6;
}

.table-secondary {
  --bs-table-bg: #e2e3e5;
  --bs-table-striped-bg: #d7d8da;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #cbccce;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #d1d2d4;
  --bs-table-hover-color: #000;
  color: #000;
  border-color: #cbccce;
}

.table-success {
  --bs-table-bg: #d1e7dd;
  --bs-table-striped-bg: #c7dbd2;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #bcd0c7;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #c1d6cc;
  --bs-table-hover-color: #000;
  color: #000;
  border-color: #bcd0c7;
}

.table-info {
  --bs-table-bg: #cff4fc;
  --bs-table-striped-bg: #c5e8ef;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #badce3;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #bfe2e9;
  --bs-table-hover-color: #000;
  color: #000;
  border-color: #badce3;
}

.table-warning {
  --bs-table-bg: #fff3cd;
  --bs-table-striped-bg: #f2e7c3;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #e6dbb9;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #ece1be;
  --bs-table-hover-color: #000;
  color: #000;
  border-color: #e6dbb9;
}

.table-danger {
  --bs-table-bg: #f8d7da;
  --bs-table-striped-bg: #eccccf;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #dfc2c4;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #e5c7ca;
  --bs-table-hover-color: #000;
  color: #000;
  border-color: #dfc2c4;
}

.table-light {
  --bs-table-bg: #f8f9fa;
  --bs-table-striped-bg: #ecedee;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #dfe0e1;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #e5e6e7;
  --bs-table-hover-color: #000;
  color: #000;
  border-color: #dfe0e1;
}

.table-dark {
  --bs-table-bg: #212529;
  --bs-table-striped-bg: #2c3034;
  --bs-table-striped-color: #fff;
  --bs-table-active-bg: #373b3e;
  --bs-table-active-color: #fff;
  --bs-table-hover-bg: #323539;
  --bs-table-hover-color: #fff;
  color: #fff;
  border-color: #373b3e;
}

.table-responsive {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

@media (max-width: 575.98px) {
  .table-responsive-sm {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 767.98px) {
  .table-responsive-md {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 991.98px) {
  .table-responsive-lg {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 1199.98px) {
  .table-responsive-xl {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 1399.98px) {
  .table-responsive-xxl {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
.form-label {
  margin-bottom: 0.5rem;
}

.col-form-label {
  padding-top: calc(0.375rem + 1px);
  padding-bottom: calc(0.375rem + 1px);
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.5;
}

.col-form-label-lg {
  padding-top: calc(0.5rem + 1px);
  padding-bottom: calc(0.5rem + 1px);
  font-size: 1.25rem;
}

.col-form-label-sm {
  padding-top: calc(0.25rem + 1px);
  padding-bottom: calc(0.25rem + 1px);
  font-size: 0.875rem;
}

.form-text {
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: #6c757d;
}

.form-control {
  display: block;
  width: 100%;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control {
    transition: none;
  }
}
.form-control[type=file] {
  overflow: hidden;
}
.form-control[type=file]:not(:disabled):not([readonly]) {
  cursor: pointer;
}
.form-control:focus {
  color: #212529;
  background-color: #fff;
  border-color: #86b7fe;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-control::-webkit-date-and-time-value {
  height: 1.5em;
}
.form-control::-moz-placeholder {
  color: #6c757d;
  opacity: 1;
}
.form-control::placeholder {
  color: #6c757d;
  opacity: 1;
}
.form-control:disabled, .form-control[readonly] {
  background-color: #e9ecef;
  opacity: 1;
}
.form-control::file-selector-button {
  padding: 0.375rem 0.75rem;
  margin: -0.375rem -0.75rem;
  -webkit-margin-end: 0.75rem;
  margin-inline-end: 0.75rem;
  color: #212529;
  background-color: #e9ecef;
  pointer-events: none;
  border-color: inherit;
  border-style: solid;
  border-width: 0;
  border-inline-end-width: 1px;
  border-radius: 0;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control::file-selector-button {
    transition: none;
  }
}
.form-control:hover:not(:disabled):not([readonly])::file-selector-button {
  background-color: #dde0e3;
}
.form-control::-webkit-file-upload-button {
  padding: 0.375rem 0.75rem;
  margin: -0.375rem -0.75rem;
  -webkit-margin-end: 0.75rem;
  margin-inline-end: 0.75rem;
  color: #212529;
  background-color: #e9ecef;
  pointer-events: none;
  border-color: inherit;
  border-style: solid;
  border-width: 0;
  border-inline-end-width: 1px;
  border-radius: 0;
  -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control::-webkit-file-upload-button {
    -webkit-transition: none;
    transition: none;
  }
}
.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {
  background-color: #dde0e3;
}

.form-control-plaintext {
  display: block;
  width: 100%;
  padding: 0.375rem 0;
  margin-bottom: 0;
  line-height: 1.5;
  color: #212529;
  background-color: transparent;
  border: solid transparent;
  border-width: 1px 0;
}
.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
  padding-left: 0;
  padding-right: 0;
}

.form-control-sm {
  min-height: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  border-radius: 0.2rem;
}
.form-control-sm::file-selector-button {
  padding: 0.25rem 0.5rem;
  margin: -0.25rem -0.5rem;
  -webkit-margin-end: 0.5rem;
  margin-inline-end: 0.5rem;
}
.form-control-sm::-webkit-file-upload-button {
  padding: 0.25rem 0.5rem;
  margin: -0.25rem -0.5rem;
  -webkit-margin-end: 0.5rem;
  margin-inline-end: 0.5rem;
}

.form-control-lg {
  min-height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  border-radius: 0.3rem;
}
.form-control-lg::file-selector-button {
  padding: 0.5rem 1rem;
  margin: -0.5rem -1rem;
  -webkit-margin-end: 1rem;
  margin-inline-end: 1rem;
}
.form-control-lg::-webkit-file-upload-button {
  padding: 0.5rem 1rem;
  margin: -0.5rem -1rem;
  -webkit-margin-end: 1rem;
  margin-inline-end: 1rem;
}

textarea.form-control {
  min-height: calc(1.5em + 0.75rem + 2px);
}
textarea.form-control-sm {
  min-height: calc(1.5em + 0.5rem + 2px);
}
textarea.form-control-lg {
  min-height: calc(1.5em + 1rem + 2px);
}

.form-control-color {
  width: 3rem;
  height: auto;
  padding: 0.375rem;
}
.form-control-color:not(:disabled):not([readonly]) {
  cursor: pointer;
}
.form-control-color::-moz-color-swatch {
  height: 1.5em;
  border-radius: 0.25rem;
}
.form-control-color::-webkit-color-swatch {
  height: 1.5em;
  border-radius: 0.25rem;
}

.form-select {
  display: block;
  width: 100%;
  padding: 0.375rem 0.75rem 0.375rem 2.25rem;
  -moz-padding-start: calc(0.75rem - 3px);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: left 0.75rem center;
  background-size: 16px 12px;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
@media (prefers-reduced-motion: reduce) {
  .form-select {
    transition: none;
  }
}
.form-select:focus {
  border-color: #86b7fe;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-select[multiple], .form-select[size]:not([size="1"]) {
  padding-left: 0.75rem;
  background-image: none;
}
.form-select:disabled {
  background-color: #e9ecef;
}
.form-select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #212529;
}

.form-select-sm {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-right: 0.5rem;
  font-size: 0.875rem;
}

.form-select-lg {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-right: 1rem;
  font-size: 1.25rem;
}

.form-check {
  display: block;
  min-height: 1.5rem;
  padding-right: 1.5em;
  margin-bottom: 0.125rem;
}
.form-check .form-check-input {
  float: right;
  margin-right: -1.5em;
}

.form-check-input {
  width: 1em;
  height: 1em;
  margin-top: 0.25em;
  vertical-align: top;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  border: 1px solid rgba(0, 0, 0, 0.25);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-print-color-adjust: exact;
  color-adjust: exact;
}
.form-check-input[type=checkbox] {
  border-radius: 0.25em;
}
.form-check-input[type=radio] {
  border-radius: 50%;
}
.form-check-input:active {
  filter: brightness(90%);
}
.form-check-input:focus {
  border-color: #86b7fe;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-check-input:checked {
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.form-check-input:checked[type=checkbox] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
}
.form-check-input:checked[type=radio] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e");
}
.form-check-input[type=checkbox]:indeterminate {
  background-color: #0d6efd;
  border-color: #0d6efd;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e");
}
.form-check-input:disabled {
  pointer-events: none;
  filter: none;
  opacity: 0.5;
}
.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
  opacity: 0.5;
}

.form-switch {
  padding-right: 2.5em;
}
.form-switch .form-check-input {
  width: 2em;
  margin-right: -2.5em;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");
  background-position: right center;
  border-radius: 2em;
  transition: background-position 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-switch .form-check-input {
    transition: none;
  }
}
.form-switch .form-check-input:focus {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e");
}
.form-switch .form-check-input:checked {
  background-position: left center;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}

.form-check-inline {
  display: inline-block;
  margin-left: 1rem;
}

.btn-check {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}
.btn-check[disabled] + .btn, .btn-check:disabled + .btn {
  pointer-events: none;
  filter: none;
  opacity: 0.65;
}

.form-range {
  width: 100%;
  height: 1.5rem;
  padding: 0;
  background-color: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.form-range:focus {
  outline: 0;
}
.form-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-range::-moz-focus-outer {
  border: 0;
}
.form-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  background-color: #0d6efd;
  border: 0;
  border-radius: 1rem;
  -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -webkit-appearance: none;
  appearance: none;
}
@media (prefers-reduced-motion: reduce) {
  .form-range::-webkit-slider-thumb {
    -webkit-transition: none;
    transition: none;
  }
}
.form-range::-webkit-slider-thumb:active {
  background-color: #b6d4fe;
}
.form-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}
.form-range::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  background-color: #0d6efd;
  border: 0;
  border-radius: 1rem;
  -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -moz-appearance: none;
  appearance: none;
}
@media (prefers-reduced-motion: reduce) {
  .form-range::-moz-range-thumb {
    -moz-transition: none;
    transition: none;
  }
}
.form-range::-moz-range-thumb:active {
  background-color: #b6d4fe;
}
.form-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}
.form-range:disabled {
  pointer-events: none;
}
.form-range:disabled::-webkit-slider-thumb {
  background-color: #adb5bd;
}
.form-range:disabled::-moz-range-thumb {
  background-color: #adb5bd;
}

.form-floating {
  position: relative;
}
.form-floating > .form-control,
.form-floating > .form-select {
  height: calc(3.5rem + 2px);
  line-height: 1.25;
}
.form-floating > label {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  padding: 1rem 0.75rem;
  pointer-events: none;
  border: 1px solid transparent;
  transform-origin: 100% 0;
  transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-floating > label {
    transition: none;
  }
}
.form-floating > .form-control {
  padding: 1rem 0.75rem;
}
.form-floating > .form-control::-moz-placeholder {
  color: transparent;
}
.form-floating > .form-control::placeholder {
  color: transparent;
}
.form-floating > .form-control:not(:-moz-placeholder-shown) {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown) {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-control:-webkit-autofill {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-select {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label {
  opacity: 0.65;
  transform: scale(0.85) translateY(-0.5rem) translateX(-0.15rem);
}
.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label,
.form-floating > .form-select ~ label {
  opacity: 0.65;
  transform: scale(0.85) translateY(-0.5rem) translateX(-0.15rem);
}
.form-floating > .form-control:-webkit-autofill ~ label {
  opacity: 0.65;
  transform: scale(0.85) translateY(-0.5rem) translateX(-0.15rem);
}

.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
}
.input-group > .form-control,
.input-group > .form-select {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  min-width: 0;
}
.input-group > .form-control:focus,
.input-group > .form-select:focus {
  z-index: 3;
}
.input-group .btn {
  position: relative;
  z-index: 2;
}
.input-group .btn:focus {
  z-index: 3;
}

.input-group-text {
  display: flex;
  align-items: center;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: center;
  white-space: nowrap;
  background-color: #e9ecef;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}

.input-group-lg > .form-control,
.input-group-lg > .form-select,
.input-group-lg > .input-group-text,
.input-group-lg > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  border-radius: 0.3rem;
}

.input-group-sm > .form-control,
.input-group-sm > .form-select,
.input-group-sm > .input-group-text,
.input-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  border-radius: 0.2rem;
}

.input-group-lg > .form-select,
.input-group-sm > .form-select {
  padding-left: 3rem;
}

.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu),
.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu),
.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
  margin-right: -1px;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: #198754;
}

.valid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.875rem;
  color: #fff;
  background-color: rgba(25, 135, 84, 0.9);
  border-radius: 0.25rem;
}

.was-validated :valid ~ .valid-feedback,
.was-validated :valid ~ .valid-tooltip,
.is-valid ~ .valid-feedback,
.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .form-control:valid, .form-control.is-valid {
  border-color: #198754;
  padding-left: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: left calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-control:valid:focus, .form-control.is-valid:focus {
  border-color: #198754;
  box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
}

.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
  padding-left: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) left calc(0.375em + 0.1875rem);
}

.was-validated .form-select:valid, .form-select.is-valid {
  border-color: #198754;
}
.was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size="1"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size="1"] {
  padding-left: 4.125rem;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-position: left 0.75rem center, center left 2.25rem;
  background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-select:valid:focus, .form-select.is-valid:focus {
  border-color: #198754;
  box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
}

.was-validated .form-check-input:valid, .form-check-input.is-valid {
  border-color: #198754;
}
.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked {
  background-color: #198754;
}
.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus {
  box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
}
.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #198754;
}

.form-check-inline .form-check-input ~ .valid-feedback {
  margin-right: 0.5em;
}

.was-validated .input-group .form-control:valid, .input-group .form-control.is-valid,
.was-validated .input-group .form-select:valid,
.input-group .form-select.is-valid {
  z-index: 1;
}
.was-validated .input-group .form-control:valid:focus, .input-group .form-control.is-valid:focus,
.was-validated .input-group .form-select:valid:focus,
.input-group .form-select.is-valid:focus {
  z-index: 3;
}

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: #dc3545;
}

.invalid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.875rem;
  color: #fff;
  background-color: rgba(220, 53, 69, 0.9);
  border-radius: 0.25rem;
}

.was-validated :invalid ~ .invalid-feedback,
.was-validated :invalid ~ .invalid-tooltip,
.is-invalid ~ .invalid-feedback,
.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: #dc3545;
  padding-left: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: left calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25);
}

.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
  padding-left: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) left calc(0.375em + 0.1875rem);
}

.was-validated .form-select:invalid, .form-select.is-invalid {
  border-color: #dc3545;
}
.was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size="1"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size="1"] {
  padding-left: 4.125rem;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  background-position: left 0.75rem center, center left 2.25rem;
  background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-select:invalid:focus, .form-select.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25);
}

.was-validated .form-check-input:invalid, .form-check-input.is-invalid {
  border-color: #dc3545;
}
.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked {
  background-color: #dc3545;
}
.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus {
  box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25);
}
.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #dc3545;
}

.form-check-inline .form-check-input ~ .invalid-feedback {
  margin-right: 0.5em;
}

.was-validated .input-group .form-control:invalid, .input-group .form-control.is-invalid,
.was-validated .input-group .form-select:invalid,
.input-group .form-select.is-invalid {
  z-index: 2;
}
.was-validated .input-group .form-control:invalid:focus, .input-group .form-control.is-invalid:focus,
.was-validated .input-group .form-select:invalid:focus,
.input-group .form-select.is-invalid:focus {
  z-index: 3;
}

.btn {
  display: inline-block;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .btn {
    transition: none;
  }
}
.btn:hover {
  color: #212529;
}
.btn-check:focus + .btn, .btn:focus {
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.btn:disabled, .btn.disabled, fieldset:disabled .btn {
  pointer-events: none;
  opacity: 0.65;
}

.btn-primary {
  color: #fff;
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.btn-primary:hover {
  color: #fff;
  background-color: #0b5ed7;
  border-color: #0a58ca;
}
.btn-check:focus + .btn-primary, .btn-primary:focus {
  color: #fff;
  background-color: #0b5ed7;
  border-color: #0a58ca;
  box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);
}
.btn-check:checked + .btn-primary, .btn-check:active + .btn-primary, .btn-primary:active, .btn-primary.active, .show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #0a58ca;
  border-color: #0a53be;
}
.btn-check:checked + .btn-primary:focus, .btn-check:active + .btn-primary:focus, .btn-primary:active:focus, .btn-primary.active:focus, .show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);
}
.btn-primary:disabled, .btn-primary.disabled {
  color: #fff;
  background-color: #0d6efd;
  border-color: #0d6efd;
}

.btn-secondary {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}
.btn-secondary:hover {
  color: #fff;
  background-color: #5c636a;
  border-color: #565e64;
}
.btn-check:focus + .btn-secondary, .btn-secondary:focus {
  color: #fff;
  background-color: #5c636a;
  border-color: #565e64;
  box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5);
}
.btn-check:checked + .btn-secondary, .btn-check:active + .btn-secondary, .btn-secondary:active, .btn-secondary.active, .show > .btn-secondary.dropdown-toggle {
  color: #fff;
  background-color: #565e64;
  border-color: #51585e;
}
.btn-check:checked + .btn-secondary:focus, .btn-check:active + .btn-secondary:focus, .btn-secondary:active:focus, .btn-secondary.active:focus, .show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5);
}
.btn-secondary:disabled, .btn-secondary.disabled {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-success {
  color: #fff;
  background-color: #198754;
  border-color: #198754;
}
.btn-success:hover {
  color: #fff;
  background-color: #157347;
  border-color: #146c43;
}
.btn-check:focus + .btn-success, .btn-success:focus {
  color: #fff;
  background-color: #157347;
  border-color: #146c43;
  box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.5);
}
.btn-check:checked + .btn-success, .btn-check:active + .btn-success, .btn-success:active, .btn-success.active, .show > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #146c43;
  border-color: #13653f;
}
.btn-check:checked + .btn-success:focus, .btn-check:active + .btn-success:focus, .btn-success:active:focus, .btn-success.active:focus, .show > .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.5);
}
.btn-success:disabled, .btn-success.disabled {
  color: #fff;
  background-color: #198754;
  border-color: #198754;
}

.btn-info {
  color: #000;
  background-color: #0dcaf0;
  border-color: #0dcaf0;
}
.btn-info:hover {
  color: #000;
  background-color: #31d2f2;
  border-color: #25cff2;
}
.btn-check:focus + .btn-info, .btn-info:focus {
  color: #000;
  background-color: #31d2f2;
  border-color: #25cff2;
  box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5);
}
.btn-check:checked + .btn-info, .btn-check:active + .btn-info, .btn-info:active, .btn-info.active, .show > .btn-info.dropdown-toggle {
  color: #000;
  background-color: #3dd5f3;
  border-color: #25cff2;
}
.btn-check:checked + .btn-info:focus, .btn-check:active + .btn-info:focus, .btn-info:active:focus, .btn-info.active:focus, .show > .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5);
}
.btn-info:disabled, .btn-info.disabled {
  color: #000;
  background-color: #0dcaf0;
  border-color: #0dcaf0;
}

.btn-warning {
  color: #000;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-warning:hover {
  color: #000;
  background-color: #ffca2c;
  border-color: #ffc720;
}
.btn-check:focus + .btn-warning, .btn-warning:focus {
  color: #000;
  background-color: #ffca2c;
  border-color: #ffc720;
  box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5);
}
.btn-check:checked + .btn-warning, .btn-check:active + .btn-warning, .btn-warning:active, .btn-warning.active, .show > .btn-warning.dropdown-toggle {
  color: #000;
  background-color: #ffcd39;
  border-color: #ffc720;
}
.btn-check:checked + .btn-warning:focus, .btn-check:active + .btn-warning:focus, .btn-warning:active:focus, .btn-warning.active:focus, .show > .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5);
}
.btn-warning:disabled, .btn-warning.disabled {
  color: #000;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-danger {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}
.btn-danger:hover {
  color: #fff;
  background-color: #bb2d3b;
  border-color: #b02a37;
}
.btn-check:focus + .btn-danger, .btn-danger:focus {
  color: #fff;
  background-color: #bb2d3b;
  border-color: #b02a37;
  box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.5);
}
.btn-check:checked + .btn-danger, .btn-check:active + .btn-danger, .btn-danger:active, .btn-danger.active, .show > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #b02a37;
  border-color: #a52834;
}
.btn-check:checked + .btn-danger:focus, .btn-check:active + .btn-danger:focus, .btn-danger:active:focus, .btn-danger.active:focus, .show > .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.5);
}
.btn-danger:disabled, .btn-danger.disabled {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-light {
  color: #000;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-light:hover {
  color: #000;
  background-color: #f9fafb;
  border-color: #f9fafb;
}
.btn-check:focus + .btn-light, .btn-light:focus {
  color: #000;
  background-color: #f9fafb;
  border-color: #f9fafb;
  box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5);
}
.btn-check:checked + .btn-light, .btn-check:active + .btn-light, .btn-light:active, .btn-light.active, .show > .btn-light.dropdown-toggle {
  color: #000;
  background-color: #f9fafb;
  border-color: #f9fafb;
}
.btn-check:checked + .btn-light:focus, .btn-check:active + .btn-light:focus, .btn-light:active:focus, .btn-light.active:focus, .show > .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5);
}
.btn-light:disabled, .btn-light.disabled {
  color: #000;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-dark {
  color: #fff;
  background-color: #212529;
  border-color: #212529;
}
.btn-dark:hover {
  color: #fff;
  background-color: #1c1f23;
  border-color: #1a1e21;
}
.btn-check:focus + .btn-dark, .btn-dark:focus {
  color: #fff;
  background-color: #1c1f23;
  border-color: #1a1e21;
  box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5);
}
.btn-check:checked + .btn-dark, .btn-check:active + .btn-dark, .btn-dark:active, .btn-dark.active, .show > .btn-dark.dropdown-toggle {
  color: #fff;
  background-color: #1a1e21;
  border-color: #191c1f;
}
.btn-check:checked + .btn-dark:focus, .btn-check:active + .btn-dark:focus, .btn-dark:active:focus, .btn-dark.active:focus, .show > .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5);
}
.btn-dark:disabled, .btn-dark.disabled {
  color: #fff;
  background-color: #212529;
  border-color: #212529;
}

.btn-outline-primary {
  color: #0d6efd;
  border-color: #0d6efd;
}
.btn-outline-primary:hover {
  color: #fff;
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.btn-check:focus + .btn-outline-primary, .btn-outline-primary:focus {
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5);
}
.btn-check:checked + .btn-outline-primary, .btn-check:active + .btn-outline-primary, .btn-outline-primary:active, .btn-outline-primary.active, .btn-outline-primary.dropdown-toggle.show {
  color: #fff;
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.btn-check:checked + .btn-outline-primary:focus, .btn-check:active + .btn-outline-primary:focus, .btn-outline-primary:active:focus, .btn-outline-primary.active:focus, .btn-outline-primary.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5);
}
.btn-outline-primary:disabled, .btn-outline-primary.disabled {
  color: #0d6efd;
  background-color: transparent;
}

.btn-outline-secondary {
  color: #6c757d;
  border-color: #6c757d;
}
.btn-outline-secondary:hover {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}
.btn-check:focus + .btn-outline-secondary, .btn-outline-secondary:focus {
  box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5);
}
.btn-check:checked + .btn-outline-secondary, .btn-check:active + .btn-outline-secondary, .btn-outline-secondary:active, .btn-outline-secondary.active, .btn-outline-secondary.dropdown-toggle.show {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}
.btn-check:checked + .btn-outline-secondary:focus, .btn-check:active + .btn-outline-secondary:focus, .btn-outline-secondary:active:focus, .btn-outline-secondary.active:focus, .btn-outline-secondary.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5);
}
.btn-outline-secondary:disabled, .btn-outline-secondary.disabled {
  color: #6c757d;
  background-color: transparent;
}

.btn-outline-success {
  color: #198754;
  border-color: #198754;
}
.btn-outline-success:hover {
  color: #fff;
  background-color: #198754;
  border-color: #198754;
}
.btn-check:focus + .btn-outline-success, .btn-outline-success:focus {
  box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.5);
}
.btn-check:checked + .btn-outline-success, .btn-check:active + .btn-outline-success, .btn-outline-success:active, .btn-outline-success.active, .btn-outline-success.dropdown-toggle.show {
  color: #fff;
  background-color: #198754;
  border-color: #198754;
}
.btn-check:checked + .btn-outline-success:focus, .btn-check:active + .btn-outline-success:focus, .btn-outline-success:active:focus, .btn-outline-success.active:focus, .btn-outline-success.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.5);
}
.btn-outline-success:disabled, .btn-outline-success.disabled {
  color: #198754;
  background-color: transparent;
}

.btn-outline-info {
  color: #0dcaf0;
  border-color: #0dcaf0;
}
.btn-outline-info:hover {
  color: #000;
  background-color: #0dcaf0;
  border-color: #0dcaf0;
}
.btn-check:focus + .btn-outline-info, .btn-outline-info:focus {
  box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.5);
}
.btn-check:checked + .btn-outline-info, .btn-check:active + .btn-outline-info, .btn-outline-info:active, .btn-outline-info.active, .btn-outline-info.dropdown-toggle.show {
  color: #000;
  background-color: #0dcaf0;
  border-color: #0dcaf0;
}
.btn-check:checked + .btn-outline-info:focus, .btn-check:active + .btn-outline-info:focus, .btn-outline-info:active:focus, .btn-outline-info.active:focus, .btn-outline-info.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.5);
}
.btn-outline-info:disabled, .btn-outline-info.disabled {
  color: #0dcaf0;
  background-color: transparent;
}

.btn-outline-warning {
  color: #ffc107;
  border-color: #ffc107;
}
.btn-outline-warning:hover {
  color: #000;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-check:focus + .btn-outline-warning, .btn-outline-warning:focus {
  box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.5);
}
.btn-check:checked + .btn-outline-warning, .btn-check:active + .btn-outline-warning, .btn-outline-warning:active, .btn-outline-warning.active, .btn-outline-warning.dropdown-toggle.show {
  color: #000;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-check:checked + .btn-outline-warning:focus, .btn-check:active + .btn-outline-warning:focus, .btn-outline-warning:active:focus, .btn-outline-warning.active:focus, .btn-outline-warning.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.5);
}
.btn-outline-warning:disabled, .btn-outline-warning.disabled {
  color: #ffc107;
  background-color: transparent;
}

.btn-outline-danger {
  color: #dc3545;
  border-color: #dc3545;
}
.btn-outline-danger:hover {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}
.btn-check:focus + .btn-outline-danger, .btn-outline-danger:focus {
  box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.5);
}
.btn-check:checked + .btn-outline-danger, .btn-check:active + .btn-outline-danger, .btn-outline-danger:active, .btn-outline-danger.active, .btn-outline-danger.dropdown-toggle.show {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}
.btn-check:checked + .btn-outline-danger:focus, .btn-check:active + .btn-outline-danger:focus, .btn-outline-danger:active:focus, .btn-outline-danger.active:focus, .btn-outline-danger.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.5);
}
.btn-outline-danger:disabled, .btn-outline-danger.disabled {
  color: #dc3545;
  background-color: transparent;
}

.btn-outline-light {
  color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-outline-light:hover {
  color: #000;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-check:focus + .btn-outline-light, .btn-outline-light:focus {
  box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5);
}
.btn-check:checked + .btn-outline-light, .btn-check:active + .btn-outline-light, .btn-outline-light:active, .btn-outline-light.active, .btn-outline-light.dropdown-toggle.show {
  color: #000;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-check:checked + .btn-outline-light:focus, .btn-check:active + .btn-outline-light:focus, .btn-outline-light:active:focus, .btn-outline-light.active:focus, .btn-outline-light.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5);
}
.btn-outline-light:disabled, .btn-outline-light.disabled {
  color: #f8f9fa;
  background-color: transparent;
}

.btn-outline-dark {
  color: #212529;
  border-color: #212529;
}
.btn-outline-dark:hover {
  color: #fff;
  background-color: #212529;
  border-color: #212529;
}
.btn-check:focus + .btn-outline-dark, .btn-outline-dark:focus {
  box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5);
}
.btn-check:checked + .btn-outline-dark, .btn-check:active + .btn-outline-dark, .btn-outline-dark:active, .btn-outline-dark.active, .btn-outline-dark.dropdown-toggle.show {
  color: #fff;
  background-color: #212529;
  border-color: #212529;
}
.btn-check:checked + .btn-outline-dark:focus, .btn-check:active + .btn-outline-dark:focus, .btn-outline-dark:active:focus, .btn-outline-dark.active:focus, .btn-outline-dark.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5);
}
.btn-outline-dark:disabled, .btn-outline-dark.disabled {
  color: #212529;
  background-color: transparent;
}

.btn-link {
  font-weight: 400;
  color: #0d6efd;
  text-decoration: underline;
}
.btn-link:hover {
  color: #0a58ca;
}
.btn-link:disabled, .btn-link.disabled {
  color: #6c757d;
}

.btn-lg, .btn-group-lg > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  border-radius: 0.3rem;
}

.btn-sm, .btn-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  border-radius: 0.2rem;
}

.fade {
  transition: opacity 0.15s linear;
}
@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none;
  }
}
.fade:not(.show) {
  opacity: 0;
}

.collapse:not(.show) {
  display: none;
}

.collapsing {
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  .collapsing {
    transition: none;
  }
}
.collapsing.collapse-horizontal {
  width: 0;
  height: auto;
  transition: width 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  .collapsing.collapse-horizontal {
    transition: none;
  }
}

.dropup,
.dropend,
.dropdown,
.dropstart {
  position: relative;
}

.dropdown-toggle {
  white-space: nowrap;
}
.dropdown-toggle::after {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid;
  border-left: 0.3em solid transparent;
  border-bottom: 0;
  border-right: 0.3em solid transparent;
}
.dropdown-toggle:empty::after {
  margin-right: 0;
}

.dropdown-menu {
  position: absolute;
  z-index: 1000;
  display: none;
  min-width: 10rem;
  padding: 0.5rem 0;
  margin: 0;
  font-size: 1rem;
  color: #212529;
  text-align: right;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}
.dropdown-menu[data-bs-popper] {
  top: 100%;
  right: 0;
  margin-top: 0.125rem;
}

.dropdown-menu-start {
  --bs-position: start;
}
.dropdown-menu-start[data-bs-popper] {
  left: auto;
  right: 0;
}

.dropdown-menu-end {
  --bs-position: end;
}
.dropdown-menu-end[data-bs-popper] {
  left: 0;
  right: auto;
}

@media (min-width: 576px) {
  .dropdown-menu-sm-start {
    --bs-position: start;
  }
  .dropdown-menu-sm-start[data-bs-popper] {
    left: auto;
    right: 0;
  }

  .dropdown-menu-sm-end {
    --bs-position: end;
  }
  .dropdown-menu-sm-end[data-bs-popper] {
    left: 0;
    right: auto;
  }
}
@media (min-width: 768px) {
  .dropdown-menu-md-start {
    --bs-position: start;
  }
  .dropdown-menu-md-start[data-bs-popper] {
    left: auto;
    right: 0;
  }

  .dropdown-menu-md-end {
    --bs-position: end;
  }
  .dropdown-menu-md-end[data-bs-popper] {
    left: 0;
    right: auto;
  }
}
@media (min-width: 992px) {
  .dropdown-menu-lg-start {
    --bs-position: start;
  }
  .dropdown-menu-lg-start[data-bs-popper] {
    left: auto;
    right: 0;
  }

  .dropdown-menu-lg-end {
    --bs-position: end;
  }
  .dropdown-menu-lg-end[data-bs-popper] {
    left: 0;
    right: auto;
  }
}
@media (min-width: 1200px) {
  .dropdown-menu-xl-start {
    --bs-position: start;
  }
  .dropdown-menu-xl-start[data-bs-popper] {
    left: auto;
    right: 0;
  }

  .dropdown-menu-xl-end {
    --bs-position: end;
  }
  .dropdown-menu-xl-end[data-bs-popper] {
    left: 0;
    right: auto;
  }
}
@media (min-width: 1400px) {
  .dropdown-menu-xxl-start {
    --bs-position: start;
  }
  .dropdown-menu-xxl-start[data-bs-popper] {
    left: auto;
    right: 0;
  }

  .dropdown-menu-xxl-end {
    --bs-position: end;
  }
  .dropdown-menu-xxl-end[data-bs-popper] {
    left: 0;
    right: auto;
  }
}
.dropup .dropdown-menu[data-bs-popper] {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 0.125rem;
}
.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-left: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-right: 0.3em solid transparent;
}
.dropup .dropdown-toggle:empty::after {
  margin-right: 0;
}

.dropend .dropdown-menu[data-bs-popper] {
  top: 0;
  left: auto;
  right: 100%;
  margin-top: 0;
  margin-right: 0.125rem;
}
.dropend .dropdown-toggle::after {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-left: 0;
  border-bottom: 0.3em solid transparent;
  border-right: 0.3em solid;
}
.dropend .dropdown-toggle:empty::after {
  margin-right: 0;
}
.dropend .dropdown-toggle::after {
  vertical-align: 0;
}

.dropstart .dropdown-menu[data-bs-popper] {
  top: 0;
  left: 100%;
  right: auto;
  margin-top: 0;
  margin-left: 0.125rem;
}
.dropstart .dropdown-toggle::after {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
}
.dropstart .dropdown-toggle::after {
  display: none;
}
.dropstart .dropdown-toggle::before {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-left: 0.3em solid;
  border-bottom: 0.3em solid transparent;
}
.dropstart .dropdown-toggle:empty::after {
  margin-right: 0;
}
.dropstart .dropdown-toggle::before {
  vertical-align: 0;
}

.dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid rgba(0, 0, 0, 0.15);
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1rem;
  clear: both;
  font-weight: 400;
  color: #212529;
  text-align: inherit;
  text-decoration: none;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}
.dropdown-item:hover, .dropdown-item:focus {
  color: #1e2125;
  background-color: #e9ecef;
}
.dropdown-item.active, .dropdown-item:active {
  color: #fff;
  text-decoration: none;
  background-color: #0d6efd;
}
.dropdown-item.disabled, .dropdown-item:disabled {
  color: #adb5bd;
  pointer-events: none;
  background-color: transparent;
}

.dropdown-menu.show {
  display: block;
}

.dropdown-header {
  display: block;
  padding: 0.5rem 1rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  color: #6c757d;
  white-space: nowrap;
}

.dropdown-item-text {
  display: block;
  padding: 0.25rem 1rem;
  color: #212529;
}

.dropdown-menu-dark {
  color: #dee2e6;
  background-color: #343a40;
  border-color: rgba(0, 0, 0, 0.15);
}
.dropdown-menu-dark .dropdown-item {
  color: #dee2e6;
}
.dropdown-menu-dark .dropdown-item:hover, .dropdown-menu-dark .dropdown-item:focus {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.15);
}
.dropdown-menu-dark .dropdown-item.active, .dropdown-menu-dark .dropdown-item:active {
  color: #fff;
  background-color: #0d6efd;
}
.dropdown-menu-dark .dropdown-item.disabled, .dropdown-menu-dark .dropdown-item:disabled {
  color: #adb5bd;
}
.dropdown-menu-dark .dropdown-divider {
  border-color: rgba(0, 0, 0, 0.15);
}
.dropdown-menu-dark .dropdown-item-text {
  color: #dee2e6;
}
.dropdown-menu-dark .dropdown-header {
  color: #adb5bd;
}

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  flex: 1 1 auto;
}
.btn-group > .btn-check:checked + .btn,
.btn-group > .btn-check:focus + .btn,
.btn-group > .btn:hover,
.btn-group > .btn:focus,
.btn-group > .btn:active,
.btn-group > .btn.active,
.btn-group-vertical > .btn-check:checked + .btn,
.btn-group-vertical > .btn-check:focus + .btn,
.btn-group-vertical > .btn:hover,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 1;
}

.btn-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.btn-toolbar .input-group {
  width: auto;
}

.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) {
  margin-right: -1px;
}
.btn-group > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn-group:not(:last-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group > .btn:nth-child(n+3),
.btn-group > :not(.btn-check) + .btn,
.btn-group > .btn-group:not(:first-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.dropdown-toggle-split {
  padding-left: 0.5625rem;
  padding-right: 0.5625rem;
}
.dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropend .dropdown-toggle-split::after {
  margin-right: 0;
}
.dropstart .dropdown-toggle-split::before {
  margin-left: 0;
}

.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
  padding-left: 0.375rem;
  padding-right: 0.375rem;
}

.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}

.btn-group-vertical {
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group {
  width: 100%;
}
.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
  margin-top: -1px;
}
.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .btn-group:not(:last-child) > .btn {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.btn-group-vertical > .btn ~ .btn,
.btn-group-vertical > .btn-group:not(:first-child) > .btn {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}

.nav {
  display: flex;
  flex-wrap: wrap;
  padding-right: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-link {
  display: block;
  padding: 0.5rem 1rem;
  color: #0d6efd;
  text-decoration: none;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .nav-link {
    transition: none;
  }
}
.nav-link:hover, .nav-link:focus {
  color: #0a58ca;
}
.nav-link.disabled {
  color: #6c757d;
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  border-bottom: 1px solid #dee2e6;
}
.nav-tabs .nav-link {
  margin-bottom: -1px;
  background: none;
  border: 1px solid transparent;
  border-top-right-radius: 0.25rem;
  border-top-left-radius: 0.25rem;
}
.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  border-color: #e9ecef #e9ecef #dee2e6;
  isolation: isolate;
}
.nav-tabs .nav-link.disabled {
  color: #6c757d;
  background-color: transparent;
  border-color: transparent;
}
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: #495057;
  background-color: #fff;
  border-color: #dee2e6 #dee2e6 #fff;
}
.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}

.nav-pills .nav-link {
  background: none;
  border: 0;
  border-radius: 0.25rem;
}
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #fff;
  background-color: #0d6efd;
}

.nav-fill > .nav-link,
.nav-fill .nav-item {
  flex: 1 1 auto;
  text-align: center;
}

.nav-justified > .nav-link,
.nav-justified .nav-item {
  flex-basis: 0;
  flex-grow: 1;
  text-align: center;
}

.nav-fill .nav-item .nav-link,
.nav-justified .nav-item .nav-link {
  width: 100%;
}

.tab-content > .tab-pane {
  display: none;
}
.tab-content > .active {
  display: block;
}

.navbar {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.navbar > .container,
.navbar > .container-fluid,
.navbar > .container-sm,
.navbar > .container-md,
.navbar > .container-lg,
.navbar > .container-xl,
.navbar > .container-xxl {
  display: flex;
  flex-wrap: inherit;
  align-items: center;
  justify-content: space-between;
}
.navbar-brand {
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  margin-left: 1rem;
  font-size: 1.25rem;
  text-decoration: none;
  white-space: nowrap;
}
.navbar-nav {
  display: flex;
  flex-direction: column;
  padding-right: 0;
  margin-bottom: 0;
  list-style: none;
}
.navbar-nav .nav-link {
  padding-left: 0;
  padding-right: 0;
}
.navbar-nav .dropdown-menu {
  position: static;
}

.navbar-text {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.navbar-collapse {
  flex-basis: 100%;
  flex-grow: 1;
  align-items: center;
}

.navbar-toggler {
  padding: 0.25rem 0.75rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem;
  transition: box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .navbar-toggler {
    transition: none;
  }
}
.navbar-toggler:hover {
  text-decoration: none;
}
.navbar-toggler:focus {
  text-decoration: none;
  outline: 0;
  box-shadow: 0 0 0 0.25rem;
}

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}

.navbar-nav-scroll {
  max-height: var(--bs-scroll-height, 75vh);
  overflow-y: auto;
}

@media (min-width: 576px) {
  .navbar-expand-sm {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-sm .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-sm .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-sm .navbar-nav .nav-link {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
  .navbar-expand-sm .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-sm .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-sm .navbar-toggler {
    display: none;
  }
  .navbar-expand-sm .offcanvas-header {
    display: none;
  }
  .navbar-expand-sm .offcanvas {
    position: inherit;
    bottom: 0;
    z-index: 1000;
    flex-grow: 1;
    visibility: visible !important;
    background-color: transparent;
    border-left: 0;
    border-right: 0;
    transition: none;
    transform: none;
  }
  .navbar-expand-sm .offcanvas-top,
.navbar-expand-sm .offcanvas-bottom {
    height: auto;
    border-top: 0;
    border-bottom: 0;
  }
  .navbar-expand-sm .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 768px) {
  .navbar-expand-md {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-md .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-md .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-md .navbar-nav .nav-link {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
  .navbar-expand-md .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-md .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-md .navbar-toggler {
    display: none;
  }
  .navbar-expand-md .offcanvas-header {
    display: none;
  }
  .navbar-expand-md .offcanvas {
    position: inherit;
    bottom: 0;
    z-index: 1000;
    flex-grow: 1;
    visibility: visible !important;
    background-color: transparent;
    border-left: 0;
    border-right: 0;
    transition: none;
    transform: none;
  }
  .navbar-expand-md .offcanvas-top,
.navbar-expand-md .offcanvas-bottom {
    height: auto;
    border-top: 0;
    border-bottom: 0;
  }
  .navbar-expand-md .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-lg .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
  .navbar-expand-lg .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-lg .navbar-toggler {
    display: none;
  }
  .navbar-expand-lg .offcanvas-header {
    display: none;
  }
  .navbar-expand-lg .offcanvas {
    position: inherit;
    bottom: 0;
    z-index: 1000;
    flex-grow: 1;
    visibility: visible !important;
    background-color: transparent;
    border-left: 0;
    border-right: 0;
    transition: none;
    transform: none;
  }
  .navbar-expand-lg .offcanvas-top,
.navbar-expand-lg .offcanvas-bottom {
    height: auto;
    border-top: 0;
    border-bottom: 0;
  }
  .navbar-expand-lg .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 1200px) {
  .navbar-expand-xl {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xl .navbar-nav .nav-link {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
  .navbar-expand-xl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xl .navbar-toggler {
    display: none;
  }
  .navbar-expand-xl .offcanvas-header {
    display: none;
  }
  .navbar-expand-xl .offcanvas {
    position: inherit;
    bottom: 0;
    z-index: 1000;
    flex-grow: 1;
    visibility: visible !important;
    background-color: transparent;
    border-left: 0;
    border-right: 0;
    transition: none;
    transform: none;
  }
  .navbar-expand-xl .offcanvas-top,
.navbar-expand-xl .offcanvas-bottom {
    height: auto;
    border-top: 0;
    border-bottom: 0;
  }
  .navbar-expand-xl .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 1400px) {
  .navbar-expand-xxl {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xxl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xxl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xxl .navbar-nav .nav-link {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
  .navbar-expand-xxl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xxl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xxl .navbar-toggler {
    display: none;
  }
  .navbar-expand-xxl .offcanvas-header {
    display: none;
  }
  .navbar-expand-xxl .offcanvas {
    position: inherit;
    bottom: 0;
    z-index: 1000;
    flex-grow: 1;
    visibility: visible !important;
    background-color: transparent;
    border-left: 0;
    border-right: 0;
    transition: none;
    transform: none;
  }
  .navbar-expand-xxl .offcanvas-top,
.navbar-expand-xxl .offcanvas-bottom {
    height: auto;
    border-top: 0;
    border-bottom: 0;
  }
  .navbar-expand-xxl .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
.navbar-expand {
  flex-wrap: nowrap;
  justify-content: flex-start;
}
.navbar-expand .navbar-nav {
  flex-direction: row;
}
.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}
.navbar-expand .navbar-nav .nav-link {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.navbar-expand .navbar-nav-scroll {
  overflow: visible;
}
.navbar-expand .navbar-collapse {
  display: flex !important;
  flex-basis: auto;
}
.navbar-expand .navbar-toggler {
  display: none;
}
.navbar-expand .offcanvas-header {
  display: none;
}
.navbar-expand .offcanvas {
  position: inherit;
  bottom: 0;
  z-index: 1000;
  flex-grow: 1;
  visibility: visible !important;
  background-color: transparent;
  border-left: 0;
  border-right: 0;
  transition: none;
  transform: none;
}
.navbar-expand .offcanvas-top,
.navbar-expand .offcanvas-bottom {
  height: auto;
  border-top: 0;
  border-bottom: 0;
}
.navbar-expand .offcanvas-body {
  display: flex;
  flex-grow: 0;
  padding: 0;
  overflow-y: visible;
}

.navbar-light .navbar-brand {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-nav .nav-link {
  color: rgba(0, 0, 0, 0.55);
}
.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
  color: rgba(0, 0, 0, 0.7);
}
.navbar-light .navbar-nav .nav-link.disabled {
  color: rgba(0, 0, 0, 0.3);
}
.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .nav-link.active {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-toggler {
  color: rgba(0, 0, 0, 0.55);
  border-color: rgba(0, 0, 0, 0.1);
}
.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-light .navbar-text {
  color: rgba(0, 0, 0, 0.55);
}
.navbar-light .navbar-text a,
.navbar-light .navbar-text a:hover,
.navbar-light .navbar-text a:focus {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-dark .navbar-brand {
  color: #fff;
}
.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {
  color: #fff;
}
.navbar-dark .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.55);
}
.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {
  color: rgba(255, 255, 255, 0.75);
}
.navbar-dark .navbar-nav .nav-link.disabled {
  color: rgba(255, 255, 255, 0.25);
}
.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .nav-link.active {
  color: #fff;
}
.navbar-dark .navbar-toggler {
  color: rgba(255, 255, 255, 0.55);
  border-color: rgba(255, 255, 255, 0.1);
}
.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-dark .navbar-text {
  color: rgba(255, 255, 255, 0.55);
}
.navbar-dark .navbar-text a,
.navbar-dark .navbar-text a:hover,
.navbar-dark .navbar-text a:focus {
  color: #fff;
}

.card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: border-box;
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 0.25rem;
}
.card > hr {
  margin-left: 0;
  margin-right: 0;
}
.card > .list-group {
  border-top: inherit;
  border-bottom: inherit;
}
.card > .list-group:first-child {
  border-top-width: 0;
  border-top-right-radius: calc(0.25rem - 1px);
  border-top-left-radius: calc(0.25rem - 1px);
}
.card > .list-group:last-child {
  border-bottom-width: 0;
  border-bottom-left-radius: calc(0.25rem - 1px);
  border-bottom-right-radius: calc(0.25rem - 1px);
}
.card > .card-header + .list-group,
.card > .list-group + .card-footer {
  border-top: 0;
}

.card-body {
  flex: 1 1 auto;
  padding: 1rem 1rem;
}

.card-title {
  margin-bottom: 0.5rem;
}

.card-subtitle {
  margin-top: -0.25rem;
  margin-bottom: 0;
}

.card-text:last-child {
  margin-bottom: 0;
}

.card-link + .card-link {
  margin-right: 1rem;
}

.card-header {
  padding: 0.5rem 1rem;
  margin-bottom: 0;
  background-color: rgba(0, 0, 0, 0.03);
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}
.card-header:first-child {
  border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}

.card-footer {
  padding: 0.5rem 1rem;
  background-color: rgba(0, 0, 0, 0.03);
  border-top: 1px solid rgba(0, 0, 0, 0.125);
}
.card-footer:last-child {
  border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}

.card-header-tabs {
  margin-left: -0.5rem;
  margin-bottom: -0.5rem;
  margin-right: -0.5rem;
  border-bottom: 0;
}

.card-header-pills {
  margin-left: -0.5rem;
  margin-right: -0.5rem;
}

.card-img-overlay {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  padding: 1rem;
  border-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-top,
.card-img-bottom {
  width: 100%;
}

.card-img,
.card-img-top {
  border-top-right-radius: calc(0.25rem - 1px);
  border-top-left-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-bottom {
  border-bottom-left-radius: calc(0.25rem - 1px);
  border-bottom-right-radius: calc(0.25rem - 1px);
}

.card-group > .card {
  margin-bottom: 0.75rem;
}
@media (min-width: 576px) {
  .card-group {
    display: flex;
    flex-flow: row wrap;
  }
  .card-group > .card {
    flex: 1 0 0%;
    margin-bottom: 0;
  }
  .card-group > .card + .card {
    margin-right: 0;
    border-right: 0;
  }
  .card-group > .card:not(:last-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-top,
.card-group > .card:not(:last-child) .card-header {
    border-top-left-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-bottom,
.card-group > .card:not(:last-child) .card-footer {
    border-bottom-left-radius: 0;
  }
  .card-group > .card:not(:first-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-top,
.card-group > .card:not(:first-child) .card-header {
    border-top-right-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-bottom,
.card-group > .card:not(:first-child) .card-footer {
    border-bottom-right-radius: 0;
  }
}

.accordion-button {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  padding: 1rem 1.25rem;
  font-size: 1rem;
  color: #212529;
  text-align: right;
  background-color: #fff;
  border: 0;
  border-radius: 0;
  overflow-anchor: none;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;
}
@media (prefers-reduced-motion: reduce) {
  .accordion-button {
    transition: none;
  }
}
.accordion-button:not(.collapsed) {
  color: #0c63e4;
  background-color: #e7f1ff;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.125);
}
.accordion-button:not(.collapsed)::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  transform: rotate(180deg);
}
.accordion-button::after {
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  margin-right: auto;
  content: "";
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-size: 1.25rem;
  transition: transform 0.2s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .accordion-button::after {
    transition: none;
  }
}
.accordion-button:hover {
  z-index: 2;
}
.accordion-button:focus {
  z-index: 3;
  border-color: #86b7fe;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.accordion-header {
  margin-bottom: 0;
}

.accordion-item {
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125);
}
.accordion-item:first-of-type {
  border-top-right-radius: 0.25rem;
  border-top-left-radius: 0.25rem;
}
.accordion-item:first-of-type .accordion-button {
  border-top-right-radius: calc(0.25rem - 1px);
  border-top-left-radius: calc(0.25rem - 1px);
}
.accordion-item:not(:first-of-type) {
  border-top: 0;
}
.accordion-item:last-of-type {
  border-bottom-left-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}
.accordion-item:last-of-type .accordion-button.collapsed {
  border-bottom-left-radius: calc(0.25rem - 1px);
  border-bottom-right-radius: calc(0.25rem - 1px);
}
.accordion-item:last-of-type .accordion-collapse {
  border-bottom-left-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}

.accordion-body {
  padding: 1rem 1.25rem;
}

.accordion-flush .accordion-collapse {
  border-width: 0;
}
.accordion-flush .accordion-item {
  border-left: 0;
  border-right: 0;
  border-radius: 0;
}
.accordion-flush .accordion-item:first-child {
  border-top: 0;
}
.accordion-flush .accordion-item:last-child {
  border-bottom: 0;
}
.accordion-flush .accordion-item .accordion-button {
  border-radius: 0;
}

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  padding: 0 0;
  margin-bottom: 1rem;
  list-style: none;
}

.breadcrumb-item + .breadcrumb-item {
  padding-right: 0.5rem;
}
.breadcrumb-item + .breadcrumb-item::before {
  float: right;
  padding-left: 0.5rem;
  color: #6c757d;
  content:  var(--bs-breadcrumb-divider, "/") ;
}
.breadcrumb-item.active {
  color: #6c757d;
}

.pagination {
  display: flex;
  padding-right: 0;
  list-style: none;
}

.page-link {
  position: relative;
  display: block;
  color: #0d6efd;
  text-decoration: none;
  background-color: #fff;
  border: 1px solid #dee2e6;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .page-link {
    transition: none;
  }
}
.page-link:hover {
  z-index: 2;
  color: #0a58ca;
  background-color: #e9ecef;
  border-color: #dee2e6;
}
.page-link:focus {
  z-index: 3;
  color: #0a58ca;
  background-color: #e9ecef;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.page-item:not(:first-child) .page-link {
  margin-right: -1px;
}
.page-item.active .page-link {
  z-index: 3;
  color: #fff;
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.page-item.disabled .page-link {
  color: #6c757d;
  pointer-events: none;
  background-color: #fff;
  border-color: #dee2e6;
}

.page-link {
  padding: 0.375rem 0.75rem;
}

.page-item:first-child .page-link {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}
.page-item:last-child .page-link {
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
}
.pagination-lg .page-item:first-child .page-link {
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
}
.pagination-lg .page-item:last-child .page-link {
  border-top-left-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}

.pagination-sm .page-link {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
}
.pagination-sm .page-item:first-child .page-link {
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem;
}
.pagination-sm .page-item:last-child .page-link {
  border-top-left-radius: 0.2rem;
  border-bottom-left-radius: 0.2rem;
}

.badge {
  display: inline-block;
  padding: 0.35em 0.65em;
  font-size: 0.75em;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
}
.badge:empty {
  display: none;
}

.btn .badge {
  position: relative;
  top: -1px;
}

.alert {
  position: relative;
  padding: 1rem 1rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.alert-heading {
  color: inherit;
}

.alert-link {
  font-weight: 700;
}

.alert-dismissible {
  padding-left: 3rem;
}
.alert-dismissible .btn-close {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  padding: 1.25rem 1rem;
}

.alert-primary {
  color: #084298;
  background-color: #cfe2ff;
  border-color: #b6d4fe;
}
.alert-primary .alert-link {
  color: #06357a;
}

.alert-secondary {
  color: #41464b;
  background-color: #e2e3e5;
  border-color: #d3d6d8;
}
.alert-secondary .alert-link {
  color: #34383c;
}

.alert-success {
  color: #0f5132;
  background-color: #d1e7dd;
  border-color: #badbcc;
}
.alert-success .alert-link {
  color: #0c4128;
}

.alert-info {
  color: #055160;
  background-color: #cff4fc;
  border-color: #b6effb;
}
.alert-info .alert-link {
  color: #04414d;
}

.alert-warning {
  color: #664d03;
  background-color: #fff3cd;
  border-color: #ffecb5;
}
.alert-warning .alert-link {
  color: #523e02;
}

.alert-danger {
  color: #842029;
  background-color: #f8d7da;
  border-color: #f5c2c7;
}
.alert-danger .alert-link {
  color: #6a1a21;
}

.alert-light {
  color: #636464;
  background-color: #fefefe;
  border-color: #fdfdfe;
}
.alert-light .alert-link {
  color: #4f5050;
}

.alert-dark {
  color: #141619;
  background-color: #d3d3d4;
  border-color: #bcbebf;
}
.alert-dark .alert-link {
  color: #101214;
}

@-webkit-keyframes progress-bar-stripes {
  0% {
    background-position-x: 1rem;
  }
}

@keyframes progress-bar-stripes {
  0% {
    background-position-x: 1rem;
  }
}
.progress {
  display: flex;
  height: 1rem;
  overflow: hidden;
  font-size: 0.75rem;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  background-color: #0d6efd;
  transition: width 0.6s ease;
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar {
    transition: none;
  }
}

.progress-bar-striped {
  background-image: linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 1rem 1rem;
}

.progress-bar-animated {
  -webkit-animation: 1s linear infinite progress-bar-stripes;
  animation: 1s linear infinite progress-bar-stripes;
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar-animated {
    -webkit-animation: none;
    animation: none;
  }
}

.list-group {
  display: flex;
  flex-direction: column;
  padding-right: 0;
  margin-bottom: 0;
  border-radius: 0.25rem;
}

.list-group-numbered {
  list-style-type: none;
  counter-reset: section;
}
.list-group-numbered > li::before {
  content: counters(section, ".") ". ";
  counter-increment: section;
}

.list-group-item-action {
  width: 100%;
  color: #495057;
  text-align: inherit;
}
.list-group-item-action:hover, .list-group-item-action:focus {
  z-index: 1;
  color: #495057;
  text-decoration: none;
  background-color: #f8f9fa;
}
.list-group-item-action:active {
  color: #212529;
  background-color: #e9ecef;
}

.list-group-item {
  position: relative;
  display: block;
  padding: 0.5rem 1rem;
  color: #212529;
  text-decoration: none;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125);
}
.list-group-item:first-child {
  border-top-right-radius: inherit;
  border-top-left-radius: inherit;
}
.list-group-item:last-child {
  border-bottom-left-radius: inherit;
  border-bottom-right-radius: inherit;
}
.list-group-item.disabled, .list-group-item:disabled {
  color: #6c757d;
  pointer-events: none;
  background-color: #fff;
}
.list-group-item.active {
  z-index: 2;
  color: #fff;
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.list-group-item + .list-group-item {
  border-top-width: 0;
}
.list-group-item + .list-group-item.active {
  margin-top: -1px;
  border-top-width: 1px;
}

.list-group-horizontal {
  flex-direction: row;
}
.list-group-horizontal > .list-group-item:first-child {
  border-bottom-right-radius: 0.25rem;
  border-top-left-radius: 0;
}
.list-group-horizontal > .list-group-item:last-child {
  border-top-left-radius: 0.25rem;
  border-bottom-right-radius: 0;
}
.list-group-horizontal > .list-group-item.active {
  margin-top: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item {
  border-top-width: 1px;
  border-right-width: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item.active {
  margin-right: -1px;
  border-right-width: 1px;
}

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    flex-direction: row;
  }
  .list-group-horizontal-sm > .list-group-item:first-child {
    border-bottom-right-radius: 0.25rem;
    border-top-left-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item:last-child {
    border-top-left-radius: 0.25rem;
    border-bottom-right-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-right-width: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item.active {
    margin-right: -1px;
    border-right-width: 1px;
  }
}
@media (min-width: 768px) {
  .list-group-horizontal-md {
    flex-direction: row;
  }
  .list-group-horizontal-md > .list-group-item:first-child {
    border-bottom-right-radius: 0.25rem;
    border-top-left-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item:last-child {
    border-top-left-radius: 0.25rem;
    border-bottom-right-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-right-width: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item.active {
    margin-right: -1px;
    border-right-width: 1px;
  }
}
@media (min-width: 992px) {
  .list-group-horizontal-lg {
    flex-direction: row;
  }
  .list-group-horizontal-lg > .list-group-item:first-child {
    border-bottom-right-radius: 0.25rem;
    border-top-left-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item:last-child {
    border-top-left-radius: 0.25rem;
    border-bottom-right-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-right-width: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item.active {
    margin-right: -1px;
    border-right-width: 1px;
  }
}
@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    flex-direction: row;
  }
  .list-group-horizontal-xl > .list-group-item:first-child {
    border-bottom-right-radius: 0.25rem;
    border-top-left-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item:last-child {
    border-top-left-radius: 0.25rem;
    border-bottom-right-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-right-width: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item.active {
    margin-right: -1px;
    border-right-width: 1px;
  }
}
@media (min-width: 1400px) {
  .list-group-horizontal-xxl {
    flex-direction: row;
  }
  .list-group-horizontal-xxl > .list-group-item:first-child {
    border-bottom-right-radius: 0.25rem;
    border-top-left-radius: 0;
  }
  .list-group-horizontal-xxl > .list-group-item:last-child {
    border-top-left-radius: 0.25rem;
    border-bottom-right-radius: 0;
  }
  .list-group-horizontal-xxl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xxl > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-right-width: 0;
  }
  .list-group-horizontal-xxl > .list-group-item + .list-group-item.active {
    margin-right: -1px;
    border-right-width: 1px;
  }
}
.list-group-flush {
  border-radius: 0;
}
.list-group-flush > .list-group-item {
  border-width: 0 0 1px;
}
.list-group-flush > .list-group-item:last-child {
  border-bottom-width: 0;
}

.list-group-item-primary {
  color: #084298;
  background-color: #cfe2ff;
}
.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
  color: #084298;
  background-color: #bacbe6;
}
.list-group-item-primary.list-group-item-action.active {
  color: #fff;
  background-color: #084298;
  border-color: #084298;
}

.list-group-item-secondary {
  color: #41464b;
  background-color: #e2e3e5;
}
.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {
  color: #41464b;
  background-color: #cbccce;
}
.list-group-item-secondary.list-group-item-action.active {
  color: #fff;
  background-color: #41464b;
  border-color: #41464b;
}

.list-group-item-success {
  color: #0f5132;
  background-color: #d1e7dd;
}
.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
  color: #0f5132;
  background-color: #bcd0c7;
}
.list-group-item-success.list-group-item-action.active {
  color: #fff;
  background-color: #0f5132;
  border-color: #0f5132;
}

.list-group-item-info {
  color: #055160;
  background-color: #cff4fc;
}
.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
  color: #055160;
  background-color: #badce3;
}
.list-group-item-info.list-group-item-action.active {
  color: #fff;
  background-color: #055160;
  border-color: #055160;
}

.list-group-item-warning {
  color: #664d03;
  background-color: #fff3cd;
}
.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
  color: #664d03;
  background-color: #e6dbb9;
}
.list-group-item-warning.list-group-item-action.active {
  color: #fff;
  background-color: #664d03;
  border-color: #664d03;
}

.list-group-item-danger {
  color: #842029;
  background-color: #f8d7da;
}
.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
  color: #842029;
  background-color: #dfc2c4;
}
.list-group-item-danger.list-group-item-action.active {
  color: #fff;
  background-color: #842029;
  border-color: #842029;
}

.list-group-item-light {
  color: #636464;
  background-color: #fefefe;
}
.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {
  color: #636464;
  background-color: #e5e5e5;
}
.list-group-item-light.list-group-item-action.active {
  color: #fff;
  background-color: #636464;
  border-color: #636464;
}

.list-group-item-dark {
  color: #141619;
  background-color: #d3d3d4;
}
.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {
  color: #141619;
  background-color: #bebebf;
}
.list-group-item-dark.list-group-item-action.active {
  color: #fff;
  background-color: #141619;
  border-color: #141619;
}

.btn-close {
  box-sizing: content-box;
  width: 1em;
  height: 1em;
  padding: 0.25em 0.25em;
  color: #000;
  background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
  border: 0;
  border-radius: 0.25rem;
  opacity: 0.5;
}
.btn-close:hover {
  color: #000;
  text-decoration: none;
  opacity: 0.75;
}
.btn-close:focus {
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
  opacity: 1;
}
.btn-close:disabled, .btn-close.disabled {
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  opacity: 0.25;
}

.btn-close-white {
  filter: invert(1) grayscale(100%) brightness(200%);
}

.toast {
  width: 350px;
  max-width: 100%;
  font-size: 0.875rem;
  pointer-events: auto;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}
.toast.showing {
  opacity: 0;
}
.toast:not(.show) {
  display: none;
}

.toast-container {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  max-width: 100%;
  pointer-events: none;
}
.toast-container > :not(:last-child) {
  margin-bottom: 0.75rem;
}

.toast-header {
  display: flex;
  align-items: center;
  padding: 0.5rem 0.75rem;
  color: #6c757d;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  border-top-right-radius: calc(0.25rem - 1px);
  border-top-left-radius: calc(0.25rem - 1px);
}
.toast-header .btn-close {
  margin-left: -0.375rem;
  margin-right: 0.75rem;
}

.toast-body {
  padding: 0.75rem;
  word-wrap: break-word;
}

.modal {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 1055;
  display: none;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  outline: 0;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: 0.5rem;
  pointer-events: none;
}
.modal.fade .modal-dialog {
  transition: transform 0.3s ease-out;
  transform: translate(0, -50px);
}
@media (prefers-reduced-motion: reduce) {
  .modal.fade .modal-dialog {
    transition: none;
  }
}
.modal.show .modal-dialog {
  transform: none;
}
.modal.modal-static .modal-dialog {
  transform: scale(1.02);
}

.modal-dialog-scrollable {
  height: calc(100% - 1rem);
}
.modal-dialog-scrollable .modal-content {
  max-height: 100%;
  overflow: hidden;
}
.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}

.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - 1rem);
}

.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
  outline: 0;
}

.modal-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 1050;
  width: 100vw;
  height: 100vh;
  background-color: #000;
}
.modal-backdrop.fade {
  opacity: 0;
}
.modal-backdrop.show {
  opacity: 0.5;
}

.modal-header {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: space-between;
  padding: 1rem 1rem;
  border-bottom: 1px solid #dee2e6;
  border-top-right-radius: calc(0.3rem - 1px);
  border-top-left-radius: calc(0.3rem - 1px);
}
.modal-header .btn-close {
  padding: 0.5rem 0.5rem;
  margin: -0.5rem auto -0.5rem -0.5rem;
}

.modal-title {
  margin-bottom: 0;
  line-height: 1.5;
}

.modal-body {
  position: relative;
  flex: 1 1 auto;
  padding: 1rem;
}

.modal-footer {
  display: flex;
  flex-wrap: wrap;
  flex-shrink: 0;
  align-items: center;
  justify-content: flex-end;
  padding: 0.75rem;
  border-top: 1px solid #dee2e6;
  border-bottom-left-radius: calc(0.3rem - 1px);
  border-bottom-right-radius: calc(0.3rem - 1px);
}
.modal-footer > * {
  margin: 0.25rem;
}

@media (min-width: 576px) {
  .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto;
  }

  .modal-dialog-scrollable {
    height: calc(100% - 3.5rem);
  }

  .modal-dialog-centered {
    min-height: calc(100% - 3.5rem);
  }

  .modal-sm {
    max-width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg,
.modal-xl {
    max-width: 800px;
  }
}
@media (min-width: 1200px) {
  .modal-xl {
    max-width: 1140px;
  }
}
.modal-fullscreen {
  width: 100vw;
  max-width: none;
  height: 100%;
  margin: 0;
}
.modal-fullscreen .modal-content {
  height: 100%;
  border: 0;
  border-radius: 0;
}
.modal-fullscreen .modal-header {
  border-radius: 0;
}
.modal-fullscreen .modal-body {
  overflow-y: auto;
}
.modal-fullscreen .modal-footer {
  border-radius: 0;
}

@media (max-width: 575.98px) {
  .modal-fullscreen-sm-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-sm-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-sm-down .modal-header {
    border-radius: 0;
  }
  .modal-fullscreen-sm-down .modal-body {
    overflow-y: auto;
  }
  .modal-fullscreen-sm-down .modal-footer {
    border-radius: 0;
  }
}
@media (max-width: 767.98px) {
  .modal-fullscreen-md-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-md-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-md-down .modal-header {
    border-radius: 0;
  }
  .modal-fullscreen-md-down .modal-body {
    overflow-y: auto;
  }
  .modal-fullscreen-md-down .modal-footer {
    border-radius: 0;
  }
}
@media (max-width: 991.98px) {
  .modal-fullscreen-lg-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-lg-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-lg-down .modal-header {
    border-radius: 0;
  }
  .modal-fullscreen-lg-down .modal-body {
    overflow-y: auto;
  }
  .modal-fullscreen-lg-down .modal-footer {
    border-radius: 0;
  }
}
@media (max-width: 1199.98px) {
  .modal-fullscreen-xl-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-xl-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-xl-down .modal-header {
    border-radius: 0;
  }
  .modal-fullscreen-xl-down .modal-body {
    overflow-y: auto;
  }
  .modal-fullscreen-xl-down .modal-footer {
    border-radius: 0;
  }
}
@media (max-width: 1399.98px) {
  .modal-fullscreen-xxl-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-xxl-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-xxl-down .modal-header {
    border-radius: 0;
  }
  .modal-fullscreen-xxl-down .modal-body {
    overflow-y: auto;
  }
  .modal-fullscreen-xxl-down .modal-footer {
    border-radius: 0;
  }
}
.tooltip {
  position: absolute;
  z-index: 1080;
  display: block;
  margin: 0;
  font-family: var(--bs-font-sans-serif);
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: right;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  opacity: 0;
}
.tooltip.show {
  opacity: 0.9;
}
.tooltip .tooltip-arrow {
  position: absolute;
  display: block;
  width: 0.8rem;
  height: 0.4rem;
}
.tooltip .tooltip-arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-tooltip-top, .bs-tooltip-auto[data-popper-placement^=top] {
  padding: 0.4rem 0;
}
.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {
  bottom: 0;
}
.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {
  top: -1px;
  border-width: 0.4rem 0.4rem 0;
  border-top-color: #000;
}

.bs-tooltip-end, .bs-tooltip-auto[data-popper-placement^=right] {
  padding: 0 0.4rem;
}
.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {
  right: 0;
  width: 0.4rem;
  height: 0.8rem;
}
.bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before {
  left: -1px;
  border-width: 0.4rem 0 0.4rem 0.4rem;
  border-left-color: #000;
}

.bs-tooltip-bottom, .bs-tooltip-auto[data-popper-placement^=bottom] {
  padding: 0.4rem 0;
}
.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {
  top: 0;
}
.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {
  bottom: -1px;
  border-width: 0 0.4rem 0.4rem;
  border-bottom-color: #000;
}

.bs-tooltip-start, .bs-tooltip-auto[data-popper-placement^=left] {
  padding: 0 0.4rem;
}
.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {
  left: 0;
  width: 0.4rem;
  height: 0.8rem;
}
.bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before {
  right: -1px;
  border-width: 0.4rem 0.4rem 0.4rem 0;
  border-right-color: #000;
}

.tooltip-inner {
  max-width: 200px;
  padding: 0.25rem 0.5rem;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 0.25rem;
}

.popover {
  position: absolute;
  top: 0;
  left: 0 ;
  z-index: 1070;
  display: block;
  max-width: 276px;
  font-family: var(--bs-font-sans-serif);
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: right;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
}
.popover .popover-arrow {
  position: absolute;
  display: block;
  width: 1rem;
  height: 0.5rem;
}
.popover .popover-arrow::before, .popover .popover-arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow {
  bottom: calc(-0.5rem - 1px);
}
.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before {
  bottom: 0;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {
  bottom: 1px;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: #fff;
}

.bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow {
  right: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
}
.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before {
  right: 0;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {
  right: 1px;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: #fff;
}

.bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow {
  top: calc(-0.5rem - 1px);
}
.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before {
  top: 0;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {
  top: 1px;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: #fff;
}
.bs-popover-bottom .popover-header::before, .bs-popover-auto[data-popper-placement^=bottom] .popover-header::before {
  position: absolute;
  top: 0;
  right: 50%;
  display: block;
  width: 1rem;
  margin-right: -0.5rem;
  content: "";
  border-bottom: 1px solid #f0f0f0;
}

.bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow {
  left: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
}
.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before {
  left: 0;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {
  left: 1px;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: #fff;
}

.popover-header {
  padding: 0.5rem 1rem;
  margin-bottom: 0;
  font-size: 1rem;
  background-color: #f0f0f0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  border-top-right-radius: calc(0.3rem - 1px);
  border-top-left-radius: calc(0.3rem - 1px);
}
.popover-header:empty {
  display: none;
}

.popover-body {
  padding: 1rem 1rem;
  color: #212529;
}

.carousel {
  position: relative;
}

.carousel.pointer-event {
  touch-action: pan-y;
}

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.carousel-inner::after {
  display: block;
  clear: both;
  content: "";
}

.carousel-item {
  position: relative;
  display: none;
  float: right;
  width: 100%;
  margin-left: -100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transition: transform 0.6s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-item {
    transition: none;
  }
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: block;
}
.carousel-item-next:not(.carousel-item-start),
.active.carousel-item-end {
  transform: translateX(100%);
}

.carousel-item-prev:not(.carousel-item-end),
.active.carousel-item-start {
  transform: translateX(-100%);
}
.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none;
}
.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-start,
.carousel-fade .carousel-item-prev.carousel-item-end {
  z-index: 1;
  opacity: 1;
}
.carousel-fade .active.carousel-item-start,
.carousel-fade .active.carousel-item-end {
  z-index: 0;
  opacity: 0;
  transition: opacity 0s 0.6s;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-fade .active.carousel-item-start,
.carousel-fade .active.carousel-item-end {
    transition: none;
  }
}

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  padding: 0;
  color: #fff;
  text-align: center;
  background: none;
  border: 0;
  opacity: 0.5;
  transition: opacity 0.15s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-control-prev,
.carousel-control-next {
    transition: none;
  }
}
.carousel-control-prev:hover, .carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  opacity: 0.9;
}

.carousel-control-prev {
  right: 0;
}

.carousel-control-next {
  left: 0;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  background-repeat: no-repeat;
  background-position: 50%;
  background-size: 100% 100%;
}
.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e");
}

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.carousel-indicators {
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 2;
  display: flex;
  justify-content: center;
  padding: 0;
  margin-left: 15%;
  margin-bottom: 1rem;
  margin-right: 15%;
  list-style: none;
}
.carousel-indicators [data-bs-target] {
  box-sizing: content-box;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  padding: 0;
  margin-left: 3px;
  margin-right: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #fff;
  background-clip: padding-box;
  border: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  opacity: 0.5;
  transition: opacity 0.6s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-indicators [data-bs-target] {
    transition: none;
  }
}
.carousel-indicators .active {
  opacity: 1;
}

.carousel-caption {
  position: absolute;
  left: 15%;
  bottom: 1.25rem;
  right: 15%;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  color: #fff;
  text-align: center;
}

.carousel-dark .carousel-control-next-icon,
.carousel-dark .carousel-control-prev-icon {
  filter: invert(1) grayscale(100);
}
.carousel-dark .carousel-indicators [data-bs-target] {
  background-color: #000;
}
.carousel-dark .carousel-caption {
  color: #000;
}

@-webkit-keyframes spinner-border {
  to {
    transform: rotate(360deg) ;
  }
}

@keyframes spinner-border {
  to {
    transform: rotate(360deg) ;
  }
}
.spinner-border {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: -0.125em;
  border: 0.25em solid currentColor;
  border-left-color: transparent;
  border-radius: 50%;
  -webkit-animation: 0.75s linear infinite spinner-border;
  animation: 0.75s linear infinite spinner-border;
}

.spinner-border-sm {
  width: 1rem;
  height: 1rem;
  border-width: 0.2em;
}

@-webkit-keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}
.spinner-grow {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: -0.125em;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  -webkit-animation: 0.75s linear infinite spinner-grow;
  animation: 0.75s linear infinite spinner-grow;
}

.spinner-grow-sm {
  width: 1rem;
  height: 1rem;
}

@media (prefers-reduced-motion: reduce) {
  .spinner-border,
.spinner-grow {
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
  }
}
.offcanvas {
  position: fixed;
  bottom: 0;
  z-index: 1045;
  display: flex;
  flex-direction: column;
  max-width: 100%;
  visibility: hidden;
  background-color: #fff;
  background-clip: padding-box;
  outline: 0;
  transition: transform 0.3s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .offcanvas {
    transition: none;
  }
}

.offcanvas-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #000;
}
.offcanvas-backdrop.fade {
  opacity: 0;
}
.offcanvas-backdrop.show {
  opacity: 0.5;
}

.offcanvas-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem 1rem;
}
.offcanvas-header .btn-close {
  padding: 0.5rem 0.5rem;
  margin-top: -0.5rem;
  margin-left: -0.5rem;
  margin-bottom: -0.5rem;
}

.offcanvas-title {
  margin-bottom: 0;
  line-height: 1.5;
}

.offcanvas-body {
  flex-grow: 1;
  padding: 1rem 1rem;
  overflow-y: auto;
}

.offcanvas-start {
  top: 0;
  right: 0;
  width: 400px;
  border-left: 1px solid rgba(0, 0, 0, 0.2);
  transform: translateX(100%);
}

.offcanvas-end {
  top: 0;
  left: 0;
  width: 400px;
  border-right: 1px solid rgba(0, 0, 0, 0.2);
  transform: translateX(-100%);
}

.offcanvas-top {
  top: 0;
  left: 0;
  right: 0;
  height: 30vh;
  max-height: 100%;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  transform: translateY(-100%);
}

.offcanvas-bottom {
  left: 0;
  right: 0;
  height: 30vh;
  max-height: 100%;
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  transform: translateY(100%);
}

.offcanvas.show {
  transform: none;
}

.placeholder {
  display: inline-block;
  min-height: 1em;
  vertical-align: middle;
  cursor: wait;
  background-color: currentColor;
  opacity: 0.5;
}
.placeholder.btn::before {
  display: inline-block;
  content: "";
}

.placeholder-xs {
  min-height: 0.6em;
}

.placeholder-sm {
  min-height: 0.8em;
}

.placeholder-lg {
  min-height: 1.2em;
}

.placeholder-glow .placeholder {
  -webkit-animation: placeholder-glow 2s ease-in-out infinite;
  animation: placeholder-glow 2s ease-in-out infinite;
}

@-webkit-keyframes placeholder-glow {
  50% {
    opacity: 0.2;
  }
}

@keyframes placeholder-glow {
  50% {
    opacity: 0.2;
  }
}
.placeholder-wave {
  -webkit-mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);
  mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);
  -webkit-mask-size: 200% 100%;
  mask-size: 200% 100%;
  -webkit-animation: placeholder-wave 2s linear infinite;
  animation: placeholder-wave 2s linear infinite;
}

@-webkit-keyframes placeholder-wave {
  100% {
    -webkit-mask-position: -200% 0%;
    mask-position: -200% 0%;
  }
}

@keyframes placeholder-wave {
  100% {
    -webkit-mask-position: -200% 0%;
    mask-position: -200% 0%;
  }
}
.clearfix::after {
  display: block;
  clear: both;
  content: "";
}

.link-primary {
  color: #0d6efd;
}
.link-primary:hover, .link-primary:focus {
  color: #0a58ca;
}

.link-secondary {
  color: #6c757d;
}
.link-secondary:hover, .link-secondary:focus {
  color: #565e64;
}

.link-success {
  color: #198754;
}
.link-success:hover, .link-success:focus {
  color: #146c43;
}

.link-info {
  color: #0dcaf0;
}
.link-info:hover, .link-info:focus {
  color: #3dd5f3;
}

.link-warning {
  color: #ffc107;
}
.link-warning:hover, .link-warning:focus {
  color: #ffcd39;
}

.link-danger {
  color: #dc3545;
}
.link-danger:hover, .link-danger:focus {
  color: #b02a37;
}

.link-light {
  color: #f8f9fa;
}
.link-light:hover, .link-light:focus {
  color: #f9fafb;
}

.link-dark {
  color: #212529;
}
.link-dark:hover, .link-dark:focus {
  color: #1a1e21;
}

.ratio {
  position: relative;
  width: 100%;
}
.ratio::before {
  display: block;
  padding-top: var(--bs-aspect-ratio);
  content: "";
}
.ratio > * {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.ratio-1x1 {
  --bs-aspect-ratio: 100%;
}

.ratio-4x3 {
  --bs-aspect-ratio: calc(3 / 4 * 100%);
}

.ratio-16x9 {
  --bs-aspect-ratio: calc(9 / 16 * 100%);
}

.ratio-21x9 {
  --bs-aspect-ratio: calc(9 / 21 * 100%);
}

.fixed-top {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1030;
}

.fixed-bottom {
  position: fixed;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 1030;
}

.sticky-top {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 1020;
}

@media (min-width: 576px) {
  .sticky-sm-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}
@media (min-width: 768px) {
  .sticky-md-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}
@media (min-width: 992px) {
  .sticky-lg-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}
@media (min-width: 1200px) {
  .sticky-xl-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}
@media (min-width: 1400px) {
  .sticky-xxl-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}
.hstack {
  display: flex;
  flex-direction: row;
  align-items: center;
  align-self: stretch;
}

.vstack {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-self: stretch;
}

.visually-hidden,
.visually-hidden-focusable:not(:focus):not(:focus-within) {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.stretched-link::after {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 1;
  content: "";
}

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.vr {
  display: inline-block;
  align-self: stretch;
  width: 1px;
  min-height: 1em;
  background-color: currentColor;
  opacity: 0.25;
}

.align-baseline {
  vertical-align: baseline !important;
}

.align-top {
  vertical-align: top !important;
}

.align-middle {
  vertical-align: middle !important;
}

.align-bottom {
  vertical-align: bottom !important;
}

.align-text-bottom {
  vertical-align: text-bottom !important;
}

.align-text-top {
  vertical-align: text-top !important;
}

.float-start {
  float: right !important;
}

.float-end {
  float: left !important;
}

.float-none {
  float: none !important;
}

.opacity-0 {
  opacity: 0 !important;
}

.opacity-25 {
  opacity: 0.25 !important;
}

.opacity-50 {
  opacity: 0.5 !important;
}

.opacity-75 {
  opacity: 0.75 !important;
}

.opacity-100 {
  opacity: 1 !important;
}

.overflow-auto {
  overflow: auto !important;
}

.overflow-hidden {
  overflow: hidden !important;
}

.overflow-visible {
  overflow: visible !important;
}

.overflow-scroll {
  overflow: scroll !important;
}

.d-inline {
  display: inline !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-block {
  display: block !important;
}

.d-grid {
  display: grid !important;
}

.d-table {
  display: table !important;
}

.d-table-row {
  display: table-row !important;
}

.d-table-cell {
  display: table-cell !important;
}

.d-flex {
  display: flex !important;
}

.d-inline-flex {
  display: inline-flex !important;
}

.d-none {
  display: none !important;
}

.shadow {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

.shadow-none {
  box-shadow: none !important;
}

.position-static {
  position: static !important;
}

.position-relative {
  position: relative !important;
}

.position-absolute {
  position: absolute !important;
}

.position-fixed {
  position: fixed !important;
}

.position-sticky {
  position: -webkit-sticky !important;
  position: sticky !important;
}

.top-0 {
  top: 0 !important;
}

.top-50 {
  top: 50% !important;
}

.top-100 {
  top: 100% !important;
}

.bottom-0 {
  bottom: 0 !important;
}

.bottom-50 {
  bottom: 50% !important;
}

.bottom-100 {
  bottom: 100% !important;
}

.start-0 {
  right: 0 !important;
}

.start-50 {
  right: 50% !important;
}

.start-100 {
  right: 100% !important;
}

.end-0 {
  left: 0 !important;
}

.end-50 {
  left: 50% !important;
}

.end-100 {
  left: 100% !important;
}

.translate-middle {
  transform: translate(50%, -50%) !important;
}

.translate-middle-x {
  transform: translateX(50%) !important;
}

.translate-middle-y {
  transform: translateY(-50%) !important;
}

.border {
  border: 1px solid #dee2e6 !important;
}

.border-0 {
  border: 0 !important;
}

.border-top {
  border-top: 1px solid #dee2e6 !important;
}

.border-top-0 {
  border-top: 0 !important;
}

.border-end {
  border-left: 1px solid #dee2e6 !important;
}

.border-end-0 {
  border-left: 0 !important;
}

.border-bottom {
  border-bottom: 1px solid #dee2e6 !important;
}

.border-bottom-0 {
  border-bottom: 0 !important;
}

.border-start {
  border-right: 1px solid #dee2e6 !important;
}

.border-start-0 {
  border-right: 0 !important;
}

.border-primary {
  border-color: #0d6efd !important;
}

.border-secondary {
  border-color: #6c757d !important;
}

.border-success {
  border-color: #198754 !important;
}

.border-info {
  border-color: #0dcaf0 !important;
}

.border-warning {
  border-color: #ffc107 !important;
}

.border-danger {
  border-color: #dc3545 !important;
}

.border-light {
  border-color: #f8f9fa !important;
}

.border-dark {
  border-color: #212529 !important;
}

.border-white {
  border-color: #fff !important;
}

.border-1 {
  border-width: 1px !important;
}

.border-2 {
  border-width: 2px !important;
}

.border-3 {
  border-width: 3px !important;
}

.border-4 {
  border-width: 4px !important;
}

.border-5 {
  border-width: 5px !important;
}

.w-25 {
  width: 25% !important;
}

.w-50 {
  width: 50% !important;
}

.w-75 {
  width: 75% !important;
}

.w-100 {
  width: 100% !important;
}

.w-auto {
  width: auto !important;
}

.mw-100 {
  max-width: 100% !important;
}

.vw-100 {
  width: 100vw !important;
}

.min-vw-100 {
  min-width: 100vw !important;
}

.h-25 {
  height: 25% !important;
}

.h-50 {
  height: 50% !important;
}

.h-75 {
  height: 75% !important;
}

.h-100 {
  height: 100% !important;
}

.h-auto {
  height: auto !important;
}

.mh-100 {
  max-height: 100% !important;
}

.vh-100 {
  height: 100vh !important;
}

.min-vh-100 {
  min-height: 100vh !important;
}

.flex-fill {
  flex: 1 1 auto !important;
}

.flex-row {
  flex-direction: row !important;
}

.flex-column {
  flex-direction: column !important;
}

.flex-row-reverse {
  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  flex-direction: column-reverse !important;
}

.flex-grow-0 {
  flex-grow: 0 !important;
}

.flex-grow-1 {
  flex-grow: 1 !important;
}

.flex-shrink-0 {
  flex-shrink: 0 !important;
}

.flex-shrink-1 {
  flex-shrink: 1 !important;
}

.flex-wrap {
  flex-wrap: wrap !important;
}

.flex-nowrap {
  flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}

.gap-0 {
  gap: 0 !important;
}

.gap-1 {
  gap: 0.25rem !important;
}

.gap-2 {
  gap: 0.5rem !important;
}

.gap-3 {
  gap: 1rem !important;
}

.gap-4 {
  gap: 1.5rem !important;
}

.gap-5 {
  gap: 3rem !important;
}

.justify-content-start {
  justify-content: flex-start !important;
}

.justify-content-end {
  justify-content: flex-end !important;
}

.justify-content-center {
  justify-content: center !important;
}

.justify-content-between {
  justify-content: space-between !important;
}

.justify-content-around {
  justify-content: space-around !important;
}

.justify-content-evenly {
  justify-content: space-evenly !important;
}

.align-items-start {
  align-items: flex-start !important;
}

.align-items-end {
  align-items: flex-end !important;
}

.align-items-center {
  align-items: center !important;
}

.align-items-baseline {
  align-items: baseline !important;
}

.align-items-stretch {
  align-items: stretch !important;
}

.align-content-start {
  align-content: flex-start !important;
}

.align-content-end {
  align-content: flex-end !important;
}

.align-content-center {
  align-content: center !important;
}

.align-content-between {
  align-content: space-between !important;
}

.align-content-around {
  align-content: space-around !important;
}

.align-content-stretch {
  align-content: stretch !important;
}

.align-self-auto {
  align-self: auto !important;
}

.align-self-start {
  align-self: flex-start !important;
}

.align-self-end {
  align-self: flex-end !important;
}

.align-self-center {
  align-self: center !important;
}

.align-self-baseline {
  align-self: baseline !important;
}

.align-self-stretch {
  align-self: stretch !important;
}

.order-first {
  order: -1 !important;
}

.order-0 {
  order: 0 !important;
}

.order-1 {
  order: 1 !important;
}

.order-2 {
  order: 2 !important;
}

.order-3 {
  order: 3 !important;
}

.order-4 {
  order: 4 !important;
}

.order-5 {
  order: 5 !important;
}

.order-last {
  order: 6 !important;
}

.m-0 {
  margin: 0 !important;
}

.m-1 {
  margin: 0.25rem !important;
}

.m-2 {
  margin: 0.5rem !important;
}

.m-3 {
  margin: 1rem !important;
}

.m-4 {
  margin: 1.5rem !important;
}

.m-5 {
  margin: 3rem !important;
}

.m-auto {
  margin: auto !important;
}

.mx-0 {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.mx-1 {
  margin-left: 0.25rem !important;
  margin-right: 0.25rem !important;
}

.mx-2 {
  margin-left: 0.5rem !important;
  margin-right: 0.5rem !important;
}

.mx-3 {
  margin-left: 1rem !important;
  margin-right: 1rem !important;
}

.mx-4 {
  margin-left: 1.5rem !important;
  margin-right: 1.5rem !important;
}

.mx-5 {
  margin-left: 3rem !important;
  margin-right: 3rem !important;
}

.mx-auto {
  margin-left: auto !important;
  margin-right: auto !important;
}

.my-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.my-1 {
  margin-top: 0.25rem !important;
  margin-bottom: 0.25rem !important;
}

.my-2 {
  margin-top: 0.5rem !important;
  margin-bottom: 0.5rem !important;
}

.my-3 {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
}

.my-4 {
  margin-top: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}

.my-5 {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important;
}

.my-auto {
  margin-top: auto !important;
  margin-bottom: auto !important;
}

.mt-0 {
  margin-top: 0 !important;
}

.mt-1 {
  margin-top: 0.25rem !important;
}

.mt-2 {
  margin-top: 0.5rem !important;
}

.mt-3 {
  margin-top: 1rem !important;
}

.mt-4 {
  margin-top: 1.5rem !important;
}

.mt-5 {
  margin-top: 3rem !important;
}

.mt-auto {
  margin-top: auto !important;
}

.me-0 {
  margin-left: 0 !important;
}

.me-1 {
  margin-left: 0.25rem !important;
}

.me-2 {
  margin-left: 0.5rem !important;
}

.me-3 {
  margin-left: 1rem !important;
}

.me-4 {
  margin-left: 1.5rem !important;
}

.me-5 {
  margin-left: 3rem !important;
}

.me-auto {
  margin-left: auto !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.mb-1 {
  margin-bottom: 0.25rem !important;
}

.mb-2 {
  margin-bottom: 0.5rem !important;
}

.mb-3 {
  margin-bottom: 1rem !important;
}

.mb-4 {
  margin-bottom: 1.5rem !important;
}

.mb-5 {
  margin-bottom: 3rem !important;
}

.mb-auto {
  margin-bottom: auto !important;
}

.ms-0 {
  margin-right: 0 !important;
}

.ms-1 {
  margin-right: 0.25rem !important;
}

.ms-2 {
  margin-right: 0.5rem !important;
}

.ms-3 {
  margin-right: 1rem !important;
}

.ms-4 {
  margin-right: 1.5rem !important;
}

.ms-5 {
  margin-right: 3rem !important;
}

.ms-auto {
  margin-right: auto !important;
}

.p-0 {
  padding: 0 !important;
}

.p-1 {
  padding: 0.25rem !important;
}

.p-2 {
  padding: 0.5rem !important;
}

.p-3 {
  padding: 1rem !important;
}

.p-4 {
  padding: 1.5rem !important;
}

.p-5 {
  padding: 3rem !important;
}

.px-0 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.px-1 {
  padding-left: 0.25rem !important;
  padding-right: 0.25rem !important;
}

.px-2 {
  padding-left: 0.5rem !important;
  padding-right: 0.5rem !important;
}

.px-3 {
  padding-left: 1rem !important;
  padding-right: 1rem !important;
}

.px-4 {
  padding-left: 1.5rem !important;
  padding-right: 1.5rem !important;
}

.px-5 {
  padding-left: 3rem !important;
  padding-right: 3rem !important;
}

.py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.py-1 {
  padding-top: 0.25rem !important;
  padding-bottom: 0.25rem !important;
}

.py-2 {
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}

.py-3 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.py-4 {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

.py-5 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

.pt-0 {
  padding-top: 0 !important;
}

.pt-1 {
  padding-top: 0.25rem !important;
}

.pt-2 {
  padding-top: 0.5rem !important;
}

.pt-3 {
  padding-top: 1rem !important;
}

.pt-4 {
  padding-top: 1.5rem !important;
}

.pt-5 {
  padding-top: 3rem !important;
}

.pe-0 {
  padding-left: 0 !important;
}

.pe-1 {
  padding-left: 0.25rem !important;
}

.pe-2 {
  padding-left: 0.5rem !important;
}

.pe-3 {
  padding-left: 1rem !important;
}

.pe-4 {
  padding-left: 1.5rem !important;
}

.pe-5 {
  padding-left: 3rem !important;
}

.pb-0 {
  padding-bottom: 0 !important;
}

.pb-1 {
  padding-bottom: 0.25rem !important;
}

.pb-2 {
  padding-bottom: 0.5rem !important;
}

.pb-3 {
  padding-bottom: 1rem !important;
}

.pb-4 {
  padding-bottom: 1.5rem !important;
}

.pb-5 {
  padding-bottom: 3rem !important;
}

.ps-0 {
  padding-right: 0 !important;
}

.ps-1 {
  padding-right: 0.25rem !important;
}

.ps-2 {
  padding-right: 0.5rem !important;
}

.ps-3 {
  padding-right: 1rem !important;
}

.ps-4 {
  padding-right: 1.5rem !important;
}

.ps-5 {
  padding-right: 3rem !important;
}

.font-monospace {
  font-family: var(--bs-font-monospace) !important;
}

.fs-1 {
  font-size: calc(1.375rem + 1.5vw) !important;
}

.fs-2 {
  font-size: calc(1.325rem + 0.9vw) !important;
}

.fs-3 {
  font-size: calc(1.3rem + 0.6vw) !important;
}

.fs-4 {
  font-size: calc(1.275rem + 0.3vw) !important;
}

.fs-5 {
  font-size: 1.25rem !important;
}

.fs-6 {
  font-size: 1rem !important;
}

.fst-italic {
  font-style: italic !important;
}

.fst-normal {
  font-style: normal !important;
}

.fw-light {
  font-weight: 300 !important;
}

.fw-lighter {
  font-weight: lighter !important;
}

.fw-normal {
  font-weight: 400 !important;
}

.fw-bold {
  font-weight: 700 !important;
}

.fw-bolder {
  font-weight: bolder !important;
}

.lh-1 {
  line-height: 1 !important;
}

.lh-sm {
  line-height: 1.25 !important;
}

.lh-base {
  line-height: 1.5 !important;
}

.lh-lg {
  line-height: 2 !important;
}

.text-start {
  text-align: right !important;
}

.text-end {
  text-align: left !important;
}

.text-center {
  text-align: center !important;
}

.text-decoration-none {
  text-decoration: none !important;
}

.text-decoration-underline {
  text-decoration: underline !important;
}

.text-decoration-line-through {
  text-decoration: line-through !important;
}

.text-lowercase {
  text-transform: lowercase !important;
}

.text-uppercase {
  text-transform: uppercase !important;
}

.text-capitalize {
  text-transform: capitalize !important;
}

.text-wrap {
  white-space: normal !important;
}

.text-nowrap {
  white-space: nowrap !important;
}
.text-primary {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;
}

.text-secondary {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important;
}

.text-success {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important;
}

.text-info {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important;
}

.text-warning {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important;
}

.text-danger {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important;
}

.text-light {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important;
}

.text-dark {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;
}

.text-black {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important;
}

.text-white {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important;
}

.text-body {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-body-rgb), var(--bs-text-opacity)) !important;
}

.text-muted {
  --bs-text-opacity: 1;
  color: #6c757d !important;
}

.text-black-50 {
  --bs-text-opacity: 1;
  color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
  --bs-text-opacity: 1;
  color: rgba(255, 255, 255, 0.5) !important;
}

.text-reset {
  --bs-text-opacity: 1;
  color: inherit !important;
}

.text-opacity-25 {
  --bs-text-opacity: 0.25;
}

.text-opacity-50 {
  --bs-text-opacity: 0.5;
}

.text-opacity-75 {
  --bs-text-opacity: 0.75;
}

.text-opacity-100 {
  --bs-text-opacity: 1;
}

.bg-primary {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important;
}

.bg-secondary {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important;
}

.bg-success {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important;
}

.bg-info {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important;
}

.bg-warning {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important;
}

.bg-danger {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important;
}

.bg-light {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important;
}

.bg-dark {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important;
}

.bg-black {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important;
}

.bg-white {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important;
}

.bg-body {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-body-rgb), var(--bs-bg-opacity)) !important;
}

.bg-transparent {
  --bs-bg-opacity: 1;
  background-color: transparent !important;
}

.bg-opacity-10 {
  --bs-bg-opacity: 0.1;
}

.bg-opacity-25 {
  --bs-bg-opacity: 0.25;
}

.bg-opacity-50 {
  --bs-bg-opacity: 0.5;
}

.bg-opacity-75 {
  --bs-bg-opacity: 0.75;
}

.bg-opacity-100 {
  --bs-bg-opacity: 1;
}

.bg-gradient {
  background-image: var(--bs-gradient) !important;
}

.user-select-all {
  -webkit-user-select: all !important;
  -moz-user-select: all !important;
  user-select: all !important;
}

.user-select-auto {
  -webkit-user-select: auto !important;
  -moz-user-select: auto !important;
  user-select: auto !important;
}

.user-select-none {
  -webkit-user-select: none !important;
  -moz-user-select: none !important;
  user-select: none !important;
}

.pe-none {
  pointer-events: none !important;
}

.pe-auto {
  pointer-events: auto !important;
}

.rounded {
  border-radius: 0.25rem !important;
}

.rounded-0 {
  border-radius: 0 !important;
}

.rounded-1 {
  border-radius: 0.2rem !important;
}

.rounded-2 {
  border-radius: 0.25rem !important;
}

.rounded-3 {
  border-radius: 0.3rem !important;
}

.rounded-circle {
  border-radius: 50% !important;
}

.rounded-pill {
  border-radius: 50rem !important;
}

.rounded-top {
  border-top-right-radius: 0.25rem !important;
  border-top-left-radius: 0.25rem !important;
}

.rounded-end {
  border-top-left-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-bottom {
  border-bottom-left-radius: 0.25rem !important;
  border-bottom-right-radius: 0.25rem !important;
}

.rounded-start {
  border-bottom-right-radius: 0.25rem !important;
  border-top-right-radius: 0.25rem !important;
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

@media (min-width: 576px) {
  .float-sm-start {
    float: right !important;
  }

  .float-sm-end {
    float: left !important;
  }

  .float-sm-none {
    float: none !important;
  }

  .d-sm-inline {
    display: inline !important;
  }

  .d-sm-inline-block {
    display: inline-block !important;
  }

  .d-sm-block {
    display: block !important;
  }

  .d-sm-grid {
    display: grid !important;
  }

  .d-sm-table {
    display: table !important;
  }

  .d-sm-table-row {
    display: table-row !important;
  }

  .d-sm-table-cell {
    display: table-cell !important;
  }

  .d-sm-flex {
    display: flex !important;
  }

  .d-sm-inline-flex {
    display: inline-flex !important;
  }

  .d-sm-none {
    display: none !important;
  }

  .flex-sm-fill {
    flex: 1 1 auto !important;
  }

  .flex-sm-row {
    flex-direction: row !important;
  }

  .flex-sm-column {
    flex-direction: column !important;
  }

  .flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-sm-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-sm-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-sm-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-sm-shrink-1 {
    flex-shrink: 1 !important;
  }

  .flex-sm-wrap {
    flex-wrap: wrap !important;
  }

  .flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .gap-sm-0 {
    gap: 0 !important;
  }

  .gap-sm-1 {
    gap: 0.25rem !important;
  }

  .gap-sm-2 {
    gap: 0.5rem !important;
  }

  .gap-sm-3 {
    gap: 1rem !important;
  }

  .gap-sm-4 {
    gap: 1.5rem !important;
  }

  .gap-sm-5 {
    gap: 3rem !important;
  }

  .justify-content-sm-start {
    justify-content: flex-start !important;
  }

  .justify-content-sm-end {
    justify-content: flex-end !important;
  }

  .justify-content-sm-center {
    justify-content: center !important;
  }

  .justify-content-sm-between {
    justify-content: space-between !important;
  }

  .justify-content-sm-around {
    justify-content: space-around !important;
  }

  .justify-content-sm-evenly {
    justify-content: space-evenly !important;
  }

  .align-items-sm-start {
    align-items: flex-start !important;
  }

  .align-items-sm-end {
    align-items: flex-end !important;
  }

  .align-items-sm-center {
    align-items: center !important;
  }

  .align-items-sm-baseline {
    align-items: baseline !important;
  }

  .align-items-sm-stretch {
    align-items: stretch !important;
  }

  .align-content-sm-start {
    align-content: flex-start !important;
  }

  .align-content-sm-end {
    align-content: flex-end !important;
  }

  .align-content-sm-center {
    align-content: center !important;
  }

  .align-content-sm-between {
    align-content: space-between !important;
  }

  .align-content-sm-around {
    align-content: space-around !important;
  }

  .align-content-sm-stretch {
    align-content: stretch !important;
  }

  .align-self-sm-auto {
    align-self: auto !important;
  }

  .align-self-sm-start {
    align-self: flex-start !important;
  }

  .align-self-sm-end {
    align-self: flex-end !important;
  }

  .align-self-sm-center {
    align-self: center !important;
  }

  .align-self-sm-baseline {
    align-self: baseline !important;
  }

  .align-self-sm-stretch {
    align-self: stretch !important;
  }

  .order-sm-first {
    order: -1 !important;
  }

  .order-sm-0 {
    order: 0 !important;
  }

  .order-sm-1 {
    order: 1 !important;
  }

  .order-sm-2 {
    order: 2 !important;
  }

  .order-sm-3 {
    order: 3 !important;
  }

  .order-sm-4 {
    order: 4 !important;
  }

  .order-sm-5 {
    order: 5 !important;
  }

  .order-sm-last {
    order: 6 !important;
  }

  .m-sm-0 {
    margin: 0 !important;
  }

  .m-sm-1 {
    margin: 0.25rem !important;
  }

  .m-sm-2 {
    margin: 0.5rem !important;
  }

  .m-sm-3 {
    margin: 1rem !important;
  }

  .m-sm-4 {
    margin: 1.5rem !important;
  }

  .m-sm-5 {
    margin: 3rem !important;
  }

  .m-sm-auto {
    margin: auto !important;
  }

  .mx-sm-0 {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .mx-sm-1 {
    margin-left: 0.25rem !important;
    margin-right: 0.25rem !important;
  }

  .mx-sm-2 {
    margin-left: 0.5rem !important;
    margin-right: 0.5rem !important;
  }

  .mx-sm-3 {
    margin-left: 1rem !important;
    margin-right: 1rem !important;
  }

  .mx-sm-4 {
    margin-left: 1.5rem !important;
    margin-right: 1.5rem !important;
  }

  .mx-sm-5 {
    margin-left: 3rem !important;
    margin-right: 3rem !important;
  }

  .mx-sm-auto {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .my-sm-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .my-sm-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

  .my-sm-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

  .my-sm-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

  .my-sm-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

  .my-sm-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

  .my-sm-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }

  .mt-sm-0 {
    margin-top: 0 !important;
  }

  .mt-sm-1 {
    margin-top: 0.25rem !important;
  }

  .mt-sm-2 {
    margin-top: 0.5rem !important;
  }

  .mt-sm-3 {
    margin-top: 1rem !important;
  }

  .mt-sm-4 {
    margin-top: 1.5rem !important;
  }

  .mt-sm-5 {
    margin-top: 3rem !important;
  }

  .mt-sm-auto {
    margin-top: auto !important;
  }

  .me-sm-0 {
    margin-left: 0 !important;
  }

  .me-sm-1 {
    margin-left: 0.25rem !important;
  }

  .me-sm-2 {
    margin-left: 0.5rem !important;
  }

  .me-sm-3 {
    margin-left: 1rem !important;
  }

  .me-sm-4 {
    margin-left: 1.5rem !important;
  }

  .me-sm-5 {
    margin-left: 3rem !important;
  }

  .me-sm-auto {
    margin-left: auto !important;
  }

  .mb-sm-0 {
    margin-bottom: 0 !important;
  }

  .mb-sm-1 {
    margin-bottom: 0.25rem !important;
  }

  .mb-sm-2 {
    margin-bottom: 0.5rem !important;
  }

  .mb-sm-3 {
    margin-bottom: 1rem !important;
  }

  .mb-sm-4 {
    margin-bottom: 1.5rem !important;
  }

  .mb-sm-5 {
    margin-bottom: 3rem !important;
  }

  .mb-sm-auto {
    margin-bottom: auto !important;
  }

  .ms-sm-0 {
    margin-right: 0 !important;
  }

  .ms-sm-1 {
    margin-right: 0.25rem !important;
  }

  .ms-sm-2 {
    margin-right: 0.5rem !important;
  }

  .ms-sm-3 {
    margin-right: 1rem !important;
  }

  .ms-sm-4 {
    margin-right: 1.5rem !important;
  }

  .ms-sm-5 {
    margin-right: 3rem !important;
  }

  .ms-sm-auto {
    margin-right: auto !important;
  }

  .p-sm-0 {
    padding: 0 !important;
  }

  .p-sm-1 {
    padding: 0.25rem !important;
  }

  .p-sm-2 {
    padding: 0.5rem !important;
  }

  .p-sm-3 {
    padding: 1rem !important;
  }

  .p-sm-4 {
    padding: 1.5rem !important;
  }

  .p-sm-5 {
    padding: 3rem !important;
  }

  .px-sm-0 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .px-sm-1 {
    padding-left: 0.25rem !important;
    padding-right: 0.25rem !important;
  }

  .px-sm-2 {
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
  }

  .px-sm-3 {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }

  .px-sm-4 {
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
  }

  .px-sm-5 {
    padding-left: 3rem !important;
    padding-right: 3rem !important;
  }

  .py-sm-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .py-sm-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

  .py-sm-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  .py-sm-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

  .py-sm-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

  .py-sm-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

  .pt-sm-0 {
    padding-top: 0 !important;
  }

  .pt-sm-1 {
    padding-top: 0.25rem !important;
  }

  .pt-sm-2 {
    padding-top: 0.5rem !important;
  }

  .pt-sm-3 {
    padding-top: 1rem !important;
  }

  .pt-sm-4 {
    padding-top: 1.5rem !important;
  }

  .pt-sm-5 {
    padding-top: 3rem !important;
  }

  .pe-sm-0 {
    padding-left: 0 !important;
  }

  .pe-sm-1 {
    padding-left: 0.25rem !important;
  }

  .pe-sm-2 {
    padding-left: 0.5rem !important;
  }

  .pe-sm-3 {
    padding-left: 1rem !important;
  }

  .pe-sm-4 {
    padding-left: 1.5rem !important;
  }

  .pe-sm-5 {
    padding-left: 3rem !important;
  }

  .pb-sm-0 {
    padding-bottom: 0 !important;
  }

  .pb-sm-1 {
    padding-bottom: 0.25rem !important;
  }

  .pb-sm-2 {
    padding-bottom: 0.5rem !important;
  }

  .pb-sm-3 {
    padding-bottom: 1rem !important;
  }

  .pb-sm-4 {
    padding-bottom: 1.5rem !important;
  }

  .pb-sm-5 {
    padding-bottom: 3rem !important;
  }

  .ps-sm-0 {
    padding-right: 0 !important;
  }

  .ps-sm-1 {
    padding-right: 0.25rem !important;
  }

  .ps-sm-2 {
    padding-right: 0.5rem !important;
  }

  .ps-sm-3 {
    padding-right: 1rem !important;
  }

  .ps-sm-4 {
    padding-right: 1.5rem !important;
  }

  .ps-sm-5 {
    padding-right: 3rem !important;
  }

  .text-sm-start {
    text-align: right !important;
  }

  .text-sm-end {
    text-align: left !important;
  }

  .text-sm-center {
    text-align: center !important;
  }
}
@media (min-width: 768px) {
  .float-md-start {
    float: right !important;
  }

  .float-md-end {
    float: left !important;
  }

  .float-md-none {
    float: none !important;
  }

  .d-md-inline {
    display: inline !important;
  }

  .d-md-inline-block {
    display: inline-block !important;
  }

  .d-md-block {
    display: block !important;
  }

  .d-md-grid {
    display: grid !important;
  }

  .d-md-table {
    display: table !important;
  }

  .d-md-table-row {
    display: table-row !important;
  }

  .d-md-table-cell {
    display: table-cell !important;
  }

  .d-md-flex {
    display: flex !important;
  }

  .d-md-inline-flex {
    display: inline-flex !important;
  }

  .d-md-none {
    display: none !important;
  }

  .flex-md-fill {
    flex: 1 1 auto !important;
  }

  .flex-md-row {
    flex-direction: row !important;
  }

  .flex-md-column {
    flex-direction: column !important;
  }

  .flex-md-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-md-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-md-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-md-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-md-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-md-shrink-1 {
    flex-shrink: 1 !important;
  }

  .flex-md-wrap {
    flex-wrap: wrap !important;
  }

  .flex-md-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .gap-md-0 {
    gap: 0 !important;
  }

  .gap-md-1 {
    gap: 0.25rem !important;
  }

  .gap-md-2 {
    gap: 0.5rem !important;
  }

  .gap-md-3 {
    gap: 1rem !important;
  }

  .gap-md-4 {
    gap: 1.5rem !important;
  }

  .gap-md-5 {
    gap: 3rem !important;
  }

  .justify-content-md-start {
    justify-content: flex-start !important;
  }

  .justify-content-md-end {
    justify-content: flex-end !important;
  }

  .justify-content-md-center {
    justify-content: center !important;
  }

  .justify-content-md-between {
    justify-content: space-between !important;
  }

  .justify-content-md-around {
    justify-content: space-around !important;
  }

  .justify-content-md-evenly {
    justify-content: space-evenly !important;
  }

  .align-items-md-start {
    align-items: flex-start !important;
  }

  .align-items-md-end {
    align-items: flex-end !important;
  }

  .align-items-md-center {
    align-items: center !important;
  }

  .align-items-md-baseline {
    align-items: baseline !important;
  }

  .align-items-md-stretch {
    align-items: stretch !important;
  }

  .align-content-md-start {
    align-content: flex-start !important;
  }

  .align-content-md-end {
    align-content: flex-end !important;
  }

  .align-content-md-center {
    align-content: center !important;
  }

  .align-content-md-between {
    align-content: space-between !important;
  }

  .align-content-md-around {
    align-content: space-around !important;
  }

  .align-content-md-stretch {
    align-content: stretch !important;
  }

  .align-self-md-auto {
    align-self: auto !important;
  }

  .align-self-md-start {
    align-self: flex-start !important;
  }

  .align-self-md-end {
    align-self: flex-end !important;
  }

  .align-self-md-center {
    align-self: center !important;
  }

  .align-self-md-baseline {
    align-self: baseline !important;
  }

  .align-self-md-stretch {
    align-self: stretch !important;
  }

  .order-md-first {
    order: -1 !important;
  }

  .order-md-0 {
    order: 0 !important;
  }

  .order-md-1 {
    order: 1 !important;
  }

  .order-md-2 {
    order: 2 !important;
  }

  .order-md-3 {
    order: 3 !important;
  }

  .order-md-4 {
    order: 4 !important;
  }

  .order-md-5 {
    order: 5 !important;
  }

  .order-md-last {
    order: 6 !important;
  }

  .m-md-0 {
    margin: 0 !important;
  }

  .m-md-1 {
    margin: 0.25rem !important;
  }

  .m-md-2 {
    margin: 0.5rem !important;
  }

  .m-md-3 {
    margin: 1rem !important;
  }

  .m-md-4 {
    margin: 1.5rem !important;
  }

  .m-md-5 {
    margin: 3rem !important;
  }

  .m-md-auto {
    margin: auto !important;
  }

  .mx-md-0 {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .mx-md-1 {
    margin-left: 0.25rem !important;
    margin-right: 0.25rem !important;
  }

  .mx-md-2 {
    margin-left: 0.5rem !important;
    margin-right: 0.5rem !important;
  }

  .mx-md-3 {
    margin-left: 1rem !important;
    margin-right: 1rem !important;
  }

  .mx-md-4 {
    margin-left: 1.5rem !important;
    margin-right: 1.5rem !important;
  }

  .mx-md-5 {
    margin-left: 3rem !important;
    margin-right: 3rem !important;
  }

  .mx-md-auto {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .my-md-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .my-md-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

  .my-md-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

  .my-md-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

  .my-md-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

  .my-md-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

  .my-md-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }

  .mt-md-0 {
    margin-top: 0 !important;
  }

  .mt-md-1 {
    margin-top: 0.25rem !important;
  }

  .mt-md-2 {
    margin-top: 0.5rem !important;
  }

  .mt-md-3 {
    margin-top: 1rem !important;
  }

  .mt-md-4 {
    margin-top: 1.5rem !important;
  }

  .mt-md-5 {
    margin-top: 3rem !important;
  }

  .mt-md-auto {
    margin-top: auto !important;
  }

  .me-md-0 {
    margin-left: 0 !important;
  }

  .me-md-1 {
    margin-left: 0.25rem !important;
  }

  .me-md-2 {
    margin-left: 0.5rem !important;
  }

  .me-md-3 {
    margin-left: 1rem !important;
  }

  .me-md-4 {
    margin-left: 1.5rem !important;
  }

  .me-md-5 {
    margin-left: 3rem !important;
  }

  .me-md-auto {
    margin-left: auto !important;
  }

  .mb-md-0 {
    margin-bottom: 0 !important;
  }

  .mb-md-1 {
    margin-bottom: 0.25rem !important;
  }

  .mb-md-2 {
    margin-bottom: 0.5rem !important;
  }

  .mb-md-3 {
    margin-bottom: 1rem !important;
  }

  .mb-md-4 {
    margin-bottom: 1.5rem !important;
  }

  .mb-md-5 {
    margin-bottom: 3rem !important;
  }

  .mb-md-auto {
    margin-bottom: auto !important;
  }

  .ms-md-0 {
    margin-right: 0 !important;
  }

  .ms-md-1 {
    margin-right: 0.25rem !important;
  }

  .ms-md-2 {
    margin-right: 0.5rem !important;
  }

  .ms-md-3 {
    margin-right: 1rem !important;
  }

  .ms-md-4 {
    margin-right: 1.5rem !important;
  }

  .ms-md-5 {
    margin-right: 3rem !important;
  }

  .ms-md-auto {
    margin-right: auto !important;
  }

  .p-md-0 {
    padding: 0 !important;
  }

  .p-md-1 {
    padding: 0.25rem !important;
  }

  .p-md-2 {
    padding: 0.5rem !important;
  }

  .p-md-3 {
    padding: 1rem !important;
  }

  .p-md-4 {
    padding: 1.5rem !important;
  }

  .p-md-5 {
    padding: 3rem !important;
  }

  .px-md-0 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .px-md-1 {
    padding-left: 0.25rem !important;
    padding-right: 0.25rem !important;
  }

  .px-md-2 {
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
  }

  .px-md-3 {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }

  .px-md-4 {
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
  }

  .px-md-5 {
    padding-left: 3rem !important;
    padding-right: 3rem !important;
  }

  .py-md-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .py-md-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

  .py-md-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  .py-md-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

  .py-md-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

  .py-md-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

  .pt-md-0 {
    padding-top: 0 !important;
  }

  .pt-md-1 {
    padding-top: 0.25rem !important;
  }

  .pt-md-2 {
    padding-top: 0.5rem !important;
  }

  .pt-md-3 {
    padding-top: 1rem !important;
  }

  .pt-md-4 {
    padding-top: 1.5rem !important;
  }

  .pt-md-5 {
    padding-top: 3rem !important;
  }

  .pe-md-0 {
    padding-left: 0 !important;
  }

  .pe-md-1 {
    padding-left: 0.25rem !important;
  }

  .pe-md-2 {
    padding-left: 0.5rem !important;
  }

  .pe-md-3 {
    padding-left: 1rem !important;
  }

  .pe-md-4 {
    padding-left: 1.5rem !important;
  }

  .pe-md-5 {
    padding-left: 3rem !important;
  }

  .pb-md-0 {
    padding-bottom: 0 !important;
  }

  .pb-md-1 {
    padding-bottom: 0.25rem !important;
  }

  .pb-md-2 {
    padding-bottom: 0.5rem !important;
  }

  .pb-md-3 {
    padding-bottom: 1rem !important;
  }

  .pb-md-4 {
    padding-bottom: 1.5rem !important;
  }

  .pb-md-5 {
    padding-bottom: 3rem !important;
  }

  .ps-md-0 {
    padding-right: 0 !important;
  }

  .ps-md-1 {
    padding-right: 0.25rem !important;
  }

  .ps-md-2 {
    padding-right: 0.5rem !important;
  }

  .ps-md-3 {
    padding-right: 1rem !important;
  }

  .ps-md-4 {
    padding-right: 1.5rem !important;
  }

  .ps-md-5 {
    padding-right: 3rem !important;
  }

  .text-md-start {
    text-align: right !important;
  }

  .text-md-end {
    text-align: left !important;
  }

  .text-md-center {
    text-align: center !important;
  }
}
@media (min-width: 992px) {
  .float-lg-start {
    float: right !important;
  }

  .float-lg-end {
    float: left !important;
  }

  .float-lg-none {
    float: none !important;
  }

  .d-lg-inline {
    display: inline !important;
  }

  .d-lg-inline-block {
    display: inline-block !important;
  }

  .d-lg-block {
    display: block !important;
  }

  .d-lg-grid {
    display: grid !important;
  }

  .d-lg-table {
    display: table !important;
  }

  .d-lg-table-row {
    display: table-row !important;
  }

  .d-lg-table-cell {
    display: table-cell !important;
  }

  .d-lg-flex {
    display: flex !important;
  }

  .d-lg-inline-flex {
    display: inline-flex !important;
  }

  .d-lg-none {
    display: none !important;
  }

  .flex-lg-fill {
    flex: 1 1 auto !important;
  }

  .flex-lg-row {
    flex-direction: row !important;
  }

  .flex-lg-column {
    flex-direction: column !important;
  }

  .flex-lg-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-lg-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-lg-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-lg-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-lg-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-lg-shrink-1 {
    flex-shrink: 1 !important;
  }

  .flex-lg-wrap {
    flex-wrap: wrap !important;
  }

  .flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .gap-lg-0 {
    gap: 0 !important;
  }

  .gap-lg-1 {
    gap: 0.25rem !important;
  }

  .gap-lg-2 {
    gap: 0.5rem !important;
  }

  .gap-lg-3 {
    gap: 1rem !important;
  }

  .gap-lg-4 {
    gap: 1.5rem !important;
  }

  .gap-lg-5 {
    gap: 3rem !important;
  }

  .justify-content-lg-start {
    justify-content: flex-start !important;
  }

  .justify-content-lg-end {
    justify-content: flex-end !important;
  }

  .justify-content-lg-center {
    justify-content: center !important;
  }

  .justify-content-lg-between {
    justify-content: space-between !important;
  }

  .justify-content-lg-around {
    justify-content: space-around !important;
  }

  .justify-content-lg-evenly {
    justify-content: space-evenly !important;
  }

  .align-items-lg-start {
    align-items: flex-start !important;
  }

  .align-items-lg-end {
    align-items: flex-end !important;
  }

  .align-items-lg-center {
    align-items: center !important;
  }

  .align-items-lg-baseline {
    align-items: baseline !important;
  }

  .align-items-lg-stretch {
    align-items: stretch !important;
  }

  .align-content-lg-start {
    align-content: flex-start !important;
  }

  .align-content-lg-end {
    align-content: flex-end !important;
  }

  .align-content-lg-center {
    align-content: center !important;
  }

  .align-content-lg-between {
    align-content: space-between !important;
  }

  .align-content-lg-around {
    align-content: space-around !important;
  }

  .align-content-lg-stretch {
    align-content: stretch !important;
  }

  .align-self-lg-auto {
    align-self: auto !important;
  }

  .align-self-lg-start {
    align-self: flex-start !important;
  }

  .align-self-lg-end {
    align-self: flex-end !important;
  }

  .align-self-lg-center {
    align-self: center !important;
  }

  .align-self-lg-baseline {
    align-self: baseline !important;
  }

  .align-self-lg-stretch {
    align-self: stretch !important;
  }

  .order-lg-first {
    order: -1 !important;
  }

  .order-lg-0 {
    order: 0 !important;
  }

  .order-lg-1 {
    order: 1 !important;
  }

  .order-lg-2 {
    order: 2 !important;
  }

  .order-lg-3 {
    order: 3 !important;
  }

  .order-lg-4 {
    order: 4 !important;
  }

  .order-lg-5 {
    order: 5 !important;
  }

  .order-lg-last {
    order: 6 !important;
  }

  .m-lg-0 {
    margin: 0 !important;
  }

  .m-lg-1 {
    margin: 0.25rem !important;
  }

  .m-lg-2 {
    margin: 0.5rem !important;
  }

  .m-lg-3 {
    margin: 1rem !important;
  }

  .m-lg-4 {
    margin: 1.5rem !important;
  }

  .m-lg-5 {
    margin: 3rem !important;
  }

  .m-lg-auto {
    margin: auto !important;
  }

  .mx-lg-0 {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .mx-lg-1 {
    margin-left: 0.25rem !important;
    margin-right: 0.25rem !important;
  }

  .mx-lg-2 {
    margin-left: 0.5rem !important;
    margin-right: 0.5rem !important;
  }

  .mx-lg-3 {
    margin-left: 1rem !important;
    margin-right: 1rem !important;
  }

  .mx-lg-4 {
    margin-left: 1.5rem !important;
    margin-right: 1.5rem !important;
  }

  .mx-lg-5 {
    margin-left: 3rem !important;
    margin-right: 3rem !important;
  }

  .mx-lg-auto {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .my-lg-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .my-lg-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

  .my-lg-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

  .my-lg-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

  .my-lg-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

  .my-lg-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

  .my-lg-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }

  .mt-lg-0 {
    margin-top: 0 !important;
  }

  .mt-lg-1 {
    margin-top: 0.25rem !important;
  }

  .mt-lg-2 {
    margin-top: 0.5rem !important;
  }

  .mt-lg-3 {
    margin-top: 1rem !important;
  }

  .mt-lg-4 {
    margin-top: 1.5rem !important;
  }

  .mt-lg-5 {
    margin-top: 3rem !important;
  }

  .mt-lg-auto {
    margin-top: auto !important;
  }

  .me-lg-0 {
    margin-left: 0 !important;
  }

  .me-lg-1 {
    margin-left: 0.25rem !important;
  }

  .me-lg-2 {
    margin-left: 0.5rem !important;
  }

  .me-lg-3 {
    margin-left: 1rem !important;
  }

  .me-lg-4 {
    margin-left: 1.5rem !important;
  }

  .me-lg-5 {
    margin-left: 3rem !important;
  }

  .me-lg-auto {
    margin-left: auto !important;
  }

  .mb-lg-0 {
    margin-bottom: 0 !important;
  }

  .mb-lg-1 {
    margin-bottom: 0.25rem !important;
  }

  .mb-lg-2 {
    margin-bottom: 0.5rem !important;
  }

  .mb-lg-3 {
    margin-bottom: 1rem !important;
  }

  .mb-lg-4 {
    margin-bottom: 1.5rem !important;
  }

  .mb-lg-5 {
    margin-bottom: 3rem !important;
  }

  .mb-lg-auto {
    margin-bottom: auto !important;
  }

  .ms-lg-0 {
    margin-right: 0 !important;
  }

  .ms-lg-1 {
    margin-right: 0.25rem !important;
  }

  .ms-lg-2 {
    margin-right: 0.5rem !important;
  }

  .ms-lg-3 {
    margin-right: 1rem !important;
  }

  .ms-lg-4 {
    margin-right: 1.5rem !important;
  }

  .ms-lg-5 {
    margin-right: 3rem !important;
  }

  .ms-lg-auto {
    margin-right: auto !important;
  }

  .p-lg-0 {
    padding: 0 !important;
  }

  .p-lg-1 {
    padding: 0.25rem !important;
  }

  .p-lg-2 {
    padding: 0.5rem !important;
  }

  .p-lg-3 {
    padding: 1rem !important;
  }

  .p-lg-4 {
    padding: 1.5rem !important;
  }

  .p-lg-5 {
    padding: 3rem !important;
  }

  .px-lg-0 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .px-lg-1 {
    padding-left: 0.25rem !important;
    padding-right: 0.25rem !important;
  }

  .px-lg-2 {
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
  }

  .px-lg-3 {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }

  .px-lg-4 {
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
  }

  .px-lg-5 {
    padding-left: 3rem !important;
    padding-right: 3rem !important;
  }

  .py-lg-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .py-lg-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

  .py-lg-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  .py-lg-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

  .py-lg-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

  .py-lg-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

  .pt-lg-0 {
    padding-top: 0 !important;
  }

  .pt-lg-1 {
    padding-top: 0.25rem !important;
  }

  .pt-lg-2 {
    padding-top: 0.5rem !important;
  }

  .pt-lg-3 {
    padding-top: 1rem !important;
  }

  .pt-lg-4 {
    padding-top: 1.5rem !important;
  }

  .pt-lg-5 {
    padding-top: 3rem !important;
  }

  .pe-lg-0 {
    padding-left: 0 !important;
  }

  .pe-lg-1 {
    padding-left: 0.25rem !important;
  }

  .pe-lg-2 {
    padding-left: 0.5rem !important;
  }

  .pe-lg-3 {
    padding-left: 1rem !important;
  }

  .pe-lg-4 {
    padding-left: 1.5rem !important;
  }

  .pe-lg-5 {
    padding-left: 3rem !important;
  }

  .pb-lg-0 {
    padding-bottom: 0 !important;
  }

  .pb-lg-1 {
    padding-bottom: 0.25rem !important;
  }

  .pb-lg-2 {
    padding-bottom: 0.5rem !important;
  }

  .pb-lg-3 {
    padding-bottom: 1rem !important;
  }

  .pb-lg-4 {
    padding-bottom: 1.5rem !important;
  }

  .pb-lg-5 {
    padding-bottom: 3rem !important;
  }

  .ps-lg-0 {
    padding-right: 0 !important;
  }

  .ps-lg-1 {
    padding-right: 0.25rem !important;
  }

  .ps-lg-2 {
    padding-right: 0.5rem !important;
  }

  .ps-lg-3 {
    padding-right: 1rem !important;
  }

  .ps-lg-4 {
    padding-right: 1.5rem !important;
  }

  .ps-lg-5 {
    padding-right: 3rem !important;
  }

  .text-lg-start {
    text-align: right !important;
  }

  .text-lg-end {
    text-align: left !important;
  }

  .text-lg-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .float-xl-start {
    float: right !important;
  }

  .float-xl-end {
    float: left !important;
  }

  .float-xl-none {
    float: none !important;
  }

  .d-xl-inline {
    display: inline !important;
  }

  .d-xl-inline-block {
    display: inline-block !important;
  }

  .d-xl-block {
    display: block !important;
  }

  .d-xl-grid {
    display: grid !important;
  }

  .d-xl-table {
    display: table !important;
  }

  .d-xl-table-row {
    display: table-row !important;
  }

  .d-xl-table-cell {
    display: table-cell !important;
  }

  .d-xl-flex {
    display: flex !important;
  }

  .d-xl-inline-flex {
    display: inline-flex !important;
  }

  .d-xl-none {
    display: none !important;
  }

  .flex-xl-fill {
    flex: 1 1 auto !important;
  }

  .flex-xl-row {
    flex-direction: row !important;
  }

  .flex-xl-column {
    flex-direction: column !important;
  }

  .flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-xl-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-xl-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-xl-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-xl-shrink-1 {
    flex-shrink: 1 !important;
  }

  .flex-xl-wrap {
    flex-wrap: wrap !important;
  }

  .flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .gap-xl-0 {
    gap: 0 !important;
  }

  .gap-xl-1 {
    gap: 0.25rem !important;
  }

  .gap-xl-2 {
    gap: 0.5rem !important;
  }

  .gap-xl-3 {
    gap: 1rem !important;
  }

  .gap-xl-4 {
    gap: 1.5rem !important;
  }

  .gap-xl-5 {
    gap: 3rem !important;
  }

  .justify-content-xl-start {
    justify-content: flex-start !important;
  }

  .justify-content-xl-end {
    justify-content: flex-end !important;
  }

  .justify-content-xl-center {
    justify-content: center !important;
  }

  .justify-content-xl-between {
    justify-content: space-between !important;
  }

  .justify-content-xl-around {
    justify-content: space-around !important;
  }

  .justify-content-xl-evenly {
    justify-content: space-evenly !important;
  }

  .align-items-xl-start {
    align-items: flex-start !important;
  }

  .align-items-xl-end {
    align-items: flex-end !important;
  }

  .align-items-xl-center {
    align-items: center !important;
  }

  .align-items-xl-baseline {
    align-items: baseline !important;
  }

  .align-items-xl-stretch {
    align-items: stretch !important;
  }

  .align-content-xl-start {
    align-content: flex-start !important;
  }

  .align-content-xl-end {
    align-content: flex-end !important;
  }

  .align-content-xl-center {
    align-content: center !important;
  }

  .align-content-xl-between {
    align-content: space-between !important;
  }

  .align-content-xl-around {
    align-content: space-around !important;
  }

  .align-content-xl-stretch {
    align-content: stretch !important;
  }

  .align-self-xl-auto {
    align-self: auto !important;
  }

  .align-self-xl-start {
    align-self: flex-start !important;
  }

  .align-self-xl-end {
    align-self: flex-end !important;
  }

  .align-self-xl-center {
    align-self: center !important;
  }

  .align-self-xl-baseline {
    align-self: baseline !important;
  }

  .align-self-xl-stretch {
    align-self: stretch !important;
  }

  .order-xl-first {
    order: -1 !important;
  }

  .order-xl-0 {
    order: 0 !important;
  }

  .order-xl-1 {
    order: 1 !important;
  }

  .order-xl-2 {
    order: 2 !important;
  }

  .order-xl-3 {
    order: 3 !important;
  }

  .order-xl-4 {
    order: 4 !important;
  }

  .order-xl-5 {
    order: 5 !important;
  }

  .order-xl-last {
    order: 6 !important;
  }

  .m-xl-0 {
    margin: 0 !important;
  }

  .m-xl-1 {
    margin: 0.25rem !important;
  }

  .m-xl-2 {
    margin: 0.5rem !important;
  }

  .m-xl-3 {
    margin: 1rem !important;
  }

  .m-xl-4 {
    margin: 1.5rem !important;
  }

  .m-xl-5 {
    margin: 3rem !important;
  }

  .m-xl-auto {
    margin: auto !important;
  }

  .mx-xl-0 {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .mx-xl-1 {
    margin-left: 0.25rem !important;
    margin-right: 0.25rem !important;
  }

  .mx-xl-2 {
    margin-left: 0.5rem !important;
    margin-right: 0.5rem !important;
  }

  .mx-xl-3 {
    margin-left: 1rem !important;
    margin-right: 1rem !important;
  }

  .mx-xl-4 {
    margin-left: 1.5rem !important;
    margin-right: 1.5rem !important;
  }

  .mx-xl-5 {
    margin-left: 3rem !important;
    margin-right: 3rem !important;
  }

  .mx-xl-auto {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .my-xl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .my-xl-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

  .my-xl-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

  .my-xl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

  .my-xl-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

  .my-xl-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

  .my-xl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }

  .mt-xl-0 {
    margin-top: 0 !important;
  }

  .mt-xl-1 {
    margin-top: 0.25rem !important;
  }

  .mt-xl-2 {
    margin-top: 0.5rem !important;
  }

  .mt-xl-3 {
    margin-top: 1rem !important;
  }

  .mt-xl-4 {
    margin-top: 1.5rem !important;
  }

  .mt-xl-5 {
    margin-top: 3rem !important;
  }

  .mt-xl-auto {
    margin-top: auto !important;
  }

  .me-xl-0 {
    margin-left: 0 !important;
  }

  .me-xl-1 {
    margin-left: 0.25rem !important;
  }

  .me-xl-2 {
    margin-left: 0.5rem !important;
  }

  .me-xl-3 {
    margin-left: 1rem !important;
  }

  .me-xl-4 {
    margin-left: 1.5rem !important;
  }

  .me-xl-5 {
    margin-left: 3rem !important;
  }

  .me-xl-auto {
    margin-left: auto !important;
  }

  .mb-xl-0 {
    margin-bottom: 0 !important;
  }

  .mb-xl-1 {
    margin-bottom: 0.25rem !important;
  }

  .mb-xl-2 {
    margin-bottom: 0.5rem !important;
  }

  .mb-xl-3 {
    margin-bottom: 1rem !important;
  }

  .mb-xl-4 {
    margin-bottom: 1.5rem !important;
  }

  .mb-xl-5 {
    margin-bottom: 3rem !important;
  }

  .mb-xl-auto {
    margin-bottom: auto !important;
  }

  .ms-xl-0 {
    margin-right: 0 !important;
  }

  .ms-xl-1 {
    margin-right: 0.25rem !important;
  }

  .ms-xl-2 {
    margin-right: 0.5rem !important;
  }

  .ms-xl-3 {
    margin-right: 1rem !important;
  }

  .ms-xl-4 {
    margin-right: 1.5rem !important;
  }

  .ms-xl-5 {
    margin-right: 3rem !important;
  }

  .ms-xl-auto {
    margin-right: auto !important;
  }

  .p-xl-0 {
    padding: 0 !important;
  }

  .p-xl-1 {
    padding: 0.25rem !important;
  }

  .p-xl-2 {
    padding: 0.5rem !important;
  }

  .p-xl-3 {
    padding: 1rem !important;
  }

  .p-xl-4 {
    padding: 1.5rem !important;
  }

  .p-xl-5 {
    padding: 3rem !important;
  }

  .px-xl-0 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .px-xl-1 {
    padding-left: 0.25rem !important;
    padding-right: 0.25rem !important;
  }

  .px-xl-2 {
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
  }

  .px-xl-3 {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }

  .px-xl-4 {
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
  }

  .px-xl-5 {
    padding-left: 3rem !important;
    padding-right: 3rem !important;
  }

  .py-xl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .py-xl-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

  .py-xl-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  .py-xl-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

  .py-xl-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

  .py-xl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

  .pt-xl-0 {
    padding-top: 0 !important;
  }

  .pt-xl-1 {
    padding-top: 0.25rem !important;
  }

  .pt-xl-2 {
    padding-top: 0.5rem !important;
  }

  .pt-xl-3 {
    padding-top: 1rem !important;
  }

  .pt-xl-4 {
    padding-top: 1.5rem !important;
  }

  .pt-xl-5 {
    padding-top: 3rem !important;
  }

  .pe-xl-0 {
    padding-left: 0 !important;
  }

  .pe-xl-1 {
    padding-left: 0.25rem !important;
  }

  .pe-xl-2 {
    padding-left: 0.5rem !important;
  }

  .pe-xl-3 {
    padding-left: 1rem !important;
  }

  .pe-xl-4 {
    padding-left: 1.5rem !important;
  }

  .pe-xl-5 {
    padding-left: 3rem !important;
  }

  .pb-xl-0 {
    padding-bottom: 0 !important;
  }

  .pb-xl-1 {
    padding-bottom: 0.25rem !important;
  }

  .pb-xl-2 {
    padding-bottom: 0.5rem !important;
  }

  .pb-xl-3 {
    padding-bottom: 1rem !important;
  }

  .pb-xl-4 {
    padding-bottom: 1.5rem !important;
  }

  .pb-xl-5 {
    padding-bottom: 3rem !important;
  }

  .ps-xl-0 {
    padding-right: 0 !important;
  }

  .ps-xl-1 {
    padding-right: 0.25rem !important;
  }

  .ps-xl-2 {
    padding-right: 0.5rem !important;
  }

  .ps-xl-3 {
    padding-right: 1rem !important;
  }

  .ps-xl-4 {
    padding-right: 1.5rem !important;
  }

  .ps-xl-5 {
    padding-right: 3rem !important;
  }

  .text-xl-start {
    text-align: right !important;
  }

  .text-xl-end {
    text-align: left !important;
  }

  .text-xl-center {
    text-align: center !important;
  }
}
@media (min-width: 1400px) {
  .float-xxl-start {
    float: right !important;
  }

  .float-xxl-end {
    float: left !important;
  }

  .float-xxl-none {
    float: none !important;
  }

  .d-xxl-inline {
    display: inline !important;
  }

  .d-xxl-inline-block {
    display: inline-block !important;
  }

  .d-xxl-block {
    display: block !important;
  }

  .d-xxl-grid {
    display: grid !important;
  }

  .d-xxl-table {
    display: table !important;
  }

  .d-xxl-table-row {
    display: table-row !important;
  }

  .d-xxl-table-cell {
    display: table-cell !important;
  }

  .d-xxl-flex {
    display: flex !important;
  }

  .d-xxl-inline-flex {
    display: inline-flex !important;
  }

  .d-xxl-none {
    display: none !important;
  }

  .flex-xxl-fill {
    flex: 1 1 auto !important;
  }

  .flex-xxl-row {
    flex-direction: row !important;
  }

  .flex-xxl-column {
    flex-direction: column !important;
  }

  .flex-xxl-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-xxl-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-xxl-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-xxl-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-xxl-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-xxl-shrink-1 {
    flex-shrink: 1 !important;
  }

  .flex-xxl-wrap {
    flex-wrap: wrap !important;
  }

  .flex-xxl-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-xxl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .gap-xxl-0 {
    gap: 0 !important;
  }

  .gap-xxl-1 {
    gap: 0.25rem !important;
  }

  .gap-xxl-2 {
    gap: 0.5rem !important;
  }

  .gap-xxl-3 {
    gap: 1rem !important;
  }

  .gap-xxl-4 {
    gap: 1.5rem !important;
  }

  .gap-xxl-5 {
    gap: 3rem !important;
  }

  .justify-content-xxl-start {
    justify-content: flex-start !important;
  }

  .justify-content-xxl-end {
    justify-content: flex-end !important;
  }

  .justify-content-xxl-center {
    justify-content: center !important;
  }

  .justify-content-xxl-between {
    justify-content: space-between !important;
  }

  .justify-content-xxl-around {
    justify-content: space-around !important;
  }

  .justify-content-xxl-evenly {
    justify-content: space-evenly !important;
  }

  .align-items-xxl-start {
    align-items: flex-start !important;
  }

  .align-items-xxl-end {
    align-items: flex-end !important;
  }

  .align-items-xxl-center {
    align-items: center !important;
  }

  .align-items-xxl-baseline {
    align-items: baseline !important;
  }

  .align-items-xxl-stretch {
    align-items: stretch !important;
  }

  .align-content-xxl-start {
    align-content: flex-start !important;
  }

  .align-content-xxl-end {
    align-content: flex-end !important;
  }

  .align-content-xxl-center {
    align-content: center !important;
  }

  .align-content-xxl-between {
    align-content: space-between !important;
  }

  .align-content-xxl-around {
    align-content: space-around !important;
  }

  .align-content-xxl-stretch {
    align-content: stretch !important;
  }

  .align-self-xxl-auto {
    align-self: auto !important;
  }

  .align-self-xxl-start {
    align-self: flex-start !important;
  }

  .align-self-xxl-end {
    align-self: flex-end !important;
  }

  .align-self-xxl-center {
    align-self: center !important;
  }

  .align-self-xxl-baseline {
    align-self: baseline !important;
  }

  .align-self-xxl-stretch {
    align-self: stretch !important;
  }

  .order-xxl-first {
    order: -1 !important;
  }

  .order-xxl-0 {
    order: 0 !important;
  }

  .order-xxl-1 {
    order: 1 !important;
  }

  .order-xxl-2 {
    order: 2 !important;
  }

  .order-xxl-3 {
    order: 3 !important;
  }

  .order-xxl-4 {
    order: 4 !important;
  }

  .order-xxl-5 {
    order: 5 !important;
  }

  .order-xxl-last {
    order: 6 !important;
  }

  .m-xxl-0 {
    margin: 0 !important;
  }

  .m-xxl-1 {
    margin: 0.25rem !important;
  }

  .m-xxl-2 {
    margin: 0.5rem !important;
  }

  .m-xxl-3 {
    margin: 1rem !important;
  }

  .m-xxl-4 {
    margin: 1.5rem !important;
  }

  .m-xxl-5 {
    margin: 3rem !important;
  }

  .m-xxl-auto {
    margin: auto !important;
  }

  .mx-xxl-0 {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .mx-xxl-1 {
    margin-left: 0.25rem !important;
    margin-right: 0.25rem !important;
  }

  .mx-xxl-2 {
    margin-left: 0.5rem !important;
    margin-right: 0.5rem !important;
  }

  .mx-xxl-3 {
    margin-left: 1rem !important;
    margin-right: 1rem !important;
  }

  .mx-xxl-4 {
    margin-left: 1.5rem !important;
    margin-right: 1.5rem !important;
  }

  .mx-xxl-5 {
    margin-left: 3rem !important;
    margin-right: 3rem !important;
  }

  .mx-xxl-auto {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .my-xxl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .my-xxl-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

  .my-xxl-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

  .my-xxl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

  .my-xxl-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

  .my-xxl-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

  .my-xxl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }

  .mt-xxl-0 {
    margin-top: 0 !important;
  }

  .mt-xxl-1 {
    margin-top: 0.25rem !important;
  }

  .mt-xxl-2 {
    margin-top: 0.5rem !important;
  }

  .mt-xxl-3 {
    margin-top: 1rem !important;
  }

  .mt-xxl-4 {
    margin-top: 1.5rem !important;
  }

  .mt-xxl-5 {
    margin-top: 3rem !important;
  }

  .mt-xxl-auto {
    margin-top: auto !important;
  }

  .me-xxl-0 {
    margin-left: 0 !important;
  }

  .me-xxl-1 {
    margin-left: 0.25rem !important;
  }

  .me-xxl-2 {
    margin-left: 0.5rem !important;
  }

  .me-xxl-3 {
    margin-left: 1rem !important;
  }

  .me-xxl-4 {
    margin-left: 1.5rem !important;
  }

  .me-xxl-5 {
    margin-left: 3rem !important;
  }

  .me-xxl-auto {
    margin-left: auto !important;
  }

  .mb-xxl-0 {
    margin-bottom: 0 !important;
  }

  .mb-xxl-1 {
    margin-bottom: 0.25rem !important;
  }

  .mb-xxl-2 {
    margin-bottom: 0.5rem !important;
  }

  .mb-xxl-3 {
    margin-bottom: 1rem !important;
  }

  .mb-xxl-4 {
    margin-bottom: 1.5rem !important;
  }

  .mb-xxl-5 {
    margin-bottom: 3rem !important;
  }

  .mb-xxl-auto {
    margin-bottom: auto !important;
  }

  .ms-xxl-0 {
    margin-right: 0 !important;
  }

  .ms-xxl-1 {
    margin-right: 0.25rem !important;
  }

  .ms-xxl-2 {
    margin-right: 0.5rem !important;
  }

  .ms-xxl-3 {
    margin-right: 1rem !important;
  }

  .ms-xxl-4 {
    margin-right: 1.5rem !important;
  }

  .ms-xxl-5 {
    margin-right: 3rem !important;
  }

  .ms-xxl-auto {
    margin-right: auto !important;
  }

  .p-xxl-0 {
    padding: 0 !important;
  }

  .p-xxl-1 {
    padding: 0.25rem !important;
  }

  .p-xxl-2 {
    padding: 0.5rem !important;
  }

  .p-xxl-3 {
    padding: 1rem !important;
  }

  .p-xxl-4 {
    padding: 1.5rem !important;
  }

  .p-xxl-5 {
    padding: 3rem !important;
  }

  .px-xxl-0 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .px-xxl-1 {
    padding-left: 0.25rem !important;
    padding-right: 0.25rem !important;
  }

  .px-xxl-2 {
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
  }

  .px-xxl-3 {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }

  .px-xxl-4 {
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
  }

  .px-xxl-5 {
    padding-left: 3rem !important;
    padding-right: 3rem !important;
  }

  .py-xxl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .py-xxl-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

  .py-xxl-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  .py-xxl-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

  .py-xxl-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

  .py-xxl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

  .pt-xxl-0 {
    padding-top: 0 !important;
  }

  .pt-xxl-1 {
    padding-top: 0.25rem !important;
  }

  .pt-xxl-2 {
    padding-top: 0.5rem !important;
  }

  .pt-xxl-3 {
    padding-top: 1rem !important;
  }

  .pt-xxl-4 {
    padding-top: 1.5rem !important;
  }

  .pt-xxl-5 {
    padding-top: 3rem !important;
  }

  .pe-xxl-0 {
    padding-left: 0 !important;
  }

  .pe-xxl-1 {
    padding-left: 0.25rem !important;
  }

  .pe-xxl-2 {
    padding-left: 0.5rem !important;
  }

  .pe-xxl-3 {
    padding-left: 1rem !important;
  }

  .pe-xxl-4 {
    padding-left: 1.5rem !important;
  }

  .pe-xxl-5 {
    padding-left: 3rem !important;
  }

  .pb-xxl-0 {
    padding-bottom: 0 !important;
  }

  .pb-xxl-1 {
    padding-bottom: 0.25rem !important;
  }

  .pb-xxl-2 {
    padding-bottom: 0.5rem !important;
  }

  .pb-xxl-3 {
    padding-bottom: 1rem !important;
  }

  .pb-xxl-4 {
    padding-bottom: 1.5rem !important;
  }

  .pb-xxl-5 {
    padding-bottom: 3rem !important;
  }

  .ps-xxl-0 {
    padding-right: 0 !important;
  }

  .ps-xxl-1 {
    padding-right: 0.25rem !important;
  }

  .ps-xxl-2 {
    padding-right: 0.5rem !important;
  }

  .ps-xxl-3 {
    padding-right: 1rem !important;
  }

  .ps-xxl-4 {
    padding-right: 1.5rem !important;
  }

  .ps-xxl-5 {
    padding-right: 3rem !important;
  }

  .text-xxl-start {
    text-align: right !important;
  }

  .text-xxl-end {
    text-align: left !important;
  }

  .text-xxl-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .fs-1 {
    font-size: 2.5rem !important;
  }

  .fs-2 {
    font-size: 2rem !important;
  }

  .fs-3 {
    font-size: 1.75rem !important;
  }

  .fs-4 {
    font-size: 1.5rem !important;
  }
}
@media print {
  .d-print-inline {
    display: inline !important;
  }

  .d-print-inline-block {
    display: inline-block !important;
  }

  .d-print-block {
    display: block !important;
  }

  .d-print-grid {
    display: grid !important;
  }

  .d-print-table {
    display: table !important;
  }

  .d-print-table-row {
    display: table-row !important;
  }

  .d-print-table-cell {
    display: table-cell !important;
  }

  .d-print-flex {
    display: flex !important;
  }

  .d-print-inline-flex {
    display: inline-flex !important;
  }

  .d-print-none {
    display: none !important;
  }
}
/*# sourceMappingURL=bootstrap.rtl.css.map */
/* /assets/fontawesome/css/all.min.css */
/*! [ناظر یدک] اعلان‌های @font-face به fa-fonts.css منتقل شده‌اند و آنجا غیرمسدودکننده بارگذاری می‌شوند. */
/*!
 * Font Awesome Free 5.14.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
.fa,.fab,.fad,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-acquisitions-incorporated:before{content:"\f6af"}.fa-ad:before{content:"\f641"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adobe:before{content:"\f778"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-air-freshener:before{content:"\f5d0"}.fa-airbnb:before{content:"\f834"}.fa-algolia:before{content:"\f36c"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-alipay:before{content:"\f642"}.fa-allergies:before{content:"\f461"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angry:before{content:"\f556"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-ankh:before{content:"\f644"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-alt:before{content:"\f5d1"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-archway:before{content:"\f557"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-artstation:before{content:"\f77a"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-atlas:before{content:"\f558"}.fa-atlassian:before{content:"\f77b"}.fa-atom:before{content:"\f5d2"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-award:before{content:"\f559"}.fa-aws:before{content:"\f375"}.fa-baby:before{content:"\f77c"}.fa-baby-carriage:before{content:"\f77d"}.fa-backspace:before{content:"\f55a"}.fa-backward:before{content:"\f04a"}.fa-bacon:before{content:"\f7e5"}.fa-bacteria:before{content:"\e059"}.fa-bacterium:before{content:"\e05a"}.fa-bahai:before{content:"\f666"}.fa-balance-scale:before{content:"\f24e"}.fa-balance-scale-left:before{content:"\f515"}.fa-balance-scale-right:before{content:"\f516"}.fa-ban:before{content:"\f05e"}.fa-band-aid:before{content:"\f462"}.fa-bandcamp:before{content:"\f2d5"}.fa-barcode:before{content:"\f02a"}.fa-bars:before{content:"\f0c9"}.fa-baseball-ball:before{content:"\f433"}.fa-basketball-ball:before{content:"\f434"}.fa-bath:before{content:"\f2cd"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-three-quarters:before{content:"\f241"}.fa-battle-net:before{content:"\f835"}.fa-bed:before{content:"\f236"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-slash:before{content:"\f1f6"}.fa-bezier-curve:before{content:"\f55b"}.fa-bible:before{content:"\f647"}.fa-bicycle:before{content:"\f206"}.fa-biking:before{content:"\f84a"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-biohazard:before{content:"\f780"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blender:before{content:"\f517"}.fa-blender-phone:before{content:"\f6b6"}.fa-blind:before{content:"\f29d"}.fa-blog:before{content:"\f781"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-book-dead:before{content:"\f6b7"}.fa-book-medical:before{content:"\f7e6"}.fa-book-open:before{content:"\f518"}.fa-book-reader:before{content:"\f5da"}.fa-bookmark:before{content:"\f02e"}.fa-bootstrap:before{content:"\f836"}.fa-border-all:before{content:"\f84c"}.fa-border-none:before{content:"\f850"}.fa-border-style:before{content:"\f853"}.fa-bowling-ball:before{content:"\f436"}.fa-box:before{content:"\f466"}.fa-box-open:before{content:"\f49e"}.fa-box-tissue:before{content:"\e05b"}.fa-boxes:before{content:"\f468"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-bread-slice:before{content:"\f7ec"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-broadcast-tower:before{content:"\f519"}.fa-broom:before{content:"\f51a"}.fa-brush:before{content:"\f55d"}.fa-btc:before{content:"\f15a"}.fa-buffer:before{content:"\f837"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-burn:before{content:"\f46a"}.fa-buromobelexperte:before{content:"\f37f"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before{content:"\f55e"}.fa-business-time:before{content:"\f64a"}.fa-buy-n-large:before{content:"\f8a6"}.fa-buysellads:before{content:"\f20d"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-day:before{content:"\f783"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-times:before{content:"\f273"}.fa-calendar-week:before{content:"\f784"}.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-campground:before{content:"\f6bb"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-candy-cane:before{content:"\f786"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-car:before{content:"\f1b9"}.fa-car-alt:before{content:"\f5de"}.fa-car-battery:before{content:"\f5df"}.fa-car-crash:before{content:"\f5e1"}.fa-car-side:before{content:"\f5e4"}.fa-caravan:before{content:"\f8ff"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-carrot:before{content:"\f787"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cash-register:before{content:"\f788"}.fa-cat:before{content:"\f6be"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-centos:before{content:"\f789"}.fa-certificate:before{content:"\f0a3"}.fa-chair:before{content:"\f6c0"}.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before{content:"\f51c"}.fa-charging-station:before{content:"\f5e7"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-pie:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-double:before{content:"\f560"}.fa-check-square:before{content:"\f14a"}.fa-cheese:before{content:"\f7ef"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-board:before{content:"\f43c"}.fa-chess-king:before{content:"\f43f"}.fa-chess-knight:before{content:"\f441"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-queen:before{content:"\f445"}.fa-chess-rook:before{content:"\f447"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chrome:before{content:"\f268"}.fa-chromecast:before{content:"\f838"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-city:before{content:"\f64f"}.fa-clinic-medical:before{content:"\f7f2"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-meatball:before{content:"\f73b"}.fa-cloud-moon:before{content:"\f6c3"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-cloud-rain:before{content:"\f73d"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-cloud-sun:before{content:"\f6c4"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-cocktail:before{content:"\f561"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-coins:before{content:"\f51e"}.fa-columns:before{content:"\f0db"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before{content:"\f4ad"}.fa-comment-medical:before{content:"\f7f5"}.fa-comment-slash:before{content:"\f4b3"}.fa-comments:before{content:"\f086"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compress:before{content:"\f066"}.fa-compress-alt:before{content:"\f422"}.fa-compress-arrows-alt:before{content:"\f78c"}.fa-concierge-bell:before{content:"\f562"}.fa-confluence:before{content:"\f78d"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-cotton-bureau:before{content:"\f89e"}.fa-couch:before{content:"\f4b8"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-credit-card:before{content:"\f09d"}.fa-critical-role:before{content:"\f6c9"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-crutch:before{content:"\f7f7"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-dailymotion:before{content:"\e052"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-deezer:before{content:"\e077"}.fa-delicious:before{content:"\f1a5"}.fa-democrat:before{content:"\f747"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-dev:before{content:"\f6cc"}.fa-deviantart:before{content:"\f1bd"}.fa-dharmachakra:before{content:"\f655"}.fa-dhl:before{content:"\f790"}.fa-diagnoses:before{content:"\f470"}.fa-diaspora:before{content:"\f791"}.fa-dice:before{content:"\f522"}.fa-dice-d20:before{content:"\f6cf"}.fa-dice-d6:before{content:"\f6d1"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-digital-tachograph:before{content:"\f566"}.fa-directions:before{content:"\f5eb"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-disease:before{content:"\f7fa"}.fa-divide:before{content:"\f529"}.fa-dizzy:before{content:"\f567"}.fa-dna:before{content:"\f471"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dog:before{content:"\f6d3"}.fa-dollar-sign:before{content:"\f155"}.fa-dolly:before{content:"\f472"}.fa-dolly-flatbed:before{content:"\f474"}.fa-donate:before{content:"\f4b9"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dot-circle:before{content:"\f192"}.fa-dove:before{content:"\f4ba"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-drafting-compass:before{content:"\f568"}.fa-dragon:before{content:"\f6d5"}.fa-draw-polygon:before{content:"\f5ee"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-drupal:before{content:"\f1a9"}.fa-dumbbell:before{content:"\f44b"}.fa-dumpster:before{content:"\f793"}.fa-dumpster-fire:before{content:"\f794"}.fa-dungeon:before{content:"\f6d9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-edge:before{content:"\f282"}.fa-edge-legacy:before{content:"\e078"}.fa-edit:before{content:"\f044"}.fa-egg:before{content:"\f7fb"}.fa-eject:before{content:"\f052"}.fa-elementor:before{content:"\f430"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-equals:before{content:"\f52c"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-ethernet:before{content:"\f796"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-evernote:before{content:"\f839"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-alt:before{content:"\f424"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fan:before{content:"\f863"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-faucet:before{content:"\e005"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before{content:"\f56b"}.fa-fedex:before{content:"\f797"}.fa-fedora:before{content:"\f798"}.fa-female:before{content:"\f182"}.fa-fighter-jet:before{content:"\f0fb"}.fa-figma:before{content:"\f799"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-csv:before{content:"\f6dd"}.fa-file-download:before{content:"\f56d"}.fa-file-excel:before{content:"\f1c3"}.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-medical:before{content:"\f477"}.fa-file-medical-alt:before{content:"\f478"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-signature:before{content:"\f573"}.fa-file-upload:before{content:"\f574"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-alt:before{content:"\f7e4"}.fa-fire-extinguisher:before{content:"\f134"}.fa-firefox:before{content:"\f269"}.fa-firefox-browser:before{content:"\e007"}.fa-first-aid:before{content:"\f479"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-fish:before{content:"\f578"}.fa-fist-raised:before{content:"\f6de"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flag-usa:before{content:"\f74d"}.fa-flask:before{content:"\f0c3"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-flushed:before{content:"\f579"}.fa-fly:before{content:"\f417"}.fa-folder:before{content:"\f07b"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-font-awesome-logo-full:before{content:"\f4e6"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-football-ball:before{content:"\f44e"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-frog:before{content:"\f52e"}.fa-frown:before{content:"\f119"}.fa-frown-open:before{content:"\f57a"}.fa-fulcrum:before{content:"\f50b"}.fa-funnel-dollar:before{content:"\f662"}.fa-futbol:before{content:"\f1e3"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-gamepad:before{content:"\f11b"}.fa-gas-pump:before{content:"\f52f"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-ghost:before{content:"\f6e2"}.fa-gift:before{content:"\f06b"}.fa-gifts:before{content:"\f79c"}.fa-git:before{content:"\f1d3"}.fa-git-alt:before{content:"\f841"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass-cheers:before{content:"\f79f"}.fa-glass-martini:before{content:"\f000"}.fa-glass-martini-alt:before{content:"\f57b"}.fa-glass-whiskey:before{content:"\f7a0"}.fa-glasses:before{content:"\f530"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-globe-africa:before{content:"\f57c"}.fa-globe-americas:before{content:"\f57d"}.fa-globe-asia:before{content:"\f57e"}.fa-globe-europe:before{content:"\f7a2"}.fa-gofore:before{content:"\f3a7"}.fa-golf-ball:before{content:"\f450"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-pay:before{content:"\e079"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before{content:"\f19d"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-greater-than:before{content:"\f531"}.fa-greater-than-equal:before{content:"\f532"}.fa-grimace:before{content:"\f57f"}.fa-grin:before{content:"\f580"}.fa-grin-alt:before{content:"\f581"}.fa-grin-beam:before{content:"\f582"}.fa-grin-beam-sweat:before{content:"\f583"}.fa-grin-hearts:before{content:"\f584"}.fa-grin-squint:before{content:"\f585"}.fa-grin-squint-tears:before{content:"\f586"}.fa-grin-stars:before{content:"\f587"}.fa-grin-tears:before{content:"\f588"}.fa-grin-tongue:before{content:"\f589"}.fa-grin-tongue-squint:before{content:"\f58a"}.fa-grin-tongue-wink:before{content:"\f58b"}.fa-grin-wink:before{content:"\f58c"}.fa-grip-horizontal:before{content:"\f58d"}.fa-grip-lines:before{content:"\f7a4"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-grip-vertical:before{content:"\f58e"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-guitar:before{content:"\f7a6"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hackerrank:before{content:"\f5f7"}.fa-hamburger:before{content:"\f805"}.fa-hammer:before{content:"\f6e3"}.fa-hamsa:before{content:"\f665"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-medical:before{content:"\e05c"}.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-holding-water:before{content:"\f4c1"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-middle-finger:before{content:"\f806"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-sparkles:before{content:"\e05d"}.fa-hand-spock:before{content:"\f259"}.fa-hands:before{content:"\f4c2"}.fa-hands-helping:before{content:"\f4c4"}.fa-hands-wash:before{content:"\e05e"}.fa-handshake:before{content:"\f2b5"}.fa-handshake-alt-slash:before{content:"\e05f"}.fa-handshake-slash:before{content:"\e060"}.fa-hanukiah:before{content:"\f6e6"}.fa-hard-hat:before{content:"\f807"}.fa-hashtag:before{content:"\f292"}.fa-hat-cowboy:before{content:"\f8c0"}.fa-hat-cowboy-side:before{content:"\f8c1"}.fa-hat-wizard:before{content:"\f6e8"}.fa-hdd:before{content:"\f0a0"}.fa-head-side-cough:before{content:"\e061"}.fa-head-side-cough-slash:before{content:"\e062"}.fa-head-side-mask:before{content:"\e063"}.fa-head-side-virus:before{content:"\e064"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heart-broken:before{content:"\f7a9"}.fa-heartbeat:before{content:"\f21e"}.fa-helicopter:before{content:"\f533"}.fa-highlighter:before{content:"\f591"}.fa-hiking:before{content:"\f6ec"}.fa-hippo:before{content:"\f6ed"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-hockey-puck:before{content:"\f453"}.fa-holly-berry:before{content:"\f7aa"}.fa-home:before{content:"\f015"}.fa-hooli:before{content:"\f427"}.fa-hornbill:before{content:"\f592"}.fa-horse:before{content:"\f6f0"}.fa-horse-head:before{content:"\f7ab"}.fa-hospital:before{content:"\f0f8"}.fa-hospital-alt:before{content:"\f47d"}.fa-hospital-symbol:before{content:"\f47e"}.fa-hospital-user:before{content:"\f80d"}.fa-hot-tub:before{content:"\f593"}.fa-hotdog:before{content:"\f80f"}.fa-hotel:before{content:"\f594"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-house-damage:before{content:"\f6f1"}.fa-house-user:before{content:"\e065"}.fa-houzz:before{content:"\f27c"}.fa-hryvnia:before{content:"\f6f2"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-i-cursor:before{content:"\f246"}.fa-ice-cream:before{content:"\f810"}.fa-icicles:before{content:"\f7ad"}.fa-icons:before{content:"\f86d"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before{content:"\f47f"}.fa-ideal:before{content:"\e013"}.fa-igloo:before{content:"\f7ae"}.fa-image:before{content:"\f03e"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-instagram:before{content:"\f16d"}.fa-instagram-square:before{content:"\e055"}.fa-intercom:before{content:"\f7af"}.fa-internet-explorer:before{content:"\f26b"}.fa-invision:before{content:"\f7b0"}.fa-ioxhost:before{content:"\f208"}.fa-italic:before{content:"\f033"}.fa-itch-io:before{content:"\f83a"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-java:before{content:"\f4e4"}.fa-jedi:before{content:"\f669"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-jira:before{content:"\f7b1"}.fa-joget:before{content:"\f3b7"}.fa-joint:before{content:"\f595"}.fa-joomla:before{content:"\f1aa"}.fa-journal-whills:before{content:"\f66a"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-kaaba:before{content:"\f66b"}.fa-kaggle:before{content:"\f5fa"}.fa-key:before{content:"\f084"}.fa-keybase:before{content:"\f4f5"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-khanda:before{content:"\f66d"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-kiss:before{content:"\f596"}.fa-kiss-beam:before{content:"\f597"}.fa-kiss-wink-heart:before{content:"\f598"}.fa-kiwi-bird:before{content:"\f535"}.fa-korvue:before{content:"\f42f"}.fa-landmark:before{content:"\f66f"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laptop-house:before{content:"\e066"}.fa-laptop-medical:before{content:"\f812"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-laugh:before{content:"\f599"}.fa-laugh-beam:before{content:"\f59a"}.fa-laugh-squint:before{content:"\f59b"}.fa-laugh-wink:before{content:"\f59c"}.fa-layer-group:before{content:"\f5fd"}.fa-leaf:before{content:"\f06c"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-less-than:before{content:"\f536"}.fa-less-than-equal:before{content:"\f537"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-line:before{content:"\f3c0"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location-arrow:before{content:"\f124"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-low-vision:before{content:"\f2a8"}.fa-luggage-cart:before{content:"\f59d"}.fa-lungs:before{content:"\f604"}.fa-lungs-virus:before{content:"\e067"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-mail-bulk:before{content:"\f674"}.fa-mailchimp:before{content:"\f59e"}.fa-male:before{content:"\f183"}.fa-mandalorian:before{content:"\f50f"}.fa-map:before{content:"\f279"}.fa-map-marked:before{content:"\f59f"}.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-markdown:before{content:"\f60f"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mask:before{content:"\f6fa"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-mdb:before{content:"\f8ca"}.fa-medal:before{content:"\f5a2"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaport:before{content:"\f5a3"}.fa-meh:before{content:"\f11a"}.fa-meh-blank:before{content:"\f5a4"}.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-memory:before{content:"\f538"}.fa-mendeley:before{content:"\f7b3"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-meteor:before{content:"\f753"}.fa-microblog:before{content:"\e01a"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before{content:"\f3c9"}.fa-microphone-alt-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microscope:before{content:"\f610"}.fa-microsoft:before{content:"\f3ca"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-square:before{content:"\f146"}.fa-mitten:before{content:"\f7b5"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mixer:before{content:"\e056"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before{content:"\f53d"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-motorcycle:before{content:"\f21c"}.fa-mountain:before{content:"\f6fc"}.fa-mouse:before{content:"\f8cc"}.fa-mouse-pointer:before{content:"\f245"}.fa-mug-hot:before{content:"\f7b6"}.fa-music:before{content:"\f001"}.fa-napster:before{content:"\f3d2"}.fa-neos:before{content:"\f612"}.fa-network-wired:before{content:"\f6ff"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nimblr:before{content:"\f5a8"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-not-equal:before{content:"\f53e"}.fa-notes-medical:before{content:"\f481"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-oil-can:before{content:"\f613"}.fa-old-republic:before{content:"\f510"}.fa-om:before{content:"\f679"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-orcid:before{content:"\f8d2"}.fa-osi:before{content:"\f41a"}.fa-otter:before{content:"\f700"}.fa-outdent:before{content:"\f03b"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-pager:before{content:"\f815"}.fa-paint-brush:before{content:"\f1fc"}.fa-paint-roller:before{content:"\f5aa"}.fa-palette:before{content:"\f53f"}.fa-palfed:before{content:"\f3d8"}.fa-pallet:before{content:"\f482"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-parking:before{content:"\f540"}.fa-passport:before{content:"\f5ab"}.fa-pastafarianism:before{content:"\f67b"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paypal:before{content:"\f1ed"}.fa-peace:before{content:"\f67c"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-square:before{content:"\f14b"}.fa-pencil-alt:before{content:"\f303"}.fa-pencil-ruler:before{content:"\f5ae"}.fa-penny-arcade:before{content:"\f704"}.fa-people-arrows:before{content:"\e068"}.fa-people-carry:before{content:"\f4ce"}.fa-pepper-hot:before{content:"\f816"}.fa-percent:before{content:"\f295"}.fa-percentage:before{content:"\f541"}.fa-periscope:before{content:"\f3da"}.fa-person-booth:before{content:"\f756"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-phone:before{content:"\f095"}.fa-phone-alt:before{content:"\f879"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-square:before{content:"\f098"}.fa-phone-square-alt:before{content:"\f87b"}.fa-phone-volume:before{content:"\f2a0"}.fa-photo-video:before{content:"\f87c"}.fa-php:before{content:"\f457"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-square:before{content:"\e01e"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-pizza-slice:before{content:"\f818"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-departure:before{content:"\f5b0"}.fa-plane-slash:before{content:"\e069"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-poll:before{content:"\f681"}.fa-poll-h:before{content:"\f682"}.fa-poo:before{content:"\f2fe"}.fa-poo-storm:before{content:"\f75a"}.fa-poop:before{content:"\f619"}.fa-portrait:before{content:"\f3e0"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-pray:before{content:"\f683"}.fa-praying-hands:before{content:"\f684"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before{content:"\f486"}.fa-print:before{content:"\f02f"}.fa-procedures:before{content:"\f487"}.fa-product-hunt:before{content:"\f288"}.fa-project-diagram:before{content:"\f542"}.fa-pump-medical:before{content:"\e06a"}.fa-pump-soap:before{content:"\e06b"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-quidditch:before{content:"\f458"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-quran:before{content:"\f687"}.fa-r-project:before{content:"\f4f7"}.fa-radiation:before{content:"\f7b9"}.fa-radiation-alt:before{content:"\f7ba"}.fa-rainbow:before{content:"\f75b"}.fa-random:before{content:"\f074"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-reacteurope:before{content:"\f75d"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-receipt:before{content:"\f543"}.fa-record-vinyl:before{content:"\f8d9"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redhat:before{content:"\f7bc"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-registered:before{content:"\f25d"}.fa-remove-format:before{content:"\f87d"}.fa-renren:before{content:"\f18b"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-republican:before{content:"\f75e"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-restroom:before{content:"\f7bd"}.fa-retweet:before{content:"\f079"}.fa-rev:before{content:"\f5b2"}.fa-ribbon:before{content:"\f4d6"}.fa-ring:before{content:"\f70b"}.fa-road:before{content:"\f018"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-route:before{content:"\f4d7"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-vertical:before{content:"\f548"}.fa-running:before{content:"\f70c"}.fa-rupee-sign:before{content:"\f156"}.fa-rust:before{content:"\e07a"}.fa-sad-cry:before{content:"\f5b3"}.fa-sad-tear:before{content:"\f5b4"}.fa-safari:before{content:"\f267"}.fa-salesforce:before{content:"\f83b"}.fa-sass:before{content:"\f41e"}.fa-satellite:before{content:"\f7bf"}.fa-satellite-dish:before{content:"\f7c0"}.fa-save:before{content:"\f0c7"}.fa-schlix:before{content:"\f3ea"}.fa-school:before{content:"\f549"}.fa-screwdriver:before{content:"\f54a"}.fa-scribd:before{content:"\f28a"}.fa-scroll:before{content:"\f70e"}.fa-sd-card:before{content:"\f7c2"}.fa-search:before{content:"\f002"}.fa-search-dollar:before{content:"\f688"}.fa-search-location:before{content:"\f689"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-seedling:before{content:"\f4d8"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-shapes:before{content:"\f61f"}.fa-share:before{content:"\f064"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield-alt:before{content:"\f3ed"}.fa-shield-virus:before{content:"\e06c"}.fa-ship:before{content:"\f21a"}.fa-shipping-fast:before{content:"\f48b"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shoe-prints:before{content:"\f54b"}.fa-shopify:before{content:"\e057"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shopware:before{content:"\f5b5"}.fa-shower:before{content:"\f2cc"}.fa-shuttle-van:before{content:"\f5b6"}.fa-sign:before{content:"\f4d9"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-signature:before{content:"\f5b7"}.fa-sim-card:before{content:"\f7c4"}.fa-simplybuilt:before{content:"\f215"}.fa-sink:before{content:"\e06d"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-sith:before{content:"\f512"}.fa-skating:before{content:"\f7c5"}.fa-sketch:before{content:"\f7c6"}.fa-skiing:before{content:"\f7c9"}.fa-skiing-nordic:before{content:"\f7ca"}.fa-skull:before{content:"\f54c"}.fa-skull-crossbones:before{content:"\f714"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-slash:before{content:"\f715"}.fa-sleigh:before{content:"\f7cc"}.fa-sliders-h:before{content:"\f1de"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-smile-beam:before{content:"\f5b8"}.fa-smile-wink:before{content:"\f4da"}.fa-smog:before{content:"\f75f"}.fa-smoking:before{content:"\f48d"}.fa-smoking-ban:before{content:"\f54d"}.fa-sms:before{content:"\f7cd"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snowboarding:before{content:"\f7ce"}.fa-snowflake:before{content:"\f2dc"}.fa-snowman:before{content:"\f7d0"}.fa-snowplow:before{content:"\f7d2"}.fa-soap:before{content:"\e06e"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-down-alt:before{content:"\f884"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-amount-up-alt:before{content:"\f885"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-sourcetree:before{content:"\f7d3"}.fa-spa:before{content:"\f5bb"}.fa-space-shuttle:before{content:"\f197"}.fa-speakap:before{content:"\f3f3"}.fa-speaker-deck:before{content:"\f83c"}.fa-spell-check:before{content:"\f891"}.fa-spider:before{content:"\f717"}.fa-spinner:before{content:"\f110"}.fa-splotch:before{content:"\f5bc"}.fa-spotify:before{content:"\f1bc"}.fa-spray-can:before{content:"\f5bd"}.fa-square:before{content:"\f0c8"}.fa-square-full:before{content:"\f45c"}.fa-square-root-alt:before{content:"\f698"}.fa-squarespace:before{content:"\f5be"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stackpath:before{content:"\f842"}.fa-stamp:before{content:"\f5bf"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\f051"}.fa-stethoscope:before{content:"\f0f1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-sticky-note:before{content:"\f249"}.fa-stop:before{content:"\f04d"}.fa-stop-circle:before{content:"\f28d"}.fa-stopwatch:before{content:"\f2f2"}.fa-stopwatch-20:before{content:"\e06f"}.fa-store:before{content:"\f54e"}.fa-store-alt:before{content:"\f54f"}.fa-store-alt-slash:before{content:"\e070"}.fa-store-slash:before{content:"\e071"}.fa-strava:before{content:"\f428"}.fa-stream:before{content:"\f550"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-stroopwafel:before{content:"\f551"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-subscript:before{content:"\f12c"}.fa-subway:before{content:"\f239"}.fa-suitcase:before{content:"\f0f2"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-sun:before{content:"\f185"}.fa-superpowers:before{content:"\f2dd"}.fa-superscript:before{content:"\f12b"}.fa-supple:before{content:"\f3f9"}.fa-surprise:before{content:"\f5c2"}.fa-suse:before{content:"\f7d6"}.fa-swatchbook:before{content:"\f5c3"}.fa-swift:before{content:"\f8e1"}.fa-swimmer:before{content:"\f5c4"}.fa-swimming-pool:before{content:"\f5c5"}.fa-symfony:before{content:"\f83d"}.fa-synagogue:before{content:"\f69b"}.fa-sync:before{content:"\f021"}.fa-sync-alt:before{content:"\f2f1"}.fa-syringe:before{content:"\f48e"}.fa-table:before{content:"\f0ce"}.fa-table-tennis:before{content:"\f45d"}.fa-tablet:before{content:"\f10a"}.fa-tablet-alt:before{content:"\f3fa"}.fa-tablets:before{content:"\f490"}.fa-tachometer-alt:before{content:"\f3fd"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tape:before{content:"\f4db"}.fa-tasks:before{content:"\f0ae"}.fa-taxi:before{content:"\f1ba"}.fa-teamspeak:before{content:"\f4f9"}.fa-teeth:before{content:"\f62e"}.fa-teeth-open:before{content:"\f62f"}.fa-telegram:before{content:"\f2c6"}.fa-telegram-plane:before{content:"\f3fe"}.fa-temperature-high:before{content:"\f769"}.fa-temperature-low:before{content:"\f76b"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-tenge:before{content:"\f7d7"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-th:before{content:"\f00a"}.fa-th-large:before{content:"\f009"}.fa-th-list:before{content:"\f00b"}.fa-the-red-yeti:before{content:"\f69d"}.fa-theater-masks:before{content:"\f630"}.fa-themeco:before{content:"\f5c6"}.fa-themeisle:before{content:"\f2b2"}.fa-thermometer:before{content:"\f491"}.fa-thermometer-empty:before{content:"\f2cb"}.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-think-peaks:before{content:"\f731"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbtack:before{content:"\f08d"}.fa-ticket-alt:before{content:"\f3ff"}.fa-tiktok:before{content:"\e07b"}.fa-times:before{content:"\f00d"}.fa-times-circle:before{content:"\f057"}.fa-tint:before{content:"\f043"}.fa-tint-slash:before{content:"\f5c7"}.fa-tired:before{content:"\f5c8"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-toilet:before{content:"\f7d8"}.fa-toilet-paper:before{content:"\f71e"}.fa-toilet-paper-slash:before{content:"\e072"}.fa-toolbox:before{content:"\f552"}.fa-tools:before{content:"\f7d9"}.fa-tooth:before{content:"\f5c9"}.fa-torah:before{content:"\f6a0"}.fa-torii-gate:before{content:"\f6a1"}.fa-tractor:before{content:"\f722"}.fa-trade-federation:before{content:"\f513"}.fa-trademark:before{content:"\f25c"}.fa-traffic-light:before{content:"\f637"}.fa-trailer:before{content:"\e041"}.fa-train:before{content:"\f238"}.fa-tram:before{content:"\f7da"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-alt:before{content:"\f2ed"}.fa-trash-restore:before{content:"\f829"}.fa-trash-restore-alt:before{content:"\f82a"}.fa-tree:before{content:"\f1bb"}.fa-trello:before{content:"\f181"}.fa-tripadvisor:before{content:"\f262"}.fa-trophy:before{content:"\f091"}.fa-truck:before{content:"\f0d1"}.fa-truck-loading:before{content:"\f4de"}.fa-truck-monster:before{content:"\f63b"}.fa-truck-moving:before{content:"\f4df"}.fa-truck-pickup:before{content:"\f63c"}.fa-tshirt:before{content:"\f553"}.fa-tty:before{content:"\f1e4"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-tv:before{content:"\f26c"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-ubuntu:before{content:"\f7df"}.fa-uikit:before{content:"\f403"}.fa-umbraco:before{content:"\f8e8"}.fa-umbrella:before{content:"\f0e9"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-uniregistry:before{content:"\f404"}.fa-unity:before{content:"\e049"}.fa-universal-access:before{content:"\f29a"}.fa-university:before{content:"\f19c"}.fa-unlink:before{content:"\f127"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before{content:"\f13e"}.fa-unsplash:before{content:"\e07c"}.fa-untappd:before{content:"\f405"}.fa-upload:before{content:"\f093"}.fa-ups:before{content:"\f7e0"}.fa-usb:before{content:"\f287"}.fa-user:before{content:"\f007"}.fa-user-alt:before{content:"\f406"}.fa-user-alt-slash:before{content:"\f4fa"}.fa-user-astronaut:before{content:"\f4fb"}.fa-user-check:before{content:"\f4fc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-clock:before{content:"\f4fd"}.fa-user-cog:before{content:"\f4fe"}.fa-user-edit:before{content:"\f4ff"}.fa-user-friends:before{content:"\f500"}.fa-user-graduate:before{content:"\f501"}.fa-user-injured:before{content:"\f728"}.fa-user-lock:before{content:"\f502"}.fa-user-md:before{content:"\f0f0"}.fa-user-minus:before{content:"\f503"}.fa-user-ninja:before{content:"\f504"}.fa-user-nurse:before{content:"\f82f"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-shield:before{content:"\f505"}.fa-user-slash:before{content:"\f506"}.fa-user-tag:before{content:"\f507"}.fa-user-tie:before{content:"\f508"}.fa-user-times:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-users-cog:before{content:"\f509"}.fa-users-slash:before{content:"\e073"}.fa-usps:before{content:"\f7e1"}.fa-ussunnah:before{content:"\f407"}.fa-utensil-spoon:before{content:"\f2e5"}.fa-utensils:before{content:"\f2e7"}.fa-vaadin:before{content:"\f408"}.fa-vector-square:before{content:"\f5cb"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-vial:before{content:"\f492"}.fa-vials:before{content:"\f493"}.fa-viber:before{content:"\f409"}.fa-video:before{content:"\f03d"}.fa-video-slash:before{content:"\f4e2"}.fa-vihara:before{content:"\f6a7"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-virus:before{content:"\e074"}.fa-virus-slash:before{content:"\e075"}.fa-viruses:before{content:"\e076"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-voicemail:before{content:"\f897"}.fa-volleyball-ball:before{content:"\f45f"}.fa-volume-down:before{content:"\f027"}.fa-volume-mute:before{content:"\f6a9"}.fa-volume-off:before{content:"\f026"}.fa-volume-up:before{content:"\f028"}.fa-vote-yea:before{content:"\f772"}.fa-vr-cardboard:before{content:"\f729"}.fa-vuejs:before{content:"\f41f"}.fa-walking:before{content:"\f554"}.fa-wallet:before{content:"\f555"}.fa-warehouse:before{content:"\f494"}.fa-water:before{content:"\f773"}.fa-wave-square:before{content:"\f83e"}.fa-waze:before{content:"\f83f"}.fa-weebly:before{content:"\f5cc"}.fa-weibo:before{content:"\f18a"}.fa-weight:before{content:"\f496"}.fa-weight-hanging:before{content:"\f5cd"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-wheelchair:before{content:"\f193"}.fa-whmcs:before{content:"\f40d"}.fa-wifi:before{content:"\f1eb"}.fa-wikipedia-w:before{content:"\f266"}.fa-wind:before{content:"\f72e"}.fa-window-close:before{content:"\f410"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-windows:before{content:"\f17a"}.fa-wine-bottle:before{content:"\f72f"}.fa-wine-glass:before{content:"\f4e3"}.fa-wine-glass-alt:before{content:"\f5ce"}.fa-wix:before{content:"\f5cf"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-won-sign:before{content:"\f159"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wpressr:before{content:"\f3e4"}.fa-wrench:before{content:"\f0ad"}.fa-x-ray:before{content:"\f497"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yammer:before{content:"\f840"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yarn:before{content:"\f7e3"}.fa-yelp:before{content:"\f1e9"}.fa-yen-sign:before{content:"\f157"}.fa-yin-yang:before{content:"\f6ad"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.fa-zhihu:before{content:"\f63f"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.fab{font-family:"Font Awesome 5 Brands"}.fab,.far{font-weight:400}.fa,.far,.fas{font-family:"Font Awesome 5 Free"}.fa,.fas{font-weight:900}
/* /assets/fontawesome/css/fa6-aliases.css */
/*!
 * نام‌های Font Awesome 6 روی فونت Font Awesome 5.14
 *
 * چند جای پروژه (منوی پنل، صفحه‌ی سفارش، تنظیمات) با نام‌های نسخه‌ی ۶ نوشته
 * شده‌اند در حالی که فونت بسته‌بندی‌شده نسخه‌ی ۵ است؛ آن آیکن‌ها خالی رندر
 * می‌شدند. هر نام ۶ به همان گلیف معادلش در ۵ نگاشت می‌شود تا نیازی به
 * دست‌بردن در ده‌ها فایل نباشد و نام‌های جدید هم در آینده قابل استفاده بمانند.
 */
.fa-arrow-up-long:before{content:"\f30c"}
.fa-boxes-stacked:before{content:"\f468"}
.fa-building-columns:before{content:"\f19c"}
.fa-chart-simple:before{content:"\f080"}
.fa-circle-check:before{content:"\f058"}
.fa-circle-info:before{content:"\f05a"}
.fa-circle-xmark:before{content:"\f057"}
.fa-comment-sms:before{content:"\f7cd"}
.fa-heart-pulse:before{content:"\f21e"}
.fa-location-dot:before{content:"\f3c5"}
.fa-money-check-dollar:before{content:"\f53d"}
.fa-rotate-left:before{content:"\f0e2"}
.fa-sign-in:before{content:"\f2f6"}
.fa-signs-post:before{content:"\f277"}
.fa-triangle-exclamation:before{content:"\f071"}
.fa-truck-fast:before{content:"\f48b"}
.fa-ellipsis-vertical:before{content:"\f142"}
.fa-sack-dollar:before{content:"\f51e"}
.fa-file-invoice-dollar:before{content:"\f571"}

/* /assets/css/owl.carousel.min.css */
/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
.owl-carousel,.owl-carousel .owl-item{-webkit-tap-highlight-color:transparent;position:relative}.owl-carousel{display:none;width:100%;z-index:1}.owl-carousel .owl-stage{position:relative;-ms-touch-action:pan-Y;touch-action:manipulation;-moz-backface-visibility:hidden}.owl-carousel .owl-stage:after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0}.owl-carousel .owl-stage-outer{position:relative;overflow:hidden;-webkit-transform:translate3d(0,0,0)}.owl-carousel .owl-item,.owl-carousel .owl-wrapper{-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0)}.owl-carousel .owl-item{min-height:1px;float:left;-webkit-backface-visibility:hidden;-webkit-touch-callout:none}.owl-carousel .owl-item img{display:block;width:100%}.owl-carousel .owl-dots.disabled,.owl-carousel .owl-nav.disabled{display:none}.no-js .owl-carousel,.owl-carousel.owl-loaded{display:block}.owl-carousel .owl-dot,.owl-carousel .owl-nav .owl-next,.owl-carousel .owl-nav .owl-prev{cursor:pointer;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel .owl-nav button.owl-next,.owl-carousel .owl-nav button.owl-prev,.owl-carousel button.owl-dot{background:0 0;color:inherit;border:none;padding:0!important;font:inherit}.owl-carousel.owl-loading{opacity:0;display:block}.owl-carousel.owl-hidden{opacity:0}.owl-carousel.owl-refresh .owl-item{visibility:hidden}.owl-carousel.owl-drag .owl-item{-ms-touch-action:pan-y;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel.owl-grab{cursor:move;cursor:grab}.owl-carousel.owl-rtl{direction:rtl}.owl-carousel.owl-rtl .owl-item{float:right}.owl-carousel .animated{animation-duration:1s;animation-fill-mode:both}.owl-carousel .owl-animated-in{z-index:0}.owl-carousel .owl-animated-out{z-index:1}.owl-carousel .fadeOut{animation-name:fadeOut}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}.owl-height{transition:height .5s ease-in-out}.owl-carousel .owl-item .owl-lazy{opacity:0;transition:opacity .4s ease}.owl-carousel .owl-item .owl-lazy:not([src]),.owl-carousel .owl-item .owl-lazy[src^=""]{max-height:0}.owl-carousel .owl-item img.owl-lazy{transform-style:preserve-3d}.owl-carousel .owl-video-wrapper{position:relative;height:100%;background:#000}.owl-carousel .owl-video-play-icon{position:absolute;height:80px;width:80px;left:50%;top:50%;margin-left:-40px;margin-top:-40px;background:url(/assets/css/owl.video.play.png) no-repeat;cursor:pointer;z-index:1;-webkit-backface-visibility:hidden;transition:transform .1s ease}.owl-carousel .owl-video-play-icon:hover{-ms-transform:scale(1.3,1.3);transform:scale(1.3,1.3)}.owl-carousel .owl-video-playing .owl-video-play-icon,.owl-carousel .owl-video-playing .owl-video-tn{display:none}.owl-carousel .owl-video-tn{opacity:0;height:100%;background-position:center center;background-repeat:no-repeat;background-size:contain;transition:opacity .4s ease}.owl-carousel .owl-video-frame{position:relative;z-index:1;height:100%;width:100%}
/* /assets/css/owl.theme.default.min.css */
/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
.owl-theme .owl-dots,.owl-theme .owl-nav{text-align:center;-webkit-tap-highlight-color:transparent}.owl-theme .owl-nav{margin-top:10px}.owl-theme .owl-nav [class*=owl-]{color:#FFF;font-size:14px;margin:5px;padding:4px 7px;background:#D6D6D6;display:inline-block;cursor:pointer;border-radius:3px}.owl-theme .owl-nav [class*=owl-]:hover{background:#869791;color:#FFF;text-decoration:none}.owl-theme .owl-nav .disabled{opacity:.5;cursor:default}.owl-theme .owl-nav.disabled+.owl-dots{margin-top:10px}.owl-theme .owl-dots .owl-dot{display:inline-block;zoom:1}.owl-theme .owl-dots .owl-dot span{width:10px;height:10px;margin:5px 7px;background:#D6D6D6;display:block;-webkit-backface-visibility:visible;transition:opacity .2s ease;border-radius:30px}.owl-theme .owl-dots .owl-dot.active span,.owl-theme .owl-dots .owl-dot:hover span{background:#869791}
/* /assets/css/style.css */
/* نسخه‌ی woff2 این فونت ساخته نشده و روی سرور وجود ندارد. تا وقتی اولین
   منبع در فهرست باشد، هر بازدیدکننده یک درخواست ۴۰۴ روی مسیر بحرانی فونت
   می‌دهد و تازه بعد از آن به woff برمی‌گردد. پس فعلا از فهرست برداشته شده.
   بعد از ساختن فایل (مثلا با `fonttools ttLib.woff2 compress`)، خط
   woff2 را قبل از woff برگردانید؛ حدود ۲۵٪ سبک‌تر است. */
@font-face {
    font-family:vazir-med;
    /* font-display: swap تا متن بلافاصله با فونت جایگزین دیده شود
       و صفحه در زمان دانلود فونت خالی نماند (بهبود FCP و CLS). */
    font-display: swap;
    src: url('/assets/font/IRANSans/IRANSansWeb(FaNum).woff2') format('woff2'),
         url('/assets/font/IRANSans/IRANSansWeb(FaNum).woff') format('woff'),
         url('/assets/font/IRANSans/IRANSansWeb.ttf') format('truetype');
}

@font-face {
    font-family:vazir-fa-med;
    font-display: swap;
    src: url('/assets/font/IRANSans/IRANSansWeb(FaNum).woff2') format('woff2'),
         url('/assets/font/IRANSans/IRANSansWeb(FaNum).woff') format('woff'),
         url('/assets/font/IRANSans/IRANSansWeb.ttf') format('truetype');
}

:root {
    --primary-dark: #002f5b;
    --primary: #00457c;
    --primary-light: #0066b3;
    --primary-lighter: #e8f1fa;
    --accent: #f57c00;
    --accent-light: #ff9800;
    --accent-dark: #e65100;
    --text-dark: #1a1a2e;
    --text-gray: #555;
    --text-light: #6f6f6f;
    --bg-body: #f0f4f8;
    --bg-white: #fff;
    --border-color: #dde4ec;
    --success: #2e7d32;
    --danger: #c62828;
    --shadow-sm: 0 1px 3px rgba(0,47,91,0.08);
    --shadow-md: 0 4px 12px rgba(0,47,91,0.1);
    --shadow-lg: 0 8px 30px rgba(0,47,91,0.12);
    --radius: 12px;
    --radius-sm: 8px;
    --transition: all 0.3s ease;
}

*{
    font-family: vazir-fa-med;
    outline: none !important;
}

a{
    text-decoration: none;
    transition: var(--transition);
}

ul{
    list-style-type: none;
}

body{
    width: 100%;
    background-color: var(--bg-body);
    overflow-x: hidden;
    color: var(--text-dark);
}

input , textarea , select{
    border-color: var(--border-color);
}

.search-box-header input {
    border-color: rgba(255,255,255,0.25);
}

textarea{
    border-radius: var(--radius-sm) !important;
}

label{
    font-family:vazir-med;
    font-size: 0.9rem;
    line-height: 2.2;
    color: var(--text-gray);
}

.font-20{
    font-size: 1.7rem;
}

.font-14{
    font-size: 1.1rem;
}

.font-13{
    font-size: 0.95rem;
}

.font-12{
    font-size: 0.80rem;
}

.badge{
    font-weight: lighter;
}

.text-justify{
    text-align: justify;
}

.line-height{
    line-height: 2.3;
}

.text-info{
    color: var(--primary) !important;
}

.btn-primary-custom {
    background: linear-gradient(135deg, var(--primary), var(--primary-light));
    color: #fff;
    border: none;
    padding: 10px 24px;
    border-radius: var(--radius-sm);
    font-size: 0.95rem;
    transition: var(--transition);
}

.btn-primary-custom:hover {
    background: linear-gradient(135deg, var(--primary-dark), var(--primary));
    color: #fff;
    transform: translateY(-1px);
    box-shadow: var(--shadow-md);
}

.btn-accent {
    background: linear-gradient(135deg, var(--accent), var(--accent-light));
    color: #fff;
    border: none;
    padding: 10px 24px;
    border-radius: var(--radius-sm);
    font-size: 0.95rem;
    transition: var(--transition);
}

.btn-accent:hover {
    background: linear-gradient(135deg, var(--accent-dark), var(--accent));
    color: #fff;
    transform: translateY(-1px);
    box-shadow: var(--shadow-md);
}

.btn-info{
    background: linear-gradient(135deg, var(--primary), var(--primary-light)) !important;
    color: #fff;
    border: none !important;
    border-radius: var(--radius-sm);
}

.btn-info:hover{
    color: #fff;
    background: linear-gradient(135deg, var(--primary-dark), var(--primary)) !important;
    border-color: var(--primary-dark) !important;
}

.btn-info:focus{
    color: #fff !important;
}

.border-info {
    border-color: var(--primary) !important;
}

input::placeholder, select ,textarea::placeholder{
    font-size: 0.9rem;
    color: #757575 !important;
    font-family: vazir-med;
}

[type="tel"], [type="url"], [type="email"], [type="number"]{
    direction: rtl !important;
}

.offcanvas-end , .offcanvas-start{
    max-width: 330px !important;
}

/* ----- start style for header ----- */

.site-header {
    background: linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 100%);
    padding: 0;
    position: relative;
    z-index: 100;
}

.header-top-bar {
    background-color: var(--primary-dark);
    padding: 7px 0;
    font-size: 0.8rem;
    color: rgba(255,255,255,0.75);
    border-bottom: 1px solid rgba(255,255,255,0.08);
}

.header-top-bar a {
    color: rgba(255,255,255,0.75);
    font-size: 0.8rem;
}

.header-top-bar a:hover {
    color: #fff;
}

.header-top-bar i {
    margin-left: 5px;
    color: var(--accent);
    font-size: 0.75rem;
}

.header-main {
    padding: 18px 0;
}

.top-ads{
    width: 100%;
    display: block;
}

.top-ads > a{
    display: block;
}

.top-ads > a > img{
    display: block;
    max-width: 100%;
}

.search-box-header {
    position: relative;
    width: 100%;
}

.search-box-header input{
    background-color: rgba(255,255,255,0.15);
    border: 1px solid rgba(255,255,255,0.25);
    color: #fff;
    border-radius: 8px;
    padding: 11px 120px 11px 15px;
    font-size: 0.9rem;
    transition: var(--transition);
    width: 100%;
    height: 46px;
}

.search-box-header input::placeholder {
    color: rgba(255,255,255,0.55) !important;
}

.search-box-header input:focus{
    background-color: rgba(255,255,255,0.22);
    border-color: var(--accent);
}

.search-box-header button {
    position: absolute;
    right: 4px;
    top: 4px;
    bottom: 4px;
    background: var(--accent);
    border: none;
    border-radius: 6px;
    padding: 0 18px;
    color: #fff;
    font-size: 0.88rem;
    transition: var(--transition);
    display: flex;
    align-items: center;
    gap: 6px;
}

.search-box-header button:hover {
    background: var(--accent-dark);
}

.search-box input{
    background-color: #f1f2f4;
}

.search-box input:focus{
    background-color: #f1f2f4;
}

.search-box img{
    width: 25px;
    height: 25px;
}

.header-action-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #fff;
    padding: 10px 20px;
    border-radius: 8px;
    font-size: 0.88rem;
    border: 1px solid rgba(255,255,255,0.3);
    transition: var(--transition);
    background: rgba(255,255,255,0.08);
    white-space: nowrap;
    height: 46px;
}

.header-action-btn:hover {
    background: rgba(255,255,255,0.18);
    color: #fff;
    border-color: rgba(255,255,255,0.5);
}

.header-action-btn i {
    font-size: 15px;
}

.header-login-btn{
    border: 1px solid rgba(255,255,255,0.3);
    border-radius: 8px;
    font-size: 0.88rem;
    color: #fff;
    padding: 10px 20px;
    position: relative;
    transition: var(--transition);
}

.header-login-btn i{
    font-size: 15px;
    margin-left: 5px;
}

.header-login-btn:hover{
    color: #fff;
    background: rgba(255,255,255,0.1);
}

.header-cart-btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    border-radius: 8px;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.3);
    transition: var(--transition);
}

.header-cart-btn:hover {
    background: rgba(255,255,255,0.18);
}

.header-cart-btn img {
    width: 22px;
    height: 22px;
    filter: brightness(0) invert(1);
}

.dropdown-menu-custom{
    width: 240px;
    border-radius: var(--radius);
    padding: 0;
    border: none;
    box-shadow: 0 10px 40px rgba(0,47,91,0.18);
    overflow: hidden;
    animation: dropdownFadeIn 0.25s ease;
}

@keyframes dropdownFadeIn {
    from { opacity: 0; transform: translateY(-8px); }
    to { opacity: 1; transform: translateY(0); }
}

.dropdown-menu-custom::after{
    display: none;
}

.dropdown-menu-custom::before{
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--primary), var(--accent));
    border-radius: 0;
}

.dropdown-user-header {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 16px 15px 12px;
    background: var(--primary-lighter);
}

.dropdown-user-avatar {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary), var(--primary-light));
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.dropdown-user-avatar i {
    color: #fff;
    font-size: 1rem;
}

.dropdown-user-name {
    display: block;
    font-size: 0.88rem;
    font-weight: 600;
    color: var(--text-dark);
    line-height: 1.4;
}

.dropdown-user-link {
    display: block;
    font-size: 0.75rem;
    color: var(--primary);
    margin-top: 3px;
}

.dropdown-user-link i {
    font-size: 0.6rem;
    vertical-align: middle;
}

.dropdown-user-link:hover {
    color: var(--accent);
}

.dropdown-divider-custom {
    height: 1px;
    background: var(--border-color);
    margin: 0;
}

.dropdown-item-custom {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 15px;
    font-size: 0.85rem;
    color: var(--text-dark);
    transition: var(--transition);
    border-right: 3px solid transparent;
}

.dropdown-item-custom i {
    width: 18px;
    text-align: center;
    font-size: 0.85rem;
    color: var(--text-light);
    transition: var(--transition);
}

.dropdown-item-custom:hover {
    background: var(--primary-lighter);
    color: var(--primary);
    border-right-color: var(--primary);
}

.dropdown-item-custom:hover i {
    color: var(--primary);
}

.dropdown-item-logout {
    color: var(--danger);
}

.dropdown-item-logout i {
    color: var(--danger);
}

.dropdown-item-logout:hover {
    background: #fef2f2;
    color: var(--danger);
    border-right-color: var(--danger);
}

.avatar{
    width: 50px;
    height: 50px;
    border-radius: 50%;
    border: 2px solid var(--primary-lighter);
}

.login-link{
    display: block;
    font-size: 0.85rem;
    color: var(--text-dark);
    margin:15px 5px 7px 0;
    transition: var(--transition);
}

.login-link:hover{
    color: var(--primary);
}

.signup-login-icon{
    font-size: 21px;
    color: #fff;
    vertical-align: middle;
    position: relative !important;
    margin-top: 5px;
    padding-left: 20px;
}

@media(max-width:991px){
    .dropdown-menu-custom{
       transform: unset !important;
       top: 40px !important;
       left: 0 !important;
    }
}

.count{
    position: absolute;
    left: -6px;
    top: -6px;
    min-width: 20px;
    height: 20px;
    background-color: var(--accent);
    color: #fff;
    text-align: center;
    font-size: 0.75rem;
    line-height: 20px;
    border-radius: 50%;
    padding: 0 4px;
}

.cart-product-title{
    color: var(--text-dark);
    display: block;
    font-size: 0.95rem;
    line-height: 2.2;
}

.cart-product-title:hover{
    color: var(--text-dark);
}

.number{
    font-size: 0.95rem;
    position: relative;
    color: var(--text-dark);
}

.number::after{
    content: "|";
    margin-right: 5px;
    margin-left: 5px;
    color: var(--text-dark);
}

.color{
    display: inline-block;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    margin-top: 2px;
}

.cart-delete-btn{
    font-size: 0.98rem;
    color: #9da0a1;
    margin-top: 2px;
    margin-right: 15px;
    cursor: pointer;
}

.cart-product-price{
    font-size: 0.9rem;
    color: var(--text-dark);
}

.cart-footer p{
    font-size: 0.9rem;
    color: var(--text-dark);
    padding-right: 15px;
}

/* ----- end style for header ----- */

/* ----- start style for menu ----- */

.navigation{
    width: 100%;
    height: 50px;
    background-color: var(--bg-white);
    position: relative;
    box-shadow: 0 2px 8px rgba(0,47,91,0.06);
    border-bottom: 1px solid var(--border-color);
    z-index: 90;
}

.main-menu{
    width: 100%;
    height: 50px;
    display: flex;
    align-items: center;
    padding-right: 0 !important;
}

.main-menu > li{
    margin-left: 8px;
}

.main-menu > li > a{
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 0.9rem;
    color: var(--text-dark);
    line-height: 50px;
    position: relative;
    font-weight: 500;
    padding: 0 12px;
    border-radius: var(--radius-sm);
    transition: var(--transition);
}

.main-menu > li > a:hover {
    background: var(--primary-lighter);
}

.main-menu > li > a > i{
    vertical-align: middle;
    margin-right: 2px;
    transition: var(--transition);
    font-size: 0.85rem;
}

.nav-category-item > a {
    background: var(--primary-lighter) !important;
    color: var(--primary) !important;
    font-weight: 600 !important;
}

.nav-category-item:hover > a {
    background: var(--primary) !important;
    color: #fff !important;
}

.nav-category-item:hover > a > i {
    color: #fff !important;
}

.nav-phone-link {
    color: var(--accent) !important;
    font-weight: 600 !important;
    font-size: 0.88rem !important;
}

.nav-phone-link:hover {
    background: rgba(245,124,0,0.08) !important;
}

.sub-menu-icon {
    width: 16px;
    text-align: center;
    color: var(--primary);
    font-size: 0.8rem;
    margin-left: 8px;
}

.main-menu > li > a::before{
    content: '';
    display: block;
    position: absolute;
    width: 0;
    height: 3px;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    background: linear-gradient(90deg, var(--primary), var(--accent));
    border-radius: 3px;
    transition: var(--transition);
}

.main-menu > li:hover > a::before{
    width: 60%;
}

.main-menu > li:hover > a{
    color: var(--primary);
}

.main-menu > li:hover > a > i.fa-angle-down{
    transform: rotate(180deg);
    transition: all 300ms ease;
    color: var(--primary);
}

.mega-menu {
    position: absolute;
    top: 80px;
    width: 70%;
    padding: 15px 5px;
    z-index: 1000;
    background-color: var(--bg-white);
    border-radius: var(--radius-sm);
    box-shadow: var(--shadow-lg);
    border-top: 3px solid var(--primary);
    visibility: hidden;
    opacity: 0;
    transition: var(--transition);
}

.mega-menu-box > ul > li > a{
    font-size: 0.95rem;
    display: block;
    color: var(--text-dark);
    margin-top: 10px;
    padding-right: 15px;
}

.mega-menu-box > ul > li > i{
    vertical-align: middle;
    margin-left: 3px;
}

.menu-title{
    color: var(--primary) !important;
    font-size: 0.95rem;
    margin-top: 15px;
}

.main-menu .has-mega-menu:hover .mega-menu{
    visibility: visible;
    opacity: 1;
    top: 51px;
}

.sub-menu{
    width: 280px;
    background-color: var(--bg-white);
    position: absolute;
    top: 80px;
    box-shadow: 0 10px 40px rgba(0,47,91,0.15);
    border-top: 3px solid var(--primary);
    border-radius: 0 0 var(--radius) var(--radius);
    padding: 8px 0;
    padding-right: 0;
    z-index: 1000;
    transition: var(--transition);
    opacity: 0;
    visibility: hidden;
}

.sub-menu > li , .sub-menu-level-2 > li{
    border-bottom: none;
}

.sub-menu > li:last-child , .sub-menu-level-2 > li:last-child{
    border-bottom: none !important;
}

.has-sub-menu:hover .sub-menu{
    visibility: visible;
    opacity: 1;
    top: 51px;
}

.sub-menu > li > a , .sub-menu-level-2 > li > a{
    display: flex;
    align-items: center;
    font-size: 0.88rem;
    color: var(--text-dark);
    margin: 0;
    padding: 10px 15px;
    transition: var(--transition);
    border-right: 3px solid transparent;
}

.sub-menu > li > a:hover , .sub-menu-level-2 > li > a:hover{
    color: var(--primary);
    background: var(--primary-lighter);
    border-right-color: var(--primary);
    padding-right: 15px;
}

.sub-menu > li > a:hover .sub-menu-icon {
    color: var(--accent);
}

.has-sub-menu-level-2{
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
}

.has-sub-menu-level-2 > i{
    font-size: 0.9rem;
    margin-left: 10px;
    color: var(--text-dark);
    transition: var(--transition);
}

.sub-menu-level-2{
    width: 230px;
    background-color: var(--bg-white);
    position: absolute;
    right: 102%;
    top:100%;
    transition: var(--transition);
    box-shadow: var(--shadow-lg);
    border-top: 3px solid var(--primary);
    border-radius: var(--radius-sm);
    z-index: 1000;
    padding-right: 0;
    opacity: 0;
    visibility: hidden;
}

.has-sub-menu-level-2:hover .sub-menu-level-2{
    visibility: visible;
    opacity: 1;
    top: 0;
}

.has-sub-menu-level-2:hover > i{
    color: var(--primary);
    transform: rotate(90deg);
}

.mobile-menu-icon{
    font-size: 25px;
    color: #fff;
    vertical-align: middle;
}

.mobile-menu-level-1{
    padding-right: 0;
    margin-top: 30px;
}

.mobile-menu-level-1 > li{
    width: 100%;
    position: relative;
}

.mobile-menu-level-1 > li > a{
    display: inline-block;
    color: var(--text-dark);
    font-size: 0.95rem;
    line-height: 40px;
    padding-right: 20px;
}

.mobile-menu-level-1 > li.has-mobile-submenu > a::before{
    content: '';
    position: absolute;
    background-color: var(--text-dark);
    width: 10px;
    height: 2px;
    top: 21px;
    left: 20px;
    transition: all ease 200ms;
}

.mobile-menu-level-1 > li.has-mobile-submenu > a::after{
    content: '';
    position: absolute;
    background-color: var(--text-dark);
    width: 2px;
    height: 10px;
    top: 17px;
    left: 24px;
    transition: all ease 200ms;
}

.mobile-menu-level-1 > li.has-mobile-submenu.open > a::before , .mobile-menu-level-1 > li.has-mobile-submenu.open > a::after{
    transform: rotate(45deg);
    transition: all ease 200ms;
}

.mobile-menu-level-2{
    padding-right: 0;
    margin-bottom: 10px;
    display: none;
    background-color: #f3f3f3;
}

.mobile-menu-level-2 > li{
    position: relative;
    border-bottom: 1px solid #e6e5e5;
}

.mobile-menu-level-2 > li > a{
    display: inline-block;
    color: var(--text-dark);
    font-size: 0.9rem;
    line-height: 40px;
    padding-right: 30px;
}

.mobile-menu-level-2 > li.has-mobile-submenu-2 > a::before{
    content: '';
    position: absolute;
    background-color: var(--text-dark);
    width: 8px;
    height: 2px;
    top: 20px;
    left: 20px;
    transition: all ease 200ms;
}

.mobile-menu-level-2 > li.has-mobile-submenu-2 > a::after{
    content: '';
    position: absolute;
    background-color: var(--text-dark);
    width: 2px;
    height: 8px;
    top: 17px;
    left: 23px;
    transition: all ease 200ms;
}

.mobile-menu-level-2 > li.has-mobile-submenu-2.open > a::before , .mobile-menu-level-2 > li.has-mobile-submenu-2.open > a::after{
    transform: rotate(45deg);
    transition: all ease 200ms;
}

.mobile-menu-level-3{
    padding-right: 0;
    margin-bottom: 10px;
    display: none;
}

.mobile-menu-level-3 > li{
    position: relative;
}

.mobile-menu-level-3 > li > a{
    display: inline-block;
    color: var(--text-dark);
    font-size: 0.9rem;
    line-height: 40px;
    padding-right: 50px;
}

.mobile-user-box {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 15px 20px;
    background: var(--primary-lighter);
    border-bottom: 1px solid var(--border-color);
}

.mobile-user-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary), var(--primary-light));
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.mobile-user-avatar i {
    color: #fff;
    font-size: 0.9rem;
}

.mobile-user-name {
    display: block;
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--text-dark);
}

.mobile-user-link {
    font-size: 0.75rem;
    color: var(--primary);
}

.mobile-user-link i {
    font-size: 0.6rem;
}

.mobile-login-btn {
    display: block;
    margin: 15px 15px 0;
    padding: 10px 20px;
    background: linear-gradient(135deg, var(--primary), var(--primary-light));
    color: #fff;
    border-radius: var(--radius-sm);
    font-size: 0.88rem;
    text-align: center;
    transition: var(--transition);
}

.mobile-login-btn:hover {
    color: #fff;
    background: linear-gradient(135deg, var(--primary-dark), var(--primary));
}

.mobile-menu-divider {
    height: 1px;
    background: var(--border-color);
    margin: 5px 15px;
}

/* ----- end style for menu ----- */

/* ----- start style for hero section ----- */

.hero-section {
    background: linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 50%, var(--primary-light) 100%);
    padding: 50px 0 60px;
    position: relative;
    overflow: hidden;
}

.hero-section::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -20%;
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(255,255,255,0.05) 0%, transparent 70%);
    border-radius: 50%;
}

.hero-section::after {
    content: '';
    position: absolute;
    bottom: -30%;
    left: -10%;
    width: 400px;
    height: 400px;
    background: radial-gradient(circle, rgba(245,124,0,0.08) 0%, transparent 70%);
    border-radius: 50%;
}

.hero-content {
    position: relative;
    z-index: 2;
}

.hero-title {
    color: #fff;
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 12px;
    line-height: 1.6;
}

.hero-subtitle {
    color: rgba(255,255,255,0.85);
    font-size: 1rem;
    line-height: 1.8;
    margin-bottom: 30px;
}

.hero-search {
    max-width: 550px;
    position: relative;
}

.hero-search input {
    width: 100%;
    padding: 16px 130px 16px 20px;
    border: 2px solid rgba(255,255,255,0.2) !important;
    background: rgba(255,255,255,0.12);
    color: #fff;
    border-radius: 50px;
    font-size: 1rem;
    backdrop-filter: blur(10px);
}

.hero-search input::placeholder {
    color: rgba(255,255,255,0.6) !important;
}

.hero-search input:focus {
    border-color: var(--accent) !important;
    background: rgba(255,255,255,0.18);
}

.hero-search button {
    position: absolute;
    right: 5px;
    top: 5px;
    bottom: 5px;
    background: var(--accent);
    color: #fff;
    border: none;
    border-radius: 50px;
    padding: 0 28px;
    font-size: 0.95rem;
    transition: var(--transition);
}

.hero-search button:hover {
    background: var(--accent-dark);
}

.hero-stats {
    display: flex;
    gap: 40px;
    margin-top: 35px;
}

.hero-stat-item {
    text-align: center;
}

.hero-stat-number {
    display: block;
    color: var(--accent);
    font-size: 1.5rem;
    font-weight: 700;
}

.hero-stat-label {
    color: rgba(255,255,255,0.7);
    font-size: 0.85rem;
}

.hero-image-wrapper {
    position: relative;
    z-index: 2;
    text-align: center;
}

.hero-image-wrapper img {
    max-width: 100%;
    filter: drop-shadow(0 20px 40px rgba(0,0,0,0.3));
}

@media(max-width:991px){
    .hero-section {
        padding: 30px 0 40px;
        text-align: center;
    }
    .hero-title {
        font-size: 1.4rem;
    }
    .hero-search {
        margin: 0 auto;
    }
    .hero-stats {
        justify-content: center;
        gap: 25px;
    }
}

/* ----- end style for hero section ----- */

/* ----- start style for main slider ----- */

.main-slider{
    width: 100%;
    border-radius: var(--radius);
    overflow: hidden;
}

.main-slider .carousel-item img {
    border-radius: var(--radius);
}

#main-slider .carousel-indicators [data-bs-target]{
    width: 10px !important;
    height: 10px !important;
    border-radius: 50%;
    background-color: rgba(255,255,255,0.5);
    border: none;
    transition: var(--transition);
}

#main-slider .carousel-indicators .active{
    background-color: var(--accent);
    width: 30px !important;
    border-radius: 5px;
}

.main-slider .carousel-control-prev,
.main-slider .carousel-control-next {
    width: 40px;
    height: 40px;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0,47,91,0.5);
    border-radius: 50%;
    opacity: 0.7;
    transition: var(--transition);
}

.main-slider .carousel-control-prev:hover,
.main-slider .carousel-control-next:hover {
    opacity: 1;
    background: rgba(0,47,91,0.8);
}

.main-slider .carousel-control-prev {
    right: auto;
    left: 15px;
}

.main-slider .carousel-control-next {
    left: auto;
    right: 15px;
}

/* ----- end style for main slider ----- */

/* ----- start style for section titles ----- */

.section-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 20px;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--border-color);
}

.section-title {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--text-dark);
    position: relative;
    padding-bottom: 12px;
    margin: 0;
}

.section-title::after {
    content: '';
    position: absolute;
    bottom: -2px;
    right: 0;
    width: 50px;
    height: 2px;
    background: var(--primary);
    border-radius: 2px;
}

.section-link {
    color: var(--primary);
    font-size: 0.85rem;
    display: flex;
    align-items: center;
    gap: 4px;
    white-space: nowrap;
}

.section-link:hover {
    color: var(--accent);
}

/* ----- end style for section titles ----- */

/* ----- start style for sliders ----- */

main{
    width: 100%;
}

.best-suggestion{
    width: 100%;
    background: linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);
    margin:17px 0;
    border-radius: var(--radius);
    padding:10px 6px 0 6px;
    box-shadow: var(--shadow-md);
}

.best-suggest-pic{
    width: 80%;
    height: 250px;
    display: block;
    margin: 0 auto;
}

.best-suggest-btn{
    border: solid 1px #fff;
    color: #fff;
    font-size: 0.9rem;
    padding: 10px 15px;
    margin-bottom: 15px;
    border-radius: var(--radius-sm);
}

.best-suggest-btn:hover{
    color: #fff;
    background: rgba(255,255,255,0.15);
}

.slider-pic{
    width: 70% !important;
    display: block;
    margin: 0 auto;
}

.custom-card{
    padding-top: 10px;
    transition: var(--transition);
    border-radius: var(--radius);
    overflow: hidden;
    border: 1px solid var(--border-color);
    background: var(--bg-white);
}

.custom-card:hover{
    transform: translateY(-4px);
    box-shadow: var(--shadow-md);
    border-color: var(--primary-lighter);
}

.custom-card p, .custom-card span, .custom-card i{
    color: var(--text-dark);
}

.count-down-timer{
    display: flex;
    direction: ltr !important;
    font-size: 0.98rem;
    margin-left: 7px;
    color: var(--text-dark);
}

.owl-dot{
    display: none !important;
}

.owl-nav .owl-next , .owl-nav .owl-prev{
    position: absolute;
    top: 45%;
    width: 40px;
    height: 40px;
    transform: translateY(-50%);
    color: var(--primary) !important;
    font-size: 18px !important;
    border-radius:50% !important;
    border: 1px solid var(--border-color) !important;
    background-color: var(--bg-white) !important;
    text-align: center;
    transition: var(--transition);
}

.owl-nav .owl-next:hover , .owl-nav .owl-prev:hover {
    background-color: var(--primary) !important;
    color: #fff !important;
    border-color: var(--primary) !important;
}

.owl-nav .owl-next{
    left: -8px;
}

.owl-nav .owl-prev{
    right: -8px;
}

.owl-item.active{
    padding: 4px 6px 0 6px;
}

.ads-img{
    max-width: 100%;
    display: block;
    border-radius: var(--radius);
    box-shadow: var(--shadow-sm);
    transition: var(--transition);
}

.ads-img:hover {
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.product-slider , .category-box{
    width: 100%;
    background-color: var(--bg-white);
    margin-bottom:20px;
    border-radius: var(--radius);
    padding:20px 15px 10px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
}

.product-slider .owl-carousel {
    padding: 0 5px;
}

.product-slider .custom-card:hover{
    transform: translateY(-4px);
    box-shadow: var(--shadow-md);
}

.title{
    margin: 0 10px;
    border-bottom: 1px solid var(--border-color);
    padding-bottom: 12px;
}

.title h4{
    font-size: 1rem;
    border-bottom: 3px solid var(--primary);
    display: inline;
    padding-bottom: 12px;
    color: var(--text-dark);
    font-weight: 700;
}

.product-title{
    font-size: 0.95rem;
    display: block;
    line-height: 2.1;
    text-align: center;
    color: var(--text-dark);
    font-weight: 500;
}

.product-title:hover{
    color: var(--primary);
}

.heart:hover,.random:hover,.add-to-cart:hover,.share:hover,.trash:hover{
    cursor: pointer;
}

.brands-pic{
    width: 50% !important;
    display: block;
    margin: 0 auto;
}

/* ----- end style for sliders ----- */

/* ----- start style for category box ----- */

.category-box-grid {
    background-color: var(--bg-white);
    border-radius: var(--radius);
    padding: 25px 20px 15px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
    margin-bottom: 20px;
}

.category-card {
    text-align: center;
    padding: 15px 8px;
    border-radius: var(--radius);
    transition: var(--transition);
    cursor: pointer;
    position: relative;
    overflow: hidden;
    border: 1px solid transparent;
}

.category-card:hover {
    background: var(--primary-lighter);
    border-color: var(--border-color);
}

.category-card a {
    display: block;
    color: var(--text-dark);
    text-decoration: none;
}

.category-icon-wrapper {
    width: 80px;
    height: 80px;
    background: var(--bg-body);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 10px;
    transition: var(--transition);
    border: 2px solid var(--border-color);
}

.category-card:hover .category-icon-wrapper {
    border-color: var(--primary-light);
    background: var(--primary-lighter);
}

.category-icon-wrapper img {
    width: 45px;
    height: 45px;
    object-fit: contain;
    transition: var(--transition);
}

.category-card p {
    font-size: 0.82rem;
    line-height: 1.7;
    color: var(--text-dark);
    margin: 0;
    font-weight: 500;
}

.category-box i{
    font-size: 35px;
    color: var(--primary);
    margin: 15px 0;
}

.category-box > h4{
    text-align: center;
    color: var(--text-dark);
    font-size: 0.98rem;
    padding: 10px 0;
}

.category-box a > p{
    font-size: 0.95rem;
    color: var(--text-dark);
}

/* ----- car category cards ----- */

.car-category-card {
    text-align: center;
    padding: 15px 8px 12px;
    border-radius: var(--radius);
    transition: var(--transition);
    cursor: pointer;
    border: 1px solid transparent;
    background: var(--bg-white);
}

.car-category-card:hover {
    border-color: var(--border-color);
    box-shadow: var(--shadow-md);
    transform: translateY(-3px);
}

.car-category-card a {
    display: block;
    color: var(--text-dark);
    text-decoration: none;
}

.car-category-icon {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 8px;
    font-size: 1.4rem;
    transition: var(--transition);
}

.car-category-card:hover .car-category-icon {
    transform: scale(1.1);
}

.car-category-name {
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--text-dark);
    margin: 0 0 2px;
    line-height: 1.5;
}

.car-category-count {
    font-size: 0.72rem;
    color: var(--text-light);
}

@media(max-width: 575px) {
    .car-category-icon {
        width: 48px;
        height: 48px;
        font-size: 1.1rem;
    }
    .car-category-name {
        font-size: 0.75rem;
    }
}

/* ----- end style for category box ----- */

/* ----- start style for trust badges ----- */

.trust-badges {
    background: var(--bg-white);
    border-radius: var(--radius);
    padding: 25px 15px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
    margin-bottom: 20px;
}

.trust-badge-item {
    text-align: center;
    padding: 12px 8px;
}

.trust-badge-icon {
    width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 10px;
}

.trust-badge-icon img {
    width: 48px;
    height: 48px;
}

.trust-badge-item h6 {
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--text-dark);
    margin-bottom: 3px;
}

.trust-badge-item p {
    font-size: 0.75rem;
    color: var(--text-light);
    margin: 0;
    line-height: 1.5;
}

/* ----- end style for trust badges ----- */

/* ----- start style for our suggestion box ----- */

.our-suggest-pic{
    width: 90px;
    height: 90px;
}

.our-suggest-title{
    display: block;
    font-size: 0.98rem;
    color: var(--text-dark);
    padding-right: 17px;
}

.our-suggest-title:hover{
    color: var(--text-dark);
}

.our-suggest-detail p{
    font-size: 0.95rem;
    color: var(--text-dark);
    padding-right: 17px;
}

/* ----- end style for our suggestion box ----- */

/* ----- start style for blog ----- */

.blog-hero {
    background: linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 100%);
    padding: 40px 0;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.blog-hero::before {
    content: '';
    position: absolute;
    top: -40%;
    left: -10%;
    width: 350px;
    height: 350px;
    background: radial-gradient(circle, rgba(245,124,0,0.1) 0%, transparent 70%);
    border-radius: 50%;
}

.blog-hero-title {
    color: #fff;
    font-size: 1.6rem;
    font-weight: 700;
    margin-bottom: 8px;
}

.blog-hero-subtitle {
    color: rgba(255,255,255,0.7);
    font-size: 0.9rem;
    margin: 0;
}

.blog-card-new {
    border-radius: var(--radius);
    overflow: hidden;
    border: 1px solid var(--border-color);
    transition: var(--transition);
    background: var(--bg-white);
    height: 100%;
    display: flex;
    flex-direction: column;
}

.blog-card-new:hover {
    box-shadow: var(--shadow-md);
    transform: translateY(-4px);
}

.blog-card-img-wrapper {
    display: block;
    overflow: hidden;
    position: relative;
}

.blog-card-img-wrapper::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 40px;
    background: linear-gradient(to top, rgba(0,0,0,0.05), transparent);
}

.blog-card-new img {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.blog-card-new:hover img {
    transform: scale(1.05);
}

.blog-card-new .card-body {
    padding: 15px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.blog-card-new .card-body > a {
    font-size: 0.88rem;
    color: var(--text-dark);
    line-height: 1.9;
    display: block;
    font-weight: 600;
    margin-bottom: 6px;
}

.blog-card-new .card-body > a:hover {
    color: var(--primary);
}

.blog-card-excerpt {
    font-size: 0.8rem;
    color: var(--text-light);
    line-height: 1.9;
    margin-bottom: 0;
    flex-grow: 1;
}

.blog-card-meta {
    margin-top: auto;
    padding-top: 10px;
    border-top: 1px solid var(--border-color);
    display: flex;
    align-items: center;
    gap: 12px;
}

.blog-card-meta span {
    font-size: 0.75rem;
    color: var(--text-light);
}

.blog-card-meta i {
    margin-left: 4px;
    color: var(--primary);
    font-size: 0.7rem;
}

/* ----- کارت متنی مجله (مقالات بدون عکس) ----- */

.blog-card-text {
    position: relative;
    padding-top: 4px;
}

.blog-card-text::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--primary), #11808d);
}

.blog-card-text .card-body {
    padding: 16px 16px 14px;
}

.blog-card-tag {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    margin-bottom: 10px;
    padding: 4px 10px;
    border-radius: 20px;
    background: var(--primary-lighter, #f4f6fb);
    color: var(--primary);
    font-size: 0.7rem;
    font-weight: 600;
}

.blog-card-text .card-body > a {
    font-size: 0.92rem;
    font-weight: 700;
    line-height: 1.95;
    margin-bottom: 8px;
}

.blog-card-text .blog-card-excerpt {
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.blog-card-more {
    margin-right: auto;
    color: var(--primary);
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.blog-card-more i {
    font-size: 0.65rem;
}

.blog-card-more:hover {
    color: var(--primary-dark, var(--primary));
}

/* گلوله‌ی جایگزین تصویر در «مطالب پیشنهادی» */
.blog-sidebar-item-bullet {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: var(--primary-lighter, #f4f6fb);
    color: var(--primary);
    font-size: 0.8rem;
}

/* ----- blog article detail ----- */

.blog-article {
    background: var(--bg-white);
    border-radius: var(--radius);
    border: 1px solid var(--border-color);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
    margin-bottom: 20px;
}

/* کاور مقاله: ۱۶:۹، تمام‌عرض کارت، بدون فاصله از لبه‌ها */
.blog-article-cover {
    margin: 0;
    border-bottom: 1px solid var(--border-color);
    background: var(--primary-lighter);
}

.blog-article-cover img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    object-fit: cover;
}

.blog-article-header {
    padding: 25px 25px 15px;
    border-bottom: 1px solid var(--border-color);
}

.blog-article-title {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text-dark);
    line-height: 2;
    margin-bottom: 10px;
}

.blog-article-meta {
    display: flex;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
}

.blog-article-meta span {
    font-size: 0.8rem;
    color: var(--text-light);
    display: flex;
    align-items: center;
    gap: 5px;
}

.blog-article-meta i {
    color: var(--primary);
    font-size: 0.78rem;
}

.blog-article-image {
    width: 100%;
    overflow: hidden;
}

.blog-article-image img {
    width: 100%;
    max-height: 420px;
    object-fit: cover;
    display: block;
}

.blog-article-lead {
    padding: 20px 25px;
    font-size: 0.95rem;
    color: var(--text-gray);
    line-height: 2.2;
    background: var(--primary-lighter);
    border-right: 4px solid var(--primary);
    margin: 20px 25px 0;
    border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
}

.blog-toc {
    margin: 20px 25px 0;
    background: var(--bg-body);
    border-radius: var(--radius-sm);
    border: 1px solid var(--border-color);
    overflow: hidden;
}

.blog-toc-header {
    padding: 12px 18px;
    font-size: 0.88rem;
    font-weight: 700;
    color: var(--primary);
    background: var(--primary-lighter);
    border-bottom: 1px solid var(--border-color);
    display: flex;
    align-items: center;
    gap: 8px;
}

.blog-toc-list {
    padding: 12px 18px;
    margin: 0;
    list-style: none;
}

.blog-toc-list li {
    margin-bottom: 6px;
}

.blog-toc-list li a {
    font-size: 0.85rem;
    color: var(--text-dark);
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 5px 0;
    transition: var(--transition);
    line-height: 1.8;
}

.blog-toc-list li a::before {
    content: '';
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--primary);
    flex-shrink: 0;
}

.blog-toc-list li a.linkn3::before {
    width: 5px;
    height: 5px;
    background: var(--accent);
    margin-right: 12px;
}

.blog-toc-list li a:hover {
    color: var(--primary);
    padding-right: 5px;
}

.blog-article-body {
    padding: 25px;
    font-size: 0.95rem;
    color: var(--text-dark);
    line-height: 2.4;
    text-align: justify;
}

.blog-article-body p {
    margin-bottom: 15px;
    font-size: 0.95rem;
    line-height: 2.4;
}

.blog-article-body h2 {
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--primary-dark);
    margin: 25px 0 12px;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--primary-lighter);
}

.blog-article-body h3 {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--text-dark);
    margin: 20px 0 10px;
}

.blog-article-body img {
    max-width: 100%;
    height: auto;
    border-radius: var(--radius-sm);
    margin: 15px auto;
    display: block;
}

/* عکس محصول مرتبط داخل متن مقاله (ArticleFigures) */
.blog-figure {
    margin: 22px 0;
    border: 1px solid var(--border-color);
    border-radius: var(--radius);
    overflow: hidden;
    background: var(--bg-white);
}

.blog-figure-img {
    display: block;
    background: #fff;
}

.blog-figure-img img {
    margin: 0 auto;
    border-radius: 0;
    max-height: 340px;
    width: auto;
    padding: 14px;
}

.blog-figure figcaption {
    padding: 10px 16px;
    font-size: 0.82rem;
    background: var(--primary-lighter);
    border-top: 1px solid var(--border-color);
}

.blog-figure figcaption a {
    color: var(--primary);
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.blog-figure figcaption i {
    font-size: 0.7rem;
}

.blog-article-body ul,
.blog-article-body ol {
    padding-right: 20px;
    margin-bottom: 15px;
}

.blog-article-body li {
    margin-bottom: 6px;
    line-height: 2.2;
}

.blog-article-body blockquote {
    background: var(--primary-lighter);
    border-right: 4px solid var(--primary);
    padding: 15px 20px;
    border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
    margin: 15px 0;
    font-size: 0.92rem;
    color: var(--text-gray);
}

.blog-article-body a {
    color: var(--primary);
    border-bottom: 1px dashed var(--primary);
}

.blog-article-body a:hover {
    color: var(--accent);
    border-color: var(--accent);
}

.blog-article-share {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 18px 25px;
    border-top: 1px solid var(--border-color);
    background: var(--bg-body);
}

.blog-share-label {
    font-size: 0.85rem;
    color: var(--text-light);
    display: flex;
    align-items: center;
    gap: 5px;
    margin-left: 5px;
}

.blog-share-btn {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 0.9rem;
    transition: var(--transition);
    cursor: pointer;
}

.blog-share-btn:hover {
    color: #fff;
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
}

/* ----- blog sidebar ----- */

.blog-sidebar-sticky {
    position: sticky;
    top: 15px;
}

.blog-sidebar-box {
    background: var(--bg-white);
    border-radius: var(--radius);
    border: 1px solid var(--border-color);
    box-shadow: var(--shadow-sm);
    margin-bottom: 15px;
    overflow: hidden;
}

.blog-sidebar-title {
    padding: 14px 18px;
    font-size: 0.9rem;
    font-weight: 700;
    color: var(--text-dark);
    border-bottom: 1px solid var(--border-color);
    display: flex;
    align-items: center;
    gap: 8px;
    background: var(--bg-body);
}

.blog-sidebar-title i {
    color: var(--primary);
    font-size: 0.85rem;
}

.blog-toc-list-sidebar {
    padding: 10px 15px;
    max-height: 350px;
    overflow-y: auto;
}

.blog-toc-list-sidebar li a {
    font-size: 0.8rem;
}

.blog-sidebar-item {
    display: flex;
    gap: 12px;
    padding: 12px 15px;
    border-bottom: 1px solid var(--border-color);
    transition: var(--transition);
}

.blog-sidebar-item:last-child {
    border-bottom: none;
}

.blog-sidebar-item:hover {
    background: var(--primary-lighter);
}

.blog-sidebar-item-img {
    width: 70px;
    height: 55px;
    border-radius: 6px;
    overflow: hidden;
    flex-shrink: 0;
}

.blog-sidebar-item-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.blog-sidebar-item-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.blog-sidebar-item-title {
    font-size: 0.8rem;
    color: var(--text-dark);
    line-height: 1.7;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.blog-sidebar-item-date {
    font-size: 0.72rem;
    color: var(--text-light);
    margin-top: 4px;
}

.blog-sidebar-item-date i {
    font-size: 0.65rem;
    margin-left: 3px;
}

.blog-sidebar-cta {
    background: linear-gradient(135deg, var(--primary-dark), var(--primary));
    border-radius: var(--radius);
    padding: 25px 20px;
    text-align: center;
    margin-bottom: 15px;
}

.blog-sidebar-cta i {
    font-size: 2rem;
    color: var(--accent);
    margin-bottom: 10px;
}

.blog-sidebar-cta h6 {
    color: #fff;
    font-size: 0.95rem;
    font-weight: 700;
    margin-bottom: 5px;
}

.blog-sidebar-cta p {
    color: rgba(255,255,255,0.7);
    font-size: 0.8rem;
    margin-bottom: 12px;
}

.blog-sidebar-cta-btn {
    display: inline-block;
    background: var(--accent);
    color: #fff;
    padding: 8px 22px;
    border-radius: 50px;
    font-size: 0.85rem;
    font-weight: 600;
    transition: var(--transition);
}

.blog-sidebar-cta-btn:hover {
    background: var(--accent-dark);
    color: #fff;
    transform: translateY(-2px);
}

@media(max-width:991px) {
    .blog-hero {
        padding: 25px 0;
    }
    .blog-hero-title {
        font-size: 1.3rem;
    }
    .blog-article-header {
        padding: 18px 15px 12px;
    }
    .blog-article-title {
        font-size: 1.1rem;
    }
    .blog-article-lead {
        margin: 15px 15px 0;
        padding: 15px 18px;
    }
    .blog-toc {
        margin: 15px 15px 0;
    }
    .blog-article-body {
        padding: 18px 15px;
    }
    .blog-article-share {
        padding: 15px;
    }
    .blog-sidebar-sticky {
        position: static;
    }
}

/* old blog card compat */

.blog-card{
    overflow: hidden;
    border-radius: var(--radius) !important;
    border: 1px solid var(--border-color);
    transition: var(--transition);
}

.blog-card:hover {
    box-shadow: var(--shadow-md);
}

.blog-img{
    width: 100%;
}

.blog-card a{
    font-size: 0.95rem;
    font-family: vazir-med;
    color: var(--text-dark);
    display: inline-block;
    line-height: 2;
}

/* ----- end style for blog ----- */

/* ----- start style for footer ----- */

footer{
    width: 100%;
    background: linear-gradient(180deg, var(--primary-dark) 0%, #001a33 100%);
    padding: 0;
    color: rgba(255,255,255,0.85);
    margin-top: 30px;
}

.footer-features {
    background: var(--bg-white);
    border-bottom: 1px solid var(--border-color);
    padding: 25px 0;
    margin-top: -30px;
    margin-bottom: 0;
}

.footer-feature-item {
    padding: 10px;
}

.footer-feature-icon {
    width: 48px;
    height: 48px;
    background: var(--primary-lighter);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 10px;
}

.footer-feature-icon i {
    font-size: 1.2rem;
    color: var(--primary);
}

.footer-feature-item .footer-feature-title {
    font-size: 0.88rem;
    font-weight: 700;
    color: var(--text-dark);
    margin-bottom: 2px;
}

.footer-feature-item span {
    font-size: 0.78rem;
    color: var(--text-light);
}

.footer-main {
    padding: 45px 0 20px;
}

.footer-brand {
    padding-left: 30px;
}

.footer-title {
    font-size: 0.95rem;
    margin-top: 0;
    margin-bottom: 18px;
    color: #fff;
    font-weight: 700;
    position: relative;
    padding-bottom: 12px;
}

.footer-title::after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 35px;
    height: 2px;
    background: var(--accent);
    border-radius: 2px;
}

.footer-box p.footer-title {
    font-size: 0.95rem;
    margin-bottom: 18px;
}

.footer-box ul {
    padding-right: 0;
}

.footer-links li{
    margin-bottom: 10px;
}

.footer-links li a{
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.85rem;
    color: rgba(255,255,255,0.6);
    font-family:vazir-med;
    transition: var(--transition);
}

.footer-links li a i {
    font-size: 0.7rem;
    transition: var(--transition);
}

.footer-links li a:hover{
    color: var(--accent);
    padding-right: 5px;
}

.footer-links li a:hover i {
    color: var(--accent);
}

.footer-about {
    font-size: 0.82rem;
    color: rgba(255,255,255,0.55);
    line-height: 2.1;
    text-align: justify;
    margin-bottom: 18px;
}

.footer-contact-info {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.footer-contact-info > div {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.82rem;
    color: rgba(255,255,255,0.7);
}

.footer-contact-info > div i,
.footer-contact-info > div .brand-icon {
    color: var(--accent);
    font-size: 0.85rem;
    width: 16px;
    text-align: center;
}

.footer-trust-badges {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.footer-detail-pic{
    width: 85px;
    height: 85px;
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: var(--radius-sm);
    padding: 8px;
    background: rgba(255,255,255,0.05);
    transition: var(--transition);
}

/* نماد اعتماد یک لینک است نه عکس، و لوگویی که اینماد می‌دهد مربع نیست.
   قاب همان قاب نماد ساماندهی می‌ماند و ابعادش ثابت است تا با دیر رسیدنِ
   تصویر از سرور اینماد، فوتر جابه‌جا نشود؛ خودِ لوگو داخل قاب جا می‌شود
   نه اینکه کشیده شود. */
.footer-detail-pic--link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.footer-detail-pic--link img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
}

.footer-detail-pic:hover {
    background: rgba(255,255,255,0.12);
    border-color: rgba(255,255,255,0.3);
    transform: translateY(-2px);
}

.footer-social {
    display: flex;
    gap: 8px;
}

.footer-social-btn {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.15);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: var(--transition);
    color: rgba(255,255,255,0.7);
    font-size: 1rem;
}

.footer-social-btn:hover {
    background: var(--accent);
    border-color: var(--accent);
    color: #fff;
    transform: translateY(-3px);
    box-shadow: 0 4px 15px rgba(245,124,0,0.4);
}

.social-list a{
    display: inline-block;
}

.social-media{
    font-size: 28px;
    color: rgba(255,255,255,0.5);
    margin-left: 20px;
    transition: var(--transition);
}

.social-media:hover {
    color: var(--accent);
    transform: translateY(-2px);
}

.app-download{
    background-color: #3c4b6d;
    border-radius: var(--radius);
    margin-bottom: 10px;
}

.footer-details p{
    color: var(--text-dark);
    font-size: 0.98rem;
    margin: 25px 0 15px 0;
}

.footer-details span{
    display: block;
    font-family:vazir-med;
    font-size: 0.98rem;
    color: #5e5c5c;
    line-height: 2.3;
    margin-bottom: 15px;
}

.footer-bottom {
    border-top: 1px solid rgba(255,255,255,0.08);
    padding: 18px 0;
}

.copy-right {
    font-family:vazir-med;
    font-size: 0.82rem;
    margin: 0;
    color: rgba(255,255,255,0.45);
}

.copy-right strong {
    color: rgba(255,255,255,0.7);
}

.footer-bottom-links {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 0.8rem;
}

.footer-bottom-links a {
    color: rgba(255,255,255,0.45);
    transition: var(--transition);
}

.footer-bottom-links a:hover {
    color: var(--accent);
}

.footer-bottom-links span {
    color: rgba(255,255,255,0.15);
}

.topbutton{
	position:fixed;
	left:15px;
	bottom:15px;
    background: linear-gradient(135deg, var(--primary), var(--primary-light));
    padding: 12px 16px;
    border-radius: 50%;
    z-index:200;
    border: none;
    color: #fff;
    font-size: 1rem;
    display: none;
    box-shadow: var(--shadow-md);
    transition: var(--transition);
}

.topbutton:hover{
    color: #fff;
    transform: translateY(-3px);
    box-shadow: var(--shadow-lg);
}

@media(max-width:767px){
    .footer-box{
        text-align: center;
    }

    .footer-box ul{
        padding-right: 1rem !important;
    }

    .footer-brand {
        padding-left: 0;
        text-align: center;
    }

    .footer-contact-info {
        align-items: center;
    }

    .footer-trust-badges {
        justify-content: center;
    }

    .footer-social {
        justify-content: center;
    }

    .footer-title::after {
        right: 50%;
        transform: translateX(50%);
    }

    .social-list{
        padding-right: 2rem !important;
    }

    .social-media{
        font-size: 25px;
        margin-left: 15px;
    }

    .footer-details span{
        text-align: justify;
    }

    .footer-pic{
        justify-content: center !important;
        padding-left: 1rem !important;
    }

    .footer-bottom {
        text-align: center;
    }

    .footer-bottom-links {
        justify-content: center;
    }
}

@media(max-width:576px){
    .email-box{
        width: 80%;
        margin: 0 auto;
    }

    .footer-details{
        padding-right: 1rem !important;
    }

    .footer-details p{
        text-align: center;
    }

    .footer-links li a {
        justify-content: center;
    }
}

/* ----- end style for footer ----- */

/* ----- start style for product page ----- */

.breadcrumb-custom{
    font-size: 0.9rem;
    color: var(--text-dark);
}

.breadcrumb-custom:hover{
    color: var(--text-dark);
}

.product-content , .product-delivery-icons , .product-tab-content{
    width: 100%;
    background-color: var(--bg-white);
    margin-bottom:17px;
    border-radius: var(--radius);
    padding:10px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
}

.product-icons i{
    color: var(--text-dark);
}

.modal-body p{
    text-align: right !important;
    color: var(--text-dark);
}

.btn-share{
    border: 1px solid var(--border-color);
    font-size: 0.9rem;
    display: block;
    padding: 10px 0;
    color: var(--text-light);
    border-radius: var(--radius-sm);
}

.btn-share:hover{
    color: var(--primary);
    border-color: var(--primary);
}

.btn-share i{
    font-size: 17px;
    vertical-align: middle;
}

.product-details p{
    color: var(--text-dark);
    line-height: 2;
    font-size: 0.98rem;
    margin-top: 6px;
}

.carousel-indicator-custom button{
    width: 50px !important;
}

.select-color{
    display: inline-block;
    position: relative;
    cursor: pointer;
    line-height: unset !important;
}

.color-shape{
    width: 17px;
    height: 17px;
    position: absolute;
    right: 8px;
    top: 5px;
    border-radius: 5px;
    border: 1px solid #ccc;
}

.select-color input[type="radio"] {
    visibility: hidden;
    position: absolute;
}

.color-name{
    padding:5px 37px 5px 10px;
    border: 1px solid #dedede;
    border-radius: 5px;
    color: #6f6f6f;
    font-size: 0.9rem;
    width: 90px !important;
    display: inline-block;
}

.select-color input[type="radio"]:checked + .color-name{
    border-color: var(--primary);
}

.add-cart-box{
    width: 100%;
    border: 1px solid var(--border-color);
    border-radius: var(--radius);
    margin: 10px 0;
    padding: 10px;
}

.product-seller-row{
    display: flex;
    justify-content: space-between;
    padding: 10px;
    font-size: 0.95rem;
    color: #666666;
    width: 100%;
    border-bottom: 1px solid var(--border-color);
}

.add-cart-btn , .add-cart-btn2{
    display: block;
    width: 100%;
    color: #fff;
    font-size: 0.95rem;
    border: none;
    padding: 12px 5px;
    margin: 20px 0 10px 0;
    background: linear-gradient(135deg, var(--primary), var(--primary-light));
    border-radius: var(--radius-sm);
    transition: var(--transition);
}

.add-cart-btn:hover , .add-cart-btn2:hover{
    color: #fff;
    background: linear-gradient(135deg, var(--primary-dark), var(--primary));
    transform: translateY(-1px);
}

.product-delivery-icons i{
    font-size: 30px;
    color: #a7a4a4;
    margin-top: 10px;
}

.product-delivery-icons p{
    font-size: 0.9rem;
    color: #a7a4a4;
    margin: 5px 0;
}

.custom-nav-pills{
    padding: 10px 0;
}

.custom-nav-pills .nav-item .nav-link{
    font-size: 0.95rem;
    color: var(--text-dark);
    border-radius: var(--radius-sm);
}

.custom-nav-pills .active{
    background: linear-gradient(135deg, var(--primary), var(--primary-light)) !important;
    color: #fff !important;
}

.tab-content p , .tab-content span{
    color: var(--text-dark);
}

.mobile-banner{
    max-width: 80%;
    display: block;
    margin: 20px auto;
    border-radius: var(--radius);
}

.box-line{
    display: block;
    background-color: #fafafa;
    padding: 0.98rem 18px 0.9rem;
    font-size: 0.9rem;
    line-height: 1.7;
    color: var(--text-dark);
    min-height: 47px;
    position: relative;
    border-right: 3px solid var(--primary);
    border-radius: var(--radius-sm);
    box-shadow: var(--shadow-sm);
}

.rating-result{
    background-color: #fafafa;
    border-radius: var(--radius);
    box-shadow: var(--shadow-sm);
    padding:10px;
    margin-bottom: 10px;
}

#comment .progress{
    height: 8px !important;
}

.add-comment p{
    font-family: vazir-med;
    font-size: 0.95rem;
    line-height: 2.2;
    margin:10px;
}

.comment-info{
    background-color: #fafafa;
    border-radius: var(--radius);
    width: 100%;
    box-shadow: var(--shadow-sm);
    text-align: center;
    padding: 15px 5px;
    margin-bottom: 20px;
}

.star-box{
    direction: ltr;
    display: flex;
    justify-content: center;
    margin-bottom:15px ;
}

.positve-point,.negative-point{
    list-style-type: disc !important;
}

.positve-point li,.negative-point li{
    color: var(--text-dark);
}

.positve-point li::marker{
    color: var(--success);
}

.negative-point li::marker{
    color: var(--danger);
}

.custom-pagination{
    display: flex;
    justify-content: center !important;
}

.custom-pagination li{
	margin-left: 10px;
	background-color: #fafafa;
	width: 35px;
    height: 33px;
	border-radius: 50%;
	border: 1px solid var(--border-color);
    text-align: center;
    box-shadow: var(--shadow-sm);
    transition: var(--transition);
}

.custom-pagination li.active{
    background: linear-gradient(135deg, var(--primary), var(--primary-light)) !important;
    border: 0 !important;
}

.custom-pagination li.active a{
    color: #fff !important;
}

.custom-pagination li a{
    font-size: 0.9rem;
    color: var(--text-dark);
    margin-top: 6px;
    display: inline-block;
    cursor: pointer;
}

.question-box{
    border: 1px solid var(--border-color);
    border-radius: var(--radius);
    position: relative;
    padding: 15px 40px;
}

.question-icon{
    width: 45px;
    height: 45px;
    border-radius: 50%;
    position: absolute;
    top:-22px;
    right: -10px;
    background: linear-gradient(135deg, var(--primary-light), var(--primary));
    text-align: center;
    line-height: 47px;
}

.question-icon i{
    color: #fff;
    font-size: 20px;
}

.question-header{
    display: flex;
    align-items:baseline;
    justify-content: space-between;
    border-bottom: 1px solid var(--border-color);
}

.question-body p{
    font-family: vazir-med;
    font-size: 0.95rem;
    line-height: 2.2;
}

.question-footer{
    display: flex;
    justify-content: end;
}

/* ----- end style for product page ----- */

/* ----- start style for 404 page ----- */

.error-box{
    width: 100%;
    background-color: var(--bg-white);
    margin:20px 0;
    border-radius: var(--radius);
    padding:10px;
    box-shadow: var(--shadow-sm);
}

.error-box p{
    font-size: 18px;
    color: var(--text-dark);
    margin: 30px 0;
}

/* ----- end style for 404 page ----- */

/* ----- start style for search page ----- */

.custom-sidebar , .product-items{
    width: 100%;
    background-color: var(--bg-white);
    margin-bottom:15px;
    border-radius: var(--radius);
    padding:10px 15px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
}

.custom-sidebar p , .custom-sidebar a , .custom-sidebar li{
    color: var(--text-dark);
}

.search-in-result::after{
    content: '\f002';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    position: absolute;
    color: #6e7074;
    left: 0.9rem;
    top: 7px;
}

.brands-select{
    height: 200px;
    overflow-y: scroll;
}

.asRange .asRange-pointer .asRange-tip{
    font-family: vazir-fa-med !important;
}

.sort-by > li > .active{
    background-color: var(--primary) !important;
}

.product-items .card{
    border-radius: var(--radius);
}

/* ----- end style for search page ----- */

/* ----- start style for send comment page ----- */

.range-slider-title{
    font-size: 0.9rem;
    margin: 15px 0;
}

.slider-rating{
    background: #eee;
    height: 5px;
    position: relative;
    border-radius: 40px;
    width: 100%;
}

.slider-rating::before {
    content: attr(data-title);
    position: absolute;
    right: 85%;
    top: -23px;
    transform: translateY(-50%);
    margin-right: 30px;
    white-space: nowrap;
    font-size: 0.9rem;
}

.divv {
    width: 25%;
    height: 5px;
    position: absolute;
    z-index: 500;
}

.divv .slider-rating-span {
    width: 0.9rem;
    height: 0.9rem;
    border-radius: 50%;
    background-color: var(--primary);
    border: 2px solid #fff;
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    z-index: 3;
}

.divv.is-active ~ div span {
    background-color: silver;
    border: 2px solid white;
}

.divv.is-active .slider-rating-span {
    border: unset !important;
}


.divv:nth-child(1) {
    right: 0;
}

.divv:nth-child(2) {
    right: 25%;
}

.divv:nth-child(3) {
    right: 50%;
}

.divv:nth-child(4) {
    right: 75%;
}

.divv:nth-child(5) {
    right: 100%;
    width: 0;
}

.range-value {
    width: 100%;
    height: 100%;
}

.time-line {
    position: absolute;
    top: 0;
    bottom: 0;
    background: var(--primary);
    display: flex;
    align-content: center;
    align-items: center;
    width: 0;
    right: 0.9rem;
    transition: all 200ms ease;
}

.time-line:after {
    content: '';
    width: 20px;
    background: var(--primary);
    height: 20px;
    border-radius: 50%;
    left: -4px;
    position: absolute;
    transition: all 200ms ease;
    box-shadow: 0 1px 4px 0 rgba(0, 0, 0, .2);
}

.send-btn{
    color: #fff;
    font-size: 0.9rem;
    border: none;
    padding: 10px 20px;
    background: linear-gradient(135deg, var(--primary), var(--primary-light));
    border-radius: var(--radius-sm);
}

.send-comment-text h6{
    color: var(--text-dark);
    font-size: 0.95rem;
    margin: 15px 0 20px 0;
}

.send-comment-text p{
    font-size: 0.95rem;
    color: var(--text-dark);
    line-height: 2.3;
    font-family: vazir-med;
    text-align: justify;
}

/* ----- end style for send comment page ----- */

/* ----- start style for cart page ----- */

.cart-content{
    width: 100%;
    background-color: var(--bg-white);
    margin:17px 0;
    border-radius: var(--radius);
    padding:10px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
}

.shopping-cart-title{
    display: block;
    font-size: 0.95rem;
    line-height: 2.2;
    color: var(--text-dark);
}

.shopping-cart-title:hover{
    color: var(--text-dark);
}

.shopping-cart-detail{
    font-size: 0.95rem;
    margin: unset !important;
    color: var(--text-dark);
    line-height: 2.3;
}

.cart-qty-plus,
.cart-qty-minus{
	width: 34px;
	height: 34px;
	background-color: #fff;
	border: 1px solid #ced4da;
    border-radius: .25rem;
}

.qty{
    width: 37px !important;
    height: 34px !important;
    margin: 0 3px;
}

.delete-icon{
    background-color: #d5dadd;
    color: #7a7a7a;
    padding:8px 10px;
    border-radius: 50%;
    font-size: 0.98rem;
    cursor: pointer;
}

.shopping-cart-item{
    margin:20px 10px;
    border-bottom: 1px solid #ced4da;
    padding-bottom: 10px;
}

@media(max-width:767px){
    .shopping-cart-item img{
        max-width: 50% !important;
        max-height: 150px !important;
        margin: 10px auto;
    }
}

.empty-cart img{
    display: block;
    width: 50%;
    margin: 0 auto;
}

.empty-cart p{
    text-align: center;
    color: var(--text-dark);
    font-size: 0.98rem;
}

.empty-cart span{
    text-align: center;
    display: block;
    color: var(--text-light);
    font-size: 0.95rem;
}

/* ----- end style for cart page ----- */

/* ----- start style for shopping page ----- */

.checkout-steps{
    width: 100%;
    text-align: center;
    font-size: 0.98rem;
    color: #777;
    margin-bottom: 15px;
}

.is-completed,.is-completed-extra{
    width: 30%;
    position: relative;
    display: inline-block;
}

.is-completed::before , .is-completed-extra::before{
    content: "";
    position: absolute;
    width: 101%;
    height: 3px;
    top: 160%;
    margin-right: 30px;
    z-index: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.is-completed::before{
    background-color: #d0d0d0;
}

.is-completed-extra::before{
    background-color: var(--primary);
}

.checkout-steps-active{
    color: var(--primary);
    position: relative;
}

.checkout-steps-active:hover{
    color: var(--primary);
}

.active-link-shopping::after{
    content: "";
    position: absolute;
    right: 0;
    left: 0;
    bottom: -24px;
    margin: 0 auto;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: var(--primary);
    z-index: 1000;
}

.checkout-steps-item{
    color: #a5a5a5;
    position: relative;
}

.checkout-steps-item:hover{
    color:  #a5a5a5;
}

.active-link::after {
    content: "";
    position: absolute;
    right: 0;
    left: 0;
    bottom: -24px;
    margin: 0 auto;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: #a5a5a5;
    z-index: 1000;
}

.checkout-steps .is-active {
    width: 30%;
    position: relative;
    display: inline-block;
}

.checkout-contact{
    padding: 20px 43px 10px 20px;
    color: var(--text-dark);
    position: relative;
}

.checkout-contact::before{
    content: "";
    width: 5px;
    top: 0;
    bottom: 0;
    right: -1px;
    position: absolute;
    background-color: var(--primary-light);
}

.checkout-contact-badge{
    width: 30px;
    height: 30px;
    background-color: var(--primary-lighter);
    box-shadow: 0 8px 9px 0 rgba(0, 0, 0, .05);
    border: 1px solid var(--primary-light);
    position: absolute;
    right: -0.95rem;
    top: 50%;
    transform: translateY(-50%);
    border-radius: 50%;
    text-align: center;
    color: var(--primary);
    line-height: 30px;
    font-size: 0.9rem;
}

.customer-info p{
    color: var(--text-dark);
}

.order-box .card{
    border-radius: var(--radius);
}

.dpay{
    width: 40px;
    height: 40px;
}

.icon-success{
    background-color: #b3e17c;
    color: #4CAF50;
    padding: 10px;
    border-radius: 50%;
}

.icon-warning{
    background: #ffdddd;
    color: #ff737b;
    padding: 10px 0.95rem;
    border-radius: 50%;
}

.order-check{
    text-align: center;
    margin-bottom: 35px;
}

.order-code{
    color: var(--primary);
    background: var(--primary-lighter);
    padding: 0 10px;
    border-radius: 5px
}

.order-btn::after{
    content: '\f290';
    font-family: 'Font Awesome 5 Free';
    font-size: 25px;
    font-weight: 900;
    position: absolute;
    right: 0.95rem;
    top: 0;
    color:#fff;
}

/* ----- end style for shopping page ----- */

/* ----- start style for contact & about us page ----- */

.contact-logo{
    width: 30px;
    height: 30px;
    border-radius: 50%;
    margin-left: 5px;
}

.about-us p{
    font-size: 0.98rem;
    font-family: vazir-med;
    line-height: 2.2;
    margin: 20px 0;
    text-align: justify;
}

/* ----- end style for contact & about us page ----- */

/* ----- start style for product comparison page ----- */

.product-comparison h6{
    color: var(--text-dark);
    font-size: 0.98rem;
    margin-top: 5px;
}

.product-comparison .card{
    border-radius: var(--radius);
}

.comparison-details p{
    font-size: 0.9rem;
    color: var(--text-dark);
    margin: 10px 0;
}

.comparison-details > div{
    margin: 5px 0;
    border-left: 1px solid #c5c5c5;
}

.comparison-details > div:last-child{
    border-left: unset !important;
}

@media(max-width:575px){
    .comparison-details > div:nth-child(2){
        border-left: unset !important;
    }
}

/* ----- end style for product comparison page ----- */

/* ----- sidebar user header ----- */

.sidebar-user-header {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 15px;
    background: var(--primary-lighter);
    border-bottom: 1px solid var(--border-color);
}

.sidebar-user-avatar {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary), var(--primary-light));
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.sidebar-user-avatar i {
    color: #fff;
    font-size: 0.85rem;
}

.sidebar-user-name {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--text-dark);
}

/* ----- start style for profile page ----- */

.profile-card{
    width: 100%;
    background-color: var(--bg-white);
    margin:17px 0;
    border-radius: var(--radius);
    padding:10px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
}

.profile-card p{
    color: var(--text-dark);
}

.profile-card .card{
    border-radius: var(--radius) !important;
}

.profile-avatar{
    width: 90px;
    height: 90px;
    border-radius: 50%;
    display: block;
    margin: 10px auto;
}

.profile-sidebar{
    width: 100%;
    padding-right: 0;
    margin-bottom: 0 !important;
}

.profile-sidebar li{
    width: 100%;
    padding: 0.95rem 0;
}

.profile-sidebar li a{
    width: 100%;
    color: var(--text-dark);
    transition: var(--transition);
    font-size: 0.95rem;
    display: block;
}

.profile-sidebar li:hover a{
    color: var(--primary);
}

.profile-edit-link{
    display: inline-block;
    font-size: 0.9rem;
    color: var(--primary);
    border-bottom: 2px dotted var(--primary);
    margin:20px 2px;
    padding-bottom: 3px;
    transition: var(--transition);
}

.profile-edit-link:hover{
    color: var(--primary-dark);
}

.profile-recent-fav{
    width: 100%;
    display: flex;
    padding: 10px;
    border-bottom: 1px solid #eee;
}

.profile-recent-fav:last-child{
    border-bottom: none !important;
}

.profile-recent-fav a{
    display: block;
    font-size: 0.9rem;
    margin-top: 10px;
    color: var(--text-dark);
}

.profile-recent-fav img{
    width: 80px;
    height: 80px;
}

.profile-recent-fav i{
    color: #aca9a9;
    margin: 35px 0 0 10px;
    float: left;
    cursor: pointer;
}

.thead-custom{
    color: #fff !important;
    background: linear-gradient(135deg, var(--primary), var(--primary-light)) !important;
    border-color: var(--primary) !important;
}

.table-custom tr td{
    padding: 15px 5px;
}

.profile-card .alert{
    font-family: vazir-med !important;
    font-size: 0.9rem;
}

.fav-list-pic{
    width: 100px;
    height: 100px;
    margin: 10px 5px;
    display: block;
}

.fav-list-title{
    display: block;
    color: var(--text-dark);
    font-size: 0.95rem;
    line-height: 2.1;
    margin-top: 10px;
}

.fav-item{
    border-radius: var(--radius) !important;
}

.fav-item i{
    color: #aca9a9;
    margin-left:10px;
    cursor: pointer;
}

.fav-list-title:hover{
    color: var(--text-dark);
}

.profile-comment p{
    font-family: vazir-med;
    font-size: 0.95rem;
    line-height: 2.2;
}

.profile-comment i{
    color: #aca9a9;
    cursor: pointer;
    margin: 0 0 10px 10px;
    float: left;
    font-size: 0.98rem;
}

.address-box{
    padding: 27px 0;
}

.address-box i{
    font-size: 50px;
    margin: 10px 0;
}

.personal-info input , .personal-info select{
    font-size: 0.95rem !important;
}

.personal-info input.form-control-lg{
    padding: 0.8rem 1rem !important;
}

.personal-info .form-select{
    padding: 0.8rem 0.75rem 0.85rem 2.25rem !important;
}

/* ----- end style for profile page ----- */

/* ----- start style for signup & login ----- */

.signup-login-box{
    background-color: var(--bg-white);
    border-radius: var(--radius);
    margin: 100px auto;
    box-shadow: var(--shadow-md);
    padding-bottom: 10px;
    border: 1px solid var(--border-color);
}

.signup-login-box img{
    display: block;
    margin: 10px auto;
}

.signup-login-box p{
    text-align: center;
    font-size: 0.9rem;
    font-family: vazir-med;
    color: var(--text-dark);
    margin-top: 15px;
}

.signup-login-box  a{
    color: var(--text-dark);
}

.underline{
    border-bottom: 2px dotted var(--primary);
}

.signup-login-form{
    position: relative;
    width: 80%;
    margin: 30px auto;
}

.mobile-number::after{
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    content: '\f007';
    position: absolute;
    right: 15px;
    top: 25%;
    color: rgb(179, 179, 179);
}

.signup-login-input{
    padding-right: 40px !important;
}

.signup-login-input:focus{
    z-index: unset !important;
}

.password::after{
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    content: '\f023';
    position: absolute;
    right: 15px;
    top: 25%;
    color: rgb(179, 179, 179);
}

.form-check-input-custom{
    margin-right: -17px !important;
    margin-top: 7px;
}

.signup-btn , .login-btn , .remember-btn ,.order-btn{
    position: relative;
    padding: 0.95rem 50px;
    overflow: hidden !important;
    border: unset !important;
    background: linear-gradient(135deg, var(--primary), var(--primary-light));
    border-radius: var(--radius-sm);
}

.signup-btn::after{
    content: '\f234';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    position: absolute;
    right: 15px;
    top: 25%;
    color:#fff;
}

.login-btn::after{
    content: '\f2f6';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    position: absolute;
    right: 15px;
    top: 25%;
    color:#fff;
}

.remember-btn::after{
    content: '\f0e2';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    position: absolute;
    right: 15px;
    top: 25%;
    color:#fff;
}

.signup-btn::before , .login-btn::before , .remember-btn::before , .order-btn::before{
    width: 58px;
    height: 60px;
    position: absolute;
    right: -0.9rem;
    top: -8px;
    background: hsla(0,0%,100%,.21);
    content: "";
    border-radius: 50%;
    transition: all .4s ease-in-out;
}

.signup-btn:hover::before,.login-btn:hover::before ,.remember-btn:hover::before , .order-btn:hover::before{
    width: 1000px;
    height: 600px;
    right: -350px;
    top: -350px;
}

/* ----- end style for signup & login ----- */

/* ----- start style for blog legacy ----- */

.dropdown-toggle::after{
    vertical-align: middle;
    margin-right: 4px;
    margin-top: 2px;
}

.blog-content{
    width: 100%;
    background-color: var(--bg-white);
    margin-bottom: 15px;
    border-radius: var(--radius);
    padding: 10px 15px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
}

.blog-content-title{
    width: 100%;
    border-bottom: 1px solid var(--border-color);
}

.blog-content-title h1{
    font-size: 18px;
    margin: 10px 0;
    line-height: 2.1;
}

/* ----- end style for blog legacy ----- */

/* ----- CTA Banner ----- */

.cta-banner {
    background: linear-gradient(135deg, var(--primary-dark), var(--primary));
    border-radius: var(--radius);
    padding: 40px;
    text-align: center;
    margin-bottom: 20px;
    position: relative;
    overflow: hidden;
}

.cta-banner::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -20%;
    width: 300px;
    height: 300px;
    background: radial-gradient(circle, rgba(245,124,0,0.15) 0%, transparent 70%);
    border-radius: 50%;
}

.cta-banner h3 {
    color: #fff;
    font-size: 1.3rem;
    margin-bottom: 10px;
    position: relative;
}

.cta-banner p {
    color: rgba(255,255,255,0.8);
    font-size: 0.95rem;
    margin-bottom: 20px;
    position: relative;
}

.cta-banner .btn-accent {
    position: relative;
    padding: 12px 35px;
    font-size: 1rem;
    border-radius: 50px;
}

/* Favorite icon */
.favorite-icon {
    cursor: pointer;
    transition: transform 0.2s ease, color 0.2s;
}
.favorite-icon.fas {
    color: var(--danger);
    transform: scale(1.2);
}

/* home-page redesign */
.home-page {
    padding-bottom: 24px;
}

.home-hero {
    background: linear-gradient(135deg, #002f5b 0%, #00457c 52%, #0d6c93 100%);
    color: #fff;
    padding: 28px 0 26px;
    position: relative;
    overflow: hidden;
}

.home-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(260px, .85fr);
    gap: 24px;
    align-items: center;
}

.home-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.18);
    color: #fff;
    border-radius: 8px;
    padding: 7px 12px;
    font-size: .82rem;
    margin-bottom: 12px;
}

.home-kicker i,
.home-hero-actions i,
.home-trust-strip i,
.home-category-grid i {
    color: var(--accent-light);
}

.home-hero h1 {
    font-size: 1.9rem;
    font-weight: 800;
    line-height: 1.65;
    margin: 0 0 10px;
    color: #fff;
}

.home-hero p {
    color: rgba(255,255,255,.86);
    line-height: 2;
    max-width: 640px;
    margin-bottom: 16px;
    font-size: .98rem;
}

.home-hero-search {
    display: flex;
    background: #fff;
    border-radius: 8px;
    padding: 6px;
    box-shadow: 0 14px 36px rgba(0,0,0,.18);
    max-width: 680px;
}

.home-hero-search input {
    flex: 1;
    border: 0;
    min-height: 48px;
    padding: 0 14px;
    color: var(--text-dark);
    background: transparent;
}

.home-hero-search button {
    border: 0;
    background: var(--accent);
    color: #fff;
    border-radius: 7px;
    padding: 0 20px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 112px;
    justify-content: center;
}

.home-hero-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 14px;
}

.home-primary-action,
.home-secondary-action {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border-radius: 8px;
    padding: 0 14px;
    font-size: .9rem;
}

.home-primary-action {
    background: #fff;
    color: var(--primary);
}

.home-secondary-action {
    background: rgba(255,255,255,.12);
    color: #fff;
    border: 1px solid rgba(255,255,255,.22);
}

.home-hero-media {
    display: flex;
    justify-content: center;
}

.home-isaco-card {
    min-height: 240px;
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,.18);
    background: rgba(255,255,255,.1);
    box-shadow: 0 18px 40px rgba(0,0,0,.16);
    padding: 22px;
    flex-direction: column;
    align-items: center;
    text-align: center;
    backdrop-filter: blur(8px);
}

.isaco-logo-mark {
    width: min(100%, 280px);
    min-height: 128px;
    border-radius: 8px;
    background: #fff;
    color: var(--primary-dark);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-bottom: 7px solid var(--accent);
    box-shadow: 0 14px 30px rgba(0,0,0,.18);
}

.isaco-logo-en {
    font-family: Arial, sans-serif;
    font-size: 2.45rem;
    font-weight: 900;
    line-height: 1;
    color: #00457c;
}

.isaco-logo-fa {
    margin-top: 8px;
    font-size: 1.1rem;
    font-weight: 800;
    color: var(--accent-dark);
}

.isaco-card-copy {
    margin-top: 16px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.isaco-card-copy strong {
    color: #fff;
    font-size: 1rem;
}

.isaco-card-copy span {
    color: rgba(255,255,255,.78);
    font-size: .82rem;
}

.home-mobile-shortcuts,
.home-trust-strip,
.home-category-grid,
.home-car-grid {
    display: grid;
    gap: 12px;
}

.home-mobile-shortcuts {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 16px;
}

.home-mobile-shortcuts a,
.home-category-grid a,
.home-car-card,
.home-trust-strip div,
.home-seo-copy,
.blog-card-new {
    background: #fff;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    box-shadow: var(--shadow-sm);
}

.home-mobile-shortcuts a {
    min-height: 78px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: var(--text-dark);
    font-size: .82rem;
    text-align: center;
}

.home-mobile-shortcuts i {
    color: var(--primary);
    font-size: 1.25rem;
}

.home-trust-strip {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 16px;
}

.home-trust-strip div {
    padding: 14px;
    display: grid;
    grid-template-columns: 34px 1fr;
    align-items: center;
    column-gap: 10px;
}

.home-trust-strip i {
    font-size: 1.25rem;
    grid-row: span 2;
}

.home-trust-strip strong {
    font-size: .88rem;
    color: var(--text-dark);
}

.home-trust-strip span {
    font-size: .74rem;
    color: var(--text-light);
    line-height: 1.7;
}

.home-section {
    margin-top: 24px;
}

.home-car-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.home-car-card {
    min-height: 142px;
    padding: 14px;
    color: var(--text-dark);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.home-car-card img {
    width: 100%;
    max-width: 150px;
    height: 72px;
    object-fit: contain;
    margin-bottom: 10px;
}

.home-car-icon {
    width: 58px;
    height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--primary);
    background: var(--primary-lighter);
    border-radius: 8px;
    margin-bottom: 10px;
}

.home-car-card strong {
    font-size: .92rem;
    margin-bottom: 4px;
}

.home-car-card span {
    color: var(--text-light);
    font-size: .76rem;
}

.home-category-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.home-category-grid a {
    min-height: 126px;
    padding: 16px;
    color: var(--text-dark);
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.home-category-grid i {
    font-size: 1.4rem;
}

.home-category-grid strong {
    font-size: .95rem;
}

.home-category-grid span {
    color: var(--text-light);
    font-size: .78rem;
    line-height: 1.8;
}

.home-help-panel {
    background: linear-gradient(135deg, var(--primary-dark), var(--primary));
    color: #fff;
    border-radius: 8px;
    padding: 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.home-help-panel h2 {
    color: #fff;
    font-size: 1.25rem;
    margin: 0 0 8px;
    font-weight: 800;
}

.home-help-panel p {
    margin: 0;
    color: rgba(255,255,255,.82);
    line-height: 1.9;
}

.home-help-panel a {
    background: var(--accent);
    color: #fff;
    border-radius: 8px;
    padding: 11px 16px;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.home-seo-copy {
    padding: 18px;
}

.home-seo-copy p {
    margin: 0 0 14px;
    color: var(--text-gray);
    line-height: 2.2;
    font-size: .9rem;
}

.home-keyword-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.home-keyword-links a {
    background: var(--primary-lighter);
    color: var(--primary);
    border-radius: 8px;
    padding: 7px 10px;
    font-size: .8rem;
}

.blog-card-new {
    overflow: hidden;
    height: 100%;
}

.blog-card-new img,
.blog-card-fallback {
    width: 100%;
    height: 160px;
    object-fit: cover;
}

.blog-card-fallback {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 3rem;
}

.blog-card-new h3 {
    color: var(--text-dark);
    font-size: .88rem;
    font-weight: 700;
    line-height: 1.9;
    margin: 0 0 6px;
}

.blog-card-new p {
    color: var(--text-light);
    font-size: .76rem;
    line-height: 1.8;
    margin: 0;
}

@media (max-width: 991px) {
    .home-hero {
        padding: 18px 0 20px;
    }

    .home-hero-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .home-hero-media {
        display: none;
    }

    .home-hero h1 {
        font-size: 1.35rem;
        line-height: 1.75;
    }

    .home-hero p {
        font-size: .86rem;
        line-height: 1.9;
    }

    .home-hero-search {
        padding: 5px;
        border-radius: 8px;
    }

    .home-hero-search input {
        min-height: 46px;
        font-size: .82rem;
        padding: 0 10px;
    }

    .home-hero-search button {
        min-width: 48px;
        padding: 0 13px;
    }

    .home-hero-search button span {
        display: none;
    }

    .home-hero-actions {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .home-primary-action,
    .home-secondary-action {
        justify-content: center;
        font-size: .82rem;
        padding: 0 8px;
    }

    .home-mobile-shortcuts,
    .home-trust-strip,
    .home-category-grid,
    .home-car-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-trust-strip div {
        grid-template-columns: 28px 1fr;
        padding: 12px;
    }

    .home-trust-strip strong,
    .home-category-grid strong,
    .home-car-card strong {
        font-size: .82rem;
    }

    .home-section {
        margin-top: 18px;
    }

    .section-header {
        align-items: center;
        gap: 8px;
    }

    .section-title {
        font-size: 1rem;
        line-height: 1.7;
    }

    .section-link {
        font-size: .76rem;
        white-space: nowrap;
    }

    .home-help-panel {
        display: block;
        padding: 16px;
    }

    .home-help-panel h2 {
        font-size: 1rem;
        line-height: 1.8;
    }

    .home-help-panel p {
        font-size: .82rem;
        margin-bottom: 12px;
    }

    .home-help-panel a {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 430px) {
    .home-mobile-shortcuts a {
        min-height: 70px;
        font-size: .74rem;
    }

    .home-category-grid,
    .home-car-grid {
        gap: 10px;
    }

    .home-category-grid a,
    .home-car-card {
        min-height: 112px;
        padding: 12px;
    }

    .home-car-card img {
        height: 56px;
    }
}
.home-isaco-logo {
    width: min(100%, 340px);
    max-height: 142px;
    object-fit: contain;
    display: block;
    background: #fff;
    border-radius: 8px;
    padding: 8px;
    box-shadow: 0 12px 26px rgba(0,0,0,.16);
}

/* ===== product card: equal-height cards with a fixed image frame ===== */

.custom-product-slider .owl-item {
    padding: 4px 6px 0;
}

.custom-product-slider .owl-item.active {
    padding: 4px 6px 0;
}

.custom-product-slider .custom-card {
    padding-top: 0;
    height: 100%;
    display: flex;
    flex-direction: column;
    border: 1px solid var(--border-color);
    background: var(--bg-white);
}

.product-thumb {
    display: block;
    padding: 14px 14px 6px;
}

.custom-product-slider .slider-pic {
    width: 100% !important;
    height: 148px;
    object-fit: contain;
    margin: 0;
}

.slider-pic.is-placeholder {
    padding: 24px;
    opacity: .4;
}

.product-discount-badge {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 2;
    background: var(--accent);
    color: #fff;
    border-radius: 20px;
    padding: 3px 10px;
    font-size: .74rem;
    font-weight: 700;
    line-height: 1.6;
}

.product-card-body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 0 14px 14px;
}

.custom-product-slider .product-title {
    font-size: .85rem;
    line-height: 1.85;
    height: 3.7em;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    margin-bottom: 6px;
}

.product-price-row {
    margin: auto 0 12px;
    min-height: 46px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1px;
}

.product-old-price {
    color: var(--text-light);
    font-size: .76rem;
}

.product-price {
    color: var(--text-dark);
    font-size: .95rem;
    font-weight: 700;
}

.product-price small {
    font-size: .72rem;
    font-weight: 400;
    color: var(--text-light);
}

/* قطعات بدنه و شاسی قیمت اعلامی ندارند و به‌جای عدد، دعوت به تماس می‌گیرند */
.product-price.is-contact-price {
    color: var(--accent, #d33449);
    font-size: .84rem;
    font-weight: 700;
    white-space: nowrap;
}

/* همان دعوت به تماس، حالا کلیک‌شدنی: روی موبایل مستقیم شماره‌گیر را باز
   می‌کند. ارتفاع حداقلی دارد تا با انگشت هم به‌راحتی زده شود. */
.nx-contact-call {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 30px;
    max-width: 100%;
    padding: 3px 10px;
    border: 1px solid rgba(239, 57, 78, .35);
    border-radius: 999px;
    background: rgba(239, 57, 78, .07);
    color: var(--accent, #d33449);
    font-weight: 700;
    line-height: 1.6;
    text-decoration: none;
    transition: background .15s ease, border-color .15s ease;
}

.nx-contact-call:hover,
.nx-contact-call:focus {
    background: rgba(239, 57, 78, .14);
    border-color: var(--accent, #d33449);
    color: var(--accent, #d33449);
    text-decoration: none;
}

.nx-contact-call > span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.nx-contact-call i {
    font-size: .8em;
}

/* شماره‌ی تماس همیشه با ارقام فارسی و چپ‌به‌راست، کنار برچسب */
.nx-contact-call-num {
    direction: ltr;
    unicode-bidi: isolate;
    font-size: .92em;
    opacity: .9;
}

.custom-product-slider .add-cart-btn {
    margin: 0;
    padding: 10px 5px;
    font-size: .85rem;
}

/* ===== quick shortcuts: compact chips, not a second card grid ===== */

.home-mobile-shortcuts {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.home-mobile-shortcuts a {
    min-height: 0;
    flex-direction: row;
    gap: 7px;
    padding: 9px 14px;
    border-radius: 30px;
    font-size: .84rem;
    box-shadow: none;
}

.home-mobile-shortcuts i {
    font-size: 1rem;
}

/* ===== "buy by car": 5 per row so 10 brands fill exactly two rows ===== */

@media (min-width: 992px) {
    .home-car-grid {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }
}

.home-car-card {
    min-height: 158px;
    justify-content: flex-start;
    padding-top: 16px;
}

.home-car-card img {
    height: 78px;
    background: var(--bg-light, #f5f7fa);
    border-radius: 6px;
    padding: 4px;
}

/* ===== hero: trim the dead space inside the ISACO panel ===== */

.home-isaco-card {
    min-height: 0;
    padding: 18px;
}

.home-isaco-logo {
    max-height: 120px;
}

@media (max-width: 991px) {
    .home-mobile-shortcuts {
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
        padding-bottom: 4px;
    }

    .home-mobile-shortcuts::-webkit-scrollbar {
        display: none;
    }

    .home-mobile-shortcuts a {
        flex: 0 0 auto;
        white-space: nowrap;
    }

    .home-page .blog-card-new img,
    .home-page .blog-card-fallback {
        height: 110px;
    }

    .home-page .blog-card-fallback {
        font-size: 2rem;
    }

    .home-car-card {
        min-height: 148px;
    }
}

@media (max-width: 767px) {
    /* arrows sit on top of the cards at this width — swiping covers it */
    .custom-product-slider .owl-nav {
        display: none;
    }

    .custom-product-slider .add-cart-btn {
        font-size: .76rem;
        padding: 9px 4px;
    }

    .custom-product-slider .slider-pic {
        height: 120px;
    }
}

@media (max-width: 430px) {
    .home-mobile-shortcuts a {
        min-height: 0;
        font-size: .78rem;
        padding: 8px 12px;
    }
}

/* =======================================================================
   رنگ و حال: لایه‌ی سرزندگی روی همان طیف آبی پایه
   آبی رنگ اصلی می‌ماند؛ رنگ‌های مکمل فقط برای آیکون‌ها،
   حاشیه‌ها و حالت hover استفاده می‌شوند.
   ======================================================================= */

:root {
    --joy-orange: #f57c00;
    --joy-teal: #00a99d;
    --joy-violet: #6c5ce7;
    --joy-pink: #e5397e;
    --joy-green: #2eA84f;
    --joy-sky: #0091d5;
}

/* ---------- هیرو: نور رنگی و کمی حرکت ---------- */

.home-hero {
    background:
        radial-gradient(1100px 380px at 88% -12%, rgba(245,124,0,.34), transparent 62%),
        radial-gradient(900px 420px at 6% 116%, rgba(0,169,157,.32), transparent 62%),
        linear-gradient(135deg, #002f5b 0%, #00457c 52%, #0d6c93 100%);
}

/* بافت نقطه‌ای ملایم + هاله‌ی رنگی متحرک */
.home-hero::before,
.home-hero::after {
    content: '';
    position: absolute;
    pointer-events: none;
}

.home-hero::before {
    inset: 0;
    background-image: radial-gradient(rgba(255,255,255,.16) 1px, transparent 1px);
    background-size: 22px 22px;
    opacity: .5;
    mask-image: linear-gradient(to bottom, #000 0%, transparent 78%);
    -webkit-mask-image: linear-gradient(to bottom, #000 0%, transparent 78%);
}

.home-hero::after {
    width: 340px;
    height: 340px;
    top: -120px;
    right: 22%;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255,152,0,.5), transparent 68%);
    filter: blur(46px);
    animation: joy-drift 16s ease-in-out infinite;
}

/* نوار رنگی باریک زیر هیرو */
.home-hero .container::after {
    content: '';
    position: absolute;
    right: -50vw;
    left: -50vw;
    bottom: -26px;
    height: 3px;
    background: linear-gradient(90deg, var(--joy-orange), var(--joy-pink), var(--joy-violet), var(--joy-sky), var(--joy-teal));
    opacity: .85;
}

.home-hero .container {
    position: relative;
    z-index: 1;
}

@keyframes joy-drift {
    0%, 100% { transform: translate3d(0, 0, 0) scale(1); }
    50%      { transform: translate3d(-26px, 26px, 0) scale(1.12); }
}

.home-kicker {
    background: rgba(255,255,255,.16);
    border-color: rgba(255,255,255,.28);
}

.home-kicker i {
    animation: joy-pulse 2.4s ease-in-out infinite;
}

@keyframes joy-pulse {
    0%, 100% { transform: scale(1); }
    50%      { transform: scale(1.18); }
}

/* کلمه‌ی کلیدی رنگی داخل تیتر هیرو */
.hero-highlight {
    position: relative;
    color: #ffd08a;
    white-space: nowrap;
}

.hero-highlight::after {
    content: '';
    position: absolute;
    right: 0;
    left: 0;
    bottom: 2px;
    height: 8px;
    border-radius: 6px;
    background: linear-gradient(90deg, var(--joy-orange), rgba(245,124,0,0));
    opacity: .5;
    z-index: -1;
}

.home-hero-search {
    transition: box-shadow .3s ease, transform .3s ease;
}

.home-hero-search:focus-within {
    box-shadow: 0 18px 44px rgba(0,0,0,.28);
    transform: translateY(-2px);
}

.home-hero-search button {
    background: linear-gradient(135deg, var(--joy-orange), var(--accent-light));
}

.home-hero-search button:hover {
    background: linear-gradient(135deg, var(--accent-dark), var(--joy-orange));
}

.home-primary-action:hover,
.home-secondary-action:hover {
    transform: translateY(-2px);
}

.home-secondary-action:hover {
    background: rgba(255,255,255,.2);
    color: #fff;
}

.home-isaco-card {
    animation: joy-float 6s ease-in-out infinite;
    position: relative;
    background: rgba(255,255,255,.13);
    border-color: rgba(255,255,255,.26);
    box-shadow: 0 18px 40px rgba(0,0,0,.22), 0 0 0 1px rgba(255,255,255,.06) inset;
}

.home-isaco-card::before {
    content: '';
    position: absolute;
    top: 0;
    right: 22%;
    left: 22%;
    height: 3px;
    border-radius: 0 0 4px 4px;
    background: linear-gradient(90deg, var(--joy-orange), var(--joy-teal));
}

@keyframes joy-float {
    0%, 100% { transform: translateY(0); }
    50%      { transform: translateY(-9px); }
}

/* ---------- تیتر بخش‌ها: خط زیرین رنگین‌کمانی ---------- */

.section-title::after {
    width: 62px;
    height: 3px;
    background: linear-gradient(90deg, var(--joy-orange), var(--primary-light));
}

.home-page .section-link:hover {
    transform: translateX(-3px);
}

/* ---------- چیپ‌های دسترسی سریع: هرکدام یک رنگ ---------- */

.home-mobile-shortcuts a {
    transition: var(--transition);
}

.home-mobile-shortcuts a:nth-child(1) { --chip: var(--joy-orange); }
.home-mobile-shortcuts a:nth-child(2) { --chip: var(--joy-teal); }
.home-mobile-shortcuts a:nth-child(3) { --chip: var(--joy-violet); }
.home-mobile-shortcuts a:nth-child(4) { --chip: var(--joy-pink); }

.home-mobile-shortcuts i {
    color: var(--chip, var(--primary));
    transition: var(--transition);
}

.home-mobile-shortcuts a:hover {
    background: var(--chip, var(--primary));
    border-color: var(--chip, var(--primary));
    color: #fff;
    transform: translateY(-2px);
}

.home-mobile-shortcuts a:hover i {
    color: #fff;
}

/* ---------- نوار مزیت‌ها: آیکون رنگی داخل حباب ---------- */

.home-trust-strip div {
    position: relative;
    overflow: hidden;
    transition: var(--transition);
}

.home-trust-strip div::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 3px;
    background: var(--chip, var(--primary));
    transform: scaleX(0);
    transform-origin: right;
    transition: transform .35s ease;
}

.home-trust-strip div:hover::before {
    transform: scaleX(1);
}

.home-trust-strip div:hover {
    transform: translateY(-3px);
    box-shadow: var(--shadow-md);
}

.home-trust-strip div:nth-child(1) { --chip: var(--joy-orange); }
.home-trust-strip div:nth-child(2) { --chip: var(--joy-green); }
.home-trust-strip div:nth-child(3) { --chip: var(--joy-violet); }
.home-trust-strip div:nth-child(4) { --chip: var(--joy-teal); }

.home-trust-strip i {
    color: var(--chip, var(--primary));
    width: 34px;
    height: 34px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--primary-lighter);
    background: color-mix(in srgb, var(--chip, var(--primary)) 12%, #fff);
}

/* ---------- دسته‌بندی‌ها: هر کارت رنگ خودش ---------- */

.home-category-grid a {
    position: relative;
    overflow: hidden;
    transition: var(--transition);
}

.home-category-grid a:nth-child(1) { --chip: var(--joy-orange); }
.home-category-grid a:nth-child(2) { --chip: var(--joy-sky); }
.home-category-grid a:nth-child(3) { --chip: var(--joy-violet); }
.home-category-grid a:nth-child(4) { --chip: var(--joy-green); }

.home-category-grid a::after {
    content: '';
    position: absolute;
    top: -46px;
    left: -46px;
    width: 96px;
    height: 96px;
    border-radius: 50%;
    background: var(--chip, var(--primary));
    opacity: .09;
    transition: transform .4s ease;
}

.home-category-grid a:hover::after {
    transform: scale(1.55);
}

.home-category-grid a:hover {
    transform: translateY(-4px);
    border-color: var(--chip, var(--primary));
    box-shadow: var(--shadow-md);
}

.home-category-grid i {
    color: var(--chip, var(--primary));
    width: 42px;
    height: 42px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--primary-lighter);
    background: color-mix(in srgb, var(--chip, var(--primary)) 12%, #fff);
    position: relative;
    z-index: 1;
}

.home-category-grid a:hover i {
    background: var(--chip, var(--primary));
    color: #fff;
}

/* ---------- خودروها: هاور رنگی چرخشی ---------- */

.home-car-card {
    transition: var(--transition);
}

.home-car-card:nth-child(5n+1) { --chip: var(--joy-orange); }
.home-car-card:nth-child(5n+2) { --chip: var(--joy-teal); }
.home-car-card:nth-child(5n+3) { --chip: var(--joy-violet); }
.home-car-card:nth-child(5n+4) { --chip: var(--joy-sky); }
.home-car-card:nth-child(5n+5) { --chip: var(--joy-pink); }

.home-car-card:hover {
    transform: translateY(-5px);
    border-color: var(--chip, var(--primary));
    box-shadow: 0 10px 26px color-mix(in srgb, var(--chip, var(--primary)) 22%, transparent);
}

.home-car-card img {
    transition: transform .35s ease;
    background: var(--primary-lighter);
    background: color-mix(in srgb, var(--chip, var(--primary)) 9%, #fff);
}

.home-car-card:hover img {
    transform: scale(1.07);
}

.home-car-card:hover strong {
    color: var(--chip, var(--primary));
}

.home-car-icon {
    background: color-mix(in srgb, var(--chip, var(--primary)) 12%, #fff);
    color: var(--chip, var(--primary));
}

/* ---------- کارت محصول: کمی جان ---------- */

.custom-product-slider .custom-card {
    transition: var(--transition);
}

.custom-product-slider .custom-card:hover {
    border-color: var(--primary-light);
    box-shadow: 0 12px 28px rgba(0,69,124,.16);
}

.custom-product-slider .slider-pic {
    transition: transform .35s ease;
}

.custom-product-slider .custom-card:hover .slider-pic {
    transform: scale(1.06);
}

.product-thumb {
    overflow: hidden;
    border-radius: var(--radius-sm);
}

/* گودی تصویر با ته‌رنگ ملایم آبی تا کارت‌ها تخت به‌نظر نرسند */
.custom-product-slider .product-thumb {
    margin: 10px 10px 4px;
    padding: 10px;
    background: linear-gradient(160deg, #f4f8fc, #eef4fa);
}

/* نوار رنگی نازک بالای جعبه‌ی هر اسلایدر */
.home-page .product-slider {
    position: relative;
    overflow: hidden;
    background: linear-gradient(180deg, #fff 0%, #fbfdff 100%);
}

.home-page .product-slider::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--joy-orange), var(--primary-light), var(--joy-teal));
}

.product-price {
    color: var(--primary);
}

.product-discount-badge {
    background: linear-gradient(135deg, var(--joy-pink), var(--joy-orange));
    box-shadow: 0 4px 10px rgba(229,57,126,.3);
}

.custom-product-slider .add-cart-btn {
    background: linear-gradient(135deg, var(--primary), var(--primary-light));
}

.custom-product-slider .add-cart-btn:hover {
    background: linear-gradient(135deg, var(--joy-orange), var(--accent-light));
    box-shadow: 0 8px 18px rgba(245,124,0,.32);
}

/* ---------- پنل راهنمایی: پس‌زمینه‌ی زنده ---------- */

.home-help-panel {
    position: relative;
    overflow: hidden;
    background: linear-gradient(120deg, var(--primary-dark) 0%, var(--primary) 45%, #0d6c93 100%);
}

.home-help-panel::before {
    content: '';
    position: absolute;
    top: -80px;
    left: -40px;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(245,124,0,.55), transparent 70%);
    filter: blur(30px);
    animation: joy-drift 12s ease-in-out infinite;
}

.home-help-panel > *,
.home-help-panel > a {
    position: relative;
    z-index: 1;
}

.home-help-panel a {
    background: linear-gradient(135deg, var(--joy-orange), var(--accent-light));
    box-shadow: 0 8px 20px rgba(245,124,0,.34);
    transition: var(--transition);
}

.home-help-panel a:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 26px rgba(245,124,0,.45);
    color: #fff;
}

/* ---------- لینک‌های کلیدواژه: چیپ‌های چندرنگ ---------- */

.home-keyword-links a {
    transition: var(--transition);
}

.home-keyword-links a:nth-child(5n+1) { --chip: var(--joy-orange); }
.home-keyword-links a:nth-child(5n+2) { --chip: var(--joy-teal); }
.home-keyword-links a:nth-child(5n+3) { --chip: var(--joy-violet); }
.home-keyword-links a:nth-child(5n+4) { --chip: var(--joy-sky); }
.home-keyword-links a:nth-child(5n+5) { --chip: var(--joy-pink); }

.home-keyword-links a {
    background: color-mix(in srgb, var(--chip, var(--primary)) 10%, #fff);
    color: color-mix(in srgb, var(--chip, var(--primary)) 78%, #000);
}

.home-keyword-links a:hover {
    background: var(--chip, var(--primary));
    color: #fff;
    transform: translateY(-2px);
}

/* ---------- کارت‌های مجله: نوار رنگی بالای کارت ---------- */

.home-page .blog-card-new {
    position: relative;
    overflow: hidden;
    transition: var(--transition);
}

.home-page .blog-card-new::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 4px;
    z-index: 2;
    background: var(--chip, var(--primary));
}

.home-page .col-6:nth-child(4n+1) .blog-card-new { --chip: var(--joy-orange); }
.home-page .col-6:nth-child(4n+2) .blog-card-new { --chip: var(--joy-sky); }
.home-page .col-6:nth-child(4n+3) .blog-card-new { --chip: var(--joy-green); }
.home-page .col-6:nth-child(4n+4) .blog-card-new { --chip: var(--joy-violet); }

.home-page .blog-card-new:hover {
    transform: translateY(-5px);
    border-color: var(--chip, var(--primary));
    box-shadow: 0 12px 26px color-mix(in srgb, var(--chip, var(--primary)) 20%, transparent);
}

.home-page .blog-card-new:hover h3 {
    color: var(--chip, var(--primary));
}

/* ---------- فوتر: آیکون‌های رنگی ---------- */

.footer-features {
    position: relative;
}

.footer-features::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--joy-orange), var(--joy-pink), var(--joy-violet), var(--joy-sky), var(--joy-teal));
}

.footer-feature-item {
    transition: var(--transition);
}

.footer-feature-item:hover {
    transform: translateY(-3px);
}

.footer-features .row > div:nth-child(1) .footer-feature-item { --chip: var(--joy-orange); }
.footer-features .row > div:nth-child(2) .footer-feature-item { --chip: var(--joy-green); }
.footer-features .row > div:nth-child(3) .footer-feature-item { --chip: var(--joy-violet); }

.footer-feature-icon {
    background: color-mix(in srgb, var(--chip, var(--primary)) 12%, #fff);
    transition: var(--transition);
}

.footer-feature-icon i {
    color: var(--chip, var(--primary));
}

.footer-feature-item:hover .footer-feature-icon {
    background: var(--chip, var(--primary));
}

.footer-feature-item:hover .footer-feature-icon i {
    color: #fff;
}

.footer-social-btn:nth-child(1):hover {
    background: var(--joy-green);
    border-color: var(--joy-green);
    box-shadow: 0 4px 15px rgba(46,168,79,.4);
}

/* ---------- ظاهر شدن نرم بخش‌ها هنگام اسکرول ----------
   کلاس روی <body> فقط با جاوااسکریپت اضافه می‌شود،
   پس اگر جاوااسکریپت اجرا نشد همه‌چیز عادی دیده می‌شود. */

body.joy-reveal .home-section,
body.joy-reveal .home-trust-strip,
body.joy-reveal .home-mobile-shortcuts {
    opacity: 0;
    transform: translateY(18px);
    transition: opacity .55s ease, transform .55s ease;
}

body.joy-reveal .is-revealed {
    opacity: 1;
    transform: none;
}

/* ---------- کارت محصول در فروشگاه ---------- */

.shop-card {
    padding-top: 0;
    display: flex;
    flex-direction: column;
    border: 1px solid var(--border-color);
    background: var(--bg-white);
    transition: var(--transition);
}

.shop-card:hover {
    border-color: var(--primary-light);
    box-shadow: 0 12px 28px rgba(0,69,124,.16);
}

.shop-card .product-thumb {
    margin: 10px 10px 4px;
    padding: 10px;
    background: linear-gradient(160deg, #f4f8fc, #eef4fa);
    overflow: hidden;
    border-radius: var(--radius-sm);
}

.shop-card .slider-pic {
    width: 100% !important;
    height: 158px;
    object-fit: contain;
    margin: 0;
    transition: transform .35s ease;
}

.shop-card:hover .slider-pic {
    transform: scale(1.06);
}

.shop-card .slider-pic.is-placeholder {
    padding: 26px;
    opacity: .4;
}

.shop-card .heart-icon {
    position: absolute;
    top: 16px;
    left: 16px;
    z-index: 3;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: rgba(255,255,255,.92);
    box-shadow: var(--shadow-sm);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.shop-card .favorite-icon {
    font-size: .95rem;
    color: var(--joy-pink);
}

.shop-card .product-title {
    font-size: .85rem;
    line-height: 1.85;
    height: 3.7em;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    text-align: right;
    margin-bottom: 6px;
}

/* کد فنی و خودرو مناسب — مهم‌ترین چیزی که خریدار قطعه دنبالش است */
.product-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-bottom: 10px;
    min-height: 24px;
}

.product-sku,
.product-car {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: .7rem;
    padding: 3px 7px;
    border-radius: 5px;
    line-height: 1.6;
    direction: rtl;
}

.product-sku {
    background: var(--primary-lighter);
    color: var(--primary);
    font-family: monospace;
    letter-spacing: .2px;
}

/* کد فنی باید با ارقام لاتین و چپ‌به‌راست دیده شود تا با کد روی خود قطعه
   قابل مقایسه باشد. فونت صریح لازم است چون قانون سراسری `*` فونت فارسی‌رقم
   را مستقیم روی همین المان می‌نشاند و ارث‌بری را کنار می‌زند. */
.product-sku bdi,
bdi.sku-code {
    direction: ltr;
    unicode-bidi: isolate;
    font-family: "Consolas", "Courier New", monospace;
}

.product-car {
    background: #fff3e0;
    color: var(--accent-dark);
}

.shop-card .product-price-row {
    margin: auto 0 12px;
    min-height: 46px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1px;
}

.shop-card .add-cart-btn {
    margin: 0;
    padding: 10px 5px;
    font-size: .85rem;
    background: linear-gradient(135deg, var(--primary), var(--primary-light));
}

.shop-card .add-cart-btn:hover {
    background: linear-gradient(135deg, var(--joy-orange), var(--accent-light));
    box-shadow: 0 8px 18px rgba(245,124,0,.32);
}

@media (max-width: 767px) {
    .shop-card .slider-pic {
        height: 118px;
    }

    .shop-card .add-cart-btn {
        font-size: .76rem;
        padding: 9px 4px;
    }

    .product-car {
        display: none;
    }
}

/* ---------- حالت «نتیجه‌ای پیدا نشد» ---------- */

.search-empty {
    background: var(--bg-white);
    border: 1px solid var(--border-color);
    border-radius: var(--radius);
    box-shadow: var(--shadow-sm);
    padding: 34px 20px;
}

.search-empty-icon {
    width: 84px;
    height: 84px;
    margin: 0 auto 16px;
    border-radius: 50%;
    background: var(--primary-lighter);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    color: var(--primary);
    opacity: .75;
}

.search-empty h5 {
    font-weight: 700;
    font-size: 1.05rem;
    margin-bottom: 8px;
}

.search-empty > p {
    color: var(--text-light);
    font-size: .86rem;
    margin-bottom: 16px;
}

.search-empty-tips {
    list-style: none;
    padding: 0;
    max-width: 430px;
    margin: 0 auto 20px;
    text-align: right;
}

.search-empty-tips li {
    display: flex;
    align-items: center;
    gap: 9px;
    font-size: .82rem;
    color: var(--text-gray);
    padding: 9px 12px;
    margin-bottom: 7px;
    background: var(--bg-body);
    border-radius: var(--radius-sm);
    line-height: 1.9;
}

.search-empty-tips i {
    color: var(--joy-orange);
    width: 18px;
    text-align: center;
}

.search-empty-actions {
    display: flex;
    gap: 10px;
    justify-content: center;
    flex-wrap: wrap;
}

.search-empty-actions .btn {
    font-size: .85rem;
    padding: 10px 18px;
    border-radius: var(--radius-sm);
    background: linear-gradient(135deg, var(--primary), var(--primary-light));
    color: #fff;
}

.search-empty-actions .btn-outline {
    background: none;
    border: 1px solid var(--border-color);
    color: var(--text-dark);
}

/* ---------- لوگو ---------- */

.site-logo {
    display: inline-block;
    background: #fff;
    border-radius: 8px;
    padding: 5px 12px;
    line-height: 0;
}

.site-logo img {
    height: 50px;
    width: auto;
    display: block;
}

.site-logo-mobile {
    padding: 4px 8px;
}

.site-logo-mobile img {
    height: 30px;
}

/* ---------- جستجوی موبایل: همیشه دیده می‌شود ---------- */

/* نوار جستجوی چسبان موبایل.

   جعبه‌ی جستجو داخل هدر بود و با اولین اسکرول از صفحه بیرون می‌رفت؛ روی
   موبایل یعنی دقیقا وقتی کاربر وسط فهرست محصولات به این نتیجه می‌رسید که
   باید چیزی را جستجو کند، راهی به جعبه‌ی جستجو نداشت. حالا نوار به بالای
   صفحه می‌چسبد و همیشه یک ضربه فاصله دارد.

   z-index زیر ۱۰۴۵ می‌ماند تا آفکنواس‌های بوت‌استرپ (منو، سبد، شیت جستجو)
   همچنان روی آن بیایند. */
.mobile-search-bar {
    position: sticky;
    top: 0;
    z-index: 1035;
    padding: 8px 0;
    background: #fff;
    border-bottom: 1px solid #e6e8ec;
    box-shadow: 0 2px 8px rgba(15, 23, 42, .05);
}

/* یک قاب، سه آیتمِ کنار هم: ذره‌بین، فیلد، دکمه.

   نسخه‌های قبلی دکمه را با position:absolute روی فیلد می‌نشاندند و جایش را
   با یک padding دستی روی input باز می‌کردند. آن عدد به عرضِ متنِ دکمه بند
   بود و عرضِ متن به فونت؛ روی گوشی واقعی — فونت جانشین، صفحه‌ی باریک‌تر —
   دکمه از قاب می‌زد بیرون و متن جای دیگری می‌افتاد.

   حالا هیچ عدد جادویی‌ای در کار نیست: قاب flex است، ذره‌بین و دکمه اندازه‌ی
   خودشان را می‌گیرند و فیلد باقی‌مانده را. همان الگوی .app-sheet__search در
   شیت جستجوی موبایل، تا دو جعبه‌ی جستجوی سایت یک شکل باشند. */
.mobile-search {
    position: relative;
    display: none;
    align-items: center;
    gap: 8px;
    height: 46px;
    /* ذره‌بین سمتِ شروع (راست) نفس بکشد، دکمه سمتِ پایان (چپ) بچسبد به لبه */
    padding-inline-start: 12px;
    padding-inline-end: 5px;
    border-radius: 12px;
    border: 1px solid transparent;
    background: #f0f0f1;
    transition: border-color .15s, background-color .15s;
}

/* حلقه‌ی فوکوس روی کلِ قاب می‌نشیند نه روی فیلد؛ وگرنه با فوکوسِ فیلد، یک
   کادر تو در توی دیگر وسط قاب ظاهر می‌شد. */
.mobile-search:focus-within {
    background: #fff;
    border-color: var(--joy-orange, #d33449);
}

.mobile-search__icon {
    flex: 0 0 auto;
    color: #9a9ea6;
    font-size: 14px;
}

.mobile-search input {
    /* min-width: 0 لازم است وگرنه آیتم flex زیر عرضِ محتوایش کوچک نمی‌شود
       و روی گوشی باریک، دکمه را از قاب بیرون می‌راند. */
    flex: 1 1 auto;
    min-width: 0;
    height: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--text-dark, #23254e);
    font-size: .85rem;
    outline: none;
    box-shadow: none;
}

.mobile-search input::placeholder {
    color: #9a9ea6;
}

/* دکمه برچسب متنی دارد نه فقط ذره‌بین: روی زمینه‌ی روشنِ هدر، آیکون تنها
   بیشتر شبیه تزیین دیده می‌شد تا دکمه‌ای که باید زد. */
.mobile-search button {
    flex: 0 0 auto;
    height: 36px;
    padding: 0 16px;
    border: 0;
    border-radius: 9px;
    background: linear-gradient(135deg, var(--joy-orange), var(--accent-light));
    color: #fff;
    font-size: .8rem;
    font-weight: 700;
    white-space: nowrap;
}

@media (max-width: 991px) {
    .mobile-search {
        display: flex;
    }
}

/* ---------- متن معرفی انتهای صفحه: آرام و کم‌حجم ---------- */

.home-seo-title {
    font-size: .95rem;
    font-weight: 700;
    color: var(--text-gray);
    margin: 0 0 10px;
}

.home-seo-hub .home-seo-copy {
    background: transparent;
    border: 0;
    box-shadow: none;
    padding: 0;
}

.home-seo-hub .home-seo-copy p {
    font-size: .84rem;
    line-height: 2.1;
    color: var(--text-light);
}

/* ---------- دکمه‌ی بازگشت به بالا ---------- */

.topbutton {
    background: linear-gradient(135deg, var(--joy-orange), var(--accent-light));
    box-shadow: 0 8px 20px rgba(245,124,0,.36);
}

@media (prefers-reduced-motion: reduce) {
    .home-hero::before,
    .home-hero::after,
    .home-isaco-card,
    .home-kicker i,
    .home-help-panel::before {
        animation: none;
    }

    body.joy-reveal .home-section,
    body.joy-reveal .home-trust-strip,
    body.joy-reveal .home-mobile-shortcuts {
        opacity: 1;
        transform: none;
        transition: none;
    }
}
/* ===== home ads, special offers and richer product cards ===== */
.product-image-strip {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.product-image-strip::-webkit-scrollbar {
    display: none;
}

.product-image-strip .slider-pic {
    flex: 0 0 100%;
    scroll-snap-align: center;
}

.product-card-meta {
    min-height: 76px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    color: var(--text-light);
    font-size: .74rem;
    line-height: 1.7;
}

.product-card-meta span {
    display: flex;
    align-items: center;
    gap: 5px;
    min-width: 0;
}

.product-card-meta p {
    margin: 0;
    color: var(--text-gray);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.home-ad-slider {
    margin-top: 18px;
}

.home-ad-slide {
    display: block;
    aspect-ratio: 5 / 1.35;
    overflow: hidden;
    border-radius: 8px;
    background: #eef4fa;
}

.home-ad-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.home-special-offers .section-title {
    color: var(--accent-dark);
}

@media (max-width: 575px) {
    .home-ad-slide {
        aspect-ratio: 2 / 1;
    }

    .product-card-meta {
        min-height: 64px;
        font-size: .7rem;
    }
}

/* ===== urgent home product card correction ===== */
.home-page .product-slider {
    padding: 14px 12px 18px;
}

.custom-product-slider .owl-stage {
    display: flex;
    align-items: stretch;
}

.custom-product-slider .owl-item,
.custom-product-slider .item {
    display: flex;
    height: auto !important;
}

.custom-product-slider .custom-card {
    width: 100%;
    height: auto !important;
    min-height: 390px;
    max-height: 430px;
    overflow: hidden;
}

.custom-product-slider .product-thumb {
    height: 132px;
    margin: 8px 8px 6px;
    padding: 8px;
    background: #f5f9fc;
    border-radius: 8px;
}

.custom-product-slider .slider-pic {
    height: 112px !important;
    object-fit: contain;
}

.custom-product-slider .product-card-body {
    padding: 0 12px 12px;
    gap: 6px;
}

.custom-product-slider .product-title {
    height: 3.4em;
    margin: 0;
    font-size: .82rem;
    line-height: 1.7;
}

.custom-product-slider .product-card-meta {
    min-height: 68px;
    max-height: 74px;
    overflow: hidden;
}

.custom-product-slider .product-price-row {
    margin: 4px 0 8px !important;
    min-height: 42px;
}

.custom-product-slider .add-cart-btn {
    margin-top: auto;
    min-height: 38px;
}

.home-ad-empty,
.home-ad-promo {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 8px;
    padding: 26px 34px;
    color: #fff;
    text-decoration: none;
    background: linear-gradient(135deg, #005f73, #0a9396 48%, #ee9b00);
}

.home-ad-empty strong,
.home-ad-promo strong {
    color: #fff;
    font-size: 1.35rem;
    font-weight: 800;
}

.home-ad-empty span,
.home-ad-promo span {
    color: rgba(255,255,255,.88);
    font-size: .92rem;
}

.home-ad-promo {
    background: linear-gradient(135deg, #003566, #006d77 52%, #f77f00);
}

@media (max-width: 575px) {
    .custom-product-slider .custom-card {
        min-height: 360px;
        max-height: 390px;
    }

    .custom-product-slider .product-thumb {
        height: 116px;
    }

    .custom-product-slider .slider-pic {
        height: 96px !important;
    }
}

/* ===== hero compact ad beside Isaco card ===== */
.home-polished .home-hero-grid {
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr);
}

.home-top-showcase {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    align-items: stretch;
}

.home-top-showcase .home-isaco-card,
.home-top-showcase .home-hero-ad-slider {
    min-height: 170px;
    height: 100%;
    margin: 0;
}

.home-top-showcase .home-isaco-card {
    padding: 14px;
}

.home-top-showcase .home-isaco-logo {
    width: min(100%, 210px);
    max-height: 92px;
    padding: 6px;
}

.home-top-showcase .isaco-card-copy strong {
    font-size: .9rem;
}

.home-top-showcase .isaco-card-copy span {
    font-size: .74rem;
}

.home-hero-ad-slider .owl-stage-outer,
.home-hero-ad-slider .owl-stage,
.home-hero-ad-slider .owl-item,
.home-hero-ad-slider .home-ad-slide {
    height: 100%;
}

.home-hero-ad-slider .home-ad-slide {
    aspect-ratio: auto;
    min-height: 170px;
    border: 1px solid #e7edf3;
    box-shadow: 0 12px 30px rgba(15,23,42,.06);
}

.home-hero-ad-slider .home-ad-empty,
.home-hero-ad-slider .home-ad-promo {
    padding: 18px;
    text-align: right;
}

.home-hero-ad-slider .home-ad-empty strong,
.home-hero-ad-slider .home-ad-promo strong {
    font-size: 1rem;
}

.home-hero-ad-slider .home-ad-empty span,
.home-hero-ad-slider .home-ad-promo span {
    font-size: .76rem;
    line-height: 1.8;
}

@media (max-width: 991px) {
    .home-polished .home-hero-grid,
    .home-top-showcase {
        grid-template-columns: 1fr;
    }

    .home-top-showcase .home-isaco-card,
    .home-top-showcase .home-hero-ad-slider,
    .home-hero-ad-slider .home-ad-slide {
        min-height: 140px;
    }
}

/* ===== refined neutral auto-parts palette ===== */
:root {
    --primary-dark: #0b1f33;
    --primary: #12395a;
    --primary-light: #1f6f78;
    --primary-lighter: #eef5f6;
    --accent: #2f8f83;
    --accent-light: #48a79b;
    --accent-dark: #1f6f66;
    --joy-orange: #d89a2b;
    --joy-teal: #2f8f83;
    --joy-violet: #52677a;
    --joy-pink: #b85c5c;
    --joy-sky: #3b7f9f;
    --joy-green: #4d8f62;
}

.header-top-bar,
.site-header,
.footer-main {
    background: #0b1f33 !important;
}

.header-main {
    background: #12395a !important;
}

.search-box-header button,
.btn-primary,
.add-cart-btn,
.custom-product-slider .add-cart-btn {
    background: #1f6f78 !important;
    border-color: #1f6f78 !important;
    box-shadow: none !important;
}

.search-box-header button:hover,
.btn-primary:hover,
.add-cart-btn:hover,
.custom-product-slider .add-cart-btn:hover {
    background: #2f8f83 !important;
    border-color: #2f8f83 !important;
}

.home-hero {
    background: linear-gradient(135deg, #0b1f33 0%, #12395a 58%, #1f6f78 100%) !important;
    border-bottom: 3px solid #2f8f83;
}

.home-hero::after,
.home-help-panel::before,
.home-isaco-card::before {
    display: none !important;
}

.home-hero::before {
    opacity: .18 !important;
}

.home-hero .container::after,
.home-page .product-slider::before {
    background: linear-gradient(90deg, #2f8f83, #d89a2b) !important;
}

.hero-highlight,
.home-kicker i,
.home-hero-actions i,
.section-title i,
.home-mobile-shortcuts i {
    color: #d89a2b !important;
}

.home-primary-action {
    background: #ffffff !important;
    color: #12395a !important;
}

.home-secondary-action {
    background: rgba(255,255,255,.12) !important;
    border-color: rgba(255,255,255,.24) !important;
    color: #ffffff !important;
}

.product-discount-badge {
    background: #b85c5c !important;
    box-shadow: none !important;
}

.home-ad-empty,
.home-ad-promo {
    background: linear-gradient(135deg, #12395a 0%, #1f6f78 62%, #2f8f83 100%) !important;
}

.home-ad-carousel:not(.owl-loaded) {
    display: block;
    overflow: hidden;
}

.home-ad-carousel:not(.owl-loaded) .home-ad-slide {
    display: none;
}

.home-ad-carousel:not(.owl-loaded) .home-ad-slide:first-child {
    display: flex;
}

.home-top-showcase {
    max-width: 620px;
    margin-inline-start: auto;
}

.home-hero-ad-slider {
    overflow: hidden;
    border-radius: 8px;
}

.home-hero-ad-slider .home-ad-slide {
    max-width: 100%;
}

/* ===== client requested: larger hero ad + cleaner navy/steel/red palette ===== */
:root {
    --primary-dark: #071827;
    --primary: #102a43;
    --primary-light: #31556f;
    --primary-lighter: #f2f5f7;
    --accent: #c7352f;
    --accent-light: #d94a44;
    --accent-dark: #9f2622;
    --joy-orange: #c7352f;
    --joy-teal: #31556f;
    --joy-violet: #64748b;
    --joy-pink: #c7352f;
    --joy-sky: #48677f;
    --joy-green: #4b6578;
}

body {
    background: #eef2f5 !important;
}

.header-top-bar,
.site-header,
.footer-main {
    background: #071827 !important;
}

.header-main,
.footer-bottom {
    background: #102a43 !important;
}

.home-hero {
    background: linear-gradient(135deg, #071827 0%, #102a43 58%, #243f57 100%) !important;
    border-bottom: 3px solid #c7352f !important;
}

.home-hero .container::after,
.home-page .product-slider::before {
    background: #c7352f !important;
}

.home-polished .home-hero-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 22px !important;
}

.home-top-showcase {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    display: grid !important;
    grid-template-columns: 128px minmax(0, 1fr) !important;
    gap: 12px !important;
    align-items: stretch !important;
}

.home-top-showcase .home-isaco-card {
    min-height: 220px !important;
    padding: 10px !important;
}

.home-top-showcase .home-isaco-logo {
    width: 106px !important;
    max-height: 68px !important;
    box-shadow: none !important;
}

.home-top-showcase .isaco-card-copy strong {
    font-size: .78rem !important;
    line-height: 1.7 !important;
}

.home-top-showcase .isaco-card-copy span {
    display: none !important;
}

.home-hero-ad-slider,
.home-hero-ad-slider .owl-stage-outer,
.home-hero-ad-slider .owl-stage,
.home-hero-ad-slider .owl-item,
.home-hero-ad-slider .home-ad-slide {
    min-height: 220px !important;
    height: 220px !important;
}

.home-hero-ad-slider .home-ad-slide {
    border: 1px solid rgba(255,255,255,.32) !important;
    border-radius: 8px !important;
    box-shadow: 0 18px 34px rgba(0,0,0,.22) !important;
}

.home-ad-empty,
.home-ad-promo {
    background: linear-gradient(135deg, #102a43 0%, #31556f 72%, #c7352f 100%) !important;
}

.home-hero-ad-slider .home-ad-empty,
.home-hero-ad-slider .home-ad-promo {
    padding: 28px !important;
}

.home-hero-ad-slider .home-ad-empty strong,
.home-hero-ad-slider .home-ad-promo strong {
    font-size: 1.35rem !important;
    line-height: 1.7 !important;
}

.home-hero-ad-slider .home-ad-empty span,
.home-hero-ad-slider .home-ad-promo span {
    font-size: .9rem !important;
    line-height: 2 !important;
}

.hero-highlight,
.home-kicker i,
.home-hero-actions i,
.section-title i,
.home-mobile-shortcuts i {
    color: #c7352f !important;
}

.search-box-header button,
.btn-primary,
.add-cart-btn,
.custom-product-slider .add-cart-btn,
.home-help-panel a {
    background: #c7352f !important;
    border-color: #c7352f !important;
    box-shadow: none !important;
}

.search-box-header button:hover,
.btn-primary:hover,
.add-cart-btn:hover,
.custom-product-slider .add-cart-btn:hover,
.home-help-panel a:hover {
    background: #9f2622 !important;
    border-color: #9f2622 !important;
}

.home-help-panel {
    background: #102a43 !important;
}

.product-price,
.section-title,
.home-car-card:hover strong {
    color: #102a43 !important;
}

.product-discount-badge {
    background: #c7352f !important;
}

@media (max-width: 991px) {
    .home-polished .home-hero-grid {
        grid-template-columns: 1fr !important;
    }

    .home-top-showcase {
        grid-template-columns: 1fr !important;
    }

    .home-top-showcase .home-isaco-card {
        min-height: 110px !important;
    }

    .home-hero-ad-slider,
    .home-hero-ad-slider .owl-stage-outer,
    .home-hero-ad-slider .owl-stage,
    .home-hero-ad-slider .owl-item,
    .home-hero-ad-slider .home-ad-slide {
        min-height: 170px !important;
        height: 170px !important;
    }
}

/* ===== final cheerful trustworthy palette + split hero sections ===== */
:root {
    --primary-dark: #06283d;
    --primary: #1363df;
    --primary-light: #47b5ff;
    --primary-lighter: #eaf6ff;
    --accent: #007f73;
    --accent-light: #36cfc0;
    --accent-dark: #00655c;
    --joy-orange: #ffb703;
    --joy-teal: #007f73;
    --joy-violet: #6272d9;
    --joy-pink: #ef476f;
    --joy-sky: #47b5ff;
    --joy-green: #2bb673;
}

body { background: #edf6fb !important; }
.header-top-bar,
.site-header,
.footer-main { background: #06283d !important; }
.header-main,
.footer-bottom { background: #0b3551 !important; }

.home-hero {
    background:
        radial-gradient(700px 260px at 82% 8%, rgba(71,181,255,.24), transparent 65%),
        linear-gradient(135deg, #06283d 0%, #0b3551 54%, #1363df 100%) !important;
    border-bottom: 3px solid #007f73 !important;
}

.home-hero .container::after,
.home-page .product-slider::before {
    background: linear-gradient(90deg, #007f73, #47b5ff, #ffb703) !important;
}

.home-polished .home-hero-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 26px !important;
    align-items: center !important;
}

.home-hero-content,
.home-top-showcase {
    background: rgba(255,255,255,.08) !important;
    border: 1px solid rgba(255,255,255,.18) !important;
    border-radius: 10px !important;
    box-shadow: 0 18px 38px rgba(0,0,0,.18) !important;
}

.home-hero-content {
    padding: 28px !important;
}

.home-top-showcase {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

.home-trust-row {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 14px;
}

.home-isaco-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255,255,255,.94);
    color: #06283d;
    border-radius: 8px;
    padding: 5px 9px;
    font-size: .76rem;
    font-weight: 800;
}

.home-isaco-badge img {
    width: 54px;
    height: 30px;
    object-fit: contain;
}

.home-hero-ad-slider,
.home-hero-ad-slider .owl-stage-outer,
.home-hero-ad-slider .owl-stage,
.home-hero-ad-slider .owl-item,
.home-hero-ad-slider .home-ad-slide {
    min-height: 245px !important;
    height: 245px !important;
}

.home-hero-ad-slider .home-ad-slide {
    border: 0 !important;
    border-radius: 10px !important;
    box-shadow: none !important;
}

.home-ad-empty,
.home-ad-promo {
    background:
        radial-gradient(340px 180px at 14% 18%, rgba(255,183,3,.32), transparent 70%),
        linear-gradient(135deg, #1363df 0%, #007f73 100%) !important;
}

.home-hero-ad-slider .home-ad-empty,
.home-hero-ad-slider .home-ad-promo {
    padding: 34px !important;
}

.home-hero-ad-slider .home-ad-empty strong,
.home-hero-ad-slider .home-ad-promo strong {
    font-size: 1.55rem !important;
}

.home-hero-ad-slider .home-ad-empty span,
.home-hero-ad-slider .home-ad-promo span {
    font-size: .95rem !important;
}

.hero-highlight,
.home-kicker i,
.home-hero-actions i,
.section-title i,
.home-mobile-shortcuts i {
    color: #ffb703 !important;
}

.search-box-header button,
.btn-primary,
.add-cart-btn,
.custom-product-slider .add-cart-btn,
.home-help-panel a {
    background: #007f73 !important;
    border-color: #007f73 !important;
    box-shadow: none !important;
}

.search-box-header button:hover,
.btn-primary:hover,
.add-cart-btn:hover,
.custom-product-slider .add-cart-btn:hover,
.home-help-panel a:hover {
    background: #007f73 !important;
    border-color: #007f73 !important;
}

.product-discount-badge { background: #ef476f !important; }
.home-help-panel { background: linear-gradient(135deg, #1363df, #007f73) !important; }
.product-price,
.section-title { color: #06283d !important; }

.custom-product-slider .owl-stage { align-items: stretch !important; }
.custom-product-slider .custom-card {
    min-height: 355px !important;
    max-height: none !important;
    height: 100% !important;
}
.custom-product-slider .product-thumb {
    height: 128px !important;
    margin: 10px 10px 6px !important;
    padding: 8px !important;
}
.custom-product-slider .slider-pic { height: 108px !important; }
.custom-product-slider .product-card-meta {
    min-height: 50px !important;
    max-height: 58px !important;
}
.custom-product-slider .product-price-row {
    margin: 6px 0 10px !important;
    min-height: 38px !important;
}

@media (max-width: 991px) {
    .home-polished .home-hero-grid { grid-template-columns: 1fr !important; }
    .home-hero-content { padding: 20px !important; }
    .home-hero-ad-slider,
    .home-hero-ad-slider .owl-stage-outer,
    .home-hero-ad-slider .owl-stage,
    .home-hero-ad-slider .owl-item,
    .home-hero-ad-slider .home-ad-slide {
        min-height: 180px !important;
        height: 180px !important;
    }
}

/* Digikala-inspired home refresh */
:root {
    --dk-red: #d33449;
    --dk-red-dark: #d92f43;
    --dk-cyan: #11808d;
    --dk-green: #00a693;
    --dk-text: #23254e;
    --dk-muted: #6b6c85;
    --dk-line: #e0e0e6;
    --dk-bg: #f1f2f4;
}

body { background: var(--dk-bg) !important; color: var(--dk-text) !important; }
.header-top-bar { background: #fff !important; border-bottom: 1px solid var(--dk-line) !important; color: var(--dk-muted) !important; }
.header-main { background: #fff !important; box-shadow: 0 1px 0 rgba(35,37,78,.08) !important; }
.navbar-custom, .main-menu, .top-menu { background: #fff !important; }
.main-menu a, .top-menu a, .header-main a { color: var(--dk-text) !important; }
.main-menu a:hover, .top-menu a:hover { color: var(--dk-red) !important; }
.search-box-header input { background: #f0f0f1 !important; border-color: transparent !important; border-radius: 8px !important; color: var(--dk-text) !important; }
.search-box-header button, .btn-primary, .add-cart-btn, .custom-product-slider .add-cart-btn { background: var(--dk-red) !important; border-color: var(--dk-red) !important; border-radius: 8px !important; }
.search-box-header button:hover, .btn-primary:hover, .add-cart-btn:hover, .custom-product-slider .add-cart-btn:hover { background: var(--dk-red-dark) !important; border-color: var(--dk-red-dark) !important; }

.dk-home { background: var(--dk-bg); padding-bottom: 34px; }
.dk-home .container { max-width: 1320px; }
.dk-hero-wrap { background: #fff; padding: 14px 0 10px; border-bottom: 1px solid var(--dk-line); }
.dk-hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) 260px; gap: 16px; align-items: stretch; }
.dk-main-slider, .dk-main-slider .owl-stage-outer, .dk-main-slider .owl-stage, .dk-main-slider .owl-item, .dk-main-slide { min-height: 300px; height: 300px; }
.dk-main-slider { overflow: hidden; border-radius: 12px; background: #fff; }
.dk-main-slide { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding: 32px 46px; text-decoration: none; color: #fff !important; background: linear-gradient(135deg, #d33449 0%, #ff7a45 52%, #11808d 100%); position: relative; overflow: hidden; }
.dk-main-slide:after { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 15% 15%, rgba(255,255,255,.22), transparent 34%); pointer-events: none; }
.dk-main-slide img { width: 100%; height: 100%; object-fit: cover; display: block; }
.dk-main-slide span { position: relative; z-index: 1; font-size: .95rem; opacity: .95; margin-bottom: 10px; }
.dk-main-slide strong { position: relative; z-index: 1; font-size: 2rem; line-height: 1.65; font-weight: 900; }
.dk-main-slide small { position: relative; z-index: 1; max-width: 480px; font-size: 1rem; line-height: 2; margin-top: 8px; }
.dk-slide-alt { background: linear-gradient(135deg, #23254e 0%, #11808d 58%, #00a693 100%); }
.home-ad-carousel:not(.owl-loaded) .dk-main-slide { display: none; }
.home-ad-carousel:not(.owl-loaded) .dk-main-slide:first-child { display: flex; }
.dk-main-slider .owl-nav button { position: absolute; top: 50%; transform: translateY(-50%); width: 38px; height: 38px; border-radius: 50% !important; background: #fff !important; color: var(--dk-text) !important; box-shadow: 0 4px 14px rgba(35,37,78,.16); }
.dk-main-slider .owl-nav .owl-next { left: 16px; }
.dk-main-slider .owl-nav .owl-prev { right: 16px; }
.dk-main-slider .owl-dots { position: absolute; right: 28px; bottom: 12px; }
.dk-main-slider .owl-dot span { width: 7px !important; height: 7px !important; background: rgba(255,255,255,.72) !important; }
.dk-main-slider .owl-dot.active span { width: 20px !important; border-radius: 8px !important; background: #fff !important; }

.dk-hero-side { min-height: 300px; background: #fff; border: 1px solid var(--dk-line); border-radius: 12px; padding: 18px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: 10px; }
.dk-hero-side img { width: 130px; height: 64px; object-fit: contain; border: 1px solid #eef0f4; border-radius: 8px; padding: 8px; background: #fff; }
.dk-hero-side strong { color: var(--dk-text); font-size: 1rem; font-weight: 900; }
.dk-hero-side p { color: var(--dk-muted); font-size: .85rem; margin: 0; line-height: 1.9; }
.dk-hero-side a { display: inline-flex; align-items: center; justify-content: center; min-height: 38px; padding: 0 18px; border-radius: 8px; background: var(--dk-red); color: #fff !important; text-decoration: none; font-weight: 800; }

.dk-quick-icons { display: grid; grid-template-columns: repeat(6, 1fr); gap: 12px; padding: 18px 0 12px; }
.dk-quick-icons a { background: #fff; border: 1px solid var(--dk-line); border-radius: 12px; min-height: 78px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; text-decoration: none; color: var(--dk-text); transition: .2s ease; }
.dk-quick-icons a:hover { border-color: var(--dk-cyan); transform: translateY(-2px); box-shadow: 0 8px 22px rgba(35,37,78,.08); }
.dk-quick-icons i { width: 42px; height: 42px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: #f0f9fb; color: var(--dk-cyan); font-size: 1.1rem; }
.dk-quick-icons span { font-size: .86rem; font-weight: 800; }

.dk-amazing-section { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 14px; background: var(--dk-red); border-radius: 16px; padding: 18px; margin: 12px 0 18px; overflow: hidden; }
.dk-amazing-head { color: #fff; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 12px; min-height: 310px; }
.dk-amazing-head strong { font-size: 2rem; font-weight: 950; line-height: 1.4; }
.dk-amazing-head span { font-size: .98rem; line-height: 2; opacity: .95; }
.dk-amazing-head a { color: #fff !important; border: 1px solid rgba(255,255,255,.72); border-radius: 8px; padding: 8px 16px; text-decoration: none; font-weight: 800; }
.dk-amazing-slider .owl-stage { display: flex; align-items: stretch; }
.dk-amazing-slider .custom-card { border-color: #fff !important; box-shadow: none !important; }

.dk-product-section, .dk-car-section, .dk-blog-section { background: #fff; border: 1px solid var(--dk-line); border-radius: 12px; padding: 16px; margin: 16px 0; overflow: hidden; }
.dk-section-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-bottom: 12px; border-bottom: 1px solid var(--dk-line); margin-bottom: 14px; }
.dk-section-head h2 { margin: 0; color: var(--dk-text); font-size: 1.05rem; font-weight: 900; }
.dk-section-head a { color: var(--dk-cyan) !important; text-decoration: none; font-weight: 800; font-size: .88rem; }

.custom-product-slider .owl-stage { display: flex; align-items: stretch !important; }
.custom-product-slider .item { height: 100%; padding: 3px; }
.custom-product-slider .custom-card, .custom-card { height: 100% !important; min-height: 326px !important; max-height: none !important; border: 1px solid #edf0f5 !important; border-radius: 10px !important; background: #fff !important; box-shadow: none !important; transition: .18s ease; overflow: hidden; }
.custom-product-slider .custom-card:hover, .custom-card:hover { border-color: #d6d9e1 !important; box-shadow: 0 10px 24px rgba(35,37,78,.08) !important; transform: translateY(-2px); }
.product-thumb, .custom-product-slider .product-thumb { height: 126px !important; margin: 8px 8px 4px !important; padding: 8px !important; border-radius: 8px !important; background: #f7f8fa !important; display: flex !important; align-items: center; justify-content: center; gap: 4px; overflow: hidden; }
.product-image-strip img, .custom-product-slider .slider-pic { max-width: 100%; height: 108px !important; object-fit: contain !important; background: #fff; border-radius: 6px; }
.product-card-body { padding: 8px 12px 12px !important; display: flex; flex-direction: column; min-height: 186px; }
.product-title { min-height: 44px !important; max-height: 44px !important; overflow: hidden; color: var(--dk-text) !important; font-size: .9rem !important; font-weight: 800 !important; line-height: 1.8 !important; text-decoration: none !important; }
.product-card-meta { min-height: 42px !important; max-height: 50px !important; overflow: hidden; color: var(--dk-muted) !important; font-size: .76rem !important; line-height: 1.8 !important; }
.product-card-meta p { margin: 2px 0 0 !important; color: var(--dk-muted) !important; }
.product-price-row { margin-top: auto !important; min-height: 42px !important; display: flex; flex-direction: column; align-items: flex-end; justify-content: center; gap: 2px; }
.product-price { color: var(--dk-text) !important; font-size: 1rem !important; font-weight: 950 !important; }
.product-price small { color: var(--dk-muted); font-size: .72rem; font-weight: 700; }
.product-old-price { color: #a1a3b5 !important; font-size: .78rem !important; }
.product-discount-badge { position: absolute; top: 10px; right: 10px; z-index: 2; background: var(--dk-red) !important; color: #fff; min-width: 36px; height: 22px; border-radius: 12px; display: inline-flex; align-items: center; justify-content: center; font-weight: 900; font-size: .78rem; }
.add-cart-btn, .custom-product-slider .add-cart-btn { width: 100%; min-height: 36px; font-size: .82rem !important; font-weight: 900 !important; margin-top: 8px; }

.home-car-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; }
.home-car-card { background: #fff; border: 1px solid var(--dk-line); border-radius: 10px; padding: 12px; min-height: 132px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 7px; text-decoration: none; color: var(--dk-text); }
.home-car-card img { width: 105px; height: 58px; object-fit: cover; border-radius: 8px; background: #f6f7f9; }
.home-car-card strong { font-size: .9rem; font-weight: 900; }
.home-car-card span { font-size: .76rem; color: var(--dk-muted); }

.dk-help-strip { margin: 18px 0; border-radius: 12px; padding: 18px 22px; background: linear-gradient(135deg, #11808d, #00a693); color: #fff; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.dk-help-strip strong { display: block; font-size: 1.12rem; font-weight: 950; margin-bottom: 4px; }
.dk-help-strip span { font-size: .9rem; opacity: .95; }
.dk-help-strip a { color: var(--dk-text) !important; background: #fff; border-radius: 8px; min-height: 38px; padding: 0 18px; display: inline-flex; align-items: center; justify-content: center; text-decoration: none; font-weight: 900; white-space: nowrap; }

.blog-card-new { border: 1px solid var(--dk-line); border-radius: 10px; background: #fff; overflow: hidden; height: 100%; transition: .18s ease; }
.blog-card-new:hover { box-shadow: 0 10px 24px rgba(35,37,78,.08); transform: translateY(-2px); }
.blog-card-new img, .blog-card-fallback { width: 100%; height: 132px; object-fit: cover; background: #f6f7f9; display: flex; align-items: center; justify-content: center; color: var(--dk-cyan); font-size: 1.5rem; }
.blog-card-new h3 { color: var(--dk-text); font-size: .92rem; line-height: 1.8; font-weight: 900; min-height: 48px; margin: 0; }
.blog-card-new p { color: var(--dk-muted); font-size: .78rem; line-height: 1.8; margin: 6px 0 0; }

footer, .footer, .footer-main { background: #fff !important; color: var(--dk-text) !important; border-top: 1px solid var(--dk-line) !important; }
.footer-bottom { background: #f8f9fb !important; color: var(--dk-muted) !important; }
.footer a { color: var(--dk-text) !important; }
.footer a:hover { color: var(--dk-red) !important; }

@media (max-width: 991px) {
    .dk-hero-grid { grid-template-columns: 1fr; }
    .dk-main-slider, .dk-main-slider .owl-stage-outer, .dk-main-slider .owl-stage, .dk-main-slider .owl-item, .dk-main-slide { min-height: 210px; height: 210px; }
    .dk-main-slide { padding: 22px; }
    .dk-main-slide strong { font-size: 1.35rem; }
    .dk-hero-side { min-height: 160px; }
    .dk-quick-icons { grid-template-columns: repeat(3, 1fr); }
    .dk-amazing-section { grid-template-columns: 1fr; padding: 12px; }
    .dk-amazing-head { min-height: auto; align-items: center; text-align: center; padding: 8px 0; }
    .home-car-grid { grid-template-columns: repeat(2, 1fr); }
    .dk-help-strip { flex-direction: column; align-items: stretch; text-align: center; }
}

@media (max-width: 575px) {
    .dk-quick-icons { grid-template-columns: repeat(2, 1fr); }
    .dk-product-section, .dk-car-section, .dk-blog-section { padding: 12px; }
    .dk-section-head h2 { font-size: .95rem; }
    .custom-product-slider .custom-card, .custom-card { min-height: 318px !important; }
}

/* Final header/footer override for the marketplace-style palette */
.site-header,
.header-top-bar,
.header-main,
.navbar-custom,
.main-menu,
.top-menu {
    background: #fff !important;
    color: var(--dk-text) !important;
}
.footer,
.footer-main {
    background: #fff !important;
    color: var(--dk-text) !important;
}
.footer-bottom {
    background: #f8f9fb !important;
    color: var(--dk-muted) !important;
}

/* Marketplace pass: tighter Digikala-like header, footer, cards and product detail */
body { background: #f1f2f4 !important; }
.header-top-bar { height: 28px !important; font-size: 12px !important; border-bottom: 1px solid #f0f0f1 !important; }
.header-top-bar .container > div { justify-content: flex-end !important; color: #62666d !important; }
.site-header { border-bottom: 1px solid #f0f0f1 !important; box-shadow: none !important; }
.header-main { padding: 12px 0 !important; min-height: 72px !important; }
.site-logo img { max-height: 52px !important; object-fit: contain !important; }
.search-box-header { height: 44px !important; background: #f0f0f1 !important; border: 0 !important; border-radius: 8px !important; overflow: hidden; }
.search-box-header input { height: 44px !important; padding: 0 16px !important; font-size: 13px !important; background: transparent !important; }
.search-box-header button { height: 44px !important; min-width: 92px !important; border-radius: 0 !important; background: #d33449 !important; border-color: #d33449 !important; font-weight: 800 !important; }
.header-action-btn { height: 40px !important; border: 1px solid #e0e0e6 !important; border-radius: 8px !important; padding: 0 14px !important; color: #23254e !important; background: #fff !important; display: inline-flex; align-items: center; gap: 8px; }
.header-cart-btn { width: 40px !important; height: 40px !important; border: 1px solid #e0e0e6 !important; border-radius: 8px !important; background: #fff !important; display: inline-flex; align-items: center; justify-content: center; position: relative; }
.header-cart-btn img { width: 22px !important; height: 22px !important; object-fit: contain; }
.header-cart-btn .count { top: -7px !important; right: -7px !important; background: #d33449 !important; }
.navigation { background: #fff !important; border-bottom: 1px solid #e0e0e6 !important; }
.main-menu { height: 40px !important; align-items: center !important; gap: 4px !important; }
.main-menu > li > a { height: 40px !important; padding: 0 14px !important; display: inline-flex !important; align-items: center !important; font-size: 13px !important; color: #3f4064 !important; border-radius: 0 !important; }
.main-menu > li > a:hover { color: #d33449 !important; background: transparent !important; }
.nav-category-item > a { font-weight: 900 !important; color: #23254e !important; }
.nav-category-item > a:after { content: ""; height: 2px; background: #d33449; position: absolute; right: 12px; left: 12px; bottom: 0; opacity: 0; }
.nav-category-item:hover > a:after { opacity: 1; }

.dk-hero-wrap { padding-top: 14px !important; }
.dk-hero-grid { grid-template-columns: 260px minmax(0, 1fr) !important; direction: ltr; }
.dk-hero-side, .dk-main-slider { direction: rtl; }
.dk-main-slider, .dk-main-slider .owl-stage-outer, .dk-main-slider .owl-stage, .dk-main-slider .owl-item, .dk-main-slide { height: 300px !important; min-height: 300px !important; }
.dk-main-slide { align-items: flex-end !important; text-align: right !important; background: linear-gradient(90deg, #11808d 0%, #0f8b9a 50%, #23254e 100%) !important; }
.dk-hero-side { box-shadow: none !important; border-color: #e0e0e6 !important; }
.dk-quick-icons a { min-height: 64px !important; border-radius: 8px !important; }
.dk-quick-icons i { width: 34px !important; height: 34px !important; color: #11808d !important; background: #e6f8fb !important; }

.dk-product-section, .dk-car-section, .dk-blog-section { border-radius: 8px !important; padding: 0 !important; border-color: #e0e0e6 !important; }
.dk-section-head { height: 54px !important; padding: 0 16px !important; margin: 0 !important; border-bottom: 1px solid #f0f0f1 !important; }
.dk-section-head h2 { font-size: 16px !important; color: #23254e !important; }
.dk-section-head a { color: #11808d !important; font-size: 13px !important; }
.dk-product-section .custom-product-slider, .dk-amazing-section .custom-product-slider { padding: 10px 12px 14px !important; }

.custom-product-slider .owl-stage { display: flex !important; align-items: stretch !important; }
.custom-product-slider .owl-item { display: flex !important; }
.custom-product-slider .item { display: flex !important; width: 100% !important; height: auto !important; padding: 0 !important; }
.custom-product-slider .custom-card, .dk-product-card { width: 100% !important; height: 354px !important; min-height: 354px !important; max-height: 354px !important; border-radius: 0 !important; border: 0 !important; border-left: 1px solid #f0f0f1 !important; box-shadow: none !important; transform: none !important; }
.custom-product-slider .custom-card:hover { box-shadow: 0 1px 8px rgba(35,37,78,.12) !important; z-index: 2; }
.product-thumb, .dk-product-thumb, .custom-product-slider .product-thumb { height: 152px !important; margin: 0 !important; padding: 16px 16px 8px !important; background: #fff !important; border-radius: 0 !important; position: relative; }
.product-image-strip { overflow: visible !important; display: flex !important; }
.product-image-strip .slider-pic, .custom-product-slider .slider-pic { flex: initial !important; width: 100% !important; height: 128px !important; object-fit: contain !important; background: #fff !important; }
.dk-gallery-count { position: absolute; left: 12px; bottom: 8px; min-width: 30px; height: 22px; border-radius: 12px; background: rgba(240,240,241,.95); color: #62666d; display: inline-flex; align-items: center; justify-content: center; gap: 4px; font-size: 11px; }
.product-card-body { min-height: 202px !important; padding: 8px 14px 12px !important; }
.product-title { min-height: 50px !important; max-height: 50px !important; font-size: 13px !important; line-height: 1.9 !important; font-weight: 700 !important; color: #23254e !important; }
.product-card-meta { min-height: 56px !important; max-height: 56px !important; font-size: 11px !important; color: #666a70 !important; gap: 2px !important; }
.product-card-meta p { -webkit-line-clamp: 1 !important; line-clamp: 1 !important; }
.product-price-row { min-height: 48px !important; align-items: flex-end !important; justify-content: flex-end !important; }
.product-price { font-size: 16px !important; color: #23254e !important; }
.product-price small { margin-right: 4px; }
.add-cart-btn, .custom-product-slider .add-cart-btn { min-height: 34px !important; height: 34px !important; margin-top: 6px !important; font-size: 12px !important; border-radius: 8px !important; }
.product-discount-badge { top: 168px !important; right: 14px !important; background: #d33449 !important; height: 20px !important; min-width: 34px !important; font-size: 11px !important; }
.dk-amazing-section { grid-template-columns: 190px minmax(0, 1fr) !important; border-radius: 12px !important; background: #d33449 !important; padding: 14px !important; }
.dk-amazing-head { min-height: 304px !important; }
.dk-amazing-head strong { font-size: 28px !important; }

footer { background: #fff !important; border-top: 1px solid #e0e0e6 !important; margin-top: 42px !important; }
.footer-features { background: #fff !important; border-bottom: 1px solid #f0f0f1 !important; padding: 28px 0 !important; }
.footer-feature-item { min-height: 70px !important; border: 0 !important; box-shadow: none !important; background: transparent !important; }
.footer-feature-icon { width: 42px !important; height: 42px !important; background: #f1f2f4 !important; color: #11808d !important; }
.footer-feature-item .footer-feature-title { color: #23254e !important; font-size: 14px !important; margin-top: 8px !important; }
.footer-feature-item span { color: #666a70 !important; font-size: 12px !important; }
.footer-main { padding: 28px 0 !important; border: 0 !important; background: #fff !important; }
.footer-brand .site-logo img { max-height: 58px !important; }
.footer-about { color: #62666d !important; font-size: 13px !important; line-height: 2.1 !important; }
.footer-title { color: #23254e !important; font-weight: 900 !important; font-size: 14px !important; }
.footer-title::after { background: #d33449 !important; width: 36px !important; height: 2px !important; }
.footer-links li a, .footer-contact-info, .footer-bottom, .footer-bottom a { color: #62666d !important; font-size: 13px !important; }
.footer-detail-pic { width: 78px !important; height: 78px !important; object-fit: contain !important; border: 1px solid #e0e0e6 !important; border-radius: 8px !important; padding: 8px !important; }
.footer-bottom { border-top: 1px solid #f0f0f1 !important; background: #fff !important; padding: 18px 0 !important; }

.product-show-page { background: #f1f2f4 !important; padding: 12px 0 28px; }
.product-show-page .breadcrumb { background: transparent !important; font-size: 12px; }
.product-hero-panel { border-radius: 8px !important; border-color: #e0e0e6 !important; box-shadow: none !important; padding: 20px !important; }
.product-show-page #product-main-image { min-height: 390px !important; max-height: 390px !important; background: #fff !important; }
.product-show-page .product-details h1 { font-size: 19px !important; font-weight: 800 !important; color: #23254e !important; border-bottom: 1px solid #f0f0f1; padding-bottom: 14px; }
.product-show-page .add-cart-box { border-radius: 8px !important; background: #f7f7f8 !important; border-color: #e0e0e6 !important; box-shadow: none !important; padding: 16px !important; }
.product-seller-row { background: transparent !important; border-bottom: 1px solid #e0e0e6 !important; padding: 12px 0 !important; }
.product-show-page .add-cart-box .add-cart-btn { height: 48px !important; font-size: 14px !important; }
.product-delivery-icons { background: #fff; border: 1px solid #e0e0e6; border-radius: 8px; margin-top: 14px; padding: 18px 8px; color: #62666d; }
.product-delivery-icons i { color: #11808d !important; font-size: 22px; }
.product-tab-content { border-color: #e0e0e6 !important; border-radius: 8px !important; box-shadow: none !important; }
.custom-nav-pills .nav-link.active { background: transparent !important; color: #d33449 !important; border-bottom: 3px solid #d33449 !important; border-radius: 0 !important; }
.custom-nav-pills .nav-link { color: #62666d !important; font-weight: 800 !important; }

@media (max-width: 991px) {
    .dk-hero-grid { grid-template-columns: 1fr !important; direction: rtl; }
    .custom-product-slider .custom-card, .dk-product-card { height: 338px !important; min-height: 338px !important; max-height: 338px !important; }
    .home-car-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

/* Rebuilt product detail layout */
.dk-product-breadcrumb { display:flex; align-items:center; gap:8px; min-height:42px; font-size:12px; color:#666a70; }
.dk-product-breadcrumb a { color:#62666d !important; text-decoration:none; }
.dk-product-breadcrumb b { color:#3f4064; font-weight:700; }
.dk-product-detail { display:grid; grid-template-columns: 360px minmax(0, 1fr) 300px; gap:24px; background:#fff; }
.dk-product-gallery { position:relative; border-left:1px solid #f0f0f1; min-height:460px; }
.dk-product-actions { position:absolute; right:0; top:8px; display:flex; flex-direction:column; gap:12px; z-index:2; }
.dk-product-actions button { width:38px; height:38px; border:0; background:#fff; color:#62666d; font-size:18px; }
.dk-product-main-image { height:390px; display:flex; align-items:center; justify-content:center; padding:24px 42px 16px; }
.dk-product-main-image img { width:100%; height:100%; object-fit:contain; }
.dk-product-thumbs { display:flex; gap:8px; padding:10px 42px; overflow:auto; }
.dk-product-thumbs .product-thumb { width:64px !important; height:64px !important; min-width:64px; margin:0 !important; padding:5px !important; border:1px solid #e0e0e6 !important; border-radius:8px !important; background:#fff !important; }
.dk-product-thumbs img { width:100%; height:100%; object-fit:contain; }
.dk-product-info h1 { font-size:18px; line-height:2; font-weight:900; color:#23254e; padding-bottom:14px; border-bottom:1px solid #f0f0f1; margin:0 0 14px; }
.dk-short-desc { color:#62666d; font-size:13px; line-height:2.1; }
.dk-product-info h2 { font-size:15px; font-weight:900; color:#23254e; margin:18px 0 12px; }
.dk-product-info ul { padding:0; margin:0; list-style:none; display:grid; gap:10px; }
.dk-product-info li { min-height:36px; background:#f7f7f8; border-radius:8px; padding:8px 12px; color:#3f4064; font-size:13px; }
.dk-product-info li span { color:#666a70; margin-left:10px; }
.dk-assurance { display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; color:#62666d; font-size:12px; }
.dk-assurance span { display:inline-flex; align-items:center; gap:6px; }
.dk-assurance i { color:#11808d; }
.dk-buy-box { position:sticky; top:14px; align-self:start; background:#f7f7f8 !important; }
.dk-detail-price { text-align:left; direction:rtl; color:#23254e; font-size:22px; font-weight:950; margin:18px 0; }
.dk-detail-price small { color:#62666d; font-size:12px; }
.dk-detail-discount { display:inline-flex; background:#d33449; color:#fff; border-radius:12px; padding:2px 8px; font-size:12px; font-weight:900; }
.dk-detail-tabs { padding:18px 22px; }
.dk-detail-tabs h2 { color:#23254e; font-size:17px; font-weight:900; padding-bottom:12px; border-bottom:1px solid #f0f0f1; }
@media (max-width: 991px) { .dk-product-detail { grid-template-columns:1fr; } .dk-product-gallery { border-left:0; min-height:auto; } .dk-buy-box { position:static; } }
/* Home page layout stabilizer: these rules intentionally win over older theme passes. */
.dk-home { overflow: hidden; }
.dk-home .container { width: min(1320px, calc(100% - 32px)); max-width: none; }
.dk-hero-wrap { padding: 16px 0 !important; background: #f1f2f4 !important; border: 0 !important; }
.dk-hero-grid { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; grid-template-areas: "slider side" !important; gap: 16px !important; direction: rtl !important; }
.dk-main-slider { grid-area: slider; min-width: 0; border-radius: 8px !important; }
.dk-hero-side { grid-area: side; min-width: 0; min-height: 300px !important; border-radius: 8px !important; background: #fff !important; }
.dk-main-slider, .dk-main-slider .owl-stage-outer, .dk-main-slider .owl-stage, .dk-main-slider .owl-item, .dk-main-slide { height: 300px !important; min-height: 300px !important; }
.dk-main-slider .owl-stage-outer, .dk-main-slider .owl-stage, .dk-main-slider .owl-item { overflow: hidden; }
.dk-main-slide { box-sizing: border-box; overflow: hidden !important; background: #1f8ea3 !important; }
.dk-main-slide img { display: block !important; width: 100% !important; height: 100% !important; object-fit: cover !important; }
.dk-quick-icons { grid-template-columns: repeat(6, minmax(0, 1fr)) !important; gap: 12px !important; margin: 16px 0 !important; }
.dk-product-section, .dk-car-section, .dk-blog-section { overflow: hidden !important; border-radius: 8px !important; }
.custom-product-slider { overflow: hidden !important; }
.custom-product-slider .owl-stage { display: flex !important; align-items: stretch !important; }
.custom-product-slider .owl-item { display: flex !important; min-width: 0 !important; }
.custom-product-slider .owl-item > .item { display: flex !important; flex: 1 1 auto !important; min-width: 0 !important; width: 100% !important; }
.custom-product-slider .dk-product-card { display: flex !important; flex-direction: column !important; width: 100% !important; height: 352px !important; min-height: 352px !important; max-height: 352px !important; min-width: 0 !important; border: 0 !important; border-left: 1px solid #f0f0f1 !important; border-radius: 0 !important; overflow: hidden !important; }
.custom-product-slider .dk-product-thumb { display: flex !important; align-items: center !important; justify-content: center !important; flex: 0 0 154px !important; width: 100% !important; height: 154px !important; padding: 16px 16px 8px !important; margin: 0 !important; background: #fff !important; overflow: hidden !important; }
.custom-product-slider .dk-product-thumb .slider-pic { display: block !important; width: 100% !important; height: 130px !important; max-width: 100% !important; object-fit: contain !important; background: #fff !important; }
.custom-product-slider .product-card-body { display: flex !important; flex: 1 1 auto !important; flex-direction: column !important; min-height: 0 !important; padding: 8px 14px 12px !important; overflow: hidden !important; }
.custom-product-slider .product-title { min-height: 42px !important; max-height: 42px !important; overflow: hidden !important; line-height: 1.75 !important; }
.custom-product-slider .product-card-meta { min-height: 43px !important; max-height: 43px !important; overflow: hidden !important; }
.custom-product-slider .product-price-row { margin-top: auto !important; min-height: 39px !important; }
.custom-product-slider .add-cart-btn { flex: 0 0 36px !important; height: 36px !important; margin: 6px 0 0 !important; }
@media (max-width: 991px) { .dk-home .container { width: min(100% - 24px, 720px); } .dk-hero-grid { grid-template-columns: 1fr !important; grid-template-areas: "slider" "side" !important; } .dk-hero-side { min-height: 150px !important; } .dk-quick-icons { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; } }
@media (max-width: 575px) { .dk-main-slider, .dk-main-slider .owl-stage-outer, .dk-main-slider .owl-stage, .dk-main-slider .owl-item, .dk-main-slide { height: 210px !important; min-height: 210px !important; } .custom-product-slider .dk-product-card { height: 332px !important; min-height: 332px !important; max-height: 332px !important; } }
/* Footer and header normalization for the marketplace layout. */
.site-header, .header-main, .navigation, .header-top-bar { background: #fff !important; color: #3f4064 !important; }
.header-top-bar { min-height: 28px; border-bottom: 1px solid #f0f0f1 !important; }
.site-header { border-bottom: 1px solid #e0e0e6 !important; box-shadow: none !important; }
.header-main { min-height: 76px !important; padding: 10px 0 !important; }
.site-logo img { display: block; max-height: 54px; width: auto; object-fit: contain; }
.search-box-header { height: 42px; border-radius: 8px !important; overflow: hidden; background: #f0f0f1 !important; }
.search-box-header input { min-width: 0; background: #f0f0f1 !important; color: #3f4064 !important; }
.search-box-header button { min-width: 82px; height: 42px; background: #d33449 !important; }
.navigation { min-height: 44px; border-bottom: 1px solid #e0e0e6 !important; }
.navigation a { color: #3f4064 !important; }

footer { margin-top: 32px !important; background: #fff !important; color: #3f4064 !important; border-top: 1px solid #e0e0e6 !important; }
footer .container { width: min(1320px, calc(100% - 32px)); max-width: none; }
.footer-features { padding: 28px 0 !important; background: #fff !important; border-bottom: 1px solid #f0f0f1 !important; }
.footer-features::before { display: none !important; }
.footer-feature-item { min-height: 88px !important; padding: 6px !important; background: transparent !important; transform: none !important; }
.footer-feature-icon { width: 46px !important; height: 46px !important; margin: 0 auto 8px !important; border-radius: 50% !important; background: #f1f8fb !important; }
.footer-feature-icon i { color: #11808d !important; }
.footer-feature-item .footer-feature-title { margin: 0 0 5px !important; color: #3f4064 !important; font-size: 14px !important; font-weight: 800 !important; }
.footer-feature-item span { color: #666a70 !important; font-size: 12px !important; }
.footer-main { padding: 34px 0 26px !important; background: #fff !important; color: #3f4064 !important; border: 0 !important; }
.footer-main .row { align-items: flex-start; }
.footer-box { margin-bottom: 18px !important; }
.footer-brand { padding-left: 24px !important; }
.footer-brand .site-logo { display: block !important; width: fit-content; margin-bottom: 16px !important; }
.footer-brand .site-logo img { max-height: 56px !important; }
.footer-about { max-width: 410px; margin: 0 0 14px !important; color: #62666d !important; font-size: 13px !important; line-height: 2 !important; }
.footer-contact-info { gap: 7px !important; color: #62666d !important; font-size: 13px !important; }
.footer-contact-info > div { color: #62666d !important; }
.footer-contact-info > div i,
.footer-contact-info > div .brand-icon { color: #11808d !important; }
.footer-title, .footer-box p.footer-title { position: relative; display: block; margin: 0 0 16px !important; padding: 0 0 10px !important; color: #3f4064 !important; font-size: 14px !important; font-weight: 800 !important; }
.footer-title::after { right: 0 !important; bottom: 0 !important; width: 30px !important; height: 2px !important; background: #d33449 !important; }
.footer-links { margin: 0 !important; padding: 0 !important; }
.footer-links li { margin: 0 0 10px !important; }
.footer-links li a { color: #62666d !important; font-size: 13px !important; line-height: 1.6; padding: 0 !important; }
.footer-links li a i { color: #666a70 !important; }
.footer-links li a:hover, .footer-links li a:hover i { color: #d33449 !important; }
.footer-trust-badges { gap: 8px !important; }
.footer-detail-pic { width: 76px !important; height: 76px !important; padding: 6px !important; border: 1px solid #e0e0e6 !important; border-radius: 8px !important; background: #fff !important; object-fit: contain !important; }
.footer-social { gap: 8px !important; }
.footer-social-btn { width: 36px !important; height: 36px !important; background: #f1f2f4 !important; border: 0 !important; color: #62666d !important; }
.footer-social-btn:hover { background: #d33449 !important; color: #fff !important; }
.footer-bottom { min-height: 56px; padding: 17px 0 !important; background: #f8f9fb !important; color: #666a70 !important; border-top: 1px solid #f0f0f1 !important; }
.footer-bottom .copy-right, .footer-bottom-links, .footer-bottom-links a { color: #666a70 !important; font-size: 12px !important; }
/* فوتر روشن شد ولی رنگ <strong> از تم تیره‌ی قبلی مانده بود: سفیدِ ۷۰٪ روی
   زمینه‌ی #f8f9fb عملا نامرئی است (نسبت کنتراست ۱.۰۳). */
.footer-bottom .copy-right strong { color: #3f4064 !important; }
.footer-bottom-links a:hover { color: #d33449 !important; }
@media (max-width: 991px) { footer .container { width: min(100% - 24px, 720px); } .footer-brand { padding-left: 0 !important; } .footer-box { text-align: right !important; } .footer-box ul { padding-right: 0 !important; } }
@media (max-width: 575px) { .footer-features { padding: 20px 0 !important; } .footer-feature-item { min-height: 76px !important; } .footer-main { padding: 26px 0 16px !important; } .footer-bottom { text-align: center; } .footer-bottom-links { justify-content: center; margin-top: 8px; } }

/* عنوان H1 صفحات فهرست و خانه: از نظر بصری کم‌حجم اما در ساختار سند
   یک عنوان اصلی کامل است (H1 پنهان‌شده با display:none توسط گوگل
   بی‌ارزش تلقی می‌شود، پس قابل‌مشاهده نگه داشته شده است). */
.nx-page-title {
    font-size: 1.05rem;
    font-weight: 800;
    color: var(--primary-dark, #002f5b);
    margin: 14px 4px 10px;
    line-height: 1.9;
}

@media (max-width: 576px) {
    .nx-page-title { font-size: .95rem; margin: 10px 4px 8px; }
}

/* بلوک لینک‌های داخلی فوتر (دسته‌بندی‌ها و مدل خودروها) */
.footer-seo-links {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 18px 30px;
    padding: 20px 0 6px;
    border-top: 1px solid rgba(255, 255, 255, .12);
}

.footer-tag-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-tag-list a {
    display: inline-block;
    font-size: .78rem;
    line-height: 1.9;
    padding: 3px 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .08);
    color: inherit;
    text-decoration: none;
    transition: background .2s;
}

.footer-tag-list a:hover {
    background: rgba(255, 255, 255, .18);
}

/* ---------- لینک اینستاگرام (هدر و فوتر) ---------- */

/* آدرس اینستاگرام در بلوک تماس فوتر رنگ متن اطراف خود را می‌گیرد */
.footer-contact-info > div a {
    color: inherit;
    text-decoration: none;
    transition: var(--transition);
}

.footer-contact-info > div a:hover {
    color: #e1306c !important;
}

/* دکمه‌ی اینستاگرام در فوتر با گرادیان برند خودش هاور می‌شود؛
   !important لازم است چون پاس‌های تم بعدی رنگ عمومی دکمه‌ها را بازنویسی می‌کنند */
.footer-social-btn.footer-social-instagram:hover {
    background: linear-gradient(45deg, #f09433, #e6683c, #dc2743, #cc2366, #bc1888) !important;
    border-color: #dc2743 !important;
    color: #fff !important;
    box-shadow: 0 4px 15px rgba(220, 39, 67, .4) !important;
}

/* آیکون اینستاگرام در نوار بالای هدر */
.header-top-bar a .fa-instagram {
    color: #e1306c;
}


/* SVG درون‌خطیِ آیکن‌های شبکه‌های اجتماعی؛ هم‌ترازی‌اش با متن مثل آیکن فونتی */
.brand-icon {
    vertical-align: -.125em;
}


/* text-muted بوت‌استرپ (#6c757d) روی زمینه‌های روشنِ سایت زیر ۴.۵ می‌ماند */
.text-muted {
    color: #626a71 !important;
}

/* ------------------------------------------------------------------
   جعبه‌ی تأیید شماره بعد از ثبت سفارش.

   نسخه‌ی اول خاکستری و بی‌صدا بود تا شبیه خطا نباشد؛ نتیجه این شد که
   مشتری اصلا پیدایش نمی‌کرد. حالا در چشم است ولی با رنگ برند، نه رنگ
   هشدار: قابِ پررنگ، نوار رنگی بالا، و کادر کد به‌اندازه‌ای بزرگ که
   خودش بگوید «اینجا باید چیزی بنویسی».
   ------------------------------------------------------------------ */
.nx-verify {
    position: relative;
    margin: 0 0 22px;
    padding: 18px 18px 16px;
    border: 2px solid var(--primary);
    border-radius: var(--radius);
    background: #fff;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .07);
    overflow: hidden;
}

/* نوار رنگی بالای قاب: از فاصله‌ی دور هم چشم را می‌گیرد */
.nx-verify::before {
    content: "";
    position: absolute;
    inset-block-start: 0;
    inset-inline: 0;
    height: 4px;
    background: var(--primary);
}

.nx-verify-top {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    margin-top: 4px;
}

.nx-verify-icon {
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--primary-lighter, #eef2ff);
    color: var(--primary);
    font-size: 1.15rem;
}

.nx-verify-titles { min-width: 0; }

.nx-verify-titles h3 {
    margin: 0 0 4px;
    font-size: 1.02rem;
    font-weight: 800;
    color: var(--text-dark);
}

.nx-verify-titles p {
    margin: 0;
    font-size: .82rem;
    line-height: 1.9;
    color: var(--text-muted, #6c757d);
}

.nx-verify-phone {
    font-weight: 800;
    color: var(--text-dark);
    direction: ltr;
    unicode-bidi: isolate;
}

.nx-verify-form {
    display: flex;
    gap: 8px;
    margin-top: 14px;
    flex-wrap: wrap;
}

/* کادر کد عمدا بزرگ و با فاصله‌ی زیاد بین ارقام است: از نظر بصری
   «شش خانه» خوانده می‌شود و مشتری می‌فهمد شش رقم می‌خواهد */
.nx-verify-form input {
    flex: 1 1 170px;
    min-width: 0;
    height: 54px;
    padding: 0 12px;
    border: 2px solid var(--border-color);
    border-radius: var(--radius-sm);
    background: #fff;
    font-size: 1.4rem;
    font-weight: 800;
    text-align: center;
    letter-spacing: .55em;
    text-indent: .55em;
    direction: ltr;
}

.nx-verify-form input::placeholder {
    font-weight: 400;
    letter-spacing: .25em;
    color: #c4c4c4;
}

.nx-verify-form input:focus {
    outline: none;
    border-color: var(--primary);
    box-shadow: 0 0 0 3px var(--primary-lighter, rgba(0, 0, 0, .06));
}

.nx-verify-btn {
    flex: 0 0 auto;
    min-width: 120px;
    height: 54px;
    padding: 0 22px;
    border: none;
    border-radius: var(--radius-sm);
    background: var(--primary);
    color: #fff;
    font-size: .95rem;
    font-weight: 700;
    cursor: pointer;
}

.nx-verify-btn:hover { filter: brightness(1.07); }

.nx-verify-msg {
    margin: 10px 0 0;
    font-size: .82rem;
    font-weight: 600;
    line-height: 1.8;
    min-height: 1em;
}

.nx-verify-msg.is-error { color: var(--danger, #d33); }
.nx-verify-msg.is-ok    { color: var(--success, #1a9c4c); }

.nx-verify-why {
    margin: 12px 0 0;
    padding-top: 12px;
    border-top: 1px dashed var(--border-color);
    font-size: .8rem;
    line-height: 1.9;
    color: var(--text-dark);
}

.nx-verify-why i { color: var(--primary); margin-inline-end: 4px; }

.nx-verify-skip {
    margin: 6px 0 0;
    font-size: .75rem;
    line-height: 1.9;
    color: var(--text-muted, #6c757d);
}

/* بعد از تأیید، جعبه آرام می‌شود: کار تمام شده و دیگر نباید چشم بگیرد */
.nx-verify.is-done {
    border-color: var(--success, #1a9c4c);
    box-shadow: none;
}

.nx-verify.is-done::before { background: var(--success, #1a9c4c); }
.nx-verify.is-done .nx-verify-why,
.nx-verify.is-done .nx-verify-skip { display: none; }

@media (max-width: 575.98px) {
    .nx-verify-form input,
    .nx-verify-btn { flex: 1 1 100%; }
}

/* /assets/css/home-digikala.css */
/* ==========================================================================
   قالب دیجی‌کالایی: هدر سایت + چیدمان و رنگ‌بندی صفحه اصلی
   این فایل بعد از style.css بارگذاری می‌شود تا روی لایه‌های قدیمی تم بنشیند.
   ========================================================================== */

:root {
    --nx-red: #d33449;
    --nx-red-dark: #b32b3d;
    --nx-red-soft: #fff1f3;
    --nx-teal: #11808d;
    --nx-ink: #23254e;
    --nx-text: #3f4064;
    --nx-muted: #666a70;
    --nx-line: #e0e0e2;
    --nx-soft: #f0f0f1;
    --nx-bg: #f5f5f5;
    --nx-radius: 8px;
    --nx-shell: 1330px;
}

body {
    background: var(--nx-bg) !important;
    color: var(--nx-text) !important;
}

/* ==========================================================================
   ۱) هدر و منو
   ========================================================================== */

.header-top-bar {
    background: #fff !important;
    color: var(--nx-muted) !important;
    border-bottom: 1px solid var(--nx-soft) !important;
    padding: 6px 0 !important;
    font-size: 12px !important;
}

.header-top-bar i {
    color: var(--nx-teal) !important;
}

.site-header {
    background: #fff !important;
    border-bottom: 1px solid var(--nx-line) !important;
    box-shadow: none !important;
}

.header-main {
    background: #fff !important;
    padding: 12px 0 !important;
    min-height: 74px !important;
}

.site-logo {
    background: transparent !important;
    padding: 0 !important;
}

.site-logo img {
    max-height: 52px !important;
    width: auto;
    object-fit: contain;
}

/* جعبه جستجو: زمینه خاکستری روشن، دکمه قرمز در انتهای فیلد.
   دکمه از حالت absolute خارج و به آیتم فلکس تبدیل می‌شود تا همیشه داخل کادر بماند.

   overflow اینجا نباید hidden باشد: پنل پیشنهاد جستجو (.nx-suggest) درست زیر
   همین جعبه باز می‌شود و با hidden کامل بریده می‌شد؛ سرویس صدا زده می‌شد،
   جواب هم می‌آمد، ولی کاربر هیچ‌چیز نمی‌دید. گوشه‌ی دکمه به‌جای بریده‌شدن با
   پدر، خودش گرد می‌شود. */
.search-box-header {
    display: flex !important;
    align-items: center;
    height: 44px !important;
    background: var(--nx-soft) !important;
    border: 1px solid transparent !important;
    border-radius: var(--nx-radius) !important;
    transition: border-color .18s ease;
}

.search-box-header:focus-within {
    border-color: var(--nx-red) !important;
}

.search-box-header input {
    flex: 1 1 auto;
    min-width: 0;
    height: 44px !important;
    padding: 0 16px !important;
    background: transparent !important;
    border: 0 !important;
    color: var(--nx-ink) !important;
    font-size: 13px !important;
}

.search-box-header input::placeholder {
    color: var(--nx-muted) !important;
}

.search-box-header button {
    position: static !important;
    flex: 0 0 auto;
    height: 44px !important;
    min-width: 98px;
    justify-content: center;
    /* سایت RTL است، پس دکمه لبه‌ی چپِ جعبه است و فقط دو گوشه‌ی چپش گرد می‌شود */
    border-radius: var(--nx-radius) 0 0 var(--nx-radius) !important;
    background: var(--nx-red) !important;
    border-color: var(--nx-red) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
}

.search-box-header button:hover {
    background: var(--nx-red-dark) !important;
    border-color: var(--nx-red-dark) !important;
}

/* دکمه ورود و سبد خرید */
.header-action-btn {
    height: 42px !important;
    padding: 0 14px !important;
    background: #fff !important;
    border: 1px solid var(--nx-line) !important;
    border-radius: var(--nx-radius) !important;
    color: var(--nx-ink) !important;
    font-size: 13px !important;
}

.header-action-btn:hover {
    background: #fff !important;
    border-color: var(--nx-red) !important;
    color: var(--nx-red) !important;
}

.header-cart-btn {
    width: 42px !important;
    height: 42px !important;
    background: #fff !important;
    border: 1px solid var(--nx-line) !important;
    border-radius: var(--nx-radius) !important;
}

.header-cart-btn:hover {
    background: #fff !important;
    border-color: var(--nx-red) !important;
}

/* آیکن سبد خرید سیاه است؛ فیلتر سفیدکننده‌ی تم قبلی آن را روی هدر سفید نامرئی می‌کرد */
.header-cart-btn img {
    width: 20px !important;
    height: 20px !important;
    filter: none !important;
    object-fit: contain;
}

.header-cart-btn .count {
    position: absolute;
    top: -7px;
    right: -7px;
    left: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 19px;
    height: 19px;
    padding: 0 5px;
    border-radius: 10px;
    background: var(--nx-red) !important;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
}

/* نوار منو */
.navigation {
    height: 46px !important;
    background: #fff !important;
    border-bottom: 1px solid var(--nx-line) !important;
    box-shadow: none !important;
}

.main-menu {
    height: 46px !important;
    align-items: center !important;
}

.main-menu > li > a {
    height: 46px !important;
    padding: 0 14px !important;
    display: inline-flex !important;
    align-items: center !important;
    color: var(--nx-text) !important;
    font-size: 13px !important;
    line-height: 46px !important;
}

.main-menu > li > a:hover {
    background: transparent !important;
    color: var(--nx-red) !important;
}

.main-menu > li > a::before {
    background: var(--nx-red) !important;
}

.nav-category-item > a,
.nav-category-item:hover > a {
    background: transparent !important;
    color: var(--nx-ink) !important;
    font-weight: 800 !important;
}

.nav-category-item:hover > a,
.nav-category-item:hover > a > i {
    color: var(--nx-red) !important;
}

.nav-phone-link {
    color: var(--nx-red) !important;
}

.nav-phone-link:hover {
    background: var(--nx-red-soft) !important;
}

.sub-menu,
.sub-menu-level-2 {
    border-top-color: var(--nx-red) !important;
    box-shadow: 0 12px 30px rgba(35, 37, 78, .14) !important;
}

.sub-menu > li > a:hover,
.sub-menu-level-2 > li > a:hover {
    color: var(--nx-red) !important;
    background: var(--nx-red-soft) !important;
    border-right-color: var(--nx-red) !important;
}

.sub-menu-icon {
    color: var(--nx-teal) !important;
}

.sub-menu > li > a:hover .sub-menu-icon {
    color: var(--nx-red) !important;
}

/* هدر موبایل: آیکن‌ها روی زمینه سفید دیده نمی‌شدند */
.mobile-menu-icon,
.signup-login-icon {
    color: var(--nx-ink) !important;
}

/* رنگ‌های تم روی قاب می‌نشیند نه روی خودِ فیلد؛ ساختار پیل در style.css است.
   نسخه‌ی قبلی زمینه و کادر را روی input می‌گذاشت که حالا شفاف است و داخل
   قاب می‌نشیند — همان قاعده‌ها یک جعبه‌ی دوم وسط قاب می‌کشیدند. */
.mobile-search {
    background: var(--nx-soft) !important;
    border-color: transparent !important;
}

.mobile-search:focus-within {
    background: #fff !important;
    border-color: var(--nx-red) !important;
}

.mobile-search__icon,
.mobile-search input::placeholder {
    color: var(--nx-muted) !important;
}

.mobile-search input {
    background: transparent !important;
    border: 0 !important;
    color: var(--nx-ink) !important;
}

.mobile-search button {
    background: var(--nx-red) !important;
}

#mobile-menu .offcanvas-header {
    background: #fff !important;
    border-bottom: 1px solid var(--nx-line);
}

#mobile-menu .btn-close-white {
    filter: none !important;
}

.mobile-login-btn {
    background: var(--nx-red) !important;
    border-color: var(--nx-red) !important;
}

/* ==========================================================================
   ۲) پوسته صفحه اصلی
   ========================================================================== */

.nx-home {
    padding: 16px 0 40px;
    background: var(--nx-bg);
    overflow-x: hidden;
    direction: rtl;
}

.nx-home *,
.nx-home *::before,
.nx-home *::after {
    box-sizing: border-box;
}

.nx-home a {
    text-decoration: none;
}

.nx-wrap {
    width: min(var(--nx-shell), calc(100% - 32px));
    margin-inline: auto;
}

/* ---------- اسلایدر اصلی ---------- */

.nx-hero {
    margin-bottom: 16px;
}

.nx-hero-slider {
    position: relative;
    border-radius: 12px;
    background: #fff;
    overflow: hidden;
}

/*
| ارتفاع اسلاید از نسبت تصویر می‌آید (۳:۱ دسکتاپ، ۵:۳ موبایل) نه عدد ثابت؛
| با ارتفاع ثابت ۳۱۰px و object-fit: cover، در صفحه‌های عریض بالا و پایین
| تصویر (برچسب و دکمه) بریده می‌شد. فقط اسلایدهای CSSی جایگزین (promo)
| ارتفاع ثابت دارند.
*/
.nx-slide {
    position: relative;
    display: flex;
    align-items: center;
    overflow: hidden;
    color: #fff;
}

.nx-slide-promo {
    height: 310px;
}

.nx-slide > img,
.nx-slide > picture,
.nx-slide > picture > img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 3 / 1;
    object-fit: cover;
}

.nx-slide-promo {
    padding: 0 56px;
    background: linear-gradient(90deg, #23254e 0%, #3c3f7d 45%, var(--nx-red) 100%);
}

.nx-slide-promo-2 {
    background: linear-gradient(90deg, #0c7c8c 0%, var(--nx-teal) 55%, #86e5ef 100%);
}

.nx-slide-promo-3 {
    background: linear-gradient(90deg, #7d1220 0%, var(--nx-red) 58%, #ff9273 100%);
}

.nx-slide-copy {
    position: relative;
    z-index: 2;
    flex: 1 1 auto;
    width: 100%;
    max-width: 570px;
    min-width: 0;
}

.nx-slide-copy small {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 12px;
    padding: 5px 12px;
    border-radius: 20px;
    background: rgba(255, 255, 255, .18);
    font-size: 12px;
    font-weight: 700;
}

.nx-slide-copy strong {
    display: block;
    font-size: 34px;
    font-weight: 900;
    line-height: 1.5;
}

.nx-slide-copy p {
    margin: 10px 0 18px;
    font-size: 15px;
    line-height: 2;
    opacity: .92;
}

.nx-slide-cta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 42px;
    padding: 0 22px;
    border-radius: var(--nx-radius);
    background: #fff;
    color: var(--nx-ink) !important;
    font-size: 14px;
    font-weight: 800;
}

.nx-slide-art {
    position: absolute;
    left: 56px;
    top: 50%;
    z-index: 1;
    transform: translateY(-50%);
    font-size: 150px;
    opacity: .16;
}

/* حالت پیش از راه‌اندازی اسلایدر: فقط اسلاید اول.

   owl.carousel.min.css روی .owl-carousel یک display:none می‌گذارد و تا اجرای
   JS برنمی‌دارد؛ یعنی جای ۲۳۰ پیکسلی اسلایدر تا آن لحظه خالی می‌ماند و بعد
   یک‌باره باز می‌شود و کل صفحه را پایین می‌برد. بزرگ‌ترین سهم CLS صفحه‌ی
   اصلی همین بود. */
.nx-hero-slider:not(.owl-loaded) {
    display: block;
}

.nx-hero-slider:not(.owl-loaded) .nx-slide {
    display: none;
}

.nx-hero-slider:not(.owl-loaded) .nx-slide:first-child {
    display: flex;
}

.nx-hero-slider .owl-nav button.owl-prev,
.nx-hero-slider .owl-nav button.owl-next {
    position: absolute;
    top: 50%;
    z-index: 3;
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    margin: 0 !important;
    transform: translateY(-50%);
    border-radius: 50% !important;
    background: rgba(255, 255, 255, .94) !important;
    color: var(--nx-ink) !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, .16);
    font-size: 17px !important;
}

.nx-hero-slider .owl-nav button.owl-prev {
    right: 16px;
}

.nx-hero-slider .owl-nav button.owl-next {
    left: 16px;
}

.nx-hero-slider .owl-dots {
    position: absolute;
    right: 56px;
    bottom: 16px;
    z-index: 3;
    display: flex;
    gap: 6px;
}

.nx-hero-slider .owl-dot span {
    width: 8px !important;
    height: 8px !important;
    margin: 0 !important;
    background: rgba(255, 255, 255, .55) !important;
}

.nx-hero-slider .owl-dot.active span {
    width: 22px !important;
    border-radius: 5px !important;
    background: #fff !important;
}

/* ---------- دسترسی سریع (آیکن‌های دایره‌ای) ---------- */

.nx-circles {
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 16px;
    padding: 18px 10px;
    border-radius: 12px;
    background: #fff;
}

.nx-circle {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 9px;
    color: var(--nx-text);
    font-size: 12.5px;
    font-weight: 700;
    text-align: center;
}

.nx-circle i {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    border-radius: 50%;
    font-size: 23px;
    transition: transform .18s ease;
}

.nx-circle:hover {
    color: var(--nx-red);
}

.nx-circle:hover i {
    transform: translateY(-3px);
}

.nx-t1 i { background: #ffeef0; color: #d33449; }
.nx-t2 i { background: #e6f8fb; color: #109cae; }
.nx-t3 i { background: #eef0ff; color: #5a5fd8; }
.nx-t4 i { background: #fff6e5; color: #d38b06; }
.nx-t5 i { background: #e9f7ef; color: #0f7d4c; }
.nx-t6 i { background: #fdeef8; color: #c4479b; }
.nx-t7 i { background: #eaf2ff; color: #2f6fd0; }
.nx-t8 i { background: #f1f0ea; color: #7d7a5c; }

/* ---------- نوار پیشنهاد ویژه ---------- */

.nx-amazing {
    display: grid;
    grid-template-columns: 196px minmax(0, 1fr);
    margin-bottom: 16px;
    padding: 14px;
    border-radius: 12px;
    background: linear-gradient(180deg, var(--nx-red) 0%, #e02642 100%);
}

.nx-amazing-side {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 10px;
    color: #fff;
    text-align: center;
}

.nx-amazing-side > i {
    font-size: 34px;
    opacity: .95;
}

.nx-amazing-side strong {
    font-size: 26px;
    font-weight: 900;
    line-height: 1.5;
}

.nx-amazing-side span {
    font-size: 12.5px;
    line-height: 1.9;
    opacity: .92;
}

.nx-amazing-side a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 36px;
    margin-top: 4px;
    padding: 0 16px;
    border-radius: var(--nx-radius);
    background: #fff;
    color: var(--nx-red) !important;
    font-size: 13px;
    font-weight: 800;
}

/* بدون min-width:0 ، عرض ذاتی ریل ستون گرید را باز می‌کند و کل صفحه پهن‌تر از نمایشگر می‌شود */
.nx-amazing > * {
    min-width: 0;
}

.nx-amazing .nx-rail {
    border-radius: 10px;
    background: #fff;
}

/* ---------- بنرهای میانی ---------- */

.nx-banners {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 16px;
}

.nx-banner {
    display: flex;
    align-items: center;
    gap: 18px;
    min-height: 140px;
    padding: 20px 24px;
    border-radius: 12px;
    color: #fff;
}

.nx-banner strong {
    display: block;
    font-size: 18px;
    font-weight: 900;
}

.nx-banner p {
    margin: 7px 0 0;
    font-size: 13px;
    line-height: 1.9;
    opacity: .9;
}

.nx-banner-cta {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 34px;
    margin-top: 13px;
    padding: 0 16px;
    border-radius: var(--nx-radius);
    background: #fff;
    color: var(--nx-ink) !important;
    font-size: 12.5px;
    font-weight: 800;
}

.nx-banner-isaco {
    background: linear-gradient(120deg, #23254e 0%, #3a3d7d 100%);
}

.nx-banner-isaco img {
    flex-shrink: 0;
    width: 98px;
    height: 98px;
    padding: 10px;
    border-radius: 12px;
    background: #fff;
    object-fit: contain;
}

.nx-banner-support {
    background: linear-gradient(120deg, #0d90a1 0%, var(--nx-teal) 100%);
}

.nx-banner-support > i {
    flex-shrink: 0;
    font-size: 46px;
    opacity: .95;
}

/* ---------- کارت بخش‌ها ---------- */

.nx-card {
    margin-bottom: 16px;
    border-radius: 12px;
    background: #fff;
    overflow: hidden;
}

.nx-card-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    height: 58px;
    padding: 0 18px;
    border-bottom: 1px solid var(--nx-soft);
}

.nx-card-head h2 {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 0;
    color: var(--nx-ink);
    font-size: 16px;
    font-weight: 900;
}

.nx-card-head h2 i {
    color: var(--nx-red);
    font-size: 16px;
}

.nx-card-head a {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: var(--nx-teal) !important;
    font-size: 13px;
    font-weight: 800;
}

/* ---------- خرید بر اساس خودرو ---------- */

.nx-cars {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
    padding: 16px;
}

.nx-car {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 142px;
    padding: 12px;
    border: 1px solid var(--nx-soft);
    border-radius: 10px;
    color: var(--nx-text);
    transition: .18s ease;
}

.nx-car:hover {
    border-color: var(--nx-red);
    box-shadow: 0 8px 20px rgba(35, 37, 78, .08);
    transform: translateY(-2px);
    color: var(--nx-red);
}

.nx-car img,
.nx-car-fallback {
    width: 100%;
    max-width: 120px;
    height: 66px;
    border-radius: 8px;
    background: var(--nx-soft);
    object-fit: cover;
}

.nx-car-fallback {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--nx-teal);
    font-size: 26px;
}

.nx-car strong {
    font-size: 13px;
    font-weight: 800;
}

.nx-car span {
    color: var(--nx-muted);
    font-size: 11.5px;
}

/* ---------- مجله ---------- */

.nx-posts {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    padding: 16px;
}

.nx-post {
    display: flex;
    flex-direction: column;
    border: 1px solid var(--nx-soft);
    border-radius: 10px;
    color: var(--nx-text);
    overflow: hidden;
    transition: .18s ease;
}

.nx-post:hover {
    box-shadow: 0 10px 24px rgba(35, 37, 78, .09);
    transform: translateY(-2px);
}

/* کاور برداریِ اختصاصی مقاله؛ نسبت تصویر ثابت است تا در هیچ اندازه‌ای بریده نشود */
.nx-post-img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 600 / 340;
    background: var(--nx-soft);
    object-fit: cover;
    border-bottom: 1px solid var(--nx-soft);
}

.nx-post-fallback {
    width: 100%;
    height: 150px;
    background: var(--nx-soft);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--nx-teal);
    font-size: 30px;
}

.nx-post-body {
    padding: 12px 14px 16px;
}

.nx-post h3 {
    height: 50px;
    margin: 0;
    overflow: hidden;
    color: var(--nx-ink);
    font-size: 13.5px;
    font-weight: 800;
    line-height: 1.85;
}

.nx-post p {
    height: 44px;
    margin: 8px 0 0;
    overflow: hidden;
    color: var(--nx-muted);
    font-size: 12px;
    line-height: 1.9;
}

/* ==========================================================================
   ۳) ریل محصولات و کارت کالا
   قواعد سراسری style.css با !important نوشته شده‌اند؛ این بخش با
   اختصاصی‌بودن بیشتر (.nx-home .nx-rail ...) روی آن‌ها می‌نشیند.
   ========================================================================== */

.nx-rail {
    position: relative;
    min-width: 0;
    padding: 6px 0 12px;
}

/* نوار اسکرول‌شونده. جای owl carousel را گرفته است: owl بعد از بارگذاری
   DOM ریل را بازچینی می‌کرد و مرورگر همان لحظه یک layout shift به اندازه‌ی
   کل صفحه ثبت می‌کرد. اسکرول بومی از اولین رندر نهایی است، روی لمس نرم‌تر
   کار می‌کند و بدون جاوااسکریپت هم می‌چرخد. */
.nx-rail-track {
    display: flex;
    align-items: stretch;
    min-width: 0;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x proximity;
    scroll-behavior: smooth;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.nx-rail-track::-webkit-scrollbar {
    display: none;
}

/* عرض کارت‌ها همان نردبان قبلی owl است: ۰→۲، 768→۳، 992→۴، 1200→۵، 1400→۶ */
.nx-rail-track > .item {
    flex: 0 0 50%;
    min-width: 0;
    padding: 0 6px;
    scroll-snap-align: start;
}

@media (min-width: 768px) {
    .nx-rail-track > .item { flex-basis: 33.3333%; }
}

@media (min-width: 992px) {
    .nx-rail-track > .item { flex-basis: 25%; }
}

@media (min-width: 1200px) {
    .nx-rail-track > .item { flex-basis: 20%; }
}

@media (min-width: 1400px) {
    .nx-rail-track > .item { flex-basis: 16.6666%; }
}

.nx-rail-nav {
    position: absolute;
    top: 74px;
    z-index: 4;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #fff;
    color: var(--nx-ink);
    box-shadow: 0 2px 10px rgba(35, 37, 78, .2);
    font-size: 15px;
    cursor: pointer;
    transition: opacity .2s;
}

.nx-rail-prev {
    right: 6px;
}

.nx-rail-next {
    left: 6px;
}

.nx-rail-nav.is-disabled {
    opacity: 0;
    pointer-events: none;
}

/* روی دستگاه لمسی، کاربر خودش ریل را می‌کشد و این دکمه‌ها فقط جلوی کارت را
   می‌گیرند */
@media (hover: none) {
    .nx-rail-nav { display: none; }
}

.nx-home .nx-rail .dk-product-card {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    min-width: 0 !important;
    /* ارتفاع ثابت نیست: با اضافه‌شدن برچسب عمده، مجموع خط‌ها از ۳۵۲ رد می‌شد و
       دکمه‌ی «افزودن به سبد» نصفه زیر لبه‌ی کارت می‌ماند. با min-height کارتِ
       بلندتر جا باز می‌کند و بقیه‌ی کارت‌های همان ردیف با stretch هم‌قد می‌شوند.
       height/max-height باید صریح خنثی شوند؛ style.css همان دو مقدار را با
       important روی .dk-product-card می‌گذارد. */
    height: auto !important;
    min-height: 352px !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-left: 1px solid var(--nx-soft) !important;
    border-radius: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
    transform: none !important;
    overflow: hidden !important;
}

.nx-home .nx-rail .dk-product-card:hover {
    box-shadow: 0 4px 16px rgba(35, 37, 78, .13) !important;
    z-index: 2;
}

.nx-home .nx-rail .dk-product-thumb {
    position: relative !important;
    display: flex !important;
    flex: 0 0 158px !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 158px !important;
    margin: 0 !important;
    padding: 16px 16px 6px !important;
    border-radius: 0 !important;
    background: #fff !important;
    overflow: hidden !important;
}

.nx-home .nx-rail .dk-product-thumb .slider-pic {
    width: 100% !important;
    height: 134px !important;
    max-width: 100% !important;
    background: #fff !important;
    object-fit: contain !important;
}

.nx-home .nx-rail .dk-gallery-count {
    position: absolute !important;
    left: 12px !important;
    bottom: 4px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 4px;
    min-width: 30px;
    height: 21px;
    padding: 0 7px;
    border-radius: 11px;
    background: var(--nx-soft) !important;
    color: var(--nx-muted) !important;
    font-size: 11px;
}

.nx-home .nx-rail .product-discount-badge {
    position: absolute !important;
    top: 10px !important;
    right: 12px !important;
    left: auto !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 22px;
    padding: 0 !important;
    border-radius: 11px !important;
    background: var(--nx-red) !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 900 !important;
}

.nx-home .nx-rail .product-card-body {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    min-height: 0 !important;
    padding: 6px 14px 12px !important;
    overflow: hidden !important;
}

.nx-home .nx-rail .product-title {
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    min-height: 44px !important;
    max-height: 44px !important;
    margin: 0 !important;
    overflow: hidden !important;
    color: var(--nx-text) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.75 !important;
}

.nx-home .nx-rail .product-title:hover {
    color: var(--nx-red) !important;
}

.nx-home .nx-rail .product-card-meta {
    min-height: 38px !important;
    max-height: 38px !important;
    margin-top: 6px !important;
    gap: 2px !important;
    overflow: hidden !important;
    color: var(--nx-muted) !important;
    font-size: 11px !important;
    line-height: 1.7 !important;
}

/* توضیح کوتاه در کارت ریل جا نمی‌شود؛ فقط کد فنی و خودرو نمایش داده می‌شود */
.nx-home .nx-rail .product-card-meta p {
    display: none !important;
}

.nx-home .nx-rail .product-price-row {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: center !important;
    gap: 2px !important;
    margin: 0 0 auto !important;
    margin-top: auto !important;
    min-height: 42px !important;
}

.nx-home .nx-rail .product-old-price {
    color: var(--nx-muted) !important;
    font-size: 12px !important;
}

.nx-home .nx-rail .product-price {
    color: var(--nx-ink) !important;
    font-size: 16px !important;
    font-weight: 900 !important;
}

.nx-home .nx-rail .product-price small {
    margin-right: 4px;
    color: var(--nx-muted) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
}

.nx-home .nx-rail .add-cart-btn {
    display: flex !important;
    flex: 0 0 38px !important;
    align-items: center;
    justify-content: center;
    height: 38px !important;
    min-height: 38px !important;
    margin: 8px 0 0 !important;
    border: 1px solid var(--nx-red) !important;
    border-radius: var(--nx-radius) !important;
    background: var(--nx-red) !important;
    color: #fff !important;
    font-size: 12.5px !important;
    font-weight: 800 !important;
}

.nx-home .nx-rail .add-cart-btn:hover {
    background: var(--nx-red-dark) !important;
    border-color: var(--nx-red-dark) !important;
}

/* ==========================================================================
   ۴) عناصر مشترک صفحات داخلی (مسیر صفحه، دکمه، فیلد فرم)
   ========================================================================== */

.nx-breadcrumb {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    min-height: 40px;
    margin-bottom: 4px;
    color: var(--nx-muted);
    font-size: 12px;
}

.nx-breadcrumb a {
    color: var(--nx-muted) !important;
}

.nx-breadcrumb a:hover {
    color: var(--nx-red) !important;
}

.nx-breadcrumb i {
    font-size: 9px;
    opacity: .6;
}

.nx-breadcrumb b {
    color: var(--nx-text);
    font-weight: 700;
}

.nx-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    height: 40px;
    padding: 0 20px;
    border: 1px solid var(--nx-red);
    border-radius: var(--nx-radius);
    background: var(--nx-red);
    color: #fff !important;
    font-size: 13px;
    font-weight: 800;
}

.nx-btn:hover {
    background: var(--nx-red-dark);
    border-color: var(--nx-red-dark);
}

.nx-btn-ghost {
    border-color: var(--nx-line);
    background: #fff;
    color: var(--nx-ink) !important;
}

.nx-btn-ghost:hover {
    border-color: var(--nx-red);
    background: #fff;
    color: var(--nx-red) !important;
}

/* فیلدهای فرم: همان زبان بصری جعبه جستجوی هدر */
.nx-field {
    position: relative;
    display: flex;
    align-items: center;
    height: 42px;
    border: 1px solid transparent;
    border-radius: var(--nx-radius);
    background: var(--nx-soft);
    transition: border-color .18s ease;
}

.nx-field:focus-within {
    border-color: var(--nx-red);
}

.nx-field > i {
    flex: 0 0 auto;
    padding-right: 12px;
    color: var(--nx-muted);
    font-size: 13px;
    pointer-events: none;
}

.nx-field input,
.nx-field select {
    flex: 1 1 auto;
    width: 100%;
    min-width: 0;
    height: 100%;
    padding: 0 10px;
    border: 0;
    background: transparent;
    color: var(--nx-ink);
    font-size: 13px;
    outline: none;
}

.nx-field input::placeholder {
    color: var(--nx-muted);
}

/* فلش سفارشی به‌جای فلش پیش‌فرض مرورگر */
.nx-field-select select {
    padding-right: 12px;
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
}

.nx-field-select > i:last-child {
    padding: 0 0 0 12px;
    font-size: 10px;
}

.nx-field-label {
    display: flex;
    align-items: center;
    gap: 7px;
    margin: 16px 0 8px;
    color: var(--nx-ink);
    font-size: 13px;
    font-weight: 800;
}

.nx-field-label i {
    color: var(--nx-red);
    font-size: 12px;
}

/* ==========================================================================
   ۵) صفحه جستجو و فهرست قطعات
   ========================================================================== */

/* overflow-x: hidden ارثی از .nx-home یک قاب پیمایش می‌سازد و ستون‌های sticky را
   از کار می‌اندازد؛ clip همان جلوگیری از سرریز افقی را بدون قاب پیمایش انجام می‌دهد */
.nx-shop,
.nx-detail {
    overflow-x: clip;
}

.nx-shop-layout {
    display: grid;
    grid-template-columns: 268px minmax(0, 1fr);
    align-items: start;
    gap: 16px;
}

.nx-shop-side,
.nx-shop-main {
    min-width: 0;
}

.nx-shop-side {
    position: sticky;
    top: 14px;
}

.nx-side-card .nx-card-head {
    height: 50px;
    padding: 0 14px;
}

.nx-side-card .nx-card-head h2 {
    font-size: 14px;
}

.nx-side-body {
    padding: 14px;
}

.nx-filter-list {
    max-height: 420px;
    margin: 0;
    padding: 0;
    overflow-y: auto;
    list-style: none;
}

.nx-filter-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 8px;
    border-radius: var(--nx-radius);
    color: var(--nx-text);
    font-size: 12.5px;
    cursor: pointer;
    transition: background .18s ease;
}

.nx-filter-item:hover {
    background: var(--nx-soft);
}

.nx-filter-item input {
    flex: 0 0 auto;
    width: 16px;
    height: 16px;
    margin: 0;
    accent-color: var(--nx-red);
    cursor: pointer;
}

.nx-filter-item > i {
    width: 18px;
    color: var(--nx-teal);
    font-size: 12px;
    text-align: center;
}

.nx-filter-item span {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.nx-filter-item b {
    flex: 0 0 auto;
    padding: 1px 7px;
    border-radius: 9px;
    background: var(--nx-soft);
    color: var(--nx-muted);
    font-size: 11px;
    font-weight: 700;
}

.nx-filter-item:has(input:checked) {
    background: var(--nx-red-soft);
    color: var(--nx-red);
    font-weight: 800;
}

.nx-filter-item:has(input:checked) > i {
    color: var(--nx-red);
}

.nx-side-banner {
    min-height: 0;
    padding: 18px;
}

.nx-side-banner > i {
    font-size: 34px;
}

/* ---------- نوار بالای نتایج ---------- */

.nx-results-head h2 {
    font-size: 14px;
}

.nx-sort {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--nx-muted);
    font-size: 12px;
}

.nx-sort-field {
    height: 36px;
    border-color: var(--nx-line);
    background: #fff;
}

.nx-sort-field select {
    padding: 0 12px 0 6px;
    font-size: 12.5px;
    font-weight: 700;
}

/* ---------- شبکه کارت‌ها ---------- */
/* خطوط جداکننده مثل ریل صفحه اصلی با فاصله ۱px روی زمینه خاکستری ساخته می‌شود */

.nx-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1px;
    padding: 1px;
    background: var(--nx-soft);
}

/* کارت شبکه‌ای: همان زبان بصری کارت ریل صفحه اصلی، فقط بلندتر
   چون در فهرست، تصویر بزرگ‌تر و دکمه خرید مهم‌تر است */
.nx-gcard {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    background: #fff;
    transition: box-shadow .18s ease;
}

.nx-gcard:hover {
    z-index: 2;
    box-shadow: 0 4px 16px rgba(35, 37, 78, .13);
}

.nx-gcard .product-discount-badge {
    position: absolute !important;
    top: 12px !important;
    right: 14px !important;
    left: auto !important;
    z-index: 3;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 22px;
    padding: 0 !important;
    border-radius: 11px !important;
    background: var(--nx-red) !important;
    color: #fff !important;
    box-shadow: none !important;
    font-size: 12px !important;
    font-weight: 900 !important;
}

.nx-gcard-fav {
    position: absolute;
    top: 10px;
    left: 12px;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    color: var(--nx-muted);
    font-size: 14px;
    cursor: pointer;
}

.nx-gcard-fav:hover,
.nx-gcard-fav .fas {
    color: var(--nx-red);
}

.nx-gcard-thumb {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 196px;
    padding: 18px 18px 6px;
    background: #fff;
    overflow: hidden;
}

.nx-gcard-thumb .slider-pic {
    width: 100% !important;
    height: 100% !important;
    max-width: 100%;
    margin: 0 !important;
    background: #fff;
    object-fit: contain !important;
    transition: transform .3s ease;
}

.nx-gcard:hover .slider-pic {
    transform: scale(1.04);
}

.nx-gcard-thumb .slider-pic.is-placeholder {
    padding: 28px;
    opacity: .35;
}

.nx-gcard-body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-height: 0;
    padding: 6px 14px 14px;
}

.nx-gcard .product-title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    min-height: 46px;
    max-height: 46px;
    margin: 0 !important;
    overflow: hidden;
    color: var(--nx-text) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.75 !important;
    text-align: right;
}

.nx-gcard .product-title:hover {
    color: var(--nx-red) !important;
}

.nx-gcard-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    min-height: 26px;
    margin: 8px 0 0;
}

.nx-gcard-meta .product-sku {
    background: var(--nx-soft) !important;
    color: var(--nx-text) !important;
}

.nx-gcard-meta .product-car {
    background: #e6f8fb !important;
    color: #0d8898 !important;
}

.nx-gcard .product-price-row {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
    gap: 2px;
    min-height: 46px;
    margin: auto 0 0 !important;
}

.nx-gcard .product-old-price {
    color: var(--nx-muted) !important;
    font-size: 12px !important;
}

.nx-gcard .product-price {
    color: var(--nx-ink) !important;
    font-size: 16px !important;
    font-weight: 900 !important;
}

.nx-gcard .product-price small {
    margin-right: 4px;
    color: var(--nx-muted) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
}

.nx-gcard .add-cart-btn {
    display: flex;
    flex: 0 0 40px;
    align-items: center;
    justify-content: center;
    height: 40px !important;
    margin: 10px 0 0 !important;
    padding: 0 8px !important;
    border: 1px solid var(--nx-red) !important;
    border-radius: var(--nx-radius) !important;
    background: var(--nx-red) !important;
    color: #fff !important;
    box-shadow: none !important;
    font-size: 12.5px !important;
    font-weight: 800 !important;
}

.nx-gcard .add-cart-btn:hover {
    background: var(--nx-red-dark) !important;
    border-color: var(--nx-red-dark) !important;
    box-shadow: none !important;
}

/* ---------- صفحه‌بندی ---------- */

.nx-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0 !important;
    padding: 18px 14px !important;
    border-top: 1px solid var(--nx-soft);
    list-style: none;
}

/* paging.js همان نشانه‌گذاری قدیمی را می‌سازد؛ قاب دایره‌ای li خنثی می‌شود
   تا ظاهر دکمه‌ها روی خود <a> ساخته شود */
.nx-pagination li,
.nx-pagination li.active {
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.nx-pagination li a {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 10px !important;
    border: 1px solid var(--nx-line) !important;
    border-radius: var(--nx-radius) !important;
    background: #fff !important;
    color: var(--nx-text) !important;
    font-size: 13px;
    font-weight: 700;
}

.nx-pagination li a:hover {
    border-color: var(--nx-red) !important;
    color: var(--nx-red) !important;
}

.nx-pagination li.active a,
.nx-pagination li a.active {
    border-color: var(--nx-red) !important;
    background: var(--nx-red) !important;
    color: #fff !important;
}

.nx-pagination li.myDisableClass a,
.nx-pagination li a.myDisableClass {
    opacity: .45;
    pointer-events: none;
}

/* ---------- حالت «نتیجه‌ای پیدا نشد» ---------- */

.nx-empty {
    grid-column: 1 / -1;
    padding: 44px 20px;
    background: #fff;
    text-align: center;
}

.nx-empty-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 84px;
    height: 84px;
    margin: 0 auto 16px;
    border-radius: 50%;
    background: var(--nx-red-soft);
    color: var(--nx-red);
    font-size: 30px;
}

.nx-empty h3 {
    margin: 0 0 8px;
    color: var(--nx-ink);
    font-size: 16px;
    font-weight: 900;
}

.nx-empty > p {
    margin: 0 0 18px;
    color: var(--nx-muted);
    font-size: 13px;
}

.nx-empty-tips {
    max-width: 430px;
    margin: 0 auto 20px;
    padding: 0;
    list-style: none;
    text-align: right;
}

.nx-empty-tips li {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 7px;
    padding: 10px 12px;
    border-radius: var(--nx-radius);
    background: var(--nx-bg);
    color: var(--nx-text);
    font-size: 12.5px;
    line-height: 1.9;
}

.nx-empty-tips i {
    width: 18px;
    color: var(--nx-teal);
    text-align: center;
}

.nx-empty-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

/* ==========================================================================
   ۶) صفحه نمایش قطعه
   ========================================================================== */

.nx-detail .dk-product-detail {
    display: grid;
    grid-template-columns: 370px minmax(0, 1fr) 300px;
    gap: 24px;
    padding: 20px;
    background: #fff;
    /* .nx-card مقدار hidden دارد و جعبه خرید sticky را می‌شکند */
    overflow: visible;
}

.nx-detail .dk-product-gallery {
    position: relative;
    min-width: 0;
    border-left: 1px solid var(--nx-soft);
}

.nx-detail .dk-product-actions {
    position: absolute;
    top: 6px;
    right: 0;
    z-index: 2;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.nx-detail .dk-product-actions button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: var(--nx-muted);
    font-size: 16px;
    transition: .18s ease;
}

.nx-detail .dk-product-actions button:hover {
    background: var(--nx-red-soft);
    color: var(--nx-red);
}

.nx-detail .dk-product-main-image {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 390px;
    padding: 20px 42px 12px;
}

.nx-detail .dk-product-main-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.nx-detail .dk-product-thumbs {
    display: flex;
    gap: 8px;
    padding: 10px 42px;
    overflow-x: auto;
}

.nx-detail .dk-product-thumbs .product-thumb {
    flex: 0 0 auto;
    width: 62px !important;
    height: 62px !important;
    margin: 0 !important;
    padding: 5px !important;
    border: 1px solid var(--nx-line) !important;
    border-radius: var(--nx-radius) !important;
    background: #fff !important;
    transition: border-color .18s ease;
}

.nx-detail .dk-product-thumbs .product-thumb:hover,
.nx-detail .dk-product-thumbs .product-thumb.active {
    border-color: var(--nx-red) !important;
}

.nx-detail .dk-product-thumbs img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.nx-detail .dk-product-info {
    min-width: 0;
}

.nx-detail .dk-product-info h1 {
    margin: 0 0 14px;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--nx-soft);
    color: var(--nx-ink);
    font-size: 18px;
    font-weight: 900;
    line-height: 2;
}

.nx-detail .dk-short-desc {
    margin: 0;
    color: var(--nx-muted);
    font-size: 13px;
    line-height: 2.1;
}

.nx-detail .dk-product-info h2 {
    margin: 18px 0 12px;
    color: var(--nx-ink);
    font-size: 15px;
    font-weight: 900;
}

.nx-detail .dk-product-info ul {
    display: grid;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.nx-detail .dk-product-info li {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 38px;
    padding: 8px 12px;
    border-radius: var(--nx-radius);
    background: var(--nx-soft);
    color: var(--nx-text);
    font-size: 13px;
}

.nx-detail .dk-product-info li span {
    flex: 0 0 108px;
    margin: 0;
    color: var(--nx-muted);
}

.nx-detail .dk-assurance {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
    margin-top: 18px;
    color: var(--nx-muted);
    font-size: 12.5px;
}

.nx-detail .dk-assurance span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.nx-detail .dk-assurance i {
    color: var(--nx-teal);
}

/* ---------- جعبه خرید ---------- */

/* ستون سمت چپ = جعبه‌ی خرید + نمودار قیمت. sticky روی خودِ ستون است نه روی
   جعبه‌ی خرید؛ اگر جعبه به‌تنهایی sticky می‌ماند، هنگام اسکرول روی نمودارِ
   زیرش می‌افتاد. برای ستون بلندتر از پنجره، اسکرول داخلی باز می‌شود تا
   انتهای نمودار هم در دسترس بماند. */
.nx-detail .dk-buy-col {
    position: sticky;
    top: 14px;
    align-self: start;
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
    max-height: calc(100vh - 28px);
    overflow-y: auto;
    scrollbar-width: thin;
}

.nx-detail .dk-buy-box {
    min-width: 0;
    padding: 16px !important;
    border: 1px solid var(--nx-line) !important;
    border-radius: 10px !important;
    background: #fff !important;
    box-shadow: none !important;
}

.nx-detail .product-seller-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 11px 0 !important;
    border-bottom: 1px solid var(--nx-soft) !important;
    background: transparent !important;
    color: var(--nx-muted);
    font-size: 12.5px;
}

.nx-detail .product-seller-row span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.nx-detail .product-seller-row i {
    color: var(--nx-teal);
}

.nx-detail .product-seller-row b {
    color: var(--nx-ink);
    font-weight: 800;
}

.nx-detail .dk-detail-old {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 14px;
}

.nx-detail .dk-detail-old del {
    color: var(--nx-muted);
    font-size: 13px;
}

.nx-detail .dk-detail-discount {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 24px;
    padding: 0 8px;
    border-radius: 12px;
    background: var(--nx-red);
    color: #fff;
    font-size: 12px;
    font-weight: 900;
}

.nx-detail .dk-detail-price {
    margin: 10px 0 16px;
    color: var(--nx-ink);
    font-size: 24px;
    font-weight: 900;
    text-align: left;
    direction: rtl;
}

.nx-detail .dk-detail-price small {
    color: var(--nx-muted);
    font-size: 12px;
    font-weight: 700;
}

/* ---------- فروش عمده ---------- */

/* برچسبی که کنار قیمت روشن می‌شود وقتی تعداد انتخابی به آستانه‌ی عمده رسیده */
.dk-price-mode {
    display: inline-block;
    margin-right: 8px;
    padding: 3px 9px;
    border-radius: 999px;
    background: #e8f6ef;
    color: #0f7d4c;
    font-size: 11.5px;
    font-weight: 900;
    vertical-align: middle;
}

.dk-price-mode[hidden] {
    display: none;
}

.dk-wholesale {
    margin: 0 0 16px;
    padding: 12px 14px;
    border: 1px solid #cfe9dd;
    border-radius: 10px;
    background: #f4fbf8;
}

.dk-wholesale-head {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
    color: #0c7a53;
    font-size: 13.5px;
    font-weight: 900;
}

.dk-wholesale-head i {
    font-size: 15px;
}

.dk-wholesale-off {
    margin-right: auto;
    padding: 3px 9px;
    border-radius: 999px;
    background: #0f7d4c;
    color: #fff;
    font-size: 11.5px;
    font-weight: 900;
}

/* سطر اصلی: تعداد آستانه و قیمت واحد، همان چیزی که برای تصمیم لازم است */
.dk-wholesale-main {
    margin: 0;
    color: #3f4064;
    font-size: 13px;
    line-height: 1.9;
}

.dk-wholesale-main b {
    color: #0c7a53;
    font-weight: 900;
}

.dk-wholesale-ship {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: #0c7a53;
    font-size: 10.5px;
    font-weight: 800;
}

.dk-wholesale-warn {
    margin: 8px 0 0;
    color: #8a6100;
    font-size: 12px;
}

.dk-wholesale-warn i {
    margin-left: 4px;
    color: #f0b429;
}

.dk-wholesale-warn i {
    margin-left: 4px;
    color: #f0b429;
}

/* حالت فعال: کاربر تعداد را به آستانه رسانده است */
.dk-wholesale.is-active {
    border-color: #0f7d4c;
    box-shadow: 0 0 0 3px rgba(23, 165, 102, .12);
}

/* نوار «چقدر مانده تا عمده» و دکمه‌ی پرش به آستانه */
.dk-wholesale-progress {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px dashed #cfe9dd;
}

.dk-wholesale-remain {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: #8a6100;
    font-size: 12.5px;
    font-weight: 800;
}

.dk-wholesale-remain i {
    color: #f0b429;
}

.dk-wholesale-remain.is-done {
    color: #0c7a53;
}

.dk-wholesale-remain.is-done i {
    color: #0f7d4c;
}

.dk-wholesale-jump {
    margin-right: auto;
    padding: 5px 12px;
    border: 1px solid #0f7d4c;
    border-radius: 999px;
    background: #fff;
    color: #0c7a53;
    font-family: inherit;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
}

.dk-wholesale-jump:hover {
    background: #0f7d4c;
    color: #fff;
}

.dk-wholesale-jump[hidden] {
    display: none;
}

/* برچسب کارت محصول در فهرست‌ها */
.nx-pcard-wholesale {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-top: 6px;
    padding: 2px 8px;
    border-radius: 999px;
    background: #e8f6ef;
    color: #0c7a53;
    font-size: 10.5px;
    font-weight: 800;
}

.nx-detail .dk-buy-box .add-cart-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 48px !important;
    margin: 0 !important;
    border: 1px solid var(--nx-red) !important;
    border-radius: var(--nx-radius) !important;
    background: var(--nx-red) !important;
    color: #fff !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 800 !important;
}

.nx-detail .dk-buy-box .add-cart-btn:hover {
    background: var(--nx-red-dark) !important;
    border-color: var(--nx-red-dark) !important;
}

/* ---------- توضیحات ---------- */

.nx-detail .dk-detail-tabs {
    padding: 0;
    border: 0 !important;
    box-shadow: none !important;
}

.nx-detail .dk-detail-tabs-body {
    padding: 18px;
    color: var(--nx-text);
    font-size: 13.5px;
    line-height: 2.1;
}

.nx-detail .dk-detail-tabs-body p:last-child {
    margin-bottom: 0;
}

.nx-detail .product-description-html img {
    max-width: 100%;
    height: auto;
    border-radius: var(--nx-radius);
}

/* ==========================================================================
   ۷) واکنش‌گرایی
   ========================================================================== */

@media (max-width: 1199px) {
    .nx-circles {
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }

    .nx-cars {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .nx-posts {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .nx-shop-layout {
        grid-template-columns: 240px minmax(0, 1fr);
    }

    .nx-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .nx-detail .dk-product-detail {
        grid-template-columns: 300px minmax(0, 1fr) 268px;
        gap: 16px;
    }

    .nx-detail .dk-product-main-image {
        height: 320px;
        padding: 16px 20px 10px;
    }

    .nx-detail .dk-product-thumbs {
        padding: 10px 20px;
    }
}

@media (max-width: 991px) {
    .nx-wrap {
        width: calc(100% - 24px);
    }

    .nx-slide-promo {
        height: 230px;
    }

    .nx-slide-promo {
        padding: 0 28px;
    }

    .nx-slide-copy strong {
        font-size: 24px;
    }

    .nx-slide-copy p {
        margin: 8px 0 14px;
        font-size: 13px;
    }

    .nx-slide-art {
        left: 20px;
        font-size: 96px;
    }

    .nx-hero-slider .owl-dots {
        right: 28px;
        bottom: 12px;
    }

    .nx-circles {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 14px 8px;
    }

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

    .nx-amazing-side {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        gap: 8px 12px;
        padding: 4px 4px 14px;
    }

    .nx-amazing-side > i {
        font-size: 24px;
    }

    .nx-amazing-side strong {
        font-size: 20px;
    }

    .nx-amazing-side a {
        margin: 0;
    }

    .nx-banners {
        grid-template-columns: 1fr;
    }

    .nx-cars {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .nx-posts {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    /* در تبلت و موبایل، فیلترها زیر نتایج می‌روند تا کاربر مستقیم به کارت‌ها برسد */
    .nx-shop-layout {
        grid-template-columns: minmax(0, 1fr);
    }

    .nx-shop-side {
        position: static;
        order: 2;
    }

    .nx-shop-main {
        order: 1;
    }

    .nx-filter-list {
        max-height: none;
    }

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

    .nx-detail .dk-product-detail {
        grid-template-columns: minmax(0, 1fr);
        gap: 18px;
        padding: 16px;
    }

    .nx-detail .dk-product-gallery {
        border-left: 0;
        border-bottom: 1px solid var(--nx-soft);
        padding-bottom: 8px;
    }

    .nx-detail .dk-buy-col {
        position: static;
        max-height: none;
        overflow: visible;
    }
}

@media (max-width: 575px) {
    .nx-home {
        padding-top: 12px;
    }

    .nx-slide-promo {
        height: 180px;
        padding: 0 20px;
    }

    /* زیر ۵۷۶ پیکسل نسخه‌ی موبایل اسلاید (۸۰۰×۴۸۰) سرو می‌شود */
    .nx-slide > picture > img {
        aspect-ratio: 5 / 3;
    }

    .nx-slide-copy strong {
        font-size: 19px;
    }

    .nx-slide-copy p {
        display: none;
    }

    .nx-slide-copy small {
        margin-bottom: 8px;
    }

    .nx-slide-cta {
        height: 36px;
        padding: 0 16px;
        font-size: 12.5px;
    }

    .nx-slide-art {
        font-size: 74px;
    }

    /* مثل نسخه موبایل دیجی‌کالا، فلش‌ها حذف و فقط نقطه‌ها می‌مانند */
    .nx-hero-slider .owl-nav {
        display: none;
    }

    .nx-hero-slider .owl-dots {
        right: 20px;
        bottom: 10px;
    }

    .nx-circles {
        gap: 12px 6px;
        padding: 14px 6px;
    }

    .nx-circle {
        font-size: 11px;
    }

    .nx-circle i {
        width: 52px;
        height: 52px;
        font-size: 19px;
    }

    .nx-banner {
        flex-direction: column;
        align-items: flex-start;
        text-align: right;
    }

    .nx-card-head {
        height: 52px;
        padding: 0 14px;
    }

    .nx-card-head h2 {
        font-size: 14px;
    }

    .nx-cars,
    .nx-posts {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        padding: 12px;
    }

    /* در موبایل هم دو ستونی می‌ماند تا کاورها بیش از حد بلند نشوند */
    .nx-post h3 {
        height: 46px;
        font-size: 12.5px;
        line-height: 1.75;
    }

    .nx-post p {
        display: none;
    }

    .nx-results-head {
        height: auto;
        flex-wrap: wrap;
        gap: 8px;
        padding: 12px 14px;
    }

    .nx-gcard-thumb {
        height: 150px;
        padding: 14px 14px 4px;
    }

    .nx-gcard-body {
        padding: 6px 10px 12px;
    }

    /* در عرض کم، برچسب دکمه نباید دو خطی شود */
    .nx-gcard .add-cart-btn {
        font-size: 11px !important;
        white-space: nowrap;
    }

    .nx-gcard-meta .product-car {
        display: none !important;
    }

    .nx-pagination {
        padding: 14px 8px !important;
    }

    .nx-empty {
        padding: 32px 14px;
    }

    .nx-detail .dk-product-main-image {
        height: 260px;
        padding: 12px 14px 8px;
    }

    .nx-detail .dk-product-thumbs {
        padding: 10px 14px;
    }

    .nx-detail .dk-product-info h1 {
        font-size: 16px;
    }

    .nx-detail .dk-product-info li {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }

    .nx-detail .dk-detail-tabs-body {
        padding: 14px;
    }

    .nx-home .nx-rail .dk-product-card {
        height: auto !important;
        min-height: 336px !important;
        max-height: none !important;
    }

    .nx-home .nx-rail .dk-product-thumb {
        flex-basis: 142px !important;
        height: 142px !important;
        padding: 12px 12px 4px !important;
    }

    .nx-home .nx-rail .dk-product-thumb .slider-pic {
        height: 122px !important;
    }

    .nx-rail-nav {
        top: 62px;
        width: 30px;
        height: 30px;
    }

    /* در عرض کم، برچسب دکمه نباید دو خطی شود */
    .nx-home .nx-rail .add-cart-btn {
        padding: 0 6px !important;
        font-size: 11px !important;
        white-space: nowrap;
    }
}


/* ==========================================================================
   نمودار تاریخچه‌ی قیمت و واحد شمارش (صفحه‌ی محصول)
   ========================================================================== */

.nx-price-chart .nx-pc-body {
    padding: 16px 18px 18px;
}

/* سه عدد کلیدی بالای نمودار: کمترین، بیشترین و قیمت فعلی */
.nx-pc-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-bottom: 14px;
}

.nx-pc-stat {
    padding: 9px 12px;
    border: 1px solid var(--nx-line);
    border-radius: 10px;
    text-align: center;
}

.nx-pc-stat span {
    display: block;
    margin-bottom: 4px;
    color: var(--nx-muted);
    font-size: 11.5px;
}

.nx-pc-stat b {
    color: var(--nx-ink);
    font-size: 14px;
    font-weight: 900;
}

.nx-pc-stat b.is-low  { color: #0c7a53; }
.nx-pc-stat b.is-high { color: var(--nx-red); }

/* نشانگر گران/ارزان‌شدن، کنار عنوان کارت */
.nx-pc-change {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
}

.nx-pc-change.is-up   { background: #fdecef; color: var(--nx-red); }
.nx-pc-change.is-down { background: #e9f8f1; color: #0c7a53; }
.nx-pc-change.is-flat { background: var(--nx-soft); color: var(--nx-muted); }

.nx-pc-canvas svg {
    display: block;
    width: 100%;
    height: auto;
    overflow: visible;
}

.nx-pc-grid {
    stroke: var(--nx-line);
    stroke-width: 1;
    stroke-dasharray: 4 4;
}

.nx-pc-line {
    fill: none;
    stroke: var(--nx-red);
    stroke-width: 2.5;
    stroke-linejoin: round;
    stroke-linecap: round;
}

.nx-pc-stop-top    { stop-color: #d33449; stop-opacity: .22; }
.nx-pc-stop-bottom { stop-color: #d33449; stop-opacity: 0; }

.nx-pc-dot {
    fill: #fff;
    stroke: var(--nx-red);
    stroke-width: 2.5;
    transition: r .12s ease;
}

/* هدفِ لمس/هاور، بزرگ‌تر از نقطه‌ی دیده‌شده تا روی موبایل هم بگیرد */
.nx-pc-hit {
    fill: transparent;
    cursor: pointer;
}

.nx-pc-point:hover .nx-pc-dot {
    r: 5.5;
}

.nx-pc-ylabel,
.nx-pc-xlabel {
    fill: var(--nx-muted);
    font-size: 11px;
    font-family: inherit;
}

.nx-pc-ylabel { text-anchor: start; }

.nx-pc-note {
    margin: 12px 0 0;
    color: var(--nx-muted);
    font-size: 11.5px;
    line-height: 1.9;
}

/* ---------- نسخه‌ی فشرده‌ی نمودار در ستون خرید ---------- */

/* در ستون خرید، کارتِ نمودار با gap ستون فاصله می‌گیرد نه با margin کارت */
.nx-price-chart.is-compact {
    margin-bottom: 0;
    border: 1px solid var(--nx-line);
}

.nx-price-chart.is-compact .nx-card-head {
    flex-wrap: wrap;
    height: auto;
    min-height: 44px;
    padding: 8px 12px;
    gap: 6px 10px;
}

.nx-price-chart.is-compact .nx-card-head h2 {
    font-size: 13px;
}

.nx-price-chart.is-compact .nx-pc-change {
    padding: 3px 8px;
    font-size: 11px;
}

.nx-price-chart.is-compact .nx-pc-body {
    padding: 10px 12px 12px;
}

/* در ستون باریک، سه عدد کنار هم جا نمی‌شود؛ سطری می‌شوند مثل حالت موبایل */
.nx-price-chart.is-compact .nx-pc-stats {
    grid-template-columns: 1fr;
    gap: 6px;
    margin-bottom: 10px;
}

.nx-price-chart.is-compact .nx-pc-stat {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 6px 10px;
    text-align: right;
}

.nx-price-chart.is-compact .nx-pc-stat span {
    margin-bottom: 0;
}

.nx-price-chart.is-compact .nx-pc-stat b {
    font-size: 13px;
}

/* وقتی ستون در تبلت/موبایل تمام‌عرض می‌شود، بومِ ۳۲۰ واحدی کش می‌آید و
   متن‌های داخل SVG بی‌قواره بزرگ می‌شوند */
.nx-price-chart.is-compact .nx-pc-canvas {
    max-width: 420px;
    margin-inline: auto;
}

/* متن در بوم کوچک‌تر باید عدد بزرگ‌تری باشد تا روی صفحه هم‌اندازه بماند */
.nx-price-chart.is-compact .nx-pc-ylabel,
.nx-price-chart.is-compact .nx-pc-xlabel {
    font-size: 13px;
}

.nx-price-chart.is-compact .nx-pc-line {
    stroke-width: 2;
}

.nx-price-chart.is-compact .nx-pc-dot {
    r: 3;
    stroke-width: 2;
}

.nx-price-chart.is-compact .nx-pc-point:hover .nx-pc-dot {
    r: 4.5;
}

/* ---------- واحد شمارش و تعداد در بسته ---------- */

.dk-unit-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin: 10px 0;
    font-size: 13px;
}

.dk-unit-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 11px;
    border: 1px solid var(--nx-line);
    border-radius: 999px;
    color: var(--nx-text);
    font-weight: 700;
}

.dk-unit-chip i {
    color: var(--nx-muted);
    font-size: 12px;
}

/* بسته‌ی چندتایی هشدار است نه تزئین: کاربر باید بداند یک خرید، چند عدد است */
.dk-pack-note {
    display: flex;
    align-items: center;
    gap: 7px;
    margin: 10px 0;
    padding: 9px 12px;
    border-radius: 10px;
    background: #fff8e6;
    color: #8a6100;
    font-size: 12.5px;
    font-weight: 700;
    line-height: 1.8;
}

.dk-pack-note i {
    flex-shrink: 0;
    font-size: 14px;
}

@media (max-width: 575px) {
    .nx-pc-stats {
        grid-template-columns: 1fr;
        gap: 7px;
    }

    .nx-pc-stat {
        display: flex;
        align-items: center;
        justify-content: space-between;
        text-align: right;
    }

    .nx-pc-stat span { margin-bottom: 0; }
}


/* لینک‌های داخل متن توضیح محصول فقط با رنگ از متن جدا می‌شدند؛ برای کسی که
   رنگ‌ها را متفاوت می‌بیند هیچ نشانه‌ای نمی‌ماند. زیرخط، همان نشانه‌ی همیشگی. */
.product-description-html a,
.nx-article-body a,
.cart-content a:not([class]) {
    color: var(--nx-teal);
    text-decoration: underline;
}

/* /assets/css/mobile-appbar.css */
/* =========================================================
   نوار پایین چسبان موبایل (حس اپلیکیشن)
   فقط زیر 992px نمایش داده می‌شود
   ========================================================= */

:root {
    --appbar-h: 58px;
    --appbar-accent: #d33449;
    --appbar-ink: #3f4064;
    --appbar-muted: #666a70;
    --appbar-line: #e6e6ea;
}

.mobile-appbar {
    display: none;
}

@media (max-width: 991.98px) {

    /* فضای خالی انتهای صفحه تا نوار روی محتوا/فوتر نیفتد */
    body {
        padding-bottom: calc(var(--appbar-h) + env(safe-area-inset-bottom, 0px));
    }

    .mobile-appbar {
        position: fixed;
        right: 0;
        left: 0;
        bottom: 0;
        z-index: 1035; /* زیر offcanvas بوت‌استرپ (1045) */
        display: flex;
        align-items: stretch;
        height: calc(var(--appbar-h) + env(safe-area-inset-bottom, 0px));
        padding-bottom: env(safe-area-inset-bottom, 0px);
        background: rgba(255, 255, 255, 0.94);
        -webkit-backdrop-filter: saturate(180%) blur(14px);
        backdrop-filter: saturate(180%) blur(14px);
        border-top: 1px solid var(--appbar-line);
        box-shadow: 0 -6px 24px rgba(35, 37, 78, 0.10);
    }

    .mobile-appbar__item {
        position: relative;
        flex: 1 1 0;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 3px;
        padding: 6px 2px 4px;
        color: var(--appbar-muted);
        font-size: 10.5px;
        font-weight: 700;
        line-height: 1;
        text-decoration: none;
        background: none;
        border: 0;
        -webkit-tap-highlight-color: transparent;
        transition: color .2s ease, transform .12s ease;
    }

    .mobile-appbar__item:active {
        transform: scale(.92);
    }

    .mobile-appbar__item:focus-visible {
        outline: 2px solid var(--appbar-accent);
        outline-offset: -4px;
        border-radius: 10px;
    }

    /* آیکن داخل یک قرص که در حالت فعال رنگی می‌شود */
    .mobile-appbar__icon {
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 26px;
        border-radius: 999px;
        background: transparent;
        transition: background .24s ease, transform .24s cubic-bezier(.22,.61,.36,1);
    }

    .mobile-appbar__icon i {
        font-size: 17px;
        line-height: 1;
    }

    .mobile-appbar__label {
        display: block;
        max-width: 100%;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

    /* حالت فعال */
    .mobile-appbar__item.is-active {
        color: var(--appbar-accent);
    }

    .mobile-appbar__item.is-active .mobile-appbar__icon {
        background: rgba(239, 57, 78, .10);
        transform: translateY(-1px);
    }

    /* نشانگر کوچک بالای آیتم فعال */
    .mobile-appbar__item.is-active::before {
        content: "";
        position: absolute;
        top: 0;
        right: 50%;
        transform: translateX(50%);
        width: 26px;
        height: 3px;
        border-radius: 0 0 4px 4px;
        background: var(--appbar-accent);
    }

    /* شمارنده سبد خرید */
    .mobile-appbar__badge {
        position: absolute;
        top: -4px;
        left: 4px;
        min-width: 17px;
        height: 17px;
        padding: 0 4px;
        border-radius: 999px;
        background: var(--appbar-accent);
        color: #fff;
        font-size: 10px;
        font-weight: 800;
        line-height: 17px;
        text-align: center;
        box-shadow: 0 0 0 2px #fff;
    }

    .mobile-appbar__badge.is-empty {
        display: none;
    }

    /* دکمه بازگشت به بالا نباید زیر نوار بماند */
    .topbutton {
        bottom: calc(var(--appbar-h) + 14px + env(safe-area-inset-bottom, 0px)) !important;
        z-index: 1030;
    }

    /* شیت پایین (دسته‌بندی / جستجو) */
    .app-sheet {
        height: auto !important;
        max-height: 82vh;
        border-radius: 18px 18px 0 0;
        padding-bottom: env(safe-area-inset-bottom, 0px);
        box-shadow: 0 -10px 40px rgba(35, 37, 78, .18);
    }

    .app-sheet__grabber {
        width: 42px;
        height: 4px;
        margin: 9px auto 0;
        border-radius: 999px;
        background: #d8d8de;
    }

    .app-sheet .offcanvas-header {
        padding: 8px 16px 10px;
    }

    .app-sheet .offcanvas-title {
        margin: 0;
        color: var(--appbar-ink);
        font-size: 14px;
        font-weight: 800;
    }

    .app-sheet .offcanvas-body {
        padding: 4px 16px 18px;
        overflow-y: auto;
    }

    .app-sheet__grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 10px;
    }

    .app-sheet__tile {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 7px;
        min-height: 88px;
        padding: 10px 6px;
        border: 1px solid var(--appbar-line);
        border-radius: 14px;
        background: #fff;
        color: var(--appbar-ink);
        font-size: 11.5px;
        font-weight: 700;
        line-height: 1.5;
        text-align: center;
        text-decoration: none;
        transition: transform .12s ease, border-color .2s ease;
    }

    .app-sheet__tile:active {
        transform: scale(.96);
        border-color: var(--appbar-accent);
    }

    .app-sheet__tile i {
        font-size: 19px;
        color: #11808d;
    }

    .app-sheet__tile span {
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    /* شیت جستجو */
    .app-sheet__search {
        display: flex;
        align-items: center;
        gap: 8px;
        height: 46px;
        padding: 0 12px;
        border-radius: 12px;
        background: #f1f2f4;
    }

    .app-sheet__search input {
        flex: 1 1 auto;
        min-width: 0;
        height: 100%;
        border: 0;
        background: transparent;
        color: var(--appbar-ink);
        font-size: 13px;
        outline: none;
    }

    .app-sheet__search button {
        flex-shrink: 0;
        height: 34px;
        padding: 0 14px;
        border: 0;
        border-radius: 9px;
        background: var(--appbar-accent);
        color: #fff;
        font-size: 12.5px;
        font-weight: 700;
    }

    .app-sheet__hint {
        margin: 12px 0 6px;
        color: var(--appbar-muted);
        font-size: 11.5px;
        font-weight: 700;
    }

    .app-sheet__chips {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
    }

    .app-sheet__chips a {
        padding: 7px 12px;
        border: 1px solid var(--appbar-line);
        border-radius: 999px;
        background: #fff;
        color: #62666d;
        font-size: 11.5px;
        text-decoration: none;
    }

    .app-sheet__chips a:active {
        border-color: var(--appbar-accent);
        color: var(--appbar-accent);
    }
}

@media (prefers-reduced-motion: reduce) {
    .mobile-appbar,
    .mobile-appbar__item,
    .mobile-appbar__icon,
    .app-sheet__tile {
        transition: none;
    }
}

/* /assets/css/mobile-checkout.css */
/* =========================================================
   تجربه‌ی خرید روی موبایل
   نوار عمل چسبان (خرید/ادامه/پرداخت) + اصلاح فرم‌ها و اندازه‌ی لمس
   همه‌چیز فقط زیر 992px فعال است و بالای نوار پایین (mobile-appbar) می‌نشیند
   ========================================================= */

.mobile-actionbar {
    display: none;
}

@media (max-width: 991.98px) {

    /* ---------- نوار عمل چسبان ---------- */

    .mobile-actionbar {
        position: fixed;
        right: 0;
        left: 0;
        bottom: calc(var(--appbar-h, 58px) + env(safe-area-inset-bottom, 0px));
        z-index: 1034; /* درست زیر mobile-appbar (1035) و زیر offcanvas (1045) */
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 10px 12px;
        background: #fff;
        border-top: 1px solid var(--appbar-line, #e6e6ea);
        box-shadow: 0 -8px 24px rgba(35, 37, 78, .12);
    }

    /* صفحه‌هایی که نوار عمل دارند، فضای بیشتری ته صفحه می‌خواهند */
    body.has-actionbar {
        padding-bottom: calc(var(--appbar-h, 58px) + 74px + env(safe-area-inset-bottom, 0px));
    }

    .mobile-actionbar__info {
        flex: 1 1 auto;
        min-width: 0;
        line-height: 1.5;
    }

    .mobile-actionbar__label {
        display: block;
        color: var(--appbar-muted, #666a70);
        font-size: 11px;
        font-weight: 700;
    }

    .mobile-actionbar__price {
        display: block;
        color: var(--text-dark, #23254e);
        font-size: 15px;
        font-weight: 800;
        white-space: nowrap;
    }

    .mobile-actionbar__price small {
        font-size: 11px;
        font-weight: 600;
    }

    /* دکمه‌ی اصلی: بلند و تمام‌عرضِ باقیمانده تا با شست به‌راحتی زده شود */
    .mobile-actionbar__btn {
        flex: 0 0 auto;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
        min-width: 55%;
        min-height: 46px;
        padding: 0 16px;
        border: 0;
        border-radius: 10px;
        background: var(--primary, #0f3d6e);
        color: #fff;
        font-size: 14px;
        font-weight: 700;
        text-decoration: none;
        -webkit-tap-highlight-color: transparent;
        transition: transform .12s ease, opacity .2s ease;
    }

    .mobile-actionbar__btn:active {
        transform: scale(.98);
        color: #fff;
    }

    .mobile-actionbar__btn.is-pay {
        background: linear-gradient(135deg, var(--success, #2e7d32), #43a047);
    }

    .mobile-actionbar__btn[disabled],
    .mobile-actionbar__btn.is-disabled {
        background: #ccc;
        pointer-events: none;
    }

    /* شمارنده‌ی تعداد داخل نوار خرید */
    .mobile-actionbar__qty {
        display: flex;
        align-items: center;
        gap: 2px;
        flex: 0 0 auto;
        padding: 2px;
        border: 1px solid var(--appbar-line, #e6e6ea);
        border-radius: 10px;
    }

    .mobile-actionbar__qty button {
        width: 34px;
        height: 40px;
        border: 0;
        border-radius: 8px;
        background: transparent;
        color: var(--primary, #0f3d6e);
        font-size: 17px;
        font-weight: 700;
        line-height: 1;
    }

    .mobile-actionbar__qty button:disabled {
        color: #c3c3c9;
    }

    .mobile-actionbar__qty span {
        min-width: 22px;
        text-align: center;
        font-size: 14px;
        font-weight: 800;
    }

    /* روی موبایل نسخه‌ی داخل صفحه‌ی همین دکمه‌ها تکراری است */
    .hide-on-mobile-buy {
        display: none !important;
    }

    /* ---------- فرم‌ها روی موبایل ---------- */

    /* زیر ۱۶ پیکسل، سافاری هنگام فوکوس صفحه را زوم می‌کند و کاربر
       باید دستی برگردد؛ این تنها راه استاندارد جلوگیری از آن است */
    .form-control,
    .form-select,
    input[type="text"],
    input[type="tel"],
    input[type="number"],
    input[type="email"],
    textarea,
    select {
        font-size: 16px !important;
    }

    /* ورودی‌های شمارنده از این قاعده مستثنا هستند تا با دکمه‌های کنارشان
       هم‌ارتفاع بمانند */
    .form-control:not(.qty):not(#buy-qty),
    .form-select {
        min-height: 46px;
    }

    textarea.form-control {
        min-height: 92px;
    }

    /* ---------- اندازه‌ی لمس ---------- */

    /* دکمه‌های کم/زیاد کردن تعداد؛ ۳۲ پیکسل برای شست کوچک است */
    .btn-qty {
        width: 44px !important;
        height: 44px !important;
        font-size: 1.15rem !important;
    }

    .shopping-cart-item .qty {
        width: 54px !important;
        height: 44px !important;
        min-height: 44px !important;
    }

    /* شمارنده‌ی صفحه‌ی محصول */
    .dk-buy-qty .js-qty-plus,
    .dk-buy-qty .js-qty-minus {
        width: 44px !important;
        height: 44px !important;
    }

    #buy-qty {
        width: 58px !important;
        height: 44px !important;
        min-height: 44px !important;
    }

    .delete-item {
        min-height: 38px;
        padding-inline: 12px !important;
    }

    /* ---------- خلاصه‌ی سفارش ---------- */

    /* چسباندن جعبه‌ی خلاصه روی موبایل معنایی ندارد و فقط پرش ایجاد می‌کند */
    .cart-content[style*="sticky"] {
        position: static !important;
    }

    /* ---------- گام‌های خرید ---------- */

    .checkout-steps {
        font-size: .82rem;
    }

    /* ---------- مودال آدرس ---------- */

    /* روی صفحه‌ی کوچک، مودال آدرس تمام‌قد باشد تا فیلدها جا شوند */
    #change-address-modal .modal-dialog {
        margin: 0;
        max-width: 100%;
        min-height: 100%;
    }

    #change-address-modal .modal-content {
        min-height: 100vh;
        border-radius: 0 !important;
    }

    #change-address-modal .modal-body {
        padding: 16px !important;
    }

    #change-address-modal .modal-footer {
        position: sticky;
        bottom: 0;
        padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px)) !important;
        background: #fff;
        box-shadow: 0 -6px 18px rgba(35, 37, 78, .10);
    }

    #saveAddressBtn {
        width: 100%;
        min-height: 48px;
    }

    /* ---------- ورود با کد یکبارمصرف ---------- */

    #mobile,
    #otp {
        min-height: 52px;
        font-size: 20px !important;
    }

    #sendOtpBtn,
    #verifyOtpBtn {
        min-height: 50px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .mobile-actionbar__btn {
        transition: none;
    }
}

/* /assets/css/account.css */
/* ==========================================================================
   ناحیه‌ی حساب کاربری: داشبورد، سفارش‌ها، علاقه‌مندی‌ها، اطلاعات حساب
   با همان زبان بصری بقیه‌ی سایت (قرمز/سفید) نوشته شده و جای رنگ آبی
   تم قدیمی را می‌گیرد. جدول‌ها روی هر اندازه‌ی صفحه، کارت هستند.
   ========================================================================== */

.nx-account {
    padding: 16px 0 40px;
    background: var(--nx-bg, #f5f5f5);
    direction: rtl;
}

.nx-account *,
.nx-account *::before,
.nx-account *::after {
    box-sizing: border-box;
}

.nx-account a {
    text-decoration: none;
}

.nx-account-layout {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 16px;
    align-items: start;
}

/* ---------- ستون کناری ---------- */

.nx-account-side {
    position: sticky;
    top: 14px;
    min-width: 0;
    border-radius: 12px;
    background: #fff;
    overflow: hidden;
}

.nx-account-user {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 18px 16px;
    border-bottom: 1px solid var(--nx-soft, #f0f0f1);
}

.nx-account-avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background: var(--nx-red-soft, #fff1f3);
    color: var(--nx-red, #d33449);
    font-size: 19px;
}

.nx-account-user b {
    display: block;
    color: var(--nx-ink, #23254e);
    font-size: 14px;
    font-weight: 800;
}

.nx-account-user span {
    display: block;
    margin-top: 3px;
    color: var(--nx-muted, #666a70);
    font-size: 12px;
}

.nx-account-nav {
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 6px 0;
    list-style: none;
}

.nx-account-nav a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 16px;
    color: var(--nx-text, #3f4064);
    font-size: 13.5px;
    font-weight: 600;
    border-right: 3px solid transparent;
    transition: .16s ease;
}

.nx-account-nav a i {
    width: 20px;
    text-align: center;
    color: var(--nx-muted, #666a70);
    font-size: 14px;
}

.nx-account-nav a:hover {
    background: #fafafa;
    color: var(--nx-red, #d33449);
}

.nx-account-nav a:hover i {
    color: var(--nx-red, #d33449);
}

.nx-account-nav a.is-active {
    background: var(--nx-red-soft, #fff1f3);
    border-right-color: var(--nx-red, #d33449);
    color: var(--nx-red, #d33449);
    font-weight: 800;
}

.nx-account-nav a.is-active i {
    color: var(--nx-red, #d33449);
}

.nx-account-nav a.is-logout {
    border-top: 1px solid var(--nx-soft, #f0f0f1);
    color: #c62828;
}

.nx-account-nav a.is-logout i {
    color: #c62828;
}

.nx-account-badge {
    margin-right: auto;
    min-width: 20px;
    height: 20px;
    padding: 0 6px;
    border-radius: 10px;
    background: var(--nx-red, #d33449);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    line-height: 20px;
    text-align: center;
}

/* ---------- ستون محتوا ---------- */

.nx-account-main {
    min-width: 0;
}

.nx-account-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.nx-account-grid .nx-card {
    margin-bottom: 0;
}

.nx-panel-body {
    padding: 16px 18px;
}

.nx-empty-state {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 38px 18px;
    text-align: center;
}

/* فقط آیکن خودِ حالت خالی، نه آیکن‌های داخل دکمه‌ها */
.nx-empty-state > i {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: var(--nx-soft, #f0f0f1);
    color: var(--nx-muted, #666a70);
    font-size: 26px;
}

.nx-empty-state p {
    margin: 0;
    color: var(--nx-muted, #666a70);
    font-size: 13px;
}

.nx-btn-red {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    height: 40px;
    padding: 0 20px;
    border: 1px solid var(--nx-red, #d33449);
    border-radius: var(--nx-radius, 8px);
    background: var(--nx-red, #d33449);
    color: #fff !important;
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
}

.nx-btn-red:hover {
    background: var(--nx-red-dark, #d33449);
    border-color: var(--nx-red-dark, #d33449);
}

.nx-btn-ghost {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    height: 38px;
    padding: 0 16px;
    border: 1px solid var(--nx-line, #e0e0e2);
    border-radius: var(--nx-radius, 8px);
    background: #fff;
    color: var(--nx-ink, #23254e) !important;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
}

.nx-btn-ghost:hover {
    border-color: var(--nx-red, #d33449);
    color: var(--nx-red, #d33449) !important;
}

/* ---------- کارت سفارش (جایگزین جدول) ---------- */

.nx-orders {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 16px;
}

.nx-order {
    border: 1px solid var(--nx-soft, #f0f0f1);
    border-radius: 10px;
    overflow: hidden;
    transition: .16s ease;
}

.nx-order:hover {
    border-color: var(--nx-line, #e0e0e2);
    box-shadow: 0 6px 18px rgba(35, 37, 78, .07);
}

.nx-order-head {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px 16px;
    padding: 12px 14px;
    background: #fafafa;
    border-bottom: 1px solid var(--nx-soft, #f0f0f1);
}

.nx-order-id {
    color: var(--nx-ink, #23254e);
    font-size: 13px;
    font-weight: 800;
}

.nx-order-date {
    color: var(--nx-muted, #666a70);
    font-size: 12px;
}

.nx-order-status {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-right: auto;
    padding: 5px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 800;
}

.nx-order-status::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: currentColor;
}

.nx-st-pending   { background: #fff5e6; color: #b26a00; }
/* سفارش ثبت‌شده‌ی بدون پرداخت آنلاین که منتظر تماس کارشناس است */
.nx-st-awaitingcall { background: #fff8e1; color: #7a5c00; }
.nx-st-paid      { background: #e9f7ef; color: #0f7d4c; }
.nx-st-processing{ background: #e6f8fb; color: #0f8b9a; }
.nx-st-shipped   { background: #eef0ff; color: #4a4fce; }
.nx-st-delivered { background: #e9f7ef; color: #12784c; }
.nx-st-canceled  { background: #ffeef0; color: #c62828; }

/* ردیف‌های مبلغ: روی دسکتاپ کنار هم، روی موبایل زیر هم با برچسب */
.nx-order-body {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    padding: 14px;
}

.nx-order-cell span {
    display: block;
    margin-bottom: 4px;
    color: var(--nx-muted, #666a70);
    font-size: 11.5px;
}

.nx-order-cell b {
    color: var(--nx-ink, #23254e);
    font-size: 13.5px;
    font-weight: 800;
}

.nx-order-cell b small {
    margin-right: 3px;
    color: var(--nx-muted, #666a70);
    font-size: 11px;
    font-weight: 600;
}

.nx-order-foot {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    padding: 0 14px 14px;
}

/* ---------- اقلام سفارش ---------- */

.nx-items {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 16px;
}

.nx-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px;
    border: 1px solid var(--nx-soft, #f0f0f1);
    border-radius: 10px;
}

.nx-item-thumb {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 64px;
    height: 64px;
    padding: 4px;
    border: 1px solid var(--nx-soft, #f0f0f1);
    border-radius: 8px;
    background: #fff;
}

.nx-item-thumb img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.nx-item-info {
    flex: 1 1 auto;
    min-width: 0;
}

.nx-item-info a,
.nx-item-info b {
    display: block;
    color: var(--nx-ink, #23254e);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.8;
}

.nx-item-info a:hover {
    color: var(--nx-red, #d33449);
}

.nx-item-meta {
    margin-top: 4px;
    color: var(--nx-muted, #666a70);
    font-size: 11.5px;
}

.nx-item-price {
    flex-shrink: 0;
    text-align: left;
    color: var(--nx-ink, #23254e);
    font-size: 13.5px;
    font-weight: 800;
}

/* ---------- فهرست اطلاعات (جایگزین جدول دو ستونی) ---------- */

.nx-datalist {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 0;
    padding: 16px;
    list-style: none;
}

.nx-datalist li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 44px;
    padding: 10px 14px;
    border-radius: 8px;
    background: #fafafa;
    color: var(--nx-ink, #23254e);
    font-size: 13px;
}

.nx-datalist li > span {
    color: var(--nx-muted, #666a70);
    font-size: 12px;
}

.nx-datalist li.is-wide {
    grid-column: 1 / -1;
}

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

.nx-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    padding: 16px;
}

.nx-form label {
    display: block;
    margin-bottom: 6px;
    color: var(--nx-text, #3f4064);
    font-size: 12.5px;
    font-weight: 700;
}

.nx-form input,
.nx-form select,
.nx-form textarea {
    width: 100%;
    min-height: 42px;
    padding: 9px 12px;
    border: 1px solid var(--nx-line, #e0e0e2);
    border-radius: var(--nx-radius, 8px);
    background: #fff;
    color: var(--nx-ink, #23254e);
    font-family: inherit;
    font-size: 13px;
}

.nx-form input:focus,
.nx-form select:focus,
.nx-form textarea:focus {
    border-color: var(--nx-red, #d33449);
    outline: none;
}

.nx-form .is-wide {
    grid-column: 1 / -1;
}

/* ---------- اعلان‌ها ---------- */

.nx-notifs {
    display: flex;
    flex-direction: column;
    padding: 8px 0;
}

.nx-notif {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 14px 18px;
    border-bottom: 1px solid var(--nx-soft, #f0f0f1);
    color: var(--nx-text, #3f4064);
}

.nx-notif:last-child {
    border-bottom: 0;
}

.nx-notif.is-unread {
    background: var(--nx-red-soft, #fff1f3);
}

.nx-notif-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #fff;
    color: var(--nx-red, #d33449);
    font-size: 15px;
}

.nx-notif-body {
    flex: 1 1 auto;
    min-width: 0;
}

.nx-notif-body b {
    display: block;
    color: var(--nx-ink, #23254e);
    font-size: 13.5px;
    font-weight: 800;
}

.nx-notif-body p {
    margin: 5px 0 0;
    font-size: 12.5px;
    line-height: 1.9;
}

.nx-notif-time {
    flex-shrink: 0;
    color: var(--nx-muted, #666a70);
    font-size: 11.5px;
    white-space: nowrap;
}

/* زنگوله‌ی هدر */
.nx-bell {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border: 1px solid var(--nx-line, #e0e0e2);
    border-radius: var(--nx-radius, 8px);
    background: #fff;
    color: var(--nx-ink, #23254e) !important;
    font-size: 16px;
}

.nx-bell:hover {
    border-color: var(--nx-red, #d33449);
    color: var(--nx-red, #d33449) !important;
}

.nx-bell-count {
    position: absolute;
    top: -7px;
    right: -7px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 19px;
    height: 19px;
    padding: 0 5px;
    border-radius: 10px;
    background: var(--nx-red, #d33449);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
}

/* ==========================================================================
   پیام «به سبد خرید اضافه شد»
   به‌جای toast پیش‌فرض SweetAlert؛ نام قطعه و راه ادامه‌ی کار را نشان می‌دهد.
   ========================================================================== */

.nx-cart-toast {
    position: fixed;
    top: 18px;
    left: 50%;
    z-index: 2000;
    display: flex;
    align-items: flex-start;
    gap: 12px;
    width: min(400px, calc(100% - 24px));
    padding: 14px;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 14px 40px rgba(35, 37, 78, .18);
    transform: translate(-50%, -16px);
    opacity: 0;
    transition: opacity .22s ease, transform .22s ease;
}

.nx-cart-toast.is-visible {
    transform: translate(-50%, 0);
    opacity: 1;
}

.nx-cart-toast-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #e9f7ef;
    color: #0f7d4c;
    font-size: 17px;
}

.nx-cart-toast-body {
    flex: 1 1 auto;
    min-width: 0;
}

.nx-cart-toast-body b {
    display: block;
    color: var(--nx-ink, #23254e);
    font-size: 13.5px;
    font-weight: 800;
}

.nx-cart-toast-body p {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    margin: 5px 0 0;
    /* عنوان‌های بلند قطعات گاهی سه خط می‌شوند؛ max-height تضمین دو خط است */
    max-height: 3.6em;
    overflow: hidden;
    color: var(--nx-muted, #666a70);
    font-size: 12px;
    line-height: 1.8;
}

.nx-cart-toast-actions {
    display: flex;
    gap: 8px;
    margin-top: 12px;
}

.nx-cart-toast-actions a,
.nx-cart-toast-actions button {
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    height: 34px;
    padding: 0 14px;
    border: 1px solid var(--nx-line, #e0e0e2);
    border-radius: var(--nx-radius, 8px);
    background: #fff;
    color: var(--nx-ink, #23254e);
    font-family: inherit;
    font-size: 12.5px;
    font-weight: 700;
    cursor: pointer;
}

.nx-cart-toast-actions .is-primary {
    border-color: var(--nx-red, #d33449);
    background: var(--nx-red, #d33449);
    color: #fff;
}

.nx-cart-toast-close {
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: var(--nx-muted, #666a70);
    font-size: 15px;
    line-height: 24px;
    cursor: pointer;
}

.nx-cart-toast-close:hover {
    background: var(--nx-soft, #f0f0f1);
}

@media (max-width: 575px) {
    /* روی موبایل پایین می‌نشیند تا جلوی محتوا و نوار پایین را نگیرد */
    .nx-cart-toast {
        top: auto;
        bottom: 76px;
        transform: translate(-50%, 16px);
    }

    .nx-cart-toast.is-visible {
        transform: translate(-50%, 0);
    }
}

/* ==========================================================================
   کمبوباکس جستجوپذیر (فیلتر «خودرو مناسب» در فروشگاه)
   لیست ۳۱ خودرویی در یک select ساده پیمایش‌پذیر نبود.
   ========================================================================== */

/* .nx-card پیش‌فرض overflow:hidden دارد (home-digikala.css) و لیست بازشونده‌ی
   خودروها را که absolute و بیرون از کادر است کامل می‌بُرید؛ کاربر تایپ می‌کرد
   و نتیجه‌ای نمی‌دید. کارت‌های سایدبار فروشگاه چیزی برای بریدن ندارند. */
.nx-side-card {
    overflow: visible;
}

.nx-combo {
    position: relative;
}

.nx-combo select {
    display: none;
}

.nx-combo-control {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 42px;
    padding: 0 12px;
    border: 1px solid var(--nx-line, #e0e0e2);
    border-radius: var(--nx-radius, 8px);
    background: #fff;
    cursor: text;
}

.nx-combo.is-open .nx-combo-control {
    border-color: var(--nx-red, #d33449);
}

.nx-combo-control > i {
    flex-shrink: 0;
    color: var(--nx-muted, #666a70);
    font-size: 13px;
}

.nx-combo-input {
    flex: 1 1 auto;
    min-width: 0;
    height: 40px;
    border: 0;
    background: transparent;
    color: var(--nx-ink, #23254e);
    font-family: inherit;
    font-size: 13px;
}

.nx-combo-input:focus {
    outline: none;
}

.nx-combo-input::placeholder {
    color: var(--nx-muted, #666a70);
}

.nx-combo-clear {
    display: none;
    flex-shrink: 0;
    width: 22px;
    height: 22px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: var(--nx-soft, #f0f0f1);
    color: var(--nx-muted, #666a70);
    font-size: 11px;
    line-height: 22px;
    cursor: pointer;
}

.nx-combo.has-value .nx-combo-clear {
    display: block;
}

.nx-combo-clear:hover {
    background: var(--nx-red, #d33449);
    color: #fff;
}

.nx-combo-list {
    position: absolute;
    top: calc(100% + 4px);
    right: 0;
    left: 0;
    z-index: 30;
    display: none;
    max-height: 244px;
    margin: 0;
    padding: 6px;
    border: 1px solid var(--nx-line, #e0e0e2);
    border-radius: var(--nx-radius, 8px);
    background: #fff;
    box-shadow: 0 12px 28px rgba(35, 37, 78, .14);
    overflow-y: auto;
    list-style: none;
}

.nx-combo.is-open .nx-combo-list {
    display: block;
}

.nx-combo-list li {
    padding: 9px 12px;
    border-radius: 6px;
    color: var(--nx-text, #3f4064);
    font-size: 13px;
    cursor: pointer;
}

.nx-combo-list li:hover,
.nx-combo-list li.is-highlighted {
    background: var(--nx-red-soft, #fff1f3);
    color: var(--nx-red, #d33449);
}

.nx-combo-list li.is-selected {
    color: var(--nx-red, #d33449);
    font-weight: 800;
}

.nx-combo-list li.is-empty {
    color: var(--nx-muted, #666a70);
    text-align: center;
    cursor: default;
}

.nx-combo-list li.is-empty:hover {
    background: transparent;
    color: var(--nx-muted, #666a70);
}

/* ==========================================================================
   واکنش‌گرایی
   ========================================================================== */

@media (max-width: 991px) {
    /* ستون کناری روی موبایل به نوار افقی تبدیل می‌شود؛ قبلا فهرست کامل و
       همیشه‌باز بالای محتوا می‌نشست و هر بار باید از رویش رد می‌شدی. */
    .nx-account-layout {
        grid-template-columns: minmax(0, 1fr);
    }

    .nx-account-side {
        position: static;
    }

    .nx-account-user {
        padding: 14px;
    }

    .nx-account-nav {
        flex-direction: row;
        gap: 6px;
        padding: 10px;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .nx-account-nav::-webkit-scrollbar {
        display: none;
    }

    .nx-account-nav a {
        flex: 0 0 auto;
        gap: 7px;
        padding: 9px 14px;
        border: 1px solid var(--nx-line, #e0e0e2);
        border-right-width: 1px;
        border-radius: 20px;
        font-size: 12.5px;
        white-space: nowrap;
    }

    .nx-account-nav a.is-active {
        border-color: var(--nx-red, #d33449);
    }

    .nx-account-nav a.is-logout {
        border-top: 1px solid var(--nx-line, #e0e0e2);
    }

    .nx-account-grid,
    .nx-datalist,
    .nx-form {
        grid-template-columns: minmax(0, 1fr);
    }

    /* کارت سفارش: هر مبلغ با برچسب خودش زیر هم */
    .nx-order-body {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575px) {
    .nx-account {
        padding-top: 12px;
    }

    .nx-order-body {
        grid-template-columns: minmax(0, 1fr);
        gap: 0;
    }

    .nx-order-cell {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        padding: 9px 0;
        border-bottom: 1px dashed var(--nx-soft, #f0f0f1);
    }

    .nx-order-cell:last-child {
        border-bottom: 0;
    }

    .nx-order-cell span {
        margin-bottom: 0;
    }

    .nx-order-head {
        gap: 8px;
    }

    .nx-order-status {
        margin-right: 0;
    }

    .nx-order-foot .nx-btn-ghost,
    .nx-order-foot .nx-btn-red {
        flex: 1 1 auto;
    }

    .nx-item {
        align-items: flex-start;
    }

    .nx-item-thumb {
        width: 54px;
        height: 54px;
    }

    .nx-item-price {
        align-self: flex-end;
    }

    .nx-notif {
        flex-wrap: wrap;
        padding: 12px 14px;
    }

    .nx-notif-time {
        width: 100%;
        padding-right: 50px;
    }
}

/* ==========================================================================
   صفحه‌ی پیگیری سفارش (بدون ورود به حساب): فرم شماره سفارش + موبایل و
   نوار مراحل سفارش. از همان کارت‌ها و رنگ‌های ناحیه‌ی حساب استفاده می‌کند.
   ========================================================================== */

.nx-track {
    max-width: 780px;
    margin: 0 auto;
}

.nx-track-hint {
    margin: 0;
    color: var(--nx-muted, #666a70);
    font-size: 12.5px;
    line-height: 2.1;
}

.nx-track-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
    gap: 12px;
    align-items: end;
    margin-top: 4px;
}

.nx-track-col {
    min-width: 0;
}

.nx-track-form .nx-field-label {
    margin: 12px 0 6px;
}

.nx-track-form .nx-btn-red {
    height: 42px;
}

/* ---------- پیام‌ها ---------- */

.nx-track-alert {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin-top: 14px;
    padding: 12px 14px;
    border-radius: 10px;
    font-size: 12.5px;
    line-height: 2;
}

.nx-track-alert p {
    margin: 0;
}

.nx-track-alert > i {
    margin-top: 6px;
    font-size: 14px;
}

.nx-track-alert.is-info  { background: #eef4ff; color: #33499b; }
.nx-track-alert.is-warn  { background: #fff8e1; color: #7a5c00; }
.nx-track-alert.is-error { background: #ffeef0; color: #c62828; }

/* ---------- نوار مراحل ---------- */

.nx-track-steps {
    display: flex;
    margin: 6px 0 0;
    padding: 0;
    list-style: none;
}

.nx-track-step {
    position: relative;
    flex: 1 1 0;
    min-width: 0;
    text-align: center;
}

/* خط رابط هر مرحله به مرحله‌ی قبلی؛ در RTL یعنی به سمت راست */
.nx-track-step + .nx-track-step::before {
    content: "";
    position: absolute;
    top: 19px;
    left: 50%;
    width: 100%;
    height: 2px;
    background: var(--nx-line, #e0e0e2);
}

.nx-track-step + .nx-track-step.is-done::before,
.nx-track-step + .nx-track-step.is-current::before {
    background: var(--nx-red, #d33449);
}

.nx-track-dot {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    margin: 0 auto 8px;
    border: 2px solid var(--nx-line, #e0e0e2);
    border-radius: 50%;
    background: #fff;
    color: var(--nx-muted, #666a70);
    font-size: 15px;
}

.nx-track-step.is-done .nx-track-dot {
    border-color: var(--nx-red, #d33449);
    color: var(--nx-red, #d33449);
}

.nx-track-step.is-current .nx-track-dot {
    border-color: var(--nx-red, #d33449);
    background: var(--nx-red, #d33449);
    box-shadow: 0 0 0 4px var(--nx-red-soft, #fff1f3);
    color: #fff;
}

.nx-track-label {
    display: block;
    color: var(--nx-muted, #666a70);
    font-size: 12px;
    font-weight: 700;
}

.nx-track-step.is-done .nx-track-label,
.nx-track-step.is-current .nx-track-label {
    color: var(--nx-ink, #23254e);
}

.nx-track-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    border-top: 1px solid var(--nx-soft, #f0f0f1);
}

/* وضعیت‌هایی که در کارت سفارش رنگ نداشتند */
.nx-st-returned { background: #f3eaff; color: #6a3fb5; }
.nx-st-failed   { background: #ffeef0; color: #c62828; }

@media (max-width: 640px) {
    .nx-track-form {
        grid-template-columns: minmax(0, 1fr);
    }

    .nx-track-form .nx-btn-red {
        width: 100%;
        margin-top: 4px;
    }

    .nx-track-dot {
        width: 34px;
        height: 34px;
        font-size: 13px;
    }

    .nx-track-step + .nx-track-step::before {
        top: 16px;
    }

    .nx-track-label {
        font-size: 10.5px;
    }

    .nx-track-actions .nx-btn-ghost,
    .nx-track-actions .nx-btn-red {
        flex: 1 1 auto;
    }
}

/* /assets/css/search-suggest.css */
/* پنل پیشنهاد جعبه‌ی جستجو (هدر دسکتاپ، نوار موبایل و شیت جستجو).
   پنل absolute است تا داخل جعبه‌های flexِ جستجو به آیتم فلکس تبدیل نشود
   و ارتفاع فیلد را به هم نریزد. */
.nx-suggest {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    left: 0;
    z-index: 1080;
    max-height: 68vh;
    overflow-y: auto;
    padding: 6px;
    border: 1px solid #e6e8ec;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 12px 32px rgba(15, 23, 42, .14);
    text-align: right;
    direction: rtl;
}

.nx-suggest[hidden] {
    display: none;
}

.nx-suggest__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 8px 4px;
    color: #8a9099;
    font-size: 11.5px;
    font-weight: 700;
}

.nx-suggest__head button {
    border: 0;
    background: transparent;
    color: #d32f2f;
    font-size: 11.5px;
    font-weight: 700;
    cursor: pointer;
}

.nx-suggest__term,
.nx-suggest__item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px;
    border-radius: 9px;
    color: #202b38;
    text-decoration: none;
    transition: background-color .15s ease;
}

.nx-suggest__term i {
    flex-shrink: 0;
    width: 22px;
    color: #8a9099;
    font-size: 13px;
    text-align: center;
}

.nx-suggest__term span {
    font-size: 13px;
    font-weight: 600;
}

.nx-suggest__item img {
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    border: 1px solid #f0f1f3;
    border-radius: 8px;
    object-fit: contain;
    background: #fff;
}

.nx-suggest__body {
    flex: 1 1 auto;
    min-width: 0;
}

.nx-suggest__title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 12.5px;
    font-weight: 600;
    line-height: 1.7;
}

.nx-suggest__meta {
    display: block;
    margin-top: 2px;
    color: #8a9099;
    font-size: 11px;
}

.nx-suggest__price {
    flex-shrink: 0;
    color: #202b38;
    font-size: 12px;
    font-weight: 800;
    white-space: nowrap;
}

/* تکه‌ی تایپ‌شده‌ی کاربر داخل عنوان */
.nx-suggest mark {
    padding: 0;
    background: transparent;
    color: #d32f2f;
    font-weight: 800;
}

.nx-suggest__term:hover,
.nx-suggest__item:hover,
.nx-suggest__term.is-active,
.nx-suggest__item.is-active,
.nx-suggest__all.is-active {
    background: #f5f6f8;
}

.nx-suggest__all {
    display: block;
    margin-top: 4px;
    padding: 10px 8px;
    border-top: 1px solid #f0f1f3;
    border-radius: 0 0 9px 9px;
    color: #0f3d6e;
    font-size: 12.5px;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
}

.nx-suggest__all b {
    color: #8a9099;
    font-weight: 700;
}

.nx-suggest__empty {
    padding: 18px 10px;
    color: #8a9099;
    text-align: center;
}

.nx-suggest__empty i {
    font-size: 20px;
    opacity: .5;
}

.nx-suggest__empty p {
    margin: 8px 0 2px;
    color: #202b38;
    font-size: 13px;
    font-weight: 700;
}

.nx-suggest__empty span {
    font-size: 11.5px;
}

/* جعبه‌های جستجو باید مرجع موقعیت پنل باشند.

   overflow هم صریح visible می‌ماند: این فایل بعد از بقیه‌ی استایل‌ها لود
   می‌شود و اگر تم‌های دیگر روی جعبه‌ی جستجو overflow:hidden بگذارند (که یک‌بار
   گذاشتند و پنل کامل نامرئی شد)، پنل دوباره بریده نشود. */
.search-box-header,
.mobile-search,
.app-sheet__search {
    position: relative;
    overflow: visible;
}

/* در شیت پایینِ موبایل ارتفاع محدود است؛ پنل نباید از شیت بیرون بزند */
#app-search-sheet .nx-suggest {
    max-height: 46vh;
}

/* /assets/css/auth.css */
/* ==========================================================================
   ورود، ثبت‌نام و بازیابی رمز عبور
   یک کارت، سه گام. با همان زبان بصری ناحیه‌ی حساب کاربری (قرمز/سفید)
   نوشته شده تا صفحه‌ی ورود وصله‌ی بقیه‌ی سایت به نظر نرسد.
   ========================================================================== */

.nx-auth {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 68vh;
    padding: 32px 16px 56px;
    background: var(--nx-bg, #f5f5f5);
    direction: rtl;
}

.nx-auth *,
.nx-auth *::before,
.nx-auth *::after {
    box-sizing: border-box;
}

.nx-auth a {
    text-decoration: none;
}

.nx-auth-card {
    width: 100%;
    max-width: 400px;
    padding: 28px 24px 22px;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 8px 30px rgba(35, 37, 78, .08);
}

/* ---------- سربرگ ---------- */

.nx-auth-head {
    text-align: center;
    margin-bottom: 22px;
}

.nx-auth-logo {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    margin-bottom: 14px;
    border-radius: 50%;
    background: var(--nx-red-soft, #fff1f3);
    color: var(--nx-red, #d33449);
    font-size: 22px;
}

.nx-auth-head h1 {
    margin: 0;
    color: var(--nx-ink, #23254e);
    font-size: 17px;
    font-weight: 800;
}

.nx-auth-head p {
    margin: 8px 0 0;
    color: var(--nx-muted, #666a70);
    font-size: 12.5px;
    line-height: 1.9;
}

/* ---------- گام‌ها ---------- */

.nx-auth-step[hidden] {
    display: none;
}

.nx-auth-field {
    margin-bottom: 14px;
}

.nx-auth-field > label {
    display: block;
    margin-bottom: 7px;
    color: var(--nx-muted, #666a70);
    font-size: 12px;
    font-weight: 700;
}

.nx-auth-field input {
    width: 100%;
    height: 46px;
    padding: 0 14px;
    border: 1px solid var(--nx-line, #e0e0e2);
    border-radius: var(--nx-radius, 8px);
    background: #fff;
    color: var(--nx-ink, #23254e);
    font-family: inherit;
    font-size: 14px;
    outline: none;
    transition: border-color .15s, box-shadow .15s;
}

.nx-auth-field input:focus {
    border-color: var(--nx-red, #d33449);
    box-shadow: 0 0 0 3px rgba(239, 64, 86, .1);
}

.nx-auth-field input::placeholder {
    color: #c4c6cb;
    letter-spacing: normal;
}

/* شماره و کد، لاتین و وسط‌چین‌اند تا خواندن رقم‌ها ساده باشد */
.nx-auth-field input.is-num {
    direction: ltr;
    text-align: center;
    letter-spacing: 2px;
    font-size: 16px;
    font-weight: 700;
}

.nx-auth-field input.is-code {
    letter-spacing: 10px;
    font-size: 20px;
}

/* چشمکِ نمایش رمز */
.nx-auth-pass {
    position: relative;
}

.nx-auth-pass input {
    padding-left: 42px;
}

.nx-auth-eye {
    position: absolute;
    left: 6px;
    top: 50%;
    transform: translateY(-50%);
    width: 32px;
    height: 32px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: var(--nx-muted, #666a70);
    cursor: pointer;
}

.nx-auth-eye:hover {
    color: var(--nx-red, #d33449);
}

/* ---------- شماره‌ی تأییدشده در گام دوم ---------- */

.nx-auth-identity {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 16px;
    padding: 10px 12px;
    border: 1px solid var(--nx-line, #e0e0e2);
    border-radius: var(--nx-radius, 8px);
    background: var(--nx-soft, #f7f7f8);
}

.nx-auth-identity span {
    color: var(--nx-ink, #23254e);
    font-size: 13px;
    font-weight: 700;
    direction: ltr;
}

.nx-auth-identity button {
    border: 0;
    background: none;
    color: var(--nx-red, #d33449);
    font-family: inherit;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
}

/* ---------- دکمه‌ها ---------- */

.nx-auth-submit {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    height: 46px;
    margin-top: 4px;
    border: 0;
    border-radius: var(--nx-radius, 8px);
    background: var(--nx-red, #d33449);
    color: #fff;
    font-family: inherit;
    font-size: 14px;
    font-weight: 800;
    cursor: pointer;
    transition: background .15s;
}

.nx-auth-submit:hover:not(:disabled) {
    background: var(--nx-red-dark, #d33449);
}

.nx-auth-submit:disabled {
    opacity: .65;
    cursor: default;
}

.nx-auth-alt {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    width: 100%;
    height: 40px;
    margin-top: 10px;
    border: 1px solid var(--nx-line, #e0e0e2);
    border-radius: var(--nx-radius, 8px);
    background: #fff;
    color: var(--nx-ink, #23254e);
    font-family: inherit;
    font-size: 12.5px;
    font-weight: 700;
    cursor: pointer;
}

.nx-auth-alt:hover {
    border-color: var(--nx-red, #d33449);
    color: var(--nx-red, #d33449);
}

.nx-auth-link {
    display: block;
    margin-top: 12px;
    color: var(--nx-red, #d33449);
    font-size: 12px;
    font-weight: 700;
    text-align: center;
    background: none;
    border: 0;
    width: 100%;
    font-family: inherit;
    cursor: pointer;
}

/* ---------- ارسال مجدد کد ---------- */

.nx-auth-resend {
    margin-top: 12px;
    text-align: center;
    font-size: 12px;
    color: var(--nx-muted, #666a70);
}

.nx-auth-resend button {
    border: 0;
    background: none;
    color: var(--nx-red, #d33449);
    font-family: inherit;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
}

.nx-auth-resend[hidden],
.nx-auth-hint[hidden] {
    display: none;
}

/* ---------- پانویس ---------- */

.nx-auth-foot {
    margin-top: 18px;
    padding-top: 14px;
    border-top: 1px solid var(--nx-soft, #f0f0f1);
    color: var(--nx-muted, #666a70);
    font-size: 11.5px;
    line-height: 2;
    text-align: center;
}

.nx-auth-foot i {
    color: #0f7d4c;
}

.nx-auth-foot a {
    color: var(--nx-ink, #23254e);
    font-weight: 700;
}

/* پیام خطای درون‌کارتی؛ به‌جای toast برای خطاهای مربوط به یک فیلد */
.nx-auth-error {
    margin: 0 0 14px;
    padding: 9px 12px;
    border-radius: var(--nx-radius, 8px);
    background: var(--nx-red-soft, #fff1f3);
    color: var(--nx-red, #d33449);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.8;
}

.nx-auth-error[hidden] {
    display: none;
}

/* کد نمایش‌داده‌شده در محیط توسعه (وقتی درگاه پیامک تنظیم نیست) */
.nx-auth-dev {
    margin-top: 10px;
    padding: 8px;
    border: 1px dashed #f0b429;
    border-radius: var(--nx-radius, 8px);
    background: #fffbeb;
    color: #8a6100;
    font-size: 12px;
    text-align: center;
}

.nx-auth-dev[hidden] {
    display: none;
}

/* ---------- نوار «ورود به‌عنوان کاربر» ---------- */

.nx-impersonate-bar {
    position: sticky;
    top: 0;
    z-index: 1200;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px;
    padding: 9px 14px;
    background: #23254e;
    color: #fff;
    font-size: 12.5px;
    font-weight: 700;
    direction: rtl;
}

.nx-impersonate-bar a {
    padding: 5px 12px;
    border-radius: 6px;
    background: var(--nx-red, #d33449);
    color: #fff;
    font-size: 12px;
    text-decoration: none;
}

@media (max-width: 480px) {
    .nx-auth {
        padding: 16px 12px 40px;
    }

    .nx-auth-card {
        padding: 24px 18px 18px;
        box-shadow: none;
    }
}

