@charset "UTF-8";
/* theme-name: Login Tío Ben ⇄ Ellaz (solo pantalla de acceso) */
/* ============================================================================
   LOGIN ANIMADO  TÍO BEN ⇄ ELLAZ   ·   GLPI 12   ·   solo CSS (sin JavaScript)
   ----------------------------------------------------------------------------
   ARCHIVO GENERADO por personalizacion/build/construir-tema.ps1  (versión: 2026-10-18 20:35)
   NO lo edites a mano: edita personalizacion/build/tioben-ellaz-login.template.scss
   y vuelve a ejecutar construir-tema.ps1.

   CÓMO FUNCIONA
   · GLPI carga en la pantalla de acceso todos los temas de GLPI_THEMES_DIR
     (/var/glpi/files/_themes). Este archivo llega ahí por un montaje Docker.
     Solo afecta a las páginas anónimas (login, recuperar contraseña); no toca
     la interfaz una vez dentro de GLPI. No lo elijas como tema personal.
   · Una línea de tiempo de 22 segundos alterna dos "escenas":
        0 – 40 %   Tío Ben  (claro, cálido, naranja)
       40 – 52 %   transición: iris circular que nace del logo
       52 – 90 %   Ellaz    (modo oscuro, vino/borgoña)
       90 – 100 %  transición de vuelta
   · Cambian a la vez: fondo, tarjeta de cristal, campos, botón, logo y leyenda.
   · Todo el color vive en dos mapas ($tbx-a / $tbx-b). Para ajustar una marca
     basta con cambiar sus valores.
   · Con "reducir movimiento" activado en el sistema se muestra solo Tío Ben, sin animación.
   ============================================================================ */
/* Modo ligero (false): sin desenfoque de cristal, grano ni rotaciones continuas.
   Pensado para equipos modestos. Se activa con:  construir-tema.ps1 -Ligero */
/* Centro del iris = centro del logo (el recuadro del fondo mide 128 % del visor, de ahí el + 14vh) */
/* ---------- PALETAS (clave: valor  →  variable CSS --tbx-<clave>) ---------- */
/* Los colores de texto cambian con un "giro" rápido (en lugar de fundirse) para que
   nunca haya un instante de texto gris sobre fondo gris durante la transición. */
/* Variables animables (permiten interpolar colores y medidas suavemente) */
@property --tbx-accent {
  syntax: "<color>";
  inherits: true;
  initial-value: #F88030;
}
@property --tbx-accent-2 {
  syntax: "<color>";
  inherits: true;
  initial-value: #FFB37A;
}
@property --tbx-ink {
  syntax: "<color>";
  inherits: true;
  initial-value: #2B1F1A;
}
@property --tbx-muted {
  syntax: "<color>";
  inherits: true;
  initial-value: #7A5444;
}
@property --tbx-link {
  syntax: "<color>";
  inherits: true;
  initial-value: #B04A0C;
}
@property --tbx-solid {
  syntax: "<color>";
  inherits: true;
  initial-value: #FFF1E4;
}
@property --tbx-card-bg {
  syntax: "<color>";
  inherits: true;
  initial-value: rgba(255, 255, 255, 0.58);
}
@property --tbx-card-bd {
  syntax: "<color>";
  inherits: true;
  initial-value: rgba(255, 255, 255, 0.92);
}
@property --tbx-hl {
  syntax: "<color>";
  inherits: true;
  initial-value: rgba(255, 255, 255, 0.95);
}
@property --tbx-shadow {
  syntax: "<color>";
  inherits: true;
  initial-value: rgba(214, 100, 24, 0.36);
}
@property --tbx-input-bg {
  syntax: "<color>";
  inherits: true;
  initial-value: rgba(255, 255, 255, 0.78);
}
@property --tbx-input-bd {
  syntax: "<color>";
  inherits: true;
  initial-value: rgba(120, 70, 40, 0.18);
}
@property --tbx-input-fg {
  syntax: "<color>";
  inherits: true;
  initial-value: #2B1F1A;
}
@property --tbx-focus {
  syntax: "<color>";
  inherits: true;
  initial-value: rgba(248, 128, 48, 0.24);
}
@property --tbx-glow {
  syntax: "<color>";
  inherits: true;
  initial-value: rgba(255, 140, 60, 0.5);
}
@property --tbx-ray {
  syntax: "<color>";
  inherits: true;
  initial-value: rgba(255, 160, 80, 0.2);
}
@property --tbx-ring {
  syntax: "<color>";
  inherits: true;
  initial-value: #FFA05C;
}
@property --tbx-btn-a {
  syntax: "<color>";
  inherits: true;
  initial-value: #FFA55A;
}
@property --tbx-btn-b {
  syntax: "<color>";
  inherits: true;
  initial-value: #F26B14;
}
@property --tbx-btn-fg {
  syntax: "<color>";
  inherits: true;
  initial-value: #2A1208;
}
@property --tbx-btn-glow {
  syntax: "<color>";
  inherits: true;
  initial-value: rgba(242, 107, 20, 0.55);
}
@property --tbx-orb-1 {
  syntax: "<color>";
  inherits: true;
  initial-value: rgba(255, 255, 255, 0.7);
}
@property --tbx-orb-2 {
  syntax: "<color>";
  inherits: true;
  initial-value: rgba(255, 150, 70, 0.38);
}
@property --tbx-track {
  syntax: "<color>";
  inherits: true;
  initial-value: rgba(43, 31, 26, 0.16);
}
@property --tbx-r {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tbx-angle {
  syntax: "<angle>";
  inherits: false;
  initial-value: 0deg;
}
@property --tbx-pa {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 0%;
}
@property --tbx-pb {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 0%;
}
/* ---------- BASE: escena Tío Ben + animación de paleta ---------- */
html:has(body.welcome-anonymous) {
  --tbx-accent: #F88030;
  --tbx-accent-2: #FFB37A;
  --tbx-ink: #2B1F1A;
  --tbx-muted: #7A5444;
  --tbx-link: #B04A0C;
  --tbx-solid: #FFF1E4;
  --tbx-card-bg: rgba(255, 255, 255, 0.58);
  --tbx-card-bd: rgba(255, 255, 255, 0.92);
  --tbx-hl: rgba(255, 255, 255, 0.95);
  --tbx-shadow: rgba(214, 100, 24, 0.36);
  --tbx-input-bg: rgba(255, 255, 255, 0.78);
  --tbx-input-bd: rgba(120, 70, 40, 0.18);
  --tbx-input-fg: #2B1F1A;
  --tbx-focus: rgba(248, 128, 48, 0.24);
  --tbx-glow: rgba(255, 140, 60, 0.5);
  --tbx-ray: rgba(255, 160, 80, 0.2);
  --tbx-ring: #FFA05C;
  --tbx-btn-a: #FFA55A;
  --tbx-btn-b: #F26B14;
  --tbx-btn-fg: #2A1208;
  --tbx-btn-glow: rgba(242, 107, 20, 0.55);
  --tbx-orb-1: rgba(255, 255, 255, 0.7);
  --tbx-orb-2: rgba(255, 150, 70, 0.38);
  --tbx-track: rgba(43, 31, 26, 0.16);
  color-scheme: light;
  background: #FFF3EA;
  animation: tbxPaleta 22s infinite cubic-bezier(0.65, 0, 0.35, 1), tbxTexto 22s infinite linear;
}

body.welcome-anonymous {
  background: transparent !important;
  color: var(--tbx-ink);
}

main#page.page-anonymous {
  overflow-x: clip;
  min-height: 100vh;
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
}

main#page.page-anonymous > .flex-fill {
  margin-top: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 3rem !important; /* deja aire a los indicadores inferiores */
}

