/* ABOUTME: Styles the branded EXILE access shell using the accepted local palette and typography. */
/* ABOUTME: Scopes every selector to access elements so analytical component styles remain unchanged. */
.access-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 32px;border-bottom:1px solid var(--border);background:var(--surface)}
.access-brand{display:inline-flex;align-items:center;min-width:44px;min-height:53px}
.access-brand img{display:block}
.access-account{display:flex;align-items:center;justify-content:flex-end;gap:18px;flex-wrap:wrap;min-width:0;font:12px/1.8 var(--mono);color:var(--dim);overflow-wrap:anywhere}
.access-identity{display:grid;gap:3px}
.access-account a{display:inline-flex;align-items:center;min-height:44px;font:14px/1.6 var(--mono)}
.access-main{max-width:680px;padding:64px 24px 80px;margin:0 auto}
.access-card{background:var(--surface);border:1px solid var(--border);border-top:2px solid var(--blue);border-radius:6px;padding:36px;overflow-wrap:anywhere}
.access-card h1{font-size:32px;margin:8px 0 20px;line-height:1.3}
.access-card p{font-size:16px;line-height:1.8;color:var(--dim)}
.access-card .access-eyebrow{font:12px/1.8 var(--mono);letter-spacing:1.5px;text-transform:uppercase;color:var(--accent)}
.access-form{display:grid;gap:20px;margin-top:28px}
.access-form label{display:grid;gap:8px;font:14px/1.7 var(--mono)}
.access-form input{width:100%;min-width:0;font-size:16px;min-height:48px}
.access-form button,.access-actions button,.access-actions a{min-height:48px;font:14px/1.7 var(--mono)}
.access-form button{color:var(--text);background:var(--surface-3);border-color:var(--accent)}
.access-form button:disabled{color:var(--dim);border-color:var(--border)}
.access-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-top:24px}
.access-actions a{display:inline-flex;align-items:center}
.access-card .access-help{font:12px/1.8 var(--mono);margin-top:24px}
.access-card .access-message{font-size:14px;min-height:24px;margin-top:18px}
.access-message[data-tone=error]{border-left:2px solid var(--yellow);padding-left:12px}
.access-notice{padding:14px 32px;border-bottom:1px solid var(--border);background:var(--surface-2);font:12px/1.8 var(--mono);color:var(--dim);overflow-wrap:anywhere}
.access-noscript{margin:24px;font-size:16px}
.access-header a:focus-visible,.access-card a:focus-visible,.access-card button:focus-visible,.access-card input:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
@media(max-width:650px){.access-header{padding:16px;gap:16px;align-items:flex-start;flex-direction:column}.access-brand img{width:112px;height:42px}.access-account{justify-content:flex-start;width:100%;gap:12px}.access-main{padding:28px 16px 48px}.access-card{padding:24px 20px}.access-card h1{font-size:28px}.access-notice{padding:12px 16px}}
