:root{--blue:#0866ff;--blue2:#1877f2;--ink:#1c1e21;--muted:#65676b;--line:#d8dadf;--panel:#fff;--bg:#f0f2f5;--danger:#b3261e}
*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:linear-gradient(110deg,#fff8ef 0%,#f2f7ff 55%,#f5fffb 100%);min-height:100vh}.mpd-auth-top{height:62px;background:#fff;border-bottom:1px solid #e4e6eb;display:flex;align-items:center;padding:0 22px}.mpd-auth-top img{width:38px;height:38px;object-fit:contain}.mpd-auth-shell{min-height:calc(100vh - 62px);display:grid;place-items:start center;padding:38px 18px 60px}.mpd-auth-card{width:min(100%,520px);background:transparent}.mpd-auth-back{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:50%;text-decoration:none;color:#65676b;font-size:24px;margin-bottom:8px}.mpd-auth-brand{font-size:12px;color:#6b7280;margin-bottom:4px;font-weight:700}.mpd-auth-card h1{font-size:28px;line-height:1.08;margin:0 0 5px}.mpd-auth-lead{font-size:14px;margin:0 0 18px;color:#4b5563}.mpd-auth-form{display:grid;gap:12px}.mpd-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mpd-three{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.mpd-auth-form label,.mpd-fieldset legend{font-size:13px;font-weight:700;color:#3a3b3c}.mpd-auth-form input,.mpd-auth-form select{width:100%;height:46px;border:1px solid #ccd0d5;border-radius:9px;background:#fff;padding:0 12px;font-size:15px;outline:0;margin-top:5px}.mpd-auth-form input:focus,.mpd-auth-form select:focus{border-color:var(--blue);box-shadow:0 0 0 2px rgba(8,102,255,.12)}.mpd-fieldset{border:0;margin:0;padding:0}.mpd-help{font-size:11px;line-height:1.35;color:#65676b;margin:0}.mpd-submit{height:46px;border:0;border-radius:9px;background:var(--blue);color:#fff;font-size:15px;font-weight:800;cursor:pointer}.mpd-submit:disabled{background:#d8dce3;color:#a4a8ae;cursor:not-allowed}.mpd-existing{display:flex;align-items:center;justify-content:center;height:44px;margin-top:9px;text-decoration:none;color:#25313d;background:#e9edf2;border-radius:9px;font-weight:700;font-size:14px}.mpd-alert{padding:10px 12px;border-radius:8px;font-size:13px;margin:0 0 12px}.mpd-alert.error{background:#ffebe9;color:#8c1d18}.mpd-alert.ok{background:#e8f5e9;color:#1b5e20}.mpd-step-card{width:min(100%,500px);background:#fff;border:1px solid #dddfe2;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.08);padding:20px}.mpd-step-card h1{font-size:22px;text-align:center;margin:0 0 10px}.mpd-step-card p{font-size:14px;color:#4b4f56;line-height:1.4}.mpd-code{display:flex;gap:10px}.mpd-code input{font-size:24px;letter-spacing:6px;text-align:center}.mpd-inline-link{font-size:13px;color:var(--blue);text-decoration:none;font-weight:700}.mpd-human-shield{width:72px;height:72px;margin:0 auto 12px;display:grid;place-items:center;border-radius:50%;background:#eef6ff;font-size:38px}.mpd-captcha{margin:10px 0 8px;border:1px solid #e1e4e8;border-radius:7px;background:#fff;overflow:hidden}.mpd-captcha svg{display:block;width:100%;height:92px}.mpd-actions{display:flex;gap:10px;margin-top:14px}.mpd-actions>*{flex:1}.mpd-note{font-size:12px!important;color:#777!important;text-align:center}.mpd-password-toggle{position:relative}.mpd-password-toggle button{position:absolute;right:9px;bottom:8px;border:0;background:transparent;color:#65676b;cursor:pointer;font-weight:700;font-size:12px}@media(max-width:560px){.mpd-two,.mpd-three{grid-template-columns:1fr}.mpd-auth-shell{padding-top:22px}.mpd-auth-card h1{font-size:25px}}

/* Full-screen animated authentication treatment: login.php + login-otp.php only. */
html:has(body.mpd-auth-background-page){width:100%;height:100%;min-height:100%;background:#fff}
body.mpd-auth-background-page{
  width:100%;min-height:100vh;min-height:100dvh;margin:0;overflow:hidden;
  position:relative;background:#fff;
}
.mpd-dot-wave{
  position:fixed!important;inset:0!important;top:0!important;right:0!important;bottom:0!important;left:0!important;
  width:100vw!important;height:100vh!important;height:100dvh!important;max-width:none!important;max-height:none!important;
  display:block;z-index:0;pointer-events:none;background:#fff;
}
.mpd-auth-background-page .mpd-auth-shell-full{
  position:relative;z-index:1;width:100%;min-height:100vh;min-height:100dvh;
  display:flex;align-items:center;justify-content:center;padding:24px;margin:0;
}
.mpd-auth-background-page .mpd-step-card{
  width:min(560px,calc(100vw - 48px));background:rgba(255,255,255,.97);
  border:1px solid #d4dae3;border-radius:9px;box-shadow:0 4px 14px rgba(25,39,61,.14);padding:24px;
}
.mpd-auth-background-page .mpd-step-card h1{
  font-size:22px;line-height:1.25;text-align:center;margin:0 0 15px;color:#111;
}
.mpd-auth-background-page .mpd-login-card h1{letter-spacing:.18em;font-weight:800}
.mpd-auth-background-page .mpd-auth-form{gap:12px}
.mpd-auth-background-page .mpd-auth-form label{font-size:14px;color:#111}
.mpd-auth-background-page .mpd-auth-form input{
  width:100%;height:48px;border:1px solid #c7ced8;border-radius:9px;background:#eaf2ff;
  padding:0 13px;font-size:15px;margin-top:6px;
}
.mpd-auth-background-page .mpd-auth-form input:focus{background:#fff;border-color:#0866ff;box-shadow:0 0 0 2px rgba(8,102,255,.12)}
.mpd-auth-background-page .mpd-submit{
  width:100%;height:48px;border-radius:9px;background:#1468f9;color:#fff;font-size:16px;font-weight:800;
}
.mpd-auth-background-page .mpd-existing{
  width:100%;min-height:48px;margin-top:10px;border:0;border-radius:9px;background:#e9edf2;color:#111;
  font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;text-align:center;padding:8px 12px;
}
.mpd-auth-background-page button.mpd-existing{cursor:pointer}
.mpd-auth-background-page button.mpd-existing:disabled{cursor:not-allowed;color:#344054;background:#e5e9ef;opacity:1}
.mpd-auth-background-page .mpd-cancel{border:2px solid #666;background:#f2f3f5}
.mpd-auth-background-page .mpd-step-card p{font-size:14px;line-height:1.45;color:#333}
.mpd-auth-background-page .mpd-policy-consent{
  display:block;width:100%;margin:27px auto 0!important;padding:0 8px;text-align:center!important;text-align-last:center;
  font-size:11px!important;line-height:1.6!important;font-weight:700;letter-spacing:.16em;color:#111!important;
}
.mpd-auth-background-page .mpd-policy-consent a{color:#111;text-decoration:none;white-space:normal}
.mpd-auth-background-page .mpd-policy-consent a:hover,.mpd-auth-background-page .mpd-policy-consent a:focus{text-decoration:underline}
.mpd-auth-background-page .mpd-compact-form{gap:0}
.mpd-auth-background-page .mpd-otp-card input[name="code"]{background:#fff;border:1px solid #c7ced8}
.mpd-auth-background-page .mpd-otp-card>p{margin:0 0 13px}

@media(max-width:600px){
  .mpd-auth-background-page .mpd-auth-shell-full{padding:16px}
  .mpd-auth-background-page .mpd-step-card{width:100%;max-width:560px;padding:18px}
  .mpd-auth-background-page .mpd-login-card h1{font-size:20px;letter-spacing:.12em}
  .mpd-auth-background-page .mpd-auth-form input,.mpd-auth-background-page .mpd-submit,.mpd-auth-background-page .mpd-existing{min-height:48px}
  .mpd-auth-background-page .mpd-policy-consent{font-size:10.5px!important;letter-spacing:.09em;padding:0 2px}
}
@media(max-width:360px){
  .mpd-auth-background-page .mpd-auth-shell-full{padding:12px}
  .mpd-auth-background-page .mpd-step-card{padding:16px}
  .mpd-auth-background-page .mpd-login-card h1{font-size:18px;letter-spacing:.08em}
  .mpd-auth-background-page .mpd-policy-consent{letter-spacing:.05em}
}
@media(max-height:600px){
  body.mpd-auth-background-page{overflow-y:auto;overflow-x:hidden}
  .mpd-auth-background-page .mpd-auth-shell-full{min-height:100vh;min-height:100dvh;align-items:flex-start;padding-top:20px;padding-bottom:20px}
}
@media(prefers-reduced-motion:reduce){.mpd-dot-wave{display:none}}


/* 27 Sep 2026: registration presented as a modal-style card on the login background */
.mpd-auth-background-page .mpd-register-card{position:relative;width:min(100%,560px);padding:28px 30px 26px}
.mpd-auth-background-page .mpd-register-card h1{text-align:left;font-size:28px;letter-spacing:normal;margin:0 42px 5px 0}
.mpd-auth-background-page .mpd-register-card .mpd-auth-lead{margin:0 0 18px;color:#4b5563}
.mpd-auth-background-page .mpd-register-card .mpd-fieldset{border:0;margin:0;padding:0}
.mpd-auth-background-page .mpd-register-card .mpd-auth-form select{background:#fff;border:1px solid #c7ced8;color:#111}
.mpd-auth-background-page .mpd-register-card .mpd-help{color:#65676b}
.mpd-auth-background-page .mpd-register-card .mpd-password-toggle button{color:#111}
.mpd-auth-close{position:absolute;top:14px;right:16px;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;font-size:30px;line-height:1;color:#333;text-decoration:none;font-weight:400;z-index:2}
.mpd-auth-close:hover,.mpd-auth-close:focus{background:#eef0f3;color:#111;outline:none}
@media(max-width:560px){.mpd-auth-background-page .mpd-register-card{padding:22px 18px 20px}.mpd-auth-background-page .mpd-register-card h1{font-size:25px}.mpd-auth-close{top:10px;right:10px}}


/* 28 Sep 2026: password recovery */
.mpd-auth-background-page .mpd-forgot-row{display:flex;justify-content:flex-end;margin-top:-3px;margin-bottom:2px}
.mpd-auth-background-page .mpd-forgot-link{font-size:13px;line-height:1.35;color:#111;text-decoration:underline;text-underline-offset:2px;font-weight:700}
.mpd-auth-background-page .mpd-forgot-link:hover,.mpd-auth-background-page .mpd-forgot-link:focus{color:#0866ff}
.mpd-auth-background-page .mpd-reset-request-card{position:relative;width:min(100%,560px);padding:28px 30px 26px}
.mpd-auth-background-page .mpd-reset-request-card h1{text-align:left;font-size:28px;letter-spacing:normal;font-weight:800;margin:0 42px 10px 42px}
.mpd-auth-background-page .mpd-reset-request-card .mpd-reset-lead{margin:0 0 18px;color:#4b5563}
.mpd-auth-back-inline{position:absolute;top:14px;left:16px;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;font-size:28px;line-height:1;color:#333;text-decoration:none;font-weight:400;z-index:2}
.mpd-auth-back-inline:hover,.mpd-auth-back-inline:focus{background:#eef0f3;color:#111;outline:none}
.mpd-reset-help-row{display:flex;justify-content:flex-start;margin:-2px 0 2px}
.mpd-reset-help-row a{font-size:13px;color:#111;text-decoration:underline;text-underline-offset:2px;font-weight:700}
.mpd-reset-help-row a:hover,.mpd-reset-help-row a:focus{color:#0866ff}
.mpd-reset-status{min-height:18px;margin:0!important;font-size:12px!important;color:#65676b!important}
.mpd-reset-status.ok{color:#1b5e20!important}.mpd-reset-status.error{color:#8c1d18!important}
@media(max-width:560px){.mpd-auth-background-page .mpd-reset-request-card{padding:22px 18px 20px}.mpd-auth-background-page .mpd-reset-request-card h1{font-size:25px;margin-left:38px}.mpd-auth-back-inline{top:10px;left:10px}}


/* 28 Sep 2026: final authentication navigation and typography alignment */
.mpd-auth-background-page .mpd-login-card{position:relative}
.mpd-auth-background-page .mpd-login-card h1{margin-left:42px;margin-right:42px}
.mpd-auth-background-page .mpd-forgot-row{justify-content:flex-start;margin:0}
.mpd-auth-background-page .mpd-forgot-link,
.mpd-auth-background-page .mpd-reset-help-row a{
  font-family:Arial,Helvetica,sans-serif;
  font-size:14px;
  line-height:1.4;
  font-weight:400;
  color:#0866ff;
  text-decoration:underline;
  text-underline-offset:2px;
}
.mpd-auth-background-page .mpd-reset-request-card h1{
  text-align:center;
  margin:0 42px 15px;
  font-size:22px;
  line-height:1.25;
  letter-spacing:normal;
  font-weight:800;
}
.mpd-auth-background-page .mpd-reset-request-card .mpd-reset-lead{margin:0 0 12px;color:#333}
.mpd-auth-background-page .mpd-reset-request-card .mpd-auth-form{gap:12px}
.mpd-auth-background-page .mpd-reset-help-row{display:flex;justify-content:flex-start;margin:0}
.mpd-auth-background-page .mpd-reset-status{min-height:0;margin:0!important;font-size:12px!important}
.mpd-auth-background-page .mpd-reset-status:empty{display:none}
@media(max-width:560px){
  .mpd-auth-background-page .mpd-login-card h1{margin-left:38px;margin-right:38px}
  .mpd-auth-background-page .mpd-reset-request-card h1{font-size:20px;margin:0 38px 15px}
}

/* 28 Sep 2026: email confirmation uses the same full-screen authentication presentation as login. */
.mpd-auth-background-page .mpd-confirm-email-card{width:min(560px,calc(100vw - 48px));padding:24px}
.mpd-auth-background-page .mpd-confirm-email-card h1{font-size:22px;line-height:1.25;text-align:center;margin:0 0 15px;color:#111;letter-spacing:normal}
.mpd-auth-background-page .mpd-confirm-email-card>p{text-align:center;margin:0 0 14px}
.mpd-auth-background-page .mpd-confirm-email-card .mpd-inline-link{display:inline-block}
@media(max-width:600px){.mpd-auth-background-page .mpd-confirm-email-card{width:100%;max-width:560px;padding:18px}}
