.admin-login-wrap {
  --lc-card: #0F0D0E;
  --lc-border: rgba(255,255,255,.10);
  --lc-shadow: 0 30px 80px rgba(0,0,0,.45);
  --lc-text: #F2F0F0;
  --lc-muted: #A8A2A2;
  --lc-field: rgba(255,255,255,.04);
  --lc-field-border: rgba(255,255,255,.12);
  --lc-outline: rgba(255,255,255,.18);
  --lc-hover: rgba(255,255,255,.04);
  --lc-line: rgba(255,255,255,.10);
  --lc-accent: #FF4433;
  --lc-link: #FF6A5C;
  --lc-ring: rgba(255,68,51,.22);
}
html[data-theme="light"] .admin-login-wrap {
  --lc-card: #FFFFFF;
  --lc-border: #E6E2E2;
  --lc-shadow: 0 24px 60px rgba(60,20,20,.10), 0 2px 6px rgba(0,0,0,.04);
  --lc-text: #141212;
  --lc-muted: #5F5959;
  --lc-field: #F7F6F6;
  --lc-field-border: #DEDADA;
  --lc-outline: #CFC9C9;
  --lc-hover: #F7F6F6;
  --lc-line: #E6E2E2;
  --lc-accent: #E5231B;
  --lc-link: #C81E17;
  --lc-ring: rgba(229,35,27,.16);
}

body .admin-login-wrap .admin-login-card {
  width: 100%; max-width: 404px;
  padding: 34px 32px 26px !important;
  border-radius: 18px !important;
  background: var(--lc-card) !important;
  border: 1px solid var(--lc-border) !important;
  box-shadow: var(--lc-shadow) !important;
}
body .admin-login-card .logo { margin-bottom: 24px !important; }

body .admin-login-card .auth-tabs {
  display: grid !important; grid-template-columns: 1fr 1fr; gap: 8px !important;
  padding: 0 !important; margin: 0 0 20px !important;
  background: none !important; border: 0 !important; box-shadow: none !important;
}
body .admin-login-card .auth-tab {
  display: flex; align-items: center; justify-content: center;
  min-height: 44px; padding: 0 10px !important; border-radius: 10px !important;
  border: 1px solid var(--lc-outline) !important; background: transparent !important;
  color: var(--lc-text) !important; font: 700 13px var(--mono) !important; letter-spacing: .02em;
  cursor: pointer; transition: border-color .15s, background-color .15s;
}
body .admin-login-card .auth-tab:hover { border-color: var(--lc-text) !important; background: var(--lc-hover) !important; }
body .admin-login-card .auth-tab.active,
body .admin-login-card .auth-tab.active:hover {
  background: var(--hero-gradient) !important; border-color: transparent !important; color: #FFFFFF !important;
}

body .admin-login-card h1.sub {
  color: var(--lc-muted) !important; font: 400 14px/1.45 var(--sans, inherit) !important;
  text-align: center; margin: 0 0 22px !important; text-wrap: balance;
}

body .admin-login-card .admin-field { margin-bottom: 16px !important; }
body .admin-login-card .admin-field > label {
  display: flex !important; align-items: center; gap: 8px;
  margin-bottom: 8px !important; color: var(--lc-muted) !important;
  font: 600 11.5px var(--mono) !important; letter-spacing: .05em;
}
body .admin-login-card .admin-field > label::before {
  content: ""; flex: none; width: 6px; height: 6px; background: var(--lc-accent);
}
body .admin-login-card .lbl-row { justify-content: flex-start !important; }
body .admin-login-card .lbl-row a {
  margin-inline-start: auto; color: var(--lc-muted) !important;
  font: 600 11.5px var(--mono) !important; letter-spacing: 0; text-decoration: none;
}
body .admin-login-card .lbl-row a:hover { color: var(--lc-text) !important; text-decoration: underline; }

body .admin-login-card .admin-field input {
  min-height: 48px; padding: 0 14px !important; border-radius: 10px !important;
  background: var(--lc-field) !important; border: 1px solid var(--lc-field-border) !important;
  color: var(--lc-text) !important; font-size: 15px !important;
  transition: border-color .15s, box-shadow .15s;
}
body .admin-login-card .pass-wrap input { padding-inline-end: 48px !important; }
body .admin-login-card .admin-field input::placeholder { color: var(--lc-muted); opacity: .75; }
body .admin-login-card .admin-field input:focus {
  outline: none !important; border-color: var(--lc-accent) !important; box-shadow: 0 0 0 3px var(--lc-ring) !important;
}

body .admin-login-card #authSubmitBtn {
  min-height: 48px; margin-top: 6px !important; border-radius: 10px !important;
  font: 700 14px var(--mono) !important; letter-spacing: .02em;
}

body .admin-login-card .tg-login { margin-top: 22px !important; }
body .admin-login-card .tg-login-divider {
  margin-bottom: 14px !important; color: var(--lc-muted) !important; font: 500 12px var(--sans, inherit) !important;
}
body .admin-login-card .tg-login-divider::before,
body .admin-login-card .tg-login-divider::after { background: var(--lc-line) !important; }

body .admin-login-card .alt-row { gap: 10px !important; }
body .admin-login-card .alt-btn {
  min-height: 70px; padding: 12px 6px !important; gap: 8px !important; border-radius: 12px !important;
  background: transparent !important; border: 1px solid var(--lc-outline) !important;
  color: var(--lc-text) !important; font: 600 12px var(--mono) !important;
  transition: border-color .15s, background-color .15s;
}
body .admin-login-card .alt-btn * { color: inherit !important; }
body .admin-login-card .alt-btn:hover { border-color: var(--lc-text) !important; background: var(--lc-hover) !important; }
body .admin-login-card .alt-btn svg { width: 22px; height: 22px; }
body .admin-login-card .alt-hint { margin-top: 12px !important; color: var(--lc-muted) !important; font-size: 12px !important; }

body .admin-login-card #regHint { color: var(--lc-muted) !important; font-size: 12.5px !important; line-height: 1.45; text-align: center; margin: -6px 0 14px !important; }

body .admin-login-card #authSwitchLink,
body .admin-login-card #regPassToggle { color: var(--lc-muted) !important; font-size: 13px !important; }
body .admin-login-card #authSwitchLink:hover,
body .admin-login-card #regPassToggle:hover { color: var(--lc-link) !important; }

body .admin-login-card .auth-tab:focus-visible,
body .admin-login-card .alt-btn:focus-visible,
body .admin-login-card #authSubmitBtn:focus-visible,
body .admin-login-card a:focus-visible { outline: 2px solid var(--lc-accent) !important; outline-offset: 2px; }

@media (max-width: 480px) {
  body .admin-login-wrap { padding-top: 66px !important; }
  body .admin-login-wrap .admin-login-card { padding: 26px 18px 22px !important; border-radius: 16px !important; }
  body .admin-login-card .logo { margin-bottom: 18px !important; }
  body .admin-login-card h1.sub { font-size: 13.5px !important; margin-bottom: 18px !important; }
  body .admin-login-card .admin-field input { font-size: 16px !important; }
  body .admin-login-card .alt-btn { min-height: 66px; }
}
@media (prefers-reduced-motion: reduce) {
  body .admin-login-card .auth-tab, body .admin-login-card .alt-btn, body .admin-login-card .admin-field input { transition: none; }
}