@keyframes tbxPaleta {
  0%, 40% {
    --tbx-accent: #F88030;
    --tbx-accent-2: #FFB37A;
    --tbx-solid: #FFF1E4;
    --tbx-card-bg: rgba(255, 255, 255, 0.58);
    --tbx-card-bd: rgba(255, 255, 255, 0.92);
    --tbx-hl: rgba(255, 255, 255, 0.95);
    --tbx-shadow: rgba(214, 100, 24, 0.36);
    --tbx-input-bg: rgba(255, 255, 255, 0.78);
    --tbx-input-bd: rgba(120, 70, 40, 0.18);
    --tbx-focus: rgba(248, 128, 48, 0.24);
    --tbx-glow: rgba(255, 140, 60, 0.5);
    --tbx-ray: rgba(255, 160, 80, 0.2);
    --tbx-ring: #FFA05C;
    --tbx-btn-a: #FFA55A;
    --tbx-btn-b: #F26B14;
    --tbx-btn-glow: rgba(242, 107, 20, 0.55);
    --tbx-orb-1: rgba(255, 255, 255, 0.7);
    --tbx-orb-2: rgba(255, 150, 70, 0.38);
    --tbx-track: rgba(43, 31, 26, 0.16);
    color-scheme: light;
  }
  52%, 90% {
    --tbx-accent: #D4574A;
    --tbx-accent-2: #F0A99B;
    --tbx-solid: #1B0D0E;
    --tbx-card-bg: rgba(36, 15, 16, 0.56);
    --tbx-card-bd: rgba(247, 217, 208, 0.16);
    --tbx-hl: rgba(255, 255, 255, 0.07);
    --tbx-shadow: rgba(0, 0, 0, 0.66);
    --tbx-input-bg: rgba(255, 255, 255, 0.06);
    --tbx-input-bd: rgba(247, 217, 208, 0.2);
    --tbx-focus: rgba(212, 87, 74, 0.32);
    --tbx-glow: rgba(196, 60, 50, 0.55);
    --tbx-ray: rgba(232, 122, 106, 0.2);
    --tbx-ring: #F0A99B;
    --tbx-btn-a: #D2503F;
    --tbx-btn-b: #8E1F17;
    --tbx-btn-glow: rgba(190, 50, 40, 0.6);
    --tbx-orb-1: rgba(232, 104, 88, 0.26);
    --tbx-orb-2: rgba(150, 34, 28, 0.5);
    --tbx-track: rgba(247, 217, 208, 0.22);
    color-scheme: dark;
  }
  100% {
    --tbx-accent: #F88030;
    --tbx-accent-2: #FFB37A;
    --tbx-solid: #FFF1E4;
    --tbx-card-bg: rgba(255, 255, 255, 0.58);
    --tbx-card-bd: rgba(255, 255, 255, 0.92);
    --tbx-hl: rgba(255, 255, 255, 0.95);
    --tbx-shadow: rgba(214, 100, 24, 0.36);
    --tbx-input-bg: rgba(255, 255, 255, 0.78);
    --tbx-input-bd: rgba(120, 70, 40, 0.18);
    --tbx-focus: rgba(248, 128, 48, 0.24);
    --tbx-glow: rgba(255, 140, 60, 0.5);
    --tbx-ray: rgba(255, 160, 80, 0.2);
    --tbx-ring: #FFA05C;
    --tbx-btn-a: #FFA55A;
    --tbx-btn-b: #F26B14;
    --tbx-btn-glow: rgba(242, 107, 20, 0.55);
    --tbx-orb-1: rgba(255, 255, 255, 0.7);
    --tbx-orb-2: rgba(255, 150, 70, 0.38);
    --tbx-track: rgba(43, 31, 26, 0.16);
    color-scheme: light;
  }
}
@keyframes tbxTexto {
  0%, 45.4% {
    --tbx-ink: #2B1F1A;
    --tbx-muted: #7A5444;
    --tbx-link: #B04A0C;
    --tbx-input-fg: #2B1F1A;
    --tbx-btn-fg: #2A1208;
  }
  46.6%, 94.4% {
    --tbx-ink: #F7EAE6;
    --tbx-muted: #C4A29B;
    --tbx-link: #F0A99B;
    --tbx-input-fg: #FBEFEC;
    --tbx-btn-fg: #FFFFFF;
  }
  95.6%, 100% {
    --tbx-ink: #2B1F1A;
    --tbx-muted: #7A5444;
    --tbx-link: #B04A0C;
    --tbx-input-fg: #2B1F1A;
    --tbx-btn-fg: #2A1208;
  }
}
/* ---------- ESCENA A · Tío Ben (capa más profunda) ---------- */
html:has(body.welcome-anonymous)::before {
  content: "";
  position: fixed;
  inset: -14%;
  z-index: -4;
  pointer-events: none;
  background: radial-gradient(50vmax 44vmax at 10% 6%, rgba(255, 108, 20, 0.62), transparent 64%), radial-gradient(54vmax 46vmax at 94% 12%, rgba(255, 176, 96, 0.8), transparent 62%), radial-gradient(60vmax 50vmax at 88% 98%, rgba(255, 96, 30, 0.5), transparent 64%), radial-gradient(46vmax 40vmax at 2% 94%, rgba(255, 196, 132, 0.9), transparent 62%), linear-gradient(165deg, #FFF8F0 0%, #FFE5CE 46%, #FFCDA2 100%);
  animation: tbxDerivaA 38s ease-in-out infinite alternate;
}

@keyframes tbxDerivaA {
  from {
    transform: translate3d(-2%, -1%, 0) rotate(-1.2deg) scale(1.02);
  }
  to {
    transform: translate3d(2%, 1.5%, 0) rotate(1.4deg) scale(1.08);
  }
}
/* ---------- ESCENA B · Ellaz (oscura) con revelado en iris desde el logo ---------- */
html:has(body.welcome-anonymous)::after {
  content: "";
  position: fixed;
  inset: -14%;
  z-index: -3;
  pointer-events: none;
  clip-path: circle(var(--tbx-r) at 50% calc(max(84px, 50vh - 300px) + 14vh));
  background: radial-gradient(circle at 50% calc(max(84px, 50vh - 300px) + 14vh), transparent calc(var(--tbx-r) - 130px), rgba(255, 214, 200, 0.42) calc(var(--tbx-r) - 3px), transparent var(--tbx-r)), radial-gradient(44vmax 38vmax at 84% 12%, rgba(190, 60, 48, 0.55), transparent 60%), radial-gradient(50vmax 42vmax at 10% 88%, rgba(122, 26, 18, 0.74), transparent 62%), radial-gradient(36vmax 30vmax at 58% 62%, rgba(226, 120, 104, 0.16), transparent 60%), radial-gradient(120% 95% at 50% 40%, transparent 45%, rgba(0, 0, 0, 0.55) 100%), linear-gradient(160deg, #241011 0%, #160909 52%, #0C0405 100%);
  animation: tbxIris 22s infinite cubic-bezier(0.7, 0, 0.25, 1), tbxDerivaB 44s ease-in-out infinite alternate;
}

@keyframes tbxIris {
  0%, 40% {
    --tbx-r: 0px;
  }
  52% {
    --tbx-r: 170vmax;
  }
  90% {
    --tbx-r: 170vmax;
  }
  100% {
    --tbx-r: 0px;
  }
}
@keyframes tbxDerivaB {
  from {
    transform: translate3d(2%, 1%, 0) rotate(1.4deg) scale(1.03);
  }
  to {
    transform: translate3d(-2%, -1.5%, 0) rotate(-1.6deg) scale(1.1);
  }
}
/* ---------- Esferas de luz que orbitan (se recolorean con la marca) ---------- */
body.welcome-anonymous::before {
  content: "";
  position: fixed;
  inset: -20%;
  z-index: -2;
  pointer-events: none;
  background: radial-gradient(circle at 22% 30%, var(--tbx-orb-1) 0, transparent 9%), radial-gradient(circle at 78% 22%, var(--tbx-orb-2) 0, transparent 14%), radial-gradient(circle at 66% 76%, var(--tbx-orb-1) 0, transparent 7%), radial-gradient(circle at 30% 80%, var(--tbx-orb-2) 0, transparent 12%), radial-gradient(circle at 90% 60%, var(--tbx-orb-1) 0, transparent 6%);
  animation: tbxOrbita 80s linear infinite;
}

@keyframes tbxOrbita {
  to {
    transform: rotate(360deg);
  }
}
/* ---------- Grano fino de película (da textura premium al degradado) ---------- */
body.welcome-anonymous::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: 0.5;
  mix-blend-mode: soft-light;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n' x='0' y='0' width='100%25' height='100%25'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size: 220px 220px;
}

/* ---------- ESTRUCTURA: tarjeta compacta y centrada ---------- */
.page-anonymous .container-tight {
  /* la tarjeta crece con la pantalla: 29 rem en laptop, hasta 38 rem en monitores grandes */
  max-width: clamp(29rem, 20vw + 14rem, 38rem) !important;
  padding-top: 1rem !important;
  padding-bottom: 1.25rem !important;
  --tbx-logo-w: clamp(210px, 11vw + 118px, 340px);
}

.page-anonymous .main-content-card .row {
  --tblr-gutter-x: 0;
}

.page-anonymous .main-content-card .col-md-5 {
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%;
}

/* ---------- LOGO: dos capas independientes (máscara nítida + degradado) ---------- */
.page-anonymous .container-tight > .text-center:first-child {
  position: relative;
  padding-bottom: 40px;
  margin-bottom: 4px;
  animation: tbxSube 1s cubic-bezier(0.16, 1, 0.3, 1) 0.05s both;
}

.page-anonymous .glpi-logo {
  content: normal !important; /* GLPI pinta el logo con "content:"; se anula para usar capas */
  display: block;
  position: relative;
  width: var(--tbx-logo-w);
  height: calc(var(--tbx-logo-w) * 0.382);
  max-width: 82vw;
  margin: 0 auto 0.5rem !important;
  background: none !important;
  filter: drop-shadow(0 12px 26px var(--tbx-glow));
  animation: tbxFlota 7s ease-in-out 1s infinite;
}

.page-anonymous .glpi-logo::before,
.page-anonymous .glpi-logo::after {
  content: "";
  position: absolute;
  inset: 0;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background-repeat: no-repeat;
}

/* Logo Tío Ben (naranja con degradado y destello) */
.page-anonymous .glpi-logo::before {
  mask-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAArgAAAEICAMAAACDPHf1AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAMAUExURQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALMw9IgAAAAfdFJOUwAIEBkhKTE6QkpSWmNrc3uEjJScpa21vcXO1t7m7/cJGH0XAAAACXBIWXMAABYlAAAWJQFJUiTwAAAhtElEQVR4Xu2d6baquBKAD4PzgIoIyuD7v+VdOEJSUxCFfbu+tfrP6a1CUqk5yb9/iqIoiqIoiqIoiqIoiqIoiqIoiqIoiqIoiqIoiqIoiqIoiqIoiqIoiqIMgef74WQ6X67W2yja7Xb7/aFmv9/vomizXs6noe+ZH1KUgQjnm318TE7ZJS+r6kpRFZc0OWwXE9/8EkX5Kf7ycKaFFaC6JNEiVOWrDMU0ypyl9kF5SXbLwPxCRfk63jLpKrVP8nhufquifJcw/lRsa4pIte7/Dd50HR3i+LBbz8c7q6uLKYMdyTah+d3KXySMsvI1q8Vpaf7/URAmLeH7jPKgovvn8Tfn9qxWuxFG37O+1O2D89T8BeVP4a1Sc06v1/3oJHdZmM/4KcXK/A3lDzEHxPZ6ve7MvxuYqI+ozOSgNYk/y/rt27aoRpUz8mLz+fohGW8gqpDgiuxo/umA+H2GZS1OqnP/It7enMg3+Xi83ElmPlx/7M0fU8YPJbfXcjTpoknP6YQW1cL8OWX07MxZbDGWbNHEyNX1zFnd3L/GGvVvb4wkOpvn5oP1TGz+ojJuuMTozPzAIMyZp/ycapx1QgWBk4hqYn5iCLin7IPU/FFlxHhcpF6MIVH0C7kdyRJVZKzN6TMZgx6afNu/vbM1f1cZLazCvUbmR35P+N18wot0DMZFEbGkMwrXazl8NixgF1dPVNptMwICyYZAj62hHsyP/B72GXsjFgyZ8k3CdXK+nFbsPMyQ1poXxfAKly6P9MplNFXC/yTBOrnLY8W2623NqTMZPiu/MR/pi5QjKbb8N1k2XEIusjo2pw2gGrz6wDrhvaJO7lB4s9b+14xWuR7XtjJ4T2PAPWG/aEJsCLzZLjUS9UznSMi4uOfBfb6D+UjfRZsbB2Ae22J4pMOzKW2H88EdhQ39gL2jgvtrguXRFlu2b2RqfqAF9+nv81sHVwX31/jLBK7lcxtSQlIwBp9F/7cOriCYVfpkdsLkj1OZPizvdxJG6r/PDzO4D9bmIyjfY412oKS0h/vv3z+iCeA4uNzOAefnuwzvHP138A+YupVMA77b+8AK/bfx4YMevkk5eDT6n4HasC2oemFKrRrBCTa/LJk9yLUj91dE5ti/ERXe4c+fR1BB+n1kpn2NvyNE/dvrdWP+MYid4a/S9Rjmj+1w/wIjaIX7j0AciJDTRbMnVmNjvhmD2P4LiLjxW2g/7q9YoIGZPAvrRQ2tXZ13I3HzuqXCqrIo8qIoS2JgcETOlfI5lFYq5ALozaPkfLmkcbSUNJ//hAmVYQao8vS4Wy+moe97vu8H4ezZ2+nA4C1F/xUIR8GxBuQFYTgKD+GJk8KtLvFqaj2+t3Ld8iOLCpRPoXq7/nh8zPZbvqjy0w4zFMGGiF0BNIv7GyiFy9ceRs3cfB+Q6rxnrtqbuBQxyr+92P8MWPGgJiOnc/xQa/JJla75xEno4C6M4QSJ/wBkRfSPN4tQUeedIt3NRQpyJo/y1MX9CVRFdPjGrs9YEMbk7iHwuvaJOMzLNRn2CzxCKRV/PcqAC9EPHC/Vm5CLoIFbHkbpyNIc9wZjuynHFaua9yaPnS+PplyqBsz2PKUfKA+3cNJIIyRAXi6PFx18IG4L/gNVuD+BMqZ/fgr8k/lKNZddt1N1hILb7csVN6hUWPLHU2FgNqxK3TzbBuAqsMjMjynfgJiMEZz29THGOc55vOoqtfT2pAbaGPYLZuawN/g/ULjtHFZx+Ggp+oRxejN0J64nm7W6gcj8tz8EFrzcGDCH6/mTxTra7Q+H/S5aLya+bDYA/P1D3Mo0+khs2UNP7vTQ2iEUPRsvXEZxckriiMpOe+F8HcWnLEuTeL+ZE385OoIwDOuOvemakttrsQ48LwiDruPYEX++ibOiJSRVcT529kynUXys+yzNf3dGspPik7P9/FqiDsckSZJjvI/WbjIVrI+X96AVO3jW/MXh3DYcRbyA/3R0zA9pds7S0ynjapjF6Zik5yxe4VrEm623UbSLou1mG+12a3nvLkK4TRGLfB54HxCRE34j2FYKEy53p0v7zctsNxfL1NwMVqD2f3+dAlajjD+etR8QHjhxtamwkxH8dWqoxvNHzWTBMqa6EE+DHjpL5V+edNzcG7a0ZYPyJGj/qb9gb82qfTOrv4LEtuZs/e3omMsiYxP40MwF0DBVdA6qvSW706CKPzf4ncFPjnjToSUpWB4yRJ5u5FtW6/oRNHBGbO1vCZ1QwhM8HqZu/dAvwD49+CLJSzel82+eUNP3JOv47Z8zFzwec6QlQAAa7zYxYu+eBLAP0z4UfU6GM9dq5LUm+BV5zuYX1XILLXNUOzPMoCMiIc4DSa5HT/wN164wb7Y7s2Jbqw3ye9EW94YshgdueKsOxuJ3TCTDBAFs/kPbU6GogMZbYGMPcOnF0Z1FxyTZO8TTkpSC29wHW7HbdiESeVP0W96BIn4o3BvXVfdTqL4EEsBxNaPYF85d1GHrzH6WnJhFIU8FVMWi0KcWD2yZNnBrpYMCBBR8u/sU91xfgrsVja+7wvkZvstYNQEOwl+Yf/PEtVDsb/Chh+GPjqTxt28FlMgkVzJyTlebzYBD3ymwKmZIDN5jIYX4YYYtXCfuh6xlb2Bje+54MyQ2xAgrYuQxOnnRL9q/KDtLUrD5waFk5i35iMwEeWcqaLmbvpXATbgzWpUL9/gJAIwzPpNOiVxv5zyDtW74JO0YtX9RdB7olFePDsmU6bHDS8P6ELV7tR908+/Y++fejNbLlWTQQexyEH5i00WueP79m1AKgwBwXYR4htyKXHLcvLygwqc2kw4VoBp7EhiFWyy9f771uhRuweXv6Bya2UoU190COXjigXlzEbbvIsOzj5REbHADj28gF+/N83dd3xk6epC0BEW0oHtRLIZubMPApY2mtPTbDF3HDp5eSKkLho7N2h5Q/QISJga2sJuU9tKGmXSdg+v1CqQBcYetdhWyjJJrALDMNDxBNxN1vZ7Mb8L3sDhcYbvsEJW9qKy1JMLeDyE40o83VFKf23M8yKmNbWUkuQ4XLuYPjAPZYUQ29lmvK1Thgo4YBHHhhAipimsBZVXYKi1/s590tU7dDLeJPbauB1Fy5NxYDAO1DZ3Cyk9OcF0pdfXCD0zmDbdk/50FMM+s0EHC3sZe2DCLT9RtbfjMeRBVRVy4WL8wCjpqXLvFA/f5pE7SHBd9IfYssoANRrYaa8PLbS5T/h9Eog/s8IGqPnTh7D6ov6DbHR623OJnktotoDBr9BvEOKRNH4BdMtyGBd5PELarfWxioLXaOTGPINU7v0bSamFQ7Cy5JYIVof3mpYGnFK6RN+BjM1NFnap2J5NFiXgnjBzAOABJkk8AWqnGwXQdRUdaeqv0sNvtD3F8qP/bAGl13LGybRmIU04cw7kLD76Fmjbz/ApLZHK7pAddBqAWgCzJJ4y25lvjkbVrXh4I80RLwQOPHezynKbUM96xk0Mk8HIj+ypCXp8hOxINvD27ACQAU8M/oRMOxaMBIA8oBsyRAV77FsWkUAmgRX5YhL4/aV7gA+ImuHDRFujBeDNhrbtw14CPZr2blAXn+Nv5D0KJdKGyf2FMzIgBKtlIg4jwJOuVkdsy3TyfYMpMCmA4CeASEyV4vHUvARUIQF01e6e6HKPlbDJbxaBZeADUXKhLFTsw8lMmqfXPF6tX5kdeSDxcWm7L1s1ojE9BCZ0F7OBC1f8HPvmgN3KZfgpBXf+mOq3fl09QVXDAoOGtTgbFJRf86ahdXLIRDu+zf4IXGdlMPiu31p4c8q9dBBfM4FJfwUlbnU6g3Iw3pGNWf037zIoA/3Mg5AcTJRbFaTsLpxv8mx9IZnA4cMmD3X8DfKgkphuvXNSBkuWmkCeA801dL2AH93pGTcQC94eeHHFt3YSR2/PW/Bp8axswOfB7tcm207uqZmPNTzeWfBc8tpK00uJtdLx3TEn99ZoD80J1m/LpjzfwekGrJYI2iosogcLJLXQ0D9p+AFhDvBL04tL4Ca47EzdAIwDOCj3glRj+6oAhM6GyorDhxdWPvJEQXauYPy+ocUm7b2m5BQ83QeMtQKyQF2vQHla8GbWGKyIOCy5512tmr38D/LjCEhS8FlTV364r3yCWmVR2sMAMaDK+I+m2FKzSGsRFuZOvQcuM2TQg4g+4J6327Q/52KK4wdvbAcElT9TkhHtJvIdLZeEAbXKDCFXEm3ew6YWfeEp4J29k4Td5SN4ReX7MnQKsIZzie5ObvpCP6wF0QEYCLnlMFekG3obLK+uQSOdjckupLP5pHyBJtczWYHWjNzm1L0Qal3Ipqwh5fCxNDtgHwhzdKKwkAaW26GLM0OCSJ3FxJrilYR1Owtsj6k/EsdMypYc6KGDqZ0KIWguRVYVDwht4bIcsM6iiSXx/DdCFhOfgR65wyfZNXovg6pq979cjAh6i4EZ0rAuTCtjGZmCaAodtjIJfJwJLPJWGaRbg9FJmIxbk+FGiDvzCeKCcIt5SYGGDROESv4zrW1zsxFstMAfXrpl5S9wm2PCb0YmrWPEjSIybVl5AuT+m4xLwiZEyzB0sxzIGyDUKDI0Bvl5ZZU1sGiIHDNdalSV5EGh4ZE6rtzohug6B26mGieD1WuEdZagvBgwSc7k28AnCYkocxQGh0n52d70Jrv1YZU1UwOgYC1fUQOHeBq0wm7+6ctG2N0Af+Q2ajb1W5pp5g8av0AkzWPbhDrSu8AnkG+oHhfRwbU/egOhxooz9Dfyj0JQ0wD3jxPxTCGxyjVRa0KVdFnCS36Ca/lrhHj3eRglYQzqlAPY7Yau4pmKdvQGhHpzfJYdbbdtfNMA3aTLjReQd8fl/g6mYtrYM+O4TCFJFYbkB20d5gx8X6mr24WpQiA+mwNkbEGwab7By4KPqgFW4RFsPqbYo1xg+Aa4NamGagjCXHoRuUkBK7QG+yPEk3gqVK0h9Es4Xtjow81PDH4oyIFSOEhqbNvhcgJn8BkQenrsAEP8k5MMZoMWLxgMHz8v73KnwuQ5QBxfNJxCHVoLqEw+UoXMwasiUAqd7hoQ6RB/IVRtgaSXBZ/G0DTglDXA/jnExbmDG9B1KhvKj7AHwR8B+GV9uxG4P8FXJBnJQC+Fed61wGd0zKNQaBcoyBrjTBjlgTYjGDtxu3sGNG95J+wJprXnZ0WAjOlv5HJ8QpQza4xqkVodHotRNAqDckqkweOMYbjF5j21QqDXK5/DwbDrrHeEjxrXJoNkhXuQpy3irKPlr/MsblFHwz0M2n2HPgN7pgulosmsdSCjQSgjOtxAhCth4NhrQQKWGDSmJgi2rcNEfZn0MXOT55B1RKz5O/MmWvBHvxfmuvGBnx8wFPwDPy7kBD9WEdLNB55Pqa0b8L/gV7jAp6WHBTb2ksxVX12ztAf9heB4b4F5ZznkKuPTUnzZuzMXINw/RhL0dpCEOFRHANvnziPRXoEov4YrcAEUdtz8jdxTIHB7qrD1B43P+s7jIs1t9iGfGrPQLvOImp7EFDsxuwJ4OWrW1t96Ea8x9fgD6t7jzfgOMzMjjF9g0/JBQE4mYvAZ4kHSChqmBh6dwWYWLqi6+kYls35Nx3jReDXRawFP3iOC92r0kxPPD6TqGb51+A+tbPNVSA++jw4dSksIfEPJlWQ+H+DSoEhqAM36DFT4icgatYQNczQsp43lrNYO3+IKCSy6ZS3LY7eMkzS45rWpvlEBfItnXXOMemYEqeiSQloLfk4ymJdk2XCIk5HwMwkhYNtcAb3ARkpprGfxGSHAJC+OKte/mBtFZXwNffYWrD+wTIwE39ZKrO4jqImjLGhAiz61zokDNKFzCI5dQpfaecfArIcGlDltx4wR8O9npdANUB4T6YAfzge9bY/IDyDZcvp0RjExucN4xaGHvsI4VPkNErfUGvloEFHtIA4FVa0BwCQ/XjQJWCZzcwtaTGhBJzWy6y8qqOO/t9/0yuNGFNtSZ4I4966biIwZs/WtDbOsD3bg3VNMxR5VAYov09QKCSyeq5Jzhx+BOfYQjMzILIUiFvU4DP3Opz54hTL3AUhCvDdqlBgH+w4zwUWoenp0XhJbnKJMlYhBBwbXTYUTVwwXsRnfwKZqAo0q63XwqzG/cXAF+/9cAzdwT1lIQyVT2s3hMACcoG2B7Btk0Gp5GZajSjSWIL8AxtLviyEqsmBRWt7zcwhUwfBYEQUr7gqvqpyqXkAHeUlD5CFqCyDZcLgVDiJ+t55rgmwhooIisAehbWi9BLHI5FXDnxg1WbmHrSVoBLkj5N2tPBBuZ9IhHTeXFUhptQE3zAGt1eoEvdTiz3oD4WfKjYPTPkx8xH+EB+L1WWPuJd/2gOoFas54KVp2DkRk1g0gfWQNTgXC6qk9w8eGkgIyueOEjFC7XjUT4qXSXAju5NlW2n5PfWQMmlMzWJOK4KCFljHgJEn0LNx7he0jAm27bWPaLLbX3BzjkTyydYUCpELaFF89GcA4KqN8egObwCZmvBqlOK2YR3QBPlDBnkVQRElJQ9G4IzkcHFS55gC4T5gJtpZyy6g/SUnDFXkpu2RYZ08o04Hx8YpJIXU09L0SRRu3KLgqotwyH70OFW2WEl83lwVCzj29T5Q2/fSg7N3E9QmoBcp8qo79MO2lCaU3mSATimUkdQSTubMp0x3sIL8BMuPEsoHBLyfeUTEwEa8LU/zeIPmq2ch7Yn4WV+jfAu7hr6JwUYeqx9f0GDMOf0CudqvNRn8Q3Htjk8UIutcjxDqbNIewERxlTYvtvRs7iHbiETs4hbfeBGSTVRr+QSpP2cMl35jxc4K0b0AuGsIpUIsNI3OCUl+NmQr66hQd9t2E3PIF0gZTZjhRbwbVVmCIh2vq4Aych54QrOPUH4Wdi6eonpMhzpxrQckuJH/3DxMiRQeiT6nLczAM3oa2Zml9UYzhL1CZqlOp8WJKj8e+fLzplB/bcSCNARsiQ3FLmrl/oyIxUmoSfWQM6VC9ouaWz3tQPg8cF3GF+8kYRrxghwQCtj5HfoB4cpsqP/AMJ7qNAFQmYC3lCtjNCw2nVW74HPZaUwt3Sq9x079pAb92EymhRx+3DbtwNeoneQfpnBMA9X22HB/4blCpP98v3tXwokvso0CElFS6hBcAZtAvcX4PsrjBdtCZssptstgCi0RbQgcNPSN+GWGncA9eGDhd7DtBVNDbTkk/eoCrz7BitpqKnEWRvb8BLGj9SgHEU7TzYT+WWyc/g1h5aby3IFhnorVsQ1zyRdXXYjbtB+cUP0LOPBIDJMGMmQW+iSZ6eTsdDtJ5PxCLADuUTUBXQeWXCX4M2B2WsT9MjpPzhK473qihvZwq8dRv8OAVSbvGza5grf28Q88QCK9N2qMJ5CtVh6vue00N4S6twhQBvoKLLMXguDDo0ku5s6hli7ws1kwtwmloQPUJr8kdvoE0O0Ii9wFMREv+W2zRBAupzY/lxSQ33mV9I1S1iAMkNkniU4m2AGWRKFf1CG3zU0VwBz22Ab3xgneMbSDpjTq0YOE95Q9JYg/ykCDhBa1gdWkvw7SwmvsM9KnCYRe90xpK4oFcN5yy+BdmGi2kAPyI/dQct/PFOxg1YedIrBg6ba0B9aMCfjUYAhwrGA3Hl5qz95wxO96ggUwlJ4BskvG61jT/JPxk9d2ghgqtmc9F4IS8tvdsOdDXmpH3Aj+fkEnd3iLiOBT7MyWw34WIzdo9dE7mXUAN7XkwBHDRBPnhGL3+/UK+QG81gwfW29GeeQJ/99y+gl3gTq32dM4z4eTmi3Yl4ICoAjnHMZCKr9/EkjonLbWto0Mo5bVAVbAKul9/6Cdh4vwDaA2e00nsDuuoLkbJ+kLR+3eM0DO5Uk8cWvgDVi5AJrLnMr2QTG2hQYeCvXQYSVbicz23bIG8Fxhg/9hOo7Qc3rEh0dhTJQA2QFpjTjonF5bUx0Z/vwOCnAT7nzOp8Yr6rC3DoZw0fo+Ckmmu6B6WHAMkOcc9jliww5cEextk3dLW3jrBaSi+IYMUCY2ajwwOzvgEu+8V0Mp1vBdfioYEZFxE9wCJoCSH8ZlYmW5CSM2XFZrp3mYUbiGDR7az2ysPUlmi19Ym96cIieUmfN40Y/WzSvIrWm+5ctcSdMs8lR7/hXUycOXwC+XNSEIVr2RyB4F5PkIv1IlwfncUW7ZcjNz7caBw54i9iZCR/7ScIFG6tiLazMAzn6/gMrzaKdHkTXX+y3Hf4tBNorRa/c7QNXqnjQXKKtvKUCO41b55c2sSbcCflImDnebCx4vWaR9PAD6bLKEHHEVHn30Q0jtfychbpPIAqO0TRIc3hie0RVG7BAxQhLLMuB+yuAfUc51M+SKGtmeEylr6LCWKNyB07L/LslBXEBA4gt/84F+fPsMfklmsOeANkjaUg8w8UkGGXwqY6H7fzdzujFy6iI3e+Mw6Y3yEWnBM/zt/eIG4S/Vvg2U+wYwsCm1wBcM0MLIMJbPObMs/SU5Kc0qyrwbuDpltE2W0G7u7ErxD28OBjAPUTpAkFIOMqB41wAR3OVc6+AvZqXPVBAl7z+SYz8bSOGlxu8XsuLcyMqxh0g71V+HNaSP2BdnjRnbgiBtG3fZ6L3YUqTT+ygE9Q/1YcC9Wz23kG0N8AFC59HdOXQP0opNrnAK4yvgt5g8a3KdZ+IPZACXb44AkrZjWu/YQv0FQomKWgTrX8ErjzTm3cE4GWfL7NIB7Xg6wORonzxIVUdsrphYtdhtSjBDzbBvseDmupH6yq8xvizEAJyDH+v+Dno/jmdHMAibPIZcBXJd0hD041gHt/eVAH93qGDUEvGagWBZ0kR5pLaz4T3BRznX+AU3KmVx4tEPAdonIKXJ3gWSqIrkYPdXAxFS7PK8so4m1MrgWiVfMjwT1CntCv6C64xalb7fHBq4kBVVgikLs77sCd3TC4H0iDl8ztau+Dft2z49QPG5cv2FC+O71rh6SMYIPyIzoPYjaR7d6Bubz1JNufSlDRRyC4vBwaeNPgdh8/963TEUwIee1lkpsGiT14n2jcx23xg+FiTJvcPEI8LGFoXikn7dwCKOnYwCnxRGluHOhggQdYzh+vD3fg7mWSuQHSBcLXHQPdv/YDwEPaeB7PTa10nLaelOwZh7mgOu0O7n3a5J3sHnHrqLnVrMkHa7VFEd0HkhpBpH38QcfcXPn44QHpFBu9DH0nDzkz5I3UFzhVzCx6p1dDmqdoCLmlQvmO42ZSRI8wgfSIGEvSqVfhOGA24YWLWnrwbizvYGmqvbVYO3m5fArRJUPcKRdGyS15wmEviYXTU6WT+puKzGq4jVsAxYZU4r+C2Zxsk28bkucs9tCtG4GLarxTCRY9Hu/bsKsAAE/gcp7lB9HBk/c1EOSBhfwxEaS6hkgIH+inuJmtctfqG3Hs0bmswMWK7B5AqU7sfLgpcngbPQ151CSaCnviUtKzqI6Nm1TI9cl7QNR1BAAZlTb/LaTiMLGSIFRcYJFgatKtYSEX2SoHc4xnrnAoPwE5FLFFJ+fyzi0F9oTU3ZKOQxfFVR2AdrfBkGeN8ra6rXHoi7sQ8uagHfNI5o8G8nIvkbnCoOVWosFXbqruRXFoLX/KWaMd7QfyrE516rDAv8mS8u5fVCfwdi0ik9mkOpFXifK3eD5oedgk8kbcC2YIcOhbmWRbtWfkd8CUibEVjVS4sgUpHPvyIHqrnyKR3HSJaBHrMkyICyj0DWSt+MxlSS3ErkLhrkfoW5motp8mgfQJn1QnaxKoQ0uRM+4sRJKL3hw8KNwRduSN4SFna8r0dRoNjkfW22/ksfB2xztk1PIG3Y6Fw9w3xUdED7yti7tQQPdfewfUV751jYpgx56c/0Hx1ik6AGUaTWmBmSfoh+t35qX2xpT4FmTaSMg80RsmcQWwpMWtsAIBnGBLaMwmlwNyT2AQ3bb+Vtdr9aL+QHEQDvuN6QF/pzLduvtSv8NHRBcdsSYedv5aeVrxn37irTGvozzvZ/TagSAz80/ct55wR6kTfe0AE8FhSlUWEaIzWUXRdtNiG22djFMtuvCJDZVo/ofFX0TJpTEpVXlJdtylcE/C9bH52frjRXbcztxeOlgnZk90laeHzUL4FAb8RYvuvXk+bpvv0M0BANMttfGuvCTR/TCgbzPZHFunftzmn79ebRz4k/lqE0W7KNosp4LLtZr44XSxjvZxHB/20WY5c/z4A3+yWG138TFJjvF+u55P3ES/zSQmpax0rwKtubXQ6bIkfx4dzZMTyjw97taNI0F+gBfMluttzWa9nIWfDP1/Frd7ZzC8FewA1VRoogSFv7XHuNPMgWC63OziJE2zLEuTeLv4aMkqfx1/EZ0s96MsLune3XebUlXeO8h2HTGe7wdB4PuuS0r5f8QL5+tot9/VRJvVfBp2EYyA826776NQlK8xI4u8d5wDM0X5LqKD2LEzaBVlGCaiCxeIgzcU5ff4W4nYXqtPAzNF6ZEAqwqauFXMFOWL+EvxPSGaUFA+xfP8IAwnk0nwWZTvLwVXVD2A73dWFBF+OFtHcZJm58slz/MsOdSla+dKQ4032eJVNwv8CmFFofHnuxS8KaFu94nmLqmqYB4looDsCbs5UlFgQub+rzLbL2SyGy73mVzV3hji2hnl/4HZXtCQXdYXMJGq0QvnUeJ+J9NZ5VbpwlweQ13LLN4sp0GrWcHz6nbOKO54i2CHzZaK8i/YkT4CQFVkSXzY76Jou91G+/iYmM2wLgxxraLy5/FW2H6fH5GpvlXcWQrLWl/jfpOFojjR/Uz0nlC5VdzxRaeIfJNB7+9Q/ijTod2EDnvbFWXuVNv6BsRNrIqCMBlabiv3M3AUZSIolX0V7RtXOhAOnL3lrqpSFAinY9S/wWWUp24qI0d+ivaXiDUNprgjOon4m+g2HaULwiObv4b45GZFaUDee/B9uJtYFQVmWEch/SMnxipj46O77T6lfYG2oojpcPtsf2SaBVM64nz5bI8k2sSodMQbrmRWRuomKF2Zm+L0M9CbiBWFZ6je8cr5fh5FeTNUM2OqUZnyCcOEZhf3a1MVpYHP33vzBRKtOSifMet+bkdn8q16t8qH/L69pthqDkz5GPZmx77JZuYjKIo7P24gz7XkoPRCYorWN8nWKrZKP/wwqVBE2pig9MXPBDffaYFX6Y8fuQrZSp0EpU9+svkhVydB6ZmtKWT9o06C0j/frpyVyVKdBKV/vK86uVWy1Oqu8hW+uFOyVLFVvsa3tkqWp422gClf5CsNucVxrspW+Sr9q9ziFE1VbJVvMytMyfuES7zUpK3yE/q7+6E8bTRnq/yMaS9HK5RpRN9IrSg9Exw+S4pVRXpYaRJB+T2r7u5CmcXrqapaZRjC3cVd61Z5eljPNBhTBiVcxlK9W5WX02EzDzXrpYyCyTYtaMVblXmW7FVmlZHhT+fL9WYb7eNjkqZZdj5fLpc8zy/Z6XjYbdfL+TRUh1YZO57neb4fBIGvGlZRFEVRFEVRFEVRFEVRFEVRFEVRFEVRFEVRFEVRFEVRFEVRRsz/AFEyQnBW2f/8AAAAAElFTkSuQmCC");
  background-image: linear-gradient(112deg, transparent 38%, rgba(255, 255, 255, 0.72) 50%, transparent 62%), linear-gradient(135deg, #FFA45C 0%, #FF822E 42%, #F0620F 100%);
  background-size: 260% 100%, 100% 100%;
  background-position: 170% 0, 0 0;
  animation: tbxLogoA 22s infinite cubic-bezier(0.65, 0, 0.35, 1), tbxBrillo 7s ease-in-out 1.4s infinite;
}

/* Logo Ellaz (rosa claro sobre fondo oscuro, con degradado y destello) */
.page-anonymous .glpi-logo::after {
  opacity: 0;
  mask-image: url("data:image/png;base64,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");
  background-image: linear-gradient(112deg, transparent 38%, rgba(255, 255, 255, 0.85) 50%, transparent 62%), linear-gradient(135deg, #FFEDE8 0%, #F4BDB0 46%, #DE8576 100%);
  background-size: 260% 100%, 100% 100%;
  background-position: 170% 0, 0 0;
  animation: tbxLogoB 22s infinite cubic-bezier(0.65, 0, 0.35, 1), tbxBrillo 7s ease-in-out 2.1s infinite;
}

@keyframes tbxLogoA {
  0%, 38% {
    opacity: 1;
    filter: blur(0);
    transform: scale(1);
  }
  47% {
    opacity: 0;
    filter: blur(14px);
    transform: scale(1.16);
  }
  92% {
    opacity: 0;
    filter: blur(14px);
    transform: scale(0.86);
  }
  100% {
    opacity: 1;
    filter: blur(0);
    transform: scale(1);
  }
}
@keyframes tbxLogoB {
  0%, 44% {
    opacity: 0;
    filter: blur(14px);
    transform: scale(0.86);
  }
  54%, 90% {
    opacity: 1;
    filter: blur(0);
    transform: scale(1);
  }
  98% {
    opacity: 0;
    filter: blur(14px);
    transform: scale(1.16);
  }
  100% {
    opacity: 0;
    filter: blur(14px);
    transform: scale(0.86);
  }
}
@keyframes tbxBrillo {
  0%, 55% {
    background-position: 170% 0, 0 0;
  }
  100% {
    background-position: -70% 0, 0 0;
  }
}
@keyframes tbxFlota {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-6px);
  }
}
/* Resplandor y rayos de luz detrás del logo */
.page-anonymous .col-md {
  position: relative;
}

.page-anonymous .col-md::before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  top: 46%;
  width: clamp(380px, 36vw, 620px);
  height: clamp(232px, 22vw, 380px);
  transform: translate(-50%, -50%);
  pointer-events: none;
  background: radial-gradient(closest-side, var(--tbx-glow), transparent 72%);
  filter: blur(18px);
  animation: tbxPulso 6s ease-in-out infinite;
}

