/* Auth/UI stability hardening: visual busy states and theme-safe instruction text. */
#authBtn,
#sendRegistrationOtpBtn,
#verifyRegistrationOtpBtn,
#razorpaySignupBtn,
#startTrialBtn,
#logoutBtn,
#accountRecoveryContinue,
#adminTwoFactorSubmit,
#frontJoinBtn{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  transform:translateZ(0);
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease,opacity .18s ease;
}
#authBtn:disabled,
#sendRegistrationOtpBtn:disabled,
#verifyRegistrationOtpBtn:disabled,
#razorpaySignupBtn:disabled,
#startTrialBtn:disabled,
#logoutBtn:disabled,
#accountRecoveryContinue:disabled,
#adminTwoFactorSubmit:disabled{
  opacity:.9!important;
  cursor:progress!important;
  filter:saturate(.92)!important;
}
#authBtn:disabled::after,
#sendRegistrationOtpBtn:disabled::after,
#verifyRegistrationOtpBtn:disabled::after,
#razorpaySignupBtn:disabled::after,
#startTrialBtn:disabled::after,
#logoutBtn:disabled::after,
#accountRecoveryContinue:disabled::after,
#adminTwoFactorSubmit:disabled::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.34) 48%,transparent 72%);
  transform:translateX(-130%);
  animation:skilloAuthBusySweep 1.05s ease-in-out infinite;
}
#frontJoinBtn:not(:disabled){
  animation:skilloSignupPulse 3.8s ease-in-out infinite;
}
#logoutBtn:not(:disabled):active,
#authBtn:not(:disabled):active,
#sendRegistrationOtpBtn:not(:disabled):active,
#verifyRegistrationOtpBtn:not(:disabled):active,
#razorpaySignupBtn:not(:disabled):active,
#startTrialBtn:not(:disabled):active,
#accountRecoveryContinue:not(:disabled):active,
#adminTwoFactorSubmit:not(:disabled):active{
  transform:translateY(1px) scale(.985)!important;
}
@keyframes skilloAuthBusySweep{
  0%{transform:translateX(-130%)}
  55%,100%{transform:translateX(130%)}
}

#authBtn[aria-busy="true"]::before,
#sendRegistrationOtpBtn[aria-busy="true"]::before,
#verifyRegistrationOtpBtn[aria-busy="true"]::before,
#razorpaySignupBtn[aria-busy="true"]::before,
#startTrialBtn[aria-busy="true"]::before,
#logoutBtn[aria-busy="true"]::before,
#accountRecoveryContinue[aria-busy="true"]::before,
#adminTwoFactorSubmit[aria-busy="true"]::before{
  content:"";
  display:inline-block;
  width:14px;height:14px;
  margin-right:8px;
  vertical-align:-2px;
  border:2px solid rgba(255,255,255,.45);
  border-top-color:#fff;
  border-radius:50%;
  animation:skilloAuthSpinner .72s linear infinite;
}
.skillo-click-feedback{animation:skilloButtonClick .48s ease!important}
@keyframes skilloAuthSpinner{to{transform:rotate(360deg)}}
@keyframes skilloButtonClick{0%{transform:scale(1)}35%{transform:scale(.965)}100%{transform:scale(1)}}
@keyframes skilloSignupPulse{
  0%,100%{box-shadow:0 5px 15px rgba(20,33,61,.12)}
  50%{box-shadow:0 8px 24px rgba(239,91,68,.3)}
}

.human-verification-shell{
  transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease;
}
.human-verification-shell.is-verified{
  border-color:rgba(52,211,153,.8)!important;
  box-shadow:0 0 0 3px rgba(52,211,153,.12);
}
.human-verification-status.is-verified{
  color:#86efac!important;
  font-weight:700;
}

