/* MODE FOOD PWA 0.9.8 — restauración de sesión sin destello del acceso. */
.app-bootstrap,
.app-bootstrap *,
.app-bootstrap *::before,
.app-bootstrap *::after {
  box-sizing: border-box;
}

.app-bootstrap {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: grid;
  place-items: center;
  padding: 24px;
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background:
    radial-gradient(ellipse at 50% 38%, rgba(229, 54, 51, .14), transparent 27%),
    radial-gradient(circle at 18% 16%, rgba(229, 54, 51, .13), transparent 30%),
    radial-gradient(circle at 82% 84%, rgba(117, 28, 31, .10), transparent 34%),
    linear-gradient(135deg, #121012 0%, #211517 48%, #0c0d0f 100%);
}

.app-bootstrap-card {
  min-width: min(88vw, 300px);
  display: grid;
  justify-items: center;
  gap: 12px;
  padding: 26px 30px;
  border: 1px solid #dfe2e7;
  border-radius: 20px;
  background: rgba(250, 250, 251, .97);
  color: #17181d;
  box-shadow:
    0 24px 64px rgba(0, 0, 0, .28),
    0 0 0 1px rgba(255, 255, 255, .04);
  backdrop-filter: blur(10px);
  text-align: center;
}

.app-bootstrap-logo {
  width: 108px;
  height: 62px;
  object-fit: contain;
}

.app-bootstrap-card .spinner {
  width: 24px;
  height: 24px;
  border: 3px solid;
  border-color: rgba(38, 43, 51, .20);
  border-top-color: #e53633;
  border-radius: 50%;
  animation: app-bootstrap-spin .8s linear infinite;
}

@keyframes app-bootstrap-spin {
  to { transform: rotate(360deg); }
}

.app-bootstrap-card strong {
  color: #262b33;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.3;
}


/* Recuperación segura del Administrador. */
.login-recovery-btn{border:0;background:transparent;color:var(--muted,#666);font:inherit;font-size:.84rem;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:5px 8px;margin:0 auto;display:block}
.login-recovery-btn:disabled{opacity:.55;cursor:wait}
.login-recovery-hint{display:block;text-align:center;color:var(--muted,#777);font-size:.76rem;min-height:1em}
.admin-recovery-card{width:min(460px,calc(100vw - 32px))}
