.auth-page { min-height:100vh; display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg,#0f1629,#1a1f3a); }
.auth-box { background:#fff; border-radius:16px; padding:40px; width:400px; box-shadow:0 20px 60px rgba(0,0,0,.3); }
.auth-brand { text-align:center; font-size:20px; font-weight:700; color:#0f172a; margin-bottom:24px; }
.auth-tabs { display:flex; border-bottom:2px solid #e2e8f0; margin-bottom:24px; }
.auth-tabs button { flex:1; padding:10px; background:none; border:none; font-size:15px; color:#94a3b8; cursor:pointer; border-bottom:2px solid transparent; margin-bottom:-2px; }
.auth-tabs button.active { color:#3b82f6; border-bottom-color:#3b82f6; font-weight:600; }
.auth-form input { width:100%; padding:12px 14px; border:1px solid #e2e8f0; border-radius:8px; margin-bottom:12px; font-size:14px; }
.auth-form input:focus { outline:none; border-color:#3b82f6; }
.auth-btn { width:100%; padding:12px; background:#3b82f6; color:#fff; border:none; border-radius:8px; font-size:15px; font-weight:600; cursor:pointer; }
.auth-btn:hover { background:#2563eb; }
.auth-error { color:#dc2626; font-size:13px; margin-top:8px; text-align:center; }
.auth-hint { text-align:center; color:#94a3b8; font-size:12px; margin-top:12px; }
.no-permission { text-align:center; padding:80px 20px; }
.np-icon { font-size:64px; margin-bottom:16px; }
.no-permission h2 { font-size:22px; color:#0f172a; margin-bottom:8px; }
.no-permission p { color:#64748b; }
