/* VisitVakil visual system 0.8.0
   Approved product font: IRANSans (licensed). Add the licensed woff2 files under
   fonts/iransans-*.woff2 — they are NOT bundled here because IRANSans is a
   commercial font and cannot be redistributed without your own license.
   Vazirmatn Variable (SIL OFL 1.1) stays bundled as the automatic fallback,
   so the site keeps a correct Persian typeface even before the files are added. */
@font-face {
  font-family: "IRANSans";
  src: url("fonts/iransans-light.woff2") format("woff2");
  font-style: normal;
  font-weight: 300;
  font-display: swap;
}

@font-face {
  font-family: "IRANSans";
  src: url("fonts/iransans-regular.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "IRANSans";
  src: url("fonts/iransans-medium.woff2") format("woff2");
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: "IRANSans";
  src: url("fonts/iransans-bold.woff2") format("woff2");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: "Vazirmatn";
  src: url("fonts/vazirmatn-arabic-wght-normal.woff2") format("woff2-variations");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  unicode-range: U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1;
}

@font-face {
  font-family: "Vazirmatn";
  src: url("fonts/vazirmatn-latin-ext-wght-normal.woff2") format("woff2-variations");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

@font-face {
  font-family: "Vazirmatn";
  src: url("fonts/vazirmatn-latin-wght-normal.woff2") format("woff2-variations");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

:root {
  --vv-font: "IRANSans", "Vazirmatn", Tahoma, Arial, system-ui, sans-serif;
  --vv-brand-navy: #17343d;
  --vv-brand-blue: #008fa6;
  --vv-brand-cyan: #16b8c8;
  --vv-brand-gulf: #008fa6;
  --vv-brand-gulf-bright: #16b8c8;
  --vv-brand-gulf-deep: #056a7d;
  --vv-primary-50: #eaf8fa;
  --vv-primary-100: #cceff3;
  --vv-primary-500: #008fa6;
  --vv-primary-600: #007c91;
  --vv-primary-700: #056a7d;
  --vv-primary-800: #034f60;
  --vv-blue-500: #16b8c8;
  --vv-amber-50: #fff7e3;
  --vv-amber-500: #e2a12b;
  --vv-green-50: #edf9f2;
  --vv-green-500: #2a9869;
  --vv-red-50: #fff0ee;
  --vv-red-500: #cb5549;
  --vv-violet-50: #f4effd;
  --vv-violet-500: #7659c8;
  --vv-ink-950: #17343d;
  --vv-ink-900: #1f2d33;
  --vv-ink-700: #465a63;
  --vv-ink-500: #5d6d74;
  --vv-line: #d9e4e6;
  --vv-line-strong: #c7d6da;
  --vv-surface: #ffffff;
  --vv-canvas: #f1f6f7;
  --vv-radius-sm: 12px;
  --vv-radius-md: 16px;
  --vv-radius-lg: 20px;
  --vv-shadow-xs: 0 2px 7px rgba(6, 38, 58, .035);
  --vv-shadow-soft: 0 12px 32px rgba(6, 38, 58, .075);
}

html,
body,
button,
input,
textarea,
select,
option,
.brx-body,
.brxe-text,
.brxe-heading,
.brxe-button,
.vvcc-login-overlay,
.vvcc-login-overlay button,
.vvcc-login-overlay input,
.vvf-shell,
.vvf-shell button,
.vvf-shell input,
.vvf-shell textarea,
.vvm-root,
.vvm-root button,
.vvm-root input,
.vvm-root textarea {
  font-family: var(--vv-font) !important;
}

html,
body.vv-brand-system {
  font-synthesis: none;
}

body.vv-brand-system {
  color: var(--vv-ink-900);
  background: var(--vv-canvas);
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body.vv-brand-system :where(h1, h2, h3, h4, h5, h6, strong, b) {
  color: var(--vv-ink-950);
  font-weight: 720;
  letter-spacing: 0;
}

body.vv-brand-system :where(p, li, label, small) {
  line-height: 1.9;
}

body.vv-brand-system :where(input:not([type="checkbox"]):not([type="radio"]), textarea, select) {
  border-color: var(--vv-line);
  border-radius: var(--vv-radius-sm);
  background-color: var(--vv-surface);
  color: var(--vv-ink-900);
  transition: border-color .16s ease, box-shadow .16s ease, background-color .16s ease;
}

body.vv-brand-system :where(input:not([type="checkbox"]):not([type="radio"]), textarea, select):focus {
  border-color: rgba(0, 143, 166, .62);
  outline: 0;
  box-shadow: 0 0 0 3px rgba(0, 143, 166, .1);
}

body.vv-brand-system :where(.brxe-button, button[type="submit"], input[type="submit"]) {
  border-radius: 14px;
  font-weight: 700;
}

body.vv-brand-system :focus-visible {
  outline: 3px solid rgba(0, 143, 166, .26);
  outline-offset: 2px;
}

.vv-card {
  border: 1px solid var(--vv-line);
  border-radius: var(--vv-radius-lg);
  background: var(--vv-surface);
  box-shadow: var(--vv-shadow-xs);
}

.vv-icon-well {
  display: inline-grid;
  place-items: center;
  border-radius: 16px;
  color: var(--vv-primary-700);
  background: var(--vv-primary-50);
}

.vvcc-login-overlay,
.vvf-shell,
.vvm-root {
  --vvm-blue: var(--vv-primary-600);
  --vvm-blue-dark: var(--vv-primary-700);
  --vvm-blue-soft: var(--vv-primary-50);
  --vvm-brand-blue: var(--vv-brand-blue);
  --vvm-brand-cyan: var(--vv-brand-cyan);
  --vvm-orange: var(--vv-amber-500);
  --vvm-ink: var(--vv-ink-900);
  --vvm-muted: var(--vv-ink-500);
  --vvm-line: var(--vv-line);
  --vvm-bg: var(--vv-canvas);
  --vvm-panel: var(--vv-surface);
}

@media (prefers-reduced-motion: reduce) {
  body.vv-brand-system *,
  body.vv-brand-system *::before,
  body.vv-brand-system *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}
