:root{color-scheme:light;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%;}body.hulme-access-body{background:#f3f7fc;color:#10254c}.ha-layout{min-height:100vh;display:grid;grid-template-columns:minmax(400px,1fr) minmax(450px,1fr)}.ha-brand{background:radial-gradient(circle at 86% 17%,rgba(66,160,255,.34),transparent 37%),linear-gradient(142deg,#071832,#0d3268 66%,#1552a0);padding:clamp(28px,5.6vw,82px);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;color:white}.ha-brand:after{content:"";width:560px;height:560px;border:1px solid rgba(255,255,255,.12);border-radius:50%;position:absolute;bottom:-270px;right:-240px;box-shadow:0 0 0 65px rgba(255,255,255,.025),0 0 0 155px rgba(255,255,255,.02);pointer-events:none}.ha-brand-name{display:flex;align-items:center;gap:13px;text-decoration:none;color:#fff;font-size:25px;font-weight:800;letter-spacing:.02em;position:relative;z-index:1}.ha-brand-name img{width:50px;height:50px;object-fit:contain;border-radius:12px}.ha-brand-name span{display:flex;flex-direction:column}.ha-brand-name small{font-size:9px;letter-spacing:.19em;color:#accbea;margin-top:3px}.ha-brand-message{position:relative;z-index:1;max-width:670px}.ha-overline{font-size:12px;font-weight:800;letter-spacing:.2em;color:#76ccff}.ha-brand-message h1{font-size:clamp(48px,5.2vw,76px);line-height:1.12;letter-spacing:-.05em;margin:25px 0 22px}.ha-brand-message h1 em{font-style:normal;color:#84d7ff}.ha-brand-message p{font-size:18px;line-height:1.8;max-width:520px;color:#c8d9f0}.ha-brand-foot{font-size:12px;letter-spacing:.14em;display:flex;gap:20px;justify-content:space-between;color:#a8c2e3;position:relative;z-index:1}.ha-right{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:42px 28px}.ha-card{width:100%;max-width:450px;padding:30px 0}.ha-mobile-brand{display:none}.ha-eyebrow{font-size:11px;letter-spacing:.12em;font-weight:800;color:#1764c4;display:flex;align-items:center;gap:8px}.ha-dot{width:8px;height:8px;background:#27c0a3;display:inline-block;border-radius:100%}.ha-card h2{font-size:clamp(28px,3vw,40px);margin:16px 0 7px;letter-spacing:-.035em;line-height:1.2}.ha-subtitle{font-size:15px;line-height:1.7;color:#64738f;margin:0 0 33px}.ha-card form{display:flex;flex-direction:column}.ha-card form>label{font-size:13px;font-weight:700;color:#1e3356;margin:0 0 9px}.ha-card input[type=text],.ha-card input[type=password]{border:1px solid #d4dfee;width:100%;font:inherit;font-size:15px;padding:15px 16px;border-radius:11px;background:#fff;color:#122b50;outline:none;height:52px;box-shadow:0 2px 5px #10264a08}.ha-card #ha-login{margin-bottom:22px}.ha-card input:focus{border-color:#2378d4;box-shadow:0 0 0 3px rgba(35,120,212,.13)}.ha-pass-wrap{position:relative}.ha-pass-wrap input{padding-right:72px}.ha-pass-wrap button{position:absolute;right:12px;top:10px;background:#edf4fc;border:0;border-radius:8px;padding:8px 11px;color:#2a5f9c;cursor:pointer;font-size:12px;font-weight:700}.ha-form-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:20px 0 27px;font-size:13px}.ha-form-row a{color:#1566c3;text-decoration:none;font-weight:600}.ha-remember{display:flex;gap:8px;align-items:center;color:#536780;cursor:pointer}.ha-remember input{accent-color:#1769c6;width:15px;height:15px}.ha-submit{width:100%;display:flex;justify-content:center;align-items:center;gap:15px;background:linear-gradient(105deg,#1265c4,#0a499d);padding:16px 20px;color:white;border:0;border-radius:11px;font-weight:750;font-size:15px;cursor:pointer;min-height:54px;box-shadow:0 10px 20px rgba(16,92,189,.18);transition:transform .15s,filter .15s}.ha-submit:hover{filter:brightness(1.07);transform:translateY(-1px)}.ha-submit:focus-visible,.ha-pass-wrap button:focus-visible,.ha-form-row a:focus-visible{outline:3px solid #50a7ff;outline-offset:3px}.ha-note{text-align:center;border-top:1px solid #e6ecf5;margin-top:32px;padding-top:25px;color:#8a98ab;font-size:12px;line-height:1.6}.ha-help{color:#8190a7;font-size:12px;text-align:center}.ha-error{border:1px solid #ffc4c4;background:#fff1f1;color:#9e2637;padding:12px 14px;font-size:13px;line-height:1.5;border-radius:9px;margin-bottom:18px}.ha-notice{border:1px solid #b7dbf8;background:#e9f5ff;color:#155b9b;padding:12px 14px;border-radius:9px;margin-bottom:18px;font-size:13px}@media(max-width:850px){.ha-layout{grid-template-columns:1fr}.ha-brand{display:none}.ha-right{min-height:100vh}.ha-mobile-brand{display:flex;align-items:center;gap:12px;font-size:21px;font-weight:800;color:#0a4b98;margin-bottom:32px}.ha-mobile-brand img{width:42px;height:42px;border-radius:9px}.ha-card{max-width:460px;padding:10px 0}}@media(max-width:460px){.ha-right{padding:28px 20px}.ha-card h2{font-size:29px}.ha-form-row{font-size:12px}}@media(prefers-reduced-motion:reduce){.ha-submit{transition:none}}


/* v0.2.1: ONLY typography refinement. Original v0.1.0 layout preserved. */
:root{font-family:"Segoe UI",Arial,sans-serif}
body.hulme-access-body{font-family:"Segoe UI",Arial,sans-serif}
.ha-brand-name{font-weight:600;letter-spacing:.12em;font-size:23px}
.ha-brand-name small{font-weight:500;letter-spacing:.17em}
.ha-overline{font-weight:600;letter-spacing:.21em}
.ha-brand-message h1{font-weight:500;letter-spacing:-.025em;line-height:1.16}
.ha-brand-message h1 em{font-style:normal;font-weight:500}
.ha-brand-message p{font-weight:400;font-size:17px;line-height:1.75}
.ha-brand-foot{font-weight:400;letter-spacing:.16em}
.ha-eyebrow{font-weight:600;letter-spacing:.20em}
.ha-card h2{font-weight:500;letter-spacing:-.025em}
.ha-subtitle{font-weight:400}
.ha-card form>label,.ha-field label{font-weight:600;letter-spacing:.015em}
.ha-card input[type=text],.ha-card input[type=password]{font-family:inherit;font-weight:400}
.ha-submit{font-family:inherit;font-weight:600;letter-spacing:.07em}
.ha-help,.ha-note{font-weight:400}
/* In v0.2.0 the form uses ha-field wrappers; restore vertical spacing. */
.ha-field{margin-bottom:20px}
.ha-field label{display:block;margin-bottom:9px;font-size:13px;color:#1e3356}
.ha-input-wrap{position:relative}
.ha-field-icon{position:absolute;top:50%;left:15px;transform:translateY(-50%);font-size:18px;color:#9aaac0;line-height:1;pointer-events:none}
.ha-card .ha-input-wrap input[type=text],.ha-card .ha-input-wrap input[type=password]{padding-left:44px}
.ha-card .ha-pass-wrap input[type=password],.ha-card .ha-pass-wrap input[type=text]{padding-right:76px}
.ha-card .ha-input-wrap #ha-login{margin-bottom:0}
.ha-mark{display:none}
@media(max-width:850px){.ha-brand{display:none}.ha-right{min-height:100vh}}
