body.register-page .content-wrapper {
  padding-left: var(--page-indent);
  padding-right: var(--page-indent);
  box-sizing: border-box;
  width: 100%;
}
body.register-page main.article-frame {
  background-color: #f8f8ff;
  border: 1px solid #aaaacc;
  border-radius: 6px;
  box-shadow: 0 0 8px rgba(0,0,0,0.08);
  padding: 1.5rem 2rem;
  margin-top: 0; margin-left: 0; margin-right: 0; margin-bottom: 2rem;
  width: 100%; max-width: 850px; box-sizing: border-box;
}
body.register-page h2 {
  margin-top: 0.1em; margin-bottom: 0.8em;
  font-size: 1.5em; color: #000000;
}
.form-wrapper { display: flex; justify-content: flex-start; margin-top: 10px; overflow-x: auto; }
.form-table { width: auto; table-layout: fixed; border-collapse: collapse; }
.form-table th, .form-table td:first-child {
  white-space: nowrap; text-align: right; padding-right: 10px;
  font-family: Arial, Helvetica, sans-serif; font-size: 0.95em;
}
.form-table td:nth-child(2) input {
  width: 250px; min-width: 200px; padding: 5px 8px;
  border: 1px solid #aaaacc; border-radius: 3px; font-size: 0.95em;
  box-sizing: border-box;
}
.form-table td:nth-child(3) { white-space: normal; text-align: left; padding-left: 10px; width: auto; }
.captcha-container { display: flex; align-items: center; gap: 10px; }
.captcha-container .refresh-button { padding: 4px 8px; font-size: 1em; cursor: pointer; }
.form-table .button-row td { text-align: center; padding-top: 15px; }
.general-error { color: #cc0000; font-size: 1em; font-weight: bold; text-align: center; margin-bottom: 15px; font-family: Arial, Helvetica, sans-serif; }
@media (max-width: 768px) {
  .form-table th, .form-table td { display: block; width: 100%; }
  input, textarea, select { width: 100%; }
}
