/* SIX STAR BET - Vice treatment for the public docs. Two-colour palette:
   neon #ff2e88 and teal #4aedd4, over neutrals. No third accent.
   Loaded AFTER extra.css so these declarations win.
   Themes the slate scheme only; the light scheme is removed from mkdocs.yml
   in the same change, so slate is the only scheme that can be active. */
:root{
  --ssb-neon:#ff2e88; --ssb-teal:#4aedd4;
  --ssb-ink:#08070c; --ssb-panel:#16161d;
  --md-primary-fg-color:#08070c; --md-accent-fg-color:var(--ssb-neon);
}
[data-md-color-scheme="slate"]{
  --md-hue:0;
  --md-default-bg-color:var(--ssb-ink);
  --md-default-fg-color:#f2eef7;
  --md-default-fg-color--light:#b9b2c9;
  --md-code-bg-color:#12111a;
  --md-typeset-a-color:var(--ssb-teal);
}
/* neon sunset header, chrome underline */
.md-header{
  background:linear-gradient(90deg,#08070c 0%,#1a0b1f 45%,#2a0f22 100%);
  border-bottom:1px solid rgba(255,46,136,.45);
  box-shadow:0 1px 0 rgba(74,237,212,.25),0 8px 26px -18px var(--ssb-neon);
}
.md-tabs{background:transparent}
/* display type: Vice sign */
.md-typeset h1{
  font-weight:800; letter-spacing:.055em; text-transform:uppercase;
  background:linear-gradient(92deg,var(--ssb-neon) 0%,var(--ssb-teal) 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
  text-shadow:0 0 26px rgba(255,46,136,.22);
}
.md-typeset h2{
  font-weight:700; letter-spacing:.045em; text-transform:uppercase;
  color:#fff; padding-bottom:.28em; margin-top:2.2em;
  border-bottom:1px solid transparent;
  border-image:linear-gradient(90deg,var(--ssb-neon),transparent 88%) 1;
}
.md-typeset h3{color:var(--ssb-teal);letter-spacing:.03em;font-weight:700}
/* the eyebrow / stat strip */
.md-typeset .ssb-eyebrow{
  font-family:"JetBrains Mono",monospace; font-size:.7rem; letter-spacing:.24em;
  text-transform:uppercase; color:var(--ssb-teal); opacity:.85;
}
/* charts sit on a lit plinth instead of floating */
.md-typeset img[src$=".svg"]{
  border:1px solid rgba(255,46,136,.28); border-radius:10px;
  background:var(--ssb-panel);
  box-shadow:0 0 0 1px rgba(74,237,212,.10) inset,0 18px 44px -28px var(--ssb-neon);
}
/* tables read like a dossier */
.md-typeset table:not([class]){border:1px solid rgba(255,46,136,.26);border-radius:10px;overflow:hidden}
.md-typeset table:not([class]) th{
  background:#161020; color:var(--ssb-teal);
  font-family:"JetBrains Mono",monospace; font-size:.72rem;
  letter-spacing:.14em; text-transform:uppercase; border-bottom:1px solid rgba(255,46,136,.35);
}
.md-typeset table:not([class]) tr:hover{background:rgba(255,46,136,.045)}
/* admonitions as neon signage.
   Only the NEUTRAL families are re-pointed to teal. warning / caution / danger /
   failure keep their own colours on purpose - there the colour is a signal, not
   decoration, and flattening it would hide a real warning. */
.md-typeset .admonition,.md-typeset details{
  border:1px solid rgba(74,237,212,.30); border-left:3px solid var(--ssb-teal);
  border-radius:8px; background:rgba(74,237,212,.045);
}
.md-typeset .admonition-title{background:rgba(74,237,212,.10)!important;letter-spacing:.05em}
.md-typeset .admonition.note,.md-typeset .admonition.info,.md-typeset .admonition.tip,
.md-typeset .admonition.abstract,.md-typeset .admonition.example,.md-typeset .admonition.quote,
.md-typeset details.note,.md-typeset details.info,.md-typeset details.tip,
.md-typeset details.abstract,.md-typeset details.example,.md-typeset details.quote{
  border-left-color:var(--ssb-teal);
}
.md-typeset .note>.admonition-title::before,.md-typeset .info>.admonition-title::before,
.md-typeset .tip>.admonition-title::before,.md-typeset .abstract>.admonition-title::before,
.md-typeset .example>.admonition-title::before,.md-typeset .quote>.admonition-title::before,
.md-typeset .note>summary::before,.md-typeset .info>summary::before,
.md-typeset .tip>summary::before,.md-typeset .abstract>summary::before,
.md-typeset .example>summary::before,.md-typeset .quote>summary::before{
  background-color:var(--ssb-teal);
}
/* links: teal, neon on hover. Declared directly - Material's own scheme block
   sets the link colour through a variable and wins the indirection otherwise. */
.md-typeset a{color:var(--ssb-teal);transition:color .15s,text-shadow .15s}
.md-typeset a:hover{color:var(--ssb-neon);text-shadow:0 0 12px rgba(255,46,136,.5)}
/* nav: active item lit */
.md-nav__link--active{color:var(--ssb-neon)!important;font-weight:700}
.md-nav__title{font-family:"JetBrains Mono",monospace;letter-spacing:.16em;text-transform:uppercase;
  font-size:.68rem;color:var(--ssb-teal)}
/* code: CRT */
.md-typeset code,.md-typeset pre>code{border:1px solid rgba(74,237,212,.20)}
.md-typeset pre>code{box-shadow:0 0 30px -22px var(--ssb-teal) inset}
/* horizontal rule = neon strip */
.md-typeset hr{border:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--ssb-neon),var(--ssb-teal),transparent);
  opacity:.65}
