/* ============================================================
   SUBDERMAL — themes.css
   Jedes Design = ein [data-theme="…"]-Block mit Variablen.
   NEUES DESIGN HINZUFÜGEN:
     1) hier einen Block kopieren & Variablen anpassen
     2) in js/theme.js zur THEMES-Liste hinzufügen (id + label)
   Struktur/Layout steht in base.css und bleibt unangetastet.
   ============================================================ */

/* ============================================================
   POP — Neo-Brutalist, knallig & laut (Default)
   ============================================================ */
[data-theme="pop"]{
  --font-display:"Archivo Black",sans-serif;
  --font-body:"Space Grotesk",system-ui,sans-serif;
  --display-weight:400; --display-transform:uppercase; --display-spacing:-.02em;
  --glitch-style:normal; --glitch-weight:400;
  --brand-weight:700;

  --bg:#F3EFE6; --bg-image:radial-gradient(#14121A .8px, transparent .8px); --bg-size:22px 22px;
  --ink:#14121A; --paper:#FFFDF7; --card-bg:#FFFDF7; --card-border:#14121A;
  --muted:#5b5868; --faint:#7c7a86;
  --accent:#FF2E88; --on-accent:#FFFDF7; --accent2:#2F5BFF; --accent3:#B8FF2E;
  --accent-fade:rgba(255,46,136,.2); --line:#14121A;

  --radius:12px; --radius-lg:18px; --border-w:2.5px; --card-border-w:3px;
  --shadow:6px 6px 0 var(--ink); --shadow-sm:4px 4px 0 var(--ink);
  --meter-h:26px; --meter-bg:#FFFDF7; --block-gap:26px;
  --meter-fill:repeating-linear-gradient(45deg,#FF2E88 0,#FF2E88 12px,#FF73AC 12px,#FF73AC 24px);
  --rule-display:none; --sheet-bg:#F3EFE6; --quick-bg:#FFC93A; --btn-bg:#FFFDF7;
  --boot-bg:#2F5BFF; --boot-fg:#FFFDF7;
  --toast-bg:#B8FF2E; --toast-fg:#14121A; --toast-border:3px solid #14121A;
}
[data-theme="pop"] .sig-core{ display:none; }
[data-theme="pop"] .sig-badge{ display:grid; place-items:center; text-align:center; flex:none;
  width:84px; height:84px; border-radius:50%; background:var(--accent2); color:var(--on-accent);
  border:3px solid var(--ink); font-family:var(--font-body); font-weight:700; font-size:12px;
  letter-spacing:.05em; text-transform:uppercase; line-height:1.1; box-shadow:var(--shadow);
  animation:wobble 3s ease-in-out infinite; }
@keyframes wobble{ 0%,100%{transform:rotate(-6deg)} 50%{transform:rotate(6deg)} }
[data-theme="pop"] .sig-text{ font-weight:500; font-size:15px; color:var(--ink); }
[data-theme="pop"] .sig-text b{ background:var(--accent); color:var(--on-accent); padding:1px 6px; border-radius:5px; font-weight:500; }
[data-theme="pop"] .eyebrow{ color:var(--ink); background:#FFC93A; border:2.5px solid var(--ink);
  border-radius:999px; padding:4px 12px; box-shadow:var(--shadow-sm); letter-spacing:.08em; }
[data-theme="pop"] .hero h1 .glitch{ color:var(--on-accent); background:var(--accent); padding:0 .12em;
  border:3px solid var(--ink); border-radius:6px; display:inline-block; transform:rotate(-1.5deg);
  -webkit-box-decoration-break:clone; box-decoration-break:clone; }
[data-theme="pop"] .block:nth-of-type(4n+2) .card-block{ background:var(--accent3); }
[data-theme="pop"] .block:nth-of-type(4n+3) .card-block{ background:var(--accent2); color:var(--on-accent); }
[data-theme="pop"] .block:nth-of-type(4n+3) .card-block .sub,
[data-theme="pop"] .block:nth-of-type(4n+3) .card-block p,
[data-theme="pop"] .block:nth-of-type(4n+3) .card-block .meter-num{ color:rgba(255,253,247,.85); }
[data-theme="pop"] .block:nth-of-type(4n+0) .card-block{ background:#FFC93A; }
[data-theme="pop"] .gb-item{ border:2.5px solid var(--ink); border-radius:12px; padding:12px 14px; box-shadow:var(--shadow-sm); }
[data-theme="pop"] .gb-meta{ color:var(--ink); }
[data-theme="pop"] footer{ border-top:none; }
[data-theme="pop"] footer span{ background:var(--paper); border:2px solid var(--ink); border-radius:999px; padding:4px 10px; }
[data-theme="pop"] .btn:hover{ transform:translate(-2px,-2px); box-shadow:6px 6px 0 var(--ink); }
[data-theme="pop"] .btn:active{ transform:translate(4px,4px); box-shadow:0 0 0 var(--ink); }
[data-theme="pop"] .admin-btn:active{ transform:translate(4px,4px); box-shadow:0 0 0 var(--ink); }
[data-theme="pop"] #boot span{ border:4px solid #FFFDF7; padding:14px 22px; border-radius:14px;
  transform:rotate(-2deg); text-transform:uppercase; }
[data-theme="pop"] #toast{ transform:translateX(-50%) translateY(8px) rotate(-1.5deg); }
[data-theme="pop"] #toast.show{ transform:translateX(-50%) translateY(0) rotate(-1.5deg); }

/* ============================================================
   EDITORIAL — hell, Serif, ruhig & edel
   ============================================================ */
[data-theme="editorial"]{
  --font-display:"Fraunces",serif;
  --font-body:"Inter",system-ui,sans-serif;
  --display-weight:500; --display-transform:none; --display-spacing:-.02em;
  --glitch-style:italic; --glitch-weight:400; --brand-weight:400;

  --bg:#FBF7F0; --bg-image:radial-gradient(120% 90% at 50% -10%, #F3EDE2, #FBF7F0 55%); --bg-size:auto;
  --ink:#1F1B16; --paper:#FFFFFF; --card-bg:#FFFFFF; --card-border:rgba(31,27,22,.12);
  --muted:#6F665B; --faint:#9A9085;
  --accent:#B0452E; --on-accent:#FBF7F0; --accent2:#C77D44;
  --accent-fade:rgba(176,69,46,.12); --line:rgba(31,27,22,.12);

  --radius:12px; --radius-lg:20px; --border-w:1px;
  --shadow:0 12px 30px -18px rgba(31,27,22,.25); --shadow-sm:0 1px 2px rgba(31,27,22,.05);
  --meter-h:14px; --meter-bg:#F3EDE2; --block-gap:46px;
  --meter-fill:linear-gradient(90deg,#C77D44,#B0452E);
  --sheet-bg:#FFFDF8; --quick-bg:rgba(176,69,46,.05); --input-bg:#FBF7F0;
  --boot-font:"Fraunces",serif; --bubble-font:"Fraunces",serif; --bubble-style:italic;
}
[data-theme="editorial"] .sig-badge{ display:none; }
[data-theme="editorial"] .gb-msg{ font-family:"Fraunces",serif; font-style:italic; font-size:18px; color:var(--ink); }
[data-theme="editorial"] #boot{ font-style:italic; }
[data-theme="editorial"] .meter-label{ font-weight:400; }

/* ============================================================
   TERMINAL — dunkelgrün, Monospace, Hacker
   ============================================================ */
[data-theme="terminal"]{
  --font-display:"Space Mono",ui-monospace,monospace;
  --font-body:"Space Mono",ui-monospace,monospace;
  --display-weight:700; --display-transform:uppercase; --display-spacing:-.02em;
  --glitch-style:normal; --glitch-weight:700; --brand-weight:400;

  --bg:#070a07; --bg-image:radial-gradient(120% 90% at 50% -10%, #0c130c, #070a07 60%); --bg-size:auto;
  --ink:#c9f5cf; --paper:#0b110b; --card-bg:rgba(57,255,20,.03); --card-border:rgba(57,255,20,.16);
  --muted:#5a7a5e; --faint:#3f5a43;
  --accent:#39FF14; --on-accent:#041006; --accent2:#00E5FF;
  --accent-fade:rgba(57,255,20,.25); --line:rgba(57,255,20,.16);

  --radius:4px; --radius-lg:6px; --border-w:1px;
  --shadow:0 0 24px rgba(57,255,20,.12); --shadow-sm:none;
  --meter-h:22px; --meter-bg:rgba(0,0,0,.4); --block-gap:30px;
  --meter-fill:linear-gradient(90deg,#00E5FF,#39FF14);
  --sheet-bg:#0a0f0a; --quick-bg:rgba(57,255,20,.06); --input-bg:rgba(0,0,0,.35);
  --boot-bg:#070a07; --boot-fg:#39FF14;
  --toast-bg:#39FF14; --toast-fg:#041006;
}
[data-theme="terminal"] .sig-badge{ display:none; }
[data-theme="terminal"] #grain{ display:block; opacity:.5; mix-blend-mode:multiply;
  background:repeating-linear-gradient(to bottom, transparent 0, transparent 2px, rgba(0,0,0,.28) 3px, transparent 4px); }
[data-theme="terminal"] .eyebrow::before{ content:"// "; opacity:.6; }
[data-theme="terminal"] .hero h1{ text-shadow:0 0 18px rgba(57,255,20,.25); }
[data-theme="terminal"] .meter-label{ font-style:normal; text-shadow:0 0 14px rgba(57,255,20,.4); }
[data-theme="terminal"] .vibe-spruch{ font-style:normal; }
[data-theme="terminal"] .gb-meta::before{ content:"> "; }
[data-theme="terminal"] .tama-bubble::before{ content:"> "; color:var(--accent); }
[data-theme="terminal"] .btn::before{ content:"[ "; color:var(--muted); }
[data-theme="terminal"] .btn::after{ content:" ]"; color:var(--muted); }
[data-theme="terminal"] .btn.primary::before,[data-theme="terminal"] .btn.primary::after{ opacity:.5; color:var(--on-accent); }
[data-theme="terminal"] .sig-text{ text-transform:uppercase; letter-spacing:.06em; }

/* ============================================================
   OXBLOOD — warmes Dunkelrot, „unter der Haut" (Original)
   ============================================================ */
[data-theme="oxblood"]{
  --font-display:"Fraunces",serif;
  --font-body:"Space Mono",ui-monospace,monospace;
  --display-weight:600; --display-transform:none; --display-spacing:-.01em;
  --glitch-style:italic; --glitch-weight:400; --brand-weight:400;

  --bg:#160a0b; --bg-image:radial-gradient(120% 90% at 50% -10%, #23100f, #160a0b 60%); --bg-size:auto;
  --ink:#ECE3D6; --paper:#1d0e0f; --card-bg:rgba(236,227,214,.02); --card-border:rgba(236,227,214,.14);
  --muted:#9C7E72; --faint:#9C7E72;
  --accent:#FF4A39; --on-accent:#1a0606; --accent2:#F2A65A;
  --accent-fade:rgba(255,74,57,.35); --line:rgba(236,227,214,.14);

  --radius:14px; --radius-lg:18px; --border-w:1px;
  --shadow:none; --shadow-sm:none;
  --meter-h:22px; --meter-bg:rgba(0,0,0,.25); --block-gap:30px;
  --meter-fill:linear-gradient(90deg,#F2A65A,#FF4A39);
  --sheet-bg:#1d0e0f; --quick-bg:rgba(255,74,57,.06);
  --boot-bg:#160a0b; --boot-fg:#F2A65A; --boot-font:"Space Mono",monospace;
}
[data-theme="oxblood"]{ --boot-font:"Space Mono",monospace; }
[data-theme="oxblood"] .sig-badge{ display:none; }
[data-theme="oxblood"] #boot{ font-size:14px; letter-spacing:.18em; text-transform:lowercase; }
[data-theme="oxblood"] .eyebrow{ color:var(--accent2); }
[data-theme="oxblood"] .beat{ box-shadow:0 0 0 0 rgba(255,74,57,.55); animation:beat 1.9s ease-out infinite; }

/* ============================================================
   AURORA — dunkles Glassmorphism, violett/cyan-Glow
   ============================================================ */
[data-theme="aurora"]{
  --font-display:"Space Grotesk",system-ui,sans-serif;
  --font-body:"Inter",system-ui,sans-serif;
  --display-weight:700; --display-transform:none; --display-spacing:-.03em;
  --glitch-style:normal; --glitch-weight:700; --brand-weight:500;

  --bg:#0a0a1f; --bg-size:auto;
  --bg-image:radial-gradient(60% 50% at 15% 0%, rgba(167,139,250,.28), transparent 70%),
             radial-gradient(60% 50% at 100% 30%, rgba(56,189,248,.22), transparent 70%),
             radial-gradient(80% 60% at 50% 110%, rgba(236,72,153,.18), transparent 70%);
  --ink:#E7E9FF; --paper:#10112b; --card-bg:rgba(255,255,255,.06); --card-border:rgba(255,255,255,.14);
  --muted:#A9AED6; --faint:#6E73A6;
  --accent:#A78BFA; --on-accent:#0a0a1f; --accent2:#38BDF8; --accent3:#F0ABFC;
  --accent-fade:rgba(167,139,250,.3); --line:rgba(255,255,255,.14);

  --radius:14px; --radius-lg:22px; --border-w:1px;
  --shadow:0 20px 50px -20px rgba(0,0,0,.7); --shadow-sm:0 8px 24px -14px rgba(0,0,0,.6);
  --meter-h:16px; --meter-bg:rgba(255,255,255,.08); --block-gap:36px;
  --meter-fill:linear-gradient(90deg,#38BDF8,#A78BFA,#F0ABFC);
  --sheet-bg:#10112b; --quick-bg:rgba(167,139,250,.1); --input-bg:rgba(255,255,255,.05);
  --boot-bg:#0a0a1f; --boot-fg:#A78BFA;
}
[data-theme="aurora"] .sig-badge{ display:none; }
[data-theme="aurora"] .card-block{ backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); }
[data-theme="aurora"] .hero h1{ text-shadow:0 0 40px rgba(167,139,250,.35); }
[data-theme="aurora"] .btn.primary{ box-shadow:0 0 24px rgba(167,139,250,.4); }
[data-theme="aurora"] .eyebrow{ background:linear-gradient(90deg,#A78BFA,#38BDF8);
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }

/* ============================================================
   MONO — strenges Schwarz-Weiß, Swiss, scharfe Kanten
   ============================================================ */
[data-theme="mono"]{
  --font-display:"Inter",system-ui,sans-serif;
  --font-body:"Inter",system-ui,sans-serif;
  --display-weight:600; --display-transform:uppercase; --display-spacing:-.03em;
  --glitch-style:normal; --glitch-weight:600; --brand-weight:600;

  --bg:#ffffff; --bg-image:none; --bg-size:auto;
  --ink:#000000; --paper:#ffffff; --card-bg:#ffffff; --card-border:#000000;
  --muted:#555555; --faint:#888888;
  --accent:#000000; --on-accent:#ffffff; --accent2:#000000;
  --accent-fade:rgba(0,0,0,.1); --line:#000000;

  --radius:0px; --radius-lg:0px; --border-w:1px; --card-border-w:1.5px;
  --shadow:none; --shadow-sm:none;
  --meter-h:14px; --meter-bg:#ffffff; --block-gap:48px;
  --meter-fill:#000000;
  --sheet-bg:#ffffff; --quick-bg:#f2f2f2; --input-bg:#ffffff;
  --boot-bg:#000000; --boot-fg:#ffffff;
  --toast-bg:#000000; --toast-fg:#ffffff;
  --sig-transform:uppercase; --sig-spacing:.14em;
}
[data-theme="mono"] .sig-badge{ display:none; }
[data-theme="mono"] .eyebrow{ border-bottom:1.5px solid #000; padding-bottom:4px; letter-spacing:.28em; }
[data-theme="mono"] .hero h1 .glitch{ background:#000; color:#fff; padding:0 .08em; }
[data-theme="mono"] .meter-label{ font-family:"Inter",sans-serif; font-weight:600; font-style:normal; }
[data-theme="mono"] .vibe-spruch{ font-style:normal; }
[data-theme="mono"] .rule{ background:#000; height:1.5px; }
[data-theme="mono"] .beat{ background:#000; }

/* ============================================================
   VAPOR — Vaporwave: Retro-Grid, Magenta/Cyan/Lila, Chrome
   ============================================================ */
[data-theme="vapor"]{
  --font-display:"Space Grotesk",system-ui,sans-serif;
  --font-body:"Space Grotesk",system-ui,sans-serif;
  --display-weight:700; --display-transform:uppercase; --display-spacing:.01em;
  --glitch-style:normal; --glitch-weight:700; --brand-weight:700;

  --bg:#1a1033; --bg-size:auto;
  --bg-image:radial-gradient(80% 60% at 50% -10%, rgba(255,106,213,.22), transparent 70%),
             radial-gradient(70% 60% at 50% 110%, rgba(38,255,230,.16), transparent 70%);
  --ink:#FDEBFF; --paper:#241546; --card-bg:rgba(255,255,255,.05); --card-border:rgba(255,106,213,.35);
  --muted:#C9A9E6; --faint:#8E78B8;
  --accent:#FF6AD5; --on-accent:#1a1033; --accent2:#26FFE6; --accent3:#C774E8;
  --accent-fade:rgba(255,106,213,.3); --line:rgba(255,106,213,.3);

  --radius:12px; --radius-lg:16px; --border-w:1.5px;
  --shadow:0 0 28px rgba(255,106,213,.25); --shadow-sm:0 0 16px rgba(38,255,230,.18);
  --meter-h:20px; --meter-bg:rgba(0,0,0,.3); --block-gap:32px;
  --meter-fill:linear-gradient(90deg,#26FFE6,#FF6AD5);
  --sheet-bg:#241546; --quick-bg:rgba(255,106,213,.1); --input-bg:rgba(0,0,0,.25);
  --boot-bg:#1a1033; --boot-fg:#FF6AD5;
  --toast-bg:#FF6AD5; --toast-fg:#1a1033;
}
[data-theme="vapor"] .sig-badge{ display:none; }
[data-theme="vapor"] .hero h1{ color:#fff;
  text-shadow:2px 2px 0 #FF6AD5, 4px 4px 0 #26FFE6; }
[data-theme="vapor"] .hero h1 .glitch{ color:#26FFE6; text-shadow:2px 2px 0 #FF6AD5; }
[data-theme="vapor"] .eyebrow{ color:#26FFE6; letter-spacing:.32em; }
[data-theme="vapor"] .meter-label{ font-style:normal; text-shadow:1px 1px 0 #26FFE6; }
[data-theme="vapor"] .vibe-spruch{ font-style:normal; }

/* ============================================================
   GOLD — Luxe: tiefes Schwarz + Metallic-Gold, Serif, edel
   ============================================================ */
[data-theme="gold"]{
  --font-display:"Fraunces",serif;
  --font-body:"Inter",system-ui,sans-serif;
  --display-weight:500; --display-transform:none; --display-spacing:-.01em;
  --glitch-style:italic; --glitch-weight:400; --brand-weight:500;

  --bg:#0d0d10; --bg-image:radial-gradient(120% 90% at 50% -10%, #15140f, #0d0d10 60%); --bg-size:auto;
  --ink:#EDE7D8; --paper:#16161b; --card-bg:#16161b; --card-border:rgba(201,162,75,.28);
  --muted:#9a937f; --faint:#6f6a5a;
  --accent:#C9A24B; --on-accent:#0d0d10; --accent2:#E7CB7E;
  --accent-fade:rgba(201,162,75,.22); --line:rgba(201,162,75,.25);

  --radius:6px; --radius-lg:10px; --border-w:1px;
  --shadow:0 16px 40px -22px rgba(0,0,0,.8); --shadow-sm:none;
  --meter-h:14px; --meter-bg:#0d0d10; --block-gap:40px;
  --meter-fill:linear-gradient(90deg,#9a7b2e,#E7CB7E,#C9A24B);
  --sheet-bg:#121216; --quick-bg:rgba(201,162,75,.08); --input-bg:#0d0d10;
  --boot-bg:#0d0d10; --boot-fg:#C9A24B; --boot-font:"Fraunces",serif;
}
[data-theme="gold"] .sig-badge{ display:none; }
[data-theme="gold"] .eyebrow{ letter-spacing:.26em; }
[data-theme="gold"] .hero h1{ background:linear-gradient(90deg,#E7CB7E,#C9A24B 55%,#9a7b2e);
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
[data-theme="gold"] .btn.primary{ background:linear-gradient(90deg,#E7CB7E,#C9A24B); border-color:#C9A24B; }
[data-theme="gold"] #boot{ font-style:italic; }

/* ============================================================
   FEST — Volksfest: Holz, Bier-Gold, blau-weiß & rot
   ============================================================ */
[data-theme="fest"]{
  --font-display:"Fraunces",serif;
  --font-body:"Space Grotesk",system-ui,sans-serif;
  --display-weight:600; --display-transform:none; --display-spacing:-.01em;
  --glitch-style:italic; --glitch-weight:600; --brand-weight:700;

  --bg:#2e1d10; --bg-size:100% 14px;
  --bg-image:repeating-linear-gradient(0deg, rgba(0,0,0,.16) 0, rgba(0,0,0,.16) 1px, transparent 1px, transparent 14px);
  --ink:#F6E7C7; --paper:#3a2616; --card-bg:#3a2616; --card-border:rgba(242,161,0,.4);
  --muted:#C9A877; --faint:#9c8259;
  --accent:#F2A100; --on-accent:#2e1d10; --accent2:#C8102E; --accent3:#2A6FBF;
  --accent-fade:rgba(242,161,0,.3); --line:rgba(242,161,0,.3);

  --radius:10px; --radius-lg:16px; --border-w:2px;
  --shadow:0 12px 28px -16px rgba(0,0,0,.8); --shadow-sm:none;
  --meter-h:22px; --meter-bg:#241208; --block-gap:32px;
  --meter-fill:linear-gradient(90deg,#7a4a12,#F2A100,#FFE08A);
  --sheet-bg:#3a2616; --quick-bg:rgba(242,161,0,.1); --input-bg:#241208;
  --boot-bg:#2e1d10; --boot-fg:#F2A100; --boot-font:"Fraunces",serif;
}
[data-theme="fest"] .sig-badge{ display:none; }
[data-theme="fest"] .eyebrow{ color:#2e1d10; background:#F2A100; border-radius:6px; padding:3px 10px; }
[data-theme="fest"] .hero h1 .glitch{ color:#FFE08A; }
[data-theme="fest"] .brand{ color:#FFE08A; }
[data-theme="fest"] .beat{ background:#C8102E; }
[data-theme="fest"] .btn.primary{ background:#C8102E; border-color:#C8102E; color:#fff; }
[data-theme="fest"] footer span{ color:#C9A877; }
[data-theme="fest"] #grain{ display:block; opacity:.12;
  background-image:repeating-conic-gradient(#2A6FBF 0 25%, #fff 0 50%); background-size:30px 30px; height:8px; inset:auto 0 0 0; }

/* ============================================================
   AUSTRIA — Rot-Weiß-Rot, alpin & sauber
   ============================================================ */
[data-theme="austria"]{
  --font-display:"Fraunces",serif;
  --font-body:"Inter",system-ui,sans-serif;
  --display-weight:600; --display-transform:none; --display-spacing:-.015em;
  --glitch-style:italic; --glitch-weight:500; --brand-weight:600;

  --bg:#FCFAF8; --bg-image:none; --bg-size:auto;
  --ink:#1A1A1A; --paper:#ffffff; --card-bg:#ffffff; --card-border:rgba(237,41,57,.25);
  --muted:#6a6a6a; --faint:#9a9a9a;
  --accent:#ED2939; --on-accent:#ffffff; --accent2:#C8102E;
  --accent-fade:rgba(237,41,57,.15); --line:rgba(0,0,0,.12);

  --radius:10px; --radius-lg:16px; --border-w:1px;
  --shadow:0 14px 32px -20px rgba(237,41,57,.4); --shadow-sm:0 1px 2px rgba(0,0,0,.05);
  --meter-h:16px; --meter-bg:#f3eded; --block-gap:38px;
  --meter-fill:linear-gradient(90deg,#ED2939,#C8102E);
  --sheet-bg:#ffffff; --quick-bg:rgba(237,41,57,.06); --input-bg:#FCFAF8;
  --boot-bg:#ED2939; --boot-fg:#ffffff;
  --toast-bg:#ED2939; --toast-fg:#ffffff;
}
[data-theme="austria"] .sig-badge{ display:none; }
[data-theme="austria"] .hero h1{ border-left:6px solid #ED2939; padding-left:16px; }
[data-theme="austria"] .rule{ background:#ED2939; height:3px; }
[data-theme="austria"] .brand{ color:#ED2939; }

/* ============================================================
   NATUR — Wald & Wiese, organisch, draußen
   ============================================================ */
[data-theme="natur"]{
  --font-display:"Fraunces",serif;
  --font-body:"Inter",system-ui,sans-serif;
  --display-weight:500; --display-transform:none; --display-spacing:-.01em;
  --glitch-style:italic; --glitch-weight:400; --brand-weight:500;

  --bg:#EEF2E6; --bg-image:radial-gradient(120% 90% at 50% -10%, #E3EBD4, #EEF2E6 55%); --bg-size:auto;
  --ink:#23311F; --paper:#FBFCF7; --card-bg:#FBFCF7; --card-border:rgba(62,107,72,.22);
  --muted:#5d6f55; --faint:#869077;
  --accent:#3E6B48; --on-accent:#FBFCF7; --accent2:#C98B3A; --accent3:#7A8C3F;
  --accent-fade:rgba(62,107,72,.18); --line:rgba(62,107,72,.2);

  --radius:16px; --radius-lg:26px; --border-w:1px;
  --shadow:0 16px 34px -22px rgba(35,49,31,.4); --shadow-sm:0 1px 2px rgba(35,49,31,.06);
  --meter-h:16px; --meter-bg:#E3EBD4; --block-gap:42px;
  --meter-fill:linear-gradient(90deg,#7A8C3F,#3E6B48);
  --sheet-bg:#FBFCF7; --quick-bg:rgba(62,107,72,.07); --input-bg:#EEF2E6;
  --boot-font:"Fraunces",serif;
}
[data-theme="natur"] .sig-badge{ display:none; }
[data-theme="natur"] .eyebrow::before{ content:"❧ "; }
[data-theme="natur"] .gb-msg{ font-family:"Fraunces",serif; font-style:italic; }

/* ============================================================
   HORROR — pechschwarz, Blutrot, kränkliches Grün, flackernd
   ============================================================ */
[data-theme="horror"]{
  --font-display:"Fraunces",serif;
  --font-body:"Space Mono",ui-monospace,monospace;
  --display-weight:400; --display-transform:none; --display-spacing:0;
  --glitch-style:italic; --glitch-weight:400; --brand-weight:400;

  --bg:#08060a; --bg-image:radial-gradient(110% 80% at 50% 120%, #1a0608, #08060a 70%); --bg-size:auto;
  --ink:#b9b0a6; --paper:#120c0e; --card-bg:#0f0a0c; --card-border:rgba(155,27,27,.35);
  --muted:#766a66; --faint:#4e4644;
  --accent:#9b1b1b; --on-accent:#0a0506; --accent2:#6b8f3a;
  --accent-fade:rgba(155,27,27,.35); --line:rgba(155,27,27,.3);

  --radius:3px; --radius-lg:5px; --border-w:1px;
  --shadow:0 0 30px rgba(155,27,27,.25); --shadow-sm:none;
  --meter-h:20px; --meter-bg:#1a0608; --block-gap:34px;
  --meter-fill:repeating-linear-gradient(90deg,#5a0c0c 0,#9b1b1b 10px,#5a0c0c 20px);
  --sheet-bg:#0a0506; --quick-bg:rgba(155,27,27,.08); --input-bg:#1a0608;
  --boot-bg:#08060a; --boot-fg:#9b1b1b; --boot-font:"Fraunces",serif;
}
[data-theme="horror"] .sig-badge{ display:none; }
[data-theme="horror"] .hero h1{ color:#cdbfb6; text-shadow:0 0 18px rgba(155,27,27,.6), 0 2px 0 #2a0606;
  animation:hflicker 4s linear infinite; }
@keyframes hflicker{ 0%,96%,100%{opacity:1} 97%{opacity:.4} 98%{opacity:.85} 99%{opacity:.3} }
[data-theme="horror"] .hero h1 .glitch{ color:#9b1b1b; }
[data-theme="horror"] .eyebrow{ color:#6b8f3a; letter-spacing:.3em; }
[data-theme="horror"] #boot{ font-style:italic; letter-spacing:.04em; }
[data-theme="horror"] .beat{ background:#9b1b1b; }
