/**
 * ZoneVIP.cl - Master Global Stylesheet
 * Versión: 5.0 - Ultra High Contrast VIP Dark
 */
:root {
    --vz-bg: #050507;
    --vz-card: #11141b;
    --vz-accent: #ff2a4b;
    --vz-accent-gradient: linear-gradient(135deg, #ff2a4b 0%, #e01a8a 100%);
}

html, body { 
    background-color: var(--vz-bg) !important; 
    color: #ffffff !important; 
    font-family: 'Inter', sans-serif;
    min-height: 100vh;
}

/* --- CONTRASTE TOTAL --- */
p, span, div, li, label, .form-text, .text-muted, .small, .extra-small {
    color: #ffffff !important;
}

h1, h2, h3, h4, h5, h6, .fw-bold, .fw-800 { 
    font-family: 'Plus Jakarta Sans', sans-serif !important; 
    color: #ffffff !important;
}

/* --- ALERTAS Y MENSAJES --- */
.alert {
    background-color: #000000 !important;
    border: 2px solid #333 !important;
    border-radius: 12px !important;
    color: #ffffff !important;
    text-align: center;
}

.alert-danger {
    border-color: #ff2a4b !important;
    color: #ff2a4b !important;
    background-color: #000 !important;
}

.alert-success {
    border-color: #00e676 !important;
    color: #00e676 !important;
    background-color: #000 !important;
}

.alert-warning {
    border-color: #ffab40 !important;
    color: #ffab40 !important;
}

/* --- NAVEGACIÓN --- */
.nav-premium { 
    background-color: rgba(5, 5, 7, 0.9) !important; 
    backdrop-filter: blur(15px); 
    border-bottom: 1px solid rgba(255,255,255,0.1);
}

.nav-sidebar-item { 
    display: flex; 
    align-items: center; 
    padding: 12px 20px; 
    border-radius: 12px; 
    color: #ffffff !important; 
    text-decoration: none; 
    font-weight: 600; 
}
.nav-sidebar-item:visited {
    color: #ffffff !important;
}
.nav-sidebar-item:hover, .nav-sidebar-item.active { 
    background: rgba(255,42,75,0.2) !important; 
    color: #ff2a4b !important; 
}
.nav-sidebar-item.active:visited {
    color: #ff2a4b !important;
}

/* --- COMPONENTES --- */
.vz-card { 
    background: var(--vz-card) !important; 
    border: 1px solid rgba(255,255,255,0.1) !important; 
    border-radius: 24px; 
    overflow: hidden; 
}

.btn-premium {
    background: var(--vz-accent-gradient) !important;
    border: none !important;
    color: #ffffff !important;
    font-weight: 800 !important;
    border-radius: 50px !important;
}

.btn-dark {
    background: #000000 !important;
    border: 1px solid #333 !important;
    color: #ffffff !important;
}

.form-control, .form-select { 
    background-color: #000000 !important; 
    border: 1px solid #444 !important; 
    color: #ffffff !important; 
}

/* --- PLACEHOLDER MEJORADO --- */
.placeholder::placeholder {
    color: #888888 !important;
    opacity: 1 !important;
    font-weight: 400;
}
.placeholder::-webkit-input-placeholder { color: #888888 !important; opacity: 1 !important; }
.placeholder::-moz-placeholder { color: #888888 !important; opacity: 1 !important; }
.placeholder:-ms-input-placeholder { color: #888888 !important; opacity: 1 !important; }
.placeholder:-moz-placeholder { color: #888888 !important; opacity: 1 !important; }

/* --- PROTECCIÓN ANTI-SCREENSHOT --- */
@media screen {
    body.protected::before {
        content: "";
        position: fixed;
        top: 0; left: 0;
        width: 100vw; height: 100vh;
        background: transparent;
        z-index: 999999;
        pointer-events: none;
        mix-blend-mode: normal;
    }
}

.anti-screenshot-overlay {
    display: none;
    position: fixed;
    top: 0; left: 0;
    width: 100%; height: 100%;
    background: #000;
    z-index: 999999;
    pointer-events: none;
}

@media (display-mode: fullscreen), (display-mode: standalone) {
    body {
        -webkit-user-select: none !important;
        -moz-user-select: none !important;
        -ms-user-select: none !important;
        user-select: none !important;
    }
}

.secure-content {
    -webkit-user-select: none !important;
    -moz-user-select: none !important;
    -ms-user-select: none !important;
    user-select: none !important;
    -webkit-touch-callout: none !important;
}

/* --- OCULTAR FLECHAS DE INPUTS NUMERICOS --- */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}
input[type="number"] {
    -moz-appearance: textfield !important;
    appearance: textfield !important;
}

/* Evitar que links visitados cambien de color */
a:visited { color: inherit; }

/* --- CURSOR CORRECTO EN FORMULARIOS --- */
input[type="text"], input[type="email"], input[type="password"], input[type="number"], input[type="search"],
textarea, select, .form-control {
    cursor: text !important;
}
input[type="submit"], button, .btn, [role="button"], a {
    cursor: pointer !important;
}
label, .tipo-option { cursor: pointer !important; }

.text-danger { color: #ff2a4b !important; }
.text-success { color: #00e676 !important; }
