/* ========================================================================
   TEMPLATE LOGIN: MOBILE PURPLE MINIMAL (CARDLESS SEAMLESS)
   Desain khusus mobile: Bersih, elegan, tanpa dibungkus kartu, dengan palet warna ungu modern.
   ======================================================================== */

body.login-template-mobile_purple_clean {
    min-height: 100vh !important;
    background: radial-gradient(circle at 50% 0%, #241144 0%, #130926 45%, #0a0415 100%) !important;
    background-color: #0a0415 !important;
    color: #f1f5f9 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding: 36px 20px 48px !important;
    position: relative !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
    font-family: 'Outfit', sans-serif !important;
}

/* Ambient Purple Glow Background Orbs */
body.login-template-mobile_purple_clean::before {
    content: "";
    position: fixed;
    width: 380px;
    height: 380px;
    top: -120px;
    right: -100px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(168, 85, 247, 0.2) 0%, rgba(124, 58, 237, 0.08) 50%, transparent 70%);
    filter: blur(40px);
    pointer-events: none;
    z-index: 0;
}

body.login-template-mobile_purple_clean::after {
    content: "";
    position: fixed;
    width: 440px;
    height: 440px;
    bottom: -140px;
    left: -120px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(124, 58, 237, 0.16) 0%, rgba(99, 102, 241, 0.05) 50%, transparent 70%);
    filter: blur(50px);
    pointer-events: none;
    z-index: 0;
}

/* Sembunyikan Hero Panel Desktop untuk Tampilan Khusus Mobile */
body.login-template-mobile_purple_clean .hero-panel {
    display: none !important;
}

/* ========================================================================
   FORM PANEL UTAMA (CARDLESS / TANPA BUNGKUS KARTU)
   ======================================================================== */
body.login-template-mobile_purple_clean .form-panel {
    width: 100% !important;
    max-width: 420px !important;
    min-width: unset !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 auto !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    position: relative !important;
    z-index: 2 !important;
}

/* Hilangkan garis aksen atas bawaan kartu */
body.login-template-mobile_purple_clean .form-panel::before {
    display: none !important;
}

body.login-template-mobile_purple_clean .form-inner {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
}

/* ========================================================================
   LOGO & BRAND HEADER
   ======================================================================== */
body.login-template-mobile_purple_clean .logo {
    margin-bottom: 28px !important;
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
}

body.login-template-mobile_purple_clean .logo-header-img,
body.login-template-mobile_purple_clean .logo-icon-img {
    max-height: 48px !important;
    width: auto !important;
    filter: drop-shadow(0 4px 18px rgba(168, 85, 247, 0.45)) !important;
    margin-bottom: 4px !important;
}

body.login-template-mobile_purple_clean .logo-icon {
    width: 52px !important;
    height: 52px !important;
    background: linear-gradient(135deg, #a855f7 0%, #7c3aed 100%) !important;
    border-radius: 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 26px !important;
    box-shadow: 0 8px 24px rgba(124, 58, 237, 0.5) !important;
    margin-bottom: 10px !important;
}

body.login-template-mobile_purple_clean .logo-text {
    font-size: 26px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    letter-spacing: -0.5px !important;
}

body.login-template-mobile_purple_clean .logo-text span {
    color: #c084fc !important;
    background: linear-gradient(135deg, #c084fc 0%, #a855f7 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
}

body.login-template-mobile_purple_clean .logo-slogan {
    color: #a78bfa !important;
    font-size: 13px !important;
    margin-top: 6px !important;
    font-weight: 500 !important;
    letter-spacing: 0.2px !important;
}

/* ========================================================================
   TAB SWITCHER (MASUK / DAFTAR) - DISEMBUNYIKAN UNTUK TAMPILAN LEBIH MINIMALIS
   ======================================================================== */
body.login-template-mobile_purple_clean .tab-switcher {
    display: none !important;
}

/* ========================================================================
   METODE LOGIN SWITCHER (HP & PIN / GMAIL / SCAN QR)
   ======================================================================== */
body.login-template-mobile_purple_clean div[style*="background: rgba(0,0,0,0.25)"] {
    background: rgba(28, 14, 52, 0.65) !important;
    border: 1px solid rgba(168, 85, 247, 0.2) !important;
    border-radius: 13px !important;
    padding: 4px !important;
    margin-bottom: 22px !important;
    backdrop-filter: blur(10px) !important;
}

body.login-template-mobile_purple_clean #btn-login-method-regular,
body.login-template-mobile_purple_clean #btn-login-method-gmail,
body.login-template-mobile_purple_clean #btn-login-method-qr {
    font-family: 'Outfit', sans-serif !important;
    border-radius: 9px !important;
    padding: 9px 8px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    transition: all 0.25s ease !important;
}

/* ========================================================================
   FORM GROUPS & INPUT FIELD (PALET UNGU MOBILE TOUCH)
   ======================================================================== */
body.login-template-mobile_purple_clean .form-group {
    margin-bottom: 18px !important;
}

body.login-template-mobile_purple_clean .form-group label {
    color: #c4b5fd !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    margin-bottom: 7px !important;
    display: block !important;
    letter-spacing: 0.2px !important;
}

body.login-template-mobile_purple_clean .form-group input {
    width: 100% !important;
    background: rgba(26, 13, 50, 0.75) !important;
    border: 1.5px solid rgba(168, 85, 247, 0.28) !important;
    border-radius: 14px !important;
    padding: 14px 16px !important;
    color: #ffffff !important;
    font-size: 15px !important;
    font-family: 'Outfit', sans-serif !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-sizing: border-box !important;
}

body.login-template-mobile_purple_clean .form-group input::placeholder {
    color: #7e6b9e !important;
    font-size: 14px !important;
}

body.login-template-mobile_purple_clean .form-group input:focus {
    background: rgba(36, 18, 70, 0.95) !important;
    border-color: #a855f7 !important;
    box-shadow: 0 0 0 3.5px rgba(168, 85, 247, 0.22), 0 6px 20px rgba(124, 58, 237, 0.25) !important;
    outline: none !important;
    transform: translateY(-1px) !important;
}

/* Tombol Minta OTP */
body.login-template-mobile_purple_clean #btn-request-otp,
body.login-template-mobile_purple_clean #btn-request-otp-reset {
    background: rgba(168, 85, 247, 0.18) !important;
    color: #c084fc !important;
    border: 1px solid rgba(168, 85, 247, 0.35) !important;
    border-radius: 12px !important;
    padding: 0 16px !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
}

