.sc-shell { display:grid; gap:1.5rem; }
.sc-card { background:#fff; border:1px solid rgba(11,18,32,.08); border-radius:20px; padding:1.25rem; box-shadow:0 8px 24px rgba(11,18,32,.06); }
.sc-hero { display:grid; gap:1rem; }
.sc-hero__lede { font-size:1.05rem; max-width:74ch; }
.sc-pillrow { display:flex; flex-wrap:wrap; gap:.6rem; }
.sc-pill { display:inline-flex; align-items:center; gap:.4rem; background:#eef1f4; border:1px solid rgba(11,18,32,.08); border-radius:999px; padding:.45rem .8rem; font-size:.95rem; }
.sc-columns { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:1rem; }
.sc-columns h3, .sc-summary-box h3, .sc-result-block h3, .sc-section-card h4 { margin-top:0; }
.sc-list { margin:.75rem 0 0; padding-left:1.1rem; }
.sc-form { display:grid; gap:1rem; }
.sc-fieldset { border:1px solid rgba(11,18,32,.08); border-radius:16px; padding:1rem; margin:0; scroll-margin-top:90px; }
.sc-fieldset legend { font-weight:700; padding:0 .35rem; }
.sc-fieldset__intro { margin-top:0; color:#445; }
.sc-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:1rem; }
.sc-question { display:grid; gap:.5rem; }
.sc-label { font-weight:600; }
.sc-required { color:#b91c1c; }
.sc-input, .sc-select { width:100%; border:1px solid rgba(11,18,32,.15); border-radius:12px; padding:.75rem .9rem; font:inherit; }
.sc-options { display:grid; gap:.5rem; }
.sc-option { display:flex; gap:.65rem; align-items:flex-start; background:#f1f3f6; border:1px solid rgba(11,18,32,.08); border-radius:12px; padding:.75rem .85rem; }
.sc-question.has-error .sc-input, .sc-question.has-error .sc-select, .sc-question.has-error .sc-option { border-color:#dc2626; }
.sc-alert { background:#fef2f2; border:1px solid #fecaca; color:#991b1b; border-radius:14px; padding:.9rem 1rem; }
.sc-error { margin:0; color:#b91c1c; font-size:.92rem; }
.sc-actions { display:flex; flex-wrap:wrap; gap:.8rem; align-items:center; }
.sc-actions--tight { gap:.6rem; }
.sc-inline-form { display:inline-flex; margin:0; }
.sc-section-head p, .sc-muted { color:#556; }
.sc-result-toolbar { display:flex; justify-content:space-between; gap:1rem; align-items:center; flex-wrap:wrap; margin-bottom:1rem; padding:.9rem 1rem; background:#f1f3f6; border:1px solid rgba(11,18,32,.08); border-radius:16px; }
.sc-result-toolbar__intro { display:grid; gap:.15rem; }
.sc-result-head { display:flex; justify-content:space-between; gap:1rem; align-items:center; flex-wrap:wrap; }
.sc-score { min-width:140px; text-align:center; border-radius:18px; padding:1rem; color:#fff; }
.sc-score.is-good { background:#15803d; }
.sc-score.is-medium { background:#b45309; }
.sc-score.is-critical { background:#b91c1c; }
.sc-score__value { display:block; font-size:2rem; font-weight:800; line-height:1; }
.sc-score__label { display:block; margin-top:.35rem; font-size:.95rem; }
.sc-summary-grid, .sc-sections, .sc-recommendations { display:grid; gap:1rem; }
.sc-summary-grid { grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); }
.sc-summary-box { background:#f1f3f6; border-radius:16px; padding:1rem; }
.sc-result-block + .sc-result-block { margin-top:1.25rem; }
.sc-rec { border:1px solid rgba(11,18,32,.08); border-left:6px solid #b8c1cb; border-radius:16px; padding:1rem; background:#fff; }
.sc-rec--kritisch { border-left-color:#b91c1c; }
.sc-rec--hoch { border-left-color:#b45309; }
.sc-rec--mittel { border-left-color:#2563eb; }
.sc-rec__meta { display:flex; gap:.75rem; align-items:center; flex-wrap:wrap; }
.sc-badge { display:inline-flex; align-items:center; justify-content:center; border-radius:999px; padding:.22rem .55rem; font-size:.78rem; line-height:1.1; min-height:28px; white-space:nowrap; max-width:100%; }
.sc-badge--kritisch, .is-critical { background:#fee2e2; color:#991b1b; }
.sc-badge--hoch { background:#ffedd5; color:#9a3412; }
.sc-badge--mittel, .is-medium { background:#e6ebf0; color:#4b5563; }
.sc-badge.is-good { background:#dcfce7; color:#166534; }
.sc-section-card { border:1px solid rgba(11,18,32,.08); border-radius:16px; padding:1rem; overflow:hidden; }
.sc-section-card__head { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.8rem; align-items:start; }
.sc-section-card__head h4 { margin:0; padding-right:.25rem; }
.sc-faq details { border-top:1px solid rgba(11,18,32,.08); padding:.85rem 0; }
.sc-faq details:first-child { border-top:0; }
.sc-faq summary { cursor:pointer; font-weight:600; }
#auswertung-start { scroll-margin-top:90px; }
@media (max-width:720px) {
  .sc-section-card__head { grid-template-columns:1fr; }
  .sc-badge { justify-self:start; font-size:.74rem; min-height:26px; padding:.2rem .5rem; }
  .sc-result-toolbar { align-items:flex-start; }
}


/* Readability hardening */
.sc-card, .sc-card h1, .sc-card h2, .sc-card h3, .sc-card h4, .sc-card p, .sc-card li, .sc-card label, .sc-card legend, .sc-card strong, .sc-card b,
.sc-summary-box, .sc-summary-box p, .sc-summary-box li,
.sc-result-toolbar, .sc-result-toolbar p, .sc-result-toolbar li,
.sc-option, .sc-option label, .sc-option span,
.sc-fieldset__intro, .sc-section-head p, .sc-muted, .sc-pill,
.sc-input, .sc-select, .sc-option input, .sc-option select {
  color:#1f2937;
}
.sc-fieldset__intro, .sc-section-head p, .sc-muted, .sc-pill { color:#445064; }
.sc-option { background:#f6f8fb; }
.sc-pill { color:#334155; }
.sc-score.is-medium { background:#92400e; }
.sc-badge--mittel, .is-medium { background:#e5edf5; color:#334155; }
