.loginwp-form { max-width: 420px; margin: 1rem 0; }
.loginwp-form p { margin-bottom: .75rem; }
.loginwp-tabs a { margin-right: .5rem; text-decoration: none; padding: .25rem .5rem; border-radius: 3px; }
.loginwp-tabs a.active { background: #2271b1; color: #fff; }
.loginwp-user { padding: .5rem 0; border-bottom: 1px solid #eee; }
.loginwp-pagination a { margin-right: .25rem; }
.loginwp-pagination a.active { font-weight: 700; }

/* Directory bulk actions */
.loginwp-directory-bulk select { padding:4px 6px; }
.loginwp-directory-bulk .loginwp-user { border:1px solid #e2e8f0; padding:6px 10px; margin:0 0 6px; border-radius:6px; background:#fff; }
.loginwp-directory-bulk .loginwp-user:hover { background:#f5f7fa; }

/* Inline field error tooltip */
.loginwp-error { display:block; font-size:12px; color:#b32d2e; margin-top:2px; position:relative; }
.loginwp-error:not(:empty){ background:#fff5f5; padding:4px 6px; border:1px solid #b32d2e; border-radius:3px; }
.loginwp-error:not(:empty):before { content:""; position:absolute; left:8px; top:-5px; width:0; height:0; border-left:5px solid transparent; border-right:5px solid transparent; border-bottom:5px solid #b32d2e; }
.loginwp-form .loginwp-invalid { border-color:#b32d2e !important; }

/* Radio group title + first option same line */
.loginwp-radio-stack { margin-bottom:.75rem; }
.loginwp-radio-stack .loginwp-radio-title { font-weight:600; display:inline-block; margin-right:10px; }
.loginwp-radio-stack input[type=radio] { margin-left:0; }
/* New radio layout */
.loginwp-radio-group { margin-bottom:1rem; }
.loginwp-radio-group .loginwp-radio-title { font-weight:600; display:block; margin:0 0 4px; }
.loginwp-radio-option { display:block; line-height:1.3; margin:0 0 4px; white-space:normal; }
.loginwp-radio-option input { margin-right:6px; vertical-align:middle; }
.loginwp-radio-option span { vertical-align:middle; }
/* Inline radio head layout */
.loginwp-radio-inline-group { margin:1rem 0; }
.loginwp-radio-inline-group .loginwp-radio-head { display:flex; flex-wrap:wrap; align-items:flex-start; gap:14px; }
.loginwp-radio-inline-group .loginwp-radio-title { font-weight:600; display:inline-flex; align-items:flex-start; }
.loginwp-radio-inline-group .loginwp-radio-option { display:inline-flex; align-items:flex-start; gap:6px; margin:0 18px 4px 0; cursor:pointer; }
.loginwp-radio-inline-group .loginwp-radio-option.first { margin-right:0; }
.loginwp-radio-inline-group .loginwp-radio-option input { margin-top:2px; }
.loginwp-radio-inline-group .loginwp-radio-more { margin:4px 0 0 0; display:flex; flex-wrap:wrap; }

/* Unified primary button style */
.loginwp-btn { background:#2271b1; color:#fff; border:0; padding:10px 20px; border-radius:10px; font-weight:600; cursor:pointer; line-height:1.2; font-family:inherit; font-size:15px; display:inline-flex; align-items:center; gap:6px; text-decoration:none !important; box-shadow:0 1px 2px rgba(0,0,0,0.06); transition:background .18s, box-shadow .18s; }
.loginwp-btn:hover, .loginwp-btn:focus { background:#1a5d90; color:#fff; box-shadow:0 2px 5px rgba(0,0,0,0.12); outline:none; }
.loginwp-btn:active { transform:translateY(1px); box-shadow:0 1px 2px rgba(0,0,0,0.08); }
.loginwp-btn.secondary { background:#6c757d; }
.loginwp-btn.secondary:hover, .loginwp-btn.secondary:focus { background:#555e64; }
.loginwp-btn.danger { background:#c13524; }
.loginwp-btn.danger:hover, .loginwp-btn.danger:focus { background:#a52d1f; }
.loginwp-btn[disabled], .loginwp-btn.disabled { opacity:.55; cursor:not-allowed; box-shadow:none; }
.loginwp-btn.loginwp-btn-disabled { opacity:.55; cursor:not-allowed; filter:grayscale(.2); box-shadow:none; }

/* Tab buttons reuse baseline with lighter style */
.loginwp-tab { background:#f5f7fa; border:1px solid #dcdcdc; padding:8px 14px; border-radius:10px; cursor:pointer; font-size:14px; font-weight:600; color:#333; }
.loginwp-tab.active { background:#2271b1; color:#fff; border-color:#1a5d90; }

/* Reusable card container for forms/pages */
.loginwp-card { max-width: 720px; margin: 20px auto; padding: 22px 24px; background: #fff; border: 1px solid #e2e8f0; border-radius: 14px; box-shadow: 0 2px 10px rgba(0,0,0,0.04); }

