#authScreen {
  isolation: isolate;
  background: #edf1eb !important;
  background-image: linear-gradient(rgba(53, 93, 79, .045) 1px, transparent 1px), linear-gradient(90deg, rgba(53, 93, 79, .045) 1px, transparent 1px) !important;
  background-size: 40px 40px !important;
}
#authScreen::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: radial-gradient(ellipse at 25% 15%, rgba(255,255,255,.88), transparent 56%), radial-gradient(ellipse at 83% 80%, rgba(203,220,204,.6), transparent 42%);
}
#authScreen > .auth-atmosphere {
  position: fixed;
  inset: 0;
  z-index: 0;
  max-width: none !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  overflow: hidden;
  pointer-events: none;
}
.auth-atmosphere > img {
  position: absolute;
  width: min(48vw, 680px);
  top: 50%;
  left: calc(50% + 210px);
  transform: translateY(-50%) rotate(-16deg);
  opacity: .19;
  filter: saturate(.7);
  animation: auth-mark-breathe 9s ease-in-out infinite;
}
.auth-orbit { position: absolute; border: 1px solid rgba(42,91,75,.11); border-radius: 50%; animation: auth-orbit-drift 20s linear infinite; }
.auth-orbit-one { width: 690px; height: 690px; left: calc(50% + 130px); top: calc(50% - 345px); }
.auth-orbit-two { width: 920px; height: 920px; left: calc(50% + 15px); top: calc(50% - 460px); animation-duration: 27s; animation-direction: reverse; }
#authScreen > .auth-shell {
  position: relative;
  z-index: 1;
  width: min(100%, 440px);
  max-width: 440px !important;
  border-radius: 13px;
  border: 1px solid #d8e1d7;
  box-shadow: 0 25px 75px rgba(22,58,45,.11), 0 3px 9px rgba(22,58,45,.04);
  animation: auth-card-enter .68s cubic-bezier(.2,.75,.2,1) both;
}
.auth-pane { padding: 39px 40px 42px; }
.auth-mobile-brand { text-decoration: none; width: fit-content; }
#authScreen .auth-mobile-brand { color: #263630 !important; }
.auth-brand-mark { display: grid; place-items: center; width: 35px; height: 35px; overflow: hidden; }
.auth-brand-mark img { width: 47px; height: 47px; max-width: none; border-radius: 0; flex: none; }
.auth-pane h2 { font-size: 28px; margin-bottom: 26px; }
#authScreen .fg input { transition: border-color .22s, box-shadow .22s, background-color .22s; }
#authScreen .fg input:focus { background: #fcfffb; border-color: #3b7160; box-shadow: 0 0 0 3px rgba(68,124,96,.11); outline: 0; }
.auth-submit { transition: transform .22s, background-color .22s, box-shadow .22s !important; }
.auth-submit:hover { transform: translateY(-2px); box-shadow: 0 9px 19px rgba(29,73,66,.15) !important; }
.auth-submit:active { transform: translateY(0); }
.auth-submit span { transition: transform .22s; }
.auth-submit:hover span { transform: translateX(4px); }
#loginForm, #registerForm { animation: auth-form-enter .35s ease both; }
.auth-agreements { display: grid; gap: 10px; margin: 2px 0 14px; }
.auth-agreements label { display: flex; align-items: flex-start; gap: 9px; color: #5d6c63; font-size: 11px; line-height: 1.45; cursor: pointer; }
.auth-agreements input { width: 15px; height: 15px; min-height: 15px !important; margin: 1px 0 0; padding: 0 !important; accent-color: #285c54; flex: none; }
.auth-agreements a { text-decoration: underline !important; text-underline-offset: 2px; }
.auth-legal-links { display: flex; justify-content: center; gap: 15px; margin-top: 20px; color: #78847b; font-size: 10px; }
.auth-legal-links a { color: #66776b !important; font-weight: 400 !important; }
.auth-legal-links a:hover { text-decoration: underline; }
.loader-logo { overflow: visible !important; width: 76px; height: 76px; }
.loader-logo img { animation: loader-float 2.4s ease-in-out infinite; }
.sb-logo { overflow: hidden; }
.sb-logo img { width: 44px; height: 44px; max-width: none; margin-left: -5px; margin-top: -5px; }
@keyframes auth-card-enter { from { opacity: 0; transform: translateY(24px) scale(.975); } to { opacity: 1; transform: translateY(0) scale(1); } }
@keyframes auth-form-enter { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
@keyframes auth-mark-breathe { 0%,100% { transform: translateY(-50%) rotate(-16deg) scale(1); } 50% { transform: translateY(calc(-50% - 15px)) rotate(-12deg) scale(1.025); } }
@keyframes auth-orbit-drift { to { transform: rotate(360deg); } }
@keyframes loader-float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-6px); } }
@media (max-width: 800px) {
  .auth-atmosphere > img { width: 540px; left: calc(50% + 125px); opacity: .12; }
  .auth-orbit-one { left: calc(50% + 40px); }
  .auth-orbit-two { left: calc(50% - 70px); }
}
@media (max-width: 480px) {
  #authScreen { background: #f8faf6 !important; }
  #authScreen > .auth-shell { background: rgba(255,255,255,.95); width: 100%; max-width: none !important; border: 0; box-shadow: none; }
  .auth-pane { padding: 44px 26px 36px; }
  .auth-atmosphere { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  #authScreen *, #authScreen::after, .loader-logo img { animation: none !important; transition-duration: .01ms !important; }
}
