.btn-primary{background:var(--blue);border-color:var(--blue);color:#fff}.btn-primary:hover,.btn-primary:focus-visible{filter:brightness(.94)}.btn-primary:focus-visible{outline:3px solid rgba(37,169,224,.25);outline-offset:2px}.security-card{margin:34px 0;padding:28px;border:1px solid var(--line);background:#fff}.security-card h3{margin:0 0 10px;font-size:1.35rem}.security-card p{color:var(--ink2);line-height:1.65}.security-alert{padding:18px 20px;margin:18px 0;border-left:4px solid var(--blue);background:var(--blue-soft);line-height:1.55}.security-alert strong{display:block;margin-bottom:5px}.password-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:800px}.password-grid .field{margin:0}.password-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:14px}.password-strength{font-size:.82rem;color:var(--muted)}.auth-shell{max-width:720px;margin:0 auto;width:100%}.auth-card{border:1px solid var(--line);background:var(--paper);padding:36px;margin-top:28px;max-width:100%;overflow:hidden}.auth-card .field input{max-width:none}.auth-meta{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);background:#fff;margin:24px 0;min-width:0}.auth-meta>div{padding:16px;min-width:0}.auth-meta>div:nth-child(odd){border-right:1px solid var(--line)}.auth-meta span{display:block;color:var(--muted);font-size:.78rem;margin-bottom:5px}.auth-meta b{display:block;overflow-wrap:anywhere;word-break:break-word}.auth-error{border-left:4px solid var(--danger);background:#fff0f0;padding:16px;margin:16px 0}.auth-help{font-size:.86rem;color:var(--muted);line-height:1.6}.field input[data-mtls-locked="1"]{background:var(--paper2);color:var(--ink2);cursor:not-allowed;border-color:#d3d0c9}.field input[data-mtls-locked="1"]:focus{outline:none;box-shadow:none}html,body{max-width:100%;overflow-x:hidden}body{min-height:100vh;display:flex;flex-direction:column}body>.topbar{flex:0 0 auto;width:100%}body>main{flex:1 0 auto;width:100%}body>.institutional-site-footer{flex:0 0 auto;width:100%;margin-top:auto}@media(max-width:700px){.password-grid,.auth-meta{grid-template-columns:1fr}.auth-meta>div:nth-child(odd){border-right:0}.auth-meta>div+div{border-top:1px solid var(--line)}.auth-card{padding:24px}.auth-shell{max-width:none}}@media(max-width:480px){.auth-card{padding:20px 16px}.auth-card .btn{width:100%}.auth-help{font-size:.82rem}.security-card{padding:22px 16px}}
