:root{color-scheme:dark;--bg:#031b27;--panel:#092a37;--aqua:#61e8d5;--text:#f2f7f8;--muted:#afc6cd;--line:#284854;font-family:'Avenir Next',Avenir,'Segoe UI',sans-serif;color:var(--text);background:var(--bg)}
*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(ellipse at 10% 40%,#0c3b45 0,transparent 58%);display:flex;flex-direction:column}a{color:var(--aqua);text-underline-offset:4px}button,input{font:inherit}a,button,input{touch-action:manipulation}:focus-visible{outline:3px solid var(--aqua);outline-offset:4px}.shell{width:min(1160px,calc(100% - 64px));margin-inline:auto}header{min-height:110px;display:flex;justify-content:space-between;align-items:center;gap:24px;border-bottom:1px solid var(--line)}.brand img{display:block;width:260px;max-width:100%;height:auto}.header-label{font-size:.875rem;color:var(--muted);letter-spacing:.12em;text-transform:uppercase}.skip{position:absolute;top:-100px;padding:12px;background:var(--aqua);color:var(--bg);z-index:10}.skip:focus{top:10px}main{flex:1}.login-layout{display:grid;grid-template-columns:1fr 470px;gap:80px;align-items:center;padding-block:64px}.eyebrow{font-size:.875rem;letter-spacing:.12em;text-transform:uppercase;color:var(--aqua);font-weight:650;margin:0 0 18px}h1{font-size:clamp(2.1rem,4vw,3.25rem);font-weight:600;line-height:1.12;letter-spacing:-.035em;margin:0 0 20px}.intro h1{font-size:clamp(2.8rem,5vw,4.5rem)}h1 span{color:var(--aqua)}h2{font-size:1.5rem;line-height:1.25;margin:0 0 14px;font-weight:600}h3{font-size:1.125rem;margin:0 0 8px}p{line-height:1.65;color:var(--muted);margin:0 0 22px}.intro>p{max-width:400px}.new-hire{margin-top:40px;padding-top:30px;border-top:1px solid var(--line);max-width:420px}.new-hire p{margin-bottom:18px}.card{background:linear-gradient(135deg,#0c303e,#082530);border:1px solid #32525e;border-radius:18px;padding:36px;box-shadow:0 20px 65px #00101c30}.card>p{margin-bottom:24px}label{display:grid;gap:9px;font-size:.9375rem;font-weight:600;margin:20px 0}input{min-width:0;width:100%;min-height:52px;padding:12px 14px;border:1px solid #53717a;border-radius:7px;background:#041e2a;color:var(--text);font-size:1rem}input::placeholder{color:#95aeb6}input:focus{border-color:var(--aqua)}.button,button{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:50px;border:1px solid transparent;border-radius:7px;padding:12px 21px;background:var(--aqua);color:#032932;text-decoration:none;font-weight:700;cursor:pointer;font-size:1rem}.button:hover,button:hover{filter:brightness(1.08)}.primary{width:100%;margin-top:6px}.secondary{background:transparent;border-color:#58818a;color:var(--text)}.text-link{display:inline-flex;min-height:44px;align-items:center}.form-footer{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.form-footer p{font-size:.9375rem;margin:0 0 5px}.small{font-size:.875rem}.muted{color:var(--muted)}footer{display:flex;justify-content:space-between;gap:18px;border-top:1px solid var(--line);padding-block:24px;font-size:.875rem;color:var(--muted)}footer a{color:var(--muted)}.error{padding:14px 16px;background:#401f2d;border:1px solid #976373;border-radius:7px;color:#ffe2e6}.notice{padding:16px 20px;border:1px solid #43867f;background:#0e3c41;border-radius:9px;color:#ddfbf7;margin-bottom:26px}.page{padding-block:48px 64px}.page-top{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:30px}.page-top h1{margin-bottom:12px}.page-top p{margin-bottom:0}.badge{display:inline-block;border:1px solid #55727b;border-radius:30px;padding:6px 12px;font-size:.875rem;color:#c7d9de;white-space:nowrap}.grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.grid .card{box-shadow:none}.wide{grid-column:1/-1}.identity{display:grid;grid-template-columns:1fr 1fr;gap:24px}.identity dt{color:var(--muted);font-size:.875rem;margin-bottom:7px}.identity dd{margin:0;font-size:1.125rem;overflow-wrap:anywhere}.steps{padding:0;list-style:none;margin:28px 0 0}.steps li{display:flex;gap:18px;padding:23px 0;border-top:1px solid var(--line)}.step{display:grid;place-items:center;flex-shrink:0;width:38px;height:38px;border:1px solid #56707a;border-radius:50%;color:var(--muted)}.step.current{border-color:var(--aqua);color:var(--aqua)}.steps p{margin:0}.narrow{width:min(620px,100%);margin-inline:auto}.back{margin-bottom:24px}.email{color:var(--text);overflow-wrap:anywhere}.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.actions form{margin:0}.header-actions{display:flex;align-items:center;gap:18px}.header-actions button{min-height:42px;padding:9px 15px;font-size:.875rem}.placeholder{display:flex;justify-content:space-between;align-items:start;gap:18px}.placeholder p{margin:0}.password-wrap{position:relative}.password-wrap input{padding-right:74px}.password-wrap button{position:absolute;right:7px;top:7px;min-height:38px;padding:6px 8px;background:transparent;color:var(--aqua);font-size:.875rem}button:disabled{opacity:.65;cursor:wait}
@media(max-width:950px){.login-layout{gap:36px;grid-template-columns:1fr 430px}.card{padding:28px}.brand img{width:230px}}@media(max-width:760px){.shell{width:calc(100% - 36px)}header{min-height:90px;gap:16px}.brand img{width:200px}.header-label{font-size:.75rem;letter-spacing:.07em}.login-layout{grid-template-columns:1fr;padding-block:36px;gap:32px;max-width:550px}.intro h1{font-size:3rem}.intro>p{max-width:none}.new-hire{margin-top:24px;padding-top:24px;max-width:none}.grid{grid-template-columns:1fr}.wide{grid-column:auto}.page-top{align-items:start;flex-direction:column}.identity{grid-template-columns:1fr}.page{padding-top:30px}.card{padding:26px}.header-actions{gap:8px}.header-actions .header-label{display:none}footer{flex-direction:column;gap:8px}.placeholder{flex-direction:column;gap:14px}}@media(max-width:370px){.brand img{width:165px}.card{padding:22px}.header-label{max-width:80px}.intro h1{font-size:2.6rem}}
.login-layout{grid-template-areas:'intro signin' 'newhire signin';column-gap:80px;row-gap:0;align-content:center}.intro{grid-area:intro;align-self:end}.signin{grid-area:signin}.new-hire{grid-area:newhire;align-self:start;margin-top:20px}.intro>p:last-child{margin-bottom:0}
@media(max-width:950px){.login-layout{column-gap:36px}}@media(max-width:760px){.login-layout{grid-template-areas:'intro' 'signin' 'newhire';gap:30px}.new-hire{margin-top:0}.intro h1{font-size:2.7rem}}

.permission-options input[type="checkbox"]{width:auto;display:inline-block;margin:0 .55rem 0 0;accent-color:#147b75}.permission-options label{margin:1rem 0}.permission-options label>span{display:block}
