/* Auth pages: login, register, verify, forgot, reset, logout (+ forms reused on /dashboard) */
.page-header { text-align: center; margin-bottom: 30px; }
.page-header .subtitle { color: #0ff; letter-spacing: 2px; text-transform: uppercase; font-size: 0.85em; margin-top: 10px; }

.auth-card { max-width: 520px; margin: 0 auto; }
.auth-form .form-group { margin-bottom: 18px; }
.auth-form label { text-transform: none; letter-spacing: 0.5px; }

.field-hint  { font-size: 0.8em; opacity: 0.65; margin-top: 6px; }
.field-error { font-size: 0.85em; color: #f44; margin-top: 6px; }
.field-status { font-size: 0.85em; min-height: 1.2em; margin-top: 6px; }
.field-status.ok  { color: #0f0; }
.field-status.bad { color: #f44; }
.form-group.has-error input { border-color: #f44; box-shadow: 0 0 10px rgba(255, 68, 68, 0.35); }

.form-check .check-label {
    display: flex; align-items: center; gap: 10px;
    text-transform: none; font-weight: normal; letter-spacing: 0; cursor: pointer;
}
.form-check input[type="checkbox"] { width: 18px; height: 18px; accent-color: #0f0; }

.form-actions { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; margin-top: 8px; }
.auth-link, .auth-switch a, .auth-legal a { color: #0ff; }
.auth-switch { margin-top: 20px; font-size: 0.9em; }
.auth-legal  { margin-top: 8px; font-size: 0.75em; opacity: 0.6; }

.btn-primary { background: rgba(0, 255, 0, 0.12); }
.btn-primary:hover { background: #0f0; color: #000; }
.btn-small { padding: 8px 16px; font-size: 0.8em; }
.btn-danger { border-color: #f44; color: #f44; }
.btn-danger:hover { background: #f44; color: #000; }

/* Honeypot: off-screen, not display:none (some bots skip hidden fields) */
.hp-field { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }

.inline-form { display: inline-block; margin: 6px 10px 0 0; }
