:root{font-family:Segoe UI,Arial,sans-serif;color:#26374b;background:#edf3f6;font-synthesis:none;--navy:#26374b;--teal:#0d968f;--muted:#71839a}
*{box-sizing:border-box}body{margin:0;min-height:100vh;display:grid;place-items:center;padding:28px 24px;background:radial-gradient(ellipse at 5% 5%,#dcebea 0,transparent 45%),#edf3f6}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}.login-shell{display:grid;grid-template-columns:.9fr 1.1fr;max-width:860px;width:100%;min-height:510px;background:#fff;border-radius:26px;overflow:hidden;box-shadow:0 20px 70px #26374b12}.intro-panel{padding:30px 30px;color:#fff;background:var(--navy);display:flex;flex-direction:column;position:relative;overflow:hidden}.intro-panel:after{content:"";position:absolute;width:320px;height:320px;border:1px solid #ffffff0b;border-radius:50%;right:-180px;bottom:20px;box-shadow:0 0 0 50px #ffffff03,0 0 0 100px #ffffff02;pointer-events:none}.brand{display:flex;align-items:center;gap:13px}.mark{display:grid;place-items:center;width:46px;height:46px;background:var(--teal);font-weight:800;font-size:27px;border-radius:13px}.brand strong{font-size:21px;letter-spacing:-.4px}.brand small{display:block;font-size:12px;color:#cbd6e3;margin-top:3px}.intro-copy{margin-top:32px}.eyebrow{font-weight:700;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:#8cddd8;margin:0 0 17px}.intro-copy h1{font-size:29px;line-height:1.27;letter-spacing:-1px;margin:0 0 17px;max-width:320px}.intro-copy>p:last-child{color:#d4deea;font-size:14px;line-height:1.65;max-width:295px}.steps{padding:0;margin:20px 0 26px;list-style:none;display:grid;gap:12px;font-size:12px;color:#e0e8f1}.steps li{display:flex;align-items:center;gap:13px}.steps span{border:1px solid #ffffff28;color:#94dfda;border-radius:50%;height:32px;width:32px;display:grid;place-items:center;font-size:11px;font-weight:700}.intro-footer{font-size:12px;color:#b4c6d8;margin-top:auto;z-index:1}.form-panel{padding:39px 38px 27px;display:flex;flex-direction:column}.form-panel .eyebrow{color:#14817f;margin-bottom:13px}.form-panel h2{font-size:26px;letter-spacing:-.8px;margin:0 0 12px}.description{color:var(--muted);font-size:14px;line-height:1.65;margin:0 0 23px}form{display:grid;gap:17px}label{display:block;font-size:12px;font-weight:700;letter-spacing:.7px;margin-bottom:9px}input{height:48px;border:1px solid #cbd7e2;border-radius:9px;background:#fff;width:100%;padding:12px 15px;color:var(--navy);font-size:16px;transition:border-color .15s,box-shadow .15s;text-transform:uppercase}input::placeholder{text-transform:none;color:#98a5b5;font-size:14px}input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px #0d968f20}.password-field{position:relative}.password-field input{padding-right:50px}.reveal{position:absolute;right:5px;top:5px;width:41px;height:41px;border:0;background:transparent;color:#75879b;border-radius:7px;cursor:pointer;display:grid;place-items:center}.reveal svg{width:20px;height:20px}.reveal:focus-visible,a:focus-visible,.primary:focus-visible{outline:3px solid #0d968f66;outline-offset:3px}.primary{border:0;border-radius:9px;padding:15px 18px;background:#0c8c84;color:#fff;cursor:pointer;font-size:15px;font-weight:650;width:100%;display:flex;justify-content:space-between;align-items:center;min-height:48px}.primary:hover{background:#097b75}.primary:disabled{opacity:.65;cursor:wait}.primary span:last-child{font-size:21px;line-height:1}.form-footer{border-top:1px solid #edf1f5;margin-top:22px;padding-top:16px;font-size:12px;line-height:1.7;color:#7a8da2}.form-footer a,.back-link{color:#087c79;font-weight:600;text-decoration:none}.back-link{font-size:14px;display:inline-block;margin-top:22px}.message{font-size:13px;line-height:1.5;margin:0;min-height:0;color:#ac3147}.message:empty{display:none}.message.success{color:#087c61}.field-note{font-size:12px;color:var(--muted);margin:8px 0 0}.page-footer{max-width:860px;width:100%;display:flex;justify-content:space-between;color:#8796a7;font-size:11px;margin-top:14px;padding:0 4px}.page-footer strong{font-weight:600}.auth-wrap{width:100%;max-width:860px}a:hover{text-decoration:underline}
@media(max-width:720px){body{padding:16px 14px}.login-shell{grid-template-columns:1fr;border-radius:20px;min-height:0;max-width:460px;margin:auto}.intro-panel{padding:22px 24px}.brand strong{font-size:19px}.brand small{font-size:11px}.mark{width:40px;height:40px;font-size:24px;border-radius:11px}.intro-copy{margin-top:20px}.intro-copy .eyebrow,.intro-copy>p:last-child,.steps,.intro-footer{display:none}.intro-copy h1{font-size:22px;max-width:320px;line-height:1.3;letter-spacing:-.6px;margin:0}.form-panel{padding:25px 24px 24px}.form-panel h2{font-size:23px}.form-panel .eyebrow{font-size:10px;margin-bottom:11px}.description{font-size:13px;margin-bottom:25px}.form-footer{margin-top:24px;padding-top:17px}.page-footer{max-width:460px;margin:18px auto 0;font-size:10px}.page-footer span:last-child{display:none}form{gap:19px}}
@media(max-width:360px){body{padding:12px}.intro-panel,.form-panel{padding-left:22px;padding-right:22px}.intro-copy h1{font-size:23px}}

select{font:inherit;font-size:16px;height:48px;width:100%;border:1px solid #cbd7e2;border-radius:9px;padding:10px 35px 10px 13px;background:#fff;color:var(--navy);cursor:pointer}select:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px #0d968f20}.optional{color:#8190a0;font-size:10px;font-weight:400;letter-spacing:0;text-transform:none}body[data-page=login] form{gap:14px}body[data-page=login] .description{margin-bottom:20px}body[data-page=login] .form-panel{padding-top:30px;padding-bottom:25px}body[data-page=login] .form-footer{margin-top:18px;padding-top:14px}@media(max-width:720px){body[data-page=login] .intro-copy{margin-top:15px}body[data-page=login] .intro-copy h1{font-size:21px}body[data-page=login] .form-panel{padding-top:23px}}
