/* ROYALS AUTH POPUP FIX - hidden until tap */
.royals-lang-toggle{
  display:none!important;
}

.royals-auth-modal{
  position:fixed!important;
  inset:0!important;
  z-index:99999!important;
  display:none!important;
  align-items:center!important;
  justify-content:center!important;
  background:rgba(0,0,0,.70)!important;
  backdrop-filter:blur(2px)!important;
  padding:18px!important;
}

.royals-auth-modal.open{
  display:flex!important;
}

.royals-auth-box{
  width:min(360px, calc(100vw - 46px))!important;
  max-width:360px!important;
  background:#121d2b!important;
  border:1px solid #2c3c55!important;
  border-radius:16px!important;
  padding:22px 18px!important;
  color:#fff!important;
  box-shadow:0 20px 70px rgba(0,0,0,.70)!important;
  position:relative!important;
  box-sizing:border-box!important;
}

.royals-auth-title{
  text-align:center!important;
  font-size:24px!important;
  font-weight:950!important;
  margin:0 0 18px!important;
  color:#fff!important;
}

.royals-auth-field{
  height:52px!important;
  border:1px solid #2d3d56!important;
  border-radius:8px!important;
  background:#121d2b!important;
  margin:14px 0!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  padding:0 14px!important;
  color:#77859b!important;
  box-sizing:border-box!important;
}

.royals-auth-field input{
  flex:1!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  color:#fff!important;
  font-size:16px!important;
  min-width:0!important;
}

.royals-auth-field input::placeholder{
  color:#72819a!important;
}

.royals-auth-row{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  color:#fff!important;
  margin:10px 0 16px!important;
}

.royals-auth-check{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  color:#fff!important;
}

.royals-auth-check input{
  width:20px!important;
  height:20px!important;
  accent-color:#ffd84a!important;
}

.royals-auth-link,
.royals-auth-switch{
  color:#168464!important;
  text-decoration:none!important;
  font-weight:800!important;
}

.royals-auth-switch{
  text-align:center!important;
  margin-top:18px!important;
  cursor:pointer!important;
}

.royals-auth-submit{
  width:100%!important;
  height:48px!important;
  border:0!important;
  border-radius:8px!important;
  background:#168464!important;
  color:#fff!important;
  font-size:18px!important;
  font-weight:950!important;
  display:block!important;
}

.royals-auth-close{
  position:absolute!important;
  left:50%!important;
  bottom:-64px!important;
  transform:translateX(-50%)!important;
  width:48px!important;
  height:48px!important;
  border-radius:50%!important;
  border:3px solid rgba(255,255,255,.85)!important;
  background:#1d2736!important;
  color:#fff!important;
  font-size:31px!important;
  line-height:40px!important;
  display:grid!important;
  place-items:center!important;
}

/* guest-only direct auth page fallback should not leak inside layout */
body > .royals-auth-box{
  margin:40px auto!important;
}

.royals-auth-msg{display:none;margin:10px 0;padding:10px;border-radius:10px;background:#351316;color:#ffd9df;font-weight:800;text-align:center}


/* Password visibility controls — accessible, touch-friendly and isolated to the auth modal. */
.royals-auth-field.royals-password-field{
  gap:10px!important;
}

.royals-auth-field.royals-password-field input{
  padding-right:4px!important;
}

.royals-password-toggle{
  flex:0 0 36px!important;
  width:36px!important;
  height:36px!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:10px!important;
  background:transparent!important;
  color:#72819a!important;
  cursor:pointer!important;
  -webkit-tap-highlight-color:transparent!important;
  transition:background .18s ease,color .18s ease,transform .18s ease!important;
}

.royals-password-toggle:active{
  transform:scale(.92)!important;
}

.royals-password-toggle:hover,
.royals-password-toggle:focus-visible{
  color:#e9f1ff!important;
  background:rgba(72,101,145,.22)!important;
  outline:0!important;
}

.royals-eye-icon{
  width:22px!important;
  height:14px!important;
  position:relative!important;
  display:block!important;
  border:2px solid currentColor!important;
  border-radius:60% 60% 60% 60% / 72% 72% 72% 72%!important;
  font-size:0!important;
  box-sizing:border-box!important;
}

.royals-eye-icon::before{
  content:""!important;
  position:absolute!important;
  width:6px!important;
  height:6px!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  border-radius:50%!important;
  background:currentColor!important;
}

.royals-password-toggle.is-visible{
  color:#20b98a!important;
}

.royals-password-toggle.is-visible .royals-eye-icon::after{
  content:""!important;
  position:absolute!important;
  width:28px!important;
  height:2px!important;
  background:currentColor!important;
  left:-5px!important;
  top:4px!important;
  transform:rotate(-38deg)!important;
  transform-origin:center!important;
  border-radius:999px!important;
}

@media (max-width:380px){
  .royals-password-toggle{flex-basis:34px!important;width:34px!important;height:34px!important}
}
/* V146 account currency selector inside registration modal */
.royals-auth-field select{
  flex:1!important;border:0!important;outline:0!important;background:transparent!important;color:#fff!important;font-size:16px!important;min-width:0!important;appearance:auto!important;
}
.royals-auth-field select option{background:#121d2b!important;color:#fff!important}
