:root {
  --md-text-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --md-code-font: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
  --md-primary-fg-color: #173d32;
  --md-accent-fg-color: #256a50;
  --fib-muted: #56655d;
  --fib-border: #dce0d5;
  --fib-card: #fffefa;
  --fib-surface: #f1f2e9;
}
[data-md-color-scheme="default"] {
  --md-default-bg-color: #faf9f4;
  --md-default-fg-color: #1b3027;
  --md-typeset-a-color: #23674c;
}
[data-md-color-scheme="slate"] {
  --md-default-bg-color: #15231d;
  --md-default-fg-color: #eaf0e7;
  --md-default-fg-color--light: #c1cebd;
  --md-typeset-a-color: #c3df87;
  --fib-muted: #b8c7b6;
  --fib-border: #35493b;
  --fib-card: #1b2d24;
  --fib-surface: #1e3328;
}
.md-header { box-shadow: none; }
.md-header__title { font-weight: 750; letter-spacing: -.04em; }
.md-tabs { border-bottom: 1px solid #ffffff1a; }
.md-typeset { font-size: .79rem; line-height: 1.7; }
.md-typeset h1, .md-typeset h2, .md-typeset h3 { font-weight: 700; letter-spacing: -.025em; }
.md-typeset h1 { color: var(--md-default-fg-color); }
.md-typeset pre > code { border-radius: .4rem; }
.md-typeset table:not([class]) { font-size: .65rem; }
.md-typeset .fib-home { margin-top: .2rem; }
.fib-hero { display: grid; grid-template-columns: 1.13fr 1fr; gap: 3.2rem; align-items: center; padding: 2.1rem 0 3.3rem; }
.md-typeset .fib-eyebrow { color: var(--fib-muted); font-family: var(--md-code-font); font-size: .59rem; font-weight: 650; letter-spacing: .13em; margin-bottom: 1.1rem; }
.md-typeset .fib-hero h1 { font-size: clamp(2.1rem, 4.2vw, 3.4rem); line-height: 1.08; letter-spacing: -.055em; margin: 0 0 1.3rem; }
.fib-hero h1 span { color: var(--md-typeset-a-color); }
.fib-hero-copy > p:not(.fib-eyebrow):not(.fib-release) { max-width: 25rem; color: var(--fib-muted); font-size: .9rem; }
.fib-actions { display: flex; flex-wrap: wrap; gap: .65rem; margin: 1.5rem 0 1rem; }
.md-typeset .fib-actions p { display: contents; }
.md-typeset .fib-button { display: inline-flex; padding: .65rem 1rem; border: 1px solid var(--fib-border); border-radius: .35rem; font-size: .73rem; font-weight: 650; text-decoration: none; transition: background .15s; }
.md-typeset .fib-button-primary { color: #fffdf7; background: #173d32; border-color: #173d32; }
.md-typeset .fib-button-primary:hover { background: #265f49; border-color: #265f49; }
[data-md-color-scheme="slate"] .fib-button-primary { background: #d3eaa2; border-color: #d3eaa2; color: #182d21; }
.md-typeset .fib-button-secondary:hover { background: var(--fib-surface); }
.md-typeset .fib-release { color: var(--fib-muted); font-family: var(--md-code-font); font-size: .6rem; }
.fib-code-window { overflow: hidden; background: #172b23; color: #e9eedf; border: 1px solid #35483a; border-radius: .65rem; box-shadow: 0 18px 45px #122e1910; transform: rotate(1deg); }
.fib-code-title { display: flex; align-items: center; gap: .5rem; padding: .8rem 1rem; border-bottom: 1px solid #ffffff18; font-family: var(--md-code-font); font-size: .58rem; color: #c8d5c4; }
.fib-code-title > span:last-child { margin-left: auto; font-size: .5rem; letter-spacing: .08em; color: #99b2a0; }
.fib-status-dot { width: .3rem; height: .3rem; border-radius: 50%; background: #d3eaa2; }
.md-typeset .fib-code-window .highlight { margin: .7rem 0; }
.md-typeset .fib-code-window pre > code { background: transparent; color: #e9eedf; padding: .5rem 1rem; font-size: .63rem; line-height: 1.8; }
.fib-code-window .highlight span { color: #e9eedf; }
.fib-code-window .highlight .nf, .fib-code-window .highlight .k { color: #d6eab0; }
.fib-code-window .highlight .s, .fib-code-window .highlight .s2 { color: #a1d6be; }
.fib-code-window .highlight .mi, .fib-code-window .highlight .m { color: #e5c792; }
.fib-code-window .highlight .nb, .fib-code-window .highlight .nv { color: #e1e8db; }
.fib-code-window .md-clipboard { color: #b0c5b5; background: transparent; }
.fib-code-command { border-top: 1px solid #ffffff18; background: #ffffff05; }
.md-typeset .fib-code-command .highlight { margin: 0; }
.fib-principles { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; padding: 2rem 0 2.8rem; border-top: 1px solid var(--fib-border); }
.fib-number { font-family: var(--md-code-font); font-size: .55rem; color: var(--fib-muted); letter-spacing: .07em; }
.md-typeset .fib-principles h2 { font-size: 1.04rem; margin: .65rem 0 .55rem; }
.fib-principles p { color: var(--fib-muted); font-size: .73rem; }
.fib-principles a, .fib-library a, .fib-inline-link { font-size: .69rem; font-weight: 650; }
.fib-get-started { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; background: var(--fib-surface); border: 1px solid var(--fib-border); border-radius: .6rem; padding: 2rem; margin: 0 0 2.8rem; }
.fib-get-started > div { min-width: 0; }
.md-typeset .fib-get-started h2 { margin: 0; font-size: 1.6rem; line-height: 1.2; }
.fib-get-started p { color: var(--fib-muted); font-size: .73rem; }
.fib-install .tabbed-labels { box-shadow: 0 -1px var(--fib-border) inset; }
.fib-install .tabbed-labels label { font-size: .69rem; }
.fib-install pre > code { background: var(--fib-card); font-size: .58rem; }
.fib-library { margin-bottom: 2.4rem; }
.md-typeset .fib-library h2 { margin: 0 0 1.4rem; font-size: 1.8rem; }
.fib-library-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: .8rem; }
.fib-library-grid > div { padding: 1.25rem; border: 1px solid var(--fib-border); border-radius: .45rem; background: var(--fib-card); }
.md-typeset .fib-library-grid h3 { margin: 0 0 .6rem; font-size: .95rem; }
.fib-library-grid p { color: var(--fib-muted); font-size: .72rem; }
.fib-status { border-top: 1px solid var(--fib-border); padding: 1rem 0 .8rem; color: var(--fib-muted); font-size: .65rem; }
.fib-status strong { color: var(--md-default-fg-color); }
:focus-visible { outline: 3px solid var(--md-typeset-a-color); outline-offset: 3px; }
@media (min-width: 1220px) { .md-content:has(.fib-home) { margin: 0; } }
@media (max-width: 960px) {
  .fib-hero { gap: 1.5rem; }
  .fib-principles { gap: 1.2rem; }
  .fib-get-started { gap: 1.5rem; padding: 1.4rem; }
}
@media (max-width: 700px) {
  .fib-hero, .fib-get-started { grid-template-columns: 1fr; }
  .fib-hero { padding: 1rem 0 2rem; gap: 1.5rem; }
  .md-typeset .fib-hero h1 { font-size: 2.6rem; }
  .fib-code-window { transform: none; }
  .fib-principles, .fib-library-grid { grid-template-columns: 1fr; }
  .fib-principles { gap: 1.3rem; padding: 1.6rem 0; }
  .fib-get-started { margin-top: .8rem; margin-bottom: 2rem; }
  .md-typeset .fib-library h2 { font-size: 1.5rem; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; } }
