/* Login composition; shared public tokens and shared action styles remain authoritative. */
html,body{min-width:280px;min-height:100%}
.login-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,470px);min-height:100dvh;width:100%}
.login-visual{display:grid;place-items:center;padding:45px;background:radial-gradient(ellipse at 60% 50%,#ffa3000d,transparent 65%);min-width:0}
.login-visual-copy{width:min(550px,100%)}.login-visual-copy>p{color:var(--ee-muted);font-size:11px;text-transform:uppercase;letter-spacing:1.5px}
.login-visual-copy h2{font-size:clamp(28px,3.3vw,48px);font-weight:250;line-height:1.2;text-transform:uppercase;letter-spacing:-1px;margin:20px 0 35px;overflow-wrap:anywhere}.login-visual-copy h2 span{color:var(--ee-orange)}
.login-card{min-width:0;padding:40px clamp(24px,4vw,50px);border-left:1px solid var(--ee-line);background:var(--ee-panel);display:flex;flex-direction:column;justify-content:center}
.login-brand{width:210px;height:65px;position:relative;overflow:hidden;margin-bottom:20px}.login-logo{position:absolute;max-width:none;width:285px;height:auto;left:-40px;top:-45px}
h1{margin:0;font-size:32px;line-height:1.2;font-weight:300;text-transform:uppercase;letter-spacing:.6px}
.login-intro{margin:10px 0 22px;color:var(--ee-muted);font-size:13px}
form{display:grid;gap:13px}label{display:grid;gap:6px;font-size:12px;font-weight:500;color:var(--ee-text)}
input{width:100%;min-height:44px;padding:11px 12px;border:1px solid var(--ee-line);border-radius:7px;background:var(--ee-bg);color:var(--ee-text);font:inherit}
input:focus{border-color:var(--ee-orange);outline:2px solid #ffa30055;outline-offset:2px}input:autofill{-webkit-text-fill-color:var(--ee-text);box-shadow:0 0 0 1000px var(--ee-bg) inset}
details{margin-top:20px;border-top:1px solid var(--ee-line);padding-top:12px}summary{color:var(--ee-orange);cursor:pointer;font-size:13px;min-height:44px;padding:9px 0}details form{margin-top:14px}
.message{margin:14px 0;color:var(--ee-muted);font-size:13px;overflow-wrap:anywhere}.message.error{padding:12px;border:1px solid #b84b4b;border-radius:7px;color:#ffd7d7;background:#36191d}
.legal-links{display:flex;flex-wrap:wrap;gap:14px;margin-top:15px;font-size:12px}.legal-links a{color:var(--ee-orange);min-height:44px;display:inline-flex;align-items:center}
.copyright{margin:12px 0;color:var(--ee-muted);font-size:10px}
@media(max-width:900px){.login-visual{padding:25px}.login-visual-copy h2{font-size:28px}.login-visual .ee-visual{min-height:320px}}
@media(max-width:760px){.login-shell{grid-template-columns:1fr}.login-visual{display:none}.login-card{border-left:0;border-top:3px solid var(--ee-orange);padding:25px 22px 35px}.login-brand{margin-bottom:18px}.login-card .app-action{min-height:44px!important}}
