/* ========================================================================== */
/* GOTAVA Atelier v2.11.29 — Noble registration + article share              */
/* Loaded after v2.11.28. All selectors are deliberately page-scoped.        */
/* ========================================================================== */

/* -------------------------------------------------------------------------- */
/* 1. Registration page                                                       */
/* -------------------------------------------------------------------------- */

html body.atelier_register_active .pkp_structure_content,
html body .page_register.atelier_register_page {
  box-sizing: border-box !important;
}

html body .page_register.atelier_register_page {
  width: calc(100% - 24px) !important;
  max-width: var(--atelier-noble-frame, 1240px) !important;
  margin: 14px auto 30px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

html body .atelier_register_layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 290px !important;
  gap: 16px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  align-items: start !important;
  box-sizing: border-box !important;
}

html body .atelier_register_main {
  min-width: 0 !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  background: #fff !important;
  border: 0 !important;
  border-bottom: 3px solid var(--atelier-accent) !important;
  border-radius: 0 !important;
  box-shadow: 0 3px 10px rgba(31,45,55,.055) !important;
  box-sizing: border-box !important;
}

html body .atelier_register_breadcrumbs {
  margin: 0 !important;
  padding: 26px 32px 0 !important;
}

/* Noble-style stepped breadcrumbs. */
html body .atelier_register_breadcrumbs .cmp_breadcrumbs,
html body .atelier_register_breadcrumbs .cmp_breadcrumbs ol {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

html body .atelier_register_breadcrumbs .cmp_breadcrumbs ol {
  display: flex !important;
  align-items: stretch !important;
  flex-wrap: nowrap !important;
  list-style: none !important;
}

html body .atelier_register_breadcrumbs .cmp_breadcrumbs li {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  min-height: 42px !important;
  margin: 0 12px 0 0 !important;
  padding: 0 !important;
  color: #2d3439 !important;
  background: #f4f6f7 !important;
  border: 0 !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 500 !important;
}

html body .atelier_register_breadcrumbs .cmp_breadcrumbs li:first-child::after,
html body .atelier_register_breadcrumbs .cmp_breadcrumbs li.current::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  right: -13px !important;
  width: 0 !important;
  height: 0 !important;
  border-top: 21px solid transparent !important;
  border-bottom: 21px solid transparent !important;
  border-left: 13px solid #f4f6f7 !important;
  z-index: 2 !important;
}

html body .atelier_register_breadcrumbs .cmp_breadcrumbs li:first-child::before,
html body .atelier_register_breadcrumbs .cmp_breadcrumbs li.current::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: -13px !important;
  width: 0 !important;
  height: 0 !important;
  border-top: 21px solid transparent !important;
  border-bottom: 21px solid transparent !important;
  border-left: 13px solid #fff !important;
  z-index: 1 !important;
}

html body .atelier_register_breadcrumbs .cmp_breadcrumbs li:first-child::before {
  display: none !important;
}

html body .atelier_register_breadcrumbs .cmp_breadcrumbs li.current {
  color: #fff !important;
  background: var(--atelier-accent) !important;
  font-weight: 700 !important;
}

html body .atelier_register_breadcrumbs .cmp_breadcrumbs li.current::after {
  border-left-color: var(--atelier-accent) !important;
}

