/* Typed borders, generated by scripts/gen-frames.mjs (don't edit by hand). Each is a border-image whose tiles are
 * the glyph shapes of JetBrains Mono, one character cell by one line, so a box reads like typed text. */
:root {
  --fr-ink: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='461.4' viewBox='0 0 1.8 4.614' fill='%23BDBDBD'%3E%3Crect x='0.215' y='0.974' width='0.17' height='0.165'/%3E%3Crect x='0.74' y='0.759' width='0.32' height='0.08'/%3E%3Crect x='1.415' y='0.974' width='0.17' height='0.165'/%3E%3Crect x='0.255' y='1.838' width='0.09' height='0.94'/%3E%3Crect x='1.455' y='1.838' width='0.09' height='0.94'/%3E%3Crect x='0.245' y='3.476' width='0.1' height='0.3'/%3E%3Crect x='0.74' y='3.835' width='0.32' height='0.08'/%3E%3Crect x='1.445' y='3.476' width='0.1' height='0.3'/%3E%3C/svg%3E");
  --frh-ink: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='307.6' viewBox='0 0 1.8 3.076' fill='%23BDBDBD'%3E%3Crect x='0.215' y='0.56' width='0.17' height='0.165'/%3E%3Crect x='0.74' y='0.345' width='0.32' height='0.08'/%3E%3Crect x='1.415' y='0.56' width='0.17' height='0.165'/%3E%3Crect x='0.255' y='1.069' width='0.09' height='0.94'/%3E%3Crect x='1.455' y='1.069' width='0.09' height='0.94'/%3E%3Crect x='0.245' y='2.293' width='0.1' height='0.3'/%3E%3Crect x='0.74' y='2.652' width='0.32' height='0.08'/%3E%3Crect x='1.445' y='2.293' width='0.1' height='0.3'/%3E%3C/svg%3E");
  --ln-dash-ink: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='153.8' viewBox='0 0 0.6 1.538' fill='%23BDBDBD'%3E%3Crect x='0.14' y='0.759' width='0.32' height='0.08'/%3E%3C/svg%3E");
  --ln-colon-ink: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='153.8' viewBox='0 0 0.6 1.538' fill='%23BDBDBD'%3E%3Crect x='0.215' y='0.569' width='0.17' height='0.165'/%3E%3Crect x='0.215' y='0.974' width='0.17' height='0.165'/%3E%3C/svg%3E");
  --ln-under-ink: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='153.8' viewBox='0 0 0.6 1.538' fill='%23BDBDBD'%3E%3Crect x='0.06' y='1.154' width='0.48' height='0.075'/%3E%3C/svg%3E");
  --fr-white: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='461.4' viewBox='0 0 1.8 4.614' fill='%23EDEDED'%3E%3Crect x='0.215' y='0.974' width='0.17' height='0.165'/%3E%3Crect x='0.74' y='0.759' width='0.32' height='0.08'/%3E%3Crect x='1.415' y='0.974' width='0.17' height='0.165'/%3E%3Crect x='0.255' y='1.838' width='0.09' height='0.94'/%3E%3Crect x='1.455' y='1.838' width='0.09' height='0.94'/%3E%3Crect x='0.245' y='3.476' width='0.1' height='0.3'/%3E%3Crect x='0.74' y='3.835' width='0.32' height='0.08'/%3E%3Crect x='1.445' y='3.476' width='0.1' height='0.3'/%3E%3C/svg%3E");
  --frh-white: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='307.6' viewBox='0 0 1.8 3.076' fill='%23EDEDED'%3E%3Crect x='0.215' y='0.56' width='0.17' height='0.165'/%3E%3Crect x='0.74' y='0.345' width='0.32' height='0.08'/%3E%3Crect x='1.415' y='0.56' width='0.17' height='0.165'/%3E%3Crect x='0.255' y='1.069' width='0.09' height='0.94'/%3E%3Crect x='1.455' y='1.069' width='0.09' height='0.94'/%3E%3Crect x='0.245' y='2.293' width='0.1' height='0.3'/%3E%3Crect x='0.74' y='2.652' width='0.32' height='0.08'/%3E%3Crect x='1.445' y='2.293' width='0.1' height='0.3'/%3E%3C/svg%3E");
  --ln-dash-white: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='153.8' viewBox='0 0 0.6 1.538' fill='%23EDEDED'%3E%3Crect x='0.14' y='0.759' width='0.32' height='0.08'/%3E%3C/svg%3E");
  --ln-colon-white: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='153.8' viewBox='0 0 0.6 1.538' fill='%23EDEDED'%3E%3Crect x='0.215' y='0.569' width='0.17' height='0.165'/%3E%3Crect x='0.215' y='0.974' width='0.17' height='0.165'/%3E%3C/svg%3E");
  --ln-under-white: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='153.8' viewBox='0 0 0.6 1.538' fill='%23EDEDED'%3E%3Crect x='0.06' y='1.154' width='0.48' height='0.075'/%3E%3C/svg%3E");
  --fr-soft: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='461.4' viewBox='0 0 1.8 4.614' fill='%235C5C5C'%3E%3Crect x='0.215' y='0.974' width='0.17' height='0.165'/%3E%3Crect x='0.74' y='0.759' width='0.32' height='0.08'/%3E%3Crect x='1.415' y='0.974' width='0.17' height='0.165'/%3E%3Crect x='0.255' y='1.838' width='0.09' height='0.94'/%3E%3Crect x='1.455' y='1.838' width='0.09' height='0.94'/%3E%3Crect x='0.245' y='3.476' width='0.1' height='0.3'/%3E%3Crect x='0.74' y='3.835' width='0.32' height='0.08'/%3E%3Crect x='1.445' y='3.476' width='0.1' height='0.3'/%3E%3C/svg%3E");
  --frh-soft: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='307.6' viewBox='0 0 1.8 3.076' fill='%235C5C5C'%3E%3Crect x='0.215' y='0.56' width='0.17' height='0.165'/%3E%3Crect x='0.74' y='0.345' width='0.32' height='0.08'/%3E%3Crect x='1.415' y='0.56' width='0.17' height='0.165'/%3E%3Crect x='0.255' y='1.069' width='0.09' height='0.94'/%3E%3Crect x='1.455' y='1.069' width='0.09' height='0.94'/%3E%3Crect x='0.245' y='2.293' width='0.1' height='0.3'/%3E%3Crect x='0.74' y='2.652' width='0.32' height='0.08'/%3E%3Crect x='1.445' y='2.293' width='0.1' height='0.3'/%3E%3C/svg%3E");
  --ln-dash-soft: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='153.8' viewBox='0 0 0.6 1.538' fill='%235C5C5C'%3E%3Crect x='0.14' y='0.759' width='0.32' height='0.08'/%3E%3C/svg%3E");
  --ln-colon-soft: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='153.8' viewBox='0 0 0.6 1.538' fill='%235C5C5C'%3E%3Crect x='0.215' y='0.569' width='0.17' height='0.165'/%3E%3Crect x='0.215' y='0.974' width='0.17' height='0.165'/%3E%3C/svg%3E");
  --ln-under-soft: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='153.8' viewBox='0 0 0.6 1.538' fill='%235C5C5C'%3E%3Crect x='0.06' y='1.154' width='0.48' height='0.075'/%3E%3C/svg%3E");
  --fr-faint: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='461.4' viewBox='0 0 1.8 4.614' fill='%232A2A2A'%3E%3Crect x='0.215' y='0.974' width='0.17' height='0.165'/%3E%3Crect x='0.74' y='0.759' width='0.32' height='0.08'/%3E%3Crect x='1.415' y='0.974' width='0.17' height='0.165'/%3E%3Crect x='0.255' y='1.838' width='0.09' height='0.94'/%3E%3Crect x='1.455' y='1.838' width='0.09' height='0.94'/%3E%3Crect x='0.245' y='3.476' width='0.1' height='0.3'/%3E%3Crect x='0.74' y='3.835' width='0.32' height='0.08'/%3E%3Crect x='1.445' y='3.476' width='0.1' height='0.3'/%3E%3C/svg%3E");
  --frh-faint: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='307.6' viewBox='0 0 1.8 3.076' fill='%232A2A2A'%3E%3Crect x='0.215' y='0.56' width='0.17' height='0.165'/%3E%3Crect x='0.74' y='0.345' width='0.32' height='0.08'/%3E%3Crect x='1.415' y='0.56' width='0.17' height='0.165'/%3E%3Crect x='0.255' y='1.069' width='0.09' height='0.94'/%3E%3Crect x='1.455' y='1.069' width='0.09' height='0.94'/%3E%3Crect x='0.245' y='2.293' width='0.1' height='0.3'/%3E%3Crect x='0.74' y='2.652' width='0.32' height='0.08'/%3E%3Crect x='1.445' y='2.293' width='0.1' height='0.3'/%3E%3C/svg%3E");
  --ln-dash-faint: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='153.8' viewBox='0 0 0.6 1.538' fill='%232A2A2A'%3E%3Crect x='0.14' y='0.759' width='0.32' height='0.08'/%3E%3C/svg%3E");
  --ln-colon-faint: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='153.8' viewBox='0 0 0.6 1.538' fill='%232A2A2A'%3E%3Crect x='0.215' y='0.569' width='0.17' height='0.165'/%3E%3Crect x='0.215' y='0.974' width='0.17' height='0.165'/%3E%3C/svg%3E");
  --ln-under-faint: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='153.8' viewBox='0 0 0.6 1.538' fill='%232A2A2A'%3E%3Crect x='0.06' y='1.154' width='0.48' height='0.075'/%3E%3C/svg%3E");
}
.fr, .frh { border-style: solid; border-color: transparent; border-image-repeat: round; border-radius: 0; }
.fr { border-width: 1.538em 0.6em; border-image-slice: 153.8 60 fill; border-image-source: var(--fr-ink); }
.frh { border-width: 0.769em 0.6em; border-image-slice: 76.9 60 fill; border-image-source: var(--frh-ink); }
.fr.ink { border-image-source: var(--fr-ink); } .frh.ink { border-image-source: var(--frh-ink); }
.fr.white { border-image-source: var(--fr-white); } .frh.white { border-image-source: var(--frh-white); }
.fr.soft { border-image-source: var(--fr-soft); } .frh.soft { border-image-source: var(--frh-soft); }
.fr.faint { border-image-source: var(--fr-faint); } .frh.faint { border-image-source: var(--frh-faint); }
.rule-dash { height: 1.538em; background: var(--ln-dash-soft) repeat-x left center / 0.6em 1.538em; }
