/*
Theme Name: Reign Child
Template: reign-theme
Version: 1.0
*/

/* — Wunsch-CSS — */
.ps-hashtag--size100 { font-size: 150%; }

/* ===== take4root – Registrierungsseite (Page-ID 18) ===== */

/* Partnerfelder initial ausblenden */
body.page-id-18 .ps-form--register [data-field-id="4196"],
body.page-id-18 .ps-form--register [data-field-id="4197"],
body.page-id-18 .ps-form--register [data-field-id="4198"],
body.page-id-18 .ps-form--register [data-field-id="4199"] {
  display: none !important;
}

/* Feld-Beschreibungen ausblenden */
body.page-id-18 .ps-form--register .ps-form__field-desc,
body.page-id-18 .ps-form--register .ps-form__desc,
body.page-id-18 .ps-form--register .description {
  display: none !important;
}

/* Eingabefelder hell & lesbar (Textarea separat geregelt) */
body.page-id-18 .ps-form--register select,
body.page-id-18 .ps-form--register input[type="text"],
body.page-id-18 .ps-form--register input[type="email"],
body.page-id-18 .ps-form--register input[type="password"],
body.page-id-18 .ps-form--register input[type="url"],
body.page-id-18 .ps-form--register input[type="number"] {
  background: #fff !important;
  color: #111 !important;
  border: 1px solid #bbb;
  border-radius: 8px;
  height: 44px;
}
body.page-id-18 .ps-form--register textarea {
  background: #fff !important;
  color: #111 !important;
  border: 1px solid #bbb;
  border-radius: 8px;
  min-height: 96px; /* Textareas nicht quetschen */
}

