/* Pabellón al Día — login y verificación (portado del prototipo JSX)
   celeste #3F9FC2 · celeste hondo #12586E · coral #E37E5F · tinta #1E3941 */
:root{
  --blanco:#FBFBF8;
  --panel:#FFFFFF;
  --celeste-suave:#EAF3F7;
  --celeste:#3F9FC2;
  --celeste-hondo:#12586E;
  --coral:#E37E5F;
  --coral-suave:#FBEDE7;
  --verde:#4E9E7A;
  --verde-suave:#E9F3EE;
  --tinta:#1E3941;
  --gris:#69828A;
  --borde:#E4EAEA;
  --sombra:0 1px 2px rgba(18,88,110,.05),0 8px 30px rgba(18,88,110,.07);
}
*{box-sizing:border-box}
body.pad-root{
  margin:0;
  font-family:'Figtree',system-ui,sans-serif;
  color:var(--tinta);
  -webkit-font-smoothing:antialiased;
  font-variant-numeric:tabular-nums;
}
.pad-serif{font-family:'Fraunces',Georgia,serif;}

.pad-login-bg{min-height:100vh;display:flex;align-items:center;justify-content:center;
  padding:24px;background:
   radial-gradient(1100px 520px at 15% -10%, rgba(63,159,194,.16), transparent 60%),
   radial-gradient(900px 500px at 100% 110%, rgba(227,126,95,.12), transparent 55%),
   var(--blanco);}
.pad-card{width:100%;max-width:392px;background:var(--panel);border:1px solid var(--borde);
  border-radius:22px;box-shadow:var(--sombra);padding:38px 34px 30px;}
.pad-head{display:flex;align-items:center;gap:13px;margin-bottom:22px;}
.pad-badge{width:52px;height:52px;border-radius:15px;display:flex;align-items:center;
  justify-content:center;background:linear-gradient(150deg,var(--celeste),var(--celeste-hondo));
  color:#fff;box-shadow:0 6px 18px rgba(63,159,194,.35);flex:none;}
.pad-brand{font-size:26px;line-height:1.05;font-weight:600;color:var(--celeste-hondo);letter-spacing:-.01em;}
.pad-tag{color:var(--gris);font-size:13.5px;margin-top:7px;line-height:1.45;}
.pad-group{margin-bottom:14px;}
.pad-group.ultimo{margin-bottom:22px;}
.pad-label{font-size:12.5px;font-weight:600;color:var(--celeste-hondo);
  text-transform:uppercase;letter-spacing:.06em;margin-bottom:7px;display:block;}
.pad-field{display:flex;align-items:center;gap:10px;border:1.5px solid var(--borde);
  border-radius:12px;padding:0 13px;background:#fff;transition:border-color .15s,box-shadow .15s;}
.pad-field:focus-within{border-color:var(--celeste);box-shadow:0 0 0 4px rgba(63,159,194,.13);}
.pad-field input{border:0;outline:0;padding:13px 0;font-size:15px;width:100%;
  background:transparent;color:var(--tinta);font-family:inherit;}
.pad-field svg{color:var(--gris);flex:none;}
.pad-btn{width:100%;border:0;border-radius:12px;padding:14px;font-size:15px;font-weight:600;
  color:#fff;background:linear-gradient(150deg,var(--celeste),var(--celeste-hondo));
  cursor:pointer;font-family:inherit;transition:transform .1s,filter .15s;}
.pad-btn:hover{filter:brightness(1.05);}
.pad-btn:active{transform:translateY(1px);}
.pad-btn:focus-visible{outline:3px solid rgba(63,159,194,.4);outline-offset:2px;}
.pad-hint{margin-top:16px;font-size:12.5px;color:var(--gris);text-align:center;
  background:var(--celeste-suave);border-radius:10px;padding:9px 10px;}
.pad-error{margin-bottom:14px;font-size:13px;color:var(--coral);
  background:var(--coral-suave);border:1px solid rgba(227,126,95,.3);
  border-radius:10px;padding:9px 12px;}
/* Código TOTP: dígitos tabulares grandes centrados */
.pad-field input.pad-codigo{font-size:19px;letter-spacing:5px;text-align:center;
  font-feature-settings:"tnum";}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;}}
