/* Anpfiff1 Retro WM Edition: alle WM-Seiten (Start, Features, FAQ, Bestenliste, in allen Sprachen).
   Gestaltung wie die Karussell-Folien und Store-Bilder: Spielszene als Vollbild-Hintergrund, abgedunkelt,
   Ueberschrift in goldener Unifont, Spiel-Panel im Goldrahmen, Kapitelzaehler "01 / 05".
   Erzeugt wird das HTML von _tools/wm_site/bauen.py. */
@font-face{font-family:Unifont;font-display:swap;src:url(assets/fonts/unifont-wm.woff2) format("woff2")}
:root{
  --navy:#0a1a33; --navy2:#0c2040; --panel:#0e2745; --gold:#f0c040; --goldb:#e8b32a; --knopf:#c9a034; --knopf2:#e2b94a;
  --text:#eaf0f7; --dim:#b3c1d6; --papier:#fff6d8; --rahmen:#f0c040;
  --sys:system-ui,"Segoe UI",Roboto,Tahoma,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:52px}
body{background:var(--navy);color:var(--text);font:17px/1.65 var(--sys);-webkit-text-size-adjust:100%;overflow-x:hidden}
a{color:var(--gold);text-underline-offset:3px}
img{max-width:100%;height:auto}
:focus-visible{outline:3px solid #fff;outline-offset:3px}
.px,h1,h2,h3{font-family:Unifont,"Courier New",monospace;font-weight:400;letter-spacing:0;overflow-wrap:break-word}

/* Kopf: liegt ueber dem Hero und wird beim Scrollen dunkel */
.kopf{position:fixed;top:0;left:0;right:0;z-index:30;border-top:3px solid var(--goldb);transition:background .25s,border-color .25s}
.kopf.fest,.kopf.offen{background:rgba(10,26,51,.96);backdrop-filter:blur(6px);border-bottom:1px solid rgba(240,192,64,.4)}
.kopf nav{max-width:1240px;margin:0 auto;padding:3px 20px;display:flex;align-items:center;gap:0 16px;position:relative;min-height:44px}
.kopf .marke{font-family:Unifont,monospace;font-size:15px;color:var(--gold);text-decoration:none;margin-inline-end:auto;display:flex;align-items:center;gap:10px;white-space:nowrap}
.kopf .marke img{width:28px;height:28px;border-radius:6px;display:block}
.kopf .links{display:none;align-items:center;gap:6px 20px;flex-wrap:nowrap}
.kopf a.punkt{color:var(--text);text-decoration:none;font-family:Unifont,monospace;font-size:15px;padding:4px 0;border-bottom:2px solid transparent;white-space:nowrap}
.kopf a.punkt:hover,.kopf a.punkt[aria-current=page]{border-bottom-color:var(--gold);color:var(--gold)}
.kopf a.punkt.heim{color:var(--dim)}
.kopf .knopf{padding:4px 14px;font-size:15px;box-shadow:none;border-color:var(--rahmen);white-space:nowrap}
.menue-knopf{display:inline-flex;align-items:center;gap:10px;background:none;border:2px solid rgba(240,192,64,.6);color:var(--text);font-family:Unifont,monospace;font-size:15px;padding:3px 10px;cursor:pointer}
.menue-knopf .balken{width:18px;height:2px;background:currentColor;box-shadow:0 -6px 0 currentColor,0 6px 0 currentColor;display:block}
.kopf.offen .links{display:flex;flex-direction:column;align-items:flex-start;position:absolute;left:0;right:0;top:100%;flex-wrap:wrap;background:rgba(10,26,51,.98);padding:14px 20px 22px;border-bottom:2px solid var(--rahmen);gap:8px;max-height:calc(100vh - 70px);overflow:auto}
.sprache{position:relative}
.sp-knopf{font-family:Unifont,monospace;font-size:15px;background:transparent;color:var(--text);border:2px solid rgba(240,192,64,.6);padding:1px 9px;cursor:pointer}
.sp-knopf:hover{border-color:var(--gold);color:var(--gold)}
.sp-liste{position:absolute;inset-inline-end:0;top:calc(100% + 8px);background:var(--panel);border:2px solid var(--rahmen);list-style:none;min-width:190px;padding:6px 0;z-index:40;box-shadow:0 18px 40px rgba(0,0,0,.5)}
.sp-liste[hidden]{display:none}
.sp-liste a{display:block;padding:8px 18px;color:var(--text);text-decoration:none;font:16px var(--sys)}
.sp-liste a:hover,.sp-liste a[aria-current]{background:rgba(240,192,64,.16);color:var(--gold)}
.kopf.offen .sp-liste{position:static;margin-top:8px;box-shadow:none}

.knopf{display:inline-block;background:var(--knopf);color:#0a1a33;font-family:Unifont,monospace;font-size:16px;line-height:1.3;
  padding:14px 26px;border:2px solid #0a1a33;box-shadow:0 0 0 2px var(--rahmen);text-decoration:none;text-align:center;cursor:pointer}
.knopf:hover{background:var(--knopf2)}
.knopf.gross{font-size:24px;padding:18px 34px}
.zweit{font-family:Unifont,monospace;font-size:16px;color:var(--text);text-decoration:none;border-bottom:2px solid var(--gold);padding-bottom:2px}
.zweit:hover{color:var(--gold)}

/* Hintergrund-Szenen */
.szene{position:relative;overflow:hidden;isolation:isolate;border-top:2px solid rgba(240,192,64,.55)}
.szene>.bg{position:absolute;left:0;right:0;top:-6%;height:112%;width:100%;object-fit:cover;z-index:-2;will-change:transform}
.szene::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(10,26,51,.55),rgba(10,26,51,.86) 55%,rgba(10,26,51,.94))}
.innen{max-width:1240px;margin:0 auto;padding:84px 20px;display:grid;gap:36px;align-items:center}
.kap{font-family:Unifont,monospace;font-size:16px;color:var(--gold);display:flex;gap:14px;align-items:center;margin-bottom:14px}
.kap::before{content:"";width:34px;height:3px;background:var(--gold)}
.szene h2{font-size:32px;line-height:1.18;color:var(--gold);margin-bottom:14px}
.szene .unter{font-size:18px;color:#fff;max-width:30em;margin-bottom:18px}
.szene p.fliess{color:var(--dim);max-width:34em}
.szene ul.punkte{list-style:none;margin-top:18px;display:grid;gap:8px;max-width:34em}
.szene ul.punkte li{color:var(--text);padding-inline-start:24px;position:relative}
.szene ul.punkte li::before{content:"";position:absolute;inset-inline-start:0;top:.62em;width:10px;height:10px;background:var(--gold)}

/* Panel im Goldrahmen wie auf den Folien */
.panel{margin:0;border:3px solid var(--rahmen);background:var(--panel);box-shadow:0 0 0 1px #0a1a33,0 28px 70px rgba(0,0,0,.6)}
.panel a,.panel img{display:block;width:100%}
.panel.paar{display:grid;gap:3px;background:var(--rahmen)}
.panel.paar img{background:var(--panel)}
.panel figcaption{font-family:Unifont,monospace;font-size:14px;line-height:1.45;color:var(--dim);background:var(--panel);padding:10px 12px}

/* Hero */
.hero{min-height:min(100vh,880px);display:flex;flex-direction:column;border-top:0}
.hero .innen{flex:1;padding-top:92px;padding-bottom:56px;width:100%}
.hero .kicker{font-family:Unifont,monospace;font-size:16px;color:var(--gold);display:block;margin-bottom:16px}
.hero h1 .gross{display:block;font-size:48px;line-height:1.08;color:#fff;text-shadow:0 4px 30px rgba(0,0,0,.6)}
.hero h1 .gross em{font-style:normal;color:var(--gold)}
.hero .lead{color:#dfe8f4;font-size:19px;max-width:32em;margin:22px 0 30px;text-shadow:0 2px 14px rgba(0,0,0,.7)}
.cta-zeile{display:flex;flex-wrap:wrap;align-items:center;gap:20px 26px}
.qr{display:none;align-items:center;gap:12px;font-family:Unifont,monospace;font-size:14px;color:var(--dim);max-width:230px;line-height:1.35}
.qr svg{width:96px;height:96px;display:block;border:4px solid var(--papier);background:var(--papier);flex:none}
.klein{color:var(--dim);font-size:15px;margin-top:20px;max-width:40em}
.web-hinweis{margin-top:16px;font-size:15px;color:var(--dim)}
.web-hinweis span{display:block;margin-top:6px}

/* Lauftext wie die Bandenwerbung im Stadion */
.band{background:var(--goldb);color:#0a1a33;border-top:2px solid #0a1a33;border-bottom:2px solid #0a1a33;overflow:hidden;white-space:nowrap;font-family:Unifont,monospace;font-size:16px;direction:ltr}
.band .lauf{display:inline-block;padding:10px 0;animation:lauf 46s linear infinite}
.band span{padding:0 22px;unicode-bidi:plaintext}
.band span::after{content:"\25A0";margin-left:44px;font-size:10px;vertical-align:2px}
@keyframes lauf{to{transform:translateX(-50%)}}

/* Weitere Bilder */
.mehr-wrap{max-width:1240px;margin:0 auto;padding:64px 20px}
.mehr-titel{font-size:24px;color:var(--gold);margin-bottom:18px}
.mehr{display:grid;gap:18px}
.mehr .panel{box-shadow:none}

/* Trailer */
.mitte{max-width:1040px;margin:0 auto;padding:84px 20px}
.yt{margin:0;border:3px solid var(--rahmen);box-shadow:0 28px 70px rgba(0,0,0,.6);background:#000}
.yt .yt-play{position:relative;display:block;overflow:hidden}
.yt img{display:block;width:100%;height:auto}
.yt .yt-btn{position:absolute;left:50%;top:50%;width:96px;height:96px;margin:-48px 0 0 -48px;background:var(--knopf);border:3px solid #0a1a33;box-shadow:0 0 0 3px var(--rahmen),0 10px 40px rgba(0,0,0,.6)}
.yt .yt-btn::after{content:"";position:absolute;left:34px;top:24px;border-style:solid;border-width:20px 0 20px 34px;border-color:transparent transparent transparent #0a1a33}
.yt .yt-play:hover .yt-btn,.yt .yt-play:focus-visible .yt-btn{background:var(--knopf2)}
.yt iframe{display:block;width:100%;aspect-ratio:16/9;border:0}
.yt figcaption{color:var(--dim);font-size:14px;padding:10px 12px;background:var(--panel)}
.yt figcaption small{display:block}
.stand{color:var(--dim);font-size:14px;margin-top:14px}

/* Bestenliste auf der Startseite */
.tafel{border:3px solid var(--rahmen);background:rgba(14,39,69,.92);max-width:640px;box-shadow:0 28px 70px rgba(0,0,0,.6)}
.tafel ol{list-style:none}
.tafel li{display:grid;grid-template-columns:44px 30px 1fr auto;gap:12px;align-items:center;padding:14px 18px;border-bottom:1px solid rgba(240,192,64,.3);font-family:Unifont,monospace;font-size:16px}
.tafel li:last-child{border-bottom:0}
.tafel .platz{color:var(--gold)}
.tafel img{width:30px;height:20px;object-fit:cover;display:block}
.tafel .name small{display:block;color:var(--dim);font-size:14px}
.tafel .punkte{color:var(--gold)}
.tafel-fuss{margin-top:16px}

/* Schluss */
.schluss .innen{justify-items:start}
.schluss .pfeife{width:112px;height:112px;border-radius:22px;border:3px solid var(--rahmen);box-shadow:0 18px 50px rgba(0,0,0,.6)}
.schluss h2{font-size:40px;color:var(--gold)}
.schluss h2 span{display:block;font-size:24px;color:#fff;margin-top:6px}
.schluss p{color:#dfe8f4;max-width:40em}
.schluss .ptxt{color:var(--dim);font-size:15px}

/* Fakten */
.fakten-wrap{max-width:1240px;margin:0 auto;padding:64px 20px 24px}
.fakten-wrap h2{font-size:24px;color:var(--gold);margin-bottom:16px}
.fakten{width:100%;max-width:900px;border-collapse:collapse;font-size:15px}
.fakten th,.fakten td{padding:10px 12px;border-bottom:1px solid rgba(240,192,64,.25);text-align:start;vertical-align:top}
.fakten th{width:30%;color:var(--gold);font-family:Unifont,monospace;font-weight:400}
.fakten td{color:var(--dim)}

/* Unterseiten */
.seitenkopf{min-height:380px;display:flex;align-items:flex-end}
.schmal{max-width:1240px;margin:0 auto;padding:100px 20px 52px;width:100%}
.seitenkopf h1{font-size:40px;line-height:1.12;color:#fff;margin-bottom:14px;text-shadow:0 4px 30px rgba(0,0,0,.6)}
.seitenkopf .unter{font-size:18px;color:#dfe8f4;max-width:40em;text-shadow:0 2px 14px rgba(0,0,0,.7)}
.abschnitt{padding:72px 0;border-top:1px solid rgba(240,192,64,.25)}
.abschnitt:nth-of-type(even){background:var(--navy2)}
.spalte{max-width:1100px;margin:0 auto;padding:0 20px}
.spalte.breit{max-width:1240px}
.spalte.unten{padding-bottom:40px}
.abschnitt h2{font-size:32px;line-height:1.18;color:var(--gold);margin-bottom:20px}
.abschnitt h3{font-size:20px;color:#fff;margin:22px 0 8px}
.fliess{color:var(--dim);max-width:46em;margin-bottom:12px}
.fliess strong,.liste strong{color:var(--text)}
.karten{display:grid;gap:20px;margin:26px 0}
.karte{border:2px solid var(--rahmen);background:var(--panel);padding:22px;box-shadow:0 18px 40px rgba(0,0,0,.35)}
.karte h3{font-size:18px;color:var(--gold);margin:0 0 10px}
.karte p{color:var(--dim);font-size:16px}
.liste{list-style:none;display:grid;gap:10px;margin:16px 0 18px;max-width:46em}
.liste li{color:var(--dim);padding-inline-start:26px;position:relative}
.liste li::before{content:"";position:absolute;inset-inline-start:0;top:.62em;width:10px;height:10px;background:var(--gold)}
.bilder{display:grid;gap:20px;margin-top:30px}
.bilder .panel{box-shadow:0 18px 40px rgba(0,0,0,.4)}
.weiter{margin-top:34px;font-family:Unifont,monospace;font-size:16px}
.weiter a{margin-inline-end:6px}

/* FAQ */
.frage{border:2px solid var(--rahmen);background:var(--panel);margin-bottom:12px}
.frage summary{cursor:pointer;padding:16px 18px;padding-inline-start:54px;font-family:Unifont,monospace;font-size:18px;line-height:1.4;color:#fff;list-style:none;position:relative}
.frage summary::-webkit-details-marker{display:none}
.frage summary::before{content:"+";position:absolute;inset-inline-start:20px;top:14px;color:var(--gold);font-size:22px;line-height:1.2}
.frage[open] summary{color:var(--gold)}
.frage[open] summary::before{content:"-"}
.frage p{padding:0 18px 20px;padding-inline-start:54px;color:var(--dim);max-width:48em}

/* Bestenliste (Seite) */
.filter{display:flex;flex-wrap:wrap;gap:12px 22px;margin:0 0 22px;align-items:end}
.filter label{display:flex;flex-direction:column;gap:6px;color:var(--gold);font-family:Unifont,monospace;font-size:14px}
.filter select{background:var(--panel);color:var(--text);border:2px solid var(--rahmen);padding:10px 12px;font:16px var(--sys);min-width:170px}
.tabwrap{overflow-x:auto;border:3px solid var(--rahmen);background:var(--panel);box-shadow:0 28px 70px rgba(0,0,0,.5)}
#hs{width:100%;border-collapse:collapse}
#hs th,#hs td{padding:12px 14px;text-align:start;border-bottom:1px solid rgba(240,192,64,.22);font-size:15px;vertical-align:middle}
#hs th{background:#102a4c;color:var(--gold);font-family:Unifont,monospace;font-weight:400;font-size:14px;border-bottom:2px solid var(--rahmen)}
#hs th.r,#hs td.r{text-align:end}
#hs .rank{font-family:Unifont,monospace;color:var(--gold);width:52px}
#hs .pts{font-family:Unifont,monospace;color:var(--gold);font-variant-numeric:tabular-nums;font-size:16px}
#hs .team{display:flex;align-items:center;gap:10px;white-space:nowrap}
#hs .team img{width:30px;height:20px;object-fit:cover;box-shadow:0 0 0 1px rgba(255,255,255,.2)}
#hs .sub{display:block;color:var(--dim);font-size:12px}
#hs .dim{color:var(--dim);white-space:nowrap}
#hs .stars{color:var(--gold);letter-spacing:1px;white-space:nowrap}
#hs .stars .off{color:rgba(240,192,64,.28)}
#hs .sub .stars{font-size:12px;margin-inline-start:6px}
#hs .only-s{display:none}
#hs tr.top td{background:rgba(240,192,64,.09)}
#more{margin-top:20px;display:none}

footer.fuss{max-width:1240px;margin:0 auto;padding:30px 20px 48px;text-align:center;color:var(--dim);font-size:14px}
footer.fuss .links{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px;margin:10px 0}
footer.fuss a{color:var(--text)}
footer.fuss .sprachen-fuss a{color:var(--dim)}

/* Einblenden beim Scrollen (nur mit Skript) */
.js .rv{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
.js .rv.da{opacity:1;transform:none}

/* Lichtkasten */
dialog#lb{border:3px solid var(--rahmen);background:var(--navy);padding:0;max-width:min(96vw,1280px);margin:auto}
dialog#lb::backdrop{background:rgba(5,10,22,.9)}
dialog#lb img{display:block;width:100%;max-height:88vh;object-fit:contain}
dialog#lb .zu{position:absolute;right:8px;top:8px}
dialog#lb .knopf{padding:6px 14px;box-shadow:none}

/* Arabisch: Unifont hat keine arabischen Formen, also Systemschrift */
html[lang=ar] .px,html[lang=ar] h1,html[lang=ar] h2,html[lang=ar] h3,html[lang=ar] .knopf,html[lang=ar] .kap,html[lang=ar] .zweit,html[lang=ar] .qr,
html[lang=ar] .kopf a.punkt,html[lang=ar] .kopf .marke,html[lang=ar] .sp-knopf,html[lang=ar] .menue-knopf,html[lang=ar] .tafel li,html[lang=ar] .fakten th,
html[lang=ar] .band,html[lang=ar] .hero .kicker,html[lang=ar] .frage summary,html[lang=ar] .filter label,html[lang=ar] #hs th,html[lang=ar] #hs .rank,
html[lang=ar] #hs .pts,html[lang=ar] .weiter,html[lang=ar] .panel figcaption{font-family:var(--sys);font-weight:700}
html[lang=ar] .hero h1 .gross{line-height:1.3}

@media (max-width:420px){
  .hero h1 .gross{font-size:32px}
  .knopf.gross{font-size:16px;padding:16px 18px;display:block;width:100%}
  .szene h2,.abschnitt h2{font-size:24px}
  .schluss h2{font-size:32px}
  .kopf .marke span{display:none}
  .seitenkopf h1{font-size:30px}
}
@media (max-width:700px){
  #hs .hide-s{display:none}
  #hs th .only-s{display:inline}
  #hs .sub .only-s{display:block;margin-inline-start:0}
  #hs th,#hs td{padding:10px 8px;font-size:14px}
  #hs .rank{width:34px}
  #hs .team{white-space:normal;gap:6px}
  #hs .team img{width:24px;height:16px;flex:none}
  .filter select{min-width:0;width:100%}
  .filter label{flex:1 1 40%}
}
@media (min-width:640px){
  .mehr{grid-template-columns:repeat(3,1fr)}
  .szene h2,.abschnitt h2{font-size:40px}
  .karten{grid-template-columns:repeat(2,1fr)}
  .bilder.mehrere{grid-template-columns:repeat(2,1fr)}
  .seitenkopf h1{font-size:48px}
}
@media (min-width:1000px){
  .kopf .links{display:flex;margin-inline-end:6px}
  .menue-knopf{display:none}
  .karten{grid-template-columns:repeat(3,1fr)}
}
@media (min-width:1000px) and (max-width:1199px){
  .kopf .links{gap:6px 14px}
  .kopf a.punkt,.kopf .marke{font-size:14px}
  .kopf .knopf{padding:4px 10px}
}
@media (min-width:900px){
  .innen{grid-template-columns:5fr 6fr;gap:56px;padding:110px 20px}
  .innen.links-panel{grid-template-columns:6fr 5fr}
  .innen.links-panel>.panel,.innen.links-panel>.panel-wrap{order:-1}
  .hero h1 .gross{font-size:72px}
  .hero .innen{padding-top:104px}
  .qr{display:flex}
  .szene h2{font-size:48px}
  .szene::after{background:linear-gradient(90deg,rgba(10,26,51,.92),rgba(10,26,51,.7) 45%,rgba(10,26,51,.45))}
  html[dir=rtl] .szene::after{background:linear-gradient(270deg,rgba(10,26,51,.92),rgba(10,26,51,.7) 45%,rgba(10,26,51,.45))}
  .szene.hero::after{background:linear-gradient(90deg,rgba(10,26,51,.88),rgba(10,26,51,.55) 55%,rgba(10,26,51,.35))}
  html[dir=rtl] .szene.hero::after{background:linear-gradient(270deg,rgba(10,26,51,.88),rgba(10,26,51,.55) 55%,rgba(10,26,51,.35))}
  .szene.mitte-bg::after,.szene.schluss::after,.szene.seitenkopf::after{background:linear-gradient(180deg,rgba(10,26,51,.7),rgba(10,26,51,.9))}
  .schluss .innen{grid-template-columns:minmax(0,44rem);padding-top:100px;padding-bottom:100px}
  .bilder.mehrere{grid-template-columns:repeat(3,1fr)}
  .abschnitt h2{font-size:40px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .band .lauf{animation:none}
  .js .rv{opacity:1;transform:none;transition:none}
  .szene>.bg{transform:none!important;top:0;height:100%}
}
