/* Registration consent layout: fixed checkbox column, readable text column. */
.auth-card .consent-box {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  width: 100%;
  min-width: 0;
  padding: 13px 14px;
}
.auth-card .consent-box input[type="checkbox"] {
  display: block;
  width: 18px !important;
  min-width: 18px;
  max-width: 18px;
  height: 18px;
  padding: 0 !important;
  margin: 2px 0 0;
  flex: 0 0 18px;
  accent-color: #245640;
}
.auth-card .consent-box label {
  display: block;
  width: auto;
  min-width: 0;
  margin: 0;
  font-size: 12px;
  line-height: 1.55;
  overflow-wrap: anywhere;
}
.auth-card .consent-box .field-error {
  grid-column: 2;
  display: block;
}
.auth-card .small-print {
  margin: 14px 0 18px;
}
.profile-page { padding-top: 36px; }
.auth-profile-shell {
  display: grid;
  grid-template-columns: minmax(260px, .8fr) minmax(0, 1.2fr);
  gap: clamp(25px, 5vw, 65px);
  align-items: start;
  max-width: 1000px;
  margin: 0 auto;
}
.auth-profile-intro {
  padding: 28px 0;
}
.auth-profile-intro h1 {
  margin: 10px 0 14px;
  color: #193c2d;
  font: 500 clamp(31px, 4vw, 43px)/1.12 Georgia, "Times New Roman", serif;
}
.auth-profile-intro > p {
  max-width: 390px;
  color: #718076;
  font-size: 13px;
  line-height: 1.8;
}
.profile-privacy-note {
  display: flex;
  gap: 11px;
  align-items: flex-start;
  margin-top: 23px;
  padding: 15px;
  border: 1px solid #e3e8dd;
  border-radius: 12px;
  background: #f5f7f0;
  color: #356047;
}
.profile-privacy-note > span { flex: 0 0 auto; font-size: 11px; color: #5e8a67; }
.profile-privacy-note strong { display:block; font-size:12px; margin-bottom:4px; }
.profile-privacy-note small { display:block; color:#78877b; font-size:10px; line-height:1.65; }
.auth-profile-card {
  padding: clamp(22px, 3vw, 34px);
  border: 1px solid #e6e3d9;
  border-radius: 21px;
  background: #fff;
  box-shadow: 0 13px 38px rgba(30, 50, 34, .055);
}
.auth-profile-card h2 {
  margin: 0 0 22px;
  color: #1d402e;
  font: 500 25px/1.2 Georgia, "Times New Roman", serif;
}
.auth-profile-card input {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  padding: 12px 13px;
  border: 1px solid #dadfd4;
  border-radius: 10px;
  background: #fcfcf9;
  color: #244432;
  font-size: 13px;
}
.auth-profile-card input:focus {
  outline: none;
  border-color: #709778;
  box-shadow: 0 0 0 4px rgba(56, 109, 73, .1);
}
.profile-account-meta {
  display: grid;
  gap: 4px;
  margin: 19px 0 22px;
  padding: 13px 14px;
  border: 1px solid #e7e9e0;
  border-radius: 10px;
  background: #f8f8f3;
}
.profile-account-meta span, .profile-account-meta small {
  color: #7d897e;
  font-size: 10px;
  line-height: 1.6;
}
.profile-account-meta strong { color:#294c37; font-size:13px; }
.profile-completion-notice {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:0 0 22px;
  padding:16px 18px;
  border:1px solid #e7dfc9;
  border-radius:13px;
  background:#fbf8ef;
}
.profile-completion-notice strong { color:#37533d; font-size:13px; }
.profile-completion-notice p { margin:4px 0 0; color:#788477; font-size:11px; line-height:1.6; }
.dashboard-profile-link { margin:-12px 0 20px; text-align:right; }
.dashboard-profile-link a { color:#456b50; font-size:11px; font-weight:700; text-decoration:underline; text-underline-offset:3px; }
@media (max-width: 720px) {
  .auth-card .consent-box { padding: 12px; gap: 9px; }
  .auth-card .consent-box label { font-size: 11px; line-height: 1.55; }
  .auth-profile-shell { grid-template-columns: 1fr; gap: 12px; }
  .auth-profile-intro { padding: 5px 0; }
  .auth-profile-intro h1 { font-size: 32px; }
  .auth-profile-card { padding: 22px 18px; }
  .profile-completion-notice { align-items: flex-start; flex-direction: column; }
  .dashboard-profile-link { text-align: left; margin: -14px 0 18px; }
}
