
:root{
  --bg:#0c0e10;--sf-1:#131619;--sf-2:#181c20;--sf-3:#1f242a;
  --line:#252b31;--line-2:#323a42;
  --gold:#b8952f;--gold-2:#d6b368;--steel:#8496a4;
  --tx:#f1f3f5;--tx-2:#a6b0b9;--tx-3:#6d7780;
  --r-sm:10px;--r-lg:18px;--ease:cubic-bezier(.22,.72,.28,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{min-height:100vh;background:var(--bg);color:var(--tx);
  background-image:radial-gradient(ellipse 120% 80% at 50% -10%,#12171c 0%,transparent 60%);
  font-family:"Shasenem Kurd","Vazirmatn",system-ui,sans-serif;
  font-weight:600;font-size:15.5px;line-height:1.9;
  display:grid;place-items:center;padding:22px;-webkit-font-smoothing:antialiased}
h1{font-weight:900;letter-spacing:-.6px;line-height:1.4}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
input{font-family:inherit;font-size:14.5px;color:inherit}
:focus-visible{outline:2px solid var(--gold-2);outline-offset:2px;border-radius:6px}

.grid{position:fixed;inset:0;z-index:0;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);
  background-size:40px 40px;
  mask-image:radial-gradient(ellipse 90% 60% at 50% 0%,#000,transparent 80%);
  -webkit-mask-image:radial-gradient(ellipse 90% 60% at 50% 0%,#000,transparent 80%)}

.wrap{position:relative;z-index:2;width:100%;max-width:410px}
.logo{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:26px;
  direction:ltr;unicode-bidi:isolate;font-family:"Vazirmatn",sans-serif;
  font-weight:900;font-size:23px;letter-spacing:-.6px}
.logo .mk{width:8px;height:8px;border-radius:2px;background:var(--gold)}
.logo b{color:var(--tx-3);font-size:14px;font-weight:700}

.card{padding:28px 26px;border-radius:var(--r-lg);
  background:var(--sf-1);border:1px solid var(--line);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),
             0 8px 24px rgba(6,8,10,.4), 0 26px 60px rgba(6,8,10,.3)}
.card h1{font-size:22px;margin-bottom:6px}
.card .sub{font-size:13.5px;font-weight:600;color:var(--tx-3);margin-bottom:22px}

.tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;margin-bottom:22px;
  background:var(--sf-2);border:1px solid var(--line);border-radius:12px}
.tab{padding:9px;border-radius:8px;font-size:13.5px;font-weight:800;color:var(--tx-3);
  transition:background .18s var(--ease),color .18s var(--ease)}
.tab.on{background:var(--sf-3);color:var(--tx)}

.f{margin-bottom:14px}
.f label{display:block;margin-bottom:6px;font-size:12.5px;font-weight:800;color:var(--tx-2)}
.f input{width:100%;min-height:48px;padding:12px 14px;border-radius:var(--r-sm);
  font-weight:700;background:rgba(255,255,255,.035);border:1px solid var(--line);
  box-shadow:inset 0 1px 3px rgba(6,8,10,.3);
  transition:border-color .16s var(--ease),background .16s var(--ease)}
.f input:focus{outline:none;border-color:var(--line-2);background:rgba(255,255,255,.06)}
.f input::placeholder{color:var(--tx-3);font-weight:600}

.btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;
  min-height:50px;padding:13px;border-radius:var(--r-sm);
  font-size:15px;font-weight:900;background:var(--gold);color:#0e0b03;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28), 0 3px 10px rgba(6,8,10,.4);
  transition:background .16s var(--ease),transform .16s var(--ease)}
.btn:hover{background:var(--gold-2);transform:translateY(-1px)}
.btn:active{transform:translateY(0)}
.btn[disabled]{opacity:.5;pointer-events:none}
.spin{width:17px;height:17px;border-radius:50%;
  border:2px solid rgba(0,0,0,.25);border-top-color:#0e0b03;
  animation:sp .7s linear infinite}
@keyframes sp{to{transform:rotate(360deg)}}

.msg{display:none;margin-bottom:16px;padding:11px 14px;border-radius:var(--r-sm);
  font-size:13px;font-weight:800;line-height:1.7}
.msg.on{display:block}
.msg.err{color:#c96a5a;background:rgba(201,106,90,.12);border:1px solid rgba(201,106,90,.32)}
.msg.ok{color:#6f9e7f;background:rgba(111,158,127,.12);border:1px solid rgba(111,158,127,.32)}

.back{display:block;margin-top:20px;text-align:center;
  font-size:13px;font-weight:700;color:var(--tx-3)}
.back:hover{color:var(--tx-2)}

@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
