/* Gladiatorz V0.230 – ausschließlich der Startseiten-Login.
   Referenzgrafik und Positionsbilder haben beide 2048 × 1012 Pixel.
   Die Prozentkoordinaten sind daraus berechnet; Artwork und Overlays
   behalten auch mobil den gemeinsamen bestehenden Portal-Canvas. */

/* Alle neuen Texte bleiben echte DOM-Texte (DE/EN) und werden nicht
   in die Illustration eingebrannt. Weiß markierte Referenzrechtecke
   dienen ausschließlich der Positionierung und werden nicht gerendert. */
body.portal-page #login .portal-login-title,
body.portal-page #login .portal-login-label {
  position: absolute;
  z-index: 1;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  color: #472f1b;
  background: none;
  font-family: Georgia, "Times New Roman", serif;
  font-variant: small-caps;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -.015em;
  text-shadow: 0 1px 0 rgba(255,234,191,.30);
  white-space: nowrap;
  pointer-events: none;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

/* Überschrift – Referenz (804,337) bis (1221,377). */
body.portal-page #login .portal-login-title {
  left: 39.2578125%;
  top: 33.3003953%;
  width: 20.361328125%;
  height: 3.9525692%;
  justify-content: center;
  text-align: center;
  font-size: 1.75cqw;
}
/* Feldtexte – Referenz (857,443) und (857,543). */
body.portal-page #login .portal-login-label {
  left: 41.845703125%;
  width: 15.33203125%;
  height: 1.9762846%;
  justify-content: flex-start;
  font-size: .935cqw;
}
body.portal-page #login .portal-login-label-user { top: 43.7747036%; }
body.portal-page #login .portal-login-label-pass { top: 53.6561265%; height: 2.0750988%; }

/* Der alte Button war ins Hintergrundbild eingearbeitet. Jetzt liegt
   die gelieferte Normal-/Hovergrafik exakt auf dem Positionsrechteck.
   ID, type und Klick-Handler bleiben unverändert. */
body.portal-page #login #login_submit {
  left: 42.138671875%;
  top: 67.9841897%;
  width: 14.794921875%;
  height: 6.6205534%;
  background: transparent url("/css/img/portal/login_button.webp?v=V0.230") center / 100% 100% no-repeat !important;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  padding: 0;
  margin: 0;
  color: transparent;
  font-size: 0;
  line-height: 0;
  text-shadow: none;
  -webkit-tap-highlight-color: transparent;
  cursor: pointer;
}
body.portal-page #login #login_submit:hover,
body.portal-page #login #login_submit:active,
body.portal-page #login #login_submit:focus-visible {
  background-image: url("/css/img/portal/login_button_hover.webp?v=V0.230") !important;
  background-color: transparent !important;
}
/* Die alten CSS-Overlays dürfen die neue Grafik nicht übermalen. */
body.portal-page #login #login_submit::after { content: none !important; display: none !important; }
body.portal-page #login #login_submit:focus-visible { outline: 2px solid #ffe1a0; outline-offset: 1px; }
body.portal-page #login #login_submit:disabled { cursor: wait; }

@media (prefers-reduced-motion: reduce) {
  body.portal-page #login #login_submit { transition: none; }
}

/* Android WebView can enforce a larger minimum text font. Render the new
   translated lettering at readable logical sizes, then scale its entire
   element with the artwork. The coordinates do not move. No login inputs,
   buttons, timer, header or game elements are affected. If JS is disabled,
   the cqw fallback above still applies. */
body.portal-page #login.portal-login-type-scaled .portal-login-title,
body.portal-page #login.portal-login-type-scaled .portal-login-label {
  transform: scale(var(--portal-login-type-scale, 1));
  transform-origin: top left;
}
body.portal-page #login.portal-login-type-scaled .portal-login-title {
  width: 417px;
  height: 40px;
  font-size: 35.84px;
}
body.portal-page #login.portal-login-type-scaled .portal-login-label {
  width: 314px;
  height: 20px;
  font-size: 19.1488px;
}
body.portal-page #login.portal-login-type-scaled .portal-login-label-pass {
  height: 21px;
}
