/* Auth Total Redesign V1 - isolated final override */
html,body{min-height:100%;}
body{overflow-x:hidden!important;background:#eef6ff!important;color:#0b2147!important;}
.authx-shell.shell{min-height:100svh!important;display:grid!important;place-items:center!important;padding:28px!important;background:radial-gradient(circle at 10% 10%,rgba(37,99,235,.12),transparent 26rem),radial-gradient(circle at 90% 85%,rgba(6,182,212,.12),transparent 28rem),#eef6ff!important;}
.authx-card.card{width:min(1180px,100%)!important;max-width:none!important;min-height:680px!important;padding:0!important;display:grid!important;grid-template-columns:minmax(360px,.92fr) minmax(430px,1.08fr)!important;overflow:hidden!important;border:1px solid #cfe0f4!important;border-radius:34px!important;background:#fff!important;box-shadow:0 28px 80px rgba(24,72,132,.18)!important;backdrop-filter:none!important;}
.authx-visual{position:relative;overflow:hidden;min-height:680px;background:linear-gradient(145deg,#0c49d8 0%,#087ff0 52%,#12b9cf 100%);isolation:isolate;}
.authx-visual:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 65% 25%,rgba(255,255,255,.2),transparent 18rem),linear-gradient(135deg,transparent 45%,rgba(255,255,255,.08) 45% 46%,transparent 46%);}
.authx-grid{position:absolute;inset:-20%;opacity:.22;background-image:linear-gradient(rgba(255,255,255,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.13) 1px,transparent 1px);background-size:38px 38px;transform:perspective(500px) rotateX(62deg) translateY(34%);animation:authGrid 14s linear infinite;}
.authx-core{position:absolute;left:50%;top:47%;width:146px;height:146px;display:grid;place-items:center;transform:translate(-50%,-50%);border-radius:40px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.35);box-shadow:0 0 0 16px rgba(255,255,255,.06),0 30px 70px rgba(1,34,94,.32);backdrop-filter:blur(12px);animation:authFloat 4.8s ease-in-out infinite;}
.authx-core-mark{width:94px;height:94px;display:grid;place-items:center;border-radius:28px;background:#fff;color:#1268df;font-size:40px;font-weight:950;box-shadow:0 18px 40px rgba(0,31,89,.24);overflow:hidden;}
.authx-core-mark img{width:100%;height:100%;object-fit:contain;padding:7px;}
.authx-orbit{position:absolute;left:50%;top:47%;border:1px solid rgba(255,255,255,.34);border-radius:50%;transform:translate(-50%,-50%);}
.authx-orbit-a{width:300px;height:300px;animation:authSpin 15s linear infinite}.authx-orbit-b{width:410px;height:410px;border-style:dashed;opacity:.65;animation:authSpinReverse 22s linear infinite}
.authx-orbit:after{content:"";position:absolute;left:50%;top:-6px;width:12px;height:12px;border-radius:50%;background:#8cf6ff;box-shadow:0 0 22px #8cf6ff;}
.authx-pulse{position:absolute;width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:0 0 0 9px rgba(255,255,255,.09),0 0 28px rgba(255,255,255,.8)}
.authx-pulse-1{left:18%;top:24%;animation:authPulse 3s ease-in-out infinite}.authx-pulse-2{right:17%;bottom:24%;animation:authPulse 3s 1.2s ease-in-out infinite}
.authx-visual-brand{position:absolute;left:0;right:0;bottom:52px;text-align:center;color:#fff;font-size:24px;font-weight:900;letter-spacing:-.02em;text-shadow:0 4px 20px rgba(0,31,91,.25)}
.authx-main{min-width:0;padding:26px 34px 34px;background:#fff;display:flex;flex-direction:column;}
.authx-topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;}
.authx-brand.brand{min-height:48px!important;margin:0!important;padding:0!important;border:0!important;gap:10px!important;}
.authx-brand .mark{width:42px!important;height:42px!important;flex:0 0 42px!important;border-radius:13px!important;background:#eff7ff!important;border:1px solid #cfe3fb!important;box-shadow:none!important;color:#1268df!important;}
.authx-brand .brand-name{font-size:17px!important;color:#0b2147!important;}
.authx-language.language-form{width:170px!important;margin:0!important;}
.authx-language .language-picker summary{height:42px!important;border-color:#d5e4f4!important;background:#f6faff!important;color:#244267!important;border-radius:13px!important;}
.authx-language .language-picker-menu{background:#fff!important;border-color:#d5e4f4!important;box-shadow:0 16px 38px rgba(29,76,129,.16)!important;}
.authx-language .language-picker-menu button{color:#244267!important;}
.authx-switch{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:6px;margin-bottom:24px;border:1px solid #d5e5f6;border-radius:18px;background:#eff6ff;}
.authx-switch-item{min-height:48px;display:flex;align-items:center;justify-content:center;padding:8px 14px;border-radius:13px;text-decoration:none;color:#60748f;font-size:14px;font-weight:850;transition:.2s ease;}
.authx-switch-item.is-active{color:#fff;background:linear-gradient(135deg,#2563eb,#0ea5c6);box-shadow:0 10px 24px rgba(37,99,235,.22);}
.authx-content{min-width:0;flex:1;}
.authx-main .alert{margin:0 0 16px!important;border-radius:14px!important;}
.authx-main .login-modern,.authx-main .register-modern{padding:0!important;}
.authx-main .login-modern .eyebrow,.authx-main .register-modern .eyebrow{font-size:11px!important;color:#1682e9!important;letter-spacing:.13em!important;}
.authx-main .login-modern h1,.authx-main .register-modern h1{font-size:clamp(28px,3vw,38px)!important;color:#0b2147!important;line-height:1.08!important;margin-bottom:8px!important;}
.authx-main .login-modern .subtitle{color:#6a7d97!important;margin:8px 0 22px!important;}
.authx-main .field>label{color:#1d3659!important;font-size:13px!important;}
.authx-main input[type=text],.authx-main input[type=email],.authx-main input[type=password]{height:50px!important;border:1px solid #d4e2f1!important;background:#f7fbff!important;color:#10294e!important;border-radius:14px!important;box-shadow:none!important;}
.authx-main input:focus{border-color:#3b82f6!important;box-shadow:0 0 0 4px rgba(59,130,246,.10)!important;background:#fff!important;}
.authx-main .login-input-icon,.authx-main .register-input-icon{color:#1682e9!important;}
.authx-main .button,.authx-main .login-submit,.authx-main .register-submit{width:100%!important;min-height:52px!important;border:0!important;border-radius:15px!important;color:#fff!important;background:linear-gradient(135deg,#2563eb,#0ea5c6)!important;box-shadow:0 12px 28px rgba(37,99,235,.22)!important;font-weight:850!important;}
.authx-main .footer,.authx-main .register-footer{color:#6a7d97!important;}
.authx-main .footer a,.authx-main .register-footer a{color:#1678df!important;font-weight:850!important;}
.authx-main .checkbox{color:#60748f!important;}
.authx-main .note{color:#7a8ba1!important;}
.authx-main .error{color:#dc4d67!important;}
@keyframes authGrid{to{transform:perspective(500px) rotateX(62deg) translateY(calc(34% + 38px))}}
@keyframes authSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes authSpinReverse{to{transform:translate(-50%,-50%) rotate(-360deg)}}
@keyframes authFloat{50%{transform:translate(-50%,calc(-50% - 12px)) rotate(1deg)}}
@keyframes authPulse{50%{transform:scale(1.35);opacity:.65}}
@media(max-width:850px){
 .authx-shell.shell{padding:14px!important;align-items:start!important}.authx-card.card{grid-template-columns:1fr!important;min-height:0!important;border-radius:26px!important}.authx-visual{min-height:170px!important}.authx-grid{display:none}.authx-core{top:48%;width:82px;height:82px;border-radius:24px}.authx-core-mark{width:56px;height:56px;border-radius:17px;font-size:26px}.authx-orbit{top:48%}.authx-orbit-a{width:150px;height:150px}.authx-orbit-b{width:220px;height:220px}.authx-visual-brand{bottom:16px;font-size:17px}.authx-main{padding:18px 20px 24px}.authx-topbar{margin-bottom:14px}.authx-switch{margin-bottom:20px}
}
@media(max-width:520px){
 .authx-shell.shell{padding:0!important;background:#fff!important}.authx-card.card{border:0!important;border-radius:0!important;box-shadow:none!important}.authx-visual{min-height:128px!important}.authx-orbit-b{display:none}.authx-core{width:66px;height:66px}.authx-core-mark{width:46px;height:46px;border-radius:14px}.authx-orbit-a{width:124px;height:124px}.authx-visual-brand{font-size:15px;bottom:10px}.authx-main{padding:14px 15px 26px}.authx-brand .brand-name{font-size:14px!important}.authx-brand .mark{width:36px!important;height:36px!important;flex-basis:36px!important}.authx-language.language-form{width:120px!important}.authx-language .language-picker summary{grid-template-columns:24px minmax(0,1fr) 18px!important;padding:0 10px!important;gap:7px!important}.authx-language .language-picker summary span:nth-child(2){white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.authx-switch-item{min-height:44px;font-size:13px}.authx-main .login-modern h1,.authx-main .register-modern h1{font-size:28px!important}.authx-main .field{margin-bottom:12px!important}
}
@media(prefers-reduced-motion:reduce){.authx-grid,.authx-core,.authx-orbit,.authx-pulse{animation:none!important}}

/* Auth V1.1 - language placement + clean form header */
.authx-main>.authx-topbar{display:none!important;}
.authx-language.language-form{
 position:absolute!important;z-index:30!important;top:22px!important;right:22px!important;
 width:170px!important;margin:0!important;
}
.authx-language .language-picker summary{
 height:42px!important;border:1px solid rgba(255,255,255,.38)!important;
 background:rgba(5,47,132,.30)!important;color:#fff!important;border-radius:14px!important;
 box-shadow:0 10px 30px rgba(0,34,94,.18)!important;backdrop-filter:blur(12px)!important;
}
.authx-language .language-picker summary .language-globe{color:#fff!important;}
.authx-language .language-picker-menu{left:auto!important;right:0!important;width:190px!important;background:#fff!important;border-color:#d5e4f4!important;box-shadow:0 18px 42px rgba(15,54,103,.22)!important;}
.authx-language .language-picker-menu button{color:#244267!important;}
@media(max-width:850px){
 .authx-language.language-form{top:14px!important;right:14px!important;width:150px!important;}
}
@media(max-width:520px){
 .authx-language.language-form{
  position:fixed!important;z-index:100!important;left:12px!important;right:auto!important;top:auto!important;bottom:max(12px,env(safe-area-inset-bottom))!important;
  width:126px!important;margin:0!important;
 }
 .authx-language .language-picker summary{
  height:40px!important;grid-template-columns:22px minmax(0,1fr) 18px!important;gap:6px!important;padding:0 9px!important;
  color:#244267!important;background:rgba(255,255,255,.96)!important;border-color:#cfe0f2!important;box-shadow:0 10px 28px rgba(25,67,116,.18)!important;
 }
 .authx-language .language-picker summary .language-globe{color:#1682e9!important;}
 .authx-language .language-picker-menu{left:0!important;right:auto!important;top:auto!important;bottom:calc(100% + 7px)!important;width:178px!important;border:1px solid #d5e4f4!important;border-radius:12px!important;max-height:42vh!important;}
 .authx-main{padding-bottom:68px!important;}
}

/* Auth V1.2 - mobile language dropdown stacking/clipping fix */
@media(max-width:520px){
  .authx-card.card{overflow:visible!important;isolation:auto!important;}
  .authx-visual{overflow:visible!important;z-index:300!important;isolation:auto!important;}
  .authx-main{position:relative!important;z-index:1!important;}
  .authx-language.language-form{z-index:2147483000!important;isolation:isolate!important;}
  .authx-language .language-picker{position:relative!important;z-index:2147483000!important;overflow:visible!important;}
  .authx-language .language-picker[open]{z-index:2147483000!important;}
  .authx-language .language-picker-menu{
    z-index:2147483001!important;
    display:grid!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    background:#fff!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    box-shadow:0 -18px 48px rgba(10,42,84,.28)!important;
  }
  .authx-language .language-picker-menu button{position:relative!important;z-index:1!important;pointer-events:auto!important;background:#fff!important;}
  .authx-language .language-picker-menu button:hover,.authx-language .language-picker-menu button:focus-visible,.authx-language .language-picker-menu button.is-current{background:#edf6ff!important;}
}
