/* Selbsttest Glücksspielverhalten nach ICD-11 — EMBED-Version für ocd.de
   Alle Regeln unter #st-wrap gekapselt, damit das Tool das Theme nicht beeinflusst
   und umgekehrt vom Theme-CSS (z.B. .with-sidebar) nicht verbogen wird.
   :root-Variablen sind reine Definitionen (kein visueller Leak ins Theme). */

:root{
  --st-navy:#0A1633;
  --st-ink:#222A3D;
  --st-muted:#5C667A;
  --st-blue:#0077FF;
  --st-blue-deep:#0058BD;
  --st-blue-soft:#EAF3FF;
  --st-bg:#F3F5FA;
  --st-card:#FFFFFF;
  --st-border:#E2E8F2;
  --st-ok:#1F8A5D;
  --st-ok-soft:#E6F5EE;
  --st-warn:#9A6310;
  --st-warn-strong:#D98E1F;
  --st-warn-soft:#FCF2DF;
  --st-alert:#B43838;
  --st-alert-soft:#FBECEC;
  --st-radius:16px;
  --st-shadow:0 10px 30px rgba(10,22,51,.07), 0 2px 6px rgba(10,22,51,.05);
  --st-font-title:'Merriweather','Georgia',serif;
  --st-font-body:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen-Sans,Ubuntu,Cantarell,'Helvetica Neue',sans-serif;
}

#st-wrap *{box-sizing:border-box}

#st-wrap{
  font-family:var(--st-font-body);
  color:var(--st-ink);
  background:
    radial-gradient(1100px 500px at 85% -150px, rgba(0,119,255,.08), transparent 60%),
    radial-gradient(900px 420px at -10% 10%, rgba(10,22,51,.05), transparent 55%),
    var(--st-bg);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  border:1px solid var(--st-border);
  border-radius:18px;
  overflow:hidden;
  margin:10px 0 28px;
}
#st-wrap .st-anchor{display:block;position:relative;top:-90px;height:0;visibility:hidden}
#st-wrap .intro-head{max-width:860px;margin:0 auto;padding:30px 20px 22px}
#st-wrap .intro-head .lead{margin-bottom:0}
/* Einleitung ausblenden, sobald der Test läuft (kein doppelter Titel über den Fragen) */
#st-wrap.st-started .intro-head{display:none}

/* Überschriften: !important + ID-Scope, damit aggressive Theme-Regeln
   wie .rds .with-sidebar h2 (ggf. mit !important) das Tool nicht verbiegen. */
#st-wrap h1,#st-wrap h2,#st-wrap h3{font-family:var(--st-font-title) !important;color:var(--st-navy) !important;line-height:1.25 !important;text-align:left !important;margin:0 0 .5em}
#st-wrap h1{font-size:clamp(1.7rem,4vw,2.4rem);font-weight:900}
#st-wrap h2{font-size:clamp(1.3rem,3vw,1.7rem);font-weight:700}
#st-wrap h3{font-size:1.08rem;font-weight:700}
/* Theme-section-Padding (.rds section) auf den Tool-Screens neutralisieren */
#st-wrap .screen,#st-wrap .topbar{padding-top:0;padding-bottom:0}

/* ---------- Fortschrittsleiste (nicht sticky im Embed) ---------- */
#st-wrap .topbar{
  background:rgba(255,255,255,.92);
  border-bottom:1px solid var(--st-border);
}
#st-wrap .topbar-inner{
  max-width:860px;margin:0 auto;padding:14px 20px;
  display:flex;align-items:center;gap:16px;
}
#st-wrap .topbar-label,#st-wrap .topbar-step{
  font-size:.82rem;font-weight:600;color:var(--st-muted);white-space:nowrap;
  font-variant-numeric:tabular-nums;
}
#st-wrap .progress{
  flex:1;height:10px;border-radius:99px;background:#E6EBF4;overflow:hidden;
}
#st-wrap .progress-fill{
  height:100%;width:0%;
  background:linear-gradient(90deg,var(--st-blue-deep),var(--st-blue));
  border-radius:99px;
  transition:width .45s cubic-bezier(.22,.8,.35,1);
}

/* ---------- Grundgerüst ---------- */
#st-wrap .stage{max-width:860px;margin:0 auto;padding:32px 20px 44px}
#st-wrap .screen{animation:st-fadeUp .45s ease both}
@keyframes st-fadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

