:root {
  --mod-primary-color: #b91c1c;
  --mod-secondary-color: #7f1d1d;
  --mod-accent-color: #b91c1c;
  --mod-text-color: #202936;
  --mod-light-text: #647083;
  --mod-border-radius: 12px;
  --zorza-red: #b91c1c;
  --zorza-red-dark: #7f1d1d;
  --zorza-ink: #202936;
  --zorza-muted: #647083;
  --zorza-line: #dfe5ee;
  --zorza-bg: #f4f6f9;
}

html,
body.welcome-anonymous,
.welcome-anonymous,
body.mod-layout-centered,
body.mod-layout-centered.welcome-anonymous,
.mod-layout-centered.welcome-anonymous {
  min-height: 100vh !important;
  background: radial-gradient(circle at top left, rgba(185, 28, 28, 0.08), transparent 30rem), linear-gradient(180deg, #ffffff 0%, #f4f6f9 100%) !important;
  background-image: radial-gradient(circle at top left, rgba(185, 28, 28, 0.08), transparent 30rem), linear-gradient(180deg, #ffffff 0%, #f4f6f9 100%) !important;
  color: var(--zorza-ink) !important;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif !important;
}

body.welcome-anonymous::before,
body.mod-layout-centered::before,
body.mod-layout-centered .page-anonymous::before,
.welcome-anonymous .page-anonymous::before {
  display: none !important;
  content: none !important;
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.welcome-anonymous .page-anonymous,
body.mod-layout-centered .page-anonymous {
  min-height: 100vh !important;
  width: 100% !important;
  max-width: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 2rem !important;
  background: transparent !important;
}

.welcome-anonymous .container-tight,
body.mod-layout-centered .container-tight {
  width: 100% !important;
  max-width: 460px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

.welcome-anonymous .container-tight .row,
body.mod-layout-centered .container-tight .row {
  display: block !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.welcome-anonymous .col-auto,
body.mod-layout-centered .col-auto {
  display: none !important;
}

.welcome-anonymous .col-md-5,
body.mod-layout-centered .col-md-5,
.welcome-anonymous .container-tight [class*='col-'],
body.mod-layout-centered .container-tight [class*='col-'] {
  width: 100% !important;
  max-width: 100% !important;
  flex: none !important;
  padding: 0 !important;
}

.welcome-anonymous .card,
body.mod-layout-centered .card,
.welcome-anonymous .main-content-card,
body.mod-layout-centered .main-content-card {
  width: 100% !important;
  margin: 0 !important;
  padding: 2.25rem !important;
  background: #ffffff !important;
  border: 1px solid var(--zorza-line) !important;
  border-radius: 12px !important;
  box-shadow: 0 18px 45px rgba(32, 41, 54, 0.12) !important;
  overflow: visible !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  animation: none !important;
}

.welcome-anonymous .card-header,
body.mod-layout-centered .card-header,
.welcome-anonymous .card-header.mb-4,
body.mod-layout-centered .card-header.mb-4 {
  display: block !important;
  padding: 0 0 1.35rem 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  text-align: left !important;
}

.welcome-anonymous .card-body,
body.mod-layout-centered .card-body {
  padding: 0 !important;
}

.welcome-anonymous .card-body > .text-center:first-child,
body.mod-layout-centered .card-body > .text-center:first-child,
.welcome-anonymous .container-tight > .text-center:first-child,
body.mod-layout-centered .container-tight > .text-center:first-child,
.welcome-anonymous .text-center.text-muted.mt-3 {
  display: none !important;
}

.welcome-anonymous .glpi-logo,
body.mod-layout-centered .glpi-logo,
.welcome-anonymous img.glpi-logo,
body.mod-layout-centered img.glpi-logo,
.welcome-anonymous .card-header .glpi-logo,
body.mod-layout-centered .card-header .glpi-logo {
  background-image: url('https://zorzaneli.com.br/img/logo-topo.png') !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  display: block !important;
  width: 220px !important;
  max-width: 100% !important;
  height: 64px !important;
  margin: 0 0 1.45rem 0 !important;
  filter: none !important;
  transform: none !important;
  color: transparent !important;
}

.welcome-anonymous img.glpi-logo,
body.mod-layout-centered img.glpi-logo {
  object-fit: contain !important;
  object-position: left center !important;
  content: url('https://zorzaneli.com.br/img/logo-topo.png') !important;
}

.welcome-anonymous .glpi-logo svg,
.welcome-anonymous .glpi-logo img,
body.mod-layout-centered .glpi-logo svg,
body.mod-layout-centered .glpi-logo img {
  display: none !important;
}

.welcome-anonymous .card-header h2,
body.mod-layout-centered .card-header h2,
.welcome-anonymous h2.mx-auto,
body.mod-layout-centered h2.mx-auto {
  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
  margin: 0 !important;
  text-align: left !important;
}

.welcome-anonymous .card-header h2::before,
body.mod-layout-centered .card-header h2::before,
.welcome-anonymous h2.mx-auto::before,
body.mod-layout-centered h2.mx-auto::before {
  content: 'Portal de Suporte' !important;
  display: block !important;
  color: var(--zorza-ink) !important;
  font-size: 1.45rem !important;
  font-weight: 650 !important;
  line-height: 1.2 !important;
}

.welcome-anonymous .card-header h2::after,
body.mod-layout-centered .card-header h2::after,
.welcome-anonymous h2.mx-auto::after,
body.mod-layout-centered h2.mx-auto::after {
  content: 'Abertura e acompanhamento de chamados' !important;
  display: block !important;
  margin-top: 0.45rem !important;
  color: var(--zorza-muted) !important;
  font-size: 0.95rem !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
}

.welcome-anonymous label,
body.mod-layout-centered label {
  color: #364152 !important;
  font-size: 0.9rem !important;
  font-weight: 550 !important;
  margin-bottom: 0.45rem !important;
}

.welcome-anonymous input[type='text'],
.welcome-anonymous input[type='password'],
.welcome-anonymous input[type='email'],
body.mod-layout-centered input[type='text'],
body.mod-layout-centered input[type='password'],
body.mod-layout-centered input[type='email'] {
  min-height: 46px !important;
  padding: 0.7rem 0.85rem !important;
  border: 1px solid #cfd7e3 !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  color: var(--zorza-ink) !important;
  font-size: 0.96rem !important;
  box-shadow: none !important;
}

.welcome-anonymous input:focus,
body.mod-layout-centered input:focus {
  border-color: var(--zorza-red) !important;
  box-shadow: 0 0 0 3px rgba(185, 28, 28, 0.12) !important;
}

.welcome-anonymous .form-check-input:checked,
body.mod-layout-centered .form-check-input:checked {
  background-color: var(--zorza-red) !important;
  border-color: var(--zorza-red) !important;
}

.welcome-anonymous .btn-primary,
.welcome-anonymous button[type='submit'],
.welcome-anonymous input[type='submit'],
body.mod-layout-centered .btn-primary,
body.mod-layout-centered button[type='submit'],
body.mod-layout-centered input[type='submit'] {
  min-height: 46px !important;
  width: 100% !important;
  margin-top: 0.75rem !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: var(--zorza-red) !important;
  color: #ffffff !important;
  font-size: 0.98rem !important;
  font-weight: 650 !important;
  box-shadow: 0 8px 18px rgba(185, 28, 28, 0.18) !important;
  letter-spacing: 0 !important;
}

.welcome-anonymous .btn-primary:hover,
.welcome-anonymous button[type='submit']:hover,
.welcome-anonymous input[type='submit']:hover,
body.mod-layout-centered .btn-primary:hover,
body.mod-layout-centered button[type='submit']:hover,
body.mod-layout-centered input[type='submit']:hover {
  background: var(--zorza-red-dark) !important;
  transform: none !important;
  box-shadow: 0 10px 22px rgba(127, 29, 29, 0.22) !important;
}

.welcome-anonymous a,
body.mod-layout-centered a {
  color: var(--zorza-red) !important;
}

.welcome-anonymous .mod-attribution,
body.mod-layout-centered .mod-attribution {
  margin-top: 1.5rem !important;
  padding-top: 1rem !important;
  border-top: 1px solid #edf1f5 !important;
  color: #7b8494 !important;
  font-size: 0.78rem !important;
  text-align: left !important;
}

@media (max-width: 560px) {
  .welcome-anonymous .page-anonymous,
  body.mod-layout-centered .page-anonymous {
    align-items: flex-start !important;
    padding: 1rem !important;
  }

  .welcome-anonymous .card,
  body.mod-layout-centered .card {
    padding: 1.5rem !important;
  }

  .welcome-anonymous .glpi-logo,
  body.mod-layout-centered .glpi-logo,
  .welcome-anonymous img.glpi-logo,
  body.mod-layout-centered img.glpi-logo {
    width: 190px !important;
    height: 56px !important;
  }
}

/* Zorzaneli logo cleanup */
.welcome-anonymous .card-header .glpi-logo,
body.mod-layout-centered .card-header .glpi-logo,
.welcome-anonymous .card-body .text-center .glpi-logo,
body.mod-layout-centered .card-body .text-center .glpi-logo,
.welcome-anonymous span.glpi-logo,
body.mod-layout-centered span.glpi-logo {
  display: block !important;
  width: 230px !important;
  height: 72px !important;
  margin: 0 0 1.35rem 0 !important;
  padding: 0 !important;
  background: url('https://zorzaneli.com.br/img/logo-topo.png') no-repeat left center / contain !important;
  font-size: 0 !important;
  line-height: 0 !important;
  color: transparent !important;
  text-indent: -9999px !important;
  overflow: hidden !important;
}

.welcome-anonymous .card-header .glpi-logo::before,
.welcome-anonymous .card-header .glpi-logo::after,
body.mod-layout-centered .card-header .glpi-logo::before,
body.mod-layout-centered .card-header .glpi-logo::after,
.welcome-anonymous .card-body .text-center .glpi-logo::before,
.welcome-anonymous .card-body .text-center .glpi-logo::after,
body.mod-layout-centered .card-body .text-center .glpi-logo::before,
body.mod-layout-centered .card-body .text-center .glpi-logo::after {
  display: none !important;
  content: none !important;
}

.welcome-anonymous .glpi-logo img,
body.mod-layout-centered .glpi-logo img,
.welcome-anonymous img.glpi-logo,
body.mod-layout-centered img.glpi-logo,
.welcome-anonymous .card-header img,
body.mod-layout-centered .card-header img,
.welcome-anonymous .card-body .text-center img,
body.mod-layout-centered .card-body .text-center img {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
}

/* Force non-cached uploaded branding logo */
.welcome-anonymous .glpi-logo,
body.mod-layout-centered .glpi-logo,
.welcome-anonymous .card-header .glpi-logo,
body.mod-layout-centered .card-header .glpi-logo,
.welcome-anonymous span.glpi-logo,
body.mod-layout-centered span.glpi-logo {
  background-image: url('/pics/logos/logo-GLPI-250-black.png?v=zorzaneli-20260524-1458') !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: contain !important;
  background-color: transparent !important;
}

.welcome-anonymous img.glpi-logo,
body.mod-layout-centered img.glpi-logo {
  content: url('/pics/logos/logo-GLPI-250-black.png?v=zorzaneli-20260524-1458') !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 230px !important;
  height: auto !important;
  max-height: 72px !important;
  object-fit: contain !important;
  object-position: left center !important;
}

/* Final login logo strategy: never render GLPI logo nodes */
body.welcome-anonymous .glpi-logo,
body.mod-layout-centered.welcome-anonymous .glpi-logo,
body.welcome-anonymous img.glpi-logo,
body.mod-layout-centered.welcome-anonymous img.glpi-logo,
body.welcome-anonymous span.glpi-logo,
body.mod-layout-centered.welcome-anonymous span.glpi-logo,
body.welcome-anonymous .card-header .glpi-logo,
body.mod-layout-centered.welcome-anonymous .card-header .glpi-logo,
body.welcome-anonymous .card-body .text-center .glpi-logo,
body.mod-layout-centered.welcome-anonymous .card-body .text-center .glpi-logo {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  background-image: none !important;
  content: none !important;
}

body.welcome-anonymous .card-header h2::before,
body.mod-layout-centered.welcome-anonymous .card-header h2::before,
body.welcome-anonymous h2.mx-auto::before,
body.mod-layout-centered.welcome-anonymous h2.mx-auto::before {
  content: '' !important;
  display: block !important;
  width: 230px !important;
  height: 72px !important;
  margin: 0 0 1.35rem 0 !important;
  background: url('/pics/logos/logo-GLPI-250-black.png?v=zorzaneli-20260524-1506') no-repeat left center / contain !important;
}

body.welcome-anonymous .card-header h2 .glpi-logo,
body.mod-layout-centered.welcome-anonymous .card-header h2 .glpi-logo {
  display: none !important;
}
