.identify-upload { background: var(--clr-bg-dark); }
.upload-zone {
  border: 2px dashed rgba(74,222,0,0.35);
  border-radius: var(--radius-xl);
  min-height: 280px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 48px 40px;
  text-align: center;
  transition: border-color 250ms ease, background 250ms ease, box-shadow 250ms ease;
  cursor: none;
}
.upload-zone:hover, .upload-zone.drag-over { border-color: var(--clr-lime); background: rgba(74,222,0,0.04); box-shadow: 0 0 0 4px rgba(74,222,0,0.08); }
.upload-icon { color: var(--clr-lime); opacity: 0.7; }
.upload-zone h3 { font-family: var(--font-display); font-size: 24px; }
.upload-zone p { color: var(--clr-muted); font-size: 14px; }
.recent-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; justify-items: start; }
.recent-card { width: 100%; border-radius: var(--radius-md); overflow: hidden; cursor: none; border: 1.5px solid transparent; transition: border-color 200ms ease, transform 200ms ease; }
.recent-card:hover { border-color: var(--clr-lime); transform: scale(1.03); }
.recent-card img { width: 100%; height: clamp(150px, 18vw, 230px); aspect-ratio: 1; object-fit: cover; display: block; }
.recent-card span { display: block; padding: 10px 12px; font-size: 13px; background: var(--clr-bg-card); border-top: 1px solid var(--clr-border); }
.tips-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; justify-items: start; }
.tip-card {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 20px 24px;
  border: 1px solid var(--clr-border);
  border-radius: var(--radius-md);
  font-size: 14px;
  font-weight: 500;
  color: var(--clr-white);
  background: var(--clr-bg-card);
}
.tip-card svg { color: var(--clr-lime); flex-shrink: 0; }
.samples-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; justify-items: start; }
.sample-card { width: 100%; height: clamp(280px, 36vw, 460px); aspect-ratio: 4/5; border-radius: var(--radius-lg); overflow: hidden; }
.upload-status { color: var(--clr-lime); font-family: var(--font-mono); font-size: 12px; min-height: 18px; }
@media(max-width:768px) {
  .recent-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .tips-grid, .samples-grid { grid-template-columns: minmax(0,1fr); }
}
@media(max-width:480px) { .recent-grid { grid-template-columns: minmax(0,1fr); } }