/* Allgemeine Label-Farbe im Formular (Checkboxen weiter unten überschrieben) */
body.page-id-18 .ps-form--register label { color: #eaeaea; }

/* Registrieren-Button (Markenrot) */
body.page-id-18 .ps-form--register button[type="submit"],
body.page-id-18 .ps-form--register .ps-btn--primary {
  background: #e10600 !important;
  border-color: #e10600 !important;
  color: #fff !important;
  border-radius: 26px;
  padding: 10px 18px;
}
body.page-id-18 .ps-form--register button[type="submit"]:hover,
body.page-id-18 .ps-form--register .ps-btn--primary:hover {
  filter: brightness(0.95);
}

/* Pflicht-Inputs (Rahmen rot – ohne Sternchen) */
body.page-id-18 .ps-form--register .t4r-required 
:is(input[required], select[required], textarea[required]) {
  border-color: #e10600 !important;
}

/* Erste Zeile: 2 Spalten nebeneinander (Flex-Variante, konsolidiert) */
body.page-id-18 .ps-form--register .t4r-row-first { 
  display: flex; 
  gap: 24px; 
  align-items: flex-start; 
}
body.page-id-18 .ps-form--register .t4r-col-6 { 
  flex: 1 1 0; 
}
@media (max-width: 768px){
  body.page-id-18 .ps-form--register .t4r-row-first { display: block; }
  body.page-id-18 .ps-form--register .t4r-col-6 { width: 100%; }
}

/* Checkboxen & Links deutlich (einmalig, ohne Duplikate) */
body.page-id-18 .ps-form--register .ps-checkbox label { 
  color: #fff !important; 
}
/* <— Änderung: keine feste weiße Linkfarbe mehr, nur Unterstreichung */
body.page-id-18 .ps-form--register .ps-checkbox a { 
  text-decoration: underline; 
}
body.page-id-18 .ps-form--register .ps-checkbox input[type="checkbox"]{
  accent-color: #e11b22; /* Markenrot */
  width: 18px; 
  height: 18px;
}

/* === Profiltyp links, Benutzername rechts – ½ Breite (exakt 50%) === */
@supports selector(.x:has(*)) {
  /* Profiltyp (ID am <select>) – links, ½ */
  body.page-id-18 .ps-form--register
  .ps-form__row:has(select[data-field-id="4195"]),
  body.page-id-18 .ps-form--register
  .ps-form__row:has(#profile_field_4195) {
    order: -20;
    flex: 0 0 50% !important;
    max-width: 50% !important;
    width: 50% !important;
  }

  /* Benutzername – rechts, ½ */
  body.page-id-18 .ps-form--register
  .ps-form__row:has(input#user_login, input[name="user_login"], input#username, input[name="username"]) {
    order: -10;
    flex: 0 0 50% !important;
    max-width: 50% !important;
    width: 50% !important;
  }

  /* Innerer Field-Wrapper im Username-Row nicht zusätzlich schmälern */
  body.page-id-18 .ps-form--register
  .ps-form__row:has(input#user_login, input[name="user_login"], input#username, input[name="username"]) 
  .ps-form__field {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }

  /* Controls in den halbbreiten Zeilen auf volle Breite */
  body.page-id-18 .ps-form--register
  .ps-form__row:has(select[data-field-id="4195"]) select,
  body.page-id-18 .ps-form--register
  .ps-form__row:has(#profile_field_4195) select,
  body.page-id-18 .ps-form--register
  .ps-form__row:has(input#user_login, input[name="user_login"], input#username, input[name="username"]) input {
    width: 100% !important;
    box-sizing: border-box;
  }
}

/* Mobil: Profiltyp & Benutzername wieder 100% breit, normale Reihenfolge */
@media (max-width: 768px){
  @supports selector(.x:has(*)) {
    body.page-id-18 .ps-form--register
    .ps-form__row:has(select[data-field-id="4195"]),
    body.page-id-18 .ps-form--register
    .ps-form__row:has(#profile_field_4195),
    body.page-id-18 .ps-form--register
    .ps-form__row:has(input#user_login, input[name="user_login"], input#username, input[name="username"]) {
      order: initial;
      flex: 0 0 100% !important;
      max-width: 100% !important;
      width: 100% !important;
    }
  }
}

/* Registrierungsseite: roten Stern für jede Zeile mit required-Feld anzeigen */
@supports selector(.x:has(*)) {
  body.page-id-18 .ps-form--register 
  .ps-form__row:has(:is(input[required], select[required], textarea[required]))
  :is(.ps-form__label, label):not(:has(.required)):not(:has(.ps-form__required))::after {
    content: " *";
    color: #e10600;            /* dein Markenrot */
    margin-left: .25em;
    font-weight: 600;
  }
}

/* Falls PeepSo eigene Sternchen-Elemente hat, gleich einfärben/vereinheitlichen */
body.page-id-18 .ps-form--register .required,
body.page-id-18 .ps-form--register .ps-form__required {
  color: #e10600 !important;
}

/* Dirty Gomez */


@supports selector(.x:has(*)) {
  /* Basis: Kasten */
  body.page-id-18 .ps-form--register .ps-checkbox :is(.ps-form__label, label) {
    position: relative;               /* Referenz für ::after */
    display: inline-flex;
    align-items: center;
    gap: 8px;                         /* Abstand Text <-> Kasten */
  }

  body.page-id-18 .ps-form--register .ps-checkbox :is(.ps-form__label, label)::before {
    content: "";
    width: 16px;
    height: 16px;
    border: 2px solid #fff;           /* weißer Rahmen */
    border-radius: 4px;
    background: transparent;
    box-sizing: border-box;
    flex: 0 0 auto;
    box-shadow: none !important;      /* ✅ Schatten vollständig entfernt */
  }

  /* Haken: unsichtbar im Normalzustand */
  body.page-id-18 .ps-form--register .ps-checkbox :is(.ps-form__label, label)::after {
    content: "";
    position: absolute;
    /* Position im Kasten (überlagert ::before) */
    left: 4px;
    top: 50%;
    width: 6px;
    height: 10px;
    border-right: 2px solid #fff;     /* weißer Haken */
    border-bottom: 2px solid #fff;
    transform: translateY(-55%) rotate(45deg);
    opacity: 0;                       /* zuerst versteckt */
    pointer-events: none;
  }

  /* Nur wenn das Input gecheckt ist, Haken zeigen */
  body.page-id-18 .ps-form--register .ps-checkbox:has(input[type="checkbox"]:checked)
    :is(.ps-form__label, label)::after {
    opacity: 1;
  }

  /* Falls das native Checkbox-Input sichtbar stört: ausblenden */
  body.page-id-18 .ps-form--register .ps-checkbox input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
    pointer-events: none;
    box-shadow: none !important;      /* Sicherstellen, dass Input selbst keinen Schatten hat */
  }
}


/* Dirty Gomez ENDE */


/*@supports selector(.x:has(*)) {
  body.page-id-18 .ps-form--register .ps-checkbox :is(.ps-form__label, label)::before,
  body.page-id-18 .ps-form--register .ps-checkbox :is(.ps-form__label, label)::after {
  content: none !important; 

  }
} */
/* Registrierungsseite: AGB/Datenschutz-Links immer hell */
body.page-id-18 .ps-form--register .ps-checkbox label a,
body.page-id-18 .ps-form--register .ps-checkbox a:link,
body.page-id-18 .ps-form--register .ps-checkbox a:visited,
body.page-id-18 .ps-form--register label a[href*="datenschutz"],
body.page-id-18 .ps-form--register label a[href*="nutzungsbedingungen"],
body.page-id-18 .ps-form--register label a[href*="privacy"],
body.page-id-18 .ps-form--register label a[href*="terms"] {
  color: #1d76da !important;
  opacity: 1 !important;        /* falls das Theme die Links "abblendet" */
  text-decoration: underline;
  text-underline-offset: 2px;
}
