.login-page{--primary:#2584f5;--primary-dark:#1269dc;--primary-light:#78bafa;--navy:#0d376c;--navy-light:#315d91;--white:#fff;--surface:#ffffffed;--surface-soft:#ffffff24;--text:#0e3261;--text-soft:#8192ad;--border:#749fd347;--shadow-lg:0 30px 80px #1b68bf33;--shadow-md:0 15px 40px #1866c421;--radius-lg:28px;--radius-md:16px;--radius-sm:12px;min-height:100dvh;color:var(--text);direction:ltr;background:radial-gradient(circle at 12% 9%,#ffffff70 0 9%,#0000 9.5%),radial-gradient(circle at 91% 80%,#ffffff4f 0 13%,#0000 13.5%),linear-gradient(135deg,#70b8ff 0%,#4a9df8 48%,#cde9ff 100%);grid-template-columns:minmax(280px,1fr) 300px;font-family:Vazirmatn,sans-serif;display:grid;position:relative;overflow:hidden}.login-page:before,.login-page:after{content:"";pointer-events:none;border:20px solid #ffffff2b;border-radius:50%;position:absolute}.login-page:before{width:130px;height:130px;top:28px;left:-60px}.login-page:after{width:90px;height:90px;bottom:50px;left:40px}.login-main{direction:rtl;justify-content:center;align-items:center;min-height:100dvh;padding:36px;display:flex;position:relative}.login-main:before{content:"";filter:blur(2px);background:#ffffff21;border-radius:50%;width:280px;height:280px;position:absolute;top:140px;right:-150px}.login-main:after{content:"";background:#ffffff30;border-radius:999px;width:260px;height:14px;position:absolute;bottom:160px;right:18px;transform:rotate(46deg);box-shadow:0 0 35px #ffffff2b}.login-shell{z-index:2;width:min(480px,100%);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(10px);background:#ffffff12;border:1px solid #ffffff47;border-radius:34px;padding:18px;position:relative}.login-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:right;background:linear-gradient(145deg,#fffffffa,#f8fcffe8);border:1px solid #ffffffc7;gap:0;margin:0;padding:32px 28px 26px;display:grid;position:relative}.form-brand{text-align:center;justify-content:center;align-items:center;gap:10px;margin:0 0 18px;display:flex}.form-brand--system{flex-direction:column;gap:0}.form-brand--system .brand-logo-box{border-radius:14px;width:88px;height:88px;margin:0 auto 8px}.form-brand--system .brand-logo{width:70px;height:70px}.form-brand--system .brand-title{margin:0;font-size:17px;line-height:1.45}.form-brand--system .brand-description{margin:4px 0 0;font-size:12px;line-height:1.7}.form-brand--system .brand-separator{width:100px;margin:10px auto 0}.form-logo-box{background:#ffffffe6;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;margin:0;display:flex;box-shadow:0 6px 14px #297cd81f}.form-logo-box img{-o-object-fit:contain;object-fit:contain;width:34px;height:34px;display:block}.login-title{color:var(--text);margin:0;font-size:18px;font-weight:800;line-height:1.4}.login-card .form-group,.login-card .field{margin-bottom:14px}.login-card .form-label,.login-card .field-label{color:#778aa8;justify-content:flex-start;align-items:center;gap:6px;margin-bottom:7px;font-size:12.5px;font-weight:600;display:flex}.login-card .form-label svg,.login-card .field-label svg{color:#7791b4;stroke:#7791b4;width:15px;height:15px}.login-card .form-input,.login-card .field input,.login-card .field select{border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;height:48px;color:var(--text);text-align:right;direction:rtl;background:#fffffff5;outline:none;padding:0 14px;font-size:14px;font-weight:500;transition:border-color .2s,box-shadow .2s,transform .2s;box-shadow:0 6px 14px #4183d00f}.login-card .form-input::-moz-placeholder{color:#9aa9bf}.login-card .field input::-moz-placeholder{color:#9aa9bf}.login-card .form-input::placeholder,.login-card .field input::placeholder{color:#9aa9bf}.login-card .form-input:focus,.login-card .field input:focus,.login-card .field select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2584f51f,0 8px 18px #357ccf1a}.login-card .field input[aria-invalid=true],.login-card .field select[aria-invalid=true],.login-card .input-error{background:#fff8f8;border-color:#fca5a5}.login-card .error-text{color:#dc2626;margin:6px 0 0;font-size:11.5px}.login-card .error-banner{border-radius:var(--radius-sm);color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;margin-bottom:12px;padding:9px 11px;font-size:11.5px}.login-card .login-form-meta{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.login-card .remember-me{color:#778aa8;align-items:center;gap:6px;font-size:12px;display:inline-flex}.login-card .remember-me input[type=checkbox]{width:15px;height:15px;accent-color:var(--primary);cursor:pointer;border-radius:4px;margin:0}.login-card .forgot-password-link{color:var(--primary-dark);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:600}.login-card .password-field-wrapper{position:relative}.login-card .password-field-wrapper input{padding-left:42px}.login-card .password-toggle{color:#7791b4;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.login-card .otp-cell{border:1px solid var(--border);border-radius:var(--radius-sm);background:#fff;width:40px;height:44px;font-size:15px;box-shadow:0 6px 14px #4183d00f}.login-card .login-otp-hint,.login-card .login-timer-row,.login-card .login-username-chip{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);background:#fffc;margin-bottom:12px;padding:9px 11px;font-size:12px}.submit-btn{border-radius:var(--radius-sm);width:100%;height:48px;color:var(--white);cursor:pointer;background:linear-gradient(135deg,#2789ff,#2576ed);border:0;justify-content:center;align-items:center;gap:8px;margin-top:2px;font-size:15px;font-weight:800;transition:transform .2s,box-shadow .2s,filter .2s;display:inline-flex;box-shadow:0 10px 22px #267eef3d}.submit-btn:hover:not(:disabled){filter:brightness(1.03);transform:translateY(-1px);box-shadow:0 14px 26px #267eef4d}.submit-btn:active:not(:disabled){transform:translateY(0)}.submit-btn:disabled{cursor:not-allowed;filter:grayscale(.2);opacity:.7}.divider{color:#8b9bb3;align-items:center;gap:10px;margin:18px 0 14px;font-size:12px;font-weight:600;display:flex}.divider:before,.divider:after{content:"";background:linear-gradient(270deg,#0000,#5b87be5c);flex:1;height:1px}.divider:after{background:linear-gradient(90deg,#0000,#5b87be5c)}.login-options{grid-template-columns:1fr;gap:10px;display:grid}.login-options.is-mobile-mode .option-btn--mobile,.login-options.is-password-mode .option-btn--password{display:none}.option-btn{border-radius:var(--radius-sm);height:48px;color:var(--text);cursor:pointer;background:#fffffff0;border:1px solid #6b96cd42;justify-content:center;align-items:center;gap:7px;font-size:13px;font-weight:700;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;box-shadow:0 6px 14px #3677c212}.option-btn:hover:not(:disabled){border-color:#2584f580;transform:translateY(-1px);box-shadow:0 10px 20px #3677c21f}.option-btn[aria-current=true]{border-color:#2584f58c;box-shadow:0 0 0 3px #2584f51f}.option-btn:disabled{cursor:not-allowed;opacity:.6}.brand-panel{z-index:2;min-height:100dvh;color:var(--text);direction:rtl;background:linear-gradient(#fafdffeb,#d4ecffc2);justify-content:center;align-items:flex-start;padding:36px 22px;display:flex;position:relative;box-shadow:-16px 0 40px #357acc14}.brand-panel:after{content:"";background:#ffffff45;border-radius:50%;width:200px;height:200px;position:absolute;bottom:-40px;right:-90px;box-shadow:inset 0 0 40px #ffffff4d}.brand-content{z-index:2;text-align:center;width:100%;margin-top:4px;position:relative}.brand-logo-box{background:#ffffffbd;border-radius:16px;justify-content:center;align-items:center;width:124px;height:124px;margin:0 auto 12px;display:flex;box-shadow:0 10px 24px #297cd824}.brand-logo{-o-object-fit:contain;object-fit:contain;width:100px;height:100px;display:block}.brand-title{color:var(--text);margin:0;font-size:18px;font-weight:800;line-height:1.55}.brand-description{color:#6784aa;margin:4px 0 0;font-size:11.5px;font-weight:500;line-height:1.8}.brand-separator{background:linear-gradient(90deg,#0000,#3885de42,#0000);border-radius:999px;width:110px;height:2px;margin:12px auto;position:relative}.brand-separator:after{content:"";background:var(--primary);border-radius:999px;width:24px;height:5px;position:absolute;top:50%;right:50%;transform:translate(50%,-50%);box-shadow:0 3px 10px #2584f559}.copyright{color:#375982ad;text-align:center;font-size:10.5px;position:absolute;bottom:16px;left:18px;right:18px}@media (max-width:1050px){.login-page{grid-template-columns:1fr 260px}.login-main{padding:24px}.login-card{padding:28px 22px 22px}.brand-panel{padding:28px 16px}.brand-title{font-size:16px}.brand-description{font-size:11px}}@media (max-width:820px){.login-page{flex-direction:column;min-height:100dvh;display:flex;overflow:auto}.login-main{flex:auto;justify-content:center;align-items:center;min-height:0;padding:12px 10px;display:flex}.brand-panel,.brand-panel:after,.copyright{display:none}.form-brand--system{margin-bottom:14px}.form-brand--system .brand-logo-box{border-radius:12px;width:72px;height:72px;margin:0 auto 6px}.form-brand--system .brand-logo{width:56px;height:56px}.form-brand--system .brand-title{font-size:14px;line-height:1.45}.form-brand--system .brand-description{margin:4px 0 0;font-size:10.5px;line-height:1.6}.form-brand--system .brand-separator{width:80px;margin:8px auto 0}.login-shell{border-radius:22px;padding:8px}.login-card{border-radius:18px;padding:18px 14px 14px}.login-card .form-group,.login-card .field{margin-bottom:10px}.login-card .form-label,.login-card .field-label{margin-bottom:5px;font-size:11.5px}.login-card .form-input,.login-card .field input,.submit-btn,.option-btn{height:42px;font-size:13px}.divider{margin:12px 0 10px;font-size:11px}.login-options{gap:8px}}@media (max-width:480px){.form-brand--system{margin-bottom:12px}.form-brand--system .brand-logo-box{width:60px;height:60px;margin-bottom:4px}.form-brand--system .brand-logo{width:46px;height:46px}.form-brand--system .brand-title{font-size:13px}.form-brand--system .brand-description{display:none}.form-brand--system .brand-separator{margin:6px auto 0}.login-main{padding:8px}.login-shell{border-radius:18px;padding:6px}.login-card{border-radius:16px;padding:14px 12px 12px}.login-card .form-label,.login-card .field-label{font-size:11px}.login-card .form-input,.login-card .field input,.submit-btn,.option-btn{height:40px;font-size:12.5px}.login-card .form-input,.login-card .field input{padding:0 12px}.submit-btn{font-size:13.5px}.option-btn{font-size:12px}}