html body .atelier_register_breadcrumbs .cmp_breadcrumbs a,
html body .atelier_register_breadcrumbs .cmp_breadcrumbs li.current > span {
  position: relative !important;
  z-index: 3 !important;
  display: flex !important;
  min-height: 42px !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 16px !important;
  color: inherit !important;
  text-decoration: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

html body .atelier_register_breadcrumbs .cmp_breadcrumbs .separator {
  display: none !important;
}

html body .atelier_register_body {
  width: 100% !important;
  margin: 0 !important;
  padding: 31px 32px 32px !important;
  box-sizing: border-box !important;
}

html body .atelier_register_body > h1 {
  margin: 0 0 22px !important;
  padding: 0 !important;
  color: #22282c !important;
  font-size: 24px !important;
  line-height: 1.25 !important;
  font-weight: 750 !important;
  letter-spacing: -.015em !important;
}

/* Noble does not display a redundant required-fields sentence above Profile. */
html body .atelier_register_required_note {
  display: none !important;
}

html body .atelier_register_form,
html body .atelier_register_form fieldset,
html body .atelier_register_form .fields {
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

html body .atelier_register_form fieldset {
  min-width: 0 !important;
  margin: 0 0 27px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

html body .atelier_register_form fieldset > legend {
  width: auto !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
  color: #252b2f !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  border: 0 !important;
}

html body .atelier_register_form .fields > div,
html body .atelier_register_form .reviewer_interests {
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
}

html body .atelier_register_form .fields > div:last-child {
  margin-bottom: 0 !important;
}

html body .atelier_register_form label {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  color: #343a3e !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  font-weight: 400 !important;
}

html body .atelier_register_form label > .label {
  display: block !important;
  width: 100% !important;
  margin: 0 0 5px !important;
  color: #343a3e !important;
  font-size: 11.5px !important;
  line-height: 1.35 !important;
  font-style: italic !important;
  font-weight: 400 !important;
}

html body .atelier_register_form .required {
  color: #e54b4b !important;
  font-style: normal !important;
}

html body .atelier_register_form input[type="text"],
html body .atelier_register_form input[type="email"],
html body .atelier_register_form input[type="password"],
html body .atelier_register_form select,
html body .atelier_register_form textarea {
  display: block !important;
  width: 270px !important;
  max-width: 100% !important;
  height: 31px !important;
  min-height: 31px !important;
  margin: 0 !important;
  padding: 5px 8px !important;
  color: #22282c !important;
  background: #fff !important;
  border: 1px solid #9ea5a9 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: inherit !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  box-sizing: border-box !important;
  transition: border-color .14s ease, box-shadow .14s ease !important;
}

html body .atelier_register_form textarea {
  height: auto !important;
  min-height: 76px !important;
  resize: vertical !important;
}

html body .atelier_register_form input:focus,
html body .atelier_register_form select:focus,
html body .atelier_register_form textarea:focus {
  border-color: var(--atelier-accent) !important;
  box-shadow: 0 0 0 1px rgba(10,117,143,.13) !important;
  outline: none !important;
}

html body .atelier_register_form input::placeholder {
  color: #a4aaad !important;
  opacity: 1 !important;
}

html body .atelier_register_field_help {
  display: block !important;
  width: 360px !important;
  max-width: 100% !important;
  margin: 5px 0 0 !important;
  color: #7b8388 !important;
  font-size: 10px !important;
  line-height: 1.5 !important;
  font-style: normal !important;
  font-weight: 400 !important;
}

/* Form-level errors stay close to the field and do not stretch the layout. */
html body .atelier_register_form .pkp_form_error,
html body .atelier_register_form .error,
html body .atelier_register_form .form_error {
  max-width: 620px !important;
  color: #b53a3a !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
}

/* Consent/reviewer lines match Noble: full-width sentence, compact checkbox. */
html body .atelier_register_form fieldset.consent,
html body .atelier_register_form fieldset.reviewer {
  margin-top: 4px !important;
  margin-bottom: 21px !important;
}

html body .atelier_register_form fieldset.consent > legend,
html body .atelier_register_form fieldset.reviewer > legend:not(.pkp_screen_reader) {
  margin-bottom: 11px !important;
}

html body .atelier_register_form .optin,
html body .atelier_register_form .optin label {
  width: 100% !important;
  max-width: 100% !important;
}

html body .atelier_register_form .optin label {
  position: relative !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 8px !important;
  color: #2d3337 !important;
  font-size: 12px !important;
  line-height: 1.55 !important;
  font-style: normal !important;
}

html body .atelier_register_form input[type="checkbox"] {
  flex: 0 0 auto !important;
  width: 13px !important;
  height: 13px !important;
  margin: 2px 0 0 !important;
  padding: 0 !important;
  accent-color: var(--atelier-accent) !important;
}

html body .atelier_register_form .reviewer_interests {
  margin-top: 12px !important;
}

html body .atelier_register_form .buttons {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  margin: 7px 0 0 !important;
  padding: 0 !important;
}

html body .atelier_register_form .buttons button,
html body .atelier_register_form .buttons .submit,
html body .atelier_register_form .buttons a {
  display: inline-flex !important;
  min-height: 31px !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 5px 13px !important;
  color: #176a7c !important;
  background: #fff !important;
  border: 1px solid #a8afb3 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 11px !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  text-transform: none !important;
  transition: color .14s ease, border-color .14s ease, background-color .14s ease !important;
}

html body .atelier_register_form .buttons a {
  border-color: transparent !important;
  color: #333a3e !important;
  font-weight: 500 !important;
}

html body .atelier_register_form .buttons button:hover,
html body .atelier_register_form .buttons button:focus,
html body .atelier_register_form .buttons .submit:hover,
html body .atelier_register_form .buttons .submit:focus {
  color: #fff !important;
  background: var(--atelier-accent) !important;
  border-color: var(--atelier-accent) !important;
  outline: none !important;
}

html body .atelier_register_form .buttons a:hover,
html body .atelier_register_form .buttons a:focus {
  color: var(--atelier-accent) !important;
  background: transparent !important;
  text-decoration: none !important;
  outline: none !important;
}

/* Register journal rail: same scale/rhythm as the successful Journal Index rail. */
html body .atelier_register_rail {
  display: flex !important;
  flex-direction: column !important;
  width: 290px !important;
  min-width: 0 !important;
  max-width: 290px !important;
  margin: 0 !important;
  padding: 0 !important;
  align-self: start !important;
  box-sizing: border-box !important;
}

html body .atelier_register_rail > .atelier_rail_block,
html body .atelier_register_rail > .atelier_home_login_block {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

html body .atelier_register_rail .atelier_home_login_block {
  margin: 0 0 16px !important;
  padding: 0 !important;
  background: #fff !important;
  border: 0 !important;
  border-bottom: 3px solid var(--atelier-accent) !important;
  border-radius: 0 !important;
  box-shadow: 0 3px 10px rgba(31,45,55,.045) !important;
}

html body .atelier_register_rail .atelier_home_login_block > h2 {
  margin: 0 !important;
  padding: 13px 15px 9px !important;
  color: #22282c !important;
  border-bottom: 1px solid #dde2e5 !important;
  font-size: 15px !important;
  line-height: 1.3 !important;
  font-weight: 750 !important;
}

html body .atelier_register_rail .atelier_home_login_form {
  margin: 0 !important;
  padding: 12px 15px 15px !important;
}

html body .atelier_register_rail .atelier_home_login_form label {
  display: block !important;
  margin: 0 0 13px !important;
  color: #343a3e !important;
  font-size: 10.5px !important;
  line-height: 1.35 !important;
  font-style: italic !important;
}

html body .atelier_register_rail .atelier_home_login_form input[type="text"],
html body .atelier_register_rail .atelier_home_login_form input[type="password"] {
  display: block !important;
  width: 100% !important;
  height: 31px !important;
  margin: 5px 0 0 !important;
  padding: 5px 7px !important;
  color: #22282c !important;
  background: #fff !important;
  border: 1px solid #9ea5a9 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 11px !important;
  box-sizing: border-box !important;
}

html body .atelier_register_rail .atelier_home_login_form input:focus {
  border-color: var(--atelier-accent) !important;
  outline: none !important;
}

html body .atelier_register_rail .atelier_home_forgot {
  display: inline-block !important;
  margin: -6px 0 12px !important;
  color: #30363a !important;
  font-size: 10.5px !important;
  line-height: 1.35 !important;
  text-decoration: none !important;
}

html body .atelier_register_rail .atelier_home_forgot:hover,
html body .atelier_register_rail .atelier_home_forgot:focus {
  color: var(--atelier-accent) !important;
  text-decoration: none !important;
}

html body .atelier_register_rail .atelier_home_remember {
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  margin: 0 0 14px !important;
  font-style: normal !important;
}

html body .atelier_register_rail .atelier_home_remember input {
  width: 13px !important;
  height: 13px !important;
  margin: 0 !important;
  accent-color: var(--atelier-accent) !important;
}

html body .atelier_register_rail .atelier_home_login_actions {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
}

html body .atelier_register_rail .atelier_home_login_actions button {
  min-height: 31px !important;
  padding: 5px 12px !important;
  color: #176a7c !important;
  background: #fff !important;
  border: 1px solid #a8afb3 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 11px !important;
  font-weight: 700 !important;
}

html body .atelier_register_rail .atelier_home_login_actions button:hover,
html body .atelier_register_rail .atelier_home_login_actions button:focus {
  color: #fff !important;
  background: var(--atelier-accent) !important;
  border-color: var(--atelier-accent) !important;
  outline: none !important;
}

html body .atelier_register_rail .atelier_home_login_actions a {
  color: #333a3e !important;
  font-size: 10.5px !important;
  text-decoration: none !important;
}

html body .atelier_register_rail .atelier_home_login_actions a:hover,
html body .atelier_register_rail .atelier_home_login_actions a:focus {
  color: var(--atelier-accent) !important;
  text-decoration: none !important;
}

/* Explicit icons prevent list-order drift. */
html body .atelier_register_rail .atelier_link_focus::before { content: "\f05a" !important; }
html body .atelier_register_rail .atelier_link_editorial::before { content: "\f0c0" !important; }
html body .atelier_register_rail .atelier_link_peer_review::before { content: "\f06e" !important; }
html body .atelier_register_rail .atelier_link_peer_process::before { content: "\f0e3" !important; }
html body .atelier_register_rail .atelier_link_ethics::before { content: "\f24e" !important; }
html body .atelier_register_rail .atelier_link_plagiarism::before { content: "\f002" !important; }
html body .atelier_register_rail .atelier_link_open_access::before { content: "\f09c" !important; }
html body .atelier_register_rail .atelier_link_copyright::before { content: "\f1f9" !important; }
html body .atelier_register_rail .atelier_link_guidelines::before { content: "\f02d" !important; }
html body .atelier_register_rail .atelier_link_fee::before { content: "\f09d" !important; }

/* -------------------------------------------------------------------------- */
/* 2. Noble-style article sharing                                             */
/* -------------------------------------------------------------------------- */

html body .atelier_article_share {
  display: flex !important;
  width: 100% !important;
  min-width: 0 !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 10px !important;
  margin: 14px 0 14px !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

html body .atelier_article_share_label {
  flex: 0 0 auto !important;
  color: #555e64 !important;
  font-size: 9px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

html body .atelier_article_share_rule {
  flex: 0 0 32px !important;
  width: 32px !important;
  min-width: 32px !important;
  max-width: 32px !important;
  height: 1px !important;
  background: #dbe1e4 !important;
}

html body .atelier_article_share_clip {
  position: relative !important;
  flex: 0 0 auto !important;
  width: 70px !important;
  height: 34px !important;
  overflow: hidden !important;
  border: 1px solid #d2dade !important;
  background: #fff !important;
  box-sizing: border-box !important;
  transition: width .19s ease, border-color .16s ease, box-shadow .16s ease !important;
}

html body .atelier_article_share:hover .atelier_article_share_clip,
html body .atelier_article_share:focus-within .atelier_article_share_clip {
  width: 206px !important;
  border-color: #c4d4da !important;
  box-shadow: 0 2px 8px rgba(27,73,86,.055) !important;
}

html body .atelier_article_share_buttons {
  display: flex !important;
  width: 204px !important;
  height: 32px !important;
  align-items: stretch !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body .atelier_article_share_button,
html body .atelier_article_share_button:visited {
  display: inline-flex !important;
  flex: 0 0 34px !important;
  width: 34px !important;
  height: 32px !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #59636a !important;
  background: #fff !important;
  border: 0 !important;
  border-right: 1px solid #e2e7e9 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 14px !important;
  line-height: 1 !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  transition: color .14s ease, background-color .14s ease !important;
}

html body .atelier_article_share_button:last-child {
  border-right: 0 !important;
}

html body .atelier_article_share_button:hover,
html body .atelier_article_share_button:focus {
  color: #fff !important;
  background: var(--atelier-accent) !important;
  text-decoration: none !important;
  outline: none !important;
}

html body .atelier_article_share_button:focus-visible {
  position: relative !important;
  z-index: 2 !important;
  outline: 1px solid var(--atelier-accent) !important;
  outline-offset: -2px !important;
}

/* -------------------------------------------------------------------------- */
/* Responsive                                                                 */
/* -------------------------------------------------------------------------- */

@media (max-width: 980px) {
  html body .atelier_register_layout {
    grid-template-columns: minmax(0, 1fr) 250px !important;
    gap: 14px !important;
  }

  html body .atelier_register_rail {
    width: 250px !important;
    max-width: 250px !important;
  }

  html body .atelier_register_body,
  html body .atelier_register_breadcrumbs {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}

@media (max-width: 760px) {
  html body .page_register.atelier_register_page {
    width: calc(100% - 20px) !important;
    margin-top: 10px !important;
  }

  html body .atelier_register_layout {
    display: block !important;
  }

  html body .atelier_register_main {
    margin-bottom: 14px !important;
  }

  html body .atelier_register_rail {
    display: flex !important;
    width: 100% !important;
    max-width: none !important;
  }

  html body .atelier_register_body {
    padding: 24px 18px 26px !important;
  }

  html body .atelier_register_breadcrumbs {
    padding: 18px 18px 0 !important;
  }

  html body .atelier_register_form input[type="text"],
  html body .atelier_register_form input[type="email"],
  html body .atelier_register_form input[type="password"],
  html body .atelier_register_form select,
  html body .atelier_register_form textarea {
    width: min(100%, 360px) !important;
  }

  html body .atelier_article_share {
    gap: 8px !important;
  }

  html body .atelier_article_share_clip,
  html body .atelier_article_share:hover .atelier_article_share_clip,
  html body .atelier_article_share:focus-within .atelier_article_share_clip {
    width: 206px !important;
  }
}

@media (max-width: 460px) {
  html body .atelier_register_breadcrumbs .cmp_breadcrumbs li {
    min-height: 38px !important;
  }

  html body .atelier_register_breadcrumbs .cmp_breadcrumbs li:first-child::after,
  html body .atelier_register_breadcrumbs .cmp_breadcrumbs li.current::after,
  html body .atelier_register_breadcrumbs .cmp_breadcrumbs li:first-child::before,
  html body .atelier_register_breadcrumbs .cmp_breadcrumbs li.current::before {
    border-top-width: 19px !important;
    border-bottom-width: 19px !important;
  }

  html body .atelier_register_breadcrumbs .cmp_breadcrumbs a,
  html body .atelier_register_breadcrumbs .cmp_breadcrumbs li.current > span {
    min-height: 38px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  html body .atelier_article_share {
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
  }

  html body .atelier_article_share_label {
    margin-left: auto !important;
  }

  html body .atelier_article_share_rule {
    flex: 0 0 28px !important;
    width: 28px !important;
    min-width: 28px !important;
    max-width: 28px !important;
  }

  html body .atelier_article_share_clip,
  html body .atelier_article_share:hover .atelier_article_share_clip,
  html body .atelier_article_share:focus-within .atelier_article_share_clip {
    flex: 0 0 206px !important;
  }
}

/* Dark mode introduced by GOTAVA Atelier. */
html[data-atelier-theme="dark"] body .atelier_register_main,
html[data-atelier-theme="dark"] body .atelier_register_rail .atelier_home_login_block,
html[data-atelier-theme="dark"] body .atelier_article_share_clip,
html[data-atelier-theme="dark"] body .atelier_article_share_button,
html[data-atelier-theme="dark"] body .atelier_register_form input,
html[data-atelier-theme="dark"] body .atelier_register_form select,
html[data-atelier-theme="dark"] body .atelier_register_form textarea,
html[data-atelier-theme="dark"] body .atelier_register_rail .atelier_home_login_form input {
  background: #20272b !important;
  color: #edf2f4 !important;
}

html[data-atelier-theme="dark"] body .atelier_register_body > h1,
html[data-atelier-theme="dark"] body .atelier_register_form fieldset > legend,
html[data-atelier-theme="dark"] body .atelier_register_form label,
html[data-atelier-theme="dark"] body .atelier_register_form label > .label,
html[data-atelier-theme="dark"] body .atelier_register_form .optin label,
html[data-atelier-theme="dark"] body .atelier_register_rail .atelier_home_login_block > h2 {
  color: #edf2f4 !important;
}

@media (prefers-reduced-motion: reduce) {
  html body .atelier_article_share_clip,
  html body .atelier_article_share_button,
  html body .atelier_register_form input,
  html body .atelier_register_form select,
  html body .atelier_register_form textarea {
    transition: none !important;
  }
}
