- Delete the per-card "cute" edit modal (lines 242-341) and the three
dead handlers that drove it (openEditVideoModal, closeEditVideoModal,
the type/privacy/thumbnail/submit document-level delegators). The
singleton at layouts/partials/edit-video-modal.blade.php already
defines a global window.openEditVideoModal that always won the
last-definition race, so clicking Edit was already going through
the singleton. Card is 547 -> 308 lines; a 60-card feed drops
~14 000 lines of modal markup.
- "Not interested", "Don't recommend channel", "Report" are now gated
on @unless($isOwner) — they're meaningless on your own video.
- All dropdown items that were <a href="javascript:void(0)" onclick>
are now real <button type="button">, including the save-to-playlist
and share slots (tag="button").
- Thumbnail img gains width="320" height="180" so the browser reserves
layout space before the image decodes — removes layout shift on
slow connections. The actual rendered size still comes from
.yt-video-thumb's aspect-ratio: 16/9.
Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>