:root{--navy:#13263d;--deep:#0c1c2f;--gold:#c7994c;--ink:#162438;--muted:#728095}
*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:Montserrat,"Segoe UI",Arial,sans-serif;background:#f4f5f7}
.login-layout{min-height:100vh;display:grid;grid-template-columns:minmax(330px,46%) 1fr}
.identity{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;padding:clamp(32px,5vw,72px);background:radial-gradient(circle at 88% 75%,#263e59 0,transparent 38%),linear-gradient(150deg,var(--navy),var(--deep));color:#fff;overflow:hidden}
.identity:after{content:"";position:absolute;width:420px;height:420px;border:1px solid #c7994c30;border-radius:50%;right:-210px;top:32%;box-shadow:0 0 0 55px #c7994c0b,0 0 0 115px #c7994c07;pointer-events:none}
.logo{width:190px;max-width:80%;height:auto;object-fit:contain;object-position:left}
.identity-copy{position:relative;z-index:1;max-width:460px}.identity-copy span,.eyebrow{font-size:11px;font-weight:700;letter-spacing:.23em;color:var(--gold)}.identity h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(36px,3.6vw,56px);line-height:1.12;letter-spacing:-.03em;font-weight:400;margin:22px 0}.identity p{font-size:15px;line-height:1.6;color:#c7d1da}.identity small{color:#9aa9b8;font-size:11px}
.form-side{display:grid;place-items:center;padding:40px 24px}.login-card{width:min(100%,430px)}.eyebrow{margin:0 0 14px}.login-card h2{font-family:Georgia,"Times New Roman",serif;font-size:36px;line-height:1.15;margin:0 0 10px;color:var(--navy);font-weight:500}.subtitle{color:var(--muted);font-size:14px;line-height:1.55;margin:0 0 34px}.login-card form{display:grid;gap:10px}.login-card label{font-size:12px;font-weight:700;color:#4c5e73;margin-top:8px}.login-card input{height:48px;width:100%;border:1px solid #d9dfe5;border-radius:8px;background:white;padding:0 14px;font:15px Montserrat,"Segoe UI",Arial,sans-serif;color:var(--ink)}.login-card input:focus{outline:2px solid #c7994c88;outline-offset:1px}.login-card form button{margin-top:16px;height:50px;border:0;border-radius:8px;background:var(--navy);color:white;font-size:14px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:12px}.login-card form button:hover{background:#203c5a}.login-card form button:disabled{opacity:.6;cursor:wait}.login-card form button span{color:var(--gold);font-size:19px}.back{background:none;border:0;padding:19px 0;color:#66768b;cursor:pointer;font-size:12px}.back:hover{text-decoration:underline}#message{min-height:20px;color:#b54646;font-size:12px;line-height:1.5}.security-note{border-top:1px solid #e0e4e8;padding-top:22px;margin-top:28px;color:#7f8b9a;font-size:11px}.security-note:before{content:"◆";color:var(--gold);margin-right:8px}#enrollment{border:1px solid #e4e8eb;background:#fff;padding:18px;border-radius:10px;margin:0 0 20px}#enrollment p{font-size:12px;color:#536174;line-height:1.5;margin:0 0 10px}#qr{display:grid;place-items:center}#qr svg{width:300px;max-width:100%;height:auto}details{font-size:11px;color:#536174}summary{cursor:pointer}details code{display:block;word-break:break-all;margin-top:8px;color:var(--navy);font-size:11px}
[hidden]{display:none!important}@media(max-width:800px){.login-layout{display:block}.identity{min-height:230px;padding:26px 24px}.logo{width:135px}.identity-copy{margin-top:24px}.identity-copy span,.identity small,.identity p{display:none}.identity h1{font-size:26px;margin:0}.form-side{padding:42px 24px}.login-card h2{font-size:30px}}
