/* Current live visual-only overlay. Scoped to observed login DOM, no auth JS. */
/* The layout is the single direct parent of login-form. */
div:has(> [data-testid="login-form"]) {
  --evrio-stage: max(100svh, 56.2799vw);
  position: relative !important; display: block !important;
  width: 100% !important; max-width: 100% !important;
  min-height: var(--evrio-stage) !important;
  margin: 0 !important; gap: 0 !important;
  padding: calc(var(--evrio-stage) * .112646) 0 calc(var(--evrio-stage) * .17) !important;
  background: #03142b url('/evrio-login-reference/desktop.png') top left / 100% var(--evrio-stage) no-repeat !important;
}
/* Hide only the original decorative hero sibling. Real form/errors untouched. */
div:has(> [data-testid="login-form"]) > div:has([data-testid="login-brand-stage"]) { display:none !important; }
/* Observed page and ScrollView content ancestors, not portal/dialog ancestors. */
div:has(> div > [data-testid="login-form"]),
div:has(> div > div > [data-testid="login-form"]) {
  width:100% !important; max-width:100% !important;
  padding:0 !important; margin:0 !important; gap:0 !important;
  align-items:stretch !important; justify-content:flex-start !important;
}
/* Keep external website link accessible; remove duplicate decorative top logo. */
div:has(> div > [data-testid="login-form"]) > div:has(> [aria-label="EVRIO"]) {
  position:absolute !important; top:16px !important; right:20px !important;
  z-index:3 !important; min-height:0 !important; width:auto !important;
}
div:has(> div > [data-testid="login-form"]) > div > [aria-label="EVRIO"] {display:none !important;}
[data-testid="login-form"] {
  box-sizing:border-box !important; position:relative !important;
  left:auto !important; right:auto !important; bottom:auto !important;
  width:27.9306vw !important; max-width:none !important;
  margin:0 0 0 68.6005vw !important;
  min-height:calc(var(--evrio-stage) * .707758) !important;
  padding:5.5024vw max(24px,2.4522vw) 28px !important;
  display:flex !important; flex-direction:column !important;
  gap:clamp(12px,1.1962vw,20px) !important;
  border:1px solid #477cbb !important; border-radius:26px !important;
  background:radial-gradient(ellipse at 70% 0%,#3a3b52 0%,transparent 42%),linear-gradient(145deg,#092650,#001a3c 48%,#041329) !important;
  color:#fff !important; box-shadow:inset 0 1px 0 #82b9ff22,0 12px 40px #0005 !important;
  overflow:visible !important;
}
/* Decorative role strip only, not heading/status/MFA controls. */
[data-testid="login-form"] > div:first-child:has(> div:nth-child(2) > div:nth-child(5)):not([aria-live]):not([role]):not(:has(button,input,[aria-live],[role="alert"])) {display:none !important;}
[data-testid="login-form"] h1 {
  font-family:Georgia,'Times New Roman',serif !important;
  font-size:clamp(26px,2.6316vw,44px) !important;
  line-height:1.22 !important; font-weight:400 !important;
  letter-spacing:-1px !important; color:#fff !important; margin:0 0 10px !important;
}
[data-testid="login-form"] > div:has(> h1) > div {color:#a9c8f1 !important; font-size:13px !important;line-height:18px !important;}
[data-testid="login-form"] > div:has(> input) {
  box-sizing:border-box !important; min-height:52px !important;
  height:clamp(52px,3.8876vw,65px) !important;
  padding:0 14px !important; border:1px solid #5687bf !important;
  border-radius:13px !important; background:#031833 !important;
}
[data-testid="login-form"] input {color:#d7e8ff !important;font-size:clamp(16px,1.077vw,18px) !important;min-width:0 !important;outline-offset:3px;}
[data-testid="login-form"] input::placeholder {color:#a9c8f1 !important;opacity:1 !important;}
[data-testid="login-form"] > div:has(> input) > div,
[data-testid="toggle-login-password"] > div {color:#ddebff !important;}
[data-testid="login-submit"] {
  min-height:52px !important;height:clamp(52px,4.067vw,68px) !important;
  border:1px solid #38d4ff !important;border-radius:14px !important;
  background:linear-gradient(180deg,#00caff 0%,#0066ff 24%,#0066ff) !important;
  box-shadow:inset 0 1px 3px #91eeff99,0 7px 27px #005dff55 !important;
}
[data-testid="login-submit"] > div {color:white !important;}
[data-testid="login-submit"][aria-disabled="true"] {opacity:.55 !important;}
[data-testid="login-form"] [data-testid="open-host-password-recovery"],
[data-testid="login-form"] [aria-label="Hilfe beim persönlichen Gästezugang"],
[data-testid="login-form"] [data-testid="open-host-registration"] {min-height:44px !important;}
[data-testid="login-form"] [data-testid="open-host-password-recovery"] > div,
[data-testid="login-form"] [aria-label="Hilfe beim persönlichen Gästezugang"] > div,
[data-testid="login-form"] [data-testid="open-host-registration"] > div {color:#20aaff !important;}
@media(max-width:1039px) {
  div:has(> [data-testid="login-form"]) {
    min-height:100svh !important;
    padding:100.3vw 0 28px !important;
    background-image:url('/evrio-login-reference/mobile.png') !important;
    background-size:100% 150vw !important;
  }
  [data-testid="login-form"] {
    width:86% !important;max-width:86% !important;margin:0 auto !important;
    min-height:0 !important;padding:26px 22px !important;
    border-radius:24px !important;gap:14px !important;
    background:linear-gradient(145deg,#132945,#0a1e38 44%,#041329) !important;
  }
  [data-testid="login-form"] h1 {font-size:28px !important;line-height:34px !important;}
  [data-testid="login-form"] input {font-size:16px !important;}
  [data-testid="login-form"] > div:has(> input) {height:56px !important;}
  [data-testid="login-submit"] {height:58px !important;}
  div:has(> div > [data-testid="login-form"]) > div:has(> [aria-label="EVRIO"]) {top:10px !important;right:12px !important;}
}
@media(max-width:350px) {
  [data-testid="login-form"] {padding-left:16px !important;padding-right:16px !important;}
  [data-testid="login-form"] h1 {font-size:25px !important;}
}

/* Root desktop review: retain all status/help text with readable contrast. */
[data-testid="login-form"] > [aria-live="polite"],
[data-testid="login-form"] > [aria-live="polite"] div,
[data-testid="login-form"] > div:has(> [data-testid="open-host-registration"]) > div,
[data-testid="login-form"] > div:last-child {color:#b7cce5 !important;}
