/* R45 registration/login UI. Scoped to avoid altering existing shop or portal. */
.pwr45-reg{max-width:780px;margin:32px auto 64px;padding:0 12px;color:#233446}
.pwr45-heading{text-align:center;margin:0 auto 24px;max-width:680px}
.pwr45-kicker{letter-spacing:.13em;font-size:.72rem;font-weight:800;color:#167d91;margin:0 0 9px}
.pwr45-heading h1,.pwr45-login h1{font-size:clamp(1.55rem,3vw,2.2rem);margin:0 0 10px}
.pwr45-heading p,.pwr45-login p{line-height:1.6;color:#5b6b7b}
.pwr45-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 20px}
.pwr45-steps span{border:1px solid #e1e8ec;background:#f5f7f8;border-radius:10px;padding:12px 10px;text-align:center;color:#687f8f;font-size:.9rem;font-weight:650}
.pwr45-steps span.active{background:#e8f5f7;color:#12687c;border-color:#b3dce2}
.pwr45-form{max-width:710px;margin:auto}
.pwr45-form label{line-height:1.45}.pwr45-form input,.pwr45-form select{width:100%;max-width:100%;box-sizing:border-box}
.pwr45-form small{display:block;color:#728491;margin-top:6px}
.pwr45-two{display:grid;grid-template-columns:1fr 1.7fr;gap:14px}
.pwr45-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:10px}
/* R47: dezente 20x20-Checkbox; weiterhin gut klickbar. */
/* R46: gut sichtbare Checkbox und grosser, durch das label bedienbarer Klickbereich. */
.pwr45-form label.pwr45-check{
  display:flex!important;
  flex-direction:row!important;
  align-items:flex-start!important;
  gap:14px;
  min-height:44px;
  padding:10px 0;
  line-height:1.6;
  cursor:pointer;
}
.pwr45-form label.pwr45-check > input[type="checkbox"]{
  appearance:auto!important;
  -webkit-appearance:checkbox!important;
  box-sizing:border-box!important;
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  min-height:20px!important;
  max-width:20px!important;
  flex:0 0 20px!important;
  margin:0!important;
  padding:0!important;
  accent-color:#12687c;
  cursor:pointer;
}
.pwr45-form label.pwr45-check > input[type="checkbox"]:focus-visible{
  outline:3px solid #2e91a7;
  outline-offset:3px;
}
.pwr45-form label.pwr45-check > span{flex:1;min-width:0}
.pwr45-honey{position:absolute!important;left:-9999px!important;height:1px!important;opacity:0}
.pwr45-summary{padding:14px 16px;background:#f4f7f9;border-radius:10px;display:flex;flex-direction:column;gap:5px}
.pwr45-summary span{color:#637587}
.pwr45-footer{text-align:center;margin:20px 0}
.pwr45-success .pws-panel{padding:30px}
.pwr45-login{max-width:940px;margin:36px auto 64px;display:grid;grid-template-columns:1.2fr .85fr;gap:24px;align-items:start;padding:0 12px}
.pwr45-login-card{padding:30px}
.pwr45-new{background:#f3f7f9;border:1px solid #e4eaef;padding:28px;border-radius:16px;display:flex;flex-direction:column;gap:12px}
.pwr45-new h2{margin:0;font-size:1.35rem}.pwr45-new p{margin:0}.pwr45-new small{color:#6a7c88}
@media(max-width:720px){.pwr45-steps{grid-template-columns:1fr}.pwr45-two,.pwr45-login{grid-template-columns:1fr}.pwr45-actions{flex-wrap:wrap}.pwr45-form{padding:20px}}
