/* FYI Forms — FYI Clean preset. Typography intentionally inherits the active site/Umbrella contract. */
.fyi-form.fyi-clean,
.fyi-auth-card.fyi-clean {
  --fyi-form-border: rgba(0,0,0,.14);
  --fyi-form-muted: rgba(0,0,0,.64);
  --fyi-form-surface: rgba(255,255,255,.96);
  --fyi-form-soft: rgba(0,0,0,.035);
  font: inherit;
  color: inherit;
}
.fyi-form.fyi-clean { max-width: 680px; margin: 1.25rem auto 2rem; }
.fyi-form.fyi-clean .fyi-form-card,
.fyi-auth-card.fyi-clean {
  background: var(--fyi-form-surface);
  border: 1px solid var(--fyi-form-border);
  border-radius: 12px;
  padding: clamp(1rem, 2.2vw, 1.6rem);
  box-shadow: 0 8px 28px rgba(0,0,0,.055);
}
.fyi-form.fyi-clean .fyi-form-title,
.fyi-auth-card.fyi-clean .vm-section-title,
.fyi-auth-card.fyi-clean > .lead { margin: 0 0 .35rem; font: inherit; font-size: 1.35em; font-weight: 650; }
.fyi-form.fyi-clean .fyi-form-context { margin: .75rem 0 1.25rem; padding: .8rem 1rem; border: 1px solid var(--fyi-form-border); border-radius: 8px; background: var(--fyi-form-soft); }
.fyi-form.fyi-clean .fyi-form-context__label { display:block; margin-bottom:.15rem; font-weight:600; }
.fyi-form.fyi-clean .fyi-form-context__meta { color:var(--fyi-form-muted); font-size:.92em; }
.fyi-form.fyi-clean .fyi-field { margin-bottom: 1rem; }
.fyi-form.fyi-clean label,
.fyi-auth-card.fyi-clean label { display:block; margin:0 0 .38rem; font:inherit; font-weight:600; }
.fyi-form.fyi-clean .form-control,
.fyi-auth-card.fyi-clean .form-control {
  display:block; width:100%; min-height:44px; box-sizing:border-box;
  border:1px solid var(--fyi-form-border); border-radius:7px; padding:.62rem .75rem;
  font:inherit; line-height:1.35; background:#fff; color:inherit;
}
.fyi-form.fyi-clean textarea.form-control { min-height: 150px; resize: vertical; }
.fyi-form.fyi-clean .form-control:focus,
.fyi-auth-card.fyi-clean .form-control:focus { outline:2px solid currentColor; outline-offset:1px; box-shadow:none; }
.fyi-form.fyi-clean .fyi-captcha { margin:1rem 0; overflow-x:auto; }
.fyi-form.fyi-clean .btn,
.fyi-auth-card.fyi-clean .btn { min-height:42px; border-radius:7px; padding:.58rem 1rem; font:inherit; font-weight:600; }
.fyi-form.fyi-clean .fyi-form-success { margin:0 0 1rem; padding:.85rem 1rem; border:1px solid rgba(28,125,72,.35); border-radius:8px; background:rgba(28,125,72,.075); }
.fyi-auth-card.fyi-clean { max-width:680px; margin:1rem auto 1.5rem !important; }
.fyi-auth-card.fyi-clean #com-form-login { display:block !important; padding:0 !important; background:transparent !important; }
.fyi-auth-card.fyi-clean #com-form-login > .col-12 { width:100% !important; max-width:none !important; padding:0 !important; margin-bottom:1rem !important; }
.fyi-auth-card.fyi-clean .form-check { display:flex; align-items:center; gap:.5rem; }
.fyi-auth-card.fyi-clean .form-check-input { width:1rem; height:1rem; margin:0; }
.fyi-auth-card.fyi-clean .form-check-label { display:inline; margin:0; font-weight:400; }
.fyi-auth-card.fyi-clean a { text-decoration:none; }
.fyi-auth-card.fyi-clean a:hover { text-decoration:underline; }
@media (max-width: 720px) {
  .fyi-form.fyi-clean, .fyi-auth-card.fyi-clean { max-width:100%; margin-left:0; margin-right:0; }
  .fyi-form.fyi-clean .fyi-form-card, .fyi-auth-card.fyi-clean { border-radius:9px; padding:1rem; }
}
