.twofa-status { display: flex; align-items: center; gap: 8px; padding: 10px 14px; border-radius: 6px; font: 600 13px 'Rajdhani', sans-serif; letter-spacing: 0.5px; &--enabled { background: rgba(42, 158, 96, 0.12); border: 1px solid rgba(42, 158, 96, 0.3); color: #5ee89a; } &--disabled { background: rgba(255, 255, 255, 0.03); border: 1px solid rgba(255, 255, 255, 0.08); color: rgba(255, 255, 255, 0.4); } } .twofa-actions { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; &__form { margin: 0; } } .twofa-backup-meta { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; &__count { font: 500 13px 'Rajdhani', sans-serif; color: rgba(149, 207, 245, 0.55); display: flex; align-items: center; gap: 6px; } } .twofa-backup-reveal { background: rgba(246, 125, 82, 0.07); border: 1px solid rgba(246, 125, 82, 0.25); border-radius: 8px; padding: 18px 20px; &__warning { font: 600 12px 'Rajdhani', sans-serif; text-transform: uppercase; letter-spacing: 1.5px; color: #f6a060; margin: 0 0 14px; display: flex; align-items: center; gap: 7px; } &__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; } } .twofa-backup-code { display: block; text-align: center; padding: 7px 10px; background: rgba(0, 0, 0, 0.35); border: 1px solid rgba(246, 125, 82, 0.2); border-radius: 4px; font: 700 13px 'Courier New', monospace; letter-spacing: 2px; color: #e0c890; user-select: all; } $primary: #236f87; $primary-dark: #1a5a70; $danger: #c0392b; $warning: #d68910; $success: #388e3c; $text: #e0e0e0; $text-muted: #9e9e9e; $border: rgba(35, 111, 135, 0.3); $bg-card: #0a0e14; $bg-hover: rgba(35, 111, 135, 0.15); .passkey-manager { &__actions { margin: 20px 0; display: flex; gap: 10px; flex-wrap: wrap; } &__list { display: flex; flex-direction: column; gap: 15px; margin-top: 20px; } } .passkey-item { border: 1px solid $border; border-radius: 6px; padding: 15px; background: $bg-card; transition: all 0.3s ease; &:hover { background: $bg-hover; border-color: rgba(35, 111, 135, 0.5); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3); } &__header { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 12px; } &__info { flex: 1; } &__name { margin: 0 0 5px 0; font-size: 16px; font-weight: 600; color: $text; } &__meta { margin: 0; font-size: 13px; color: $text-muted; line-height: 1.5; } &__badges { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; } &__actions { display: flex; gap: 10px; justify-content: flex-end; padding-top: 12px; border-top: 1px solid $border; } } .badge { display: inline-flex; align-items: center; gap: 4px; padding: 4px 8px; border-radius: 4px; font-size: 12px; font-weight: 500; &--info { background: rgba(25, 118, 210, 0.2); color: #64b5f6; } &--success { background: rgba(56, 142, 60, 0.2); color: #81c784; } } .btn { display: inline-flex; align-items: center; gap: 6px; padding: 8px 16px; border: none; border-radius: 4px; font-size: 14px; font-weight: 500; cursor: pointer; transition: all 0.3s ease; text-decoration: none; &--primary { background: $primary; color: white; &:hover { background: $primary-dark; } } &--secondary { background: #546e7a; color: white; &:hover { background: #455a64; } } &--warning { background: $warning; color: white; &:hover { background: darken($warning, 10%); } } &--danger { background: $danger; color: white; &:hover { background: darken($danger, 10%); } } &--sm { padding: 6px 12px; font-size: 13px; } } .empty-state { text-align: center; padding: 40px 20px; border: 1px dashed $border; border-radius: 8px; &__icon { font-size: 48px; color: #455a64; margin-bottom: 15px; display: block; } &__text { font-size: 16px; color: $text; margin-bottom: 5px; } &__subtext { font-size: 13px; color: $text-muted; margin: 0; } } .registration-status { padding: 15px; border-radius: 4px; margin-top: 15px; font-size: 14px; &--success { background: rgba(56, 142, 60, 0.15); color: #81c784; border: 1px solid rgba(56, 142, 60, 0.3); } &--error { background: rgba(192, 57, 43, 0.15); color: #e57373; border: 1px solid rgba(192, 57, 43, 0.3); } &--loading { background: rgba(25, 118, 210, 0.15); color: #64b5f6; border: 1px solid rgba(25, 118, 210, 0.3); } }