/* ============================================================
   DSV Corporate Design – Road to DJM
   Kind-Theme von fruity_twentythree. Wird zuletzt geladen.
   Farbe DSV-Blau #2A89CF, Open Sans, Logo-Kopf, Sponsorenfuß.
   ============================================================ */

/* ---- Open Sans (offizielle DSV-Schrift, lokal eingebettet) ---- */
@font-face { font-family:'Open Sans'; src:url('../fonts/OpenSans-Regular.ttf') format('truetype'); font-weight:400; font-style:normal; font-display:swap; }
@font-face { font-family:'Open Sans'; src:url('../fonts/OpenSans-Semibold.ttf') format('truetype'); font-weight:600; font-style:normal; font-display:swap; }
@font-face { font-family:'Open Sans'; src:url('../fonts/OpenSans-Bold.ttf') format('truetype'); font-weight:700; font-style:normal; font-display:swap; }

:root{
  --dsv:#2A89CF; --dsv-dark:#1f6ca8; --dsv-light:#DEEDF9; --dsv-light2:#92C5EB; --dsv-muted:#606060;
  --bs-primary:#2A89CF; --bs-primary-rgb:42,137,207;
  --bs-link-color:#2A89CF; --bs-link-hover-color:#1f6ca8;
}

body, .ls-js, .question-container, .btn, .form-control, .form-select, h1,h2,h3,h4,h5,h6 {
  font-family:'Open Sans', Arial, Helvetica, sans-serif !important;
}

/* ---- Primärfarbe: Buttons / Links ---- */
.btn-primary, .btn-primary:focus{
  background-color:var(--dsv)!important; border-color:var(--dsv)!important; color:#fff!important;
}
.btn-primary:hover, .btn-primary:active{
  background-color:var(--dsv-dark)!important; border-color:var(--dsv-dark)!important;
}
.btn-outline-primary{ color:var(--dsv)!important; border-color:var(--dsv)!important; }
.btn-outline-primary:hover{ background-color:var(--dsv)!important; color:#fff!important; }
a, a:visited{ color:var(--dsv); }
a:hover{ color:var(--dsv-dark); }

/* ---- Ausgewählte Antworten (Radio/Checkbox) in DSV-Blau ---- */
.answer-item input:checked + label,
.ls-answers input:checked + label,
.checkbox-item input:checked + label,
.radio-item input:checked + label{ color:var(--dsv-dark); }
.form-check-input:checked{ background-color:var(--dsv)!important; border-color:var(--dsv)!important; }
.list-question-select .ls-answers label:hover{ border-color:var(--dsv-light2); }

/* ---- Überschriften / Gruppentitel ---- */
.group-title, .ls-group-title, h1, h2{ color:var(--dsv-dark); }
.group-title{ border-left:4px solid var(--dsv); padding-left:10px; }

/* ============================================================
   Prominenter Fortschrittsbalken (progress_bar.twig override)
   ============================================================ */
.dsv-progress-head{
  display:flex; justify-content:space-between; align-items:baseline;
  margin:6px 2px 7px;
}
.dsv-progress-title{
  font-size:13px; font-weight:600; text-transform:uppercase; letter-spacing:.05em;
  color:var(--dsv-dark);
}
.dsv-progress-pct{
  font-size:16px; font-weight:700; color:var(--dsv); font-variant-numeric:tabular-nums;
}
#progressbar-top .progress{
  height:20px !important; border-radius:11px;
  background-color:var(--dsv-light)!important;
  box-shadow:inset 0 1px 3px rgba(0,0,0,.10);
  overflow:hidden;
}
#progressbar-top .progress-bar{
  background-color:var(--dsv)!important;
  background-image:linear-gradient(90deg, var(--dsv-light2) 0%, var(--dsv) 45%, var(--dsv-dark) 100%);
  border-radius:11px;
  box-shadow:0 1px 2px rgba(31,108,168,.4);
  transition:width .45s ease;
}

/* ============================================================
   Kopfleiste: DSV-Logo links, DJM26-Logo rechts
   ============================================================ */
#survey-nav.navbar{
  background:#fff!important; border-bottom:3px solid var(--dsv);
  box-shadow:0 1px 6px rgba(0,0,0,.06);
}
.dsv-logo-container{
  display:flex!important; align-items:center; justify-content:space-between;
  width:100%; gap:16px;
}
.dsv-brand{
  display:inline-block; height:48px; width:110px;
  background:url('../files/dsv-logo.png') no-repeat left center; background-size:contain;
}
.djm-brand{
  display:inline-block; height:54px; width:54px;
  background:url('../files/djm26-logo.png') no-repeat right center; background-size:contain;
}

/* ============================================================
   Sponsorenfuß (footer.twig override)
   ============================================================ */
.dsv-footer{
  background:#fff; border-top:1px solid #e3e8ee;
  padding:22px 16px 28px; margin-top:28px;
}
.dsv-footer-inner{ max-width:880px; margin:0 auto; text-align:center; }
.dsv-sponsors-label{
  font-size:12px; letter-spacing:.06em; text-transform:uppercase;
  color:var(--dsv-muted); margin-bottom:14px;
}
.dsv-sponsors{
  height:48px; max-width:780px; margin:0 auto;
  background:url('../files/dsv-sponsors.png') no-repeat center; background-size:contain;
}
.dsv-imprint{ font-size:11px; color:#9aa3ab; margin-top:16px; }

@media (max-width:600px){
  .dsv-brand{ height:38px; width:86px; }
  .djm-brand{ height:42px; width:42px; }
  .dsv-sponsors{ height:38px; }
  #progressbar-top .progress{ height:16px !important; }
}
