/* Pantalla de ingreso del panel. Mismo sistema que el panel: azul noche con el azul del
   logo de Galutec como acento. Tipos propios, sin dependencias externas. */
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;
  src:url('/panel/inter.woff2') format('woff2')}
:root{
  --fondo:#0A111C; --panel:#121A27; --panel-2:#182234;
  --tx:#EEF2F7; --tx-2:rgba(238,242,247,.64); --tx-3:rgba(238,242,247,.44);
  --linea:rgba(255,255,255,.11); --acento:#0A84FF; --acento-ink:#FFFFFF;
  --error:#FF6B60; --error-bg:rgba(255,107,96,.14);
  --tipo:'Plus Jakarta Sans','Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,Roboto,sans-serif;
  --tipo-display:var(--tipo);
}
*{box-sizing:border-box}
/* label{display:grid} pisaba [hidden]: en el ingreso normal salian 'Tu nombre' y 'Repite la contrasena' */
[hidden]{display:none!important}
html,body{margin:0;min-height:100%}
body{font:15px/1.5 var(--tipo);color:var(--tx);
  background:radial-gradient(1100px 600px at 50% -10%,rgba(10,132,255,.22),transparent 60%),var(--fondo);
  -webkit-font-smoothing:antialiased;display:grid;place-items:center;min-height:100vh;
  padding:24px calc(24px + env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) calc(24px + env(safe-area-inset-left))}
form{background:var(--panel);width:100%;max-width:372px;border-radius:18px;padding:30px 28px 26px;
  box-shadow:inset 0 0 0 1px var(--linea),0 22px 60px rgba(0,0,0,.6);display:grid;gap:15px;
  animation:entra .45s cubic-bezier(.2,.8,.2,1) both}
@keyframes entra{from{opacity:0;transform:translateY(12px) scale(.985)}}
@media(prefers-reduced-motion:reduce){form{animation:none}}
.logo-g{width:42px;height:42px;border-radius:12px;flex:0 0 auto;box-shadow:0 6px 18px rgba(10,132,255,.35)}
.marca{display:flex;align-items:center;gap:13px;margin-bottom:8px}
.marca b{display:block;font-family:var(--tipo-display);font-size:20px;font-weight:700;letter-spacing:-.02em}
.marca span{display:block;font-size:10.5px;letter-spacing:.14em;color:var(--tx-3);font-weight:500}
label{display:grid;gap:6px;font-size:12px;font-weight:500;color:var(--tx-2)}
input{font:inherit;color:var(--tx);padding:11px 13px;background:var(--panel-2);
  border:1px solid var(--linea);border-radius:10px;outline:none;width:100%;
  transition:border-color .14s,box-shadow .14s}
input::placeholder{color:var(--tx-3)}
input:focus{border-color:var(--acento);box-shadow:0 0 0 3px rgba(10,132,255,.25)}
button{font:inherit;font-weight:600;color:var(--acento-ink);background:linear-gradient(180deg,#2B93FF,#0A84FF);min-height:46px;
  box-shadow:0 1px 2px rgba(0,0,0,.35),0 6px 16px rgba(10,132,255,.32);
  border:0;border-radius:11px;padding:12px;cursor:pointer;margin-top:4px;letter-spacing:-.005em;
  transition:filter .14s,transform .09s}
button:hover{filter:brightness(1.06)}
button:active{transform:scale(.99)}
button[disabled]{opacity:.5;cursor:wait}
.err{display:none;background:var(--error-bg);color:var(--error);border-radius:10px;padding:10px 12px;font-size:13px}
.err.on{display:block}
.aviso-primero{margin:0;background:var(--panel-2);color:var(--tx-2);border:1px solid var(--linea);
  border-radius:10px;padding:11px 13px;font-size:13px;line-height:1.5}
.aviso-primero b{color:var(--tx);font-weight:600}
small.pie{color:var(--tx-3);font-size:11.5px;text-align:center}