html.op-theme-dark .refund-agreement-surface,
html.op-theme-dark #signUpScreen .signup-policy-consent,
html.op-theme-dark #registrationOtpGate,
html.op-theme-dark #registrationPaymentSection,
html.op-theme-dark #razorpaySignupPanel,
html.op-theme-dark #trialRegistrationPanel,
html.op-theme-dark #renewalScreen .refund-agreement-surface,
html.op-theme-dark #trialUpgradeDialog .refund-agreement-surface{
  background:#0f1b2d!important;
  border-color:#4b6b8d!important;
  color:#e2e8f0!important;
}
html.op-theme-dark .refund-agreement-head strong,
html.op-theme-dark .refund-agreement-text,
html.op-theme-dark #signUpScreen .signup-policy-consent,
html.op-theme-dark #signUpScreen .signup-policy-consent span,
html.op-theme-dark #renewalScreen label,
html.op-theme-dark #trialUpgradeDialog label{
  color:#e2e8f0!important;
}
html.op-theme-dark .refund-agreement-languages button{
  background:#172a42!important;
  color:#dbeafe!important;
  border-color:#5b7998!important;
}
html.op-theme-dark .refund-agreement-languages button[aria-pressed="true"]{
  background:#0e7490!important;
  color:#fff!important;
  border-color:#67e8f9!important;
}
html.op-theme-dark #signUpScreen :is(#registrationOtpGate,#registrationPaymentSection,#razorpaySignupPanel,#trialRegistrationPanel)>div{
  color:#dbeafe!important;
}
html.op-theme-dark #signUpScreen :is(a,.signup-policy-consent a),
html.op-theme-dark #renewalScreen a,
html.op-theme-dark #trialUpgradeDialog a{
  color:#7dd3fc!important;
}

body.op-light .refund-agreement-surface,
body.op-light #signUpScreen .signup-policy-consent,
body.op-light #registrationOtpGate,
body.op-light #registrationPaymentSection,
body.op-light #razorpaySignupPanel,
body.op-light #trialRegistrationPanel,
body.op-light #renewalScreen .refund-agreement-surface,
body.op-light #trialUpgradeDialog .refund-agreement-surface{
  background:#fff!important;
  border-color:#b8c7dc!important;
  color:#334155!important;
}
body.op-light .refund-agreement-head strong,
body.op-light .refund-agreement-text,
body.op-light #signUpScreen .signup-policy-consent,
body.op-light #signUpScreen .signup-policy-consent span,
body.op-light #renewalScreen label,
body.op-light #trialUpgradeDialog label{
  color:#334155!important;
}
body.op-light .refund-agreement-languages button{
  background:#eff6ff!important;
  color:#1e3a8a!important;
  border-color:#93c5fd!important;
}
body.op-light .refund-agreement-languages button[aria-pressed="true"]{
  background:#2563eb!important;
  color:#fff!important;
}
body.op-light #signUpScreen :is(#registrationOtpGate,#registrationPaymentSection,#razorpaySignupPanel,#trialRegistrationPanel)>div{
  color:#334155!important;
}
body.op-light #signUpScreen :is(a,.signup-policy-consent a),
body.op-light #renewalScreen a,
body.op-light #trialUpgradeDialog a{
  color:#1d4ed8!important;
}

@media (prefers-reduced-motion:reduce){
  #frontJoinBtn,
  #authBtn:disabled::after,
  #sendRegistrationOtpBtn:disabled::after,
  #verifyRegistrationOtpBtn:disabled::after,
  #razorpaySignupBtn:disabled::after,
  #startTrialBtn:disabled::after,
  #logoutBtn:disabled::after,
  #accountRecoveryContinue:disabled::after,
  #adminTwoFactorSubmit:disabled::after,
  #authBtn[aria-busy="true"]::before,
  #sendRegistrationOtpBtn[aria-busy="true"]::before,
  #verifyRegistrationOtpBtn[aria-busy="true"]::before,
  #razorpaySignupBtn[aria-busy="true"]::before,
  #startTrialBtn[aria-busy="true"]::before,
  #logoutBtn[aria-busy="true"]::before,
  #accountRecoveryContinue[aria-busy="true"]::before,
  #adminTwoFactorSubmit[aria-busy="true"]::before,
  .skillo-click-feedback{
    animation:none!important;
  }
}
