/* Minimal public shell for the AntiFake subdomain.
   Product rules live in antifake.css; shared ORTCOM page chrome is not loaded
   on this surface. Keep this file intentionally small and dependency-free. */

html[data-product="antifake"] {
  color-scheme: light;
  --primary: 224 60% 22%;
  --primary-foreground: 0 0% 100%;
  /* The AVDS base value is borderline on translucent muted panels. Keep the
     same hue while reserving enough contrast for small editorial metadata. */
  --muted-foreground: 216 12% 40%;
  --ring: 224 60% 22%;
  --chart-1: 44 51% 54%;
  --chart-2: 224 60% 32%;
  --chart-3: 44 51% 44%;
  --chart-4: 224 40% 50%;
  --chart-5: 44 51% 64%;
  --font-body: var(--font-sans);
  --font-display: var(--font-sans);
  --font-heading: var(--font-sans);
  --ortcom-ds-border: #e2e5ea;
  --ortcom-ds-border-soft: #eef0f4;
  --ortcom-ds-accent: hsl(var(--chart-1));
  --navy: #152259;
  --navy-light: #1c3070;
  --navy-deep: #0e1740;
  --gold: #c8a84b;
  --gold-hover: #b38f35;
  --transition: 180ms ease;
}

html[data-product="antifake"][data-theme="dark"] {
  color-scheme: dark;
  /* On dark surfaces the product accent is a readable link/control colour.
     Branded navy panels override these two tokens locally below. */
  --primary: 224 60% 70%;
  --primary-foreground: 0 0% 10%;
  --muted-foreground: 216 14% 72%;
  --ring: 224 60% 70%;
  --chart-1: 44 60% 60%;
  --chart-2: 224 45% 65%;
  --chart-3: 44 51% 50%;
  --chart-4: 224 35% 60%;
  --chart-5: 44 60% 70%;
  --ortcom-ds-border: #2f3846;
  --ortcom-ds-border-soft: #252d3a;
}

html[data-product="antifake"][data-theme="dark"]
  :is(.antifake-index-page .page-header,
  .antifake-index-page .af-home-tools-callout,
  .antifake-detail-page .af-verdict-banner,
  .af-home-intro) {
  --primary: 224 60% 32%;
  --primary-foreground: 0 0% 100%;
}

html[data-product="antifake"][data-theme="dark"]
  :is(.af-site-header, .af-site-header__inner) {
  --primary: 224 60% 22%;
  --primary-foreground: 0 0% 100%;
  --ortcom-shell-foreground: 0 0% 100%;
  background: hsl(224 34% 16%);
}

html[data-product="antifake"][data-theme="dark"]
  :is(.af-btn--primary, .af-site-report-link):hover {
  color: hsl(0 0% 100%);
}

*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  scroll-behavior: smooth;
}

body {
  display: flex;
  min-height: 100dvh;
  flex-direction: column;
  font-family: var(--font-body);
  font-size: 1rem;
  line-height: 1.55;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
}

a {
  color: inherit;
  text-decoration: none;
  transition: color var(--transition);
}

button,
input,
select,
textarea {
  font: inherit;
}

button {
  cursor: pointer;
  border: 0;
  color: inherit;
  background: transparent;
}

ul,
ol {
  list-style: none;
}

.main {
  flex: 1;
}

.container {
  width: min(100% - 2rem, 80rem);
  margin-inline: auto;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

:where(a, button, input, textarea, select, summary):focus-visible {
  outline: 3px solid hsl(var(--ring) / 0.32);
  outline-offset: 2px;
}
