@font-face { font-family: 'Signika Negative'; src: url('/fonts/SignikaNegative-VariableFont_wght.ttf') format('truetype'); font-weight: 300 700; font-display: swap; }
@media screen {
  :root { color-scheme: dark; --bg: #09232e; --surface: #0e2d39; --border: #294652; --text: #e3edf1; --text-muted: #aebfc8; --accent: #f0b429; --accent-light: #263b35; --rule-num: #f0c868; --shadow: 0 10px 30px #03151d30; }
  body { font-family: 'Signika Negative',system-ui,sans-serif; background: radial-gradient(ellipse at top right,#1d414e,transparent 700px),var(--bg); }
  .container { max-width: 860px; padding-top: clamp(2rem,5vw,4rem); }
  header { text-align: left; }
  header h1 { font-family: inherit; font-size: clamp(2rem,5vw,3.5rem); line-height: 1.1; letter-spacing: -.03em; }
  nav, .rule { border-radius: 14px; }
  nav h2, .rule-title, .rule-number { font-family: inherit; }
  .rule-title { font-size: 1.3rem; font-weight: 700; }
  .rule p { font-size: 1rem; }
  * { scrollbar-width: thin; scrollbar-color: #557e8c #081f29; }
  html { scrollbar-width: auto; }
  ::-webkit-scrollbar { width: 12px; height: 12px; }
  ::-webkit-scrollbar-track { background: #081f29; }
  ::-webkit-scrollbar-thumb { background: #557e8c; border: 3px solid #081f29; border-radius: 12px; }
  :focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
}
@media(forced-colors:active) { * { scrollbar-color: auto; } }
