/* Theme-local tokens keep the standalone login aligned with its host page. */
dialog.divers-login{--login-panel:#fbfdfd;--login-input:#fff;--login-ink:#102f3d;--login-muted:#536d79;--login-line:#c8d9df;--login-link:#28677f;--login-hover:#eaf3f6}
html[data-theme=dark] dialog.divers-login{--login-panel:#102b36;--login-input:#0b202b;--login-ink:#edf6f8;--login-muted:#b4cbd4;--login-line:#3b5965;--login-link:#9bdee5;--login-hover:#1b3e4a}
html[data-theme=dark] dialog.divers-login .divers-login-top img{filter:brightness(0) invert(1)}
html.divers-login-open{overflow:hidden}
dialog.divers-login{box-sizing:border-box;inset:0;width:min(480px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 40px);margin:auto;padding:28px 32px 30px;border:1px solid var(--login-line);border-radius:22px;background:var(--login-panel);color:var(--login-ink);box-shadow:0 24px 100px #00131b50;overflow:auto;overscroll-behavior:contain;font:400 14px/1.5 Arial,sans-serif;color-scheme:light dark;text-align:left}
dialog.divers-login::backdrop{background:#031824a6;backdrop-filter:blur(5px)}
dialog.divers-login *{box-sizing:border-box}
dialog.divers-login [hidden]{display:none}
dialog.divers-login :is(h2,p,span,label,a,button){letter-spacing:normal;text-transform:none;text-shadow:none;opacity:1}
dialog.divers-login .divers-login-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 28px}
dialog.divers-login .divers-login-top img{display:block;width:158px;height:32px;object-fit:contain;object-position:left;filter:none}
dialog.divers-login button{appearance:none;font:600 14px/1.4 Arial,sans-serif;cursor:pointer;box-shadow:none;transform:none}
dialog.divers-login .divers-login-close{display:grid;place-items:center;flex:none;width:40px;height:40px;padding:0;border:1px solid var(--login-line);border-radius:50%;background:transparent;color:var(--login-ink);font:400 26px/1 Arial,sans-serif}
dialog.divers-login .divers-login-content{width:100%;max-width:400px;margin:auto}
dialog.divers-login h2{margin:0;color:var(--login-ink);font:400 42px/1.1 DiversDisplay,Arial,sans-serif}
dialog.divers-login p{color:var(--login-muted);font:400 14px/1.6 Arial,sans-serif;margin:0}
dialog.divers-login .divers-login-description{margin:12px 0 24px;max-width:310px}
dialog.divers-login .divers-login-providers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
dialog.divers-login .divers-login-provider{display:flex;align-items:center;justify-content:center;gap:12px;min-height:46px;border:1px solid var(--login-line);border-radius:10px;background:var(--login-input);color:var(--login-ink);font:600 14px/1.4 Arial,sans-serif;text-decoration:none}
dialog.divers-login .divers-login-provider-icon{display:grid;place-items:center;width:22px;height:22px;font:700 22px/1 Arial,sans-serif}
dialog.divers-login .divers-login-divider{display:flex;align-items:center;gap:14px;margin:22px 0;color:var(--login-muted);font-size:12px}
dialog.divers-login .divers-login-divider::before,dialog.divers-login .divers-login-divider::after{content:"";flex:1;height:1px;background:var(--login-line)}
dialog.divers-login .divers-login-form{display:grid;gap:8px;margin:0}
dialog.divers-login label{display:block;margin:0;color:var(--login-ink);font:600 13px/1.5 Arial,sans-serif}
dialog.divers-login input:not([type=hidden]){display:block;width:100%;min-width:0;height:48px;margin:0 0 10px;padding:12px 14px;border:1px solid var(--login-line);border-radius:9px;background:var(--login-input);color:var(--login-ink);font:400 16px/1.4 Arial,sans-serif;box-shadow:none;letter-spacing:normal}
dialog.divers-login input::placeholder{color:var(--login-muted)}
dialog.divers-login .divers-login-password{position:relative}
dialog.divers-login .divers-login-password input{margin-bottom:0;padding-right:76px}
dialog.divers-login .divers-login-password button{position:absolute;inset:4px 4px 4px auto;width:66px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--login-link);font-size:12px}
dialog.divers-login a{color:var(--login-link);text-decoration:none}
dialog.divers-login .divers-login-forgot{justify-self:end;margin:2px 0 10px;font-size:12px}
dialog.divers-login .divers-login-submit{width:100%;min-height:48px;margin:0;padding:12px 20px;border:1px solid #087783;border-radius:10px;background:#087783;color:white}
dialog.divers-login .divers-login-note{margin:16px 0 0;text-align:center;font-size:12px}
dialog.divers-login .divers-login-register{margin:24px 0 0;padding-top:20px;border-top:1px solid var(--login-line);text-align:center;font-size:13px}
dialog.divers-login .divers-login-register a{font-weight:600}
dialog.divers-login .divers-login-feedback{padding:10px 12px;margin:0 0 8px;border:1px solid #e7b8bb;border-radius:8px;background:#fff1f1;color:#96313e;font-size:13px}
dialog.divers-login :is(a,button,input):focus-visible{outline:3px solid #44a0bd;outline-offset:3px}
dialog.divers-login h2:focus{outline:none}
dialog.divers-login button:disabled{cursor:wait;opacity:.65}
@media(hover:hover) and (pointer:fine){dialog.divers-login :is(.divers-login-provider,.divers-login-close,.divers-login-password button):hover{background:var(--login-hover)}dialog.divers-login .divers-login-submit:not(:disabled):hover{background:#075e69}dialog.divers-login :is(.divers-login-forgot,.divers-login-register a):hover{text-decoration:underline}}
@media(max-width:600px){dialog.divers-login{width:100%;height:100dvh;max-height:100dvh;margin:0;padding:max(20px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));border:0;border-radius:0}dialog.divers-login .divers-login-top{margin-bottom:32px}dialog.divers-login h2{font-size:38px}dialog.divers-login .divers-login-close{width:44px;height:44px}}
@media(max-width:350px){dialog.divers-login{padding-inline:18px}dialog.divers-login .divers-login-top{margin-bottom:20px}}

/* Raised primary action; text links and provider marks retain their own styling. */
html dialog.divers-login .divers-login-submit{background:linear-gradient(145deg,#e52032,#b10014);color:#fff;border-color:#ef7c89;box-shadow:inset 0 1px 1px #ffffff90,0 3px 0 #77000e,0 9px 15px #71001130;translate:0 0;transition:translate .32s cubic-bezier(.4,0,.6,1),box-shadow .32s ease}
html dialog.divers-login .divers-login-provider{box-shadow:inset 0 1px 0 #ffffff20,0 2px 0 var(--login-line),0 7px 14px #00182412;transition:background-color .32s ease,box-shadow .32s ease}
html dialog.divers-login .divers-login-close{width:44px;height:44px}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){html:not([data-motion-paused]) dialog.divers-login .divers-login-submit:hover:not(:disabled):not(:active){translate:0 -2px;box-shadow:inset 0 1px 1px #ffffff90,0 3px 0 #77000e,0 13px 19px #71001145}}
html dialog.divers-login .divers-login-submit:active:not(:disabled){translate:0 0;box-shadow:inset 0 2px 4px #58000e66,0 1px 0 #77000e}
html dialog.divers-login .divers-login-submit:disabled{box-shadow:none;translate:none}
html[data-motion-paused] dialog.divers-login :is(.divers-login-submit,.divers-login-provider){transition:none;translate:none}
@media(prefers-reduced-motion:reduce){html dialog.divers-login :is(.divers-login-submit,.divers-login-provider){transition:none;translate:none}}
