/* Extra styles for the Free Account pages, on top of /register/register.css. */
.container.wide { max-width: 860px; }
[hidden] { display: none !important; }

.step-label { margin: 0 0 4px !important; font-size: 13px !important; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; color: var(--muted); }
.field-label.spaced { margin-top: 16px; }
.fine-print.tight { margin-top: 6px; }

.show-password { display: inline-flex; gap: 8px; align-items: center; margin: 10px 0 0; font-size: 14px; color: var(--muted); cursor: pointer; }
.show-password input { width: 16px; height: 16px; accent-color: var(--green-dark); }

.option.consent { margin: 20px 0 0; }
.consent-text { font-size: 14px; line-height: 1.55; }
.consent-text a { color: var(--green-mid); font-weight: 600; }

.steps { margin: 0; padding-left: 22px; font-size: 15px; }
.steps li { margin-bottom: 6px; }

.notice-section { color: var(--h-text); background: var(--h-bg); border-color: var(--h-border); }

.survey-question { font-size: 18px !important; color: var(--green-dark); margin-bottom: 6px !important; }
.survey-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 8px 0 12px; }
.survey-grid .option { margin: 0; padding: 10px 12px; align-items: center; }
.survey-grid .option-title { font-weight: 600; font-size: 15px; }
.survey-none { margin-top: 4px; }
@media (max-width: 720px) { .survey-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 480px) { .survey-grid { grid-template-columns: 1fr; } }

@media screen {
  html[data-theme="dark"] .notice-section { color: var(--text); background: #1d2a22; border-color: #378056; }
  html[data-theme="dark"] .survey-question { color: var(--green-dark); }
}
