/* Öffentliche Seiten: Wiki, Impressum, Datenschutz, 404 */
body.pub { display: block; background: radial-gradient(ellipse at 15% 0%, #0f1a26 0%, #070a10 60%) fixed; color: var(--text); min-height: 100vh; font-family: Inter, system-ui, "Segoe UI", Roboto, sans-serif; line-height: 1.65; }
.skip { position: absolute; left: -999px; top: 0; background: var(--accent); color: #04140c; padding: 8px 14px; z-index: 99; }
.skip:focus { left: 8px; top: 8px; }
.pub-in { max-width: 1040px; margin: 0 auto; padding: 0 20px; display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.pub-head { border-bottom: 1px solid var(--border); background: #0a0f17cc; position: sticky; top: 0; z-index: 10; backdrop-filter: blur(8px); }
.pub-head .pub-in { padding-top: 12px; padding-bottom: 12px; }
.pub-logo { font-weight: 800; letter-spacing: .04em; color: var(--text); text-decoration: none; font-size: 1.15rem; }
.pub-logo span { color: var(--accent); } .pub-logo small { color: var(--text-dim); font-weight: 500; font-size: .7em; }
.pub-head nav { display: flex; gap: 16px; align-items: center; flex-wrap: wrap; }
.pub-head nav a, .pub-foot nav a { color: var(--text-dim); text-decoration: none; font-size: .92rem; }
.pub-head nav a:hover, .pub-foot nav a:hover, .pub-head nav a[aria-current] { color: var(--accent); }
.pub-head .pub-cta { background: var(--accent); color: #04140c; font-weight: 700; padding: 7px 14px; border-radius: 8px; }
.pub-head .pub-cta:hover { color: #04140c; filter: brightness(1.1); }
.pub-main { max-width: 860px; margin: 0 auto; padding: 28px 20px 56px; }
.pub-main h1 { font-size: 2rem; line-height: 1.2; margin: 6px 0 14px; font-weight: 800; }
.pub-main h2 { font-size: 1.3rem; margin: 26px 0 8px; color: var(--accent); }
.pub-main h3 { font-size: 1.05rem; margin: 18px 0 6px; }
.pub-main p, .pub-main li { color: #c5d0de; } .pub-main ul { padding-left: 1.3rem; } .pub-main li { margin: 5px 0; }
.pub-main a { color: var(--accent2); } .pub-main a:hover { color: var(--accent); }
.pub-main code { background: #0b1220; border: 1px solid #1e2a3a; padding: 1px 6px; border-radius: 4px; color: var(--accent2); font-size: .88em; }
.crumbs { font-size: .82rem; color: var(--text-dim); } .crumbs a { color: var(--text-dim); text-decoration: none; } .crumbs a:hover { color: var(--accent); }
.lead { font-size: 1.05rem; color: var(--text-dim); max-width: 720px; }
.pub-ingame { border: 1px dashed #2a6b55; padding: 0 6px; border-radius: 5px; text-decoration: none; }
.cats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 18px; }
.cat { background: var(--bg2); border: 1px solid var(--border); border-radius: 10px; padding: 14px 16px; }
.cat h2 { margin: 0 0 8px; font-size: 1rem; color: var(--accent2); }
.cat ul { list-style: none; padding: 0; margin: 0; } .cat li { margin: 4px 0; }
.cat a { text-decoration: none; color: var(--text); } .cat a:hover { color: var(--accent); }
.cta-box { margin: 30px 0 6px; padding: 18px 20px; border: 1px solid #00ff9d44; background: #00ff9d0f; border-radius: 12px; display: flex; justify-content: space-between; align-items: center; gap: 14px; flex-wrap: wrap; }
.cta-box b { font-size: 1.05rem; } .cta-box a.btn { text-decoration: none; padding: 10px 18px; border-radius: 8px; background: var(--accent); color: #04140c !important; font-weight: 700; }
.related { margin-top: 28px; padding-top: 14px; border-top: 1px solid var(--border); } .related ul { columns: 2; }
.pub-foot { border-top: 1px solid var(--border); background: #070a10; padding: 22px 0 70px; color: var(--text-dim); font-size: .85rem; }
.pub-foot .pub-in { align-items: flex-start; } .pub-foot nav { display: flex; gap: 16px; flex-wrap: wrap; }
.legal h2 { color: var(--text); font-size: 1.1rem; } .legal .todo { background: #ffb02018; border: 1px solid #ffb02066; color: #ffd27a; padding: 8px 12px; border-radius: 8px; }
@media (max-width: 700px) { .cats { grid-template-columns: 1fr; } .related ul { columns: 1; } .pub-main h1 { font-size: 1.6rem; } }
