/* Welfia-App – Farben #007A47 / #231F20, Schrift Barlow (lokal) */
@font-face{font-family:Barlow;font-weight:400;font-display:swap;src:url(fonts/barlow-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:Barlow;font-weight:600;font-display:swap;src:url(fonts/barlow-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:Barlow;font-weight:700;font-display:swap;src:url(fonts/barlow-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Barlow Condensed";font-weight:600;font-display:swap;src:url(fonts/barlow-condensed-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Barlow Condensed";font-weight:700;font-display:swap;src:url(fonts/barlow-condensed-latin-700-normal.woff2) format("woff2")}

:root{
	--gruen:#007A47;--gruen-dunkel:#005C35;--hell:#EEF5F1;--text:#231F20;--grau:#6b6869;--linie:#e3e6e4;
	--top:calc(60px + env(safe-area-inset-top));--tabs:calc(62px + env(safe-area-inset-bottom));
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;padding:0}
body{font-family:Barlow,system-ui,sans-serif;font-size:16px;line-height:1.5;color:var(--text);background:#f6f7f6;
	padding-top:var(--top);padding-bottom:var(--tabs);min-height:100vh;-webkit-font-smoothing:antialiased;overscroll-behavior-y:contain}
a{color:var(--gruen)}
img{max-width:100%;height:auto}
h1,h2,h3{font-family:"Barlow Condensed",Barlow,sans-serif;font-weight:700;line-height:1.15;margin:0 0 .4em}
[hidden]{display:none!important}
.pad{padding:16px}

/* Kopfleiste */
.top{position:fixed;inset:0 0 auto 0;z-index:20;height:var(--top);padding:env(safe-area-inset-top) 8px 0;background:#231F20;color:#fff;
	display:flex;align-items:center;gap:4px;box-shadow:0 1px 0 rgba(255,255,255,.06)}
.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;flex:1;min-width:0;padding-left:6px}
.brand img{width:44px;height:auto;flex:none}
.brand-text{font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:21px;line-height:1.05;letter-spacing:.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:400}
.brand-text b{font-weight:700}
.brand-text small{display:block;font-size:14px;letter-spacing:1.2px;opacity:.85;font-weight:400}
.top button{background:none;border:0;color:#fff;width:44px;height:44px;display:grid;place-items:center;border-radius:50%;cursor:pointer;flex:none}
.top button:active{background:rgba(255,255,255,.12)}
body.sub .brand img{width:34px}
body.sub .brand-text small{display:none}

.offline{position:sticky;top:var(--top);z-index:5;background:#fff4d6;color:#5c4400;font-size:14px;text-align:center;padding:6px 12px}

/* Tab-Leiste */
.tabs{position:fixed;inset:auto 0 0 0;z-index:20;height:var(--tabs);padding-bottom:env(safe-area-inset-bottom);background:#fff;border-top:1px solid var(--linie);display:flex}
.tabs a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#8a8788;text-decoration:none;font-size:12px;font-weight:600;letter-spacing:.3px}
.tabs svg{width:26px;height:26px}
.tabs a.on{color:var(--gruen)}
.tabs a.on svg{transform:translateY(-1px)}

/* Laden */
.loading{display:grid;place-items:center;padding:60px 0}
.loading span{width:34px;height:34px;border-radius:50%;border:3px solid var(--linie);border-top-color:var(--gruen);animation:dreh .8s linear infinite}
@keyframes dreh{to{transform:rotate(360deg)}}

/* Hinweis-Kästen */
.box{background:#fff;margin:12px;padding:16px;border-left:4px solid var(--gruen);box-shadow:0 1px 3px rgba(0,0,0,.06)}
.box h3{font-size:20px;margin-bottom:6px}
.box p{margin:.3em 0}
.box.install{display:flex;gap:14px;align-items:flex-start}
.box.install img{width:52px;height:52px;border-radius:12px;flex:none}
.box .close{float:right;background:none;border:0;font-size:22px;line-height:1;color:var(--grau);cursor:pointer;padding:0 0 0 8px}
.ios-share{display:inline-block;vertical-align:-4px;width:18px;height:18px}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--gruen);color:#fff;border:0;padding:11px 20px;font:600 16px Barlow,sans-serif;
	text-decoration:none;cursor:pointer;border-radius:2px;min-height:44px}
.btn:active{background:var(--gruen-dunkel)}
.btn.hell{background:var(--hell);color:var(--gruen)}
.btn.rot{background:#fff;color:#a12a2a;border:1px solid #e3c4c4}
.btn[disabled]{opacity:.55}
.btn.voll{width:100%}

/* Kategorie-Chips */
.chips{display:flex;gap:8px;overflow-x:auto;padding:12px 12px 4px;scrollbar-width:none;-webkit-overflow-scrolling:touch;position:sticky;top:var(--top);z-index:4;background:#f6f7f6}
.chips::-webkit-scrollbar{display:none}
.chip{flex:none;border:1px solid var(--linie);background:#fff;color:var(--text);padding:7px 14px;border-radius:999px;font:600 14px Barlow,sans-serif;cursor:pointer;white-space:nowrap}
.chip.on{background:var(--gruen);border-color:var(--gruen);color:#fff}

/* News-Karten */
.cards{display:grid;gap:12px;padding:12px}
@media (min-width:700px){.cards{grid-template-columns:1fr 1fr}}
.card{display:block;background:#fff;color:var(--text);text-decoration:none;box-shadow:0 1px 3px rgba(0,0,0,.07);overflow:hidden}
.card .bild{aspect-ratio:16/9;background:var(--hell) center/cover no-repeat}
.card .bild.leer{display:grid;place-items:center}
.card .bild.leer img{width:70px;opacity:.35}
.card .txt{padding:12px 14px 14px}
.kat{display:inline-block;font:700 12px "Barlow Condensed",sans-serif;letter-spacing:.8px;text-transform:uppercase;color:var(--gruen)}
.card h2{font-size:22px;margin:2px 0 6px}
.card p{margin:0;color:#4a4647;font-size:15px}
.datum{font-size:13px;color:var(--grau);margin-top:8px}
.card.top1 h2{font-size:26px}
.mehr-laden{display:block;margin:4px 12px 20px}
.leer-hinweis{text-align:center;color:var(--grau);padding:40px 20px}

/* Artikel */
.artikel{background:#fff;min-height:calc(100vh - var(--top) - var(--tabs))}
.artikel .titelbild{aspect-ratio:16/9;background:var(--hell) center/cover no-repeat}
.artikel .kopf{padding:16px 16px 4px}
.artikel h1{font-size:30px}
.artikel .inhalt{padding:0 16px 24px;font-size:17px;line-height:1.6;overflow-wrap:break-word}
.artikel .inhalt img,.artikel .inhalt video,.artikel .inhalt iframe{max-width:100%;height:auto}
.artikel .inhalt figure{margin:16px 0}
.artikel .inhalt figcaption{font-size:14px;color:var(--grau)}
.artikel .inhalt table{border-collapse:collapse;width:100%;font-size:15px}
.artikel .inhalt td,.artikel .inhalt th{border-bottom:1px solid var(--linie);padding:6px}
.artikel .inhalt .wp-block-gallery,.artikel .inhalt .gallery{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.artikel .fuss{padding:0 16px 28px;display:flex;gap:10px;flex-wrap:wrap}

/* Mannschaften / Tabellen */
.team-wahl{display:flex;gap:8px;overflow-x:auto;padding:12px 12px 4px;scrollbar-width:none;position:sticky;top:var(--top);z-index:4;background:#f6f7f6}
.team-wahl::-webkit-scrollbar{display:none}
.team{background:#fff;margin:12px;box-shadow:0 1px 3px rgba(0,0,0,.07)}
.team>h2{background:#231F20;color:#fff;font-size:22px;padding:10px 14px;margin:0;display:flex;justify-content:space-between;align-items:center}
.team .daten{padding:6px 12px 14px;overflow-x:auto;font-size:15px}
.team .daten h2,.team .daten h3,.team .daten h4{font-family:"Barlow Condensed",sans-serif;font-size:19px;margin:14px 0 6px;color:var(--gruen)}
.team .daten table{border-collapse:collapse;width:100%;min-width:300px;font-variant-numeric:tabular-nums}
.team .daten th{font:700 13px "Barlow Condensed",sans-serif;text-transform:uppercase;letter-spacing:.5px;text-align:left;color:var(--grau);border-bottom:2px solid var(--text);padding:6px 5px}
.team .daten td{border-bottom:1px solid var(--linie);padding:7px 5px;vertical-align:top}
.team .daten tr:nth-child(even) td{background:#fafbfa}
.team .daten tr[class*="welfia"] td,.team .daten tr[class*="eigen"] td,.team .daten tr[class*="own"] td,.team .daten tr.hervor td{background:var(--hell);font-weight:700}
.team .daten a{color:var(--gruen)}
.team .daten img{max-height:28px;width:auto;vertical-align:middle}
.team .daten small,.team .daten .quelle{color:var(--grau);font-size:13px}
.stand{font-size:13px;color:var(--grau);padding:0 14px 16px}

/* Push-Einstellungen */
.einst{background:#fff;margin:12px;padding:16px;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.einst h2{font-size:24px}
.status{display:flex;align-items:center;gap:10px;font-weight:600;margin:6px 0 14px}
.status i{width:12px;height:12px;border-radius:50%;background:#bbb;flex:none}
.status.an i{background:var(--gruen);box-shadow:0 0 0 4px rgba(0,122,71,.15)}
.themen{margin:14px 0 6px;border-top:1px solid var(--linie)}
.thema{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--linie);cursor:pointer}
.thema.d1{padding-left:22px}.thema.d2{padding-left:44px}
.thema input{appearance:none;-webkit-appearance:none;width:46px;height:28px;border-radius:999px;background:#d5d8d6;position:relative;flex:none;margin:0 0 0 auto;cursor:pointer;transition:background .15s;order:2}
.thema input::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.25);transition:transform .15s}
.thema input:checked{background:var(--gruen)}
.thema input:checked::after{transform:translateX(18px)}
.thema input:disabled{opacity:.45}
.thema span{order:1}
.thema.alle span{font-weight:700}
.klein{font-size:14px;color:var(--grau)}
.schritte{margin:8px 0 0;padding-left:22px}
.schritte li{margin:6px 0}

/* Mehr */
.liste{background:#fff;margin:12px;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.liste a{display:flex;justify-content:space-between;align-items:center;padding:15px 16px;border-bottom:1px solid var(--linie);color:var(--text);text-decoration:none;font-weight:600}
.liste a::after{content:"›";font-size:24px;color:#b5b2b3;line-height:1}
.liste a:last-child{border-bottom:0}
.info{text-align:center;color:var(--grau);font-size:13px;padding:10px 20px 24px}
.info img{width:70px;display:block;margin:10px auto}

.toast{position:fixed;left:50%;bottom:calc(var(--tabs) + 14px);transform:translateX(-50%);background:#231F20;color:#fff;padding:10px 18px;border-radius:4px;font-size:15px;z-index:30;box-shadow:0 4px 14px rgba(0,0,0,.25);max-width:90vw;text-align:center}
