#ob-photo-name { color: var(--cash); overflow-wrap: anywhere; }
#ob-photo-name[hidden] { display: none; }
#ob-photo-send:disabled { opacity: .65; cursor: wait; }
#uploadBox:has(+ #ob-photo:focus-visible) { outline: 2px solid var(--brand); outline-offset: 2px; }
#ob-photo-send { flex: none; width: auto; padding: 7px 14px; font-size: 13px; }
#ob-photo-send[hidden] { display: none; }

#vsChecking.show .txt::before, #vsChecking.show .txt::after {
  content: ""; display: block; height: .8em; width: 9em; max-width: 100%;
  margin-block: .35em; border-radius: 4px; background: var(--border);
  opacity: 0; animation: upload-skeleton-in 0s .3s forwards, upload-skeleton-pulse 1.2s .3s infinite alternate;
}
#vsChecking.show .txt::after { width: 6em; }
@keyframes upload-skeleton-in { to { opacity: 1; } }
@keyframes upload-skeleton-pulse { to { background: var(--muted); } }
@media (prefers-reduced-motion: reduce) {
  #vsChecking.show .txt::before, #vsChecking.show .txt::after { animation: upload-skeleton-in 0s .3s forwards !important; }
  #vsChecking .spinner { animation: none; }
}
