/* Profili da approvare (views/approvals.js). */
.apv-search input { min-width: min(280px, 100%); }
.apv-bulk { display: flex; flex-wrap: wrap; gap: 0.6rem 1rem; align-items: center; padding: 0.6rem 0.9rem; border-radius: 12px; background: var(--surface-2, #f7f5f0); }
.apv-check { display: inline-flex; gap: 0.4rem; align-items: center; font-weight: 600; }
.apv-list { display: grid; gap: 0.8rem; }
.apv-card { display: grid; grid-template-columns: auto 88px minmax(0, 1fr); gap: 0.9rem; align-items: start; }
.apv-card:not(:has(.apv-select)) { grid-template-columns: 88px minmax(0, 1fr); }
.apv-select { padding-top: 0.3rem; }
.apv-select input { width: 1.15rem; height: 1.15rem; }
.apv-cover { width: 88px; height: 88px; padding: 0; border: 0; border-radius: 14px; overflow: hidden; background: #f1eee7; cursor: zoom-in; }
.apv-cover img { width: 100%; height: 100%; object-fit: cover; display: block; }
.apv-cover-empty { display: grid; place-items: center; width: 100%; height: 100%; font-size: 1.6rem; font-weight: 800; color: #8a8f9c; }
.apv-main { min-width: 0; display: grid; gap: 0.35rem; }
.apv-head { display: flex; flex-wrap: wrap; gap: 0.35rem 0.5rem; align-items: center; }
.apv-nick { font-size: 1.05rem; overflow-wrap: anywhere; }
.apv-bio { margin: 0; line-height: 1.45; overflow-wrap: anywhere; }
.apv-bio-full { white-space: pre-line; overflow-wrap: anywhere; line-height: 1.5; }
.apv-note { margin: 0; padding: 0.4rem 0.6rem; border-radius: 8px; background: #fff8e6; }
.apv-actions { display: flex; flex-wrap: wrap; gap: 0.4rem; margin-top: 0.25rem; }
.apv-photos { display: grid; gap: 0.5rem; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); }
.apv-photos a { position: relative; display: block; aspect-ratio: 3 / 4; border-radius: 12px; overflow: hidden; background: #f1eee7; }
.apv-photos img { width: 100%; height: 100%; object-fit: cover; display: block; }
.apv-photos .badge { position: absolute; left: 0.4rem; bottom: 0.4rem; }
.apv-taxes { display: grid; gap: 0.5rem; }
.apv-tax small { display: block; color: var(--muted, #6b6f7c); font-weight: 700; margin-bottom: 0.2rem; text-transform: capitalize; }
.apv-history { margin: 0; padding-left: 1.1rem; display: grid; gap: 0.25rem; font-size: 0.88rem; }
@media (max-width: 560px) {
  .apv-card, .apv-card:not(:has(.apv-select)) { grid-template-columns: 64px minmax(0, 1fr); }
  .apv-select { grid-column: 1 / -1; padding: 0; }
  .apv-cover { width: 64px; height: 64px; }
  .apv-actions .btn { flex: 1 1 auto; justify-content: center; }
}
