.rhPasskeys { color: #e5e7eb; font-family: system-ui, sans-serif; line-height: 1.55; }
.rhPasskeysPage { max-width: 760px; margin: 0 auto; padding: 28px 18px 48px; }
.rhPasskeys h1 { font-size: clamp(1.5rem, 4vw, 2rem); line-height: 1.2; }
.rhPasskeys h2 { font-size: 1.2rem; margin-top: 0; }
.rhPasskeys p { color: #b8c5d8; }
.rhPasskeys a { color: #93c5fd; }
.rhPasskeysPanel { padding: 24px; margin: 24px 0; border: 1px solid #304363; border-radius: 16px; background: #101c30; }
.rhPasskeys label { display: block; font-weight: 600; margin: 16px 0 6px; }
.rhPasskeys input { box-sizing: border-box; width: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid #536788; border-radius: 8px; background: #0b1220; color: #fff; font-size: 16px; }
.rhPasskeys button { min-height: 46px; padding: 11px 16px; border: 1px solid #619be8; border-radius: 9px; background: #204f89; color: white; cursor: pointer; font: inherit; font-weight: 650; }
.rhPasskeys form button { margin-top: 20px; width: 100%; }
.rhPasskeys button:disabled { opacity: .55; cursor: default; }
.rhPasskeys :focus-visible { outline: 3px solid #93c5fd; outline-offset: 3px; }
.rhPasskeys [data-passkey-status]:not(:empty) { padding: 12px; border-radius: 8px; border: 1px solid #536788; background: #17283e; color: #fff; }
.rhPasskeysList { list-style: none; margin: 0; padding: 0; }
.rhPasskeysList li { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 14px 0; border-bottom: 1px solid #304363; }
.rhPasskeysList li div { min-width: 0; overflow-wrap: anywhere; }
.rhPasskeysList span { display: block; color: #b8c5d8; font-size: .85rem; }
.rhPasskeysLogin { margin-top: 20px; border-top: 1px solid #536788; padding-top: 18px; text-align: center; }
.rhPasskeysLogin button { width: 100%; }
.rhPasskeysLogin p { font-size: .85rem; margin: 10px 0 0; }
@media (max-width: 480px) { .rhPasskeysPanel { padding: 18px; } .rhPasskeysList li { align-items: flex-start; flex-direction: column; } }
