/*
 * SPDX-License-Identifier: LicenseRef-FreeLink-1.0
 * FreeLink — Copyright (c) 2026 ICTcloud Ltd. | Digital Solutions
 * Alle Schriften liegen im Paket. Es wird nichts von fremden Servern geladen.
 */

/* ---------- Schriften ---------- */

@font-face{font-family:Inter;src:url(fonts/inter-400.woff2)format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url(fonts/inter-700.woff2)format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Space Grotesk";src:url(fonts/space-grotesk-400.woff2)format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Space Grotesk";src:url(fonts/space-grotesk-700.woff2)format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Plus Jakarta Sans";src:url(fonts/jakarta-400.woff2)format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Plus Jakarta Sans";src:url(fonts/jakarta-700.woff2)format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Source Serif 4";src:url(fonts/source-serif-400.woff2)format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Source Serif 4";src:url(fonts/source-serif-700.woff2)format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:Fraunces;src:url(fonts/fraunces-400.woff2)format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Fraunces;src:url(fonts/fraunces-700.woff2)format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:Archivo;src:url(fonts/archivo-400.woff2)format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Archivo;src:url(fonts/archivo-800.woff2)format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url(fonts/jetbrains-400.woff2)format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url(fonts/jetbrains-700.woff2)format("woff2");font-weight:700;font-display:swap}

/* ---------- Grundlagen ---------- */

*,*::before,*::after{box-sizing:border-box}

:root{
  --accent:#2f6fed;
  --bg:#fbfbfc; --text:#16181d; --text-dim:#5d6470;
  --flaeche:#fff; --linie:#e4e7ed;
  --btn-bg:#fff; --btn-text:#16181d; --btn-linie:#e0e4eb;
  --btn-schatten:0 1px 2px rgba(16,20,30,.05);
  --btn-schatten-hover:0 6px 18px rgba(16,20,30,.10);
  --radius:14px; --luecke:12px; --pad:22px;
  --font:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --font-titel:var(--font);
  --gewicht:650; --sperrung:-.018em; --zeile:1.55;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
}

html{scroll-padding-top:env(safe-area-inset-top,0px);-webkit-text-size-adjust:100%;scroll-behavior:smooth}

body{
  margin:0;min-height:100%;background:var(--bg);color:var(--text);
  font-family:var(--font);font-size:16px;line-height:var(--zeile);
  -webkit-font-smoothing:antialiased;
}

img{max-width:100%;height:auto;display:block}
a{color:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}

.fl-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip-path:inset(50%);white-space:nowrap;border:0}

/* ---------- Schriftwahl ---------- */

[data-font="space-grotesk"]{--font:"Space Grotesk",system-ui,sans-serif;--gewicht:700;--sperrung:-.028em}
[data-font="jakarta"]{--font:"Plus Jakarta Sans",system-ui,sans-serif;--gewicht:700;--sperrung:-.022em}
[data-font="source-serif"]{--font:"Source Serif 4",Georgia,serif;--gewicht:600;--sperrung:-.008em;--zeile:1.62}
[data-font="fraunces"]{--font:Fraunces,Georgia,serif;--gewicht:700;--sperrung:-.015em;--zeile:1.58}
[data-font="archivo"]{--font:Archivo,system-ui,sans-serif;--gewicht:800;--sperrung:-.03em}
[data-font="jetbrains"]{--font:"JetBrains Mono",ui-monospace,monospace;--gewicht:700;--sperrung:-.02em;--zeile:1.5}

/* ---------- Formwahl ---------- */

[data-shape="sharp"]{--radius:2px}
[data-shape="rounded"]{--radius:14px}
[data-shape="pill"]{--radius:999px}

/* ---------- Aufbau ---------- */

.fl-wrap{width:100%;max-width:480px;margin:0 auto;padding:48px 20px 32px;
  display:flex;flex-direction:column;min-height:100dvh}
.fl-wrap-seite{max-width:640px}

.fl-head{text-align:center;margin-bottom:26px}

.fl-bild{margin:0 auto 18px;object-fit:cover}
.fl-bild-rund{width:112px;height:112px;border-radius:50%;
  border:3px solid var(--flaeche);box-shadow:var(--btn-schatten-hover)}
.fl-bild-frei{max-height:110px;width:auto;max-width:82%;object-fit:contain}

.fl-name{font-family:var(--font-titel);font-weight:var(--gewicht);letter-spacing:var(--sperrung);
  font-size:1.6rem;line-height:1.2;margin:0 0 4px}
.fl-kennung{margin:0 0 10px;color:var(--text-dim);font-size:.94rem}
.fl-bio{margin:0 auto;color:var(--text-dim);font-size:.97rem;max-width:34ch}

