@font-face{font-family:IT;font-weight:500;font-display:swap;src:url(fonts/inter-tight-latin-500-normal.woff2)}
@font-face{font-family:IT;font-weight:700;font-display:swap;src:url(fonts/inter-tight-latin-700-normal.woff2)}
@font-face{font-family:IT;font-weight:800;font-display:swap;src:url(fonts/inter-tight-latin-800-normal.woff2)}
@font-face{font-family:IT;font-weight:800;font-display:swap;src:url(fonts/inter-tight-latin-ext-800-normal.woff2);unicode-range:U+0131}
:root{--nacht:#05070f;--licht:#ffd27a;--text:#f2f4fa;--leise:#a9b3c9;--flaeche:rgba(11,15,28,.9);--linie:rgba(255,255,255,.14)}
*{box-sizing:border-box;margin:0}
html,body{height:100%;background:var(--nacht);color:var(--text);font-family:IT,system-ui,sans-serif;overflow:hidden;-webkit-text-size-adjust:100%}
canvas{position:fixed;inset:0;width:100%;height:100%;touch-action:none;cursor:grab;display:block}
canvas:active{cursor:grabbing}
header{position:fixed;left:max(20px,env(safe-area-inset-left));top:max(16px,env(safe-area-inset-top));pointer-events:none;text-shadow:0 1px 14px rgba(0,0,0,.8)}
.marke{pointer-events:auto;display:inline-block;color:#fff;text-decoration:none;font-weight:800;font-size:26px;letter-spacing:-.03em}
.marke s{text-decoration:none;position:relative}
.marke s:before{content:"";position:absolute;left:50%;top:.03em;width:.21em;height:.21em;margin-left:-.105em;border-radius:50%;background:#fff3d6;box-shadow:0 0 8px 3px rgba(255,200,100,.8)}
.nacht{margin-top:16px;color:var(--licht);font-weight:700;font-size:17px}
.zahl{font-weight:700;font-size:21px;line-height:1.05}
.zahl b{font-size:58px;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.unter{color:var(--leise);font-weight:500;font-size:16px}
#ganz{position:fixed;right:max(16px,env(safe-area-inset-right));top:max(16px,env(safe-area-inset-top));background:var(--flaeche);color:var(--text);border:1px solid var(--linie);border-radius:8px;padding:9px 12px;font:700 15px IT,sans-serif;cursor:pointer}
#unten{position:fixed;left:0;right:0;bottom:0;padding:0 max(16px,env(safe-area-inset-left)) max(10px,env(safe-area-inset-bottom));width:min(100%,520px);pointer-events:none}
#unten>*{pointer-events:auto}
#suche{width:100%;height:50px;border-radius:10px;border:1px solid var(--linie);background:var(--flaeche);color:var(--text);font:500 17px IT,sans-serif;padding:0 15px;outline:none;-webkit-appearance:none;appearance:none}
#suche::placeholder{color:var(--leise)}
#suche:focus-visible{border-color:var(--licht)}
nav{display:flex;gap:16px;flex-wrap:wrap;padding:9px 2px 0;align-items:center}
nav button,nav a{background:none;border:0;padding:4px 0;color:var(--leise);font:500 15px IT,sans-serif;cursor:pointer;text-decoration:none}
nav button{color:var(--text);font-weight:700}
nav :focus-visible,#ganz:focus-visible,.marke:focus-visible,#blatt :focus-visible,#treffer :focus-visible{outline:2px solid var(--licht);outline-offset:2px}
#treffer{list-style:none;padding:0;margin-bottom:8px;background:var(--flaeche);border:1px solid var(--linie);border-radius:10px;max-height:44vh;overflow:auto}
#treffer button{all:unset;box-sizing:border-box;display:flex;justify-content:space-between;gap:12px;width:100%;padding:12px 15px;cursor:pointer;font:500 17px IT,sans-serif}
#treffer li+li{border-top:1px solid var(--linie)}
#treffer small{color:var(--leise);font:500 14px IT,sans-serif;white-space:nowrap}
#treffer small.an{color:var(--licht)}
#blatt{position:relative;margin-bottom:8px;background:var(--flaeche);border:1px solid var(--linie);border-radius:12px;padding:16px 16px 15px;max-height:56vh;overflow:auto;line-height:1.38;font-size:17px}
#blatt h2{font-size:26px;font-weight:800;letter-spacing:-.015em;padding-right:34px;line-height:1.12}
#blatt .kt{color:var(--leise);font-size:15px;margin-top:1px}
#blatt p{margin-top:9px}
#blatt ol{margin:9px 0 0;padding-left:21px}
#blatt li{margin-top:5px}
#blatt .an{color:var(--licht);font-weight:700}
#blatt a.gehen{display:inline-block;margin-top:12px;padding:10px 14px;border-radius:8px;background:var(--licht);color:#17120a;font-weight:700;text-decoration:none}
#blatt .zu{position:absolute;right:8px;top:8px;width:36px;height:36px;border:0;background:none;color:var(--leise);font-size:24px;cursor:pointer;line-height:1}
#blatt ul{list-style:none;padding:0;margin-top:9px}
#blatt ul button{all:unset;cursor:pointer;display:block;padding:6px 0}
.namen{color:var(--leise);font-size:15px}
.ohne{position:fixed;left:20px;top:150px}
.text{overflow:auto;height:auto;min-height:100%}
body.seite{overflow:auto;height:auto}
.seite main{max-width:640px;margin:0 auto;padding:28px 20px 60px;line-height:1.5;font-size:17px}
.seite h1{font-size:34px;font-weight:800;letter-spacing:-.02em;margin:18px 0 8px}
.seite h2{font-size:21px;font-weight:700;margin:26px 0 4px}
.seite p,.seite ul{margin-top:8px}
.seite a{color:var(--licht)}
@media (min-width:700px){.zahl b{font-size:76px}.marke{font-size:30px}header{left:32px;top:24px}#unten{left:16px;bottom:8px;padding:0}}
nav a,nav button,header p{text-shadow:0 1px 7px #000,0 0 2px #000}
