/* Multi-row project grid and video previews. */
.work-grid,.work-grid:has(.project[hidden]){grid-template-columns:repeat(2,minmax(0,1fr))}
.project,.project+.project,.work-grid:has(.project[hidden]) .project{border:1px solid var(--border);margin:0 -1px -1px 0}
.project:hover,.project:focus-visible{z-index:2}
.video-preview{background:var(--surface)}
.video-preview img{width:auto;max-width:100%;height:100%;object-fit:contain}
.dialog-image[hidden]{display:none}
.dialog-stage .dialog-image{margin-left:0;margin-right:0}
video.dialog-image{background:#000;width:auto;max-width:100%}
@media(max-width:600px){.work-grid,.work-grid:has(.project[hidden]){grid-template-columns:1fr}.project,.project+.project{border:1px solid var(--border);margin:0 0 -1px}}
/* A one-line fact under a card's description: store listing, source, or PageSpeed scores. */
.project-badge{display:block;margin-top:10px;font-size:9.5px;letter-spacing:.06em;line-height:1.6;text-transform:uppercase;color:var(--muted)}
/* Outbound links in the project dialog (App Store, GitHub). */
.dialog-links{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 0}
.dialog-links a{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1px solid var(--border);font:10px var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--fg);transition:background .2s,border-color .2s}
.dialog-links a:hover{background:var(--surface);border-color:var(--muted)}