.fl-symbole{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0 0 26px}
.fl-symbol{width:46px;height:46px;display:grid;place-items:center;border:1px solid var(--btn-linie);
  border-radius:50%;background:var(--btn-bg);color:var(--btn-text);text-decoration:none;
  transition:transform .14s ease,border-color .14s ease}
.fl-symbol:hover{transform:translateY(-2px);border-color:var(--accent)}

.fl-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--luecke)}
.fl-link{display:flex;align-items:center;gap:14px;min-height:58px;padding:14px var(--pad);
  background:var(--btn-bg);color:var(--btn-text);border:1px solid var(--btn-linie);
  border-radius:var(--radius);box-shadow:var(--btn-schatten);text-decoration:none;
  transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}
.fl-link:hover{transform:translateY(-2px);box-shadow:var(--btn-schatten-hover);border-color:var(--accent)}
.fl-link:active{transform:translateY(0)}
.fl-link-ic{flex:0 0 auto;display:grid;place-items:center;color:var(--accent)}
.fl-link-txt{display:flex;flex-direction:column;min-width:0}
.fl-link-titel{font-weight:600;letter-spacing:-.008em}
.fl-link-sub{font-size:.84rem;color:var(--text-dim);margin-top:2px}

.fl-item.is-hl .fl-link{background:var(--accent);border-color:var(--accent);color:#fff}
.fl-item.is-hl .fl-link-ic,.fl-item.is-hl .fl-link-sub{color:rgba(255,255,255,.82)}

.fl-leer{color:var(--text-dim);text-align:center;font-size:.95rem}

/* ---------- Inhaltsseiten ---------- */

.fl-seite{flex:1}
.fl-seite-titel{font-family:var(--font-titel);font-weight:var(--gewicht);
  letter-spacing:var(--sperrung);font-size:1.6rem;margin:0 0 22px}
.fl-prosa{font-size:.98rem}
.fl-prosa h2{font-size:1.18rem;margin:28px 0 8px;letter-spacing:-.012em}
.fl-prosa h3{font-size:1.04rem;margin:22px 0 6px}
.fl-prosa h4{font-size:.98rem;margin:18px 0 6px}
.fl-prosa p{margin:0 0 12px}
.fl-prosa ul,.fl-prosa ol{margin:0 0 14px;padding-left:20px}
.fl-prosa li{margin-bottom:5px}
.fl-prosa hr{border:0;border-top:1px solid var(--linie);margin:24px 0}
.fl-prosa blockquote{margin:0 0 14px;padding:2px 0 2px 16px;border-left:3px solid var(--accent);
  color:var(--text-dim)}
.fl-prosa code{font-family:"JetBrains Mono",ui-monospace,monospace;font-size:.86em;
  background:var(--linie);padding:1px 5px;border-radius:4px}
.fl-prosa table{width:100%;border-collapse:collapse;margin:0 0 16px;font-size:.92rem;display:block;
  overflow-x:auto}
.fl-prosa td,.fl-prosa th{padding:8px 10px;border-bottom:1px solid var(--linie);text-align:left}
.fl-prosa img{border-radius:calc(var(--radius) / 2);margin:6px 0 14px}
.fl-prosa a{color:var(--accent);text-decoration:none;transition:opacity .14s ease}
.fl-prosa a:hover{opacity:.72}
.fl-zurueck{margin-top:30px;font-size:.92rem}
.fl-zurueck a{text-decoration:none;color:var(--accent)}
.fl-zurueck a:hover{opacity:.72}
.fl-banner a{color:var(--accent);text-decoration:none}
.fl-banner a:hover{opacity:.72}

/* ---------- Fusszeile ---------- */

.fl-foot{margin-top:auto;padding-top:30px;text-align:center;font-size:.83rem;
  color:var(--text-dim);position:relative}
/* Eine durchgehende Haarlinie über der ganzen Fusszeile — statt mehrerer
   kurzer Striche unter den einzelnen Elementen. */
.fl-foot::before{content:"";display:block;height:1px;background:var(--linie);
  margin:0 0 26px}
.fl-foot-logo{max-height:38px;width:auto;margin:0 auto 12px;opacity:.9}
.fl-foot-text{margin:0 0 12px;white-space:pre-line}
.fl-foot-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 18px;margin-bottom:16px}
.fl-foot-nav a{text-decoration:none;padding:4px 0;transition:color .14s ease}
.fl-foot-nav a:hover{color:var(--accent)}

.fl-credit{display:flex;align-items:center;justify-content:space-between;gap:12px;
  font-size:.76rem;opacity:.8}
.fl-credit-l{display:inline-flex;align-items:center;gap:6px}
/* Beide Fassungen liegen in der Seite; welche sichtbar ist, entscheidet das
   Theme — so wirkt auch die erzwungene Hell-/Dunkel-Einstellung. */
