.sgps { --sgps-blue:#34485b; --sgps-gold:#b99a5a; --sgps-paper:#faf5e9; color:#243342; font:inherit; line-height:1.6; }
.sgps[hidden],.sgps [hidden]{display:none!important}
.sgps-trigger{margin-top:18px!important;border:1px solid #e7cf93!important;background:#faf5e9!important;color:#243342!important;border-radius:10px!important;padding:11px 18px!important;font:inherit!important;font-weight:700!important;cursor:pointer}
.sgps{background:var(--sgps-paper);border:1px solid var(--sgps-gold);border-radius:14px;margin:16px 0;padding:24px;box-sizing:border-box}
.sgps *{box-sizing:border-box}
.sgps h2,.sgps h3,.sgps p{color:#243342;margin:0 0 12px;line-height:1.5}
.sgps h2{font-size:clamp(1.4rem,3vw,2rem)}
.sgps h3{font-size:1.2rem}
.sgps .sgps-top,.sgps .sgps-actions,.sgps .sgps-downloads{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:12px 0}
.sgps .sgps-top{justify-content:space-between}
.sgps button,.sgps a.sgps-link{display:inline-block;background:var(--sgps-blue);color:#fff;border:1px solid var(--sgps-blue);border-radius:9px;padding:10px 14px;font:inherit;font-weight:700;text-decoration:none;cursor:pointer;min-height:44px}
.sgps button.sgps-secondary,.sgps a.sgps-link{background:#fff;color:#243342;border-color:var(--sgps-gold)}
.sgps button:disabled{opacity:.55;cursor:default}
.sgps button:focus-visible,.sgps-trigger:focus-visible,.sgps a:focus-visible,.sgps select:focus-visible,.sgps textarea:focus-visible,.sgps input:focus-visible{outline:3px solid #985f12;outline-offset:3px}
.sgps .sgps-selectors{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0}
.sgps label{display:block;font-weight:700;color:#243342}
.sgps select,.sgps textarea{width:100%;border:1px solid #987d42;border-radius:8px;background:#fff;color:#243342;padding:12px;font:inherit;margin-top:6px}
.sgps textarea{min-height:110px;resize:vertical}
.sgps fieldset{border:0;padding:0;margin:12px 0}
.sgps legend{font-weight:700;margin-bottom:8px}
.sgps .sgps-choice{display:flex;gap:10px;align-items:flex-start;padding:12px;margin:6px 0;background:#fff;border:1px solid #d6c392;border-radius:8px;font-weight:400;cursor:pointer}
.sgps .sgps-choice input{margin-top:6px;flex-shrink:0}
.sgps .sgps-note{font-size:.94rem;color:#4c5965}
.sgps .sgps-feedback,.sgps .sgps-hint{background:#fff;padding:14px;border-left:4px solid var(--sgps-gold);margin:12px 0;border-radius:6px}
.sgps .sgps-progress{font-weight:700;color:#5d4a25;margin:16px 0 8px}
.sgps .sgps-references{font-size:.85rem;color:#526273;overflow-wrap:anywhere}
.sgps .sgps-status{min-height:1.6em;font-size:.94rem}
.sgps details{margin:18px 0}.sgps summary{cursor:pointer;font-weight:700}
@media(max-width:600px){.sgps{padding:16px}.sgps .sgps-selectors{grid-template-columns:1fr}.sgps .sgps-actions button{flex:1 1 140px}.sgps .sgps-downloads a{width:100%}}
@media(prefers-reduced-motion:reduce){.sgps{scroll-behavior:auto}}

/* 0.1.1: feste Kontraste für Auswahlfelder auch bei globalen Theme-Regeln. */
#sgps-school-panel.sgps select,
#sgps-school-panel.sgps select:focus,
#sgps-school-panel.sgps select:hover {
  color: #243342 !important;
  -webkit-text-fill-color: #243342 !important;
  background-color: #ffffff !important;
  background-image: none !important;
  color-scheme: light !important;
  opacity: 1 !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  height: auto !important;
  min-height: 50px !important;
  padding: 12px 16px !important;
  border: 1px solid #987d42 !important;
  appearance: auto !important;
  -webkit-appearance: menulist !important;
}
#sgps-school-panel.sgps select option,
#sgps-school-panel.sgps select optgroup {
  color: #243342 !important;
  -webkit-text-fill-color: #243342 !important;
  background-color: #ffffff !important;
  font-size: 16px !important;
  opacity: 1 !important;
}
#sgps-school-panel.sgps .sgps-selectors label,
#sgps-school-panel.sgps .sgps-choice,
#sgps-school-panel.sgps legend {
  color: #243342 !important;
  -webkit-text-fill-color: #243342 !important;
  opacity: 1 !important;
}
#sgps-school-panel.sgps .sgps-choice {
  background-color: #ffffff !important;
}

#sgps-school-panel.sgps .sgps-reading{background:#fff;border:1px solid #d6c392;border-radius:8px;padding:14px;color:#243342!important;line-height:1.65;margin:12px 0;}

/* 0.3.2: dezenter Einstieg unterhalb der bestehenden Fragefunktion. */
#sgps-school-entry.sgps-entry{box-sizing:border-box;border:1px solid #d6c392;border-radius:12px;background:#faf5e9;padding:20px 24px;margin:22px 0 14px;font:inherit;line-height:1.6;color:#243342!important;}
#sgps-school-entry.sgps-entry *{box-sizing:border-box;}
#sgps-school-entry.sgps-entry h2{font:inherit;font-size:1.18rem;font-weight:700;line-height:1.4;margin:0 0 7px;color:#243342!important;}
#sgps-school-entry.sgps-entry p{margin:0 0 14px;font-size:1rem;line-height:1.6;color:#243342!important;}
#sgps-school-entry.sgps-entry .sgps-entry-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;}
#sgps-school-entry.sgps-entry .sgps-trigger,#sgps-school-entry.sgps-entry a.sgps-info-link{display:inline-flex!important;align-items:center;justify-content:center;min-height:44px;margin:0!important;border:1px solid #b99a5a!important;background:#fff!important;color:#243342!important;-webkit-text-fill-color:#243342!important;border-radius:9px!important;padding:10px 16px!important;font:inherit!important;font-weight:600!important;line-height:1.4!important;text-decoration:none!important;text-align:center;cursor:pointer;box-shadow:none!important;}
#sgps-school-entry.sgps-entry .sgps-trigger:hover,#sgps-school-entry.sgps-entry a.sgps-info-link:hover{background:#f3e6c9!important;border-color:#987d42!important;}
#sgps-school-entry.sgps-entry a.sgps-info-link:focus-visible{outline:3px solid #985f12;outline-offset:3px;}
@media(max-width:600px){#sgps-school-entry.sgps-entry{padding:18px 16px;}#sgps-school-entry.sgps-entry .sgps-entry-actions>*{flex:1 1 190px;}}