.page-anonymous .col-md::after {
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  top: 46%;
  width: clamp(700px, 58vw, 1100px);
  height: clamp(700px, 58vw, 1100px);
  transform: translate(-50%, -50%);
  pointer-events: none;
  background: repeating-conic-gradient(from 0deg, var(--tbx-ray) 0deg 7deg, transparent 7deg 26deg);
  mask-image: radial-gradient(closest-side, #000 0%, transparent 66%);
  animation: tbxRayos 120s linear infinite;
}

@keyframes tbxPulso {
  0%, 100% {
    opacity: 0.75;
    transform: translate(-50%, -50%) scale(1);
  }
  50% {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1.12);
  }
}
@keyframes tbxRayos {
  from {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  to {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
/* ---------- LEYENDA bajo el logo (dos textos que se funden) ---------- */
.page-anonymous .container-tight > .text-center:first-child::before,
.page-anonymous .container-tight > .text-center:first-child::after {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 6px;
  text-align: center;
  font-size: clamp(0.68rem, 0.35vw + 0.56rem, 0.86rem);
  font-weight: 650;
  letter-spacing: 0.34em;
  text-transform: uppercase;
  white-space: nowrap;
  pointer-events: none;
}

.page-anonymous .container-tight > .text-center:first-child::before {
  content: "Mesa de servicio · Tío Ben";
  color: #8A5A3C;
  animation: tbxLeyendaA 22s infinite cubic-bezier(0.65, 0, 0.35, 1);
}

.page-anonymous .container-tight > .text-center:first-child::after {
  content: "Mesa de servicio · Ellaz";
  color: #E9C4BA;
  opacity: 0;
  animation: tbxLeyendaB 22s infinite cubic-bezier(0.65, 0, 0.35, 1);
}

@keyframes tbxLeyendaA {
  0%, 38% {
    opacity: 1;
    filter: blur(0);
    letter-spacing: 0.34em;
  }
  46% {
    opacity: 0;
    filter: blur(8px);
    letter-spacing: 0.5em;
  }
  92% {
    opacity: 0;
    filter: blur(8px);
    letter-spacing: 0.18em;
  }
  100% {
    opacity: 1;
    filter: blur(0);
    letter-spacing: 0.34em;
  }
}
@keyframes tbxLeyendaB {
  0%, 46% {
    opacity: 0;
    filter: blur(8px);
    letter-spacing: 0.18em;
  }
  56%, 90% {
    opacity: 1;
    filter: blur(0);
    letter-spacing: 0.34em;
  }
  98% {
    opacity: 0;
    filter: blur(8px);
    letter-spacing: 0.5em;
  }
  100% {
    opacity: 0;
    filter: blur(8px);
    letter-spacing: 0.18em;
  }
}
/* ---------- TARJETA de cristal con borde luminoso giratorio ---------- */
.page-anonymous .main-content-card {
  position: relative;
  border: 0;
  border-radius: 28px;
  background: var(--tbx-card-bg);
  -webkit-backdrop-filter: blur(22px) saturate(1.5);
  backdrop-filter: blur(22px) saturate(1.5);
  box-shadow: 0 44px 90px -34px var(--tbx-shadow), 0 14px 34px -18px var(--tbx-shadow), inset 0 1px 0 var(--tbx-hl), 0 0 0 1px var(--tbx-card-bd);
  animation: tbxSube 1.1s cubic-bezier(0.16, 1, 0.3, 1) 0.18s both;
}

.page-anonymous .main-content-card::before {
  content: "";
  position: absolute;
  inset: 0;
  padding: 1.6px;
  border-radius: inherit;
  pointer-events: none;
  background: conic-gradient(from var(--tbx-angle), transparent 0 52%, var(--tbx-ring) 74%, transparent 92%);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  mask-composite: exclude;
  animation: tbxGira 8s linear infinite;
}

@keyframes tbxGira {
  to {
    --tbx-angle: 360deg;
  }
}
/* Barrido de luz que cruza la tarjeta en cada cambio de marca */
.page-anonymous .main-content-card::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(115deg, transparent 38%, rgba(255, 255, 255, 0.34) 50%, transparent 62%);
  background-size: 300% 100%;
  background-position: 140% 0;
  animation: tbxBarrido 22s infinite cubic-bezier(0.65, 0, 0.35, 1);
}

@keyframes tbxBarrido {
  0%, 39% {
    background-position: 140% 0;
  }
  52% {
    background-position: -40% 0;
  }
  52.01%, 89% {
    background-position: 140% 0;
  }
  100% {
    background-position: -40% 0;
  }
}
.page-anonymous .main-content-card .card-body {
  padding: 2.1rem 2.2rem 1.9rem;
}

/* Título */
.page-anonymous .main-content-card .card-header {
  border: 0;
  padding: 0;
  justify-content: center;
  background: transparent;
}

.page-anonymous .main-content-card h2 {
  margin: 0 auto;
  text-align: center;
  font-size: 1.35rem;
  font-weight: 750;
  letter-spacing: -0.015em;
  color: var(--tbx-ink);
}

.page-anonymous .main-content-card h2::after {
  content: "";
  display: block;
  width: 46px;
  height: 3px;
  margin: 12px auto 0;
  border-radius: 3px;
  background: linear-gradient(90deg, var(--tbx-accent), var(--tbx-accent-2));
}

/* Etiquetas y campos */
.page-anonymous .main-content-card .form-label {
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--tbx-muted);
}

.page-anonymous .main-content-card .form-control,
.page-anonymous .main-content-card .form-select {
  height: 48px;
  padding: 0 16px;
  font-size: 0.98rem;
  border-radius: 14px;
  border: 1px solid var(--tbx-input-bd);
  background-color: var(--tbx-input-bg);
  color: var(--tbx-input-fg);
  box-shadow: none;
  transition: border-color 0.25s ease, box-shadow 0.3s ease, transform 0.25s ease, background-color 0.3s ease;
}

.page-anonymous .main-content-card .form-control:hover,
.page-anonymous .main-content-card .form-select:hover {
  border-color: var(--tbx-accent);
}

.page-anonymous .main-content-card .form-control:focus,
.page-anonymous .main-content-card .form-select:focus {
  outline: 0;
  border-color: var(--tbx-accent);
  background-color: var(--tbx-input-bg);
  color: var(--tbx-input-fg);
  box-shadow: 0 0 0 4px var(--tbx-focus), 0 12px 26px -14px var(--tbx-btn-glow);
  transform: translateY(-1px);
}

.page-anonymous .main-content-card .form-control::placeholder {
  color: var(--tbx-muted);
  opacity: 0.7;
}

/* Autocompletado del navegador sin fondo amarillo/azul */
.page-anonymous .main-content-card input:-webkit-autofill,
.page-anonymous .main-content-card input:-webkit-autofill:focus {
  -webkit-text-fill-color: var(--tbx-input-fg);
  caret-color: var(--tbx-input-fg);
  transition: background-color 600000s 0s, color 600000s 0s;
}

/* Si solo hay un origen de autenticación, se oculta el selector (el valor se sigue enviando) */
.page-anonymous .main-content-card .mb-3:has(select[name=auth] > option:only-child) {
  display: none !important;
}

/* Selector de origen (si algún día hay LDAP/SSO) con el mismo aspecto */
.page-anonymous .main-content-card .select2-container--default .select2-selection--single {
  height: 50px;
  border-radius: 14px;
  border: 1px solid var(--tbx-input-bd);
  background-color: var(--tbx-input-bg);
}

.page-anonymous .main-content-card .select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 48px;
  padding-left: 16px;
  color: var(--tbx-input-fg);
}

