/* app/assets/stylesheets/authentication.css */
body.rodeo-auth {
  background: var(--rodeo-color-canvas);
  color: var(--rodeo-color-text);
  color-scheme: dark;
  font-family: var(--rodeo-font-sans);
  line-height: var(--rodeo-line-height-body);
  margin: 0;
}
.rodeo-auth *, .rodeo-auth *::before, .rodeo-auth *::after { box-sizing: border-box; }
.rodeo-auth__shell {
  display: flex;
  min-height: 100vh;
  min-height: 100svh;
  padding: clamp(1rem, 4vw, 3rem);
}
.rodeo-auth__card {
  background: var(--rodeo-color-surface);
  border: var(--rodeo-border-width) solid var(--rodeo-color-border);
  border-radius: var(--rodeo-radius-panel);
  box-shadow: var(--rodeo-shadow-overlay);
  margin: auto;
  max-width: 28rem;
  min-width: 0;
  overflow-wrap: anywhere;
  padding: clamp(1.25rem, 5vw, 2.5rem);
  width: 100%;
}
.rodeo-auth__brand { color: var(--rodeo-color-link); font-weight: 700; margin: 0 0 0.5rem; }
.rodeo-auth h1 { font-size: 1.75rem; line-height: 1.2; margin: 0 0 1.5rem; }
.rodeo-auth label { display: block; font-weight: 600; margin-bottom: 0.5rem; }
.rodeo-auth input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.rodeo-auth select, .rodeo-auth textarea {
  background: var(--rodeo-color-canvas);
  border: var(--rodeo-border-width) solid var(--rodeo-color-border);
  border-radius: var(--rodeo-radius-control);
  color: var(--rodeo-color-text);
  font: inherit;
  min-height: var(--rodeo-control-height);
  padding: 0.65rem 0.75rem;
  width: 100%;
}
.rodeo-auth .form-group { margin-bottom: 1.25rem; }
.rodeo-auth button, .rodeo-auth input[type="submit"] {
  background: var(--rodeo-color-action);
  border: var(--rodeo-border-width) solid var(--rodeo-color-action);
  border-radius: var(--rodeo-radius-control);
  color: var(--rodeo-color-on-action);
  cursor: pointer;
  font: inherit;
  font-weight: 700;
  min-height: var(--rodeo-control-height);
  padding: 0.65rem 1rem;
  width: 100%;
}
.rodeo-auth button:disabled, .rodeo-auth input[type="submit"]:disabled {
  cursor: wait;
  opacity: 0.7;
}
.rodeo-auth a { color: var(--rodeo-color-link); text-underline-offset: 0.2em; }
.rodeo-auth a:focus-visible, .rodeo-auth input:focus-visible,
.rodeo-auth button:focus-visible, .rodeo-auth select:focus-visible, .rodeo-auth textarea:focus-visible {
  outline: var(--rodeo-focus-width) solid var(--rodeo-color-focus);
  outline-offset: var(--rodeo-focus-offset);
}
.rodeo-auth__message, .rodeo-auth .invalid-feedback {
  border-left: var(--rodeo-focus-width) solid var(--rodeo-color-warning);
  padding: 0.5rem 0.75rem;
}
.rodeo-auth ul { padding-left: 1.25rem; }
.rodeo-auth li { margin: 0.5rem 0; }
