/* Login-only styling. Authentication and mailbox UI remain upstream Elastic. */
body.task-login { --man-bg:#f3f6fa; --man-card:#fff; --man-text:#182b40; --man-muted:#6b7a8d; --man-border:#dce4ed; --man-accent:#086b9c; --man-field:#fff; background:var(--man-bg); color:var(--man-text); font-family:system-ui,-apple-system,"Segoe UI",sans-serif; }
body.task-login #layout { height:100%; min-height:100%; overflow:auto; background:var(--man-bg); }
body.task-login #layout #layout-content { box-sizing:border-box; flex:none; width:100%; min-height:100%; height:auto; overflow:visible; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:48px 24px 32px; background:var(--man-bg); }
body.task-login .man-login-card { box-sizing:border-box; width:100%; max-width:420px; padding:40px; border:1px solid var(--man-border); border-radius:20px; background:var(--man-card); box-shadow:0 12px 40px rgba(26,48,73,.055); }
body.task-login .man-login-heading { text-align:center; margin-bottom:28px; }
body.task-login #logo { display:block; position:static; top:auto; left:auto; transform:none; width:142px; height:46px; max-width:100%; max-height:none; margin:0 auto 12px; padding:0; object-fit:contain; }
body.task-login .man-wordmark { font-size:11px; font-weight:600; letter-spacing:.22em; color:var(--man-muted); margin:0 0 28px; }
body.task-login #man-login-title { margin:0; font-size:25px; line-height:1.3; font-weight:600; letter-spacing:-.025em; color:var(--man-text); }
body.task-login #login-form { position:static; top:auto; width:100%; max-width:none; margin:0; padding:0; }
body.task-login #login-form .form-group { margin-bottom:18px; }
body.task-login #login-form .form-control { min-height:48px; height:auto; padding:12px 14px; font-size:16px; line-height:1.4; border:1px solid var(--man-border); border-radius:9px; background:var(--man-field); color:var(--man-text); box-shadow:none; }
body.task-login #login-form .form-control:focus { border-color:var(--man-accent); box-shadow:0 0 0 3px rgba(8,107,156,.14); }
body.task-login #login-form .input-group-text { color:var(--man-muted); background:var(--man-field); border-color:var(--man-border); border-radius:9px 0 0 9px; }
body.task-login #login-form .input-group>.form-control:not(:first-child) { border-top-left-radius:0; border-bottom-left-radius:0; }
body.task-login #login-form .input-group>.form-control:not(:last-child) { border-top-right-radius:0; border-bottom-right-radius:0; }
body.task-login #login-form .input-group-append .input-group-text { border-radius:0 9px 9px 0; }
body.task-login #rcmloginsubmit { width:100%; min-height:48px; margin-top:8px; border:1px solid var(--man-accent); border-radius:9px; background:var(--man-accent); color:#fff; font-size:15px; font-weight:600; box-shadow:none; transition:background .15s ease,box-shadow .15s ease; }
body.task-login #rcmloginsubmit:hover { background:#07597f; border-color:#07597f; }
body.task-login #rcmloginsubmit:focus-visible { outline:3px solid rgba(8,107,156,.35); outline-offset:3px; }
body.task-login #login-footer { color:var(--man-muted); text-align:center; font-size:13px; margin-top:20px; }
body.task-login #login-footer:empty { display:none; }
body.task-login .man-login-caption { font-size:12px; line-height:1.5; color:var(--man-muted); margin:24px 0 0; }
html.dark-mode body.task-login { --man-bg:#111b27; --man-card:#1b2939; --man-text:#edf3fa; --man-muted:#a4b5c8; --man-border:#394b60; --man-accent:#087aaa; --man-field:#152231; }
@media(max-width:480px) { body.task-login #layout #layout-content { padding:24px 18px; } body.task-login .man-login-card { padding:32px 24px; border-radius:16px; } }
@media(max-height:580px) { body.task-login #layout #layout-content { justify-content:flex-start; } }
@media(prefers-reduced-motion:reduce) { body.task-login #rcmloginsubmit { transition:none; } }

/* Keep the login heading accessible without displaying it visually. */
body.task-login #man-login-title { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; clip-path:inset(50%)!important; white-space:nowrap!important; border:0!important; }
body.task-login .man-wordmark { margin-bottom:0; }

/* MAN Chemical landscape and frosted login card. */
body.task-login #layout {
  background:linear-gradient(rgba(16,30,45,.30),rgba(16,30,45,.48)),url("../images/man-landscape.webp") center center / cover no-repeat;
  min-height:100vh; min-height:100svh;
}
body.task-login #layout #layout-content { background:transparent; min-height:100vh; min-height:100svh; }
body.task-login .man-login-card {
  background:rgba(255,255,255,.72);
  border:1px solid rgba(255,255,255,.64);
  -webkit-backdrop-filter:blur(22px) saturate(135%);
  backdrop-filter:blur(22px) saturate(135%);
  box-shadow:0 24px 64px rgba(6,19,31,.24),inset 0 1px 0 rgba(255,255,255,.6);
}
body.task-login { --man-field:rgba(255,255,255,.78); --man-border:rgba(144,163,182,.42); --man-muted:#4f6175; }
body.task-login .man-login-caption { color:rgba(255,255,255,.92); text-shadow:0 1px 5px rgba(0,0,0,.35); }
html.dark-mode body.task-login .man-login-card {
  background:rgba(20,34,49,.70); border-color:rgba(230,240,255,.24);
  box-shadow:0 24px 64px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.12);
}
html.dark-mode body.task-login { --man-field:rgba(14,27,41,.72); --man-border:rgba(162,185,211,.35); --man-muted:#c2cfde; }
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
  body.task-login .man-login-card { background:rgba(255,255,255,.94); }
  html.dark-mode body.task-login .man-login-card { background:rgba(20,34,49,.95); }
}

/* Login card glass: background and border at 20% opacity. */
body.task-login .man-login-card {
  background:rgba(255,255,255,.20);
  border-color:rgba(255,255,255,.20);
  -webkit-backdrop-filter:blur(22px) saturate(135%);
  backdrop-filter:blur(22px) saturate(135%);
  box-shadow:0 24px 64px rgba(6,19,31,.20),inset 0 1px 0 rgba(255,255,255,.20);
}
html.dark-mode body.task-login .man-login-card {
  background:rgba(20,34,49,.20);
  border-color:rgba(230,240,255,.20);
  box-shadow:0 24px 64px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.20);
}

/* Refined business controls, scoped to the login form. */
body.task-login #login-form { --control-bg:rgba(255,255,255,.76); --control-hover:rgba(255,255,255,.87); --control-text:#172c40; --control-hint:#4b6073; --control-line:rgba(255,255,255,.50); }
body.task-login .man-login-heading { margin-bottom:32px; }
body.task-login #login-form .form-group { margin-bottom:16px; }
body.task-login #login-form .input-group {
  min-height:52px; border:1px solid var(--control-line); border-radius:12px;
  background:var(--control-bg); box-shadow:inset 0 1px 0 rgba(255,255,255,.18);
  flex-wrap:nowrap; align-items:stretch;
  transition:background .18s ease,border-color .18s ease,box-shadow .18s ease;
}
body.task-login #login-form .input-group:hover { background:var(--control-hover); }
body.task-login #login-form .input-group:focus-within { background:var(--control-hover); border-color:#42b3df; box-shadow:0 0 0 3px rgba(42,166,215,.20); }
body.task-login #login-form .input-group-prepend { margin:0; }
body.task-login #login-form .input-group .input-group-text {
  width:44px; justify-content:center; padding:0 0 0 8px;
  background:transparent; border:0; border-radius:12px 0 0 12px;
  color:var(--control-hint); font-size:15px;
}
body.task-login #login-form .input-group .input-group-text:before { font-size:15px; }
body.task-login #login-form .input-group .form-control {
  min-height:50px; min-width:0; height:auto; border:0; border-radius:12px;
  padding:14px 16px 14px 6px; background:transparent; color:var(--control-text);
  font-family:inherit; font-size:16px; font-weight:400; line-height:1.4;
  box-shadow:none; caret-color:#0877a5;
}
body.task-login #login-form .input-group .form-control:focus { border:0; outline:0; box-shadow:none; }
body.task-login #login-form .form-control::placeholder { color:var(--control-hint); opacity:1; font-weight:400; }
body.task-login #login-form .input-group .form-control:-webkit-autofill {
  -webkit-text-fill-color:var(--control-text); caret-color:var(--control-text);
  -webkit-box-shadow:0 0 0 1000px #e9f1f5 inset;
}
body.task-login #login-form .formbuttons { margin:24px 0 0; }
body.task-login #rcmloginsubmit {
  min-height:52px; margin:0; padding:13px 20px; border-radius:12px;
  border:1px solid rgba(255,255,255,.18);
  background:linear-gradient(135deg,#086d98,#07567f); color:#fff;
  font-family:inherit; font-size:15px; font-weight:600; line-height:1.5;
  letter-spacing:.08em; text-transform:none!important;
  box-shadow:0 6px 18px rgba(3,51,80,.22),inset 0 1px 0 rgba(255,255,255,.12);
  transition:background .18s ease,box-shadow .18s ease;
}
body.task-login #rcmloginsubmit:hover:not(:disabled) { background:linear-gradient(135deg,#087da9,#08658f); border-color:rgba(255,255,255,.28); box-shadow:0 8px 22px rgba(3,51,80,.28); }
body.task-login #rcmloginsubmit:active:not(:disabled) { background:#07567f; box-shadow:0 2px 8px rgba(3,51,80,.20); }
body.task-login #rcmloginsubmit:focus-visible { outline:3px solid rgba(163,228,255,.85); outline-offset:3px; }
body.task-login #rcmloginsubmit:disabled { opacity:.60; cursor:wait; box-shadow:none; }
html.dark-mode body.task-login #login-form { --control-bg:rgba(15,33,49,.64); --control-hover:rgba(20,43,62,.84); --control-text:#f0f6fc; --control-hint:#c1cfdd; --control-line:rgba(220,236,255,.24); }
html.dark-mode body.task-login #login-form .input-group .form-control:-webkit-autofill { -webkit-box-shadow:0 0 0 1000px #142b3e inset; }
@media(prefers-reduced-motion:reduce) { body.task-login #login-form .input-group,body.task-login #rcmloginsubmit { transition:none; } }

/* Ivory WEBMAIL wordmark. */
body.task-login .man-wordmark { color:#f5f2e9; }
