*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

body{
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  background:#fafafa;
  color:#111;
  font-weight:400;
}

/* ================= AUTH WRAP ================= */

.ad-auth{
  max-width:460px;
  margin:56px auto 28px;
  text-align:center;
  padding:0 16px;
  color:#111;
}

.ad-title{
  font-size:28px;
  font-weight:350;     /* ✅ shop style light */
  letter-spacing:.2px;
  margin-bottom:8px;
}

.ad-sub{
  font-size:13px;      /* ✅ slightly smaller like shop */
  color:#666;
  margin-bottom:22px;
  font-weight:350;
  line-height:1.6;
}

/* ================= FORM ================= */

.ad-form label{
  display:block;
  text-align:left;
  font-size:12px;
  color:#444;
  margin:14px 0 6px;

  font-weight:600;     /* ✅ label semibold */
  letter-spacing:1.2px;
  text-transform:uppercase;
}

/* forgot + password label row */
.ad-pass-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-top:14px;
}

.ad-forgot{
  font-size:12px;
  color:#666;
  text-decoration:none;
  font-weight:350;
}

.ad-forgot:hover{
  text-decoration:underline;
  color:#111;
}

/* ================= INPUT ================= */

.ad-input{
  width:100%;
  padding:14px 44px 14px 14px;
  border-radius:10px;
  border:1px solid #e3e3e3;
  background:#fff;
  font-size:14px;      /* ✅ shop input size */
  outline:none;

  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  font-weight:350;
  color:#111;

  box-shadow:inset 0 1px 0 rgba(0,0,0,0.02);
  transition:border-color .15s, box-shadow .15s;
}

.ad-input::placeholder{
  color:#999;
  font-weight:350;
}

.ad-input:focus{
  border-color:#bfbfbf;
  box-shadow:0 0 0 3px rgba(0,0,0,0.05);
}

/* ================= PASSWORD WRAP ================= */

.ad-input-wrap{
  position:relative;
  margin-bottom:6px;
}

.ad-eye{
  position:absolute;
  right:12px;
  top:50%;
  transform:translateY(-50%);
  border:none;
  background:transparent;
  cursor:pointer;
  font-size:16px;
  opacity:.7;
  padding:6px;
}

.ad-eye:hover{
  opacity:1;
}

/* ================= REMEMBER ================= */

.ad-remember{
  display:flex !important;
  align-items:center;
  gap:10px;
  margin-top:14px !important;
  font-size:13px !important;
  color:#444 !important;
  font-weight:350 !important;
}

.ad-remember input{
  width:16px;
  height:16px;
}

/* ================= BUTTON ================= */

.ad-btn{
  width:100%;
  max-width:420px;
  padding:14px;
  border-radius:8px;
  border:none;
  background:linear-gradient(#111,#1a1a1a);
  color:#fff;

  font-weight:700;     /* ✅ button strong looks good */
  font-size:13px;
  letter-spacing:1px;
  text-transform:uppercase;

  cursor:pointer;
  margin-top:22px;
}

.ad-btn:active{
  transform:translateY(1px);
}

/* ================= FOOT NOTE ================= */

.ad-note{
  margin-top:18px;
  font-size:13px;
  color:#666;
  font-weight:350;
}

.ad-note a{
  color:#111;
  font-weight:600;
  text-decoration:underline;
  text-underline-offset:3px;
}

/* ================= ERROR ================= */

.ad-error{
  color:#c0392b;
  font-size:12px;
  margin-top:6px;
  margin-bottom:4px;
  text-align:left;
  font-weight:600;
}
