@font-face {
font-family: "Geist";
src: url("/static/fonts/Geist-Variable.woff2") format("woff2-variations"),
url("/static/fonts/Geist-Variable.woff2") format("woff2");
font-weight: 100 900;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "Geist Mono";
src: url("/static/fonts/GeistMono-Variable.woff2") format("woff2-variations"),
url("/static/fonts/GeistMono-Variable.woff2") format("woff2");
font-weight: 100 900;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "Inter";
src: url("/static/fonts/InterVariable.woff2") format("woff2-variations"),
url("/static/fonts/InterVariable.woff2") format("woff2");
font-weight: 100 900;
font-style: normal;
font-display: swap;
unicode-range:
U+0000-024F, U+0259, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
U+0300-0309, U+0323, U+0329, U+0370-03FF,
U+0400-052F, U+1C80-1C88, U+1D00-1DBF, U+1E00-1EFF,
U+1F00-1FFF, U+2000-206F, U+20A0-20C0, U+2113, U+2116,
U+2122, U+2191, U+2193, U+2212, U+2215, U+2C60-2C7F,
U+A640-A69F, U+A720-A7FF, U+FE2E-FE2F, U+FEFF, U+FFFD;
}
@font-face {
font-family: "Tajawal";
src: url("/static/fonts/Tajawal-Regular.woff2") format("woff2");
font-weight: 400;
font-style: normal;
font-display: swap;
unicode-range: U+0600-06FF, U+0750-077F, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF, U+200C-200E, U+2010-2011, U+204F, U+2E41;
}
@font-face {
font-family: "Tajawal";
src: url("/static/fonts/Tajawal-Medium.woff2") format("woff2");
font-weight: 500;
font-style: normal;
font-display: swap;
unicode-range: U+0600-06FF, U+0750-077F, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF, U+200C-200E, U+2010-2011, U+204F, U+2E41;
}
@font-face {
font-family: "Tajawal";
src: url("/static/fonts/Tajawal-Bold.woff2") format("woff2");
font-weight: 700;
font-style: normal;
font-display: swap;
unicode-range: U+0600-06FF, U+0750-077F, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF, U+200C-200E, U+2010-2011, U+204F, U+2E41;
}
@font-face {
font-family: "Noto Naskh Arabic";
src: url("/static/fonts/NotoNaskhArabic-Variable.woff2") format("woff2-variations"),
url("/static/fonts/NotoNaskhArabic-Variable.woff2") format("woff2");
font-weight: 400 700;
font-style: normal;
font-display: swap;
unicode-range: U+0600-06FF, U+0750-077F, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF, U+200C-200E, U+2010-2011, U+204F, U+2E41;
}
.rio-latin,
h1, h2, h3, h4,
.rio-list-title, .rio-form-title, .rio-dash-greeting, .rio-auth-title {
font-feature-settings: "kern", "calt", "ss01", "ss03", "cv11";
}
:lang(ar),
[dir="rtl"],
[dir="rtl"] *,
.rio-arabic,
.rio-arabic * {
font-family: var(--rio-font-arabic);
letter-spacing: 0 !important;
font-feature-settings: "kern" !important;
line-height: var(--rio-lh-ui);
}
p:lang(ar),
li:lang(ar),
blockquote:lang(ar),
.rio-prose:lang(ar),
.rio-prose:lang(ar) p,
.rio-prose:lang(ar) li,
.rio-arabic-body,
.rio-arabic-body * {
font-family: var(--rio-font-arabic-body);
line-height: var(--rio-lh-arabic);
font-size: var(--rio-fs-lg);
font-weight: var(--rio-fw-regular);
}
h1, h2, h3, h4 {
margin: 0 0 var(--rio-s3);
line-height: var(--rio-lh-tight);
letter-spacing: var(--rio-tracking-heading);
color: var(--rio-text);
}
h1 {
font-size: var(--rio-fs-h1);
font-weight: var(--rio-fw-bold);
letter-spacing: var(--rio-tracking-display);
}
h2 {
font-size: var(--rio-fs-h2);
font-weight: var(--rio-fw-semibold);
}
h3 {
font-size: var(--rio-fs-h3);
font-weight: var(--rio-fw-semibold);
}
h4 {
font-size: var(--rio-fs-md);
font-weight: var(--rio-fw-semibold);
letter-spacing: 0;
}
:lang(ar) h1, :lang(ar) h2, :lang(ar) h3, :lang(ar) h4,
[dir="rtl"] h1, [dir="rtl"] h2, [dir="rtl"] h3, [dir="rtl"] h4,
h1:lang(ar), h2:lang(ar), h3:lang(ar), h4:lang(ar) {
letter-spacing: 0;
font-family: var(--rio-font-arabic);
font-weight: var(--rio-fw-bold);
}
p { margin: 0 0 var(--rio-s4); }
a { color: var(--rio-accent); text-decoration: none; font-weight: var(--rio-fw-medium); }
a:hover { text-decoration: underline; }
code, kbd, samp {
font-family: var(--rio-font-mono);
font-size: 0.875em;
font-variant-ligatures: none;
font-feature-settings: "kern";
background: rgba(var(--rio-accent-rgb) / 0.07);
padding: 0.05em 0.35em;
border-radius: var(--rio-radius-sm);
letter-spacing: 0;
}
pre {
font-family: var(--rio-font-mono);
font-size: var(--rio-fs-sm);
line-height: 1.6;
font-variant-ligatures: none;
font-feature-settings: "kern";
background: var(--rio-surface);
border: 1px solid var(--rio-border);
border-radius: var(--rio-radius);
padding: var(--rio-s3) var(--rio-s4);
overflow-x: auto;
margin: 0 0 var(--rio-s4);
}
pre code {
background: none;
padding: 0;
font-size: inherit;
border-radius: 0;
}
mark {
background: rgb(var(--rio-accent-rgb) / 0.18);
color: inherit;
padding: 0 0.1em;
border-radius: 2px;
}
@media (max-width: 600px) {
html { font-size: 16.5px; }
.rio-prose { font-size: var(--rio-fs-lg); }
}