#authGate{position:fixed;inset:0;z-index:30;display:grid;place-items:center;overflow:auto;padding:22px;background:var(--bg)}
.auth-card{width:min(440px,100%);padding:30px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}
.auth-brand{display:flex;align-items:center;gap:13px;margin-bottom:25px}.auth-brand img{width:54px;height:64px;object-fit:contain}.auth-brand strong{display:block;font-size:20px}.auth-brand span{color:var(--muted);font-size:13px}
.auth-card h1{font-size:25px;line-height:1.2;margin:0 0 7px}.auth-card p{margin:0 0 20px;color:var(--muted)}
.auth-form{display:grid;gap:13px}.auth-form label{display:grid;gap:5px;font-size:13px;font-weight:700;color:#53675f}.auth-form input,.auth-form select{width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink)}.auth-form input:focus,.auth-form select:focus{outline:2px solid #176b5240;border-color:#6caa8d}.auth-form button{min-height:46px;margin-top:4px}
.auth-error{min-height:20px;margin-top:12px;color:#a43c35;font-size:13px}.auth-hint{font-size:12px!important;margin:3px 0 0!important}
.access-list{display:grid;gap:8px}.access-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:9px;padding:10px 12px}.access-row strong{display:block}.access-row small{color:var(--muted)}
@media(max-width:500px){.auth-card{padding:23px}.access-row{align-items:flex-start;flex-direction:column}}
