*{box-sizing:border-box}body{margin:0;background:linear-gradient(130deg,#e8f3ff,#f4f8fb 55%,#e5f6f3);color:#293844;font:16px/1.55 system-ui,sans-serif;min-height:100svh;display:grid;place-items:center;padding:clamp(16px,4vw,48px)}
body:before{content:"";position:fixed;right:-100px;top:-160px;width:520px;height:520px;border:70px solid #5cccc812;border-radius:50%;pointer-events:none}main{position:relative;width:100%;max-width:500px;background:#ffffffed;padding:clamp(24px,5vw,44px);border:1px solid #dce8f1;border-top:4px solid #0055b1;border-radius:24px;box-shadow:0 20px 65px #20304012}
img{width:170px;max-width:100%;height:auto}h1{font-size:clamp(25px,4vw,30px);line-height:1.2;margin:28px 0 12px;color:#0055b1}p{margin:16px 0}label{display:block;font-weight:600;margin-bottom:7px;font-size:14px}
input{width:100%;padding:13px;border:1px solid #bac8d2;border-radius:10px;font:inherit;min-width:0}button{width:100%;padding:14px;background:#0055b1;color:white;border:0;border-radius:10px;font:inherit;font-weight:600;cursor:pointer;min-height:48px}button:hover{filter:brightness(.94)}input:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #5cccc8;outline-offset:3px}
.errorlist{color:#a32424;padding-left:20px}.helptext{font-size:13px;color:#52616c}a{color:#075b96}.intro{color:#607482;font-size:14px}.methods{display:flex;gap:6px;background:#eef3f8;padding:5px;border-radius:12px;margin:24px 0}.methods a{flex:1;text-align:center;padding:10px 6px;text-decoration:none;border-radius:8px;font-size:14px;font-weight:600}.methods a[aria-current=page]{background:white;box-shadow:0 2px 6px #20304012;color:#0055b1}.password-wrap{position:relative}.password-wrap input{padding-right:88px}.password-wrap button{position:absolute;right:4px;top:4px;width:78px;min-height:42px;padding:8px;background:transparent;color:#075b96;font-size:13px}.footer-links{font-size:14px;text-align:center}.notice{background:#edf7f7;padding:14px;border-radius:10px;font-size:14px}.helptext ul{padding-left:20px}

body{background:linear-gradient(125deg,#f2f7fc 10%,#f8fafc 52%,#edf8f6);overflow-x:hidden;font-family:"DM Sans",system-ui,sans-serif}body:before{right:-150px;top:-260px;width:650px;height:650px;border-width:90px;border-color:#3d99d80a}.brand-motif{position:fixed;right:0;bottom:4%;width:min(560px,48vw);height:350px;background:url('/static/hr/brand/arrows.png') center/contain no-repeat;opacity:.055;pointer-events:none}main{max-width:510px;border-top:1px solid #dce8f1;padding:36px 40px;box-shadow:0 18px 70px #1c477012;background:#fff}.eyebrow{font-size:10px;letter-spacing:.16em;color:#547485;font-weight:700;margin:27px 0 8px}h1{margin:0 0 20px;font-size:29px;color:#343e47}.google-button{display:flex;align-items:center;justify-content:center;gap:13px;background:#fff;color:#1f1f1f;border:1px solid #747775;border-radius:8px;font-family:Arial,sans-serif;font-weight:500}.google-button svg{flex:none}.google-button:hover{background:#f4f7fa;filter:none}.divider{display:flex;align-items:center;gap:12px;font-size:12px;color:#687986;margin:20px 0}.divider:before,.divider:after{content:"";height:1px;background:#e5ebf0;flex:1}.methods{margin:18px 0}.intro{font-size:13px}.access-progress[hidden]{display:none}.access-progress{margin-top:22px;padding:18px 12px 8px;text-align:center;border-top:1px solid #e5edf3;color:#0055b1}.access-progress p{margin:5px 0;font-size:13px;color:#617482}.journey{width:150px;margin:0 auto 12px;overflow:hidden}.truck{width:105px;height:77px;display:block;margin:auto;overflow:visible}.wheel{animation:wheel-spin .65s linear infinite}.truck-body{animation:truck-bounce .6s ease-in-out infinite alternate}.road{height:2px;margin-top:1px;background:repeating-linear-gradient(90deg,#bac7d2 0 20px,transparent 20px 34px);animation:road-run .5s linear infinite}@keyframes wheel-spin{to{transform:rotate(360deg)}}@keyframes truck-bounce{to{transform:translateY(-1.5px)}}@keyframes road-run{to{background-position:-34px 0}}@media(max-width:520px){main{padding:28px 22px;border-radius:20px}h1{font-size:25px}.methods a{font-size:13px}.brand-motif{width:90vw}}@media(prefers-reduced-motion:reduce){.wheel,.truck-body,.road{animation:none}}

.access-progress{position:fixed;inset:0;z-index:10000;margin:0;padding:24px;display:flex;align-items:center;justify-content:center;background:rgba(232,241,248,.88);backdrop-filter:blur(9px);border:0}.welcome-card{width:min(580px,100%);padding:clamp(32px,7vw,60px) 24px;border:1px solid #dbe8f0;border-radius:28px;background:linear-gradient(135deg,#fff 55%,#eef9f7);box-shadow:0 24px 100px #16395724;text-align:center;overflow:hidden}.access-progress .journey{width:min(300px,80%);margin:0 auto 30px;overflow:hidden}.access-progress .truck{width:210px;max-width:85%;height:auto;animation:truck-enter .8s cubic-bezier(.2,.65,.3,1) both}.access-progress .road{margin-top:5px}.welcome-copy{animation:welcome-reveal .55s .85s both}.welcome-copy strong{display:block;font-size:clamp(21px,4vw,27px);line-height:1.3;color:#0055b1}.access-progress .welcome-copy p{font-size:clamp(17px,3vw,21px);margin-top:12px;color:#343e47}.access-progress .welcome-status{font-size:13px;margin-top:28px;animation:welcome-reveal .4s 1.25s both}@keyframes truck-enter{from{transform:translateX(-240px);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes welcome-reveal{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.access-progress .truck,.welcome-copy,.access-progress .welcome-status{animation:none}}
.wheel-left{transform-origin:119.5186px 253.7193px}
.wheel-right{transform-origin:262.8578px 253.7193px}
