* { box-sizing: border-box; margin: 0; padding: 0; }

body {
    font-family: 'Segoe UI', 'Arial', sans-serif;
    background: #1e1e2f;
    color: #eee;
    touch-action: none;
}

/* ===== LOGIN ===== */
.pantalla-login {
    position: fixed; top: 0; left: 0; width: 100%; height: 100%;
    background: #1e1e2f;
    display: flex; justify-content: center; align-items: center;
    z-index: 1000;
}

.logo-container { text-align: center; margin-bottom: 30px; }
.logo-img { 
    width: 120px; height: 120px; object-fit: contain;
    border-radius: 50%; background: #FFE135; padding: 8px;
    box-shadow: 0 8px 0 #b09a20; margin-bottom: 10px;
}

.logo-text { font-size: 2.5rem; font-weight: 800; color: #FFE135; letter-spacing: 4px; text-shadow: 4px 4px 0 #b09a20; }
.logo-sub { color: #aaa; margin-top: 5px; }

.login-box {
    background: #2a2a40; padding: 30px; border-radius: 24px;
    width: 90%; max-width: 420px; box-shadow: 0 20px 30px rgba(0,0,0,0.7);
    border-bottom: 8px solid #FFE135;
}

.input-group { margin-bottom: 15px; }
.input-group label { display: block; margin-bottom: 5px; color: #ddd; font-weight: 600; }
.input-group input {
    width: 100%; padding: 12px; border: none; border-radius: 40px;
    background: #3d3d5c; color: white; font-size: 16px; outline: none;
}
.input-group input:focus { background: #4d4d6e; box-shadow: inset 0 0 0 2px #FFE135; }

.btn-login {
    background: #FFE135; color: #1e1e2f; border: none;
    padding: 15px 25px; font-size: 20px; font-weight: bold;
    border-radius: 50px; width: 100%; cursor: pointer;
    box-shadow: 0 4px 0 #b09a20; transition: 0.1s; margin-top: 10px;
}
.btn-login:hover { background: #FFD700; }
.btn-login:active { transform: translateY(4px); box-shadow: none; }

/* ===== DASHBOARD ===== */
.dashboard {
    position: fixed; top: 0; left: 0; width: 100%; height: 100%;
    background: #1a1a2e; display: flex; flex-direction: column;
}

.dashboard-header {
    background: #2d2d44; padding: 16px 24px;
    display: flex; justify-content: space-between; align-items: center;
    border-bottom: 3px solid #FFE135;
}

.logo-container.small {
    display: flex; align-items: center; gap: 10