.fl-credit-logo{flex:0 0 auto;display:inline-flex;align-items:center}
.fl-credit-logo img{height:15px;width:auto;opacity:.8}
.fl-credit-logo .fl-logo-hell{display:block}
.fl-credit-logo .fl-logo-dunkel{display:none}
@media (prefers-color-scheme:dark){
  [data-mode="auto"] .fl-credit-logo .fl-logo-hell{display:none}
  [data-mode="auto"] .fl-credit-logo .fl-logo-dunkel{display:block}
}
[data-mode="dark"] .fl-credit-logo .fl-logo-hell{display:none}
[data-mode="dark"] .fl-credit-logo .fl-logo-dunkel{display:block}
[data-mode="light"] .fl-credit-logo .fl-logo-hell{display:block}
[data-mode="light"] .fl-credit-logo .fl-logo-dunkel{display:none}
.fl-credit a{text-decoration:none;transition:color .14s ease}
.fl-credit a:hover{color:var(--accent)}
.fl-credit-r{min-width:3em;text-align:right}
@media (max-width:520px){
  .fl-credit{flex-direction:column;gap:4px;text-align:center}
  .fl-credit-r{text-align:center}
}

/* ---------- Nach oben ---------- */

.fl-totop{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));
  width:48px;height:48px;border-radius:50%;border:1px solid var(--btn-linie);
  background:var(--btn-bg);color:var(--accent);display:grid;place-items:center;cursor:pointer;
  box-shadow:var(--btn-schatten-hover);opacity:0;transform:translateY(8px);
  transition:opacity .2s ease,transform .2s ease;z-index:40}
.fl-totop.is-da{opacity:1;transform:none}
.fl-totop[hidden]{display:none}

/* ---------- Hinweisbanner ---------- */

.fl-banner{position:fixed;left:16px;right:16px;z-index:50;background:var(--flaeche);
  color:var(--text);border:1px solid var(--linie);border-radius:var(--radius);
  padding:16px 18px;box-shadow:0 10px 40px rgba(0,0,0,.18);font-size:.86rem;
  max-width:560px;margin:0 auto}
