/*!********************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[5].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[5].use[3]!./components/auth/password-requirements.module.css ***!
  \********************************************************************************************************************************************************************************************************************************************************************************************/
.password-requirements_list__WSpOk {
  margin-top: var(--space-2);
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  list-style: none;
  padding: 0;
}

.password-requirements_met__SC1Lm,
.password-requirements_unmet__cHJn3 {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: var(--text-xs);
}

.password-requirements_met__SC1Lm {
  color: var(--color-success);
}

.password-requirements_unmet__cHJn3 {
  color: var(--text-muted);
}

/*!********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[5].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[5].use[3]!./components/auth/auth-form.module.css ***!
  \********************************************************************************************************************************************************************************************************************************************************************************/
/* ============================================
   Auth Form Styles (login, register, etc.)
   Based on contact-form.module.css BEM pattern
   ============================================ */

.auth-form_card__Urnh7 {
  background-color: var(--bg-surface);
  border-radius: var(--radius-lg);
  padding: var(--space-8);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
  max-width: 480px;
  margin: 0 auto;
}

.auth-form_title__TO8QY {
  font-size: var(--text-2xl);
  font-weight: var(--font-bold);
  color: var(--text-heading);
  margin-bottom: var(--space-2);
  text-align: center;
}

.auth-form_subtitle__ml6Io {
  font-size: var(--text-base);
  color: var(--text-secondary);
  margin-bottom: var(--space-6);
  text-align: center;
}

.auth-form_form__t8Epl {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.auth-form_formGrid__Pw3qa {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-4);
}

@media (min-width: 640px) {
  .auth-form_formGrid__Pw3qa {
    grid-template-columns: 1fr 1fr;
  }
}

.auth-form_formField__1gk2q {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}

.auth-form_label__SOfHt {
  font-size: var(--text-sm);
  font-weight: var(--font-medium);
  color: var(--text-primary);
}

.auth-form_required__2GWkX {
  color: var(--color-error);
}

.auth-form_input__wVl4Y {
  width: 100%;
  padding: var(--space-3);
  font-size: var(--text-base);
  color: var(--text-primary);
  background-color: var(--bg-page);
  border: 1px solid var(--border-color);
  border-radius: var(--radius-md);
  transition: border-color 0.2s, box-shadow 0.2s;
}

.auth-form_input__wVl4Y:focus {
  outline: none;
  border-color: var(--color-primary-500);
  box-shadow: 0 0 0 3px var(--color-primary-100);
}

.auth-form_inputError__NcT7K {
  border-color: var(--color-error);
}

.auth-form_inputError__NcT7K:focus {
  box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.1);
}

.auth-form_fieldError__fdsl5 {
  font-size: var(--text-sm);
  color: var(--color-error);
}

.auth-form_checkboxField__wAGyb {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}

.auth-form_checkboxLabel__Afksf {
  display: flex;
  align-items: flex-start;
  gap: var(--space-2);
  font-size: var(--text-sm);
  color: var(--text-primary);
  cursor: pointer;
}

.auth-form_checkbox__cY2Xg {
  margin-top: 2px;
  flex-shrink: 0;
  accent-color: var(--color-primary-600);
}

.auth-form_submitButton__LtLGK {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin-top: var(--space-2);
  padding: var(--space-3) var(--space-8);
  font-size: var(--text-base);
  font-weight: var(--font-medium);
  color: white;
  background-color: var(--color-primary-600);
  border: none;
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: background-color 0.2s;
}

.auth-form_submitButton__LtLGK:hover:not(:disabled) {
  background-color: var(--color-primary-700);
}

.auth-form_submitButton__LtLGK:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

.auth-form_link__5zNFm {
  color: var(--color-primary-600);
  text-decoration: none;
  font-size: var(--text-sm);
  cursor: pointer;
}

.auth-form_link__5zNFm:hover {
  text-decoration: underline;
  color: var(--color-primary-700);
}

.auth-form_linkCenter__kGxcs {
  text-align: center;
  font-size: var(--text-sm);
  color: var(--text-secondary);
}

.auth-form_alertError__lcK91 {
  background-color: #fef2f2;
  border: 1px solid #fecaca;
  border-radius: var(--radius-md);
  padding: var(--space-3) var(--space-4);
  margin-bottom: var(--space-4);
  font-size: var(--text-sm);
  color: #b91c1c;
}

.auth-form_alertSuccess__gKYdQ {
  background-color: #f0fdf4;
  border: 1px solid #bbf7d0;
  border-radius: var(--radius-md);
  padding: var(--space-3) var(--space-4);
  margin-bottom: var(--space-4);
  font-size: var(--text-sm);
  color: #15803d;
}

.auth-form_alertWarning___otFF {
  background-color: #fffbeb;
  border: 1px solid #fde68a;
  border-radius: var(--radius-md);
  padding: var(--space-3) var(--space-4);
  margin-bottom: var(--space-4);
  font-size: var(--text-sm);
  color: #92400e;
}

.auth-form_alertInfo__bZJ5N {
  background-color: #eff6ff;
  border: 1px solid #bfdbfe;
  border-radius: var(--radius-md);
  padding: var(--space-3) var(--space-4);
  margin-bottom: var(--space-4);
  font-size: var(--text-sm);
  color: #1e40af;
}

