/* RiverX v106 — guest top-bar Login/Register visual refresh only.
   Intentionally scoped to the fixed guest actions so auth form submits and
   all other RiverX buttons keep their existing designs. */

.rx-topbar-guest-actions {
  gap: 8px !important;
  align-items: center !important;
}

/* Shared geometry: compact, balanced, and identical height. */
.rx-topbar-login-btn.button-64,
.rx-topbar-register-btn.button-64 {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 40px !important;
  min-height: 40px !important;
  max-height: 40px !important;
  padding: 0 !important;
  border-radius: 6px !important;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-align: center !important;
  text-decoration: none !important;
  letter-spacing: 0.04em !important;
  cursor: pointer !important;
  user-select: none !important;
  -webkit-user-select: none !important;
  white-space: nowrap !important;
  transform: none !important;
  filter: none !important;
  box-shadow: none !important;
  transition: background-color 160ms ease, border-color 160ms ease, box-shadow 100ms ease !important;
}

.rx-topbar-login-btn.button-64 > .text,
.rx-topbar-register-btn.button-64 > .text {
  box-sizing: border-box !important;
  width: 100% !important;
  height: 100% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 14px !important;
  margin: 0 !important;
  border-radius: inherit !important;
  background: transparent !important;
  color: inherit !important;
  transform: none !important;
  transition: none !important;
}

/* Login — clean dark outlined reference treatment. */
.rx-topbar-login-btn.button-64 {
  width: 88px !important;
  min-width: 88px !important;
  max-width: 88px !important;
  color: #ffffff !important;
  background: #1d3042 !important;
  background-image: none !important;
  border: 1px solid rgba(255, 255, 255, 0.92) !important;
}

.rx-topbar-login-btn.button-64:hover:not(:disabled),
.rx-topbar-login-btn.button-64:focus-visible:not(:disabled) {
  color: #ffffff !important;
  background: #263d52 !important;
  background-image: none !important;
  border-color: #ffffff !important;
  transform: none !important;
  filter: none !important;
  box-shadow: none !important;
}

.rx-topbar-login-btn.button-64:active:not(:disabled) {
  background: #182a3a !important;
  transform: none !important;
  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.20) !important;
}

/* Register — requested Bootstrap-style Button 3 success treatment. */
.rx-topbar-register-btn.button-64 {
  width: 108px !important;
  min-width: 108px !important;
  max-width: 108px !important;
  color: #ffffff !important;
  background: #198754 !important;
  background-image: none !important;
  border: none !important;
  letter-spacing: 1.2px !important;
}

.rx-topbar-register-btn.button-64:hover:not(:disabled),
.rx-topbar-register-btn.button-64:focus-visible:not(:disabled) {
  color: #ffffff !important;
  background: #157347 !important;
  background-image: none !important;
  border-color: #146c43 !important;
  transform: none !important;
  filter: none !important;
  box-shadow: none !important;
}

.rx-topbar-register-btn.button-64:active:not(:disabled) {
  background: #157347 !important;
  transform: none !important;
  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.24) !important;
}

.rx-topbar-login-btn.button-64:focus-visible,
.rx-topbar-register-btn.button-64:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.9) !important;
  outline-offset: 2px !important;
}

.rx-topbar-login-btn.button-64:disabled,
.rx-topbar-register-btn.button-64:disabled {
  pointer-events: none !important;
  opacity: 0.65 !important;
}

/* Small screens preserve equal height while reducing width just enough to avoid crowding. */
@media (max-width: 440px) {
  .rx-topbar-guest-actions {
    gap: 6px !important;
  }

  .rx-topbar-login-btn.button-64,
  .rx-topbar-register-btn.button-64 {
    height: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;
    font-size: 13px !important;
  }

  .rx-topbar-login-btn.button-64 {
    width: 78px !important;
    min-width: 78px !important;
    max-width: 78px !important;
  }

  .rx-topbar-register-btn.button-64 {
    width: 98px !important;
    min-width: 98px !important;
    max-width: 98px !important;
  }

  .rx-topbar-login-btn.button-64 > .text,
  .rx-topbar-register-btn.button-64 > .text {
    padding-inline: 10px !important;
  }
}
