/* Registration-only refinement; shared login presentation stays in auth.css. */
.register-page .right-panel { padding: 48px clamp(24px, 4vw, 64px); background: #faf9fc; }
.register-page .registration-box { max-width: 500px; }
.register-page #reg-form-wrap {
  padding: 32px;
  border: 1px solid #e8e4ee;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 8px 36px #24222a05;
}
.register-page .reg-heading { margin-bottom: 28px; }
.register-page .auth-title { font-size: 28px; letter-spacing: -.9px; line-height: 1.25; }
.register-page .auth-description { font-size: 14px; line-height: 1.7; }
.register-page #reg-form { display: flex; flex-direction: column; gap: 18px; }
.register-page .reg-type-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.register-page .reg-type label {
  position: relative;
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr) 16px;
  align-items: center;
  gap: 8px;
  padding: 13px 11px;
  min-height: 68px;
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
  border-color: #e5e1eb;
  border-radius: 10px;
  transition: border-color .15s, background-color .15s;
}
.register-page .reg-type label:last-child { grid-column: 1 / -1; min-height: 48px; }
.register-page .reg-type label:hover { border-color: #b9a4df; background: #fcfaff; }
.register-page .reg-type label:has(input:checked) { border-color: #9a72e3; background: #f8f4ff; }
.register-page .reg-type label:has(input:focus-visible) { outline: 2px solid var(--auth-accent); outline-offset: 3px; }
.register-page .reg-type input { width: 16px; height: 16px; margin: 0; }
.register-page .reg-type label span { overflow-wrap: anywhere; }
.register-page .reg-type-icon { width: 20px; height: 20px; color: #797180; }
.register-page .reg-type label:has(input:checked) .reg-type-icon { color: var(--auth-accent); }
.register-page .label { margin-bottom: 7px; font-size: 12px; }
.register-page .input { min-height: 48px; border-radius: 10px; }
.register-page .input:hover:not(:focus) { border-color: #bbb3c6; }
.register-page .reg-extras { background: #faf9fc; border-color: #eae6ef; border-radius: 12px; }
.register-page .reg-extras summary {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  padding: 15px;
  list-style: none;
  font-size: 12px;
}
.register-page .reg-extras summary::-webkit-details-marker { display: none; }
.register-page .reg-extras summary::after {
  content: '';
  width: 6px;
  height: 6px;
  margin-left: auto;
  margin-right: 2px;
  border-right: 1.5px solid var(--auth-muted);
  border-bottom: 1.5px solid var(--auth-muted);
  transform: rotate(45deg);
}
.register-page .reg-extras[open] summary::after { transform: rotate(225deg); }
.register-page .reg-extras[open] summary { margin-bottom: 12px; border-bottom: 1px solid #eae6ef; }
.register-page .reg-extras-content { padding: 0 15px 18px; }
.register-page .reg-terms-label { display: flex; align-items: flex-start; gap: 10px; cursor: pointer; font-size: 12px; line-height: 1.7; color: var(--text-dim); }
.register-page #reg-submit { min-height: 50px; border-radius: 10px; box-shadow: 0 3px 7px #7c3aed14; }
.register-page .reg-sso-btn { font-size: 13px; min-height: 48px; border-radius: 10px; }
.register-page .reg-signin { text-align: center; font-size: 13px; color: var(--text-dim); padding-top: 6px; }
.register-page .reg-signin a { font-weight: 600; text-underline-offset: 3px; }
.register-page .auth-story { padding-top: 56px; padding-bottom: 56px; }
.register-page .features > div { padding: 18px 0; border-bottom: 1px solid #e4dfea; }
.register-page .features > div:last-child { border-bottom: 0; }
.register-page .features { gap: 0; }
@media (max-width: 1100px) and (min-width: 900px) {
  .register-page #reg-form-wrap { padding: 24px; }
  .register-page .right-panel { padding: 32px 24px; }
  .register-page .reg-type-options { grid-template-columns: minmax(0, 1fr); }
  .register-page .reg-type label { min-height: 48px; }
}
@media (max-width: 899px) {
  .register-page .layout { background: #fff; }
  .register-page .left-panel { padding-top: 20px; padding-bottom: 20px; }
  .register-page .right-panel { background: #fff; padding: 14px 24px 40px; }
  .register-page #reg-form-wrap { padding: 0; border: 0; border-radius: 0; box-shadow: none; }
  .register-page .registration-box { max-width: 440px; }
  .register-page .reg-heading { margin-bottom: 24px; }
  .register-page #reg-form { gap: 16px; }
  .register-page .auth-title { font-size: 27px; }
}
@media (max-width: 359px) {
  .register-page .right-panel { padding-left: 20px; padding-right: 20px; }
  .register-page .reg-type-options { grid-template-columns: minmax(0, 1fr); }
  .register-page .reg-type label { min-height: 48px; }
}
