/* ============================================================
   gohub.space — Auth pages (login + register)
   Glassmorphism blue-hue design. High-specificity to
   override gohub-user.css and nvidia-ui.css.
   ============================================================ */

body.gh-auth-body {
    margin: 0 !important;
    padding: 0 !important;
    min-height: 100vh !important;
    background:
      radial-gradient(ellipse at 50% -10%, rgba(29,78,216,.35), transparent 55%),
      radial-gradient(ellipse at 50% 110%, rgba(37,99,235,.28), transparent 55%),
      radial-gradient(ellipse at 15% 40%, rgba(59,130,246,.14), transparent 45%),
      #050810 !important;
    color: #F4F7FC !important;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
    position: relative;
}

body.gh-auth-body .loginBg,
body.gh-auth-body .login-warp,
body.gh-auth-body .login-main,
body.gh-auth-body .login-body,
body.gh-auth-body .login-head {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

body.gh-auth-body .gh-auth-glow {
    position: fixed !important;
    inset: 0 !important;
    z-index: 0 !important;
    pointer-events: none !important;
    overflow: hidden !important;
}
body.gh-auth-body .gh-auth-glow svg {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    filter: drop-shadow(0 0 45px rgba(59,130,246,.45));
}

body.gh-auth-body .gh-auth-stage {
    position: relative !important;
    z-index: 1 !important;
    min-height: 100vh !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 40px 20px !important;
}

body.gh-auth-body .gh-auth-card {
    position: relative !important;
    width: 100% !important;
    max-width: 420px !important;
    padding: 30px 30px 26px !important;
    background:
      linear-gradient(160deg,
        rgba(37,99,235,.18) 0%,
        rgba(20,35,65,.55) 45%,
        rgba(10,18,34,.78) 100%) !important;
    border: 1px solid rgba(96,165,250,.38) !important;
    border-radius: 24px !important;
    box-shadow:
      0 30px 80px rgba(0,0,0,.55),
      0 0 0 1px rgba(96,165,250,.10),
      inset 0 1px 0 rgba(147,197,253,.25),
      inset 0 -1px 0 rgba(30,64,175,.20) !important;
    backdrop-filter: blur(24px) saturate(140%) !important;
    -webkit-backdrop-filter: blur(24px) saturate(140%) !important;
    overflow: hidden !important;
    margin: 0 auto !important;
}
body.gh-auth-body .gh-auth-card::before {
    content: "" !important;
    position: absolute !important;
    top: 0; left: 0; right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(147,197,253,.75), transparent) !important;
    pointer-events: none !important;
}
body.gh-auth-body .gh-auth-card::after {
    content: "" !important;
    position: absolute !important;
    top: -60%; left: -20%; right: -20%;
    height: 70%;
    background: radial-gradient(ellipse at center, rgba(59,130,246,.22), transparent 65%) !important;
    pointer-events: none !important;
    z-index: 0 !important;
}
body.gh-auth-body .gh-auth-card > * {
    position: relative !important;
    z-index: 1 !important;
}

