/* RecruitFast Creator Portal 1.2
   Macht das Portal robust gegen schmale WordPress-Theme-Container. */

body:has(.rfcp-shell),
body:has(.rfcp-profile) {
  overflow-x: hidden;
}

body:has(.rfcp-shell) .wp-block-post-title,
body:has(.rfcp-profile) .wp-block-post-title,
body:has(.rfcp-shell) .entry-header,
body:has(.rfcp-profile) .entry-header,
body:has(.rfcp-shell) .page-header,
body:has(.rfcp-profile) .page-header {
  display: none !important;
}

body:has(.rfcp-shell) main,
body:has(.rfcp-profile) main,
body:has(.rfcp-shell) .entry-content,
body:has(.rfcp-profile) .entry-content,
body:has(.rfcp-shell) .wp-block-post-content,
body:has(.rfcp-profile) .wp-block-post-content,
body:has(.rfcp-shell) .wp-block-shortcode,
body:has(.rfcp-profile) .wp-block-shortcode {
  max-width: none !important;
  width: 100% !important;
  margin-block: 0 !important;
  padding-block: 0 !important;
}

body:has(.rfcp-shell) .wp-block-group:has(.rfcp-shell),
body:has(.rfcp-profile) .wp-block-group:has(.rfcp-profile),
body:has(.rfcp-shell) .is-layout-constrained:has(> .wp-block-shortcode),
body:has(.rfcp-profile) .is-layout-constrained:has(> .wp-block-shortcode) {
  display: block !important;
  min-height: 0 !important;
  max-width: none !important;
  width: 100% !important;
  margin-block: 0 !important;
  padding-block: 0 !important;
}

.rfcp-shell,
.rfcp-shell *,
.rfcp-profile,
.rfcp-profile *,
.rfcp-showcase,
.rfcp-showcase * {
  font-family: Inter, Arial, Helvetica, sans-serif !important;
}

/* Die Container-Regeln oben nehmen dem Theme die Breitenbegrenzung.
   Deshalb genügt hier eine zentrierte Breite. Der frühere Trick mit
   100vw und translateX hat am Telefon seitliches Scrollen erzeugt,
   weil 100vw die Bildlaufleiste mitzählt. */
.rfcp-shell {
  width: 100% !important;
  max-width: 1440px !important;
  margin: 18px auto 60px !important;
  padding: 54px clamp(20px, 5vw, 80px);
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr) !important;
  gap: clamp(44px, 6vw, 90px) !important;
  border-radius: 20px;
  background: #f7f4ee;
}

.rfcp-profile {
  width: 100% !important;
  max-width: 1280px !important;
  margin: 22px auto 75px !important;
  padding-inline: clamp(16px, 3vw, 32px);
}

/* Rasterkinder dürfen ihre Spalte nicht sprengen. */
.rfcp-shell > *,
.rfcp-auth > * {
  min-width: 0;
  max-width: 100%;
}

.rfcp-intro {
  align-self: center;
  padding: 20px 0 !important;
}

.rfcp-intro h1,
.rfcp-profile h1,
.rfcp-showcase h1 {
  font-family: Inter, Arial, Helvetica, sans-serif !important;
  font-weight: 900 !important;
  letter-spacing: -.055em !important;
}

/* Zweispaltiges Registrierungsformular, alles Breite spannt ueber beide Spalten. */
.rfcp-auth {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4px 18px;
  width: 100% !important;
  max-width: 680px !important;
  padding: 34px !important;
}

.rfcp-auth > .rfcp-check,
.rfcp-auth > .rfcp-btn,
.rfcp-auth > .rfcp-switch,
.rfcp-auth > .rfcp-legend,
.rfcp-auth > .rfcp-field--wide,
.rfcp-auth > .rfcp-alert,
.rfcp-auth > .rfcp-hp,
.rfcp-auth > p,
.rfcp-auth > ul,
.rfcp-auth > form,
.rfcp-auth > h2,
.rfcp-auth > h3,
.rfcp-auth > button {
  grid-column: 1 / -1;
}

.rfcp-login,
.rfcp-panel {
  grid-template-columns: 1fr;
}

.rfcp-authbox {
  width: 100%;
  max-width: 680px;
}

.rfcp-auth input:not([type="checkbox"]):not([type="file"]),
.rfcp-step input:not([type="checkbox"]):not([type="file"]),
.rfcp-step textarea {
  width: 100% !important;
  min-width: 0 !important;
  font-size: 16px !important;
}

/* Hinweise bleiben im Fluss. Die frühere Vollbreiten-Positionierung hat
   sie als Rasterzelle behandelt und Headline und Formular verschoben. */
.rfcp-alert {
  position: static !important;
  left: auto !important;
  width: 100% !important;
  transform: none !important;
}

.rfcp-shell > .rfcp-alert,
.rfcp-shell > .rfcp-errorlist {
  grid-column: 1 / -1 !important;
}

@media (max-width: 980px) {
  .rfcp-shell {
    grid-template-columns: 1fr !important;
    padding: 38px 28px;
  }
  .rfcp-auth,
  .rfcp-authbox {
    max-width: none !important;
  }
}

@media (max-width: 620px) {
  .rfcp-shell {
    padding: 28px 16px;
  }
  .rfcp-auth {
    grid-template-columns: 1fr;
    padding: 22px !important;
  }
  .rfcp-auth > * {
    grid-column: 1 !important;
  }
}