.page-anonymous .main-content-card .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 48px;
}

.page-anonymous .main-content-card .form-check-input {
  width: 1.15rem;
  height: 1.15rem;
  border-radius: 6px;
  border: 1.5px solid var(--tbx-input-bd);
  background-color: var(--tbx-input-bg);
  transition: background-color 0.25s, border-color 0.25s, box-shadow 0.25s;
}

.page-anonymous .main-content-card .form-check-input:checked {
  background-color: var(--tbx-accent);
  border-color: var(--tbx-accent);
}

.page-anonymous .main-content-card .form-check-input:focus {
  box-shadow: 0 0 0 4px var(--tbx-focus);
  border-color: var(--tbx-accent);
}

.page-anonymous .main-content-card .form-check-label {
  font-size: 0.9rem;
  color: var(--tbx-muted);
}

.page-anonymous .main-content-card a:not(.btn) {
  color: var(--tbx-link);
  font-weight: 600;
}

.page-anonymous ::selection {
  background: var(--tbx-accent);
  color: #fff;
}

/* Entrada escalonada de los campos del formulario */
.page-anonymous .main-content-card .col-md-5 > * {
  animation: tbxAparece 0.8s cubic-bezier(0.16, 1, 0.3, 1) both;
}

.page-anonymous .main-content-card .col-md-5 > *:nth-child(1) {
  animation-delay: 0.48s;
}

