.age-gate-overlay {
    position: fixed; top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(15px); -webkit-backdrop-filter: blur(15px);
    z-index: 9999999; display: flex; align-items: center; justify-content: center;
}

.age-gate-content {
    background: #ffffff; padding: 50px 30px; text-align: center;
    max-width: 400px; width: 90%;
    box-shadow: 0 10px 40px rgba(0,0,0,0.05);
    border: 1px solid #eee;
}

.age-gate-content h2 {
    font-size: 24px; font-weight: bold; letter-spacing: 2px;
    text-transform: uppercase; margin-bottom: 15px; color: #000;
}

.age-gate-content p {
    font-size: 15px; color: #444; line-height: 1.5; margin-bottom: 25px;
}

.age-gate-content input[type="date"] {
    width: 100%; padding: 12px; border: 1px solid #000;
    font-size: 16px; margin-bottom: 20px; border-radius: 0; text-align: center;
}

.age-gate-btn {
    background: #000; color: #fff; width: 100%; padding: 15px;
    text-transform: uppercase; letter-spacing: 1px; font-weight: bold;
    border: none; cursor: pointer; border-radius: 0;
}

.age-gate-btn:hover { background: #333; }

.age-gate-exit { 
    display: block; margin-top: 20px; font-size: 12px; 
    text-transform: uppercase; color: #999; text-decoration: underline; 
}

/* Blur al Body */
body.age-gate-active > *:not(.age-gate-overlay) {
    filter: blur(15px); pointer-events: none;
}