.login-page{min-height:100vh;display:grid;place-items:center;padding:32px 20px;background:#f8fafc}.login-panel{width:min(400px,100%);padding:40px 32px;border:1px solid #e2e8f0;border-radius:12px;background:#ffffff;box-shadow:0 4px 6px -1px rgba(0,0,0,.05),0 2px 4px -2px rgba(0,0,0,.05),0 0 0 1px rgba(0,0,0,.01)}.login-brand{display:flex;align-items:center;gap:10px;margin-bottom:32px;color:#475569}.login-brand img{height:36px;width:auto;-o-object-fit:contain;object-fit:contain}.login-brand span{font-size:12.5px;font-weight:700;color:#64748b;letter-spacing:.02em;border-left:1px solid #e2e8f0;padding-left:10px;height:14px;line-height:14px}.login-panel h1{margin:0 0 8px;color:#0f172a;font-size:20px;font-weight:700;letter-spacing:-.01em;line-height:1.3}.login-desc{margin:0 0 24px;color:#64748b;font-size:13px;font-weight:500;line-height:1.6}.login-error{margin:0 0 20px;padding:10px 14px;border:1px solid #fecaca;border-radius:6px;background:#fef2f2;color:#dc2626;font-size:12.5px;font-weight:500;line-height:1.4}.google-login-button{display:flex;align-items:center;justify-content:center;gap:10px;min-height:40px;border:1px solid #cbd5e1;border-radius:6px;color:#0f172a;background:#ffffff;text-decoration:none;font-size:13px;font-weight:600;transition:all .15s ease;box-shadow:0 1px 2px rgba(0,0,0,.02)}.google-login-button:hover{border-color:#94a3b8;background:#f8fafc}.google-login-button:focus{outline:none;border-color:#0f172a;box-shadow:0 0 0 2px rgba(15,23,42,.05)}.google-mark{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#ffffff;color:#0f172a;font-weight:900;font-size:13px;border:1px solid #e2e8f0}