@font-face {
  font-family: "Panel Shabnam";
  src: url("fonts/shabnam-regular.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Panel Shabnam";
  src: url("fonts/shabnam-bold.woff2") format("woff2");
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: "Panel Vazirmatn";
  src: url("fonts/vazirmatn.woff2") format("woff2");
  font-weight: 100 900;
  font-display: swap;
}

@font-face {
  font-family: "Panel Sahel";
  src: url("fonts/sahel-regular.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Panel Sahel";
  src: url("fonts/sahel-bold.woff2") format("woff2");
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: "Panel Estedad";
  src: url("fonts/estedad.woff2") format("woff2");
  font-weight: 100 900;
  font-display: swap;
}

@font-face {
  font-family: "Panel Estedad";
  src: url("fonts/estedad-latin.woff2") format("woff2");
  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+0300-0301, U+0303, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: "Panel Noto Naskh";
  src: url("fonts/noto-naskh-arabic.woff2") format("woff2");
  font-weight: 400 700;
  font-display: swap;
}

@font-face {
  font-family: "Panel Noto Naskh";
  src: url("fonts/noto-naskh-arabic-latin.woff2") format("woff2");
  font-weight: 400 700;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0300-0301, U+0303, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: "Panel Noto Kufi";
  src: url("fonts/noto-kufi-arabic.woff2") format("woff2");
  font-weight: 100 900;
  font-display: swap;
}

@font-face {
  font-family: "Panel Noto Kufi";
  src: url("fonts/noto-kufi-arabic-latin.woff2") format("woff2");
  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+0300-0301, U+0303, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Optional files supplied by the server administrator. */
@font-face {
  font-family: "Panel B Nazanin";
  src: url("fonts/custom/b-nazanin.ttf") format("truetype");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Panel Yekan Bakh";
  src: url("fonts/custom/yekan-bakh.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}

[data-font="system"] { --panel-font: Tahoma; }
[data-font="shabnam"] { --panel-font: "Panel Shabnam"; }
[data-font="vazirmatn"] { --panel-font: "Panel Vazirmatn"; }
[data-font="sahel"] { --panel-font: "Panel Sahel"; }
[data-font="estedad"] { --panel-font: "Panel Estedad"; }
[data-font="noto-naskh"] { --panel-font: "Panel Noto Naskh"; }
[data-font="noto-kufi"] { --panel-font: "Panel Noto Kufi"; }
[data-font="b-nazanin"] { --panel-font: "Panel B Nazanin"; }
[data-font="yekan-bakh"] { --panel-font: "Panel Yekan Bakh"; }

:root[data-font], .font-preview {
  font-family: var(--panel-font), "Segoe UI", Arial, sans-serif;
}

.font-option {
  grid-template-columns: auto minmax(0, 1fr);
}

.font-preview {
  display: block;
  margin-block-start: 2px;
  color: var(--muted);
  font-size: .95rem;
  overflow-wrap: anywhere;
}

.font-setup-note {
  margin-block-start: 10px;
  font-size: .8rem;
}

/* Native controls inherit the active font for their in-page text. */
select :is(option, optgroup), input::file-selector-button { font-family: inherit; }

/* Latin fonts for the English interface. */
@font-face {
  font-family: 'Panel Inter';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(fonts/inter.woff2) format('woff2');
  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;
}

[data-font="inter"] { --panel-font: "Panel Inter"; }

@font-face {
  font-family: 'Panel Roboto';
  font-style: normal;
  font-weight: 400 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(fonts/roboto.woff2) format('woff2');
  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;
}

[data-font="roboto"] { --panel-font: "Panel Roboto"; }

@font-face {
  font-family: 'Panel Open Sans';
  font-style: normal;
  font-weight: 400 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(fonts/open-sans.woff2) format('woff2');
  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;
}

[data-font="open-sans"] { --panel-font: "Panel Open Sans"; }

@font-face {
  font-family: 'Panel Montserrat';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(fonts/montserrat.woff2) format('woff2');
  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;
}

[data-font="montserrat"] { --panel-font: "Panel Montserrat"; }

@font-face {
  font-family: 'Panel Poppins';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/poppins-400.woff2) format('woff2');
  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;
}

@font-face {
  font-family: 'Panel Poppins';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/poppins-700.woff2) format('woff2');
  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;
}

[data-font="poppins"] { --panel-font: "Panel Poppins"; }

@font-face {
  font-family: "Panel Noto Sans Arabic";
  src: url("fonts/noto-sans-arabic-400.woff") format("woff");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Panel Noto Sans Arabic";
  src: url("fonts/noto-sans-arabic-700.woff") format("woff");
  font-weight: 700;
  font-display: swap;
}

[data-font="noto-sans-arabic"] { --panel-font: "Panel Noto Sans Arabic"; }

@font-face {
  font-family: "Panel DejaVu Sans";
  src: url("fonts/dejavu-sans-400.woff") format("woff");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Panel DejaVu Sans";
  src: url("fonts/dejavu-sans-700.woff") format("woff");
  font-weight: 700;
  font-display: swap;
}

[data-font="dejavu-sans"] { --panel-font: "Panel DejaVu Sans"; }

@font-face {
  font-family: "Panel Noto Serif";
  src: url("fonts/noto-serif-400.woff") format("woff");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Panel Noto Serif";
  src: url("fonts/noto-serif-700.woff") format("woff");
  font-weight: 700;
  font-display: swap;
}

[data-font="noto-serif"] { --panel-font: "Panel Noto Serif"; }

@font-face {
  font-family: "Panel Noto Sans Mono";
  src: url("fonts/noto-sans-mono-400.woff") format("woff");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Panel Noto Sans Mono";
  src: url("fonts/noto-sans-mono-700.woff") format("woff");
  font-weight: 700;
  font-display: swap;
}

[data-font="noto-sans-mono"] { --panel-font: "Panel Noto Sans Mono"; }
