@font-face {
  font-family: "googleSansFlex";
  src: url("/split-auth/google-sans-flex.ttf") format("truetype");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

:root {
  --font-sans-flex: "googleSansFlex", "googleSansFlex Fallback";
}

html.split-auth-page,
html.split-auth-page body,
html.split-super-admin-page,
html.split-super-admin-page body {
  min-height: 100%;
  background: #ffffff;
  color: #111111;
}

html.split-auth-page body,
html.split-super-admin-page body,
html.split-auth-page h1,
html.split-auth-page h2,
html.split-auth-page h3,
html.split-super-admin-page h1,
html.split-super-admin-page h2,
html.split-super-admin-page h3,
html.split-auth-page button,
html.split-super-admin-page button,
html.split-auth-page a,
html.split-super-admin-page a,
html.split-auth-page p,
html.split-super-admin-page p,
html.split-auth-page span,
html.split-super-admin-page span {
  font-family: var(--font-sans-flex), -apple-system, BlinkMacSystemFont,
    "Segoe UI", Helvetica, "Apple Color Emoji", Arial, sans-serif,
    "Segoe UI Emoji", "Segoe UI Symbol" !important;
  letter-spacing: 0 !important;
}

html.split-auth-page body,
html.split-super-admin-page body {
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

html.split-auth-page #app,
html.split-auth-page #app > div {
  min-height: 100vh;
}

html.split-auth-page .split-auth-nav-blur,
html.split-super-admin-page .split-auth-nav-blur {
  position: fixed;
  inset: 0 0 auto;
  z-index: 40;
  height: 80px;
  pointer-events: none;
  background: rgba(255, 255, 255, 0.4);
  -webkit-backdrop-filter: blur(24px) saturate(1.5);
  backdrop-filter: blur(24px) saturate(1.5);
  -webkit-mask-image: linear-gradient(to bottom, black 70%, transparent 100%);
  mask-image: linear-gradient(to bottom, black 70%, transparent 100%);
}

html.split-auth-page .split-auth-nav,
html.split-super-admin-page .split-auth-nav {
  position: fixed;
  inset: calc(env(safe-area-inset-top, 0px) + 1.25rem) 0 auto;
  z-index: 50;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 36px;
  padding: 0 24px;
  pointer-events: none;
}

html.split-auth-page .split-auth-nav-inner,
html.split-super-admin-page .split-auth-nav-inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

html.split-auth-page .split-auth-logo,
html.split-super-admin-page .split-auth-logo {
  z-index: 60;
  display: inline-flex;
  align-items: center;
}

html.split-auth-page .split-auth-nav a,
html.split-super-admin-page .split-auth-nav a {
  display: inline-flex;
  align-items: center;
  pointer-events: auto;
}

html.split-auth-page .split-auth-nav img,
html.split-super-admin-page .split-auth-nav img {
  display: block;
  width: auto;
  height: 36px;
  object-fit: contain;
}

html.split-auth-page .split-auth-nav-links,
html.split-super-admin-page .split-auth-nav-links {
  position: absolute;
  left: 50%;
  display: flex;
  align-items: center;
  gap: 32px;
  transform: translateX(-50%);
  white-space: nowrap;
}

html.split-auth-page .split-auth-nav-links a,
html.split-super-admin-page .split-auth-nav-links a {
  gap: 8px;
  color: #111111 !important;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1;
  text-decoration: none !important;
  transition:
    color 160ms ease,
    opacity 160ms ease;
}

html.split-auth-page .split-auth-nav-links a:hover,
html.split-super-admin-page .split-auth-nav-links a:hover {
  opacity: 0.68;
}

html.split-auth-page .split-auth-nav-dot,
html.split-super-admin-page .split-auth-nav-dot {
  width: 6px;
  height: 6px;
  border-radius: 9999px;
  background: #ff4306;
}

html.split-auth-page .split-auth-nav-badge,
html.split-super-admin-page .split-auth-nav-badge {
  padding: 3px 6px;
  border-radius: 9999px;
  background: rgba(17, 17, 17, 0.9);
  color: #ffffff !important;
  font-size: 0.5625rem;
  font-weight: 650;
  line-height: 1;
  text-transform: uppercase;
}

html.split-auth-page main.split-auth-shell {
  position: relative;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100%;
  min-height: 100vh;
  padding: 96px 16px 80px !important;
  background: #ffffff !important;
}

html.split-auth-page main.split-auth-shell::before,
html.split-auth-page main.split-auth-shell::after {
  display: none;
}

html.split-auth-page main.split-auth-shell > section {
  position: relative;
  z-index: 10;
  width: 100% !important;
  max-width: 448px !important;
  margin: 0 auto !important;
}

html.split-auth-page main.split-auth-shell > section:first-of-type {
  text-align: center;
}

html.split-auth-page main.split-auth-shell > section:first-of-type img,
html.split-auth-page .split-auth-visual,
html.split-auth-page main.split-auth-shell > section:first-of-type > p:not(.split-auth-subtitle) {
  display: none !important;
}

html.split-auth-page main.split-auth-shell h1,
html.split-auth-page main.split-auth-shell h2 {
  margin: 0 !important;
  color: #111111 !important;
  text-align: center !important;
  font-size: clamp(2rem, 8vw, 3.4rem) !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
}

html.split-auth-page .split-auth-subtitle {
  margin: 24px auto 0 !important;
  max-width: 620px;
  color: #6b7280 !important;
  text-align: center !important;
  font-size: 1.15rem !important;
  line-height: 1.625 !important;
}

html.split-auth-page main.split-auth-shell > section.bg-white,
html.split-auth-page main.split-auth-shell > section.dark\:bg-n-solid-2 {
  max-width: 448px !important;
  margin-top: 32px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

html.split-auth-page main.split-auth-shell form,
html.split-auth-page main.split-auth-shell .space-y-5,
html.split-auth-page main.split-auth-shell .space-y-3,
html.split-auth-page main.split-auth-shell [href="/app/login/sso"],
html.split-auth-page main.split-auth-shell [href="auth/reset/password"],
html.split-auth-page main.split-auth-shell .uppercase {
  display: none !important;
}

html.split-auth-page main.split-auth-shell .flex.flex-col.gap-4 {
  gap: 0 !important;
}

html.split-auth-page main.split-auth-shell .flex.flex-col.gap-4 > *:not(:first-child) {
  display: none !important;
}

html.split-auth-page a.split-auth-google-button,
html.split-auth-page a[href*="accounts.google.com"] {
  width: 100% !important;
  min-height: 56px !important;
  padding: 0 24px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  border: 1px solid #111111 !important;
  border-radius: 9999px !important;
  background: rgba(17, 17, 17, 0.05) !important;
  color: #111111 !important;
  box-shadow: none !important;
  text-decoration: none !important;
  transition:
    background 160ms ease,
    transform 160ms ease !important;
}

html.split-auth-page a.split-auth-google-button:hover,
html.split-auth-page a[href*="accounts.google.com"]:hover {
  background: #ffffff !important;
  transform: translateY(-1px);
}

html.split-auth-page a.split-auth-google-button span,
html.split-auth-page a[href*="accounts.google.com"] span {
  color: #111111 !important;
  font-size: 1.125rem !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
}

html.split-auth-page .split-auth-policy {
  margin: 20px 0 0;
  color: #6b7280;
  text-align: center;
  font-size: 0.875rem;
  line-height: 1.5;
}

html.split-auth-page .split-auth-policy a {
  color: #ff4306;
  text-decoration: underline;
  text-underline-offset: 2px;
}

html.split-auth-page.split-auth-completing main.split-auth-shell > section.bg-white {
  display: flex !important;
  justify-content: center;
  min-height: 88px;
}

@media (max-width: 640px) {
  html.split-auth-page .split-auth-nav,
  html.split-super-admin-page .split-auth-nav {
    top: calc(env(safe-area-inset-top, 0px) + 1.25rem);
    padding: 0 24px;
  }

  html.split-auth-page .split-auth-nav-blur,
  html.split-super-admin-page .split-auth-nav-blur {
    height: 128px;
  }

  html.split-auth-page .split-auth-nav-inner,
  html.split-super-admin-page .split-auth-nav-inner {
    align-items: flex-start;
    flex-direction: column;
    gap: 16px;
  }

  html.split-auth-page .split-auth-nav-links,
  html.split-super-admin-page .split-auth-nav-links {
    position: static;
    width: 100%;
    max-width: 100%;
    justify-content: space-between;
    gap: 8px;
    overflow-x: visible;
    padding: 2px 0 8px;
    transform: none;
  }

  html.split-auth-page .split-auth-nav-links a,
  html.split-super-admin-page .split-auth-nav-links a {
    gap: 6px;
    font-size: 0.8125rem;
  }

  html.split-auth-page .split-auth-nav-badge,
  html.split-super-admin-page .split-auth-nav-badge {
    display: none;
  }

  html.split-auth-page main.split-auth-shell {
    justify-content: flex-start !important;
    padding: 176px 18px 44px !important;
  }

  html.split-auth-page main.split-auth-shell h1,
  html.split-auth-page main.split-auth-shell h2 {
    font-size: clamp(2rem, 11vw, 3rem) !important;
  }

  html.split-auth-page .split-auth-subtitle {
    font-size: 1rem !important;
  }

  html.split-auth-page a.split-auth-google-button,
  html.split-auth-page a[href*="accounts.google.com"] {
    min-height: 56px !important;
  }
}

html.split-super-admin-page .split-super-admin-shell {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
  padding: 132px 16px 72px;
  background: #ffffff;
}

html.split-super-admin-page .split-super-admin-heading {
  width: 100%;
  max-width: 620px;
  text-align: center;
}

html.split-super-admin-page .split-super-admin-heading h1 {
  margin: 0;
  color: #111111;
  font-size: clamp(2rem, 8vw, 3.4rem);
  font-weight: 700;
  line-height: 1.15;
}

html.split-super-admin-page .split-super-admin-heading p {
  margin: 24px auto 0;
  max-width: 620px;
  color: #6b7280;
  font-size: 1.15rem;
  line-height: 1.625;
}

html.split-super-admin-page .split-super-admin-form {
  width: 100%;
  max-width: 448px;
  margin-top: 32px;
}

html.split-super-admin-page .split-super-admin-form label {
  display: block;
  margin: 0 0 8px;
  color: #111111;
  font-size: 0.875rem;
  font-weight: 600;
}

html.split-super-admin-page .split-super-admin-field {
  margin-bottom: 18px;
}

html.split-super-admin-page .split-super-admin-input {
  width: 100%;
  min-height: 54px;
  padding: 0 18px;
  border: 1px solid rgba(17, 17, 17, 0.18);
  border-radius: 14px;
  background: #ffffff;
  color: #111111;
  font-size: 1rem;
  outline: none;
  transition:
    border-color 160ms ease,
    box-shadow 160ms ease;
}

html.split-super-admin-page .split-super-admin-input:focus {
  border-color: #111111;
  box-shadow: 0 0 0 4px rgba(17, 17, 17, 0.08);
}

html.split-super-admin-page .split-super-admin-submit {
  width: 100%;
  min-height: 56px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #111111;
  border-radius: 9999px;
  background: #111111;
  color: #ffffff;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.2;
  transition:
    background 160ms ease,
    transform 160ms ease;
}

html.split-super-admin-page .split-super-admin-submit:hover {
  background: #000000;
  transform: translateY(-1px);
}

html.split-super-admin-page .split-super-admin-alert {
  margin-bottom: 18px;
  border-radius: 12px;
  background: rgba(255, 67, 6, 0.08);
  color: #9a3412;
  padding: 12px 14px;
  font-size: 0.875rem;
  line-height: 1.4;
}

html.split-super-admin-app .bg-woot-500,
html.split-super-admin-page .bg-woot-500 {
  background-color: #111111 !important;
}

html.split-super-admin-app .hover\:bg-woot-600:hover,
html.split-super-admin-page .hover\:bg-woot-600:hover {
  background-color: #000000 !important;
}

html.split-super-admin-app .text-woot-500,
html.split-super-admin-app .text-woot-600,
html.split-super-admin-page .text-woot-500,
html.split-super-admin-page .text-woot-600 {
  color: #ff4306 !important;
}

html.split-super-admin-app .focus\:ring-woot-500:focus,
html.split-super-admin-page .focus\:ring-woot-500:focus {
  --tw-ring-color: #111111 !important;
}

@media (max-width: 640px) {
  html.split-super-admin-page .split-super-admin-shell {
    justify-content: flex-start;
    padding: 176px 18px 44px;
  }

  html.split-super-admin-page .split-super-admin-heading h1 {
    font-size: clamp(2rem, 11vw, 3rem);
  }

  html.split-super-admin-page .split-super-admin-heading p {
    font-size: 1rem;
  }
}
