/* ============================================================
  SNG MARKETS — New Password Page
  Inject via: <link> tag or "Script before closing head tag"
  Scope: body#New-Password only
  Matches: sng-auth portal aesthetic (light / glass / blue)
  ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Instrument+Sans:wght@400;500;600;700&display=swap');

/* ── Variables (mirrors sng-auth system) ── */
body#New-Password {
  --sng-primary: #1e1eb4;
  --sng-primary-hover: #16168f;
  --sng-primary-soft: rgba(30, 30, 180, 0.08);
  --sng-primary-border: rgba(30, 30, 180, 0.2);
  --sng-bg-page: #f5f5f7;
  --sng-bg-card: rgba(255, 255, 255, 0.55);
  --sng-bg-input: rgba(255, 255, 255, 0.7);
  --sng-text: #0a0a1a;
  --sng-text-muted: #6a6a78;
  --sng-border: rgba(217, 217, 226, 0.8);
  --sng-border-strong: #d9d9e2;
  --sng-radius-card: 20px;
  --sng-radius-pill: 999px;
  --sng-shadow-card:
    0 1px 3px rgba(10, 10, 26, 0.04), 0 20px 50px rgba(30, 60, 140, 0.12);
  --sng-shadow-button: 0 4px 14px rgba(30, 30, 180, 0.25);
  --sng-font:
    'Instrument Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui,
    sans-serif;
  --sng-blur-card: blur(24px) saturate(140%);
}

/* ── Reset base ── */
body#New-Password,
body#New-Password * {
  font-family: var(--sng-font) !important;
  box-sizing: border-box !important;
}

body#New-Password {
  background:
    radial-gradient(
      ellipse 60% 50% at 50% 0%,
      rgba(80, 130, 220, 0.35) 0%,
      rgba(100, 150, 230, 0.15) 25%,
      transparent 60%
    ),
    var(--sng-bg-page) !important;
  color: var(--sng-text) !important;
  min-height: 100vh !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* ── Hide original chrome ── */
body#New-Password > div[style*='height: 100vh'] > ul.x-navigation,
body#New-Password > div[style*='height: 100vh'] > hr,
body#New-Password .disclaimer-color,
body#New-Password .footer-color {
  display: none !important;
}

/* ── Full-height flex wrapper ── */
body#New-Password > div[style*='height: 100vh'] {
  height: 100vh !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  padding: 24px 16px !important;
}

/* ── Card container ── */
body#New-Password .login-container {
  background: transparent !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 460px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

/* ── Card box ── */
body#New-Password .login-box {
  width: 100% !important;
  background: var(--sng-bg-card) !important;
  backdrop-filter: var(--sng-blur-card) !important;
  -webkit-backdrop-filter: var(--sng-blur-card) !important;
  border: 1px solid rgba(255, 255, 255, 0.6) !important;
  border-radius: var(--sng-radius-card) !important;
  box-shadow: var(--sng-shadow-card) !important;
  overflow: hidden !important;
  animation: none !important;
}

/* ── Card body ── */
body#New-Password .login-body {
  background: transparent !important;
  padding: 40px 40px 36px !important;
}

/* ── Logo above title ── */
body#New-Password .login-body::before {
  content: '' !important;
  display: block !important;
  width: 110px !important;
  height: 28px !important;
  background-image: url('https://cdn.skaleapps.io/images/branding/KEv0OR6puO.png') !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: contain !important;
  margin-bottom: 28px !important;
  /* Logo is light — invert to show on light bg */
  filter: brightness(0) !important;
}

/* ── Title ── */
body#New-Password .login-title {
  font-size: 26px !important;
  font-weight: 700 !important;
  color: var(--sng-text) !important;
  line-height: 1.2 !important;
  margin-bottom: 6px !important;
  letter-spacing: -0.02em !important;
}

body#New-Password .login-title strong {
  color: var(--sng-primary) !important;
  font-weight: 700 !important;
}

/* ── Subtitle injected ── */
body#New-Password #messages:empty::before {
  content: 'Set a new secure password for your trading account.' !important;
  display: block !important;
  font-size: 14px !important;
  color: var(--sng-text-muted) !important;
  margin-bottom: 28px !important;
  line-height: 1.5 !important;
  font-weight: 400 !important;
}

body#New-Password #messages:not(:empty) {
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--sng-primary) !important;
  background: var(--sng-primary-soft) !important;
  border: 1px solid var(--sng-primary-border) !important;
  border-radius: 10px !important;
  padding: 12px 16px !important;
  margin-bottom: 20px !important;
}

/* ── Form groups ── */
body#New-Password .form-group {
  margin-bottom: 14px !important;
}

/* ── Inputs ── */
body#New-Password .form-control {
  height: 46px !important;
  padding: 0 16px !important;
  font-family: var(--sng-font) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: var(--sng-text) !important;
  background: var(--sng-bg-input) !important;
  border: 1px solid var(--sng-border-strong) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  transition:
    border-color 0.15s ease,
    box-shadow 0.15s ease !important;
  line-height: 44px !important;
}

body#New-Password .form-control:focus {
  border-color: var(--sng-primary) !important;
  box-shadow: 0 0 0 3px rgba(30, 30, 180, 0.08) !important;
  outline: none !important;
  background: rgba(255, 255, 255, 0.9) !important;
}

body#New-Password .form-control::placeholder {
  color: #8a8a99 !important;
  opacity: 1 !important;
}

/* ── Submit button ── */
body#New-Password .btn-login,
body#New-Password .btn-login.submit {
  background: var(--sng-primary) !important;
  border-color: var(--sng-primary) !important;
  color: #fff !important;
  border-radius: var(--sng-radius-pill) !important;
  height: 48px !important;
  padding: 0 32px !important;
  font-family: var(--sng-font) !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: -0.01em !important;
  box-shadow: var(--sng-shadow-button) !important;
  transition:
    background 0.15s ease,
    transform 0.1s ease,
    box-shadow 0.15s ease !important;
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-top: 8px !important;
}

body#New-Password .btn-login:hover,
body#New-Password .btn-login:focus {
  background: var(--sng-primary-hover) !important;
  border-color: var(--sng-primary-hover) !important;
  color: #fff !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 18px rgba(30, 30, 180, 0.35) !important;
}

body#New-Password .btn-login:active {
  transform: translateY(0) !important;
}

/* ── Divider between inputs and button ── */
body#New-Password .form-group:has(.btn-login) {
  margin-top: 20px !important;
  padding-top: 20px !important;
  border-top: 1px solid rgba(217, 217, 226, 0.5) !important;
  margin-bottom: 0 !important;
}

/* ── Security note below button ── */
body#New-Password .login-body > form::after {
  content: '🔒  Secured with 256-bit encryption' !important;
  display: block !important;
  text-align: center !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  color: var(--sng-text-muted) !important;
  margin-top: 16px !important;
  letter-spacing: 0.01em !important;
}

/* ── Mobile ── */
@media (max-width: 480px) {
  body#New-Password .login-body {
    padding: 28px 24px 24px !important;
  }

  body#New-Password .login-title {
    font-size: 22px !important;
  }
}
