/* WWH-CLUB private access. Invoice styling is intentionally independent. */
.auth-ui{--page:#f3f6fa;--white:#fff;--ink:#142239;--title:#142239;--mute:#67768b;--line:#dbe3ed;--blue:#147cc2;--blue-2:#106ca9;--danger:#ba3643;margin:0;background:var(--page);color:var(--ink);font:400 14px/1.6 "IBM Plex Sans","Segoe UI",sans-serif;letter-spacing:0}
.auth-ui *{box-sizing:border-box}.auth-ui a{color:inherit}.auth-shell{min-height:100dvh;display:grid;grid-template-columns:1fr 1fr}.auth-intro{background:#101e30;color:#edf5ff;padding:clamp(32px,4vw,70px);display:flex;flex-direction:column;position:relative;overflow:hidden}.auth-intro:after{content:"";position:absolute;width:560px;height:560px;border:1px solid #b4dfff0b;border-radius:50%;right:-260px;bottom:-220px;box-shadow:0 0 0 80px #b4dfff04,0 0 0 160px #b4dfff03;pointer-events:none}.wwh-brand{display:flex;align-items:center;gap:16px;text-decoration:none;width:fit-content}.wwh-brand img{object-fit:contain;display:block;max-width:100%;height:auto}.auth-intro__body{max-width:450px;margin:auto 0;padding:64px 0;position:relative;z-index:1}.auth-eyebrow{font-size:10px;font-weight:600;letter-spacing:.18em;color:#788ba4;margin:0 0 16px}.auth-intro .auth-eyebrow{color:#81bfdf}.auth-intro h1{font-size:clamp(38px,4.1vw,66px);font-weight:500;line-height:1.1;letter-spacing:-.05em;margin:0 0 25px;color:#f7faff}.auth-intro__body>p:not(.auth-eyebrow){font-size:15px;line-height:1.8;color:#aabbd0;max-width:380px;margin-bottom:40px}.auth-feature{display:flex;gap:18px;padding-top:25px;margin-top:24px;border-top:1px solid #ffffff14}.auth-feature>span{color:#60809f;font:400 12px "IBM Plex Mono",monospace;padding-top:3px}.auth-feature strong{font-size:13px;font-weight:500;color:#dce8f8}.auth-feature p{font-size:12px;line-height:1.7;color:#8fa6c1;margin:5px 0 0}.auth-footnote{font-size:10px;letter-spacing:.1em;color:#8196ae;margin:0}.auth-panel{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:70px 40px;position:relative;background:#f6f8fb}.auth-card{width:100%;max-width:380px}.auth-card h2,.auth-card h1{font-size:34px;font-weight:500;letter-spacing:-.04em;margin:0 0 10px;line-height:1.2;color:var(--ink)}.auth-card .auth-eyebrow{margin-bottom:10px;color:#6a7b91}.auth-lock{width:46px;height:46px;border:1px solid #d8e4ef;background:#eaf2f9;border-radius:12px;color:#298ac1;display:grid;place-items:center;margin-bottom:32px}.auth-lock svg{width:24px;height:24px}.auth-description{font-size:14px;color:var(--mute);margin:0 0 32px}.auth-form label{display:block;font-size:12px;color:#37475b;font-weight:500;margin:18px 0 9px}.auth-ui .field{font:400 14px/1.5 "IBM Plex Sans","Segoe UI",sans-serif;color:var(--ink);border:1px solid #d5deea;border-radius:7px;background:#fff;min-height:48px;padding:13px 14px;width:100%;box-shadow:0 2px 3px #13284b02}.auth-ui .field::placeholder{color:#8997aa}.auth-ui :is(input,button,a):focus-visible{outline:3px solid #7cc1eb;outline-offset:3px}.password-wrap{position:relative}.password-wrap .field{padding-right:70px}.password-wrap button{position:absolute;right:8px;top:6px;bottom:6px;border:0;background:transparent;border-radius:4px;color:#5e738a;font-size:11px;padding:6px 10px;cursor:pointer}.password-wrap button:hover{background:#edf3f8}.auth-ui .btn-primary{background:#117bbe;color:#fff;border:0;box-shadow:0 4px 12px #117bbe15}.auth-ui .btn-primary:hover{background:#096da9}.auth-ui .auth-submit{width:100%;min-height:48px;padding:13px 16px;margin-top:6px;border-radius:7px;display:flex;align-items:center;justify-content:center;gap:15px;font-size:13px;font-weight:500;cursor:pointer}.auth-ui .auth-submit:disabled{opacity:.6;cursor:wait}.auth-note{font-size:11px;text-align:center;color:#8592a3;margin:22px 0 0}.auth-panel__footer{position:absolute;bottom:28px;left:40px;right:40px;display:flex;justify-content:space-between;gap:20px;color:#8e9bad;font-size:10px}.auth-panel__footer span:first-child{font-weight:600;letter-spacing:.05em}.auth-ui .err{font-size:12px;color:#b43746;min-height:20px;margin:10px 0;line-height:1.6}.auth-ui .err:empty{min-height:0;margin:16px 0}.setup-shell{max-width:580px;margin:auto;padding:50px 24px}.setup-shell>.wwh-brand{margin:0 auto 36px}.setup-shell>.auth-card{max-width:none;background:#fff;border:1px solid var(--line);border-radius:14px;padding:36px;box-shadow:0 12px 40px #1d335108}.setup-shell .auth-description{font-size:13px;line-height:1.7}
@media(max-width:850px){.auth-shell{grid-template-columns:.85fr 1fr}.auth-intro{padding:36px 28px}.auth-intro h1{font-size:43px}.auth-panel{padding:60px 32px}.auth-intro__body{padding:60px 0}.auth-feature p{font-size:11px}}
@media(max-width:640px){.auth-shell{display:block}.auth-intro{min-height:0;padding:26px 26px 22px}.auth-intro .wwh-brand img{width:160px}.auth-intro__body{padding:28px 0 0;margin:0;max-width:none}.auth-intro h1{font-size:32px;line-height:1.15;margin-bottom:14px}.auth-intro h1 br{display:none}.auth-intro .auth-eyebrow{font-size:9px;margin-bottom:10px}.auth-intro__body>p:not(.auth-eyebrow){font-size:12px;margin:0;max-width:none}.auth-feature,.auth-footnote{display:none}.auth-panel{min-height:calc(100dvh - 226px);padding:34px 26px 75px;justify-content:flex-start}.auth-card{max-width:440px}.auth-lock{display:none}.auth-card h2{font-size:29px}.auth-description{margin-bottom:26px;font-size:13px}.auth-card>.auth-eyebrow{display:none}.auth-panel__footer{left:26px;right:26px;bottom:22px;font-size:9px}.setup-shell{padding:32px 20px}.setup-shell>.auth-card{padding:26px 22px}}
@media(prefers-reduced-motion:reduce){.auth-ui *{transition:none!important;animation:none!important}}
