.flash { padding: 0.75rem 1rem; border-radius: 6px; margin-bottom: 1rem; }
.flash-success { background: #e8f7ef; color: #0b6b32; }
.flash-error { background: #fdecea; color: #b12a1c; }
.flash-info { background: #e8f1fb; color: #1a4fb5; }

.form-error { color: #b12a1c; font-weight: 600; }

.progress { width: 100%; }

.tags-line { display: flex; flex-wrap: wrap; gap: 0.35rem; }
.tag-chip { background: #eef1f5; padding: 0.15rem 0.55rem; border-radius: 999px; font-size: 0.9rem; }

.avatar { width: 64px; height: 64px; object-fit: cover; border-radius: 50%; }
.avatar-large { width: 160px; height: 160px; object-fit: cover; border-radius: 12px; }

.cards article { display: flex; flex-direction: column; gap: 0.25rem; }

.filter-form details { margin-bottom: 0.5rem; }
.tags-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 0.35rem; }

.inline-form { display: inline; margin-left: 0.5rem; }

.pagination { display: flex; align-items: center; gap: 1rem; margin-top: 1rem; }

.muted { color: #6b7280; }

.stack { display: grid; gap: 1rem; }

.grid.cards article img { max-width: 100%; }
