/* Hargob web-style v1 — authored presentation contract, not design/lore authority. */
:root {
  color-scheme: dark;
  --hargob-black: #050505;
  --hargob-surface: #101010;
  --hargob-ink: #f0ede6;
  --hargob-muted: #aaa59c;
  --hargob-dim: #706d67;
  --hargob-line: #3b3935;
  --hargob-line-strong: #77736a;
  --hargob-red: #e72621;
  --hargob-serif: Georgia, "Times New Roman", Times, serif;
  --hargob-mono: "SFMono-Regular", "Cascadia Mono", "Roboto Mono", Consolas, "Liberation Mono", Menlo, monospace;
  --hargob-measure: 74rem;
}
*, *::before, *::after { box-sizing: border-box; }
html { background: var(--hargob-black); scroll-behavior: smooth; }
body { margin: 0; min-width: 20rem; color: var(--hargob-ink); background: var(--hargob-black); font: clamp(.92rem,.84rem + .24vw,1.06rem)/1.72 var(--hargob-mono); text-rendering: optimizeLegibility; }
::selection { color: var(--hargob-black); background: var(--hargob-red); }
a { color: var(--hargob-ink); text-decoration-color: var(--hargob-red); text-decoration-thickness: 2px; text-underline-offset: .22em; }
a:hover, a:focus-visible { color: var(--hargob-red); }
:focus-visible { outline: 2px solid var(--hargob-red); outline-offset: 4px; }
.hargob-skip-link, .skip-link { position: fixed; z-index: 10; top: .5rem; left: .5rem; padding: .5rem .75rem; color: var(--hargob-black); background: var(--hargob-red); transform: translateY(-150%); }
.hargob-skip-link:focus, .skip-link:focus { transform: none; }
.hargob-shell { min-height: 100vh; }
.hargob-eyebrow { color: var(--hargob-muted); letter-spacing: .16em; text-transform: uppercase; }
.hargob-panel { border: 1px solid var(--hargob-line); background: var(--hargob-surface); }
.hargob-button { border: 1px solid var(--hargob-ink); border-radius: 0; padding: .6rem .8rem; color: var(--hargob-ink); background: var(--hargob-black); font: inherit; cursor: pointer; }
.hargob-button:hover, .hargob-button[aria-current="true"], .hargob-button[aria-pressed="true"] { color: var(--hargob-black); background: var(--hargob-ink); }
.hargob-status { border: 1px solid var(--hargob-line); padding: .5rem; color: var(--hargob-red); background: var(--hargob-black); }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }
@media print { :root { --hargob-black: #fff; --hargob-surface: #fff; --hargob-ink: #000; --hargob-muted: #333; --hargob-line: #777; --hargob-red: #900; color-scheme: light; } .hargob-skip-link, .skip-link { display: none; } }
