.owner-security-card { margin-top: 16px; border: 1px solid rgba(39, 100, 74, .18); }
.owner-security-card .security-account { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 16px 0; }
.owner-security-card .security-account > div { padding: 14px; border-radius: 14px; background: var(--soft, #f5f8f5); }
.owner-security-card .security-account small, .owner-security-card .security-account strong { display: block; }
.owner-security-card .security-account small { color: var(--muted); margin-bottom: 4px; }
.security-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.security-actions .danger-btn { margin-left: auto; }
.security-compromised { margin-top: 14px; padding: 14px; border-radius: 14px; background: #fff6e5; border: 1px solid #ead3a5; }
.security-compromised strong, .security-compromised span { display: block; }
.security-compromised span { color: var(--muted); margin: 4px 0 10px; }
.security-requirements { margin: 8px 0 0; color: var(--muted); font-size: .9rem; line-height: 1.5; }
.security-strength { display: inline-flex; align-items: center; gap: 6px; margin-top: 7px; font-weight: 700; }
.security-strength::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #bd4c45; }
.security-strength[data-level="acceptable"]::before { background: #c58a22; }
.security-strength[data-level="strong"]::before { background: #2f7b58; }
.security-message { padding: 14px; border-radius: 14px; background: #eef7f1; border: 1px solid #c7dfcf; margin-bottom: 14px; }
.security-message.error { background: #fff0ef; border-color: #e6c1bd; }
.security-message strong, .security-message span { display: block; }
.security-message span { margin-top: 4px; color: var(--muted); }
.security-forgot-link { width: 100%; margin-top: 10px; border: 0; background: transparent; color: var(--primary, #27644a); font-weight: 800; cursor: pointer; }
.security-recovery-fallback { display: none; }
.security-recovery-mode .app-shell, .security-recovery-mode .modal-layer, .security-recovery-mode .toast { display: none !important; }
.security-recovery-mode .security-recovery-fallback { display: block; min-height: 100vh; background: #f4f7f3; padding: 44px 18px; }
.security-recovery-mode .security-recovery-fallback > .security-reset-shell { max-width: 620px; margin-left: auto; margin-right: auto; }
.security-reset-shell { margin-top: 8vh; }
.security-reset-shell .brand-mark { margin-bottom: 18px; text-align: center; font-weight: 900; color: #245d47; }
@media (max-width: 680px) {
  .owner-security-card .security-account { grid-template-columns: 1fr; }
  .security-actions > button { width: 100%; }
  .security-actions .danger-btn { margin-left: 0; }
}
