/* Account pages only; the CAD workspace keeps its own visual hierarchy. */
.web-login{background:#f2f5f4;font-family:Inter,"Segoe UI",Arial,sans-serif;min-height:100dvh;display:block;place-items:normal}
.auth-shell{width:100%;box-sizing:border-box;min-height:100dvh;display:grid;grid-template-columns:minmax(360px,44%) 1fr}
.auth-aside{background:#123c40;color:#f0f7f4;padding:48px clamp(32px,5vw,88px);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
.auth-aside:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#ffffff06 1px,transparent 1px),linear-gradient(90deg,#ffffff06 1px,transparent 1px);background-size:40px 40px;pointer-events:none}
.auth-aside>*{position:relative}.auth-logo{display:inline-block}.auth-logo img{width:164px;height:auto;display:block}.auth-kicker{font-size:11px;font-weight:650;letter-spacing:2px;text-transform:uppercase;color:#96c9bd;margin:36px 0 18px}
.auth-aside h2{font-weight:500;font-size:clamp(32px,3.4vw,54px);line-height:1.14;letter-spacing:-1.5px;margin:0;max-width:490px}.auth-aside h2 em{color:#9be0c9;font-style:normal}
.auth-aside p{color:#b6ccc9;font-size:15px;line-height:1.7;max-width:420px}.auth-roof{display:block;width:100%;max-width:500px;margin:32px auto 22px;filter:drop-shadow(0 16px 26px #082a3066)}
.auth-aside-footer{font-size:11px!important;letter-spacing:.3px;margin:24px 0 0}.auth-steps{display:flex;gap:8px;flex-wrap:wrap}.auth-steps span{font-size:11px;padding:7px 11px;border:1px solid #ffffff29;border-radius:30px;color:#cee5de}
.auth-main{display:flex;align-items:center;justify-content:center;padding:48px 28px;min-width:0}.web-login-card{width:100%;max-width:410px;padding:0;border:0;border-radius:0;box-shadow:none;background:transparent;box-sizing:border-box}
.web-login-card.web-register-card{width:100%;max-width:620px;margin:0;padding:0}.auth-mobile-logo{display:none}.auth-card-eyebrow{display:flex;align-items:center;gap:8px;color:#51746c!important;font-size:12px!important;font-weight:600;margin:0 0 24px!important}.auth-card-eyebrow:before{content:"";width:7px;height:7px;background:#26957d;border-radius:50%}
.web-login-card h1{font-size:32px;font-weight:600;letter-spacing:-.9px;line-height:1.2;margin:0 0 12px;color:#163f3f;overflow-wrap:anywhere}.web-login-card p{font-size:14px;line-height:1.65;color:#607773}.web-login-card .auth-subtitle{margin:0 0 28px;max-width:490px}.web-login-card h2{font-size:16px;letter-spacing:-.1px;margin:26px 0 14px}
.web-login-card label{font-size:13px;font-weight:600;color:#344d48;gap:8px;margin-top:19px}.web-login-card input:not([type=radio]):not([type=checkbox]){width:100%;min-width:0;box-sizing:border-box;background:#fff;border:1px solid #cddad5;border-radius:9px;padding:13px 14px;font-size:15px;color:#173c39;min-height:48px;transition:border-color .15s,box-shadow .15s}.web-login-card input:focus{outline:0;border-color:#258877;box-shadow:0 0 0 3px #2287751c}
.auth-password{position:relative;display:block}.auth-password input{padding-right:74px!important}.web-login-card button.auth-reveal{position:absolute;right:6px;top:6px;width:auto;padding:10px 9px;margin:0;background:transparent;color:#42675e;border-radius:5px;font-size:12px;line-height:16px;min-height:36px;font-weight:600}
.web-login-card button[type=submit]{display:flex;align-items:center;justify-content:center;gap:12px;background:#166b5d;min-height:48px;padding:14px 20px;margin-top:25px;border-radius:9px;box-shadow:0 3px 5px #143e3410;font-size:14px;transition:background .15s,transform .15s}.web-login-card button[type=submit]:hover:not(:disabled){background:#105749;transform:translateY(-1px)}.web-login-card button[type=submit]:after{content:"";width:7px;height:7px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;transform:rotate(45deg)}.web-login-card button:focus-visible,.web-login-card a:focus-visible,.web-login-card summary:focus-visible{outline:3px solid #57b69d;outline-offset:3px}.web-login-card button:disabled{cursor:wait;opacity:.65}
.web-login-card [aria-busy=true] button[type=submit]:after{content:"";width:14px;height:14px;border:2px solid #ffffff66;border-top-color:white;border-radius:50%;animation:auth-spin .8s linear infinite}@keyframes auth-spin{to{transform:rotate(360deg)}}
.web-login-card .web-help{font-size:12px;color:#667d77;line-height:1.6;margin:9px 0 0}.auth-divider{height:1px;background:#dce5e0;margin:28px 0}.web-login-card a,.web-login-card .web-link-button{color:#166b5d;font-weight:600;text-underline-offset:3px}.web-account-footer{border-top:1px solid #dce5e0;padding-top:22px;margin:26px 0 0!important;text-align:center}.web-login-card .auth-help-link{font-size:12px;font-weight:400;color:#647c74}.auth-bottom{display:flex;justify-content:space-between;gap:14px;margin-top:28px;font-size:11px;color:#71857d}
#webMessage:empty{display:none}#webMessage{padding:12px 14px;background:#e6eeea;border:1px solid #c9dbd1;border-radius:8px;font-size:13px;color:#254e41;overflow-wrap:anywhere}#webMessage[data-kind=error]{background:#fff0ed;border-color:#e6c5ba;color:#9b3e26}
.web-employee-list{gap:9px;grid-template-columns:repeat(2,minmax(0,1fr));max-height:330px;overflow:auto;padding:3px}.web-login-card label.web-employee{position:relative;gap:12px;padding:15px 14px;border:1px solid #d2ddd7;background:#fff;border-radius:10px;font-weight:600;min-width:0;margin:0;transition:border-color .15s,background .15s}.web-employee input{position:absolute;opacity:0;width:1px;height:1px}.web-employee:has(input:focus-visible){outline:3px solid #57b69d;outline-offset:0}.web-employee:has(input:checked){background:#e3f0e8;border-color:#429782!important}.web-employee:has(input:checked):after{content:"✓";color:#166b5d;margin-left:auto;flex-shrink:0}.employee-avatar{width:38px;height:38px;display:grid;place-items:center;background:#edf2ee;color:#547369;border-radius:50%;font-size:13px;flex-shrink:0}.web-employee:has(input:checked) .employee-avatar{background:#c3e1cf;color:#205d48}.employee-name{overflow-wrap:anywhere;min-width:0}.web-employee small{font-weight:400;font-size:11px;margin-top:4px;color:#6a7f77}.web-login-card #pinLabel input{font-size:21px;letter-spacing:9px;font-variant-numeric:tabular-nums}.web-login-card details{padding-top:21px;margin-top:26px}.web-login-card summary{font-size:13px;color:#345f51}.web-login-card label.web-check{font-size:12px;align-items:flex-start;gap:8px;font-weight:400}.web-check input{accent-color:#166b5d;margin-top:2px}.web-form-grid{gap:0 18px}.auth-stage{font-size:11px;font-weight:600;letter-spacing:1px;color:#819e95;margin:0 0 20px;text-transform:uppercase}.auth-stage strong{color:#286d59}
@media(min-width:1600px){.auth-aside{padding-top:64px;padding-bottom:64px}.auth-main{padding:64px}.web-login-card h1{font-size:36px}}
@media(max-width:1050px){.auth-shell{grid-template-columns:36% 1fr}.auth-aside{padding:36px 28px}.auth-aside h2{font-size:34px}.auth-main{padding:36px 26px}.auth-steps{gap:6px}.auth-steps span{padding:6px 8px;font-size:10px}}
@media(max-width:760px){.auth-shell{display:block}.auth-aside{display:none}.auth-main{min-height:100dvh;box-sizing:border-box;padding:28px 24px}.auth-mobile-logo{display:block;width:132px!important;height:auto;margin-bottom:36px}.web-login-card.web-register-card{width:100%;padding:0}.web-login-card h1{font-size:29px}.auth-bottom{margin-top:24px}.auth-card-eyebrow{margin-bottom:18px!important}.web-form-grid{grid-template-columns:1fr}.web-employee-list{max-height:300px}.web-account-footer{font-size:13px}.web-login-card button.auth-reveal{font-size:12px}}
@media(max-width:400px){.web-employee-list{grid-template-columns:1fr}.auth-main{padding:24px 18px}}
@media(prefers-reduced-motion:reduce){.web-login-card *{transition:none!important;animation:none!important}}

/* The same warm neutral/orange identity as the compact public website. */
.web-login{background:#f8f6f2;color:#333133}.auth-aside{background:#29292c;color:#f8f5f1}.auth-kicker{color:#ffba94}.auth-aside h2 em{color:#ffa474}.auth-aside p{color:#d1cbc5}.auth-steps span{color:#e0d9d2;border-color:#73655b}
.web-login-card h1{color:#303033}.web-login-card p,.web-login-card .web-help{color:#736b65}.auth-card-eyebrow{color:#86553b!important}.auth-card-eyebrow:before{background:#e44a05}
.web-login-card label{color:#48413c}.web-login-card input:not([type=radio]):not([type=checkbox]){border-color:#d8d0c7;color:#393430}.web-login-card input:focus{border-color:#d25217;box-shadow:0 0 0 3px #d252171c}
.web-login-card button[type=submit]{background:#c64009;color:#fff}.web-login-card button[type=submit]:hover:not(:disabled){background:#a83406}.web-login-card a,.web-login-card .web-link-button{color:#ac3b08}.web-login-card button.auth-reveal{color:#695347}.web-login-card button:focus-visible,.web-login-card a:focus-visible,.web-login-card summary:focus-visible{outline-color:#db4a0d}
.auth-divider,.web-account-footer{border-color:#ded7cf}.auth-divider{background:#ded7cf}.auth-stage strong{color:#a43b0c}.web-employee:has(input:checked){background:#fff0e5;border-color:#cf723f!important}.web-employee:has(input:checked):after{color:#b03b05}.web-employee:has(input:checked) .employee-avatar{background:#f5d7c4;color:#803d17}.web-employee:has(input:focus-visible){outline-color:#db4a0d}.employee-avatar{background:#eee9e3;color:#796656}.web-check input{accent-color:#c64009}
