@font-face {
  font-family: 'Vazirmatn';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/vazirmatn-400.ttf) format('truetype');
}
@font-face {
  font-family: 'Vazirmatn';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/vazirmatn-500.ttf) format('truetype');
}
@font-face {
  font-family: 'Vazirmatn';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/vazirmatn-600.ttf) format('truetype');
}
@font-face {
  font-family: 'Vazirmatn';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/vazirmatn-700.ttf) format('truetype');
}

/* Shared preference controls; theme tokens also cover the sign-in page. */
:root[data-theme="light"] {
  --accent-text:#A64200; --on-accent:#201308;
  --ink:#171715; --paper:#fff; --bg:#f4f3f0; --panel:#f2f1ee;
  --rule:#deddd7; --rule-strong:#cdccc6; --mute:#5c5b57;
  --red-soft:#FFF0E2; --ok:#0e8a4f; --ok-soft:#e2f3ea;
  --warn:#a6560a; --warn-soft:#fbeedd;
  color-scheme:light;
}
:root[data-theme="dark"] {
  --accent-text:#FFAD66; --on-accent:#201308;
  --ink:#f4f4f2; --paper:#000; --bg:#000; --panel:#121212;
  --rule:#262626; --rule-strong:#3a3a3a; --mute:#a3a29d;
  --red-soft:#321A08; --ok:#3dc98e; --ok-soft:#0f2a1f;
  --warn:#f0a35e; --warn-soft:#2e2013;
  color-scheme:dark;
}
.preferences {display:flex;align-items:center;gap:0;flex:none;direction:ltr}
.preferences > button,.preferences .language-trigger {
  min-height:44px;min-width:44px;max-width:112px;margin:0;border:0;
  border-inline-start:1px solid var(--rule);border-radius:0;
  padding:.6rem .65rem;background:var(--paper);color:var(--ink);
  font:500 .78rem/1.25 var(--font);cursor:pointer;
}
.preferences > button {min-width:66px;white-space:nowrap}
.preferences > button:hover,.preferences .language-trigger:hover {background:var(--panel)}
.preferences :focus-visible {outline:2px solid var(--red);outline-offset:-4px}
.nav__right > .preferences {height:100%}
.nav__right > .preferences > * {height:100%}
.menu > .preferences {padding:.5rem var(--gutter);border-bottom:1px solid #ffffff55}
.menu > .preferences > button,.menu > .preferences .language-trigger {border:1px solid #ffffff66;background:transparent;color:#fff}
.auth-side > .preferences {align-self:flex-end;border:1px solid var(--rule);margin-bottom:.5rem}
.nav__in {padding-left:0;padding-inline-start:var(--gutter);padding-inline-end:0}
.hero,.hero__main,.hero__side,.feats > li,.steps > li,.tools__copy {min-width:0}
.hero h1,.section-head h2,.final h2 {overflow-wrap:anywhere}
.nav__links {gap:1rem;padding:0 1.25rem}
.nav__links a {font-size:.8rem}
@media (min-width:1180px) and (max-width:1599px) {
  .nav__in {grid-template-columns:auto 1fr auto}
  .nav__links {display:none}
  .nav__right {grid-column:3}
  .menu-btn {display:flex}
}
@media (max-width:639px) {
  .nav__right .nav__cta {display:none}
  .nav__right > .preferences .language-picker {width:90px}
  .preferences > button {min-width:60px;padding-inline:.5rem}
  .nav__in {grid-template-columns:auto 1fr auto}
  .logo {font-size:1.2rem;gap:.45rem}
  .menu-btn {width:48px}
}
.language-picker {position:relative;width:102px;flex:none;isolation:isolate}
.preferences .language-trigger {
  width:100%;height:100%;display:flex;align-items:center;justify-content:space-between;gap:.6rem;
  text-align:start;
}
.language-current {min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.language-chevron {
  width:10px;height:10px;flex:none;background:currentColor;
  mask:url('/assets/chevron.svg') center/contain no-repeat;transform:rotate(90deg);
}
.language-trigger[aria-expanded="true"] .language-chevron {transform:rotate(-90deg)}
.language-trigger[aria-expanded="true"] {box-shadow:inset 0 -2px var(--red)}
.language-options {
  position:absolute;inset-inline-end:0;top:calc(100% + 8px);z-index:100;
  width:216px;max-width:calc(100vw - 32px);padding:4px;
  border:1px solid var(--rule);border-top:2px solid var(--red);border-radius:3px;
  background:var(--paper);color:var(--ink);box-shadow:0 12px 32px #00000024;
}
.language-options[hidden] {display:none}
.preferences .language-option {
  display:flex;align-items:center;justify-content:space-between;gap:1.5rem;
  width:100%;min-height:46px;margin:0;padding:.7rem .85rem;
  border:0;border-inline-start:2px solid transparent;border-radius:0;
  background:transparent;color:var(--ink);font:400 .88rem/1.4 var(--font);
  text-align:start;cursor:pointer;
}
.language-option + .language-option {border-top:1px solid var(--rule)}
.preferences .language-option:hover,.preferences .language-option:focus-visible {background:var(--panel)}
.preferences .language-option[aria-selected="true"] {
  border-inline-start-color:var(--accent-text);background:var(--red-soft);font-weight:500;
}
.language-code {color:var(--mute);font:400 .65rem/1 "Geist Mono",monospace;letter-spacing:.05em}
.language-option[aria-selected="true"] .language-code {color:var(--red-deep)}
:root[data-theme="dark"] .language-option[aria-selected="true"] .language-code {color:#FFB879}
.menu .language-trigger[aria-expanded="true"] {box-shadow:inset 0 -2px #fff}
@media (max-width:359px) {
  .nav__in {padding-inline-start:12px}
  .nav .logo {font-size:1.1rem;gap:.35rem}
  .nav .logo__mark {width:1.2rem;height:1.2rem}
  .nav__right > .preferences .language-picker {width:80px}
  .nav__right > .preferences > button {min-width:50px;padding-inline:.4rem}
  .menu-btn {width:44px}
}
/* Keep the brand and command syntax readable in every language. */
.logo,.brand,pre,code,.typed,.lc-rail {direction:ltr;unicode-bidi:isolate}
pre,code {text-align:left}
html[lang="fa"] pre,html[lang="fa"] code {font-family:"Geist Mono",ui-monospace,monospace}
.fig__svg {direction:ltr}
html:not([lang="en"]) .fig__svg .sub {font-size:9px;letter-spacing:0}
html[lang="fa"] {--font:"Vazirmatn",Tahoma,"Arial",sans-serif;--mono:"Vazirmatn",Tahoma,"Arial",sans-serif}
html[lang="fa"] h1,html[lang="fa"] h2,html[lang="fa"] h3 {letter-spacing:0;line-height:1.4}
html[lang="fa"] .hero h1 {max-width:14ch;font-size:clamp(2.6rem,6vw,6.2rem)}
html[lang="fa"] .tag,html[lang="fa"] .auth-note {letter-spacing:0;line-height:1.8}
html[lang="fa"] .auth-art__big {letter-spacing:0;line-height:1.4;max-width:13ch}
/* SVG start anchors move to the opposite side in RTL. Center Persian labels
   on their nodes instead, keeping mixed Latin/Persian subtitles in one run. */
html[lang="fa"] .fig__svg text {
  direction:rtl;unicode-bidi:embed;text-anchor:middle;letter-spacing:0;
}
html[lang="fa"] .fig__svg .sub {font-size:12px}
html[lang="fa"] .fig__svg .axis {font-size:11px}
/* Horizontal node centers: 120, 520, 915 and 1115 viewBox units. */
html[lang="fa"] .fig__svg--h text[x="50"] {transform:translateX(70px)}
html[lang="fa"] .fig__svg--h text[x="420"] {transform:translateX(100px)}
html[lang="fa"] .fig__svg--h text[x="1060"] {transform:translateX(55px)}
/* Vertical stage centers are 192; the main spine remains centered at 180. */
html[lang="fa"] .fig__svg--v text[x="82"] {transform:translateX(110px)}
html[lang="fa"] .fig__svg--v text[x="64"] {transform:translateX(128px)}
html[lang="fa"] .fig__svg--v text[x="16"] {transform:translateX(164px)}
html[lang="fa"] .fig__svg--v .sub {font-size:13px}
html[lang="fa"] .fig__svg--v .axis {font-size:12px}
html[dir="rtl"] .hero__side {border-left:0;border-inline-start:1px solid var(--rule)}
html[dir="rtl"] .nav__right a,html[dir="rtl"] .menu-btn {border-left:0;border-inline-start:1px solid var(--rule)}
html[dir="rtl"] .menu__top {padding-left:0;padding-inline-start:var(--gutter)}
html[dir="rtl"] .menu__close {border-left:0;border-inline-start:1px solid #ffffff55}
html[dir="rtl"] .btn svg,html[dir="rtl"] .nav__cta svg,html[dir="rtl"] .menu__links a svg {transform:scaleX(-1)}
html[dir="rtl"] .split > div + div {padding-left:0;padding-inline-start:1.75rem;border-left:0;border-inline-start:1px solid var(--void-rule)}
html[dir="rtl"] .lc-body .msg--you {margin-left:0;margin-inline-start:auto}
html[dir="rtl"] .lc-body .call {direction:ltr;text-align:left}
html[dir="rtl"] .lc-share {flex-wrap:wrap}
html[dir="rtl"] .cmp tbody th,html[dir="rtl"] .cmp th,html[dir="rtl"] .cmp td {text-align:right}
html[dir="rtl"] .cmp .v {text-align:left}
html[dir="rtl"] .y,html[dir="rtl"] .n,html[dir="rtl"] .m {margin-right:0;margin-inline-end:.5rem}
html[dir="rtl"] .lc-tab {text-align:right}
html[dir="rtl"] .skip {left:auto;right:-999px}
html[dir="rtl"] .skip:focus {right:1rem}
html[lang="fa"] .input[type="email"],html[lang="fa"] .code-input {direction:ltr;text-align:left}
@media (max-width:899px) {
  html[dir="rtl"] .hero__side {border-inline-start:0}
  html[lang="fa"] .hero h1 {font-size:clamp(2.4rem,9.5vw,4.2rem);max-width:none}
}
@media (max-width:679px) {
  html[dir="rtl"] .split > div + div {padding-inline-start:0;border-inline-start:0}
}

/* Cloudflare-inspired orange: dark foregrounds keep filled controls legible. */
.btn--red,.nav__right .nav__cta,.compat li.is-hot,.step__n,
.install__label,.chat__share .who,.feat:first-child .feat__tag,
.auth-side .btn {color:var(--on-accent)}
.btn--red:hover,.nav__right .nav__cta:hover,.auth-side .btn:hover {color:#fff}
.btn--ink:hover,.btn--line:hover {color:var(--on-accent)}
.menu,.menu__top .logo,.menu__close,.menu .btn--white-line,.foot__base {color:var(--on-accent)}
.menu__top,.menu__links li,.menu > .preferences {border-color:#20130840}
.menu__close,.menu .btn--white-line {border-color:#20130866}
.menu > .preferences > button,.menu > .preferences .language-trigger {color:var(--on-accent);border-color:#20130866}
.menu .language-trigger[aria-expanded="true"] {box-shadow:inset 0 -2px var(--on-accent)}
.fig__svg .sub {fill:var(--accent-text)}
.fig__svg .lbl--hot,.fig__svg .sub--hot {fill:var(--on-accent)}
