/* Design tokens do fiRe Share — extraído de old/styles.css. Compartilhado entre site público e /admin. */
:root {
  --ink: #111827; --ink-soft: #374151; --muted: #6b7280; --line: #e5e7eb;
  --paper: #f7f7f4; --white: #fff; --lime: #ff6a00; --lime-dark: #e75300;
  --orange: #ff6a00; --pink: #ff3f76; --blue: #5583ff; --purple: #8b5cf6; --green: #20a464;
  --shadow: 0 18px 50px rgba(17, 24, 39, .08); --radius: 20px;
  color-scheme: light;
  --surface: #ffffff;
  --surface-soft: #f0f2ed;
  --surface-raised: #ffffff;
  --topbar: rgba(255,255,255,.9);
  --hero-start: #111827;
  --hero-end: #263543;
}
[data-theme="dark"] {
  color-scheme: dark;
  --ink: #f3f6ef;
  --ink-soft: #d2d8ce;
  --muted: #98a398;
  --line: #263028;
  --paper: #080b10;
  --white: #11161d;
  --surface: #11161d;
  --surface-soft: #171e25;
  --surface-raised: #151b22;
  --topbar: rgba(8,11,16,.88);
  --lime-dark: #ff812b;
  --shadow: 0 20px 60px rgba(0,0,0,.32);
  --hero-start: #10161d;
  --hero-end: #1d2b29;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--paper); }
html, body { min-height: 100%; overflow-x: hidden; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
.hidden { display: none !important; }
.muted { color: var(--muted); }
.eyebrow { display: inline-block; color: var(--lime-dark); font-size: .72rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.eyebrow.light { color: var(--lime); }
.spaced { margin-bottom: 16px; }
.compact { margin: 0 0 18px; }
.skip-link { position: fixed; z-index: 100; left: 14px; top: -80px; padding: 11px 14px; border-radius: 10px; color: #190b03; background: var(--orange); font-weight: 850; transition: top .2s; }
.skip-link:focus { top: 14px; }
button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible { outline: 3px solid color-mix(in srgb,var(--lime) 55%,transparent); outline-offset: 2px; }
/* #mainContent leva foco programático (main.focus()) a cada troca de view, pra leitor de tela
   anunciar o conteúdo novo — sem outline explícito aqui, o navegador desenha o contorno padrão
   (fininho, claro) em volta do <main> inteiro, visível pra usuário de mouse sem motivo. */
main[tabindex]:focus { outline: none; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
