.auth-gate{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:linear-gradient(160deg,#f8f9fa,#e8f0fe)}.auth-card{width:100%;max-width:420px;padding:32px;background:#fff;border-radius:16px;box-shadow:0 4px 24px rgba(0,0,0,.08)}.auth-brand{gap:12px;margin-bottom:16px}.auth-brand,.auth-logo{display:flex;align-items:center}.auth-logo{width:40px;height:40px;border-radius:10px;background:#1a73e8;color:#fff;font-weight:700;font-size:20px;justify-content:center}.auth-card h1{margin:0;font-size:22px;font-weight:600}.auth-intro{margin:0 0 16px;font-size:14px;line-height:1.5;color:#5f6368}.auth-warning{margin:0 0 16px;padding:10px 12px;font-size:13px;line-height:1.45;color:#c5221f;background:#fce8e6;border-radius:8px}.auth-warning code{font-size:12px;background:rgba(0,0,0,.06);padding:1px 4px;border-radius:4px}.auth-form .field{display:block;margin-bottom:16px}.auth-form .field span{display:block;margin-bottom:6px;font-size:13px;font-weight:500;color:#3c4043}.auth-form input{width:100%;padding:10px 12px;border:1px solid #dadce0;border-radius:8px;font:inherit;font-size:14px}.auth-form input:focus{outline:none;border-color:#1a73e8;box-shadow:0 0 0 3px rgba(26,115,232,.15)}.auth-form button{width:100%;padding:12px;border:none;border-radius:8px;background:#1a73e8;color:#fff;font:inherit;font-size:14px;font-weight:500;cursor:pointer}.auth-form button:hover:not(:disabled){background:#1557b0}.auth-form button:disabled{opacity:.65;cursor:not-allowed}.auth-status{margin:12px 0 0;font-size:13px;color:#5f6368}.auth-status.error{color:#c5221f}.auth-hint{margin:20px 0 0;padding-top:16px;border-top:1px solid #e8eaed;font-size:12px;line-height:1.45;color:#80868b}.auth-hint em{font-style:normal;color:#5f6368}