:root{
  --bg:#0b0f19;
  --panel:#121827;
  --panel-2:#172033;
  --primary:#4b7cff;
  --cyan:#68e1fd;
  --text:#f8fbff;
  --muted:#93a4bd;
  --line:rgba(255,255,255,.12);
  --danger:#ff5c7a;
  --success:#35e7a6;
  --warning:#ffc857;
  --shadow:0 28px 90px rgba(0,0,0,.45);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text);line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(430px,44%) 1fr;background:radial-gradient(circle at 15% 15%,rgba(75,124,255,.22),transparent 30%),radial-gradient(circle at 85% 70%,rgba(104,225,253,.16),transparent 28%),var(--bg)}
.brand-panel{position:relative;overflow:hidden;padding:46px;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid var(--line);background:linear-gradient(145deg,rgba(18,24,39,.92),rgba(11,15,25,.72));min-height:100vh}
.brand-panel:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,black,transparent 85%);pointer-events:none}
.orb{position:absolute;border-radius:999px;filter:blur(28px);opacity:.75;pointer-events:none}.orb-a{width:260px;height:260px;background:rgba(75,124,255,.34);top:8%;left:-80px}.orb-b{width:230px;height:230px;background:rgba(104,225,253,.22);right:-80px;bottom:18%}
.brand-logo,.mobile-logo{display:flex;align-items:center;gap:12px;position:relative;z-index:2}.logo-mark{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),var(--cyan));box-shadow:0 12px 35px rgba(75,124,255,.42);font-weight:800;color:#fff}.logo-text{font-weight:800;font-size:25px;letter-spacing:-.03em}.mobile-logo{display:none;margin-bottom:24px}.mobile-logo .logo-mark{width:38px;height:38px;border-radius:12px}.mobile-logo .logo-text{font-size:21px}
.visual-card{height:320px;border:1px solid var(--line);border-radius:32px;background:linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.025));box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 30px 80px rgba(0,0,0,.26);backdrop-filter:blur(18px);position:relative;z-index:2;margin:32px 0;overflow:hidden}.visual-card:before{content:"";position:absolute;inset:-40%;background:conic-gradient(from 180deg,transparent,rgba(75,124,255,.2),rgba(104,225,253,.25),transparent);animation:spin 12s linear infinite}.visual-card>*{position:absolute}.ai-core{width:118px;height:118px;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:32px;background:rgba(11,15,25,.8);border:1px solid rgba(104,225,253,.3);display:grid;place-items:center;box-shadow:0 0 70px rgba(104,225,253,.18);z-index:2}.ai-core i{font-size:38px;color:var(--cyan)}.ai-core span{position:absolute;width:10px;height:10px;background:var(--cyan);border-radius:50%;box-shadow:0 0 18px var(--cyan)}.ai-core span:nth-child(1){left:-24px;top:30px}.ai-core span:nth-child(2){right:-24px;top:40px}.ai-core span:nth-child(3){left:20px;bottom:-24px}.ai-core span:nth-child(4){right:22px;bottom:-22px}.node-line{height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);opacity:.55;transform-origin:center}.node-line-1{width:260px;left:55px;top:122px;transform:rotate(18deg)}.node-line-2{width:290px;right:35px;bottom:105px;transform:rotate(-23deg)}.floating-chip{z-index:3;padding:10px 14px;border-radius:999px;background:rgba(11,15,25,.76);border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(16px);font-size:13px;color:#dfe8ff;box-shadow:0 14px 36px rgba(0,0,0,.22);animation:float 4.8s ease-in-out infinite}.floating-chip i{color:var(--cyan);margin-right:7px}.chip-1{left:22px;top:34px}.chip-2{right:22px;top:142px;animation-delay:.6s}.chip-3{left:55px;bottom:34px;animation-delay:1s}
.brand-copy{position:relative;z-index:2}.eyebrow{color:var(--cyan);font-size:12px;text-transform:uppercase;letter-spacing:.16em;font-weight:800;margin-bottom:10px}.brand-copy h1{font-size:42px;line-height:1.08;letter-spacing:-.05em;margin-bottom:16px}.brand-copy p:not(.eyebrow){color:var(--muted);max-width:520px;font-size:16px}.trust-list{position:relative;z-index:2;display:grid;gap:12px;margin-top:28px}.trust-list div{display:flex;align-items:center;gap:11px;color:#dbe7ff;font-size:14px}.trust-list i{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:rgba(104,225,253,.12);color:var(--cyan);font-size:12px}
.form-panel{display:grid;place-items:center;padding:42px;min-height:100vh}.form-card{width:min(100%,520px);border:1px solid rgba(255,255,255,.13);border-radius:30px;padding:34px;background:linear-gradient(145deg,rgba(18,24,39,.82),rgba(18,24,39,.55));box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.09);backdrop-filter:blur(24px);transition:.25s ease}.form-card:hover{transform:translateY(-2px);box-shadow:0 34px 100px rgba(0,0,0,.52),0 0 0 1px rgba(104,225,253,.06)}.form-head h2{font-size:30px;letter-spacing:-.04em;margin-bottom:8px}.form-head p:not(.eyebrow){color:var(--muted);margin-bottom:28px}.auth-form{display:grid;gap:17px}.field-group{display:grid;gap:8px}.field-group label,.label-row label{font-size:14px;color:#dce7ff;font-weight:650}.label-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.soft-link,.switch-text a,.check-row a{color:var(--cyan);font-weight:700}.input-wrap{position:relative}.input-wrap i:first-child{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#74859f;z-index:2}.input-wrap input{width:100%;height:54px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(255,255,255,.055);color:var(--text);outline:none;padding:18px 48px 8px 46px;transition:.22s ease;backdrop-filter:blur(14px)}.input-wrap input:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(75,124,255,.16),0 0 26px rgba(75,124,255,.22);background:rgba(255,255,255,.08)}.input-wrap input.error{border-color:var(--danger);box-shadow:0 0 0 4px rgba(255,92,122,.12)}.input-wrap input.success{border-color:rgba(53,231,166,.6)}.floating-label{position:absolute;left:46px;top:50%;transform:translateY(-50%);color:#7f90aa;pointer-events:none;transition:.18s ease;font-size:14px}.input-wrap input:focus+.floating-label,.input-wrap input:not(:placeholder-shown)+.floating-label{top:11px;font-size:11px;color:var(--cyan)}.ghost-icon{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:36px;height:36px;border:0;background:transparent;color:#8999b3;border-radius:10px;cursor:pointer}.ghost-icon:hover{background:rgba(255,255,255,.08);color:var(--cyan)}.email-code-row{display:grid;grid-template-columns:1fr 124px;gap:10px}.code-btn{border:1px solid rgba(104,225,253,.35);border-radius:16px;background:rgba(104,225,253,.09);color:var(--cyan);font-weight:800;cursor:pointer;transition:.2s ease}.code-btn:hover:not(:disabled){background:rgba(104,225,253,.17);transform:translateY(-1px)}.code-btn:disabled{opacity:.65;cursor:not-allowed}.field-error{min-height:16px;color:var(--danger);font-size:12px}.strength-box{display:grid;gap:6px}.strength-bars{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.strength-bars span{height:4px;background:rgba(255,255,255,.12);border-radius:99px}.strength-box small{color:var(--muted);font-size:12px}.strength-box.weak span:nth-child(-n+1){background:var(--danger)}.strength-box.medium span:nth-child(-n+2){background:var(--warning)}.strength-box.good span:nth-child(-n+3){background:var(--cyan)}.strength-box.strong span{background:var(--success)}.check-row{display:flex;align-items:flex-start;gap:10px;color:var(--muted);font-size:14px}.check-row input{margin-top:3px;accent-color:var(--primary)}.primary-action{height:56px;border:0;border-radius:17px;background:linear-gradient(135deg,var(--primary),var(--cyan));color:#fff;font-weight:850;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 18px 48px rgba(75,124,255,.35);transition:.22s ease}.primary-action:hover:not(:disabled){background:linear-gradient(135deg,var(--cyan),var(--primary));transform:translateY(-2px);box-shadow:0 22px 58px rgba(104,225,253,.28)}.primary-action:disabled{cursor:not-allowed;opacity:.78}.primary-action.loading i{width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;animation:spin .8s linear infinite}.primary-action.loading i:before{content:""}.form-message{min-height:20px;font-size:13px;color:var(--muted)}.form-message.success{color:var(--success)}.form-message.error{color:var(--danger)}.divider{display:flex;align-items:center;gap:14px;margin:24px 0}.divider:before,.divider:after{content:"";height:1px;flex:1;background:var(--line)}.divider span{font-size:12px;color:var(--muted)}.social-btn{width:100%;height:52px;border-radius:16px;border:1px solid var(--line);background:rgba(255,255,255,.045);color:#e8efff;font-weight:750;cursor:pointer;transition:.2s ease}.social-btn:hover{background:rgba(255,255,255,.085);border-color:rgba(104,225,253,.28)}.social-btn i{margin-right:9px}.switch-text{text-align:center;color:var(--muted);font-size:14px;margin-top:22px}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@media(max-width:980px){.auth-shell{grid-template-columns:1fr}.brand-panel{min-height:auto;padding:30px 24px}.visual-card{display:none}.brand-copy h1{font-size:32px}.trust-list{grid-template-columns:1fr}.form-panel{min-height:auto;padding:24px 18px 34px}.mobile-logo{display:flex}.brand-logo{display:none}}
@media(max-width:560px){body{background:var(--bg)}.brand-panel{padding:24px 18px}.brand-copy h1{font-size:28px}.brand-copy p:not(.eyebrow){font-size:14px}.trust-list div{font-size:13px}.form-panel{display:block;padding:0}.form-card{width:100%;min-height:calc(100vh - 210px);border-radius:28px 28px 0 0;padding:26px 18px 32px;border-left:0;border-right:0;border-bottom:0}.form-head h2{font-size:26px}.email-code-row{grid-template-columns:1fr}.code-btn{height:48px}.input-wrap input{height:52px} }
@supports(padding:max(0px)){.form-card{padding-bottom:max(32px,env(safe-area-inset-bottom))}}

/* 4.9.3.1 CSS-only mobile and RTL polish */
@media(max-width:560px){
  .brand-panel{padding:20px 18px}
  .trust-list{gap:9px;margin-top:20px}
  .form-card{padding-top:24px}
  .social-btn,.code-btn,.primary-action{min-height:48px}
}

html[dir="rtl"] .brand-panel{
  border-right:0;
  border-left:1px solid var(--line)
}

html[dir="rtl"] .input-wrap i:first-child{
  left:auto;
  right:16px
}

html[dir="rtl"] .input-wrap input{
  padding-left:48px;
  padding-right:46px;
  text-align:right
}

html[dir="rtl"] .floating-label{
  left:auto;
  right:46px
}

html[dir="rtl"] .ghost-icon{
  right:auto;
  left:10px
}

html[dir="rtl"] .social-btn i,
html[dir="rtl"] .floating-chip i{
  margin-right:0;
  margin-left:9px
}