#st-wrap .card{
  background:var(--st-card);
  border:1px solid var(--st-border);
  border-radius:var(--st-radius);
  box-shadow:var(--st-shadow);
  padding:34px 38px;
}
@media(max-width:600px){#st-wrap .card{padding:24px 18px}}

/* ---------- Intro ---------- */
#st-wrap .card-intro{max-width:720px;margin:0 auto}
#st-wrap .kicker{
  display:inline-block;
  font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:var(--st-blue-deep);
  background:var(--st-blue-soft);
  padding:5px 12px;border-radius:99px;margin:0 0 16px;
}
#st-wrap .lead{font-size:1.06rem;color:var(--st-ink)}
#st-wrap .intro-facts{list-style:none;margin:26px 0;padding:0;display:grid;gap:14px}
#st-wrap .intro-facts li{
  display:flex;gap:14px;align-items:flex-start;
  background:#F8FAFD;border:1px solid var(--st-border);
  border-radius:12px;padding:14px 16px;
}
#st-wrap .fact-icon{flex:none;width:38px;height:38px;border-radius:10px;background:var(--st-blue-soft);color:var(--st-blue-deep);display:grid;place-items:center}
#st-wrap .fact-icon svg{width:20px;height:20px}
#st-wrap .disclaimer{font-size:.85rem;color:var(--st-muted);margin-top:18px}

/* ---------- Buttons ---------- */
#st-wrap .btn{
  font-family:var(--st-font-body);
  font-size:1rem;font-weight:700;
  border-radius:12px;border:2px solid transparent;
  padding:13px 28px;cursor:pointer;
  transition:transform .12s ease, box-shadow .12s ease, background .12s ease;
}
#st-wrap .btn:active{transform:translateY(1px)}
#st-wrap .btn-primary{
  background:var(--st-blue);color:#fff;
  box-shadow:0 6px 18px rgba(0,119,255,.30);
}
#st-wrap .btn-primary:hover{background:var(--st-blue-deep)}
#st-wrap .btn-primary:disabled{
  background:#B9C6DA;box-shadow:none;cursor:not-allowed;
}
#st-wrap .btn-big{width:100%;padding:16px 28px;font-size:1.08rem}
#st-wrap .btn-ghost{
  background:transparent;color:var(--st-blue-deep);border-color:var(--st-border);
}
#st-wrap .btn-ghost:hover{border-color:var(--st-blue);background:var(--st-blue-soft)}
#st-wrap .nav-row{display:flex;justify-content:space-between;gap:14px;margin-top:28px}
#st-wrap .nav-row .btn{min-width:140px}
@media(max-width:600px){#st-wrap .nav-row{flex-direction:column-reverse}#st-wrap .nav-row .btn{width:100%}}

/* ---------- Fragebereiche ---------- */
#st-wrap .section-head{margin:8px 0 22px}
#st-wrap .section-head .kicker{margin-bottom:10px}
#st-wrap .section-head p{color:var(--st-muted);max-width:640px;margin:.3em 0 0}

#st-wrap .item{
  background:var(--st-card);
  border:1px solid var(--st-border);
  border-radius:var(--st-radius);
  box-shadow:var(--st-shadow);
  padding:22px 26px;
  margin-bottom:16px;
  transition:border-color .2s ease;
}
#st-wrap .item.answered{border-color:#BFD9FF}
#st-wrap .item-text{font-size:1.04rem;font-weight:600;color:var(--st-navy);margin:0 0 14px}
#st-wrap .item-number{
  display:inline-grid;place-items:center;
  width:26px;height:26px;border-radius:8px;
  background:var(--st-blue-soft);color:var(--st-blue-deep);
  font-size:.8rem;font-weight:800;margin-right:10px;
  vertical-align:2px;
}