.page-anonymous .main-content-card .col-md-5 > *:nth-child(2) {
  animation-delay: 0.56s;
}

.page-anonymous .main-content-card .col-md-5 > *:nth-child(3) {
  animation-delay: 0.64s;
}

.page-anonymous .main-content-card .col-md-5 > *:nth-child(4) {
  animation-delay: 0.72s;
}

.page-anonymous .main-content-card .col-md-5 > *:nth-child(5) {
  animation-delay: 0.8s;
}

.page-anonymous .main-content-card .col-md-5 > *:nth-child(6) {
  animation-delay: 0.88s;
}

/* Botón principal con degradado vivo y destello periódico */
.page-anonymous .main-content-card .btn-primary {
  position: relative;
  overflow: hidden;
  height: 52px;
  border: 0;
  border-radius: 16px;
  font-weight: 750;
  letter-spacing: 0.02em;
  color: var(--tbx-btn-fg);
  background-image: linear-gradient(135deg, var(--tbx-btn-a), var(--tbx-btn-b));
  box-shadow: 0 14px 30px -12px var(--tbx-btn-glow), inset 0 1px 0 rgba(255, 255, 255, 0.3);
  transition: transform 0.22s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease, filter 0.3s ease;
}

.page-anonymous .main-content-card .btn-primary::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(105deg, transparent 32%, rgba(255, 255, 255, 0.45) 50%, transparent 68%);
  transform: translateX(-130%);
  pointer-events: none;
  animation: tbxDestello 6.5s ease-in-out 2.4s infinite;
}

