/* MiCode registration design reference: docs/registration-design.md. The standalone /jersey landing page is excluded. */
.micode-registration-ui {
  --registration-red: #D9001B;
  --registration-text: #676767;
  --registration-tint: #FDF2F4;
  font-family: "DM Sans", Arial, sans-serif;
  color: var(--registration-text);
}
.micode-registration-ui main { color: var(--registration-text); }
.micode-registration-ui :is(header, footer) { box-shadow: none !important; }
.micode-registration-ui main a:not(.btn):not(.primary-button):not(.reveal) {
  color: var(--registration-red);
  text-decoration: underline;
}
.micode-registration-ui main :is(.card, .content, .form-details, .register-body, .modal-content, .primary-button, .btn) { box-shadow: none !important; }
.micode-registration-ui :is(.registration-panel, .register-content) { color: var(--registration-text); }
.micode-registration-ui main :is(.primary-button, .registeracode-submit, .activation-cta, input[type="submit"], button[type="submit"], .submit, #audio-retry),
.micode-registration-ui.registration-account-page main button:not(.password-toggle) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: auto;
  min-width: min(170px, 100%);
  max-width: 100%;
  height: 68px;
  padding: 20px 22px !important;
  border: 1px solid var(--registration-red) !important;
  border-radius: 0 !important;
  background: var(--registration-red) !important;
  color: #fff !important;
  font-family: "DM Sans", Arial, sans-serif;
  font-size: 21px !important;
  font-weight: 700;
  line-height: 26px !important;
  text-align: center;
  text-decoration: none;
  box-shadow: none !important;
  cursor: pointer;
  transition: color .15s, background-color .15s;
}
.micode-registration-ui main :is(.primary-button, .registeracode-submit, .activation-cta, input[type="submit"], button[type="submit"], .submit, #audio-retry):hover:not(:disabled),
.micode-registration-ui.registration-account-page main button:not(.password-toggle):hover {
  background: #fff !important;
  color: var(--registration-red) !important;
  border-color: var(--registration-red) !important;
}
.micode-registration-ui main button[type="submit"]:disabled { opacity: .55; cursor: not-allowed; }
.micode-registration-ui .registration-setup-choice .register-content { display: flex; flex-direction: column; align-items: stretch; }
.micode-registration-ui .registration-setup-choice .registeracode-submit { align-self: center; }
.micode-registration-ui main :is(.alert, .error) {
  padding: 20px;
  background: var(--registration-tint) !important;
  border: 1px solid var(--registration-red) !important;
  color: var(--registration-text) !important;
  box-shadow: none;
}
.micode-registration-ui :is(a, button, input, textarea, select):focus-visible { outline: 2px solid var(--registration-red); outline-offset: 3px; }
/* Compact helper controls and accordion headers keep their own geometry. */
.micode-registration-ui #accordion .accordion-title {
  padding-inline: 18px 48px;
  color: var(--registration-text);
  transition: none;
}
.micode-registration-ui #accordion .accordion-title:hover { padding-inline: 18px 48px; }
.micode-registration-ui #accordion .accordion-title .iconinfo { display: none !important; }
.micode-registration-ui #accordion > .wow { margin-bottom: 16px !important; }
.micode-registration-ui main select.form-control {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='%23676767' stroke-width='2.5' d='m4 7 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
  padding-inline-end: 44px;
}
.micode-registration-ui.rtl-layout main select.form-control { background-position: left 14px center; }
/* Reset and confirmation screens use a white panel with no promotional strips. */
.micode-registration-ui.registration-reset-page { background: #f1f1f1; }
.micode-registration-ui.registration-reset-page .hero-content { padding: 0 !important; }
.micode-registration-ui.registration-reset-page .hero-content > br,
.micode-registration-ui.registration-reset-page .main-block > .col > br { display: none; }
.micode-registration-ui.registration-reset-page main { padding-top: 32px; }
.micode-registration-ui.registration-reset-page .registration-panel {
  max-width: 582px;
  margin: 0 auto 32px;
  padding: 28px;
  background: #fff;
  border-radius: 16px;
  box-shadow: none;
}
.micode-registration-ui.registration-reset-page input.form-control {
  min-height: 62px;
  padding: 16px 22px;
  border: 1px solid #ccc;
  border-radius: 0;
  background: #f1f1f1;
  color: var(--registration-text);
  font: inherit;
}
.micode-registration-ui.registration-reset-page input[type="password"] { padding-inline-end: 52px; }
.micode-registration-ui.registration-account-page { margin: 0; padding: 24px; background: #f1f1f1; color: var(--registration-text); }
.micode-registration-ui.registration-account-page main { width: auto; max-width: 600px; margin: 32px auto; padding: 28px; background: #fff; box-shadow: none; }
.micode-registration-ui.registration-account-page main > p:has(.primary-button),
.micode-registration-ui.registration-account-page form { text-align: center; }
.micode-registration-ui.registration-account-page form :is(label, input, .password-field, .error) { text-align: start; }
.micode-registration-ui.registration-account-page input { border: 1px solid #ccc; border-radius: 0; padding: 16px 22px; min-height: 62px; font: inherit; }
.micode-registration-ui.registration-account-page button:not(.password-toggle) { margin: 24px auto 0; }
@media (max-width: 600px) {
  .micode-registration-ui.registration-reset-page .registration-panel { padding: 24px 20px; }
}

.micode-registration-ui main :is(.activation-card, .contact-card, .photo-upload-area, .upload-area, .codedetails-card-shell) { box-shadow: none !important; }
.micode-registration-ui.registration-reset-page .login-message { margin-top: 20px; }

.micode-registration-ui #accordion .accordion-title h4 { color: inherit; }
.micode-registration-ui .codedetails-card-shell > .wow { margin-bottom: 16px !important; }
.micode-registration-ui.registration-account-page main button:not(.password-toggle) { height: auto; min-height: 68px; }
