/* Hissline public site — Signal Tubes.
   Tokens and components follow the approved mock. Scoped to .hl-site, which
   the marketing and auth layouts set. The authenticated app does not.
   Geist, Inter, and JetBrains Mono are OFL and self-hosted.
   Noto covers Cyrillic, Devanagari, and Simplified Chinese for /ru /hi /zh. */

@font-face {
  font-family: "Geist";
  font-style: normal;
  font-weight: 500 600;
  font-display: swap;
  src: url("/assets/geist-500-600-cyrillic-91394633.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "Geist";
  font-style: normal;
  font-weight: 500 600;
  font-display: swap;
  src: url("/assets/geist-500-600-latin-ext-4f909eff.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Geist";
  font-style: normal;
  font-weight: 500 600;
  font-display: swap;
  src: url("/assets/geist-500-600-latin-90ac0fe7.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: "Inter";
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url("/assets/inter-cyrillic-659d95ea.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url("/assets/inter-latin-ext-65edaaef.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url("/assets/inter-latin-1f021a24.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: "JetBrains Mono";
  font-style: normal;
  font-weight: 400 500;
  font-display: swap;
  src: url("/assets/jetbrains-mono-cyrillic-fe9f2f8c.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 400 500;
  font-display: swap;
  src: url("/assets/jetbrains-mono-latin-ext-cc1590e8.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 400 500;
  font-display: swap;
  src: url("/assets/jetbrains-mono-latin-8a992d39.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: "Noto Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/noto-sans-400-cyrillic-5b25e387.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "Noto Sans";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/noto-sans-600-cyrillic-e7358227.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "Noto Sans Devanagari";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/noto-sans-devanagari-400-8a307ca3.woff2") format("woff2");
  unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+A8E0-A8FF;
}
@font-face {
  font-family: "Noto Sans Devanagari";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/noto-sans-devanagari-600-7891f31a.woff2") format("woff2");
  unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+A8E0-A8FF;
}
@font-face {
  font-family: "Noto Sans SC";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/noto-sans-sc-400-fdbaa66e.woff2") format("woff2");
  unicode-range: U+2E80-2EFF, U+3000-303F, U+31C0-31EF, U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+FF00-FFEF;
}
@font-face {
  font-family: "Noto Sans SC";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/noto-sans-sc-600-049c7abc.woff2") format("woff2");
  unicode-range: U+2E80-2EFF, U+3000-303F, U+31C0-31EF, U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+FF00-FFEF;
}
@font-face {
  font-family: "Noto Sans Mono";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/noto-sans-mono-400-cyrillic-de2e0662.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

.hl-site {
  --hl-abyss: #07090d;
  --hl-panel: #0f141c;
  --hl-panel-lift: #151c27;
  --hl-line: rgba(168, 178, 193, 0.14);
  --hl-line-strong: rgba(168, 178, 193, 0.28);
  --hl-signal: #5eead4;
  --hl-signal-mid: #2dd4bf;
  --hl-signal-glow: rgba(94, 234, 212, 0.35);
  --hl-signal-wash: rgba(94, 234, 212, 0.08);
  --hl-steel: #a8b2c1;
  --hl-highlight: #e8eef7;
  --hl-rose: #f43f5e;
  --hl-rose-deep: #be123c;
  --hl-paper: #f4f6f8;
  --hl-ink: #0b1220;
  --hl-ink-soft: #3b4658;
  --hl-font-display: "Geist", "Satoshi", "Inter Tight", "Inter", system-ui, -apple-system, "Segoe UI", "Noto Sans Devanagari", "Noto Sans CJK SC", "Noto Sans SC", "Noto Sans", sans-serif;
  --hl-font-body: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans Devanagari", "Noto Sans CJK SC", "Noto Sans SC", "Noto Sans", sans-serif;
  --hl-font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, "Noto Sans Mono CJK SC", "Noto Sans Mono", monospace;
  --hl-r-sm: 8px;
  --hl-r-md: 12px;
  --hl-r-lg: 20px;
  --hl-r-pill: 999px;
  --hl-shadow-slip: 0 24px 60px -20px rgba(0, 0, 0, 0.65), 0 0 0 1px var(--hl-line);
  --hl-shadow-glow: 0 0 0 1px rgba(94, 234, 212, 0.35), 0 0 32px -6px var(--hl-signal-glow);
  --hl-ease: cubic-bezier(0.2, 0.7, 0.2, 1);

  margin: 0;
  background: var(--hl-abyss);
  color: var(--hl-steel);
  font: 15px/1.6 var(--hl-font-body);
  -webkit-font-smoothing: antialiased;
  color-scheme: dark;
}

.hl-site a { color: inherit; text-decoration: none; }
.hl-site code,
.hl-site pre,
.hl-site .hl-mono { font-family: var(--hl-font-mono); }
.hl-site h1,
.hl-site h2,
.hl-site h3,
.hl-site h4,
.hl-site h5 {
  font-family: var(--hl-font-display);
  color: var(--hl-highlight);
  font-weight: 600;
  letter-spacing: -0.02em;
  margin: 0;
}
.hl-site ::selection { background: var(--hl-signal); color: var(--hl-ink); }

.hl-site .hl-sprite { position: absolute; width: 0; height: 0; overflow: hidden; }

.hl-site .hl-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 44px;
  padding: 0 20px;
  border-radius: var(--hl-r-pill);
  font: 600 14.5px/1 var(--hl-font-body);
  letter-spacing: -0.005em;
  cursor: pointer;
  border: 0;
  background: transparent;
  transition: all 0.2s var(--hl-ease);
  white-space: nowrap;
}
.hl-site .hl-btn:focus-visible { outline: 2px solid var(--hl-signal); outline-offset: 3px; }
.hl-site .hl-btn--primary {
  background: var(--hl-rose);
  color: var(--hl-ink);
  box-shadow: 0 8px 24px -8px rgba(244, 63, 94, 0.6);
}
.hl-site .hl-btn--primary:hover { background: #fb5a74; transform: translateY(-1px); }
.hl-site .hl-btn--primary:active { background: var(--hl-rose-deep); }
.hl-site .hl-btn--secondary {
  color: var(--hl-signal);
  box-shadow: inset 0 0 0 1px rgba(94, 234, 212, 0.5);
}
.hl-site .hl-btn--secondary:hover {
  background: var(--hl-signal-wash);
  box-shadow: inset 0 0 0 1px var(--hl-signal), 0 0 24px -6px var(--hl-signal-glow);
}
.hl-site .hl-btn--ghost { color: var(--hl-highlight); }
.hl-site .hl-btn--ghost:hover { color: var(--hl-signal); }
.hl-site .hl-btn--sm { height: 36px; padding: 0 15px; font-size: 13.5px; }

.hl-site .hl-rail {
  position: sticky;
  top: 0;
  z-index: 20;
  display: flex;
  align-items: center;
  gap: 22px;
  height: 64px;
  padding: 0 40px;
  background: rgba(7, 9, 13, 0.72);
  backdrop-filter: blur(14px) saturate(140%);
  -webkit-backdrop-filter: blur(14px) saturate(140%);
  border-bottom: 1px solid var(--hl-line);
}
.hl-site .hl-brand {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-right: 8px;
  font: 600 18px var(--hl-font-display);
  color: var(--hl-highlight);
  letter-spacing: -0.03em;
}
.hl-site .hl-mark { color: var(--hl-steel); display: block; flex: none; }
.hl-site .hl-rail-nav { display: flex; gap: 26px; font-size: 14px; }
.hl-site .hl-rail-nav a { color: var(--hl-steel); transition: color 0.2s var(--hl-ease); }
.hl-site .hl-rail-nav a:hover { color: var(--hl-highlight); }
.hl-site .hl-rail-right { margin-left: auto; display: flex; align-items: center; gap: 8px; }
.hl-site .hl-lang { position: relative; }
.hl-site .hl-lang summary {
  list-style: none;
  cursor: pointer;
  font: 500 12px var(--hl-font-mono);
  color: var(--hl-steel);
}
.hl-site .hl-lang summary::-webkit-details-marker { display: none; }
.hl-site .hl-lang summary:focus-visible { outline: 2px solid var(--hl-signal); outline-offset: 3px; }
.hl-site .hl-lang-menu {
  position: absolute;
  bottom: calc(100% + 8px);
  left: 0;
  min-width: 112px;
  display: grid;
  gap: 2px;
  padding: 8px;
  border-radius: 12px;
  background: var(--hl-panel-lift);
  border: 1px solid var(--hl-line-strong);
  box-shadow: var(--hl-shadow-slip);
  z-index: 5;
}
.hl-site .hl-lang-menu a,
.hl-site .hl-lang-menu span {
  display: block;
  padding: 6px 8px;
  border-radius: 8px;
  font: 500 12px var(--hl-font-mono);
  color: var(--hl-steel);
}
.hl-site .hl-lang-menu a:hover,
.hl-site .hl-lang-menu [aria-current="true"] { color: var(--hl-signal); background: var(--hl-signal-wash); }
.hl-site .hl-menu .hl-menu-btn { display: inline-flex; align-items: center; justify-content: center; }
.hl-site .hl-menu-btn {
  display: none;
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: var(--hl-highlight);
  cursor: pointer;
}
.hl-site .hl-menu-btn:focus-visible { outline: 2px solid var(--hl-signal); outline-offset: 3px; }

.hl-site .hl-menu {
  position: fixed;
  inset: 0;
  z-index: 40;
  background: rgba(7, 9, 13, 0.96);
  padding: 24px 24px 40px;
  overflow: auto;
}
.hl-site .hl-menu.hidden { display: none; }
.hl-site .hl-menu-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 28px; }
.hl-site .hl-menu nav { display: grid; gap: 6px; }
.hl-site .hl-menu nav a {
  display: block;
  padding: 12px 4px;
  font: 600 22px var(--hl-font-display);
  color: var(--hl-highlight);
  letter-spacing: -0.03em;
}
.hl-site .hl-menu .hl-menu-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 12px; }

.hl-site .hl-wrap { max-width: 1160px; margin: 0 auto; padding: 0 40px; }
.hl-site .hl-hero { position: relative; padding: 72px 0 64px; overflow: hidden; }
.hl-site .hl-hero-grid { display: grid; grid-template-columns: 1.05fr 1fr; gap: 36px; align-items: center; }
.hl-site .hl-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font: 500 12.5px var(--hl-font-mono);
  color: var(--hl-signal);
  padding: 6px 12px 6px 6px;
  border-radius: 999px;
  background: var(--hl-signal-wash);
  box-shadow: inset 0 0 0 1px rgba(94, 234, 212, 0.22);
}
.hl-site .hl-eyebrow b {
  background: var(--hl-signal);
  color: var(--hl-ink);
  padding: 2px 8px;
  border-radius: 999px;
  font-weight: 600;
}
.hl-site .hl-hero h1 {
  font-size: 52px;
  line-height: 1.04;
  letter-spacing: -0.04em;
  margin: 22px 0 20px;
  text-wrap: balance;
}
.hl-site .hl-glow {
  background: linear-gradient(92deg, var(--hl-highlight) 0%, var(--hl-signal) 70%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.hl-site .hl-sub { font-size: 18px; line-height: 1.6; color: var(--hl-steel); max-width: 520px; margin: 0 0 30px; }
.hl-site .hl-ctas { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
.hl-site .hl-fine { margin-top: 16px; font-size: 12.5px; color: rgba(168, 178, 193, 0.6); }

.hl-site .hl-stage {
  position: relative;
  height: 500px;
  border-radius: 24px;
  background:
    radial-gradient(70% 60% at 55% 45%, rgba(45, 212, 191, 0.14), transparent 70%),
    linear-gradient(180deg, #0a0f16, #07090d);
  border: 1px dashed rgba(94, 234, 212, 0.28);
  overflow: hidden;
}
.hl-site .hl-stage svg { position: absolute; inset: 0; width: 100%; height: 100%; }
.hl-site .hl-stage .hl-hatch { position: absolute; left: 18px; top: 52px; width: 300px; }
.hl-site .hl-stage .hl-hatch pre { font-size: 11px; padding: 12px 14px; white-space: pre-wrap; overflow-wrap: anywhere; }
.hl-site .hl-stage .hl-slip { position: absolute; right: 18px; bottom: 18px; width: 270px; font-size: 11.5px; }

.hl-site .hl-hatch {
  background: linear-gradient(180deg, #0b1018, #090d13);
  border: 1px solid var(--hl-line);
  border-radius: var(--hl-r-md);
  overflow: hidden;
  text-align: left;
  box-shadow: var(--hl-shadow-slip);
}
.hl-site .hl-hatch-head {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  border-bottom: 1px solid var(--hl-line);
  background: rgba(255, 255, 255, 0.015);
}
.hl-site .hl-port {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: 1.5px solid var(--hl-signal-mid);
  box-shadow: 0 0 10px var(--hl-signal-glow);
  flex: none;
}
.hl-site .hl-hatch-head .hl-t { font: 500 12px var(--hl-font-mono); color: var(--hl-steel); }
.hl-site .hl-copy {
  margin-left: auto;
  font: 500 11px var(--hl-font-mono);
  color: rgba(168, 178, 193, 0.6);
  cursor: pointer;
  padding: 3px 8px;
  border-radius: 6px;
  border: 1px solid var(--hl-line);
  background: none;
  height: fit-content;
}
.hl-site .hl-copy:hover { color: var(--hl-signal); border-color: rgba(94, 234, 212, 0.4); }
.hl-site .hl-hatch { min-width: 0; max-width: 100%; }
.hl-site .hl-wait > *,
.hl-site .hl-closing > * { min-width: 0; }
.hl-site .hl-hatch pre {
  margin: 0;
  padding: 16px 18px;
  font-size: 12.8px;
  line-height: 1.7;
  color: #cfd8e3;
  overflow: auto;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.hl-site .hl-k { color: #7dd3fc; }
.hl-site .hl-s { color: var(--hl-signal); }
.hl-site .hl-c { color: #5b6677; }
.hl-site .hl-f { color: var(--hl-highlight); }
.hl-site .hl-slip {
  background: var(--hl-paper);
  color: var(--hl-ink);
  border-radius: 14px;
  padding: 16px 18px;
  font: 12.5px/1.65 var(--hl-font-mono);
  box-shadow: 0 30px 60px -24px rgba(0, 0, 0, 0.8);
  position: relative;
  text-align: left;
}
.hl-site .hl-slip::before {
  content: "";
  position: absolute;
  left: 18px;
  right: 18px;
  top: -5px;
  height: 5px;
  border-radius: 5px 5px 0 0;
  background: linear-gradient(90deg, var(--hl-signal-mid), var(--hl-signal));
}
.hl-site .hl-slip .hl-key { color: #0f766e; }
.hl-site .hl-slip .hl-str { color: #9f1239; }

.hl-site .hl-proof {
  border-block: 1px solid var(--hl-line);
  background: linear-gradient(180deg, rgba(15, 20, 28, 0.6), rgba(15, 20, 28, 0.2));
}
.hl-site .hl-proof .hl-wrap { display: grid; grid-template-columns: repeat(4, 1fr); }
.hl-site .hl-proof-item {
  padding: 22px 24px;
  display: flex;
  gap: 14px;
  align-items: center;
  border-left: 1px solid var(--hl-line);
}
.hl-site .hl-proof-item:first-child { border-left: 0; padding-left: 0; }
.hl-site .hl-proof-item b { display: block; color: var(--hl-highlight); font: 600 15px var(--hl-font-display); }
.hl-site .hl-proof-item span { font-size: 12.5px; }
.hl-site .hl-ico {
  width: 38px;
  height: 38px;
  flex: none;
  border-radius: 11px;
  display: grid;
  place-items: center;
  background: var(--hl-panel-lift);
  box-shadow: inset 0 0 0 1px var(--hl-line-strong);
}

.hl-site .hl-blk { padding: 96px 0; }
.hl-site .hl-blk--tight { padding-top: 0; }
.hl-site .hl-blk-head { max-width: 640px; margin-bottom: 44px; }
.hl-site .hl-kicker {
  font: 500 12px var(--hl-font-mono);
  color: var(--hl-signal);
  text-transform: uppercase;
  letter-spacing: 0.14em;
}
.hl-site .hl-blk-head h2 {
  font-size: 42px;
  line-height: 1.08;
  letter-spacing: -0.035em;
  margin: 14px 0;
}
.hl-site .hl-blk-head p { margin: 0; font-size: 16.5px; }
.hl-site .hl-wait { display: grid; grid-template-columns: minmax(0, 640px) minmax(0, 1fr); gap: 40px; align-items: start; }
.hl-site .hl-wait .hl-blk-head { max-width: none; margin-bottom: 28px; }
.hl-site .hl-bullets { list-style: none; padding: 0; margin: 0; display: grid; gap: 16px; }
.hl-site .hl-bullets li { display: flex; gap: 12px; font-size: 15px; }
.hl-site .hl-bullets li::before {
  content: "";
  flex: none;
  width: 18px;
  height: 18px;
  margin-top: 3px;
  border-radius: 50%;
  background: radial-gradient(circle, var(--hl-signal) 0 3px, transparent 4px), rgba(94, 234, 212, 0.1);
  box-shadow: inset 0 0 0 1px rgba(94, 234, 212, 0.4);
}
.hl-site .hl-bullets b { color: var(--hl-highlight); font-weight: 600; }
.hl-site .hl-tabs {
  display: flex;
  gap: 2px;
  padding: 6px 6px 0;
  border-bottom: 1px solid var(--hl-line);
  align-items: center;
}
.hl-site .hl-tab {
  font: 500 12px var(--hl-font-mono);
  color: rgba(168, 178, 193, 0.6);
  padding: 8px 14px;
  border-radius: 8px 8px 0 0;
  cursor: pointer;
  border: 0;
  background: transparent;
}
.hl-site .hl-tab.on {
  color: var(--hl-highlight);
  background: rgba(94, 234, 212, 0.07);
  box-shadow: inset 0 -2px 0 var(--hl-signal);
}
.hl-site .hl-tabs .hl-copy { margin-right: 8px; }
.hl-site .hl-pane { display: none; }
.hl-site .hl-pane.on { display: block; }

.hl-site .hl-hiw { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; padding-top: 64px; }
.hl-site .hl-tube {
  position: absolute;
  left: 4%;
  right: 4%;
  top: 20px;
  height: 22px;
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(232, 238, 247, 0.1), rgba(232, 238, 247, 0.02) 45%, rgba(232, 238, 247, 0.07));
  box-shadow: inset 0 0 0 1px rgba(232, 238, 247, 0.16), inset 0 -6px 12px rgba(0, 0, 0, 0.4);
  overflow: hidden;
}
.hl-site .hl-tube::after {
  content: "";
  position: absolute;
  top: 5px;
  height: 12px;
  width: 120px;
  border-radius: 12px;
  background: linear-gradient(90deg, transparent, var(--hl-signal), transparent);
  filter: blur(1px);
  box-shadow: 0 0 20px var(--hl-signal);
  animation: hl-flow 4.5s var(--hl-ease) infinite;
}
@keyframes hl-flow {
  from { left: -140px; }
  to { left: 100%; }
}
.hl-site .hl-step { position: relative; }
.hl-site .hl-node {
  position: absolute;
  top: -55px;
  left: 22px;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--hl-abyss);
  box-shadow: 0 0 0 2px var(--hl-signal-mid), 0 0 18px var(--hl-signal-glow);
}
.hl-site .hl-num { font: 500 12px var(--hl-font-mono); color: var(--hl-signal); }
.hl-site .hl-hiw h3 { font-size: 21px; margin: 10px 0 8px; }
.hl-site .hl-hiw p { margin: 0 0 16px; font-size: 14.5px; }
.hl-site code.hl-inline {
  font-size: 12px;
  color: var(--hl-signal);
  background: var(--hl-signal-wash);
  padding: 3px 8px;
  border-radius: 6px;
}

.hl-site .hl-channels { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.hl-site .hl-channel {
  padding: 22px;
  border-radius: 18px;
  background: var(--hl-panel);
  border: 1px solid var(--hl-line);
  position: relative;
}
.hl-site .hl-channel--live { border-color: rgba(94, 234, 212, 0.35); box-shadow: var(--hl-shadow-glow); }
.hl-site .hl-channel h3 { font-size: 17px; margin: 16px 0 6px; }
.hl-site .hl-channel p { margin: 0; font-size: 13.5px; }
.hl-site .hl-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 24px;
  padding: 0 10px;
  border-radius: var(--hl-r-pill);
  font: 500 11px var(--hl-font-body);
  white-space: nowrap;
}
.hl-site .hl-chip--free {
  background: var(--hl-signal-wash);
  color: var(--hl-signal);
  box-shadow: inset 0 0 0 1px rgba(94, 234, 212, 0.3);
}
.hl-site .hl-chip--free i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--hl-signal);
  box-shadow: 0 0 8px var(--hl-signal);
}
.hl-site .hl-channel .hl-chip { position: absolute; right: 16px; top: 18px; }

.hl-site .hl-split { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; align-items: stretch; }
.hl-site .hl-card {
  display: flex;
  flex-direction: column;
  padding: 28px;
  border-radius: 20px;
  background: var(--hl-panel);
  border: 1px solid var(--hl-line);
}
.hl-site .hl-card .hl-hatch { margin-top: auto; }
.hl-site .hl-card h3 { font-size: 20px; margin: 18px 0 8px; }
.hl-site .hl-card p { margin: 0 0 18px; font-size: 14.5px; }
.hl-site .hl-card p:last-child { margin-bottom: 0; }

.hl-site .hl-cases { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.hl-site .hl-case {
  display: block;
  padding: 24px;
  border-radius: 18px;
  background: var(--hl-panel);
  border: 1px solid var(--hl-line);
  transition: 0.25s var(--hl-ease);
}
.hl-site .hl-case:hover { border-color: rgba(94, 234, 212, 0.4); transform: translateY(-2px); }
.hl-site .hl-case .hl-route {
  font: 500 11px var(--hl-font-mono);
  color: var(--hl-signal);
  display: inline-block;
  background: var(--hl-signal-wash);
  padding: 3px 8px;
  border-radius: 6px;
}
.hl-site .hl-case h3 { font-size: 18px; margin: 14px 0 6px; }
.hl-site .hl-case p { margin: 0; font-size: 13.5px; }
.hl-site .hl-case .hl-go { margin-top: 16px; font-size: 13px; color: var(--hl-highlight); }

.hl-site .hl-closing {
  margin: 0 0 96px;
  padding: 64px;
  border-radius: 28px;
  position: relative;
  overflow: hidden;
  background: radial-gradient(80% 120% at 85% 50%, rgba(45, 212, 191, 0.18), transparent 60%), var(--hl-panel);
  border: 1px solid var(--hl-line-strong);
  display: grid;
  grid-template-columns: 1.3fr 1fr;
  gap: 30px;
  align-items: center;
}
.hl-site .hl-closing h2 { font-size: 44px; line-height: 1.05; letter-spacing: -0.04em; }
.hl-site .hl-closing p { font-size: 16.5px; margin: 16px 0 26px; }
.hl-site .hl-closing .hl-hatch pre {
  white-space: pre;
  overflow-x: auto;
  overflow-wrap: normal;
}

.hl-site .hl-foot { border-top: 1px solid var(--hl-line); padding: 48px 0 36px; font-size: 13px; }
.hl-site .hl-foot-cols { display: grid; grid-template-columns: 1.6fr repeat(4, 1fr); gap: 24px; }
.hl-site .hl-foot h2 {
  margin: 0 0 12px;
  font: 500 11px var(--hl-font-mono);
  color: rgba(168, 178, 193, 0.55);
  text-transform: uppercase;
  letter-spacing: 0.12em;
}
.hl-site .hl-foot ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.hl-site .hl-foot a:hover { color: var(--hl-highlight); }
.hl-site .hl-foot .hl-blurb { max-width: 260px; margin-top: 12px; }
.hl-site .hl-llms {
  margin-top: 36px;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  border-radius: 12px;
  background: rgba(94, 234, 212, 0.04);
  border: 1px dashed rgba(94, 234, 212, 0.25);
  font: 12px var(--hl-font-mono);
  flex-wrap: wrap;
}
.hl-site .hl-llms code { color: var(--hl-signal); }
.hl-site .hl-legal {
  margin-top: 24px;
  display: flex;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  font-size: 12px;
  color: rgba(168, 178, 193, 0.5);
}
.hl-site .hl-legal > nav { display: flex; gap: 14px; }

@media (max-width: 1080px) {
  .hl-site .hl-rail-nav,
  .hl-site .hl-rail-right .hl-btn { display: none; }
  .hl-site .hl-menu-btn { display: inline-flex; align-items: center; justify-content: center; }
}

@media (max-width: 980px) {
  .hl-site .hl-hero-grid,
  .hl-site .hl-wait,
  .hl-site .hl-split,
  .hl-site .hl-closing { grid-template-columns: 1fr; }
  .hl-site .hl-hero h1 { font-size: 42px; }
  .hl-site .hl-blk-head h2,
  .hl-site .hl-closing h2 { font-size: 34px; }
  .hl-site .hl-channels,
  .hl-site .hl-cases { grid-template-columns: 1fr 1fr; }
  .hl-site .hl-proof .hl-wrap { grid-template-columns: 1fr 1fr; }
  .hl-site .hl-proof-item { border-left: 0; padding-left: 0; }
  .hl-site .hl-proof-item:nth-child(n + 3) { border-top: 1px solid var(--hl-line); }
  .hl-site .hl-hiw { grid-template-columns: 1fr; padding-top: 8px; gap: 32px; }
  .hl-site .hl-tube { display: none; }
  .hl-site .hl-node { position: static; display: block; margin-bottom: 12px; }
  .hl-site .hl-foot-cols { grid-template-columns: 1fr 1fr; }
  .hl-site .hl-closing { padding: 36px 28px; margin-bottom: 48px; }
}

@media (max-width: 640px) {
  .hl-site .hl-wrap { padding: 0 20px; }
  .hl-site .hl-rail { padding: 0 16px; }
  .hl-site .hl-hero { padding: 36px 0 40px; }
  .hl-site .hl-hero h1 { font-size: 34px; letter-spacing: -0.035em; }
  .hl-site .hl-sub { font-size: 16px; }
  .hl-site .hl-eyebrow { font-size: 11.5px; }
  .hl-site .hl-stage { height: auto; display: flex; flex-direction: column; }
  .hl-site .hl-stage svg { position: relative; height: 210px; flex: none; }
  .hl-site .hl-stage .hl-hatch,
  .hl-site .hl-stage .hl-slip {
    position: relative;
    left: auto;
    right: auto;
    top: auto;
    bottom: auto;
    width: auto;
    margin: 0 14px 14px;
  }
  .hl-site .hl-channels,
  .hl-site .hl-cases,
  .hl-site .hl-proof .hl-wrap,
  .hl-site .hl-foot-cols { grid-template-columns: 1fr; }
  .hl-site .hl-proof-item { border-top: 1px solid var(--hl-line); padding: 16px 0; }
  .hl-site .hl-proof-item:first-child { border-top: 0; }
  .hl-site .hl-blk { padding: 64px 0; }
  .hl-site .hl-blk-head { margin-bottom: 28px; }
}

@media (prefers-reduced-motion: reduce) {
  .hl-site * { animation: none !important; transition: none !important; }
}

/* --- Public pages (pricing, docs, blog, legal, auth) -------------------- */
.hl-site > main { min-height: calc(100vh - 64px); }

.hl-site .bg-white,
.hl-site .bg-gray-50,
.hl-site .bg-gray-100,
.hl-site .bg-surface,
.hl-site .bg-surface-muted { background-color: transparent !important; }
.hl-site .bg-gray-900,
.hl-site .rounded-lg.bg-gray-900,
.hl-site .rounded-xl.bg-gray-900 { background-color: var(--hl-abyss) !important; color: var(--hl-steel); border: 1px solid var(--hl-line); }
.hl-site [class*="bg-gradient"] { background-image: none !important; }

.hl-site .text-gray-900,
.hl-site .text-gray-800,
.hl-site .text-default { color: var(--hl-highlight) !important; }
.hl-site .text-gray-700,
.hl-site .text-gray-600,
.hl-site .text-gray-500,
.hl-site .text-gray-400,
.hl-site .text-gray-300,
.hl-site .text-muted { color: var(--hl-steel) !important; }
.hl-site .text-white { color: var(--hl-highlight) !important; }
.hl-site .text-indigo-600,
.hl-site .text-indigo-500,
.hl-site .text-indigo-700,
.hl-site .text-indigo-200,
.hl-site .text-accent { color: var(--hl-signal) !important; }
.hl-site .hover\:text-indigo-600:hover,
.hl-site .hover\:text-indigo-500:hover,
.hl-site .hover\:text-white:hover,
.hl-site .group-hover\:text-gray-600:hover { color: var(--hl-highlight) !important; }

.hl-site .border-gray-200,
.hl-site .border-gray-300,
.hl-site .border-slate-200,
.hl-site .border-white\/10 { border-color: var(--hl-line-strong) !important; }
.hl-site .ring-gray-300,
.hl-site .ring-gray-200 { --tw-ring-color: var(--hl-line-strong); }
.hl-site .divide-gray-200 > :not([hidden]) ~ :not([hidden]),
.hl-site .divide-gray-900\/10 > :not([hidden]) ~ :not([hidden]) { border-color: var(--hl-line) !important; }

.hl-site a.bg-gray-100,
.hl-site .bg-gray-50.rounded-full,
.hl-site a.rounded-full.bg-gray-50 {
  background: var(--hl-panel-lift) !important;
  color: var(--hl-steel) !important;
}
.hl-site .hover\:bg-gray-50:hover,
.hl-site .hover\:bg-gray-100:hover,
.hl-site .hover\:bg-gray-200:hover { background: var(--hl-panel-lift) !important; }

.hl-site .bg-indigo-600,
.hl-site .bg-indigo-500,
.hl-site .bg-accent,
.hl-site a.rounded-md.bg-indigo-600,
.hl-site button.rounded-md.bg-indigo-600,
.hl-site input.bg-indigo-600,
.hl-site .mh-btn-primary {
  background: var(--hl-rose) !important;
  color: var(--hl-ink) !important;
  border-color: transparent !important;
}
.hl-site .hover\:bg-indigo-500:hover,
.hl-site .hover\:bg-indigo-600:hover,
.hl-site .hover\:bg-indigo-400:hover,
.hl-site .mh-btn-primary:hover {
  background: #fb5a74 !important;
  color: var(--hl-ink) !important;
}
.hl-site .h-12.w-12.bg-indigo-600,
.hl-site .h-10.w-10.bg-indigo-600,
.hl-site .rounded-lg.bg-indigo-600:not(a):not(button) {
  background: var(--hl-signal-wash) !important;
  color: var(--hl-signal) !important;
  box-shadow: inset 0 0 0 1px rgba(94, 234, 212, 0.45);
}
.hl-site .h-12.w-12.bg-indigo-600 .text-white,
.hl-site .h-10.w-10 .text-white { color: var(--hl-highlight) !important; }

.hl-site .mh-kicker {
  border-top-color: var(--hl-signal);
  color: var(--hl-signal);
  font-family: var(--hl-font-mono);
  font-size: 0.72rem;
  font-weight: 500;
  letter-spacing: 0.14em;
}
@media (max-width: 640px) {
  .hl-site .mh-mast-stack {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    row-gap: 0.85rem;
  }
}
.hl-site .mh-plan,
.hl-site .mh-sheet,
.hl-site .mh-feature,
.hl-site a.mh-feature {
  background: var(--hl-panel);
  color: var(--hl-steel);
  border: 1px solid var(--hl-line);
  border-radius: var(--hl-r-lg);
  box-shadow: none;
}
.hl-site .mh-plan-featured { box-shadow: var(--hl-shadow-glow); border-color: transparent; }
.hl-site .mh-plan-name,
.hl-site .mh-plan-price,
.hl-site .mh-feature-title,
.hl-site a.mh-feature h3 { color: var(--hl-highlight); font-family: var(--hl-font-display); }
.hl-site .mh-plan-tagline,
.hl-site a.mh-feature span,
.hl-site .mh-feature-icon { color: var(--hl-signal); }
.hl-site .mh-plan-desc,
.hl-site .mh-feature-body,
.hl-site a.mh-feature p { color: var(--hl-steel); }
.hl-site .mh-badge {
  background: var(--hl-rose);
  color: var(--hl-ink);
  font-family: var(--hl-font-mono);
  border-radius: var(--hl-r-pill);
  letter-spacing: 0.08em;
}
.hl-site .mh-plan a.border,
.hl-site .mh-plan a.rounded-md.border {
  border-radius: var(--hl-r-pill);
  border-color: var(--hl-line-strong) !important;
  color: var(--hl-highlight) !important;
}
.hl-site .mh-btn-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--hl-r-pill);
  font-family: var(--hl-font-body);
  font-weight: 600;
  letter-spacing: 0;
  padding: 0.7rem 1.2rem;
}
.hl-site .mh-manifold .mh-feature:nth-child(1),
.hl-site .mh-manifold .mh-feature:nth-child(2) {
  background: var(--hl-panel-lift);
  color: var(--hl-steel);
  box-shadow: inset 0 0 0 1px var(--hl-line-strong);
}
.hl-site .mh-manifold .mh-feature:nth-child(1) .mh-feature-title,
.hl-site .mh-manifold .mh-feature:nth-child(2) .mh-feature-title,
.hl-site .mh-manifold .mh-feature:nth-child(1) .mh-feature-body,
.hl-site .mh-manifold .mh-feature:nth-child(2) .mh-feature-body { color: var(--hl-highlight); }
.hl-site .mh-manifold .mh-feature:nth-child(1) .mh-feature-body,
.hl-site .mh-manifold .mh-feature:nth-child(2) .mh-feature-body { color: var(--hl-steel); }

.hl-site .mh-compare th,
.hl-site .mh-compare td {
  border-bottom-color: var(--hl-line);
  color: var(--hl-steel);
}
.hl-site .mh-compare thead th {
  color: var(--hl-signal);
  font-family: var(--hl-font-display);
}
.hl-site .mh-compare thead th .price,
.hl-site .mh-compare .x-mark { color: var(--hl-steel); }
.hl-site .mh-compare .row-label,
.hl-site .mh-compare .col-featured { color: var(--hl-highlight); }
.hl-site .mh-compare .col-featured { background: var(--hl-signal-wash); }
.hl-site .mh-faq-item,
.hl-site .mh-faq-item:last-child { border-color: var(--hl-line); }
.hl-site .mh-faq-q { color: var(--hl-highlight); font-family: var(--hl-font-display); }
.hl-site .mh-faq-a { color: var(--hl-steel); }

.hl-site .mh-chip {
  background: var(--hl-signal-wash);
  color: var(--hl-signal);
  font-family: var(--hl-font-mono);
}
.hl-site .mh-chip-warn { background: rgba(244, 63, 94, 0.14); color: #fda4af; }
.hl-site .mh-chip-muted {
  background: transparent;
  color: var(--hl-steel);
  box-shadow: inset 0 0 0 1px var(--hl-line-strong);
}

.hl-site .mh-cta {
  background: radial-gradient(80% 120% at 85% 0%, rgba(45, 212, 191, 0.16), transparent 55%), var(--hl-panel);
  color: var(--hl-steel);
  border: 1px solid var(--hl-line-strong);
  border-radius: 28px;
}
.hl-site .mh-cta h2 { color: var(--hl-highlight) !important; font-family: var(--hl-font-display); }
.hl-site .mh-cta p { color: var(--hl-steel) !important; }
.hl-site .mh-cta .mh-btn-primary {
  background: var(--hl-rose) !important;
  color: var(--hl-ink) !important;
}

.hl-site .mh-codecard {
  background: var(--hl-abyss) !important;
  color: var(--hl-steel);
  border-radius: var(--hl-r-md);
  box-shadow: inset 0 0 0 1px var(--hl-line);
  font-family: var(--hl-font-mono);
}
.hl-site .mh-codecard-head { background: var(--hl-panel); color: var(--hl-signal); }
.hl-site .mh-codecard-dot { background: var(--hl-signal); }
.hl-site .mh-codecard-badge,
.hl-site .mh-codecard-foot,
.hl-site .mh-codecard-body { color: var(--hl-steel); }
.hl-site .mh-codecard-body .c-key { color: var(--hl-signal); }
.hl-site .mh-codecard-body .c-str { color: var(--hl-highlight); }
.hl-site .mh-codecard-body .c-cmd,
.hl-site .mh-codecard-body .c-punct { color: var(--hl-steel); }

.hl-site .mh-step-num {
  background: var(--hl-panel);
  color: var(--hl-signal);
  border-color: var(--hl-signal);
  font-family: var(--hl-font-display);
}
.hl-site .mh-step-title { color: var(--hl-highlight); font-family: var(--hl-font-display); }
.hl-site .mh-step-body { color: var(--hl-steel); }
.hl-site .mh-step-num,
.hl-site .mh-step { color: var(--hl-signal); border-color: var(--hl-signal); }

.hl-site .mh-tab {
  border-color: transparent;
  color: var(--hl-steel);
  background: transparent;
  font-family: var(--hl-font-body);
  letter-spacing: 0;
}
.hl-site .mh-tab:hover { color: var(--hl-highlight); border-color: var(--hl-line-strong); }
.hl-site .mh-tab[aria-selected="true"],
.hl-site .mh-tab.mh-tab-active { color: var(--hl-highlight); border-color: var(--hl-rose); }

.hl-site .prose {
  --tw-prose-body: var(--hl-steel);
  --tw-prose-headings: var(--hl-highlight);
  --tw-prose-lead: var(--hl-steel);
  --tw-prose-links: var(--hl-signal);
  --tw-prose-bold: var(--hl-highlight);
  --tw-prose-counters: var(--hl-signal);
  --tw-prose-bullets: var(--hl-signal);
  --tw-prose-hr: var(--hl-line-strong);
  --tw-prose-quotes: var(--hl-highlight);
  --tw-prose-quote-borders: var(--hl-signal);
  --tw-prose-captions: var(--hl-steel);
  --tw-prose-code: var(--hl-signal);
  --tw-prose-pre-code: var(--hl-highlight);
  --tw-prose-pre-bg: #05070a;
  --tw-prose-th-borders: var(--hl-line-strong);
  --tw-prose-td-borders: var(--hl-line);
  font-family: var(--hl-font-body);
  color: var(--hl-steel);
}
.hl-site .prose :where(h1, h2, h3, h4) { font-family: var(--hl-font-display); color: var(--hl-highlight); }
.hl-site .prose :where(a) { color: var(--hl-signal); text-underline-offset: 0.16em; }
.hl-site .prose :where(code):not(:where(pre code)) {
  background: var(--hl-signal-wash);
  color: var(--hl-signal);
  padding: 0.1em 0.35em;
  border-radius: 4px;
  font-family: var(--hl-font-mono);
  font-weight: 500;
}
.hl-site .prose :where(pre) {
  background: #05070a;
  color: var(--hl-highlight);
  border: 1px solid var(--hl-line);
  font-family: var(--hl-font-mono);
}
.hl-site .prose :where(pre code) { background: transparent; color: var(--hl-highlight); padding: 0; }

.hl-site article.flex {
  background: var(--hl-panel);
  color: var(--hl-steel);
  border: 1px solid var(--hl-line);
  border-radius: var(--hl-r-lg);
  padding: 0.75rem 0.75rem 1.25rem;
}
.hl-site article.flex .rounded-full.bg-indigo-600,
.hl-site .mh-sheet .rounded-full.bg-indigo-600 {
  background: var(--hl-panel-lift) !important;
  color: var(--hl-highlight) !important;
  box-shadow: none;
}

.hl-site .mh-input,
.hl-site .mh-select,
.hl-site .mh-textarea,
.hl-site input[type="email"],
.hl-site input[type="password"],
.hl-site input[type="text"],
.hl-site input[type="search"],
.hl-site input[type="url"],
.hl-site textarea,
.hl-site select {
  background: var(--hl-panel-lift) !important;
  color: var(--hl-highlight) !important;
  border: 1px solid var(--hl-line-strong);
  border-radius: var(--hl-r-sm);
  font-family: var(--hl-font-body);
}
.hl-site input.text-gray-900,
.hl-site textarea.text-gray-900 { color: var(--hl-highlight) !important; }
.hl-site input::placeholder,
.hl-site textarea::placeholder { color: rgba(168, 178, 193, 0.65); }
.hl-site .mh-label { color: var(--hl-highlight); }
.hl-site input[type="checkbox"],
.hl-site input[type="radio"] { accent-color: var(--hl-rose); }
.hl-site input:focus,
.hl-site textarea:focus,
.hl-site select:focus { outline: 2px solid var(--hl-signal); outline-offset: 1px; }

.hl-site .bg-red-50 { background: rgba(244, 63, 94, 0.12) !important; }
.hl-site .text-red-800,
.hl-site .text-red-500,
.hl-site .text-red-400 { color: #fda4af !important; }
.hl-site .bg-green-50 { background: rgba(94, 234, 212, 0.1) !important; }
.hl-site .text-green-800,
.hl-site .text-green-500,
.hl-site .text-green-400 { color: var(--hl-signal) !important; }

.hl-site .hl-auth {
  min-height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 18px;
  padding: 48px 20px 64px;
}
.hl-site .hl-auth-title {
  font-size: 28px;
  letter-spacing: -0.03em;
  text-align: center;
}
.hl-site .hl-auth-wide,
.hl-site .hl-auth-card { width: min(480px, 100%); }
.hl-site .hl-auth-card {
  background: var(--hl-panel);
  border: 1px solid var(--hl-line);
  border-radius: var(--hl-r-lg);
  padding: 28px 24px 24px;
  box-shadow: var(--hl-shadow-slip);
}
.hl-site .hl-auth-hint {
  display: block;
  margin: 0;
  font-family: var(--hl-font-body);
  font-size: 14px;
  line-height: 1.55;
}
.hl-site .hl-auth-hint h2 {
  margin: 0 0 6px;
  font-size: 16px;
  color: var(--hl-highlight);
}
.hl-site .hl-auth-hint p { margin: 0; }
.hl-site .hl-auth-hint ul { margin: 10px 0; padding-left: 1.1rem; }
.hl-site .hl-auth-hint a { color: var(--hl-signal); text-decoration: underline; text-underline-offset: 0.16em; }

.hl-site .shadow-card,
.hl-site .shadow-sm { box-shadow: none; }

.hl-site a.hl-filter {
  background: var(--hl-panel-lift) !important;
  color: var(--hl-steel) !important;
}
.hl-site a.hl-filter--on {
  background: var(--hl-signal-wash) !important;
  color: var(--hl-signal) !important;
  box-shadow: inset 0 0 0 1px rgba(94, 234, 212, 0.55);
}

/* Embedded Swagger. The CDN stylesheet loads after the page, so these win with !important. */
.hl-site .hl-swagger,
.hl-site .swagger-ui,
.hl-site .swagger-ui .wrapper,
.hl-site .swagger-ui .scheme-container,
.hl-site .swagger-ui section.models,
.hl-site .swagger-ui section.models.is-open,
.hl-site .swagger-ui .model-container,
.hl-site .swagger-ui .model-box,
.hl-site .swagger-ui .model,
.hl-site .swagger-ui .opblock,
.hl-site .swagger-ui .opblock.opblock-get,
.hl-site .swagger-ui .opblock.opblock-post,
.hl-site .swagger-ui .opblock.opblock-put,
.hl-site .swagger-ui .opblock.opblock-patch,
.hl-site .swagger-ui .opblock.opblock-delete,
.hl-site .swagger-ui .opblock .opblock-body,
.hl-site .swagger-ui .opblock-description-wrapper,
.hl-site .swagger-ui .parameters-container,
.hl-site .swagger-ui .responses-wrapper,
.hl-site .swagger-ui .responses-inner,
.hl-site .swagger-ui table,
.hl-site .swagger-ui table tbody tr,
.hl-site .swagger-ui table tbody tr td,
.hl-site .swagger-ui .opblock .opblock-section-header {
  background: var(--hl-panel) !important;
  color: var(--hl-steel) !important;
}
.hl-site .hl-swagger { border-color: var(--hl-line) !important; max-width: 100%; }
.hl-site .swagger-ui { font-family: var(--hl-font-body) !important; max-width: 100%; }
.hl-site .swagger-ui .wrapper { padding: 8px 0 16px !important; max-width: 100%; }
.hl-site .swagger-ui .info .title,
.hl-site .swagger-ui .info h1,
.hl-site .swagger-ui .info h2,
.hl-site .swagger-ui .info h3,
.hl-site .swagger-ui .info h4,
.hl-site .swagger-ui .opblock-tag,
.hl-site .swagger-ui .opblock-tag a,
.hl-site .swagger-ui .opblock-tag small,
.hl-site .swagger-ui .opblock .opblock-section-header h4,
.hl-site .swagger-ui .opblock .opblock-section-header label,
.hl-site .swagger-ui .model-title,
.hl-site .swagger-ui .parameter__name,
.hl-site .swagger-ui .opblock-summary-path,
.hl-site .swagger-ui .opblock-summary-path a,
.hl-site .swagger-ui .opblock-summary-path__deprecated {
  color: var(--hl-highlight) !important;
  font-family: var(--hl-font-display) !important;
}
.hl-site .swagger-ui .opblock-summary-path,
.hl-site .swagger-ui .opblock-summary-path a,
.hl-site .swagger-ui .opblock-summary-path__deprecated,
.hl-site .swagger-ui .opblock-summary-method {
  font-family: var(--hl-font-mono) !important;
}
.hl-site .swagger-ui .info p,
.hl-site .swagger-ui .info li,
.hl-site .swagger-ui .renderedMarkdown p,
.hl-site .swagger-ui .renderedMarkdown li,
.hl-site .swagger-ui .opblock-summary-description,
.hl-site .swagger-ui .opblock-description-wrapper p,
.hl-site .swagger-ui .parameter__type,
.hl-site .swagger-ui .parameter__deprecated,
.hl-site .swagger-ui .parameter__in,
.hl-site .swagger-ui .response-col_status,
.hl-site .swagger-ui .response-col_description,
.hl-site .swagger-ui .prop-type,
.hl-site .swagger-ui .prop-format,
.hl-site .swagger-ui .model,
.hl-site .swagger-ui .model span,
.hl-site .swagger-ui table thead tr td,
.hl-site .swagger-ui table thead tr th {
  color: var(--hl-steel) !important;
}
.hl-site .swagger-ui a,
.hl-site .swagger-ui .info a { color: var(--hl-signal) !important; }
.hl-site .swagger-ui .markdown code,
.hl-site .swagger-ui .renderedMarkdown code,
.hl-site .swagger-ui .info code {
  color: var(--hl-signal) !important;
  background: var(--hl-abyss) !important;
}
.hl-site .swagger-ui .authorization__btn,
.hl-site .swagger-ui .authorization__btn svg,
.hl-site .swagger-ui .authorization__btn .locked,
.hl-site .swagger-ui .authorization__btn .unlocked,
.hl-site .swagger-ui .btn.authorize svg {
  fill: var(--hl-signal) !important;
  color: var(--hl-signal) !important;
  opacity: 1 !important;
}
.hl-site .swagger-ui .opblock {
  border: 1px solid var(--hl-line-strong) !important;
  border-radius: var(--hl-r-md) !important;
  box-shadow: none !important;
  margin: 0 0 10px !important;
  overflow: hidden;
}
.hl-site .swagger-ui .opblock .opblock-summary-method {
  border: 0 !important;
  color: var(--hl-ink) !important;
  background: var(--hl-steel) !important;
  text-shadow: none !important;
}
.hl-site .swagger-ui .opblock.opblock-get .opblock-summary-method {
  background: var(--hl-signal) !important;
  color: var(--hl-ink) !important;
}
.hl-site .swagger-ui .opblock.opblock-post .opblock-summary-method {
  background: var(--hl-signal-mid) !important;
  color: var(--hl-ink) !important;
}
.hl-site .swagger-ui .opblock.opblock-put .opblock-summary-method,
.hl-site .swagger-ui .opblock.opblock-patch .opblock-summary-method,
.hl-site .swagger-ui .opblock.opblock-delete .opblock-summary-method {
  background: var(--hl-panel-lift) !important;
  color: var(--hl-signal) !important;
  box-shadow: inset 0 0 0 1px rgba(94, 234, 212, 0.45);
}
.hl-site .swagger-ui .opblock .opblock-section-header {
  background: var(--hl-panel-lift) !important;
  border-color: var(--hl-line) !important;
  box-shadow: none !important;
}
.hl-site .swagger-ui .opblock-tag {
  border-color: var(--hl-line) !important;
  font-size: 20px !important;
}
.hl-site .swagger-ui .scheme-container {
  box-shadow: none !important;
  border-bottom: 1px solid var(--hl-line) !important;
  padding: 12px 0 !important;
}
.hl-site .swagger-ui .btn {
  background: transparent !important;
  color: var(--hl-signal) !important;
  border: 1px solid rgba(94, 234, 212, 0.5) !important;
  box-shadow: none !important;
  font-family: var(--hl-font-body) !important;
}
.hl-site .swagger-ui .btn.execute {
  background: var(--hl-rose) !important;
  color: var(--hl-ink) !important;
  border-color: transparent !important;
}
.hl-site .swagger-ui select,
.hl-site .swagger-ui input[type="text"],
.hl-site .swagger-ui input[type="password"],
.hl-site .swagger-ui input[type="search"],
.hl-site .swagger-ui input[type="email"],
.hl-site .swagger-ui input[type="file"],
.hl-site .swagger-ui textarea {
  background: var(--hl-abyss) !important;
  color: var(--hl-highlight) !important;
  border: 1px solid var(--hl-line-strong) !important;
}
.hl-site .swagger-ui .highlight-code,
.hl-site .swagger-ui .opblock-body pre,
.hl-site .swagger-ui .microlight {
  background: var(--hl-abyss) !important;
  color: var(--hl-highlight) !important;
}
.hl-site .swagger-ui .opblock-summary {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  max-width: 100% !important;
}
.hl-site .swagger-ui .opblock-summary-control {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  row-gap: 6px !important;
  max-width: 100% !important;
  white-space: normal !important;
}
.hl-site .swagger-ui .opblock-summary-path,
.hl-site .swagger-ui .opblock-summary-path a,
.hl-site .swagger-ui .opblock-summary-path__deprecated,
.hl-site .swagger-ui .opblock-summary-description {
  flex: 1 1 12rem !important;
  max-width: 100% !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}
.hl-site .swagger-ui .table-container,
.hl-site .swagger-ui .parameters,
.hl-site .swagger-ui .responses-table {
  max-width: 100%;
  overflow-x: auto;
}
.hl-site .swagger-ui svg.arrow { fill: var(--hl-signal) !important; }
@media (max-width: 640px) {
  .hl-site .swagger-ui .wrapper { padding: 0 !important; }
  .hl-site .swagger-ui .opblock-summary-method { min-width: 68px !important; }
  .hl-site .swagger-ui .opblock-summary-path,
  .hl-site .swagger-ui .opblock-summary-description { flex-basis: 100% !important; }
}
