/* VP3 Auth Pages — signin.html & signup.html — Clean White Theme */
*{margin:0;padding:0;box-sizing:border-box}
body.vp3-auth{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;background:#ffffff;color:#111;min-height:100vh;display:flex;flex-direction:column}
.auth-nav{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid #e5e5e5}
.auth-logo{font-size:20px;font-weight:900;color:#000;text-decoration:none;letter-spacing:-0.5px}
.auth-logo b{color:#000}
.auth-nav-link{font-size:12px;color:#666;text-decoration:none}
.auth-nav-link:hover{color:#000}
.auth-main{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 20px}
.auth-card{width:100%;max-width:420px;background:#fff;border:1px solid #e5e5e5;border-radius:16px;padding:40px 32px;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.auth-card h1{font-size:24px;font-weight:900;margin-bottom:8px;color:#000}
.auth-subtitle{font-size:13px;color:#666;margin-bottom:24px;line-height:1.5}
.auth-status{font-size:12px;padding:8px 12px;border-radius:8px;margin-bottom:16px;display:none}
.auth-status.error{display:block;background:#fef2f2;color:#dc2626;border:1px solid #fecaca}
.auth-status.success{display:block;background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}
.auth-form{display:flex;flex-direction:column;gap:16px}
.auth-field{display:flex;flex-direction:column;gap:6px}
.auth-field label{font-size:11px;font-weight:700;color:#555;text-transform:uppercase;letter-spacing:0.5px}
.auth-field input,.auth-field select{padding:10px 12px;background:#fff;border:1px solid #d4d4d4;border-radius:8px;color:#111;font-size:13px;outline:none;transition:border-color .2s;width:100%}
.auth-field input:focus,.auth-field select:focus{border-color:#000}
.auth-field input::placeholder{color:#aaa}
.auth-row{display:flex;gap:12px}
.auth-row .auth-field{flex:1}
.auth-btn{padding:12px;border:none;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;transition:all .2s;width:100%}
.auth-btn-primary{background:#000;color:#fff}
.auth-btn-primary:hover{opacity:.85;transform:translateY(-1px)}
.auth-btn-primary:disabled{opacity:.4;cursor:not-allowed;transform:none}
.auth-footer-text{text-align:center;font-size:12px;color:#888;margin-top:20px}
.auth-footer-text a{color:#000;text-decoration:none;font-weight:600}
.auth-page-footer{text-align:center;font-size:11px;color:#999;padding:16px}
.auth-divider{display:flex;align-items:center;gap:12px;margin:8px 0;color:#999;font-size:11px}
.auth-divider::before,.auth-divider::after{content:'';flex:1;height:1px;background:#e5e5e5}
#passwordStrength{height:3px;border-radius:2px;margin-top:4px;transition:all .3s}
#strengthText{font-size:10px;margin-top:2px}
#usernameStatus{min-height:20px;margin-top:4px}
/* Signup — agent preview */
.auth-hint{font-size:10px;color:#999;margin-top:2px}
.agent-preview{display:flex;align-items:center;gap:12px;padding:12px;background:#f5f5f5;border:1px solid #e5e5e5;border-radius:10px}
.agent-dot{width:36px;height:36px;border-radius:50%;background:#000;color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:900;flex-shrink:0}
.agent-info{flex:1}
.agent-name{font-size:13px;font-weight:700;color:#111}
.agent-role{font-size:10px;color:#888}
/* Signup — expand toggle */
.auth-expand{margin-top:4px}
.auth-expand-toggle{display:flex;align-items:center;gap:6px;background:none;border:none;color:#666;font-size:12px;cursor:pointer;padding:4px 0}
.auth-expand-toggle:hover{color:#000}
.auth-expand-toggle .arrow{font-size:8px;transition:transform .2s}
.auth-expand-toggle.open .arrow{transform:rotate(90deg)}
.auth-expand-body{display:none;margin-top:12px;display:flex;flex-direction:column;gap:12px}
.auth-expand-body:not(.open){display:none}
.auth-expand-body.open{display:flex}
.auth-status.info{display:block;background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}
