/* ─────────────────────────────────────────────────────────────────────────────
   Schenkgenie NERD-MODUS v2 — „VHS-Abend statt Hacker-Terminal"
   Warm, gemütlich, nostalgisch: dunkles Wohnzimmer, Lampen-Glühen, bunte
   VHS-Rücken. Pixel-Schrift nur als kleines Gewürz, nie als Leselast.
   ──────────────────────────────────────────────────────────────────────────── */

@font-face {
  font-family: "Press Start 2P";
  src: url("/assets/fonts/PressStart2P.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}

body.nerd {
  --raum: #191210;            /* dunkles, warmes Wohnzimmer */
  --panel: #241a14;           /* Holz-/Regalton */
  --linie-n: #3a2c20;
  --creme: #f4ead9;           /* Lesetext — hell und warm */
  --creme-soft: #c9b8a0;
  --glut: #ffb454;            /* Lampen-Glühen (Akzent 1) */
  --glut-tief: #e08e2b;
  --neon: #7be07b;            /* Retro-Grün nur als Gewürz */
  --vhs-rot: #ff6b6b; --vhs-blau: #6bb8ff; --vhs-lila: #c98bff;
  --vhs-gelb: #ffd76b; --vhs-tuerkis: #6bffd7; --vhs-rosa: #ff8bc9;
  --pixel: "Press Start 2P", "Courier New", monospace;

  color: var(--creme);
  background:
    radial-gradient(ellipse 80% 50% at 70% -10%, rgba(255, 180, 84, .13), transparent 60%),
    radial-gradient(ellipse 60% 40% at 15% 110%, rgba(123, 224, 123, .07), transparent 60%),
    var(--raum);
  background-attachment: fixed;
}

/* Header: warmes Regalbrett */
body.nerd .site-header { border-bottom: 2px solid var(--linie-n); }
body.nerd .site-header .brand { color: var(--glut); }
body.nerd .site-header .brand::before { content: "🕹️ "; }
body.nerd .site-header nav a { color: var(--creme); }
body.nerd .site-header nav a:hover { color: var(--glut); }

/* Headlines: LESBAR (Bricolage), warm glühend — Pixel nur im Eyebrow */
body.nerd h1, body.nerd h2 {
  font-family: var(--font-display, "Bricolage Grotesque", sans-serif);
  color: var(--glut);
  text-shadow: 0 0 18px rgba(255, 180, 84, .35);
}
body.nerd h1 { font-size: clamp(1.9rem, 5vw, 2.9rem); }
body.nerd h2 { font-size: clamp(1.15rem, 2.6vw, 1.45rem); }
body.nerd a { color: var(--vhs-gelb); }

.nerd-eyebrow {
  font-family: var(--pixel); font-size: .6rem; color: var(--neon);
  letter-spacing: .1em; margin: 1.2rem 0 0;
}

/* Hero-Bild: das Fandom-Poster */
.fandom-hero {
  margin: 1rem 0 1.4rem; border-radius: 12px; overflow: hidden;
  border: 2px solid var(--linie-n);
  box-shadow: 0 12px 40px rgba(0, 0, 0, .5), 0 0 0 6px rgba(255, 180, 84, .06);
}
.fandom-hero img { display: block; width: 100%; height: auto; }

/* Direct-Answer: warme Karteikarte */
body.nerd .direct-answer {
  background: var(--panel); color: var(--creme);
  border: 1px solid var(--linie-n); border-left: 4px solid var(--glut);
  border-radius: 0 12px 12px 0;
  box-shadow: 0 4px 20px rgba(0, 0, 0, .35);
}

/* Loot-Konsole: Retro-Gerät, warm beleuchtet */
body.nerd .gift-ribbon, body.nerd .gift-bow { display: none; }
body.nerd .gift-card {
  background: linear-gradient(180deg, #2a1f17, var(--panel));
  border: 2px solid var(--linie-n); border-radius: 14px; padding: 1.6rem;
  box-shadow: 0 10px 34px rgba(0, 0, 0, .5), inset 0 1px 0 rgba(255, 216, 107, .12);
}
body.nerd .gift-card label { color: var(--vhs-gelb); font-weight: 600; }
body.nerd .gift-card input, body.nerd .gift-card select, body.nerd .gift-card textarea {
  background: #16100c; border: 1.5px solid var(--linie-n); color: var(--creme); border-radius: 8px;
}
body.nerd .gift-card ::placeholder { color: #8a755c; }
body.nerd .gift-card input:focus-visible, body.nerd .gift-card select:focus-visible,
body.nerd .gift-card textarea:focus-visible, body.nerd .gift-card button:focus-visible,
body.nerd .chip:focus-visible { outline-color: var(--glut); }

body.nerd .gift-card button[type="submit"] {
  font-family: var(--pixel); font-size: .72rem; text-transform: uppercase;
  background: linear-gradient(180deg, var(--glut), var(--glut-tief));
  color: #241303; border-radius: 10px;
  box-shadow: 0 4px 0 #8a5514, 0 8px 24px rgba(255, 180, 84, .25);
}
body.nerd .gift-card button[type="submit"]:hover { filter: brightness(1.08); transform: none; }
body.nerd .gift-card button[type="submit"]:active { transform: translateY(3px); box-shadow: 0 1px 0 #8a5514; }
body.nerd .tool-cta { color: var(--creme-soft); }

/* Warten */
body.nerd .warten-text { color: var(--glut); font-family: var(--font-display); }
body.nerd .warten-balken { background: #16100c; border: 1px solid var(--linie-n); }
body.nerd .warten-fuellung { background: linear-gradient(90deg, var(--glut), var(--vhs-rosa)); }
body.nerd .warten-hinweis { color: var(--creme-soft); }
body.nerd .sk-line { background: linear-gradient(90deg, var(--linie-n) 25%, #2a1f17 50%, var(--linie-n) 75%); background-size: 200% 100%; }

/* Loot-Karten: warm, mit Pixel-Preisschild */
body.nerd .idee { background: var(--panel); border: 1.5px solid var(--linie-n); border-radius: 12px; }
body.nerd .idee h3 { color: var(--vhs-gelb); }
body.nerd .idee .warum { color: var(--creme); }
body.nerd .idee .preis {
  font-family: var(--pixel); font-size: .55rem;
  background: #16100c; border: 1px dashed var(--glut); color: var(--glut); border-radius: 4px;
}
body.nerd .such-link { color: var(--neon); }

/* Chips: bunte VHS-Rücken — das Poster-Regal aus der Referenz */
body.nerd .chip {
  border-radius: 6px; border-width: 0 0 0 6px; border-style: solid;
  background: var(--panel); color: var(--creme);
  font-weight: 700; padding: .65rem 1rem;
  box-shadow: 0 3px 10px rgba(0, 0, 0, .35);
}
body.nerd .chips .chip:nth-child(6n+1) { border-color: var(--vhs-rot); }
body.nerd .chips .chip:nth-child(6n+2) { border-color: var(--vhs-blau); }
body.nerd .chips .chip:nth-child(6n+3) { border-color: var(--vhs-gelb); }
body.nerd .chips .chip:nth-child(6n+4) { border-color: var(--vhs-tuerkis); }
body.nerd .chips .chip:nth-child(6n+5) { border-color: var(--vhs-lila); }
body.nerd .chips .chip:nth-child(6n+6) { border-color: var(--vhs-rosa); }
body.nerd .chip:hover { transform: translateY(-2px); color: var(--vhs-gelb); }

/* FAQ */
body.nerd .faq details { border-color: var(--linie-n); }
body.nerd .faq summary::marker { color: var(--glut); }

/* Retro-Fußzeile: kleines Augenzwinkern, dezent */
body.nerd .retro-footer {
  margin-top: 3.5rem; padding-top: 1.2rem; border-top: 2px solid var(--linie-n);
  font-family: var(--pixel); font-size: .52rem; color: #8a755c;
  display: flex; flex-wrap: wrap; gap: 1rem; justify-content: space-between; align-items: center;
}
.blink { animation: blinken 1.1s steps(2, start) infinite; }
@keyframes blinken { to { visibility: hidden; } }
@media (prefers-reduced-motion: reduce) { .blink { animation: none; } }

body.nerd .site-footer, body.nerd .site-footer nav a { color: #8a755c; }

/* ── Fandom-Akzente: gemeinsame Basis, eigene Welt-Farbe pro Seite ──────────
   --glut steuert Headline, Button, Preisschilder, Rahmen — eine Variable,
   ganze Seite. geschenke-fuer-nerds bleibt der neutrale Bernstein-Standard. */
body.fandom-harry-potter-fans { --glut: #e8b84b; --glut-tief: #b9860f; --neon: #c9a2ff; }   /* Gold & Zauber-Violett */
body.fandom-star-wars-fans    { --glut: #7cc4ff; --glut-tief: #3f8fd4; --neon: #ff6b6b; }   /* Hologramm-Blau */
body.fandom-gamer             { --glut: #ff5fae; --glut-tief: #c92579; --neon: #6bffd7; }   /* Neon-Magenta & Türkis */
body.fandom-lego-fans         { --glut: #ffd234; --glut-tief: #d99a00; --neon: #ff6b6b; }   /* Baustein-Gelb & Rot */
body.fandom-anime-fans        { --glut: #ff9ad2; --glut-tief: #d45f9e; --neon: #8fe0ff; }   /* Sakura-Rosa */
body.fandom-disney-fans       { --glut: #9db8ff; --glut-tief: #5f7fd4; --neon: #ffd76b; }   /* Schloss-Blau & Feenstaub-Gold */
body.fandom-superhelden-fans  { --glut: #ff6b5e; --glut-tief: #c93a2e; --neon: #6bb8ff; }   /* Comic-Rot & Blau */
body.nerd[class*="fandom-"] h1, body.nerd[class*="fandom-"] h2 {
  text-shadow: 0 0 18px color-mix(in srgb, var(--glut) 40%, transparent);
}
body.nerd .gift-card button[type="submit"] {
  box-shadow: 0 4px 0 color-mix(in srgb, var(--glut-tief) 70%, #000), 0 8px 24px color-mix(in srgb, var(--glut) 30%, transparent);
}
