/* 食品留样台账样式 - v20260910 */
.sample-photo { width:80px; height:80px; object-fit:cover; border-radius:4px; border:1px solid var(--border-color); cursor:pointer; }
.sample-photo-empty { width:80px; height:80px; display:flex; align-items:center; justify-content:center; background:#fafafa; border:1px dashed var(--border-color); border-radius:4px; color:#bfbfbf; font-size:11px; }
.sample-status { display:inline-block; padding:2px 8px; border-radius:10px; font-size:11px; font-weight:600; }
.sample-status-pending { background:#fff7e6; color:#fa8c16; border:1px solid #ffd591; }
.sample-status-stored { background:#f0f5ff; color:#1677ff; border:1px solid #adc6ff; }
.sample-status-destroyed { background:#f6ffed; color:#52c41a; border:1px solid #b7eb8f; }
.sample-status-overdue { background:#fff2f0; color:#ff4d4f; border:1px solid #ffccc7; }

.sample-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:12px; margin-bottom:16px; }
.sample-stat-card { padding:14px 16px; border-radius:8px; background:#fff; border:1px solid var(--border-color); }
.sample-stat-label { font-size:12px; color:var(--text-secondary); margin-bottom:6px; }
.sample-stat-val { font-size:22px; font-weight:700; }
.sample-stat-card.danger .sample-stat-val { color:#ff4d4f; }
.sample-stat-card.warn .sample-stat-val { color:#faad14; }
.sample-stat-card.info .sample-stat-val { color:#1677ff; }
@media (max-width: 1023px) {
  .sample-grid { grid-template-columns:1fr 1fr; }
  .sample-photo, .sample-photo-empty { width:60px; height:60px; }
}
