@use '@/styles/variables' as *; .notifications { display: flex; flex-direction: column; gap: 24px; &__header { display: flex; justify-content: space-between; align-items: center; } &__title { font-size: 24px; font-weight: 600; color: $text-primary; } &__actions { display: flex; gap: 12px; } // Tab 导航 &__tabs { display: flex; gap: 4px; background: #f3f4f6; padding: 4px; border-radius: 10px; width: fit-content; } &__tab { padding: 10px 20px; font-size: 14px; font-weight: 500; color: $text-secondary; background: transparent; border: none; border-radius: 8px; cursor: pointer; transition: all 0.2s; &:hover { color: $text-primary; } &--active { background: white; color: $primary-color; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); } } &__card { background: $card-background; border-radius: 12px; padding: 24px; box-shadow: $shadow-base; } &__filters { display: flex; gap: 12px; margin-bottom: 20px; } &__select { padding: 8px 12px; border: 1px solid $border-color; border-radius: 8px; font-size: 14px; background: white; min-width: 140px; &:focus { outline: none; border-color: $primary-color; } } &__list { display: flex; flex-direction: column; gap: 16px; } &__loading, &__empty, &__error { display: flex; justify-content: center; align-items: center; gap: 12px; padding: 60px 20px; color: $text-secondary; font-size: 14px; } &__error { color: $error-color; } &__item { background: white; border: 1px solid $border-color; border-radius: 10px; padding: 16px 20px; transition: all 0.2s; &:hover { box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08); } &--disabled { opacity: 0.6; background: #fafafa; } } &__itemHeader { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; } &__itemMeta { display: flex; gap: 8px; align-items: center; } &__tag { display: inline-block; padding: 2px 8px; border-radius: 4px; font-size: 12px; font-weight: 500; &--blue { background: #e6f4ff; color: #1677ff; } &--green { background: #f6ffed; color: #52c41a; } &--yellow { background: #fffbe6; color: #faad14; } &--purple { background: #f9f0ff; color: #722ed1; } &--orange { background: #fff7e6; color: #fa8c16; } &--gray { background: #f5f5f5; color: #8c8c8c; } } &__priority, &__target { font-size: 12px; color: $text-secondary; padding: 2px 6px; background: #f5f5f5; border-radius: 4px; } &__disabled { font-size: 12px; color: $error-color; padding: 2px 6px; background: #fff1f0; border-radius: 4px; } &__itemActions { display: flex; gap: 8px; } &__actionBtn { padding: 4px 12px; font-size: 13px; color: $text-secondary; background: transparent; border: 1px solid $border-color; border-radius: 6px; cursor: pointer; transition: all 0.2s; &:hover { color: $primary-color; border-color: $primary-color; } &--danger { &:hover { color: $error-color; border-color: $error-color; } } } &__itemTitle { font-size: 16px; font-weight: 600; color: $text-primary; margin-bottom: 8px; } &__itemContent { font-size: 14px; color: $text-secondary; line-height: 1.6; margin-bottom: 12px; white-space: pre-wrap; } &__itemFooter { display: flex; gap: 20px; font-size: 12px; color: $text-disabled; } // 表单样式 &__form { display: flex; flex-direction: column; gap: 16px; } &__formRow { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; } &__formGroup { display: flex; flex-direction: column; gap: 6px; label { font-size: 14px; font-weight: 500; color: $text-primary; } input, select, textarea { padding: 10px 12px; border: 1px solid $border-color; border-radius: 8px; font-size: 14px; transition: border-color 0.2s; &:focus { outline: none; border-color: $primary-color; } &::placeholder { color: $text-disabled; } } textarea { resize: vertical; min-height: 100px; } } &__formHint { font-size: 12px; color: $text-disabled; } &__modalFooter { display: flex; justify-content: flex-end; gap: 12px; } // 标签选择器 &__tagSelector { border: 1px solid $border-color; border-radius: 8px; padding: 12px; max-height: 200px; overflow-y: auto; } &__tagList { display: flex; flex-wrap: wrap; gap: 8px; } &__tagOption { display: flex; align-items: center; gap: 6px; padding: 6px 12px; background: #f3f4f6; border-radius: 6px; font-size: 13px; cursor: pointer; transition: all 0.15s; input { width: 16px; height: 16px; cursor: pointer; } &:hover { background: #e5e7eb; } &--selected { background: #dbeafe; color: #1d4ed8; } } &__tagColor { width: 10px; height: 10px; border-radius: 3px; flex-shrink: 0; } // 用户ID输入 &__userIdsInput { font-family: monospace; font-size: 13px; line-height: 1.6; min-height: 80px; } &__targetHint { font-size: 12px; color: $text-disabled; margin-top: 4px; } }