.top .srch input{border:0;background:none;font:inherit;width:100%;outline:none}
.top .ic.txt{font-size:13px;font-weight:600;color:var(--blue)}.regbtn{margin-left:14px}
.lo{margin-left:12px}.lo button{border:1px solid var(--line);background:#fff;border-radius:16px;padding:6px 12px;font:inherit;font-size:12px;cursor:pointer}
.flash{margin:14px 24px 0 31px;padding:11px 16px;border-radius:6px;font-size:13.5px;background:#e8f6ec;border:1px solid #b9e0c4}
.flash.err{background:#fdeaea;border-color:#efb8b8}.flash.warn{background:#fff6dd;border-color:#ecd68a}.flash ul{margin:0;padding-left:18px}
.hero{background:linear-gradient(90deg,rgba(6,70,130,.9),rgba(6,70,130,.35)),url(/img/coll.jpg) center/cover;padding:70px 40px;color:#fff;min-height:290px}
.hero h1{font-size:38px;max-width:560px;margin:0 0 12px}.hero p{max-width:500px;font-size:16px;margin:0 0 22px}.hero-a{display:flex;gap:12px;flex-wrap:wrap}
.btn.ghost{background:#fff;color:var(--blue);border:1px solid var(--blue)}.hero .btn.ghost{border-color:#fff}
button.btn{border:0;font-family:inherit;cursor:pointer}button.btn.ghost{border:1px solid var(--blue)}button.btn.danger{border:1px solid #e3b4b4}
.lock{color:#9a6b00;font-weight:600}
.plan h2,.plan h3{margin:0 0 6px}.plan .big small{font-size:13px;color:var(--mut);font-weight:400}.plan.best{border:2px solid var(--blue)}
.check{list-style:none;padding:0;margin:12px 0 16px}.check li{padding:5px 0 5px 22px;position:relative;font-size:13px}.check li:before{content:"✓";position:absolute;left:0;color:#2fa84f;font-weight:700}
.fr input,.fr textarea,.fr select{border:1px solid var(--line);border-radius:6px;padding:10px 12px;font-size:14px;font-family:inherit;color:var(--ink);width:100%}.fr{margin-bottom:12px}
.fr textarea{resize:vertical}
.chk1{display:flex;gap:10px;align-items:flex-start;font-size:13px;margin:6px 0}
.sbar2 input,.sbar2 select{border:0;background:none;font:inherit;width:100%;outline:none;color:inherit}
.hbf{position:absolute;right:8px;top:8px;margin:0}.hbf .hb{position:static}
.card.feed h3 a{color:inherit}.act{align-items:center}.act form{margin:0}.lk,.cm{border:0;background:none;display:flex;align-items:center;gap:6px;color:var(--mut);font:inherit;font-size:12.5px;cursor:pointer;padding:0}.lk.on{color:#e53935}.lk.on svg{fill:#e53935}
.cmt{margin-bottom:10px}.cmt small{color:var(--mut)}.cmt p{margin:6px 0}
.compose2{margin-bottom:16px}
.tbl{width:100%;border-collapse:collapse;font-size:13px}.tbl th,.tbl td{text-align:left;padding:9px 8px;border-bottom:1px solid var(--line);vertical-align:middle}.tbl .inl{display:flex;gap:6px}
.foot{display:flex;gap:18px;flex-wrap:wrap;padding:22px 31px 30px;font-size:12px;color:var(--mut);border-top:1px solid var(--line);margin-top:20px}
.prose p{line-height:1.6}
.stats{display:grid;grid-template-columns:1fr 1fr 1fr;text-align:center;margin:12px 0 14px}.stats b{display:block;font-size:15px}.stats small{font-size:10.5px;color:var(--mut)}
.edit{background:#eef3f8;border-radius:5px;text-align:center;font-size:11px;font-weight:600;padding:9px;display:block}
.card.pad{padding:18px}.card.pad h1{margin:0 0 12px;font-size:24px}
@media(max-width:1100px){.tnav,.srch{display:none}}

.brand{width:auto;margin-right:8px}.brand img{width:auto;height:46px;max-width:230px;object-fit:contain}
@media(max-width:760px){.side{display:block!important;border-right:0;border-bottom:1px solid var(--line);padding:6px 8px 0}.side nav{display:flex;overflow-x:auto;gap:4px;padding-bottom:6px}.side nav a{flex:none;height:40px;padding:0 12px;white-space:nowrap}.side .art{display:none}.wrap{min-height:0}}
.wrap{min-height:100vh}
.side .brand{display:block;width:auto;padding:4px 8px 14px}.side .brand img{height:auto;width:100%;max-width:210px}
.side{padding-top:18px}
.acct{margin:14px 0 0;padding:12px 4px 0;border-top:1px solid var(--line);display:grid;gap:4px}
.acct a:not(.btn){display:block;height:auto;padding:7px 14px;font-size:12.5px;color:var(--mut);margin:0}.acct a em{background:#e53935;color:#fff;font:700 10px/14px sans-serif;padding:0 5px;border-radius:7px;font-style:normal}
.acct form{margin:0 10px}.acct button{border:1px solid var(--line);background:#fff;border-radius:16px;padding:6px 12px;font:inherit;font-size:12px;cursor:pointer}
.acct .btn{justify-content:center;margin:0 10px}
@media(max-width:760px){.side .brand{padding:0 4px 6px}.side .brand img{max-width:160px}.acct{display:flex;flex-wrap:wrap;border-top:0;margin:0;padding:0 0 6px;align-items:center}.side{padding-top:10px}}
.wrap{align-items:start}
.side{position:sticky;top:0;height:100vh;overflow-y:auto}
@media(max-width:760px){.side{position:sticky;top:0;height:auto;z-index:30;background:#fff}}

/* ===== Barrierefreiheit ===== */
.skip{position:absolute;left:8px;top:-60px;background:#0b3d6b;color:#fff;padding:12px 18px;border-radius:0 0 8px 8px;z-index:100;font-weight:600}.skip:focus{top:0}
:focus-visible{outline:3px solid #0b3d6b;outline-offset:2px;border-radius:4px}
.hero :focus-visible,.pbanner :focus-visible{outline-color:#fff}
main:focus{outline:none}
.mut,.meta,.sort{color:#566371}
.a11y{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:14px 4px 0;padding-top:12px;border-top:1px solid var(--line)}
.a11y span{width:100%;font-size:11.5px;color:#566371}
.a11y button{min-width:44px;min-height:44px;border:1px solid #8a97a3;background:#fff;border-radius:8px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;padding:0 10px}
.a11y button[aria-pressed="true"]{background:#0b3d6b;color:#fff;border-color:#0b3d6b}
.btn,button.btn,.chips a,.lo button,.acct button{min-height:44px;display:inline-flex;align-items:center}
.btn.sm{min-height:40px}.chips a{padding-top:0;padding-bottom:0}
.hb,.lk,.cm{min-width:44px;min-height:44px}
.side a{min-height:44px}
html[data-size="-1"] body{zoom:.92}html[data-size="1"] body{zoom:1.15}html[data-size="2"] body{zoom:1.3}
html[data-contrast="high"]{--ink:#000;--mut:#222;--line:#000;--blue:#00406e;--blue-d:#00406e;--tint:#fff}
html[data-contrast="high"] body,html[data-contrast="high"] .side,html[data-contrast="high"] .card,html[data-contrast="high"] .pan{background:#fff;color:#000}
html[data-contrast="high"] .card,html[data-contrast="high"] .pan,html[data-contrast="high"] .chips a,html[data-contrast="high"] .side{border-color:#000!important}
html[data-contrast="high"] a{text-decoration:underline}
html[data-contrast="high"] .side a.on,html[data-contrast="high"] .chips a.on,html[data-contrast="high"] .btn{background:#000;color:#fff}
html[data-contrast="high"] .btn.ghost{background:#fff;color:#000;border:2px solid #000}
html[data-contrast="high"] .mut,html[data-contrast="high"] .meta{color:#000}
html[data-contrast="high"] .pbanner{background-image:linear-gradient(0deg,rgba(0,0,0,.82),rgba(0,0,0,.82)),url(/img/sant.jpg)!important}
html[data-contrast="high"] .hero{background:linear-gradient(0deg,rgba(0,0,0,.85),rgba(0,0,0,.85)),url(/img/coll.jpg) center/cover}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media (forced-colors:active){.btn,.chips a.on{border:2px solid ButtonText}}

/* ===== Responsive ===== */
img{max-width:100%}
.card.pad,.card .tbl{overflow-x:auto}
.mainc{overflow-x:hidden}
.pbanner h1{font-size:clamp(24px,4vw,34px)}
@media(max-width:1100px){
  .pg{padding-left:20px;padding-right:20px}
  .pg.two>aside{order:2}
  .hero{padding:48px 24px}.hero h1{font-size:clamp(26px,5vw,38px)}
  .trow>img{width:130px}
}
@media(max-width:760px){
  .pg{padding:16px 14px 28px}
  .pbanner{height:auto;min-height:130px;padding:26px 16px}
  .hero{padding:36px 16px;min-height:0}
  .card.trow{flex-direction:column;align-items:stretch}.trow>img{width:100%;height:150px}.trow .tr{flex-direction:row;justify-content:space-between;align-items:center}
  .card.feed .wide{max-height:200px}
  .flash{margin:12px 14px 0}
  .grid6{grid-template-columns:repeat(2,1fr)}
  .foot{padding:18px 14px 28px;gap:12px 18px}
  .sbar2>div{flex:1 1 100%;border-right:0;border-bottom:1px solid var(--line);padding:10px}.sbar2 button{margin:8px 0 0;width:100%;justify-content:center}
  .frs{grid-template-columns:1fr}.fr input,.fr textarea,.fr select{font-size:16px}
  .a11y{margin:0 0 6px;padding-top:0;border-top:0}.a11y span{display:none}
  .tbl{min-width:560px}
}
@media(max-width:380px){.grid4,.grid3,.grid2{grid-template-columns:1fr}}
@media(max-width:760px){.side{position:static!important}.side .acct,.side .a11y{display:inline-flex;vertical-align:middle}.acct .btn{margin:0 6px 6px 0}.a11y{margin:0 0 8px}.a11y button{min-width:44px}}

/* ===== Hamburger-Menü ===== */
.side-top{display:block}.burger{display:none}
.side-panel{display:flex;flex-direction:column;flex:1}
.side-panel .art{margin-top:auto}
@media(max-width:760px){
  .side{position:sticky!important;top:0;height:auto!important;z-index:40;padding:0!important;background:#fff;overflow:visible}
  .side-top{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;border-bottom:1px solid var(--line)}
  .side .brand{padding:0}.side .brand img{height:42px;width:auto;max-width:200px}
  .burger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:48px;height:48px;border:1px solid #8a97a3;border-radius:10px;background:#fff;cursor:pointer;padding:0 12px}
  .burger span{display:block;height:3px;background:#1d2b3a;border-radius:2px;transition:transform .2s,opacity .2s}
  .burger[aria-expanded="true"] span:nth-child(1){transform:translateY(8px) rotate(45deg)}.burger[aria-expanded="true"] span:nth-child(2){opacity:0}.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
  .side-panel{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 12px 24px rgba(0,0,0,.12);max-height:calc(100vh - 70px);overflow-y:auto;padding:8px 12px 14px}
  .side-panel.open{display:flex}
  .side nav{display:block!important;overflow:visible!important}.side nav a{flex:none;white-space:normal;height:auto;min-height:48px;padding:0 12px}
  .side .art{display:none}.acct,.a11y{display:flex!important;flex-wrap:wrap;margin:8px 0 0;padding-top:10px;border-top:1px solid var(--line)}.a11y span{display:block;width:100%}
}
html[data-contrast="high"] .burger{border-color:#000}

/* ===== Barrierefreiheits-Dialog (Vorbild it-life.org) ===== */
.a11y-fab{position:fixed;left:16px;bottom:16px;width:56px;height:56px;border-radius:50%;border:3px solid #fff;background:#0b3d6b;color:#fff;cursor:pointer;z-index:60;display:grid;place-items:center;box-shadow:0 4px 14px rgba(0,0,0,.3);padding:0}
.a11y-fab svg{width:34px;height:34px;fill:none;stroke:#fff;stroke-width:1.8}
.a11y-dlg{position:fixed;left:16px;bottom:84px;width:min(340px,calc(100vw - 32px));background:#fff;color:#1d2b3a;border:2px solid #0b3d6b;border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.3);padding:18px;z-index:61}
.a11y-dlg[hidden]{display:none}
.a11y-dlg h2{margin:0 0 12px;font-size:18px}
.a11y-dlg .row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;font-size:15px}
.a11y-dlg .row b{display:block;font-size:12px;color:#566371;font-weight:600}
.a11y-dlg .row>div{display:flex;gap:6px}
.a11y-dlg button{min-height:44px;min-width:44px;border:1px solid #8a97a3;background:#f3f5f7;border-radius:6px;font:inherit;font-weight:700;cursor:pointer;padding:0 14px;color:#1d2b3a}
.a11y-dlg .tgl2[aria-pressed="true"]{background:#0b3d6b;color:#fff;border-color:#0b3d6b}
.a11y-dlg .reset{width:100%;margin:8px 0 4px}.a11y-dlg .close{width:100%;margin-top:8px;background:#fff}
.a11y-dlg .ls{border-top:1px solid #e1e6eb}
.a11y-dlg .btn{min-height:44px}
html[data-motion="off"] *,html[data-motion="off"] *::before,html[data-motion="off"] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html[data-contrast="high"] .a11y-fab{background:#000;border-color:#fff}
html[data-contrast="high"] .a11y-dlg{border-color:#000}
@media(max-width:760px){.a11y-fab{left:10px;bottom:10px;width:52px;height:52px}.a11y-dlg{left:10px;bottom:72px}}
.hero{height:auto}
