.bs-account-manager { border: 1px solid #e2e2e2; border-radius: 8px; padding: 16px; }
.bs-am-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; }
.bs-account-manager .bs-am-prefs { background:#f8fafc; border:1px solid #e6eef8; border-radius:8px; padding:14px; margin-bottom:12px; max-width:820px; margin-left:auto; margin-right:auto }
.bs-account-manager .bs-am-row { display:grid; grid-template-columns: 170px 1fr; align-items:center; gap:12px; margin:12px 0 }
.bs-account-manager .bs-am-row > label { text-align:right; color:#555 }
.bs-account-manager .bs-am-row > input, .bs-account-manager .bs-am-row > select, .bs-account-manager .bs-am-row > textarea { width:100%; box-sizing:border-box }
.bs-account-manager input[type="text"],
.bs-account-manager input[type="email"],
.bs-account-manager input[type="password"],
.bs-account-manager input[type="date"],
.bs-account-manager input[type="time"],
.bs-account-manager select,
.bs-account-manager textarea { width:100%; box-sizing:border-box; min-height:34px }
.bs-account-manager input, .bs-account-manager select { min-height:34px; padding:6px 8px }
.bs-account-manager .bs-am-actions { display:flex; gap:10px; justify-content:flex-end; margin-top:12px }
.bs-account-manager .am-acc-save { background:#2271b1; color:#fff; border:0 }
.bs-account-manager .bs-am-status { color:#2e7d32; margin-top:8px }
.bs-account-manager .bs-am-subhead { font-weight:600; color:#222; margin:6px 0 2px }
.bs-account-manager select.bs-empty { color:#888 }
.bs-account-manager input:focus, .bs-account-manager select:focus, .bs-account-manager button:focus, .bs-account-manager textarea:focus { outline:2px solid #5b73ff; outline-offset:1px }
.bs-account-manager .bs-am-subhead ~ .bs-am-row { margin-top:16px }

/* Avatar */
.bs-account-manager .am-acc-avatar { display:flex; align-items:center; gap:12px }
.bs-account-manager .am-acc-avatar img { width:48px; height:48px; border-radius:50%; object-fit:cover; border:1px solid #e2e2e2; background:#fff }
.bs-account-manager .bs-am-help { color:#666; font-size:12px; margin-top:4px }
.bs-account-manager .bs-verify-note { color:#8a6d3b; background:#fff8e1; border:1px solid #ffe6a1; padding:8px; border-radius:6px; display:inline-block }
.bs-am-addbar { display: flex; justify-content: flex-end; margin: 8px 0 12px; }
.bs-am-list { display: grid; grid-template-columns: 1fr; gap: 12px; }
.bs-am-card { border: 1px solid #eee; border-radius: 8px; padding: 12px; background: #fafafa; }
.bs-am-prefs { border: 1px solid #eee; border-radius: 8px; padding: 12px; background: #fff; margin-bottom: 12px; }
.bs-am-row { display: flex; flex-direction: column; gap: 4px; margin-bottom: 8px; }
.bs-am-row input, .bs-am-row select, .bs-am-row textarea { padding: 8px; border: 1px solid #ddd; border-radius: 6px; }
.bs-am-actions { display: flex; gap: 8px; justify-content: flex-end; }
.bs-am-actions button, .bs-am-addbar .bs-am-add { background: #2271b1; color: #fff; border: none; border-radius: 6px; padding: 8px 12px; cursor: pointer; }
.bs-am-actions button:hover, .bs-am-addbar .bs-am-add:hover { background: #135e96; }
.bs-am-status { margin-top: 8px; min-height: 1em; }
.bs-auth-card{max-width:480px;margin:24px auto;padding:16px;border:1px solid #e6e6e6;border-radius:8px;background:#fff}
.bs-auth-card h3{margin-top:0;margin-bottom:8px;color:#1a2b49}
.bs-auth-card form p{margin:0 0 12px}
.bs-auth-card form label{display:block;margin-bottom:6px;font-weight:600;color:#1a2b49}
.bs-auth-card form input[type="text"],
.bs-auth-card form input[type="password"],
.bs-auth-card form input[type="email"]{width:100%;max-width:100%;box-sizing:border-box}
.bs-auth-card form .submit .button-primary{width:100%}

/* Add Child Modal */
.bs-account-manager .bs-am-modal { position: fixed; inset: 0; display: none; align-items: center; justify-content: center; z-index: 10000; }
.bs-account-manager .bs-am-modal.show { display: flex; }
.bs-account-manager .bs-am-backdrop { position: absolute; inset: 0; background: rgba(0,0,0,0.5); }
.bs-account-manager .bs-am-dialog { position: relative; background: #fff; border-radius: 8px; width: 90%; max-width: 480px; box-shadow: 0 10px 30px rgba(0,0,0,0.2); z-index: 1; }

@media (max-width: 600px) {
  .bs-account-manager .bs-am-row { grid-template-columns: 1fr; }
  .bs-account-manager .bs-am-row > label { text-align:left; }
}

.bs-account-manager .bs-am-divider { height:1px; background:#e5e7eb; max-width:820px; margin:16px auto }
.bs-account-manager .bs-am-header { display: flex; align-items: center; justify-content: space-between; padding: 12px 16px; border-bottom: 1px solid #eee; }
.bs-account-manager .bs-am-body { padding: 16px; }
.bs-account-manager .bs-am-footer { padding: 12px 16px; border-top: 1px solid #eee; text-align: right; }
.bs-account-manager .bs-am-close, .bs-account-manager .bs-am-save, .bs-account-manager .bs-am-cancel { background: #2271b1; color: #fff; border: none; border-radius: 6px; padding: 8px 12px; cursor: pointer; }
.bs-account-manager .bs-am-close { background: transparent; color: #333; font-size: 18px; line-height: 1; padding: 0 8px; }
.bs-account-manager .bs-am-cancel { background: #999; }