.page-anonymous .main-content-card .btn-primary:hover {
  color: var(--tbx-btn-fg);
  transform: translateY(-2px);
  filter: saturate(1.12) brightness(1.04);
  box-shadow: 0 20px 38px -12px var(--tbx-btn-glow), inset 0 1px 0 rgba(255, 255, 255, 0.34);
}

.page-anonymous .main-content-card .btn-primary:hover::before {
  animation: tbxDestello 0.9s ease-out 1;
}

.page-anonymous .main-content-card .btn-primary:active {
  transform: translateY(0) scale(0.985);
}

.page-anonymous .main-content-card .btn-primary:focus-visible {
  outline: 0;
  box-shadow: 0 0 0 4px var(--tbx-focus), 0 14px 30px -12px var(--tbx-btn-glow);
}

@keyframes tbxDestello {
  0%, 60% {
    transform: translateX(-130%);
  }
  100% {
    transform: translateX(130%);
  }
}
/* Al enviar el formulario GLPI desactiva el botón: se muestra un destello continuo de "cargando" */
.page-anonymous .main-content-card .btn-primary:disabled,
.page-anonymous .main-content-card .btn-primary.disabled {
  opacity: 1;
  cursor: progress;
  filter: saturate(0.85);
}

.page-anonymous .main-content-card .btn-primary:disabled::before {
  animation: tbxCargando 1.1s linear infinite;
}

