
/* V.I.S.I.O.N. v33 — Photos / Attachments refinement */
.vision-entry-card--photo-rule {
  border-color: rgba(242,192,76,0.46);
  background: linear-gradient(180deg, rgba(242,192,76,0.09), rgba(255,255,255,0.035));
}
.vision-entry-form--photos label {
  gap: 0.28rem;
}
.vision-entry-photo-upload input[type="file"] {
  padding: 0.72rem;
  border-radius: 16px;
  border: 1px dashed rgba(168,214,255,0.36);
  background: rgba(88,166,255,0.07);
}
.vision-entry-photo-summary-card {
  margin-top: 0.85rem;
  border-radius: 22px;
  border: 1px solid rgba(88,166,255,0.28);
  background: linear-gradient(180deg, rgba(88,166,255,0.09), rgba(255,255,255,0.04));
  padding: 0.95rem;
  display: grid;
  gap: 0.45rem;
}
.vision-entry-photo-summary-card strong {
  color: #fff;
  font-size: 0.98rem;
}
.vision-entry-photo-summary-card p {
  color: rgba(237,247,255,0.76);
  font-size: 0.84rem;
  line-height: 1.45;
  margin: 0;
}
.vision-entry-photo-summary-card button {
  width: max-content;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.16);
  background: rgba(255,255,255,0.07);
  color: #f8fbff;
  font-weight: 900;
  padding: 0.55rem 0.8rem;
}
.vision-entry-report-card--photos {
  border-color: rgba(242,192,76,0.28);
}


/* v33b — Openable photo preview in final review and generated report */
.vision-entry-photo-preview,
.vision-entry-photo-open-block {
  display: grid;
  gap: 0.55rem;
  padding: 0.65rem;
  border-radius: 18px;
  border: 1px solid rgba(101, 240, 177, 0.26);
  background: rgba(101, 240, 177, 0.06);
}
.vision-entry-photo-preview[hidden] { display: none !important; }
.vision-entry-photo-preview img,
.vision-entry-photo-open-block img {
  width: 100%;
  max-height: 220px;
  object-fit: contain;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.14);
  background: rgba(0,0,0,0.22);
}
.vision-entry-photo-preview a,
.vision-entry-photo-open-block a {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  justify-content: center;
  min-height: 2.35rem;
  border-radius: 999px;
  padding: 0.52rem 0.82rem;
  border: 1px solid rgba(168,214,255,0.42);
  background: rgba(88,166,255,0.14);
  color: #dff1ff;
  font-weight: 900;
  text-decoration: none;
}
.vision-entry-photo-open-block strong {
  color: #9fffd5;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: 0.78rem;
}