body.login-template-mobile_purple_clean #btn-request-otp:hover,
body.login-template-mobile_purple_clean #btn-request-otp-reset:hover {
    background: #7c3aed !important;
    color: #ffffff !important;
    box-shadow: 0 4px 14px rgba(124, 58, 237, 0.4) !important;
}

/* Link Lupa PIN */
body.login-template-mobile_purple_clean a[onclick*="showResetPinForm"] {
    color: #c084fc !important;
    font-size: 12.5px !important;
    font-weight: 600 !important;
    transition: color 0.2s ease !important;
}

body.login-template-mobile_purple_clean a[onclick*="showResetPinForm"]:hover {
    color: #e9d5ff !important;
    text-decoration: underline !important;
}

/* ========================================================================
   TOMBOL UTAMA (SUBMIT ACTION BUTTON)
   ======================================================================== */
body.login-template-mobile_purple_clean .btn-submit {
    width: 100% !important;
    padding: 15px 20px !important;
    background: linear-gradient(135deg, #9333ea 0%, #7c3aed 50%, #6d28d9 100%) !important;
    border: none !important;
    border-radius: 14px !important;
    color: #ffffff !important;
    font-size: 15.5px !important;
    font-weight: 700 !important;
    letter-spacing: 0.3px !important;
    cursor: pointer !important;
    box-shadow: 0 8px 24px rgba(124, 58, 237, 0.45) !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    margin-top: 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    font-family: 'Outfit', sans-serif !important;
}

body.login-template-mobile_purple_clean .btn-submit:hover,
body.login-template-mobile_purple_clean .btn-submit:active {
    background: linear-gradient(135deg, #a855f7 0%, #8b5cf6 50%, #7c3aed 100%) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 12px 30px rgba(147, 51, 234, 0.55) !important;
}

/* ========================================================================
   ALERTS & NOTIFIKASI
   ======================================================================== */
body.login-template-mobile_purple_clean .alert {
    border-radius: 13px !important;
    padding: 13px 16px !important;
    font-size: 13px !important;
    margin-bottom: 20px !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

body.login-template-mobile_purple_clean .alert-error {
    background: rgba(239, 68, 68, 0.14) !important;
    border: 1px solid rgba(239, 68, 68, 0.32) !important;
    color: #fca5a5 !important;
}

body.login-template-mobile_purple_clean .alert-success {
    background: rgba(16, 185, 129, 0.14) !important;
    border: 1px solid rgba(16, 185, 129, 0.32) !important;
    color: #6ee7b7 !important;
}

/* ========================================================================
   GMAIL LOGIN & GOOGLE PROMPT
   ======================================================================== */
body.login-template-mobile_purple_clean #google-auto-status {
    background: rgba(168, 85, 247, 0.12) !important;
    border: 1px solid rgba(168, 85, 247, 0.28) !important;
    border-radius: 13px !important;
    color: #e9d5ff !important;
}

/* ========================================================================
   QR CODE LOGIN BOX
   ======================================================================== */
body.login-template-mobile_purple_clean #box-login-qr > div:nth-child(3) {
    background: rgba(28, 14, 52, 0.8) !important;
    border: 1.5px solid rgba(168, 85, 247, 0.3) !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35) !important;
}

body.login-template-mobile_purple_clean #qrStatusText {
    color: #c084fc !important;
}

body.login-template-mobile_purple_clean #box-login-qr div[style*="background: rgba(0,0,0,0.2)"] {
    background: rgba(26, 13, 48, 0.6) !important;
    border: 1px dashed rgba(168, 85, 247, 0.28) !important;
    color: #c4b5fd !important;
}

/* ========================================================================
   FOOTER LINKS & TERMS
   ======================================================================== */
body.login-template-mobile_purple_clean .footer-link {
    color: #9d8ab8 !important;
    font-size: 13.5px !important;
    text-align: center !important;
    margin-top: 24px !important;
}

body.login-template-mobile_purple_clean .footer-link a {
    color: #c084fc !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

body.login-template-mobile_purple_clean .footer-link a:hover {
    color: #e9d5ff !important;
    text-decoration: underline !important;
}

body.login-template-mobile_purple_clean a[onclick*="showRegularLoginForm"] {
    color: #a78bfa !important;
}

body.login-template-mobile_purple_clean a[onclick*="showRegularLoginForm"]:hover {
    color: #e9d5ff !important;
}

/* Responsive adjustment for extra compact mobile screens */
@media (max-width: 380px) {
    body.login-template-mobile_purple_clean {
        padding: 24px 16px 36px !important;
    }
    body.login-template-mobile_purple_clean .logo-text {
        font-size: 23px !important;
    }
    body.login-template-mobile_purple_clean .form-group input {
        padding: 12px 14px !important;
        font-size: 14px !important;
    }
    body.login-template-mobile_purple_clean .btn-submit {
        padding: 13px 18px !important;
        font-size: 14.5px !important;
    }
}
