/* estilos.css · login y panel de administración (misma paleta del dashboard) */
:root{--b9:#0b2e5c;--b7:#1558a6;--b5:#2f80d8;--b1:#e6f0fb;--bg:#f2f4f8;--tx:#1b2838;--mu:#68778c;--ln:#dde3ec;--ok:#12a5a0;--am:#f2a33a;--co:#e4615c}
*{box-sizing:border-box}
body{margin:0;font:14px/1.45 "Segoe UI",system-ui,Arial,sans-serif;background:var(--bg);color:var(--tx)}
a{color:var(--b7)}
:focus-visible{outline:3px solid var(--b5);outline-offset:2px}

/* ---- Login ---- */
.login{min-height:100vh;display:grid;place-items:center;padding:20px}
.card{width:100%;max-width:380px;background:#fff;border:1px solid var(--ln);border-radius:10px;overflow:hidden}
.card header{background:var(--b9);padding:20px 24px}
.card header img{height:36px;display:block}
.card .cuerpo{padding:24px}
.card h1{font-size:18px;margin:0 0 4px;color:var(--b9)}
.card p.sub{margin:0 0 18px;color:var(--mu)}

label{display:block;font-size:12px;color:var(--mu);margin:12px 0 4px}
input,select{width:100%;font:inherit;padding:9px 10px;border:1px solid var(--ln);border-radius:6px;background:#fff;color:var(--tx)}
button,.btn{font:inherit;cursor:pointer;border:0;border-radius:6px;padding:10px 16px;background:var(--b7);color:#fff;text-decoration:none;display:inline-block}
button:hover,.btn:hover{background:var(--b9)}
.card button{width:100%;margin-top:18px}

.msg{padding:10px 12px;border-radius:6px;margin-bottom:14px;border-left:4px solid}
.msg.error{background:#fdeceb;border-color:var(--co)}
.msg.aviso{background:#fff4e0;border-color:var(--am)}
.msg.ok{background:#e3f6f5;border-color:var(--ok)}

/* ---- Administración ---- */
.top{background:var(--b9);color:#fff;padding:12px 20px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center}
.top h1{font-size:18px;margin:0;font-weight:600}
.top a{color:#fff}
.wrap{max-width:1000px;margin:20px auto;padding:0 20px;display:grid;gap:20px;grid-template-columns:minmax(260px,340px) 1fr}
@media(max-width:760px){.wrap{grid-template-columns:1fr}}
.panel{background:#fff;border:1px solid var(--ln);border-radius:10px;padding:20px}
.panel h2{font-size:16px;margin:0 0 6px;color:var(--b9)}
.panel .btn,.panel button{margin-top:16px;width:100%}
.hint{font-size:12px;color:var(--mu);margin:4px 0 0}
.tabla{overflow-x:auto}
table{width:100%;border-collapse:collapse}
th,td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--ln);white-space:nowrap}
th{background:var(--b1);color:var(--b9);font-weight:600}
.pill{display:inline-block;padding:1px 8px;border-radius:10px;background:var(--b1);color:var(--b7);font-size:12px}
.pill.adm{background:var(--b9);color:#fff}

/* =========================================
   ESCUDO DE SEGURIDAD PARA EL LOGO
   ========================================= */
.logo-seguro {
    width: 220px; /* Ajusta este valor si tu logo se ve muy corto o muy ancho */
    height: 50px;  /* Ajusta este valor según la altura de tu imagen */
    background-image: url('Logo.png'); /* Usa tu archivo original con "L" mayúscula */
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;

    /* Bloqueos Anti-Extracción */
    pointer-events: none; /* Bloquea el clic derecho y el inspector de elementos */
    user-select: none; /* Evita que el logo se resalte de azul al seleccionar texto */
    -webkit-user-drag: none; /* Evita que arrastren la imagen a otra pestaña */
}