@keyframes tbxCargando {
  from {
    transform: translateX(-130%);
  }
  to {
    transform: translateX(130%);
  }
}
/* Mensajes de error (credenciales incorrectas, etc.) con el mismo lenguaje visual */
.page-anonymous .main-content-card .alert {
  border: 1px solid var(--tbx-input-bd);
  border-left: 4px solid var(--tbx-accent);
  border-radius: 16px;
  background: var(--tbx-input-bg);
  color: var(--tbx-ink);
  box-shadow: none;
}

.page-anonymous .main-content-card .alert .alert-title {
  color: var(--tbx-ink);
  font-weight: 750;
}

.page-anonymous .main-content-card .alert .ti {
  color: var(--tbx-accent);
}

/* Pie: aviso de copyright (se conserva, discreto) y enlace de ayuda */
.page-anonymous .container-tight > .text-center.text-muted a.copyright {
  font-size: 0.7rem;
  letter-spacing: 0.04em;
  color: var(--tbx-muted);
  text-decoration: none;
  transition: color 0.25s;
}

.page-anonymous .container-tight > .text-center.text-muted a.copyright:hover {
  color: var(--tbx-link);
}

.page-anonymous .container-tight > .text-center.mt-3:last-child > a {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.5rem 1rem;
  border-radius: 999px;
  font-size: 0.8rem;
  font-weight: 650;
  text-decoration: none;
  color: var(--tbx-muted);
  background: var(--tbx-input-bg);
  border: 1px solid var(--tbx-input-bd);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  transition: color 0.25s, border-color 0.25s, transform 0.25s;
}