#st-wrap .scale{display:flex;gap:8px;flex-wrap:wrap}
#st-wrap .scale label{
  flex:1;min-width:86px;
  text-align:center;
  border:2px solid var(--st-border);
  border-radius:11px;
  padding:10px 6px;
  font-size:.92rem;font-weight:600;color:var(--st-muted);
  cursor:pointer;user-select:none;
  transition:all .14s ease;
}
#st-wrap .scale label:hover{border-color:#AECBFF;color:var(--st-blue-deep)}
#st-wrap .scale input{position:absolute;opacity:0;pointer-events:none}
#st-wrap .scale input:focus-visible+span{outline:3px solid rgba(0,119,255,.45);outline-offset:2px;border-radius:8px}
#st-wrap .scale label.checked{
  border-color:var(--st-blue);
  background:var(--st-blue-soft);
  color:var(--st-blue-deep);
  box-shadow:inset 0 0 0 1px var(--st-blue);
}

/* Mehrfachauswahl */
#st-wrap .choices{display:grid;gap:10px}
#st-wrap .choices label{
  display:flex;align-items:center;gap:12px;
  border:2px solid var(--st-border);border-radius:11px;
  padding:12px 16px;font-weight:600;color:var(--st-ink);
  cursor:pointer;transition:all .14s ease;
}
#st-wrap .choices label:hover{border-color:#AECBFF}
#st-wrap .choices label.checked{border-color:var(--st-blue);background:var(--st-blue-soft);color:var(--st-blue-deep)}
#st-wrap .choices input{position:absolute;opacity:0;pointer-events:none}
#st-wrap .choices input:focus-visible+.box{outline:3px solid rgba(0,119,255,.45);outline-offset:2px}
#st-wrap .choices .box{
  width:20px;height:20px;flex:none;border-radius:6px;
  border:2px solid #C2CDDE;display:grid;place-items:center;
  font-size:.75rem;color:#fff;background:#fff;
}
#st-wrap .choices label.checked .box{background:var(--st-blue);border-color:var(--st-blue)}
#st-wrap .choices .box.round{border-radius:99px}

/* ---------- Auswertung ---------- */
#st-wrap .zone-banner{
  border-radius:var(--st-radius);
  padding:28px 32px;
  margin-bottom:22px;
  border:1px solid;
  box-shadow:var(--st-shadow);
}
#st-wrap .zone-banner h2{margin-bottom:.35em}
#st-wrap .zone-banner p{margin:.3em 0 0;max-width:680px}
#st-wrap .zone-1{background:var(--st-ok-soft);border-color:#BFE5D2}
#st-wrap .zone-1 h2{color:var(--st-ok) !important}
#st-wrap .zone-2{background:var(--st-warn-soft);border-color:#EFD9AC}
#st-wrap .zone-2 h2{color:var(--st-warn) !important}
#st-wrap .zone-3{background:var(--st-alert-soft);border-color:#EFC4C4}
#st-wrap .zone-3 h2{color:var(--st-alert) !important}
#st-wrap .zone-tag{
  display:inline-block;font-size:.78rem;font-weight:800;
  letter-spacing:.07em;text-transform:uppercase;
  padding:4px 11px;border-radius:99px;margin-bottom:12px;
}
#st-wrap .zone-1 .zone-tag{background:#CFEDDD;color:var(--st-ok)}
#st-wrap .zone-2 .zone-tag{background:#F6E3BC;color:var(--st-warn)}
#st-wrap .zone-3 .zone-tag{background:#F4D2D2;color:var(--st-alert)}

#st-wrap .profile{margin-bottom:22px}
#st-wrap .profile-row{
  display:grid;grid-template-columns:150px 1fr 118px;
  gap:16px;align-items:center;padding:13px 0;
  border-bottom:1px solid var(--st-border);
}
#st-wrap .profile-row:last-child{border-bottom:none}
@media(max-width:600px){#st-wrap .profile-row{grid-template-columns:1fr 90px;gap:8px}#st-wrap .profile-row .bar{grid-column:1 / -1}}
#st-wrap .profile-row .dim{font-weight:700;color:var(--st-navy)}
#st-wrap .profile-row .dim small{display:block;font-weight:500;color:var(--st-muted);font-size:.78rem}
#st-wrap .bar{height:12px;border-radius:99px;background:#E8EDF5;overflow:hidden}
#st-wrap .bar i{display:block;height:100%;border-radius:99px;transition:width .8s cubic-bezier(.22,.8,.35,1)}
#st-wrap .lvl-0 i{background:#9FC9AF}
#st-wrap .lvl-1 i{background:var(--st-warn-strong)}
#st-wrap .lvl-2 i{background:#C95252}
#st-wrap .chip{
  justify-self:end;
  font-size:.8rem;font-weight:700;
  padding:4px 12px;border-radius:99px;white-space:nowrap;
}
#st-wrap .chip-0{background:var(--st-ok-soft);color:var(--st-ok)}
#st-wrap .chip-1{background:var(--st-warn-soft);color:var(--st-warn)}
#st-wrap .chip-2{background:var(--st-alert-soft);color:var(--st-alert)}

