@import url("https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap");
:root {
--moo-blue: #374E94;
--moo-teal: #367594;
--moo-purple: #563794;
--moo-silver: #787A79;
--moo-charcoal: #2B2D2C;
--moo-ink: #1A1A1A;
--moo-paper: #F4F4F2;
--dusk-primary: #3F4A6E;
--dusk-primary-strong: #2D3656;
--dusk-accent: #C68A2E;
--dusk-purple: #7A6A8E;
}
.md-main {
background-image:
linear-gradient(var(--grid-line-color, rgba(0, 0, 0, 0.04)) 1px, transparent 1px),
linear-gradient(90deg, var(--grid-line-color, rgba(0, 0, 0, 0.04)) 1px, transparent 1px);
background-size: 64px 64px;
background-position: -1px -1px;
}
[data-md-color-scheme="default"] {
--grid-line-color: rgba(63, 74, 110, 0.04);
}
[data-md-color-scheme="slate"] {
--grid-line-color: rgba(183, 192, 229, 0.03);
}
[data-md-color-scheme="default"] {
--md-primary-fg-color: var(--dusk-primary);
--md-primary-fg-color--light: #5A6595;
--md-primary-fg-color--dark: var(--dusk-primary-strong);
--md-primary-bg-color: #FFFFFF;
--md-primary-bg-color--light: rgba(255, 255, 255, 0.7);
--md-accent-fg-color: var(--dusk-accent);
--md-accent-fg-color--transparent: rgba(198, 138, 46, 0.1);
--md-default-bg-color: var(--moo-paper);
--md-typeset-a-color: var(--dusk-primary);
}
[data-md-color-scheme="slate"] {
--md-primary-fg-color: #5A6595;
--md-primary-fg-color--light: #7480B0;
--md-primary-fg-color--dark: var(--dusk-primary);
--md-accent-fg-color: #D4A35E;
--md-accent-fg-color--transparent: rgba(212, 163, 94, 0.12);
--md-default-bg-color: #1F2128;
--md-default-bg-color--light: #262932;
--md-typeset-a-color: #B7C0E5;
}
.md-typeset h1,
.md-typeset h2,
.md-typeset h3,
.md-typeset h4,
.md-typeset h5 {
font-family: "Outfit", "Manrope", system-ui, sans-serif;
font-weight: 700;
letter-spacing: -0.01em;
}
.md-typeset h1 { color: var(--md-primary-fg-color); }
.md-typeset h2 {
color: var(--md-primary-fg-color);
border-bottom: 1px solid var(--md-default-fg-color--lightest);
padding-bottom: 0.3em;
}
.md-header[data-md-state="hidden"] {
transform: translateY(calc(-100% + 4px));
transition: transform 200ms ease-out;
}
.md-header[data-md-state="hidden"]:hover {
transform: translateY(0);
}
.md-header__button.md-logo img,
.md-header__button.md-logo svg {
height: 1.6rem;
width: auto;
}
[data-md-color-scheme="default"] .md-typeset code {
background: #ECECE8;
color: #1F2128;
}
.md-typeset table:not([class]) {
font-size: 0.78rem;
}
.md-typeset table:not([class]) th {
background: var(--md-accent-fg-color--transparent);
font-family: "Outfit", sans-serif;
font-weight: 600;
color: var(--md-primary-fg-color);
}
.md-typeset .hero-row {
display: grid;
grid-template-columns: 67.5% 32.5%;
gap: 2rem;
align-items: center;
margin: 1.5rem 0 2rem;
}
.md-typeset .hero-copy { min-width: 0; }
.md-typeset .hero-mark {
width: 100%;
max-width: 100%;
height: auto;
display: block;
justify-self: end;
}
.md-typeset .hero-mark svg {
width: 100%;
height: auto;
display: block;
}
@keyframes hero-flicker {
0%, 49.5% { filter: brightness(1); }
50% { filter: brightness(2) drop-shadow(0 0 8px rgba(255,255,255,0.7)); }
50.5%, 100% { filter: brightness(1); }
}
@keyframes hero-reveal {
0% { opacity: 0; }
100% { opacity: 1; }
}
.md-typeset .hero-mark [class^="cpath-"],
.md-typeset .hero-mark [class^="hpath-"] {
opacity: 0;
}
.md-typeset .hero-mark .cpath-0 { animation: hero-flicker 30.0s linear -15.0s infinite, hero-reveal 0.4s ease-out -0.2s forwards; }
.md-typeset .hero-mark .cpath-1 { animation: hero-flicker 31.5s linear -15.8s infinite, hero-reveal 0.4s ease-out -0.2s forwards; }
.md-typeset .hero-mark .cpath-2 { animation: hero-flicker 33.0s linear -16.4s infinite, hero-reveal 0.4s ease-out -0.1s forwards; }
.md-typeset .hero-mark .cpath-3 { animation: hero-flicker 34.5s linear -17.0s infinite, hero-reveal 0.4s ease-out 0.1s forwards; }
.md-typeset .hero-mark .cpath-4 { animation: hero-flicker 36.0s linear -17.5s infinite, hero-reveal 0.4s ease-out 0.3s forwards; }
.md-typeset .hero-mark .cpath-5 { animation: hero-flicker 37.5s linear -18.0s infinite, hero-reveal 0.4s ease-out 0.6s forwards; }
.md-typeset .hero-mark .cpath-6 { animation: hero-flicker 39.0s linear -18.4s infinite, hero-reveal 0.4s ease-out 0.9s forwards; }
.md-typeset .hero-mark .cpath-7 { animation: hero-flicker 40.5s linear -18.8s infinite, hero-reveal 0.4s ease-out 1.3s forwards; }
.md-typeset .hero-mark .cpath-8 { animation: hero-flicker 42.0s linear -19.2s infinite, hero-reveal 0.4s ease-out 1.6s forwards; }
.md-typeset .hero-mark .cpath-9 { animation: hero-flicker 43.5s linear -19.6s infinite, hero-reveal 0.4s ease-out 2.0s forwards; }
.md-typeset .hero-mark .cpath-10 { animation: hero-flicker 45.0s linear -19.9s infinite, hero-reveal 0.4s ease-out 2.4s forwards; }
.md-typeset .hero-mark .cpath-11 { animation: hero-flicker 46.5s linear -20.4s infinite, hero-reveal 0.4s ease-out 2.7s forwards; }
.md-typeset .hero-mark .cpath-12 { animation: hero-flicker 48.0s linear -20.8s infinite, hero-reveal 0.4s ease-out 3.0s forwards; }
.md-typeset .hero-mark .cpath-13 { animation: hero-flicker 49.5s linear -21.3s infinite, hero-reveal 0.4s ease-out 3.3s forwards; }
.md-typeset .hero-mark .cpath-14 { animation: hero-flicker 51.0s linear -21.8s infinite, hero-reveal 0.4s ease-out 3.5s forwards; }
.md-typeset .hero-mark .cpath-15 { animation: hero-flicker 52.5s linear -22.4s infinite, hero-reveal 0.4s ease-out 3.7s forwards; }
.md-typeset .hero-mark .cpath-16 { animation: hero-flicker 55.0s linear -23.5s infinite, hero-reveal 0.4s ease-out 3.8s forwards; }
.md-typeset .hero-mark .cpath-17 { animation: hero-flicker 60.0s linear -26.0s infinite, hero-reveal 0.4s ease-out 3.8s forwards; }
.md-typeset .hero-mark [class^="hpath-"] {
animation: hero-reveal 0.6s ease-out 4.2s forwards;
}
@media (prefers-reduced-motion: reduce) {
.md-typeset .hero-mark [class^="cpath-"] {
animation: none;
opacity: 1;
}
}
@media (max-width: 60em) {
.md-typeset .hero-row {
grid-template-columns: 1fr;
gap: 1rem;
}
.md-typeset .hero-mark {
display: none;
}
}
.md-typeset .hero-tagline {
font-family: "Outfit", sans-serif;
font-weight: 600;
font-size: 0.85rem;
letter-spacing: 0.18em;
text-transform: uppercase;
color: var(--md-default-fg-color--light);
margin-bottom: 0.6rem;
}
.md-typeset .hero-wordmark {
font-family: "Outfit", sans-serif;
font-weight: 800;
font-size: 3rem;
line-height: 1.1;
letter-spacing: -0.02em;
margin: 0 0 0.8rem;
}
.md-typeset .hero-wordmark .a { color: var(--dusk-primary); }
.md-typeset .hero-wordmark .b { color: var(--dusk-accent); }
.md-typeset .hero-lede {
font-size: 1.1rem;
line-height: 1.5;
max-width: 38em;
color: var(--md-default-fg-color);
}
.md-typeset .hero-actions {
display: flex;
gap: 0.6rem;
margin-top: 1.4rem;
flex-wrap: wrap;
}
.md-typeset .hero-actions .md-button {
margin: 0;
}
.md-typeset .hero-install {
display: inline-block;
margin-top: 1.4rem;
padding: 0.75rem 1.1rem;
font-family: "JetBrains Mono", monospace;
font-size: 0.95rem;
background: var(--md-code-bg-color);
border: 1px solid var(--md-default-fg-color--lightest);
border-radius: 8px;
}
.md-typeset .hero-install .prompt {
color: var(--md-default-fg-color--light);
user-select: none;
}
.md-typeset .grid.cards > :is(ul, ol) {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
gap: 1rem;
margin: 1.2rem 0;
padding: 0;
list-style: none;
}
.md-typeset .grid.cards > :is(ul, ol) > li {
border: 2px solid var(--md-default-fg-color--lightest);
border-radius: 8px;
padding: 1rem 1.2rem;
background: var(--md-default-bg-color);
box-shadow:
4px 6px 14px var(--card-shadow-rest, rgba(26, 26, 26, 0.12)),
2px 3px 6px var(--card-shadow-rest-tight, rgba(26, 26, 26, 0.06));
transition: border-color 200ms, box-shadow 200ms, transform 200ms;
}
.md-typeset .grid.cards > :is(ul, ol) > li:hover {
border-color: var(--md-primary-fg-color);
box-shadow:
8px 10px 22px var(--card-shadow-hover, rgba(26, 26, 26, 0.18)),
3px 5px 8px var(--card-shadow-hover-tight, rgba(26, 26, 26, 0.08));
}
[data-md-color-scheme="slate"] {
--card-shadow-rest: rgba(183, 192, 229, 0.08);
--card-shadow-rest-tight: rgba(183, 192, 229, 0.04);
--card-shadow-hover: rgba(212, 163, 94, 0.18);
--card-shadow-hover-tight: rgba(212, 163, 94, 0.10);
}
.md-footer-meta {
background: var(--md-primary-fg-color--dark);
}