/* صفحه ورود و نصاب */
  .login{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}
  .login-art{background:var(--petrol);color:var(--petrol-ink);padding:48px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
  .login-art::before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='96' viewBox='0 0 64 64'%3E%3Cpath d='M32 4l7 14 14-7-7 14 14 7-14 7 7 14-14-7-7 14-7-14-14 7 7-14-14-7 14-7-7-14 14 7z' fill='none' stroke='%231FC9BB' stroke-opacity='.10' stroke-width='1'/%3E%3C/svg%3E")}
  .login-art > *{position:relative}
  .login-art .brand{padding:0}
  .login-art h2{font-family:var(--font-display);font-size:34px;line-height:1.6;font-weight:700;color:#fff;margin:0;max-width:16ch}
  .login-art p{color:var(--petrol-ink-2);max-width:42ch;margin:14px 0 0}
  .login-art .foot{font-size:12.5px;color:var(--petrol-ink-2)}
  .login-form{display:grid;place-items:center;padding:32px 20px}
  .card{width:min(400px,100%)}
  .card h1{font-family:var(--font-display);font-size:24px;margin:0 0 6px}
  .card .sub{color:var(--ink-2);margin:0 0 28px;font-size:14px}
  .pk{width:100%;justify-content:center;padding:15px 18px;font-size:15.5px;border-radius:14px}
  .pk svg{width:24px;height:24px}
  .or{display:flex;align-items:center;gap:12px;color:var(--ink-3);font-size:12.5px;margin:22px 0}
  .or::before,.or::after{content:"";flex:1;height:1px;background:var(--line)}
  .pw{display:none;flex-direction:column;gap:14px}
  .pw.open{display:flex}
  .msg{font-size:13px;margin-top:14px;min-height:22px;color:var(--ink-2);display:flex;align-items:center;gap:8px}
  .msg.err{color:var(--down)}
  .spin{width:16px;height:16px;border-radius:50%;border:2px solid currentColor;border-top-color:transparent;animation:sp 0.8s linear infinite}
  @keyframes sp{to{transform:rotate(360deg)}}
  .tbtn{position:fixed;top:16px;left:16px}
  @media (max-width:860px){.login{grid-template-columns:1fr}.login-art{padding:28px 24px;gap:24px}.login-art h2{font-size:24px}}
  .alert{display:flex;gap:10px;align-items:flex-start;border-radius:12px;padding:10px 14px;font-size:13.5px;margin-bottom:16px;border:1px solid}
  .alert svg{width:18px;height:18px;flex:none;margin-top:3px}
  .alert.err{background:color-mix(in srgb,var(--down) 9%,var(--surface));border-color:color-mix(in srgb,var(--down) 30%,transparent);color:var(--down)}
  .alert.ok{background:var(--turq-soft);border-color:color-mix(in srgb,var(--turq) 30%,transparent);color:var(--turq-strong)}
  .pk[disabled]{opacity:.55;cursor:not-allowed}

  .otp{font-size:24px;letter-spacing:8px;text-align:center!important}
  .pk[disabled]{opacity:.5}
