.security-panel { margin-top: 24px; }
.security-summary { display: flex; flex-wrap: wrap; gap: 10px 28px; margin: 18px 0; padding: 15px 17px; border-radius: 10px; background: var(--soft); font-size: 12px; }
.trusted-devices { display: grid; gap: 10px; margin-top: 20px; }
.trusted-devices > div { display: flex; align-items: center; gap: 14px; padding: 13px 0; border-top: 1px solid var(--line); }
.trusted-devices span { min-width: 0; flex: 1; }
.trusted-devices strong, .trusted-devices small { display: block; overflow: hidden; text-overflow: ellipsis; }
.trusted-devices small { margin-top: 4px; }
.recovery-codes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 18px 0; }
.recovery-codes code { padding: 10px 12px; border: 1px solid var(--line); border-radius: 8px; background: var(--soft); text-align: center; letter-spacing: .08em; font-size: 13px; }
.mfa-enroll-layout { display: grid; grid-template-columns: minmax(220px, 280px) minmax(260px, 1fr); gap: 28px; align-items: center; }
.mfa-qr-frame { display: grid; justify-items: center; gap: 10px; padding: 16px; border: 1px solid var(--line); border-radius: 16px; background: #fff; text-align: center; }
.mfa-qr { display: grid; place-items: center; width: 100%; max-width: 248px; aspect-ratio: 1; background: #fff; }
.mfa-qr svg { display: block; width: 100%; height: 100%; shape-rendering: crispEdges; }
.mfa-enroll-fields { min-width: 0; }
.mfa-manual { margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--line); }
.mfa-manual summary { cursor: pointer; color: var(--accent); font-weight: 700; }
.mfa-manual .field { margin: 16px 0 0; }
.admin-unlock-panel { max-width: 560px; margin: 0 auto; }
.admin-unlock-panel h2 { margin: 8px 0 10px; }
.admin-unlock-panel form { margin-top: 24px; }
.idle-policy-form { margin-top: 26px; padding-top: 22px; border-top: 1px solid var(--line); }
.idle-policy-form h3 { margin: 0 0 14px; font-size: 16px; }
.idle-policy-form .muted { margin: 0 0 16px; }
@media (max-width: 600px) { .recovery-codes { grid-template-columns: 1fr; } .trusted-devices > div { align-items: flex-start; } .mfa-enroll-layout { grid-template-columns: 1fr; gap: 20px; } .mfa-qr { max-width: 220px; } }
