/* Presentation only: retain existing form fields, validation and service flows. */
.vur-form-wrapper,
.vur-cert-wrapper {
  --vur-service-muted: #526174;
  --vur-service-border: #c7d0db;
  margin-top: 24px;
  padding: 0 12px;
  box-sizing: border-box;
}
.vur-form-wrapper *,
.vur-cert-wrapper * { box-sizing: border-box; }
.vur-form-wrapper .vur-form-header { padding: 28px 36px; }
.vur-form-wrapper .vur-form-header__sub,
.vur-cert-wrapper .vur-cert-header__sub { color: #e0e8f1; line-height: 1.9; }
.vur-form-wrapper .vur-form-card { padding: 30px 36px; }
.vur-form-wrapper .vur-required-note {
  color: var(--vur-service-muted);
  margin-bottom: 22px;
  padding-bottom: 16px;
  line-height: 1.8;
}
.vur-form-wrapper .vur-form-grid { gap: 20px 24px; }
.vur-form-wrapper .vur-field { min-width: 0; margin: 0; gap: 7px; }
.vur-form-wrapper .vur-label,
.vur-cert-wrapper .vur-cert-label { font-size: 14px; line-height: 1.8; font-weight: 600; }
.vur-form-wrapper .vur-input,
.vur-form-wrapper .vur-select,
.vur-form-wrapper .vur-textarea,
.vur-cert-wrapper .vur-cert-input {
  border-color: var(--vur-service-border);
  background-color: #fff;
  font-size: 16px;
}
.vur-form-wrapper .vur-input,
.vur-form-wrapper .vur-select { height: 50px; min-height: 50px; }
.vur-form-wrapper .vur-input::placeholder,
.vur-form-wrapper .vur-textarea::placeholder,
.vur-cert-wrapper .vur-cert-input::placeholder { color: #657387; opacity: 1; }
.vur-form-wrapper .vur-field-error { color: #a12820; font-size: 12px; line-height: 1.7; }
.vur-form-wrapper .vur-field-error:empty { display: none; }
.vur-form-wrapper .vur-service-hint,
.vur-cert-wrapper .vur-service-hint {
  color: var(--vur-service-muted);
  font-size: 12px;
  line-height: 1.9;
  margin: 0;
  letter-spacing: normal;
}
.vur-form-wrapper .vur-service-footnote,
.vur-cert-wrapper .vur-service-footnote {
  color: var(--vur-service-muted);
  font-size: 12px;
  line-height: 1.9;
  margin: 16px 0 0;
}
.vur-form-wrapper .vur-course-option__inner { height: 100%; border-color: var(--vur-service-border); padding: 16px; }
.vur-form-wrapper .vur-course-option__title { line-height: 1.8; }
.vur-form-wrapper .vur-course-option__date { color: var(--vur-service-muted); font-size: 12px; line-height: 1.8; }
.vur-form-wrapper .vur-course-option__date svg { flex-shrink: 0; }
.vur-form-wrapper .vur-course-option input:focus-visible ~ .vur-course-option__inner,
.vur-form-wrapper .vur-checkbox:focus-visible ~ .vur-checkbox-custom {
  outline: 3px solid #2a5a8c;
  outline-offset: 3px;
}
.vur-form-wrapper .vur-submit-btn,
.vur-cert-wrapper .vur-cert-btn { min-height: 50px; height: auto; padding-top: 13px; padding-bottom: 13px; line-height: 1.7; }
.vur-form-wrapper .vur-submit-btn:focus-visible,
.vur-cert-wrapper .vur-cert-btn:focus-visible,
.vur-cert-wrapper .vur-cert-lang-opt:focus-within { outline: 3px solid #2a5a8c; outline-offset: 3px; }
.vur-cert-wrapper { max-width: 600px; }
.vur-cert-wrapper .vur-cert-header { padding: 28px 28px 24px; }
.vur-cert-wrapper .vur-cert-header__icon { width: 52px; height: 52px; margin-bottom: 12px; }
.vur-cert-wrapper .vur-cert-card { padding: 28px 32px; }
.vur-cert-wrapper .vur-cert-field { margin-bottom: 22px; }
.vur-cert-wrapper .vur-cert-input { height: 52px; text-align: left; margin-bottom: 9px; }
.vur-cert-wrapper .vur-cert-lang-opt { position: relative; min-height: 46px; display: flex; align-items: center; justify-content: center; }
.vur-cert-wrapper .vur-cert-lang-opt input {
  display: block;
  position: absolute;
  width: 1px;
  height: 1px;
  margin: 0;
  padding: 0;
  opacity: 0;
}
.vur-cert-wrapper .vur-cert-message,
.vur-form-wrapper .vur-message { line-height: 1.9; overflow-wrap: anywhere; }
.vur-cert-wrapper .vur-service-ready { margin: 0 0 14px; color: #18583e; font-weight: 600; font-size: 14px; line-height: 1.9; }
.vur-cert-wrapper .vur-cert-success-actions { flex-wrap: wrap; }
@media (max-width: 600px) {
  .vur-form-wrapper,
  .vur-cert-wrapper { margin-top: 16px; margin-bottom: 36px; padding: 0 8px; }
  .vur-form-wrapper .vur-form-header { padding: 24px 20px; }
  .vur-form-wrapper .vur-form-card,
  .vur-cert-wrapper .vur-cert-card { padding: 24px 18px; }
  .vur-form-wrapper .vur-form-grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .vur-form-wrapper .vur-course-grid { grid-template-columns: minmax(0, 1fr); }
  .vur-form-wrapper .vur-form-header__title,
  .vur-cert-wrapper .vur-cert-header__title { font-size: 22px; line-height: 1.8; }
  .vur-cert-wrapper .vur-cert-success-actions { flex-direction: column; }
  .vur-cert-wrapper .vur-cert-success-actions .vur-cert-btn { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .vur-form-wrapper *, .vur-cert-wrapper * { transition: none !important; }
}
