.aaf-login, .aaf-login *{font-family:'VazirFD', Tahoma, Arial, sans-serif;}

/* AAF Front Login UI */
.aaf-login-wrap{min-height:70vh;display:flex;align-items:center;justify-content:center;padding:24px;direction:rtl;}
.aaf-login-bg{position:relative;width:100%;max-width:980px;border-radius:22px;overflow:hidden;box-shadow:0 18px 60px rgba(0,0,0,.12);background:#0b1220;}
.aaf-login-bg:before{content:"";position:absolute;inset:-2px;background:radial-gradient(1000px 400px at 10% 10%, rgba(56,189,248,.28), transparent 55%),
 radial-gradient(900px 420px at 90% 10%, rgba(168,85,247,.26), transparent 60%),
 radial-gradient(900px 520px at 30% 100%, rgba(34,197,94,.16), transparent 60%);
filter:blur(0px);}
.aaf-login-card{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:0;min-height:420px;}
@media (max-width: 860px){.aaf-login-card{grid-template-columns:1fr;}}

.aaf-login-left{padding:34px 34px 26px;background:rgba(255,255,255,.06);backdrop-filter: blur(10px);border-left:1px solid rgba(255,255,255,.10)}
@media (max-width: 860px){.aaf-login-left{border-left:none;border-bottom:1px solid rgba(255,255,255,.10)}}

.aaf-login-right{padding:34px;background:rgba(255,255,255,.10);backdrop-filter: blur(10px)}

.aaf-login-badge{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.10);color:#e5e7eb;font-weight:700;font-size:12px;}
.aaf-login-badge .dot{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.18)}

.aaf-login-title{margin:14px 0 6px;font-size:26px;font-weight:900;color:#fff;letter-spacing:-.3px}
.aaf-login-sub{margin:0 0 18px;color:rgba(255,255,255,.78);font-size:13px;line-height:1.9}

.aaf-login-form{display:flex;flex-direction:column;gap:12px;}
.aaf-field{display:flex;flex-direction:column;gap:6px;}
.aaf-field label{color:rgba(255,255,255,.86);font-weight:800;font-size:12px}
.aaf-input{width:100%;padding:12px 12px;border-radius:14px;border:1px solid rgba(255,255,255,.16);background:rgba(12,18,32,.65);color:#fff;outline:none;transition:.2s;font-size:16px}
.aaf-input:focus{border-color:rgba(56,189,248,.7);box-shadow:0 0 0 4px rgba(56,189,248,.18)}

.aaf-pass{position:relative;}
.aaf-pass .toggle{position:absolute;left:10px;top:50%;transform:translateY(-50%);border:0;background:rgba(255,255,255,.10);color:#fff;border-radius:10px;padding:7px 10px;font-size:12px;cursor:pointer}
.aaf-pass .toggle:hover{background:rgba(255,255,255,.16)}

.aaf-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:4px}
.aaf-check{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.82);font-size:12px}
.aaf-check input{width:16px;height:16px;accent-color:#38bdf8}

.aaf-btn{border:0;cursor:pointer;border-radius:14px;padding:12px 14px;font-weight:900;font-size:13px;letter-spacing:-.2px;transition:.18s}
.aaf-btn.primary{background:linear-gradient(135deg, #38bdf8, #a855f7);color:#081018;}
.aaf-btn.primary:hover{filter:brightness(1.05)}
.aaf-btn.ghost{background:rgba(255,255,255,.10);color:#fff}
.aaf-btn.ghost:hover{background:rgba(255,255,255,.16)}

.aaf-login-msg{margin-top:10px;font-size:12px;color:rgba(255,255,255,.9)}
.aaf-login-msg.err{color:#fecaca}
.aaf-login-msg.ok{color:#bbf7d0}

.aaf-login-sideTitle{color:#fff;font-size:16px;font-weight:900;margin:0 0 8px}
.aaf-login-sideText{color:rgba(255,255,255,.78);font-size:12px;line-height:1.9;margin:0 0 12px}
.aaf-login-list{margin:0;padding:0 18px 0 0;color:rgba(255,255,255,.86);font-size:12px;line-height:2}

.aaf-logout-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0 18px;padding:10px 12px;border-radius:14px;background:rgba(15,23,42,.06);border:1px solid rgba(15,23,42,.10)}
.aaf-logout-bar .who{font-weight:900}
.aaf-logout-bar a{font-weight:900;text-decoration:none}