body.gh-auth-body .gh-auth-brand {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0 !important;
    margin: 0 0 20px !important;
    font-size: 21px !important;
    font-weight: 850 !important;
    letter-spacing: -.055em !important;
    color: #F4F7FC !important;
    text-decoration: none !important;
    line-height: 1 !important;
}
body.gh-auth-body .gh-auth-brand .g { color: #60A5FA !important; }
body.gh-auth-body .gh-auth-brand .gh-brand-dot { color: #60A5FA !important; }
body.gh-auth-body .gh-auth-brand .gh-brand-tld { color: #8494AD !important; font-weight: 700 !important; }

body.gh-auth-body .gh-auth-title {
    margin: 0 0 24px !important;
    text-align: center !important;
    font-size: 24px !important;
    font-weight: 800 !important;
    color: #FFFFFF !important;
    letter-spacing: -.02em !important;
}

body.gh-auth-body .gh-auth-form {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
}
body.gh-auth-body .gh-auth-field {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
}
body.gh-auth-body .gh-auth-field input {
    width: 100% !important;
    height: 52px !important;
    padding: 0 22px !important;
    font-size: 15px !important;
    color: #F4F7FC !important;
    background: rgba(8,14,26,.55) !important;
    border: 1px solid rgba(96,165,250,.32) !important;
    border-radius: 999px !important;
    outline: none !important;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease !important;
    font-family: inherit !important;
    backdrop-filter: blur(6px) !important;
    -webkit-backdrop-filter: blur(6px) !important;
    box-shadow: none !important;
    min-height: 52px !important;
}
body.gh-auth-body .gh-auth-field input::placeholder {
    color: rgba(180,195,220,.55) !important;
    font-weight: 500 !important;
    opacity: 1 !important;
}
body.gh-auth-body .gh-auth-field input:hover {
    border-color: rgba(96,165,250,.48) !important;
}
body.gh-auth-body .gh-auth-field input:focus {
    border-color: #60A5FA !important;
    background: rgba(8,14,26,.78) !important;
    box-shadow:
      0 0 0 4px rgba(59,130,246,.20),
      0 0 24px rgba(59,130,246,.25) !important;
}

body.gh-auth-body .gh-auth-field input[type=number]::-webkit-inner-spin-button,
body.gh-auth-body .gh-auth-field input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}
body.gh-auth-body .gh-auth-field input[type=number] { -moz-appearance: textfield !important; }

body.gh-auth-body .gh-auth-field-captcha { gap: 12px !important; }
body.gh-auth-body .gh-auth-captcha {
    height: 52px !important;
    width: 118px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(96,165,250,.35) !important;
    cursor: pointer !important;
    flex: 0 0 auto !important;
    object-fit: cover !important;
    background: #0A1322 !important;
    box-shadow: inset 0 0 0 1px rgba(96,165,250,.10) !important;
}

body.gh-auth-body .gh-auth-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    padding: 2px 6px 4px !important;
    font-size: 13px !important;
}
body.gh-auth-body .gh-auth-check {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    color: #C2CDDE !important;
    cursor: pointer !important;
    user-select: none !important;
    margin: 0 !important;
}
body.gh-auth-body .gh-auth-check input[type=checkbox] {
    width: 16px !important;
    height: 16px !important;
    border-radius: 4px !important;
    accent-color: #3B82F6 !important;
    margin: 0 !important;
}
body.gh-auth-body .gh-auth-link {
    color: #C2CDDE !important;
    text-decoration: none !important;
    transition: color .18s ease !important;
}
body.gh-auth-body .gh-auth-link:hover { color: #60A5FA !important; }

body.gh-auth-body .gh-auth-btn {
    width: 100% !important;
    height: 52px !important;
    margin-top: 6px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #FFFFFF !important;
    color: #0B1220 !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    letter-spacing: .01em !important;
    cursor: pointer !important;
    transition: transform .15s ease, box-shadow .18s ease, background .18s ease !important;
    font-family: inherit !important;
    box-shadow: 0 10px 24px rgba(255,255,255,.10) !important;
    text-transform: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}
body.gh-auth-body .gh-auth-btn:hover {
    transform: translateY(-1px) !important;
    background: #F1F5F9 !important;
    box-shadow:
      0 14px 30px rgba(255,255,255,.18),
      0 0 30px rgba(59,130,246,.35) !important;
}
body.gh-auth-body .gh-auth-btn:active { transform: translateY(0) !important; }
body.gh-auth-body .gh-auth-btn:disabled { opacity: .65 !important; cursor: wait !important; transform: none !important; }

body.gh-auth-body .gh-auth-footer {
    margin: 18px 0 0 !important;
    text-align: center !important;
    font-size: 13px !important;
    color: #8494AD !important;
}
body.gh-auth-body .gh-auth-link-strong {
    color: #FFFFFF !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    margin-left: 4px !important;
    transition: color .18s ease !important;
}
body.gh-auth-body .gh-auth-link-strong:hover { color: #60A5FA !important; }

body.gh-auth-body .nv-theme-toggle { display: none !important; }

@media (max-width: 480px) {
    body.gh-auth-body .gh-auth-stage { padding: 30px 16px !important; }
    body.gh-auth-body .gh-auth-card {
        padding: 26px 22px 22px !important;
        border-radius: 20px !important;
    }
    body.gh-auth-body .gh-auth-title { font-size: 22px !important; margin-bottom: 20px !important; }
    body.gh-auth-body .gh-auth-brand { font-size: 19px !important; margin-bottom: 16px !important; }
    body.gh-auth-body .gh-auth-field input,
    body.gh-auth-body .gh-auth-btn,
    body.gh-auth-body .gh-auth-captcha { height: 50px !important; }
    body.gh-auth-body .gh-auth-captcha { width: 100px !important; }
    body.gh-auth-body .gh-auth-glow svg { transform: scale(1.15); }
}