.page-anonymous .container-tight > .text-center.mt-3:last-child > a:hover {
  color: var(--tbx-link);
  border-color: var(--tbx-accent);
  transform: translateY(-1px);
}

.page-anonymous .container-tight > .text-center.mt-3 {
  margin-top: 0.6rem !important;
}

.page-anonymous .container-tight > .text-center.text-muted,
.page-anonymous .container-tight > .text-center.mt-3:last-child {
  animation: tbxAparece 0.9s ease 0.55s both;
}

/* ---------- Indicadores de marca (abajo): Tío Ben · Ellaz con progreso ---------- */
main#page.page-anonymous::before,
main#page.page-anonymous::after {
  position: fixed;
  bottom: max(22px, env(safe-area-inset-bottom));
  z-index: 5;
  pointer-events: none;
  padding-bottom: 9px;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--tbx-ink);
  background-repeat: no-repeat;
  background-position: left bottom, left bottom;
}

main#page.page-anonymous::before {
  content: "Tío Ben";
  right: calc(50% + 14px);
  background-image: linear-gradient(var(--tbx-accent), var(--tbx-accent)), linear-gradient(var(--tbx-track), var(--tbx-track));
  background-size: var(--tbx-pa) 2px, 100% 2px;
  animation: tbxTabA 22s linear infinite, tbxProgA 22s linear infinite;
}

main#page.page-anonymous::after {
  content: "Ellaz";
  left: calc(50% + 14px);
  background-image: linear-gradient(var(--tbx-accent), var(--tbx-accent)), linear-gradient(var(--tbx-track), var(--tbx-track));
  background-size: var(--tbx-pb) 2px, 100% 2px;
  animation: tbxTabB 22s linear infinite, tbxProgB 22s linear infinite;
}

@keyframes tbxTabA {
  0%, 44% {
    opacity: 1;
  }
  52%, 90% {
    opacity: 0.38;
  }
  100% {
    opacity: 1;
  }
}
@keyframes tbxTabB {
  0%, 44% {
    opacity: 0.38;
  }
  52%, 94% {
    opacity: 1;
  }
  100% {
    opacity: 0.38;
  }
}
@keyframes tbxProgA {
  0% {
    --tbx-pa: 0%;
  }
  44% {
    --tbx-pa: 100%;
  }
  100% {
    --tbx-pa: 100%;
  }
}
@keyframes tbxProgB {
  0%, 46% {
    --tbx-pb: 0%;
  }
  92% {
    --tbx-pb: 100%;
  }
  100% {
    --tbx-pb: 100%;
  }
}
/* ---------- Animaciones de entrada ---------- */
@keyframes tbxSube {
  from {
    opacity: 0;
    transform: translateY(28px) scale(0.985);
    filter: blur(8px);
  }
  to {
    opacity: 1;
    transform: none;
    filter: none;
  }
}
@keyframes tbxAparece {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
/* ---------- Pantallas pequeñas ---------- */
@media (max-width: 575.98px) {
  .page-anonymous .container-tight {
    max-width: 100% !important;
    padding-left: 16px;
    padding-right: 16px;
  }
  .page-anonymous .main-content-card .card-body {
    padding: 1.7rem 1.35rem 1.5rem;
  }
  .page-anonymous .container-tight {
    --tbx-logo-w: clamp(196px, 62vw, 252px);
  }
  .page-anonymous .container-tight > .text-center:first-child::before,
  .page-anonymous .container-tight > .text-center:first-child::after {
    font-size: 0.62rem;
    letter-spacing: 0.26em;
  }
  .page-anonymous .main-content-card {
    -webkit-backdrop-filter: blur(14px) saturate(1.4);
    backdrop-filter: blur(14px) saturate(1.4);
  }
}
@media (max-height: 780px) {
  main#page.page-anonymous::before,
  main#page.page-anonymous::after {
    display: none;
  }
}
/* ---------- Navegadores sin cristal esmerilado ---------- */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .page-anonymous .main-content-card {
    background: linear-gradient(var(--tbx-card-bg), var(--tbx-card-bg)), var(--tbx-solid);
  }
}
/* ---------- Accesibilidad: sin movimiento, solo escena Tío Ben ---------- */
@media (prefers-reduced-motion: reduce) {
  html:has(body.welcome-anonymous),
  html:has(body.welcome-anonymous)::before,
  html:has(body.welcome-anonymous)::after,
  body.welcome-anonymous::before,
  .page-anonymous .container-tight > .text-center,
  .page-anonymous .container-tight > .text-center::before,
  .page-anonymous .container-tight > .text-center::after,
  .page-anonymous .glpi-logo,
  .page-anonymous .glpi-logo::before,
  .page-anonymous .glpi-logo::after,
  .page-anonymous .col-md::before,
  .page-anonymous .col-md::after,
  .page-anonymous .main-content-card,
  .page-anonymous .main-content-card::before,
  .page-anonymous .main-content-card::after,
  .page-anonymous .main-content-card .col-md-5 > *,
  .page-anonymous .main-content-card .btn-primary::before,
  .page-anonymous .container-tight > .text-center.text-muted,
  .page-anonymous .container-tight > .text-center.mt-3:last-child {
    animation: none !important;
  }
  .page-anonymous .container-tight > .text-center:first-child::after,
  .page-anonymous .glpi-logo::after,
  .page-anonymous .main-content-card::after,
  main#page.page-anonymous::before,
  main#page.page-anonymous::after {
    display: none;
  }
}