@import url("https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,400;0,700;1,400&display=swap");

body {
  margin: auto;
  min-height: 100vh;
  min-width: 100%;
  background: var(--ory-theme-background-canvas);
  display: flex;
  flex-direction: column;
}

/* the browser adds margins to these elements by default */
ul,
ol,
p,
h1,
h2,
h3 {
  margin-top: 0;
  margin-bottom: 0;
}

/* main contains all of our page elements - excluding the footer */
main {
  /* fill the page */
  flex: 1;
}

.divider {
  width: 4rem;
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.spacing-32 {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.spacing-32-horizontal {
  display: flex;
  flex-direction: row;
  gap: 2rem;
}

.spacing-16 {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.spacing-16-horizontal {
  display: flex;
  flex-direction: row;
  gap: 1rem;
}

.spacing-8 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.divider-left {
  margin: 0;
}

.ory-branding {
  display: flex;
  flex-direction: row;
  gap: 0.375rem;
  align-items: center;
  padding-bottom: 2rem;
}

/* only manage the nav */
.main-nav {
  min-width: 18.75rem;
  position: fixed;
  height: auto;
  z-index: 1;
}

footer {
  position: fixed;
  bottom: 0;
  width: 100%;
  z-index: 2;
}

/* pushes the menu links to either side of the footer bar */
.footer-container {
  padding: 1rem 1.5rem;
  font-style: normal;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.75rem;
  display: flex;
  justify-content: space-between;
  text-decoration: none;
  color: var(--ory-theme-foreground-muted);
  background-color: var(--ory-theme-background-surface);
}

.footer-divider {
  height: 0;
  border-top: 1px !important;
}

@media screen and (max-width: 24.375em) {
  .footer-container > div:last-child {
    display: none;
  }
}

@media screen and (max-width: 40em) {
  body {
    background: var(--ory-theme-background-surface);
  }
}


/* Copy from Bootswatch Flatly */
body {
  --bs-blue: #2c3e50;
  --bs-indigo: #6610f2;
  --bs-purple: #6f42c1;
  --bs-pink: #e83e8c;
  --bs-red: #e74c3c;
  --bs-orange: #fd7e14;
  --bs-yellow: #f39c12;
  --bs-green: #18bc9c;
  --bs-teal: #20c997;
  --bs-cyan: #3498db;
  --bs-black: #000;
  --bs-white: #fff;
  --bs-gray: #95a5a6;
  --bs-gray-dark: #343a40;
  --bs-gray-100: #f8f9fa;
  --bs-gray-200: #ecf0f1;
  --bs-gray-300: #dee2e6;
  --bs-gray-400: #ced4da;
  --bs-gray-500: #b4bcc2;
  --bs-gray-600: #95a5a6;
  --bs-gray-700: #7b8a8b;
  --bs-gray-800: #343a40;
  --bs-gray-900: #212529;
  --bs-primary: #2c3e50;
  --bs-secondary: #95a5a6;
  --bs-success: #18bc9c;
  --bs-info: #3498db;
  --bs-warning: #f39c12;
  --bs-danger: #e74c3c;
  --bs-light: #ecf0f1;
  --bs-dark: #7b8a8b;
  --bs-primary-rgb: 44, 62, 80;
  --bs-secondary-rgb: 149, 165, 166;
  --bs-success-rgb: 24, 188, 156;
  --bs-info-rgb: 52, 152, 219;
  --bs-warning-rgb: 243, 156, 18;
  --bs-danger-rgb: 231, 76, 60;
  --bs-light-rgb: 236, 240, 241;
  --bs-dark-rgb: 123, 138, 139;
  --bs-primary-text-emphasis: #121920;
  --bs-secondary-text-emphasis: #3c4242;
  --bs-success-text-emphasis: #0a4b3e;
  --bs-info-text-emphasis: #153d58;
  --bs-warning-text-emphasis: #613e07;
  --bs-danger-text-emphasis: #5c1e18;
  --bs-light-text-emphasis: #7b8a8b;
  --bs-dark-text-emphasis: #7b8a8b;
  --bs-primary-bg-subtle: #d5d8dc;
  --bs-secondary-bg-subtle: #eaeded;
  --bs-success-bg-subtle: #d1f2eb;
  --bs-info-bg-subtle: #d6eaf8;
  --bs-warning-bg-subtle: #fdebd0;
  --bs-danger-bg-subtle: #fadbd8;
  --bs-light-bg-subtle: #fcfcfd;
  --bs-dark-bg-subtle: #ced4da;
  --bs-primary-border-subtle: #abb2b9;
  --bs-secondary-border-subtle: #d5dbdb;
  --bs-success-border-subtle: #a3e4d7;
  --bs-info-border-subtle: #aed6f1;
  --bs-warning-border-subtle: #fad7a0;
  --bs-danger-border-subtle: #f5b7b1;
  --bs-light-border-subtle: #ecf0f1;
  --bs-dark-border-subtle: #b4bcc2;
  --bs-white-rgb: 255, 255, 255;
  --bs-black-rgb: 0, 0, 0;
  --bs-font-sans-serif: Lato, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
  --bs-body-font-family: var(--bs-font-sans-serif);
  --bs-body-font-size: 1rem;
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.5;
  --bs-body-color: #212529;
  --bs-body-color-rgb: 33, 37, 41;
  --bs-body-bg: #fff;
  --bs-body-bg-rgb: 255, 255, 255;
  --bs-emphasis-color: #000;
  --bs-emphasis-color-rgb: 0, 0, 0;
  --bs-secondary-color: rgba(33, 37, 41, 0.75);
  --bs-secondary-color-rgb: 33, 37, 41;
  --bs-secondary-bg: #ecf0f1;
  --bs-secondary-bg-rgb: 236, 240, 241;
  --bs-tertiary-color: rgba(33, 37, 41, 0.5);
  --bs-tertiary-color-rgb: 33, 37, 41;
  --bs-tertiary-bg: #f8f9fa;
  --bs-tertiary-bg-rgb: 248, 249, 250;
  --bs-heading-color: inherit;
  --bs-link-color: #18bc9c;
  --bs-link-color-rgb: 24, 188, 156;
  --bs-link-decoration: underline;
  --bs-link-hover-color: #13967d;
  --bs-link-hover-color-rgb: 19, 150, 125;
  --bs-code-color: #e83e8c;
  --bs-highlight-color: #212529;
  --bs-highlight-bg: #fdebd0;
  --bs-border-width: 1px;
  --bs-border-style: solid;
  --bs-border-color: #dee2e6;
  --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
  --bs-border-radius: 0.375rem;
  --bs-border-radius-sm: 0.25rem;
  --bs-border-radius-lg: 0.5rem;
  --bs-border-radius-xl: 1rem;
  --bs-border-radius-xxl: 2rem;
  --bs-border-radius-2xl: var(--bs-border-radius-xxl);
  --bs-border-radius-pill: 50rem;
  --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
  --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);
  --bs-focus-ring-width: 0.25rem;
  --bs-focus-ring-opacity: 0.25;
  --bs-focus-ring-color: rgba(44, 62, 80, 0.25);
  --bs-form-valid-color: #18bc9c;
  --bs-form-valid-border-color: #18bc9c;
  --bs-form-invalid-color: #e74c3c;
  --bs-form-invalid-border-color: #e74c3c;
}

/* Override default Ory Elements theming */
a[class^="ory_elements__button_link"] {
  color: var(--bs-link-color) !important;
  text-decoration: underline !important;
}

a[class^="ory_elements__button_link"]:hover {
  color: var(--bs-link-hover-color) !important;
}

/* Secondary buttons: the 'Back' button during sign up, and the 'Resend code' during account verification */
button[value="profile:back"], button[name="email"] {
  background-color: var(--bs-secondary) !important;
}

button[value="profile:back"]:hover, button[name="email"]:hover {
  background-color: rgb(127, 140, 141) !important;
}
