/* Tierschutz Saarland – Blutspender gesucht */
.bs-hero{background:radial-gradient(circle at 85% 20%,rgba(220,47,43,.12),transparent 45%),linear-gradient(135deg,#fdecea,#fff 55%,#fff6f5);padding:clamp(28px,4.5vw,56px) 0 clamp(26px,3.5vw,44px);border-bottom:1px solid var(--line)}
.bs-kick{display:flex;align-items:center;gap:.4rem;font:800 .8rem "Outfit",system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--alarm-deep);margin:0 0 .4rem}
.bs-kick .tr-icon{fill:var(--alarm);stroke:var(--alarm)}
.bs-hero h1{font-weight:800;font-size:clamp(2.2rem,5.4vw,3.9rem);line-height:1.02;margin:0 0 .8rem}
.bs-counts{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem;margin-top:1rem}
@media(max-width:575.98px){.bs-counts{grid-template-columns:repeat(2,1fr)}}
.bs-counts>div{background:#fff;border-radius:var(--r-m);padding:.8rem;box-shadow:var(--shadow);border-top:5px solid var(--c);text-align:center}
.bs-counts .is-a{--c:#dc2f2b}.bs-counts .is-u{--c:#b3211e}.bs-counts .is-h{--c:#1877b5}.bs-counts .is-k{--c:#7a4bb0}
.bs-counts b{display:block;font:800 clamp(1.8rem,3.4vw,2.5rem)/1 "Outfit",system-ui,sans-serif;color:var(--c)}
.bs-counts span{display:block;font-size:.8rem;color:var(--ink-2);margin-top:.3rem;line-height:1.2}
.bs-help{background:#fff;border-radius:var(--r-l);padding:1.3rem;box-shadow:0 0 0 4px var(--alarm),0 30px 60px -28px rgba(13,27,49,.55)}
.bs-help-h{display:flex;align-items:center;gap:.5rem;font:800 1.25rem "Outfit",system-ui,sans-serif;margin:0 0 .6rem;color:var(--alarm-deep)}
.bs-help-h .tr-icon{fill:var(--alarm);stroke:var(--alarm)}
.bs-help ol{list-style:none;padding:0;margin:0 0 .9rem;counter-reset:h;display:grid;gap:.6rem}
.bs-help li{counter-increment:h;display:grid;grid-template-columns:2rem 1fr;column-gap:.6rem}
.bs-help li::before{content:counter(h);grid-row:span 2;width:2rem;height:2rem;border-radius:50%;background:var(--alarm-soft);color:var(--alarm-deep);display:grid;place-items:center;font:800 1rem "Outfit"}
.bs-help li b{font:800 1rem "Outfit",system-ui,sans-serif}.bs-help li span{font-size:.9rem;color:var(--ink-2);line-height:1.35}
.bs-help-main{display:flex;align-items:center;justify-content:center;gap:.6rem;padding:.8rem 1rem;border-radius:var(--r-m);background:var(--alarm);color:#fff;text-decoration:none;font:800 1.15rem "Outfit",system-ui,sans-serif}
.bs-help-main:hover{background:var(--alarm-deep);color:#fff}
.vm-subnav{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);padding:.55rem 0}.vm-subnav .tr-filter{text-decoration:none}
.bs-main{background:var(--mist);padding:clamp(28px,4vw,52px) 0 90px}
section.bs-sec{padding:0;margin:0 0 clamp(2.2rem,5vw,3.4rem);scroll-margin-top:80px}
.bs-h{font-weight:800;font-size:clamp(1.5rem,3vw,2.2rem);line-height:1.08;margin:0 0 .9rem}
.bs-panel{background:#fff;border-radius:var(--r-l);box-shadow:var(--shadow);padding:clamp(1.1rem,2.6vw,1.8rem)}
.bs-panel h3{font-weight:800;font-size:1.2rem;display:flex;align-items:center;gap:.5rem;margin:0 0 .7rem}
.bs-filter{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}
.bs-check{display:inline-flex;align-items:center;gap:.4rem;font-weight:700;font-size:.92rem}

/* Aufrufe */
.bs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.1rem}
@media(max-width:400px){.bs-grid{grid-template-columns:1fr}}
.bs-grid>.tr-empty{grid-column:1/-1}
.bs-card{--c:#dc2f2b;background:#fff;border-radius:var(--r-l);overflow:hidden;box-shadow:0 14px 34px -20px rgba(13,27,49,.55);display:flex;flex-direction:column;scroll-margin-top:90px;border:2px solid transparent}
.bs-card.is-notfall,.bs-card.is-24h{--c:#b3211e;border-color:#f3b7b4}
.bs-card.is-tage,.bs-card.is-geplant{--c:#e07f00}
.bs-card.is-done{--c:#237a4b;opacity:.85}
.bs-band{display:flex;align-items:center;justify-content:space-between;gap:.5rem;background:var(--c);color:#fff;padding:.5rem .9rem;font:800 .85rem "Outfit",system-ui,sans-serif;letter-spacing:.03em}
.bs-band b{display:inline-flex;align-items:center;gap:.4rem;text-transform:uppercase}
.bs-card.is-notfall .bs-band b::before{content:"";width:9px;height:9px;border-radius:50%;background:#fff;animation:bs-pulse 1.2s infinite}
@keyframes bs-pulse{50%{opacity:.25}}
@media(prefers-reduced-motion:reduce){.bs-card.is-notfall .bs-band b::before{animation:none}}
.bs-band span{font-weight:700;opacity:.95;white-space:nowrap}
.bs-top{display:flex;gap:.9rem;padding:.9rem .9rem .5rem}
.bs-ph{flex:none;width:86px;height:86px;border-radius:16px;overflow:hidden;background:var(--alarm-soft);display:grid;place-items:center;font-size:2.6rem}
.bs-ph img{width:100%;height:100%;object-fit:cover}
.bs-tt{min-width:0}
.bs-tt small{display:block;font-weight:800;font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.bs-tt h3{font:800 1.18rem/1.2 "Outfit",system-ui,sans-serif;margin:.1rem 0 .25rem}
.bs-tt p{margin:0;font-size:.88rem;color:var(--ink-2);line-height:1.35}
.bs-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;padding:0 .9rem .7rem}
.bs-facts div{background:var(--mist);border-radius:12px;padding:.45rem .5rem;text-align:center;min-width:0}
.bs-facts dt{font-size:.68rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:800}
.bs-facts dd{margin:0;font:800 .92rem/1.2 "Outfit",system-ui,sans-serif;overflow-wrap:anywhere}
.bs-vet{margin:0 .9rem .8rem;padding:.75rem .85rem;border-radius:14px;background:#fff;border:1px solid var(--line);border-left:5px solid var(--c);display:grid;gap:.1rem}
.bs-vet small{font-weight:800;font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.bs-vet b{font:800 1rem/1.2 "Outfit",system-ui,sans-serif}
.bs-vet span{font-size:.86rem;color:var(--ink-2)}
.bs-acts{display:flex;flex-wrap:wrap;gap:.45rem;padding:0 .9rem 1rem;margin-top:auto}
.bs-acts .btn{--bs-btn-padding-y:.5rem;--bs-btn-padding-x:.9rem;font-size:.92rem}
.bs-call{flex:1 1 auto}
.bs-done-note{display:flex;gap:.5rem;align-items:center;margin:0 .9rem 1rem;padding:.7rem .9rem;border-radius:14px;background:var(--forest-soft);color:var(--forest-deep);font-weight:800}

/* Formular */
.bs-form-wrap{border-top:8px solid var(--alarm)}
.bs-fs{border:0;margin:0 0 1.4rem;padding:1.1rem 0 0;border-top:1px solid var(--line)}
.bs-fs legend{float:none;display:flex;align-items:center;gap:.55rem;font:800 1.2rem "Outfit",system-ui,sans-serif;margin:0 0 .8rem}
.bs-fs legend i{font-style:normal;width:2rem;height:2rem;border-radius:50%;background:var(--alarm);color:#fff;display:grid;place-items:center;font-size:1rem;flex:none}
.bs-fs-end{border-top:1px solid var(--line);padding-top:1.1rem}
.bs-art{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
.bs-art label,.bs-dring label{position:relative;cursor:pointer}.bs-art input,.bs-dring input{position:absolute;opacity:0}
.bs-art span{display:flex;align-items:center;gap:.8rem;padding:.8rem 1rem;border-radius:var(--r-m);border:2px solid var(--line);background:#fff}
.bs-art em{font-style:normal;font-size:2.3rem;line-height:1}.bs-art b{font:800 1.25rem "Outfit",system-ui,sans-serif}.bs-art small{display:block;color:var(--muted);font-size:.8rem;margin-left:auto}
.bs-art input:checked+span{border-color:var(--alarm);background:var(--alarm-soft);box-shadow:0 0 0 2px var(--alarm) inset}
.bs-dring{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}
@media(max-width:575.98px){.bs-dring{grid-template-columns:repeat(2,1fr)}.bs-art small{display:none}}
.bs-dring span{display:flex;flex-direction:column;align-items:center;padding:.6rem .3rem;border-radius:var(--r-m);border:2px solid var(--line);background:#fff;text-align:center}
.bs-dring b{font:800 1rem "Outfit",system-ui,sans-serif}.bs-dring small{font-size:.76rem;color:var(--muted)}
.bs-dring .is-notfall{--k:#b3211e}.bs-dring .is-24h{--k:#dc2f2b}.bs-dring .is-tage{--k:#e07f00}.bs-dring .is-geplant{--k:#1877b5}
.bs-dring input:checked+span{border-color:var(--k);background:color-mix(in srgb,var(--k) 10%,#fff);box-shadow:0 0 0 2px var(--k) inset}
.bs-dring input:checked+span b{color:var(--k)}
.bs-art input:focus-visible+span,.bs-dring input:focus-visible+span,.bs-req input:focus-visible+span{outline:3px solid var(--river);outline-offset:2px}
.bs-req{display:grid;grid-template-columns:1fr 1fr;gap:.45rem}
@media(max-width:767.98px){.bs-req{grid-template-columns:1fr}}
.bs-req label{position:relative;cursor:pointer}.bs-req input{position:absolute;opacity:0}
.bs-req span{display:flex;gap:.55rem;align-items:flex-start;padding:.55rem .7rem;border-radius:12px;border:1px solid var(--line);background:#fff;font-size:.9rem;line-height:1.3;height:100%}
.bs-req span::before{content:"";flex:none;width:1.2rem;height:1.2rem;border-radius:6px;border:2px solid #b9c3d1;margin-top:.05rem;background:#fff center/80% no-repeat}
.bs-req input:checked+span{border-color:var(--forest);background:var(--forest-soft)}
.bs-req input:checked+span::before{background-color:var(--forest);border-color:var(--forest);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 5 5 9-10'/%3E%3C/svg%3E")}
.bs-photo{display:flex;gap:.8rem;align-items:stretch}.bs-photo .vm-drop{flex:1;padding:1rem}
.bs-photo-prev{position:relative;width:130px;flex:none}.bs-photo-prev img{width:130px;height:100%;min-height:110px;object-fit:cover;border-radius:var(--r-m)}
.bs-photo-prev .vm-del{position:absolute;top:.3rem;right:.3rem;width:30px;height:30px;border-radius:50%;border:0;background:rgba(13,27,49,.8);color:#fff;font-size:1.1rem;line-height:1}
.bs-vetpick{position:relative;background:var(--river-soft);border-radius:var(--r-m);padding:.8rem}
.bs-vs{position:relative}.bs-vs .tr-icon{position:absolute;left:.8rem;top:50%;transform:translateY(-50%);color:var(--muted)}.bs-vs input{padding-left:2.4rem}
.bs-vl{position:absolute;left:.8rem;right:.8rem;z-index:20;list-style:none;margin:.2rem 0 0;padding:.3rem;background:#fff;border-radius:14px;box-shadow:0 20px 40px -12px rgba(13,27,49,.45);max-height:300px;overflow:auto}
.bs-vl li{padding:.5rem .65rem;border-radius:10px;cursor:pointer;line-height:1.25}
.bs-vl li[aria-selected="true"],.bs-vl li:hover{background:var(--river-soft)}
.bs-vl b{display:block;font-weight:800}.bs-vl small{color:var(--ink-2)}.bs-vl em{font-style:normal;font-size:.7rem;font-weight:800;background:var(--alarm);color:#fff;border-radius:999px;padding:.05rem .4rem;margin-left:.3rem}
.bs-manage-link{max-width:520px;margin:.6rem auto 0;text-align:left}.bs-manage-link input{font-family:ui-monospace,Menlo,monospace;font-size:.82rem}
.bs-preview{position:sticky;top:80px}
.bs-prev-h{font:800 .8rem "Outfit",system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 .5rem}
.bs-preview .bs-card{pointer-events:none}
@media(max-width:1199.98px){.bs-preview{display:none}}

/* Spender */
.bs-who{border-top:6px solid var(--c)}.bs-who h3 span{font-size:1.8rem}
.bs-who ul{padding-left:1.1rem;display:grid;gap:.4rem;margin:0}
.bs-check-wrap{border-top:6px solid var(--forest)}.bs-check-wrap h3 .tr-icon{color:var(--forest);stroke-width:3}
.ck-q{font:800 1.08rem/1.3 "Outfit",system-ui,sans-serif;margin:.2rem 0 .8rem}
.ck-step{font-size:.78rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.ck-bar{height:6px;border-radius:999px;background:var(--mist);overflow:hidden;margin:.3rem 0 .6rem}.ck-bar i{display:block;height:100%;background:var(--forest);transition:width .25s}
.ck-btns{display:flex;flex-wrap:wrap;gap:.5rem}
.ck-res{border-radius:var(--r-m);padding:.9rem 1rem;margin-bottom:.8rem}
.ck-res.is-ok{background:var(--forest-soft);border-left:6px solid var(--forest)}.ck-res.is-no{background:var(--sun-soft);border-left:6px solid var(--sun)}
.ck-res b{display:block;font:800 1.1rem "Outfit",system-ui,sans-serif;margin-bottom:.2rem}
.bs-bg{border-left:6px solid var(--alarm)}.bs-bg h3 .tr-icon{fill:var(--alarm-soft);stroke:var(--alarm)}
.bs-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
@media(max-width:991.98px){.bs-steps{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.bs-steps{grid-template-columns:1fr}}
.bs-steps li{background:#fff;border-radius:var(--r-l);box-shadow:var(--shadow);padding:1.2rem}
.bs-steps span{display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:50%;background:var(--alarm);color:#fff;font:800 1.2rem "Outfit"}
.bs-steps b{display:block;font:800 1.15rem "Outfit",system-ui,sans-serif;margin:.6rem 0 .3rem}.bs-steps p{margin:0;color:var(--ink-2);font-size:.95rem}
.bs-faq{display:grid;gap:.6rem}
.bs-faq details{background:#fff;border-radius:var(--r-m);box-shadow:0 6px 20px -14px rgba(13,27,49,.5)}
.bs-faq summary{cursor:pointer;list-style:none;padding:1rem 3rem 1rem 1.2rem;font:800 1.05rem "Outfit",system-ui,sans-serif;position:relative}
.bs-faq summary::-webkit-details-marker{display:none}
.bs-faq summary::after{content:"+";position:absolute;right:1.2rem;top:50%;transform:translateY(-50%);font-size:1.5rem;color:var(--alarm)}
.bs-faq details[open] summary::after{content:"–"}
.bs-faq p{margin:0;padding:0 1.2rem 1.1rem;color:var(--ink-2)}

/* Karte */
.bs-map{position:relative;height:clamp(380px,60vh,580px);border-radius:var(--r-l);overflow:hidden;box-shadow:var(--shadow);background:var(--alarm-soft)}
#bsMap{position:absolute;inset:0}
.bs-legend{display:flex;flex-wrap:wrap;gap:.35rem 1rem;font-size:.85rem;color:var(--ink-2)}
.bs-legend span{display:inline-flex;align-items:center;gap:.35rem}.bs-legend i{width:12px;height:12px;border-radius:50%}
.bs-pin{width:42px;height:42px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--c);border:3px solid #fff;box-shadow:0 4px 12px rgba(0,0,0,.35);display:grid;place-items:center}
.bs-pin span{transform:rotate(45deg);font-size:1.15rem}

/* Detail */
.bs-dhead{display:flex;gap:1rem;align-items:flex-start;margin-bottom:.8rem}
.bs-dhead img{width:150px;height:150px;object-fit:cover;border-radius:var(--r-m);flex:none}
@media(max-width:575.98px){.bs-dhead{flex-direction:column}.bs-dhead img{width:100%;height:220px}}
.bs-dband{display:inline-flex;align-items:center;gap:.4rem;background:var(--c);color:#fff;border-radius:999px;padding:.25rem .8rem;font:800 .85rem "Outfit"}
.bs-dsec{margin:1rem 0 0}.bs-dsec h3{font:800 1.05rem "Outfit",system-ui,sans-serif;margin:0 0 .5rem;display:flex;align-items:center;gap:.4rem}
.bs-dreq{list-style:none;padding:0;margin:0;display:grid;gap:.35rem}
.bs-dreq li{display:flex;gap:.45rem;align-items:flex-start}.bs-dreq .tr-icon{color:var(--forest);stroke-width:3;margin-top:.15em}
.bs-dvet{background:var(--mist);border-radius:var(--r-m);padding:1rem;border-left:6px solid var(--alarm)}
.bs-dvet b{font:800 1.15rem "Outfit",system-ui,sans-serif}
.bs-dvet a.big{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.7rem;padding:.8rem;border-radius:var(--r-m);background:var(--alarm);color:#fff;text-decoration:none;font:800 1.3rem "Outfit"}
.bs-dvet a.big:hover{background:var(--alarm-deep)}
.bs-own{border-top:8px solid var(--river)}
.bs-own .btn{margin:.2rem .2rem 0 0}