#st-wrap .detail-card{margin-bottom:16px}
#st-wrap .detail-card h3{display:flex;align-items:center;gap:10px}
#st-wrap .detail-card p{margin:.4em 0 0;color:var(--st-ink)}
#st-wrap .detail-card .meta{font-size:.85rem;color:var(--st-muted);margin-top:10px}

#st-wrap .icd-note{
  background:#F8FAFD;border:1px solid var(--st-border);border-radius:12px;
  padding:16px 20px;margin:18px 0;font-size:.93rem;color:var(--st-muted);
}
#st-wrap .icd-note strong{color:var(--st-navy)}

/* Tipps zum Ausklappen */
#st-wrap .tips{margin:26px 0}
#st-wrap .tips>h2{margin-bottom:14px}
#st-wrap details.tip{
  background:var(--st-card);border:1px solid var(--st-border);
  border-radius:12px;margin-bottom:10px;overflow:hidden;
}
#st-wrap details.tip summary{
  list-style:none;cursor:pointer;
  padding:16px 20px;font-weight:700;color:var(--st-navy);
  display:flex;align-items:center;gap:12px;
  transition:background .15s ease;
}
#st-wrap details.tip summary::-webkit-details-marker{display:none}
#st-wrap details.tip summary:hover{background:#F6F9FD}
#st-wrap details.tip summary .arrow{
  margin-left:auto;flex:none;color:var(--st-blue);
  transition:transform .25s ease;
  width:18px;height:18px;display:grid;place-items:center;
}
#st-wrap details.tip summary .arrow svg{width:18px;height:18px}
#st-wrap details.tip[open] summary .arrow{transform:rotate(180deg)}
#st-wrap details.tip .tip-body{padding:2px 20px 18px;color:var(--st-ink)}
#st-wrap details.tip .tip-body p{margin:.5em 0}
#st-wrap details.tip .tip-body ul{margin:.5em 0;padding-left:20px}
#st-wrap .tip-icon{
  flex:none;width:32px;height:32px;border-radius:9px;
  background:var(--st-blue-soft);color:var(--st-blue-deep);
  display:grid;place-items:center;
}
#st-wrap .tip-icon svg{width:17px;height:17px}

#st-wrap .result-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}
#st-wrap .result-actions .btn{flex:1;min-width:220px}

#st-wrap .toolfoot{
  max-width:860px;margin:0 auto;padding:4px 20px 28px;
  font-size:.8rem;color:var(--st-muted);
}

/* ---------- Druckbefund ---------- */
/* #st-report wird per JS direkt unter <body> gehängt. Beim Drucken klappen alle
   anderen direkten body-Kinder per display:none ein → keine leeren Druckseiten. */
#st-report{display:none}
@media print{
  html,body{height:auto !important;min-height:0 !important;}
  body > *:not(#st-report){display:none !important;}
  #st-report{
    display:block !important;
    position:static;width:auto;
    font-family:var(--st-font-body);color:#111;
    max-width:680px;margin:0 auto;font-size:11pt;line-height:1.5;
  }
  #st-report h1{font-size:16pt;margin-bottom:2pt}
  #st-report .rep-sub{color:#444;margin:0 0 14pt;font-size:10pt}
  #st-report h2{font-size:12.5pt;margin:14pt 0 4pt;border-bottom:1px solid #999;padding-bottom:2pt}
  #st-report table{width:100%;border-collapse:collapse;margin:6pt 0}
  #st-report th,#st-report td{text-align:left;padding:4pt 6pt;border-bottom:1px solid #ddd;vertical-align:top}
  #st-report th{font-size:9.5pt;text-transform:uppercase;letter-spacing:.04em;color:#555}
  #st-report .rep-zone{font-weight:700}
  #st-report ul{margin:4pt 0;padding-left:16pt}
  #st-report .rep-foot{margin-top:16pt;font-size:9pt;color:#555;border-top:1px solid #999;padding-top:6pt}
}