.fl-banner-unten{bottom:calc(16px + env(safe-area-inset-bottom,0px))}
.fl-banner-mitte{top:50%;transform:translateY(-50%)}
.fl-banner p{margin:0 0 12px}
.fl-banner a{color:var(--accent)}
.fl-banner-ok{min-height:44px;padding:10px 20px;border:0;border-radius:calc(var(--radius) / 1.4);
  background:var(--accent);color:#fff;font:inherit;font-weight:600;cursor:pointer;width:100%}
@media (min-width:520px){.fl-banner-ok{width:auto}}

/* ---------- Wartungsseite ---------- */

.fl-wartung{text-align:center;justify-content:center}
.fl-wartung-grafik{margin:0 auto 26px;width:150px;color:var(--accent)}
.fl-svg{width:100%;height:auto}
.fl-countdown{display:flex;justify-content:center;gap:14px;margin:26px 0 0}
.fl-countdown span{background:var(--btn-bg);border:1px solid var(--btn-linie);
  border-radius:var(--radius);padding:12px 16px;min-width:72px}
.fl-countdown b{display:block;font-size:1.5rem;line-height:1.1;font-variant-numeric:tabular-nums}
.fl-countdown small{color:var(--text-dim);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em}

.fl-wartungsbalken{background:#7a5310;color:#fff;text-align:center;padding:10px 16px;font-size:.86rem}
.fl-wartungsbalken a{color:#fff}

@keyframes fl-dreh{to{transform:rotate(360deg)}}
@keyframes fl-gegen{to{transform:rotate(-360deg)}}
@keyframes fl-dampf{0%{opacity:0;transform:translateY(4px)}
  35%{opacity:.9}100%{opacity:0;transform:translateY(-6px)}}
@keyframes fl-sand{0%,100%{stroke-dashoffset:0}50%{stroke-dashoffset:16}}

.fl-svg-zahnrad .r1{transform-origin:46px 50px;animation:fl-dreh 9s linear infinite}
.fl-svg-zahnrad .r2{transform-origin:84px 78px;animation:fl-gegen 6s linear infinite}
.fl-svg-kaffee .dampf{animation:fl-dampf 3s ease-in-out infinite}
.fl-svg-kaffee .d2{animation-delay:.6s}
.fl-svg-kaffee .d3{animation-delay:1.2s}
.fl-svg-sanduhr .dreh{transform-origin:60px 60px;animation:fl-dreh 12s ease-in-out infinite}
.fl-svg-sanduhr .sand{animation:fl-sand 2.4s linear infinite}

@media (prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important}
  html{scroll-behavior:auto}
}

/* =====================================================================
   THEMES
   ===================================================================== */

/* 1 Clean */
[data-theme="clean"]{--bg:#fbfbfc;--text:#16181d;--text-dim:#5d6470;--flaeche:#fff;
  --linie:#e4e7ed;--btn-bg:#fff;--btn-text:#16181d;--btn-linie:#e0e4eb}
[data-theme="clean"] .fl-wrap{padding-top:56px}
@media (prefers-color-scheme:dark){
  [data-theme="clean"][data-mode="auto"]{--bg:#14161a;--text:#eef0f4;--text-dim:#9aa2b0;
    --flaeche:#1b1e24;--linie:#282d36;--btn-bg:#1b1e24;--btn-text:#eef0f4;--btn-linie:#2b313b;
    --btn-schatten:none;--btn-schatten-hover:0 8px 22px rgba(0,0,0,.45)}
}
[data-theme="clean"][data-mode="dark"]{--bg:#14161a;--text:#eef0f4;--text-dim:#9aa2b0;
  --flaeche:#1b1e24;--linie:#282d36;--btn-bg:#1b1e24;--btn-text:#eef0f4;--btn-linie:#2b313b;
  --btn-schatten:none;--btn-schatten-hover:0 8px 22px rgba(0,0,0,.45)}

/* 2 Dark Classic — nur dunkel */
[data-theme="dark"]{--bg:#0e1013;--text:#e9ecf1;--text-dim:#8a929f;--flaeche:#171a1f;
  --linie:#242932;--btn-bg:#171a1f;--btn-text:#e9ecf1;--btn-linie:#262c36;
  --btn-schatten:none;--btn-schatten-hover:0 10px 26px rgba(0,0,0,.5)}
[data-theme="dark"] .fl-bild-rund{border-color:#262c36}

/* 3 Card — helle Karte, weicher Schatten */
[data-theme="card"]{--bg:#eceef2;--text:#191c22;--text-dim:#616875;--flaeche:#fff;
  --linie:#e2e5ea;--btn-bg:#f6f7f9;--btn-text:#191c22;--btn-linie:#e4e7ec;--btn-schatten:none}
[data-theme="card"] .fl-wrap{background:var(--flaeche);border-radius:22px;
  margin:20px auto;min-height:0;padding:36px 22px 24px;
  width:calc(100% - 28px);
  box-shadow:0 18px 48px rgba(20,24,34,.12),0 2px 6px rgba(20,24,34,.06)}
@media (min-width:520px){
  [data-theme="card"] .fl-wrap{margin:32px auto;padding:40px 26px 26px;width:100%}
}
@media (prefers-color-scheme:dark){
  [data-theme="card"][data-mode="auto"]{--bg:#0d0f13;--text:#eceff4;--text-dim:#949cab;
    --flaeche:#171a20;--linie:#242933;--btn-bg:#1e222a;--btn-text:#eceff4;--btn-linie:#2a3039}
  [data-theme="card"][data-mode="auto"] .fl-wrap{box-shadow:0 18px 48px rgba(0,0,0,.55)}
}
[data-theme="card"][data-mode="dark"]{--bg:#0d0f13;--text:#eceff4;--text-dim:#949cab;
  --flaeche:#171a20;--linie:#242933;--btn-bg:#1e222a;--btn-text:#eceff4;--btn-linie:#2a3039}
[data-theme="card"][data-mode="dark"] .fl-wrap{box-shadow:0 18px 48px rgba(0,0,0,.55)}

/* 3b Card Rahmen — flache Karte mit Akzentleiste oben, ohne Schatten */
[data-theme="card-rahmen"]{--bg:#f3f4f6;--text:#17191f;--text-dim:#5e6673;--flaeche:#fff;
  --linie:#e3e6eb;--btn-bg:#fff;--btn-text:#17191f;--btn-linie:#dfe3e9;
  --btn-schatten:none;--btn-schatten-hover:none}
[data-theme="card-rahmen"] .fl-wrap{background:var(--flaeche);border:1px solid var(--linie);
  border-top:5px solid var(--accent);border-radius:4px;
  margin:18px auto;min-height:0;padding:34px 20px 22px;width:calc(100% - 24px)}
[data-theme="card-rahmen"] .fl-link:hover{transform:none;border-color:var(--accent);
  background:color-mix(in srgb,var(--accent) 6%,var(--btn-bg))}
@media (min-width:520px){
  [data-theme="card-rahmen"] .fl-wrap{margin:36px auto;padding:40px 28px 26px;width:100%}
}
@media (prefers-color-scheme:dark){
  [data-theme="card-rahmen"][data-mode="auto"]{--bg:#0e1014;--text:#eceff4;--text-dim:#939ba9;
    --flaeche:#15181d;--linie:#232830;--btn-bg:#1a1e24;--btn-text:#eceff4;--btn-linie:#272d36}
}
[data-theme="card-rahmen"][data-mode="dark"]{--bg:#0e1014;--text:#eceff4;--text-dim:#939ba9;
  --flaeche:#15181d;--linie:#232830;--btn-bg:#1a1e24;--btn-text:#eceff4;--btn-linie:#272d36}

/* 3c Card Weich — getönter Grund, runde Karte, schwebende Schaltflächen */
[data-theme="card-weich"]{--bg:#efeae4;--text:#201d1a;--text-dim:#6b645c;--flaeche:#fffdfb;
  --linie:#e8e2da;--btn-bg:#fffdfb;--btn-text:#201d1a;--btn-linie:#ece6de;
  --btn-schatten:0 2px 6px rgba(60,45,30,.07);
  --btn-schatten-hover:0 10px 24px rgba(60,45,30,.14)}
[data-theme="card-weich"] .fl-wrap{background:var(--flaeche);border-radius:30px;
  margin:16px auto;min-height:0;padding:36px 20px 24px;width:calc(100% - 24px);
  box-shadow:0 10px 36px rgba(60,45,30,.10)}
[data-theme="card-weich"] .fl-bild-rund{border-width:4px}
@media (min-width:520px){
  [data-theme="card-weich"] .fl-wrap{margin:34px auto;padding:44px 30px 28px;width:100%}
}
@media (prefers-color-scheme:dark){
  [data-theme="card-weich"][data-mode="auto"]{--bg:#141210;--text:#f3efe9;--text-dim:#a39a8f;
    --flaeche:#1c1916;--linie:#2a2621;--btn-bg:#222019;--btn-text:#f3efe9;--btn-linie:#302b24;
    --btn-schatten:none;--btn-schatten-hover:0 10px 26px rgba(0,0,0,.5)}
  [data-theme="card-weich"][data-mode="auto"] .fl-wrap{box-shadow:0 14px 40px rgba(0,0,0,.5)}
}
[data-theme="card-weich"][data-mode="dark"]{--bg:#141210;--text:#f3efe9;--text-dim:#a39a8f;
  --flaeche:#1c1916;--linie:#2a2621;--btn-bg:#222019;--btn-text:#f3efe9;--btn-linie:#302b24;
  --btn-schatten:none;--btn-schatten-hover:0 10px 26px rgba(0,0,0,.5)}
[data-theme="card-weich"][data-mode="dark"] .fl-wrap{box-shadow:0 14px 40px rgba(0,0,0,.5)}

/* 4 Aurora */
[data-theme="aurora"]{--bg:#f4f2ff;--text:#1a1832;--text-dim:#5d5980;--flaeche:rgba(255,255,255,.75);
  --linie:rgba(124,92,255,.18);--btn-bg:rgba(255,255,255,.7);--btn-text:#1a1832;
  --btn-linie:rgba(124,92,255,.22);--btn-schatten:0 2px 10px rgba(80,60,160,.08);
  --btn-schatten-hover:0 12px 30px rgba(80,60,160,.18)}
[data-theme="aurora"] body{background-color:var(--bg);background-attachment:fixed;
  background-repeat:no-repeat;background-size:cover;background-image:
    radial-gradient(60% 45% at 12% 8%,color-mix(in srgb,var(--accent) 34%,transparent) 0%,transparent 70%),
    radial-gradient(55% 40% at 92% 18%,rgba(34,184,207,.32) 0%,transparent 72%),
    radial-gradient(70% 50% at 50% 104%,rgba(255,138,179,.30) 0%,transparent 70%)}
@media (max-width:640px){
  [data-theme="aurora"] body{background-attachment:scroll;background-image:
    radial-gradient(105% 42% at 28% 2%,color-mix(in srgb,var(--accent) 52%,transparent) 0%,transparent 68%),
    radial-gradient(100% 38% at 82% 30%,rgba(34,184,207,.46) 0%,transparent 70%),
    radial-gradient(120% 45% at 50% 100%,rgba(255,138,179,.46) 0%,transparent 68%)}
}
[data-theme="aurora"] .fl-link{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
@media (prefers-color-scheme:dark){
  [data-theme="aurora"][data-mode="auto"]{--bg:#100d22;--text:#f0edff;--text-dim:#a9a2cc;
    --btn-bg:rgba(255,255,255,.07);--btn-text:#f0edff;--btn-linie:rgba(255,255,255,.14);
    --linie:rgba(255,255,255,.12);--btn-schatten:none;--btn-schatten-hover:0 14px 34px rgba(0,0,0,.5)}
}
[data-theme="aurora"][data-mode="dark"]{--bg:#100d22;--text:#f0edff;--text-dim:#a9a2cc;
  --btn-bg:rgba(255,255,255,.07);--btn-text:#f0edff;--btn-linie:rgba(255,255,255,.14);
  --linie:rgba(255,255,255,.12);--btn-schatten:none;--btn-schatten-hover:0 14px 34px rgba(0,0,0,.5)}

/* 5 Glass */
[data-theme="glass"]{--bg:#dfe7ee;--text:#11181f;--text-dim:#4d5a66;--flaeche:rgba(255,255,255,.55);
  --linie:rgba(255,255,255,.5);--btn-bg:rgba(255,255,255,.42);--btn-text:#11181f;
  --btn-linie:rgba(255,255,255,.62);--btn-schatten:0 2px 8px rgba(20,35,50,.08);
  --btn-schatten-hover:0 14px 34px rgba(20,35,50,.16)}
[data-theme="glass"] body{background-attachment:fixed;background-repeat:no-repeat;
  background-size:cover;background-image:
  radial-gradient(48% 38% at 18% 12%,color-mix(in srgb,var(--accent) 50%,transparent),transparent 70%),
  radial-gradient(52% 42% at 82% 78%,rgba(255,196,120,.55),transparent 72%),
  linear-gradient(160deg,#e7eef5 0%,#cfdbe6 100%)}
@media (max-width:640px){
  [data-theme="glass"] body{background-attachment:scroll;background-image:
    radial-gradient(95% 34% at 22% 6%,color-mix(in srgb,var(--accent) 62%,transparent),transparent 66%),
    radial-gradient(100% 36% at 78% 72%,rgba(255,196,120,.68),transparent 68%),
    linear-gradient(160deg,#e7eef5 0%,#cfdbe6 100%)}
}
[data-theme="glass"] .fl-link,[data-theme="glass"] .fl-symbol{
  backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%)}
[data-theme="glass"] .fl-bild-rund{border-color:rgba(255,255,255,.6)}
@media (prefers-color-scheme:dark){
  [data-theme="glass"][data-mode="auto"]{--text:#eaf1f7;--text-dim:#a2b0bd;
    --btn-bg:rgba(255,255,255,.09);--btn-text:#eaf1f7;--btn-linie:rgba(255,255,255,.17);
    --linie:rgba(255,255,255,.15)}
  [data-theme="glass"][data-mode="auto"] body{background-image:
    radial-gradient(48% 38% at 18% 12%,color-mix(in srgb,var(--accent) 38%,transparent),transparent 70%),
    radial-gradient(52% 42% at 82% 78%,rgba(120,80,200,.42),transparent 72%),
    linear-gradient(160deg,#10171d 0%,#0a0e12 100%)}
}
[data-theme="glass"][data-mode="dark"]{--text:#eaf1f7;--text-dim:#a2b0bd;
  --btn-bg:rgba(255,255,255,.09);--btn-text:#eaf1f7;--btn-linie:rgba(255,255,255,.17);
  --linie:rgba(255,255,255,.15)}
[data-theme="glass"][data-mode="dark"] body{background-image:
  radial-gradient(48% 38% at 18% 12%,color-mix(in srgb,var(--accent) 38%,transparent),transparent 70%),
  radial-gradient(52% 42% at 82% 78%,rgba(120,80,200,.42),transparent 72%),
  linear-gradient(160deg,#10171d 0%,#0a0e12 100%)}
@media (max-width:640px){
  [data-theme="glass"][data-mode="dark"] body,
  [data-theme="glass"][data-mode="auto"] body{background-image:
    radial-gradient(95% 34% at 22% 6%,color-mix(in srgb,var(--accent) 55%,transparent),transparent 66%),
    radial-gradient(100% 36% at 78% 72%,rgba(120,80,200,.6),transparent 68%),
    linear-gradient(160deg,#10171d 0%,#0a0e12 100%)}
}

/* 6 Bento */
[data-theme="bento"]{--bg:#f5f4f1;--text:#1c1a17;--text-dim:#6a655d;--flaeche:#fff;
  --linie:#e6e3dd;--btn-bg:#fff;--btn-text:#1c1a17;--btn-linie:#e8e5df;
  --btn-schatten:none;--luecke:10px}
[data-theme="bento"] .fl-wrap{max-width:520px}
[data-theme="bento"] .fl-links{display:grid;grid-template-columns:1fr 1fr;gap:var(--luecke)}
[data-theme="bento"] .fl-item{display:block}
[data-theme="bento"] .fl-item.is-erst,[data-theme="bento"] .fl-item.is-hl{grid-column:1/-1}
[data-theme="bento"] .fl-link{height:100%;flex-direction:column;align-items:flex-start;
  justify-content:space-between;gap:18px;min-height:104px;padding:16px}
[data-theme="bento"] .fl-item.is-erst .fl-link,[data-theme="bento"] .fl-item.is-hl .fl-link{
  flex-direction:row;align-items:center;justify-content:flex-start;gap:14px;min-height:72px}
[data-theme="bento"] .fl-link-titel{font-size:.98rem}
@media (prefers-color-scheme:dark){
  [data-theme="bento"][data-mode="auto"]{--bg:#121211;--text:#f2f0ed;--text-dim:#9d9890;
    --flaeche:#1a1a19;--linie:#262523;--btn-bg:#1b1b1a;--btn-text:#f2f0ed;--btn-linie:#292826}
}
[data-theme="bento"][data-mode="dark"]{--bg:#121211;--text:#f2f0ed;--text-dim:#9d9890;
  --flaeche:#1a1a19;--linie:#262523;--btn-bg:#1b1b1a;--btn-text:#f2f0ed;--btn-linie:#292826}

/* 7 Brutal */
[data-theme="brutal"]{--bg:#f7f3e8;--text:#000;--text-dim:#2f2b22;--flaeche:#fff;--linie:#000;
  --btn-bg:#fff;--btn-text:#000;--btn-linie:#000;--btn-schatten:5px 5px 0 #000;
  --btn-schatten-hover:2px 2px 0 #000;--luecke:14px;--gewicht:800;--sperrung:-.035em}
[data-theme="brutal"] .fl-link{border-width:2.5px}
[data-theme="brutal"] .fl-link:hover{transform:translate(3px,3px);border-color:#000}
[data-theme="brutal"] .fl-symbol{border-width:2.5px;box-shadow:3px 3px 0 #000}
[data-theme="brutal"] .fl-symbol:hover{transform:translate(2px,2px);box-shadow:1px 1px 0 #000;border-color:#000}
[data-theme="brutal"] .fl-bild-rund{border:3px solid #000;border-radius:var(--radius);box-shadow:6px 6px 0 #000}
[data-theme="brutal"] .fl-name{font-size:1.85rem}
[data-theme="brutal"] .fl-link-ic{color:#000}
[data-theme="brutal"] .fl-item.is-hl .fl-link{background:var(--accent);color:#000}
[data-theme="brutal"] .fl-item.is-hl .fl-link-ic,[data-theme="brutal"] .fl-item.is-hl .fl-link-sub{color:rgba(0,0,0,.7)}
@media (prefers-color-scheme:dark){
  [data-theme="brutal"][data-mode="auto"]{--bg:#1b1b1b;--text:#fdfcf7;--text-dim:#cfccc2;
    --flaeche:#111;--linie:#fdfcf7;--btn-bg:#111;--btn-text:#fdfcf7;--btn-linie:#fdfcf7;
    --btn-schatten:5px 5px 0 #fdfcf7;--btn-schatten-hover:2px 2px 0 #fdfcf7}
  [data-theme="brutal"][data-mode="auto"] .fl-link-ic{color:#fdfcf7}
  [data-theme="brutal"][data-mode="auto"] .fl-bild-rund{border-color:#fdfcf7;box-shadow:6px 6px 0 #fdfcf7}
  [data-theme="brutal"][data-mode="auto"] .fl-symbol{box-shadow:3px 3px 0 #fdfcf7}
}
[data-theme="brutal"][data-mode="dark"]{--bg:#1b1b1b;--text:#fdfcf7;--text-dim:#cfccc2;
  --flaeche:#111;--linie:#fdfcf7;--btn-bg:#111;--btn-text:#fdfcf7;--btn-linie:#fdfcf7;
  --btn-schatten:5px 5px 0 #fdfcf7;--btn-schatten-hover:2px 2px 0 #fdfcf7}
[data-theme="brutal"][data-mode="dark"] .fl-link-ic{color:#fdfcf7}
[data-theme="brutal"][data-mode="dark"] .fl-bild-rund{border-color:#fdfcf7;box-shadow:6px 6px 0 #fdfcf7}

/* 8 Editorial */
[data-theme="editorial"]{--bg:#fdfdfc;--text:#14140f;--text-dim:#5f5f56;--flaeche:#fdfdfc;
  --linie:#d8d8d0;--btn-bg:transparent;--btn-text:#14140f;--btn-linie:transparent;
  --btn-schatten:none;--btn-schatten-hover:none;--luecke:0px;
  --font-titel:Fraunces,Georgia,serif;--gewicht:600;--sperrung:-.012em}
[data-theme="editorial"] .fl-wrap{max-width:600px;padding-top:64px}
[data-theme="editorial"] .fl-head{text-align:left}
[data-theme="editorial"] .fl-bild{margin:0 0 22px}
[data-theme="editorial"] .fl-bild-rund{width:84px;height:84px;border:0;box-shadow:none}
[data-theme="editorial"] .fl-name{font-size:2.3rem;line-height:1.08}
[data-theme="editorial"] .fl-bio{margin-inline:0;max-width:46ch}
[data-theme="editorial"] .fl-symbole{justify-content:flex-start;margin-bottom:34px}
[data-theme="editorial"] .fl-symbol{border-radius:0;border:0;width:38px;height:38px}
[data-theme="editorial"] .fl-links{border-top:1px solid var(--linie)}
[data-theme="editorial"] .fl-link{border:0;border-bottom:1px solid var(--linie);border-radius:0;
  padding:20px 2px;min-height:64px}
[data-theme="editorial"] .fl-link:hover{transform:none;
  background:color-mix(in srgb,var(--accent) 7%,transparent)}
[data-theme="editorial"] .fl-link-titel{font-weight:500;font-size:1.12rem;font-family:var(--font-titel)}
[data-theme="editorial"] .fl-item.is-hl .fl-link{background:transparent;color:var(--accent);
  border-bottom-color:var(--accent)}
[data-theme="editorial"] .fl-item.is-hl .fl-link-sub{color:var(--text-dim)}
[data-theme="editorial"] .fl-foot,[data-theme="editorial"] .fl-foot-nav{text-align:left;justify-content:flex-start}
[data-theme="editorial"] .fl-credit{justify-content:flex-start;gap:16px}
@media (prefers-color-scheme:dark){
  [data-theme="editorial"][data-mode="auto"]{--bg:#111110;--text:#f1f1ea;--text-dim:#9b9b90;
    --linie:#2b2b27;--btn-text:#f1f1ea}
}
[data-theme="editorial"][data-mode="dark"]{--bg:#111110;--text:#f1f1ea;--text-dim:#9b9b90;
  --linie:#2b2b27;--btn-text:#f1f1ea}

/* 9 Neon — nur dunkel */
[data-theme="neon"]{--bg:#07090c;--text:#e6fff4;--text-dim:#7e9a92;--flaeche:#0c1014;
  --linie:#16211f;--btn-bg:rgba(255,255,255,.035);--btn-text:#e6fff4;
  --btn-linie:color-mix(in srgb,var(--accent) 45%,transparent);
  --btn-schatten:0 0 0 1px rgba(255,255,255,.02);
  --btn-schatten-hover:0 0 26px color-mix(in srgb,var(--accent) 35%,transparent)}
[data-theme="neon"] body{background-attachment:fixed;background-repeat:no-repeat;
  background-size:cover;
  background-image:radial-gradient(70% 45% at 50% -8%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 72%)}
@media (max-width:640px){
  [data-theme="neon"] body{background-attachment:scroll;
    background-image:radial-gradient(130% 34% at 50% 0%,color-mix(in srgb,var(--accent) 30%,transparent),transparent 70%)}
}
[data-theme="neon"] .fl-name{text-shadow:0 0 22px color-mix(in srgb,var(--accent) 45%,transparent)}
[data-theme="neon"] .fl-bild-rund{border-color:color-mix(in srgb,var(--accent) 55%,transparent);
  box-shadow:0 0 30px color-mix(in srgb,var(--accent) 35%,transparent)}
[data-theme="neon"] .fl-link:hover{border-color:var(--accent)}
[data-theme="neon"] .fl-symbol{border-color:color-mix(in srgb,var(--accent) 40%,transparent);background:var(--btn-bg)}
[data-theme="neon"] .fl-item.is-hl .fl-link{background:color-mix(in srgb,var(--accent) 16%,transparent);
  color:var(--text);border-color:var(--accent);
  box-shadow:0 0 30px color-mix(in srgb,var(--accent) 30%,transparent)}
[data-theme="neon"] .fl-item.is-hl .fl-link-ic{color:var(--accent)}

/* =====================================================================
   Feinschliff für schmale Schirme
   ===================================================================== */

@media (max-width:560px){
  .fl-wrap{padding:32px 16px 24px}
  .fl-wrap-seite{padding:28px 16px 24px}
  .fl-name{font-size:1.45rem}
  .fl-seite-titel{font-size:1.38rem}
  .fl-bild-rund{width:96px;height:96px}
  .fl-bild-frei{max-height:92px}
  .fl-link{padding:13px 16px;min-height:56px;gap:12px}
  .fl-symbol{width:44px;height:44px}
  .fl-countdown{gap:8px}
  .fl-countdown span{padding:10px 12px;min-width:62px}
  .fl-banner{left:10px;right:10px;padding:14px 15px}
  .fl-totop{right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px))}

  [data-theme="editorial"] .fl-name{font-size:1.9rem}
  [data-theme="bento"] .fl-link{min-height:92px;padding:14px}
  [data-theme="brutal"] .fl-name{font-size:1.6rem}
}

@media (max-width:360px){
  [data-theme="bento"] .fl-links{grid-template-columns:1fr}
  [data-theme="bento"] .fl-link{flex-direction:row;align-items:center;min-height:58px;gap:12px}
}
