/* Scoped account presentation; authentication and privacy handlers stay unchanged. */
#portal-tab-securite { --security-soft: var(--paper, #f7f4ee); min-width: 0; }
#portal-tab-securite .security-intro { display: flex; align-items: start; gap: 18px; padding: 24px; border-radius: 18px; color: #fff; background: var(--ink, #07111b); }
#portal-tab-securite .security-intro-icon { flex: 0 0 48px; height: 48px; display: grid; place-items: center; background: rgba(255,255,255,.1); border-radius: 14px; color: #ff9b40; }
#portal-tab-securite .security-intro .eyebrow { font-size: .65rem; margin: 0 0 8px; color: #ff9b40; }
#portal-tab-securite .security-intro h2 { margin: 0 0 8px; font-size: clamp(1.4rem, 2.5vw, 1.85rem); line-height: 1.2; }
#portal-tab-securite .security-intro p:last-child { margin: 0; font-size: .85rem; line-height: 1.6; color: #d1d9e0; }
#portal-tab-securite .security-section { margin-top: 28px; }
#portal-tab-securite .security-section-heading { margin-bottom: 16px; }
#portal-tab-securite h3 { margin: 0 0 6px; font-size: 1.1rem; line-height: 1.4; }
#portal-tab-securite .security-section-heading p { color: var(--muted); margin: 0; font-size: .85rem; }
#portal-tab-securite .security-overview { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; margin-bottom: 12px; }
#portal-tab-securite .security-cards-grid { gap: 12px; }
#portal-tab-securite .security-card, #portal-tab-securite .security-closure { display: grid; grid-template-columns: 42px minmax(0,1fr) minmax(160px, 230px); gap: 14px; align-items: center; padding: 18px; border: 1px solid var(--line); border-radius: 16px; background: var(--control-surface, #fff); }
#portal-tab-securite .security-card.security-info { grid-template-columns: 42px minmax(0,1fr); align-items: start; background: var(--security-soft); }
#portal-tab-securite .security-icon { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; color: var(--ink); background: var(--security-soft); font-size: initial; }
#portal-tab-securite .security-icon .es-icon, #portal-tab-securite .security-intro-icon .es-icon { color: inherit; }
#portal-tab-securite .security-info .security-icon { background: var(--control-surface, #fff); }
#portal-tab-securite .security-copy { min-width: 0; overflow-wrap: anywhere; }
#portal-tab-securite h4 { margin: 0 0 6px; font-size: .9rem; line-height: 1.4; }
#portal-tab-securite .security-copy p { margin: 0; font-size: .8rem; line-height: 1.6; color: var(--muted); }
#portal-tab-securite .security-copy small { display: block; margin-top: 6px; font-size: .72rem; line-height: 1.6; color: var(--muted); }
#portal-tab-securite .auth-provider-badge { margin-top: 10px; padding: 4px 9px; background: var(--control-surface, #fff); border: 1px solid var(--line); font-size: .7rem; font-weight: 600; }
#portal-tab-securite #sec-mfa-status[data-state="active"] { background: #f0fdf4; border-color: #bbf7d0; color: #166534; }
#portal-tab-securite #sec-mfa-status[data-state="inactive"] { background: #fff7ed; border-color: #fed7aa; color: #9a3412; }
#portal-tab-securite .security-mfa { border-color: #edc9a4; }
#portal-tab-securite .security-mfa .security-icon { background: #fff1e2; color: #a74400; }
#portal-tab-securite .security-card-actions { display: grid; gap: 8px; justify-items: stretch; }
#portal-tab-securite .security-card-actions button { min-height: 44px; width: 100%; padding: 10px 14px; font-size: .8rem; line-height: 1.45; white-space: normal; }
#portal-tab-securite button[hidden] { display: none; }
#portal-tab-securite button:focus-visible, #portal-tab-securite a:focus-visible { outline: 3px solid var(--orange); outline-offset: 3px; }
#portal-tab-securite .security-policy-link { display: inline-block; margin-top: 8px; color: var(--ink); font-size: .75rem; text-decoration: underline; text-underline-offset: 3px; }
#portal-tab-securite .security-session { background: var(--security-soft); }
#portal-tab-securite .security-closure { margin-top: 28px; background: #fff8f8; border-color: #f1d1d1; align-items: start; }
#portal-tab-securite .security-closure .security-icon { background: #fbe7e7; color: #b42318; }
#portal-tab-securite .security-danger-button { color: #b42318; border-color: #e8bcbc; box-shadow: none; }
#portal-tab-securite .security-danger-button:hover { background: #fbe7e7; border-color: #b42318; }
@media (max-width: 1200px) {
  #portal-tab-securite .security-card, #portal-tab-securite .security-closure { grid-template-columns: 42px minmax(0,1fr); align-items: start; }
  #portal-tab-securite .security-card-actions { grid-column: 2; justify-items: start; }
  #portal-tab-securite .security-card-actions button { width: auto; }
}
@media (max-width: 640px) {
  #portal-tab-securite { padding: 16px; }
  #portal-tab-securite .security-intro { padding: 18px; gap: 12px; }
  #portal-tab-securite .security-intro-icon { flex-basis: 38px; height: 38px; }
  #portal-tab-securite .security-overview { grid-template-columns: 1fr; }
  #portal-tab-securite .security-card, #portal-tab-securite .security-closure { padding: 16px; gap: 12px; }
  #portal-tab-securite .security-card-actions { grid-column: 1 / -1; justify-items: stretch; }
  #portal-tab-securite .security-card-actions button { width: 100%; }
}
#portal-tab-securite .security-card[hidden] { display: none; }
@media (prefers-reduced-motion: reduce) { #portal-tab-securite button { transition: none; animation: none; transform: none; } }
