diff --git a/web/zebra-spaces.html b/web/zebra-spaces.html index c35e358..2df97b6 100644 --- a/web/zebra-spaces.html +++ b/web/zebra-spaces.html @@ -86,6 +86,30 @@ /* sec-screens visible → push everything else in the timeline column down or hide */ .timeline:has(> #sec-screens:not(.hidden)) > .game-tabs, .timeline:has(> #sec-screens:not(.hidden)) > #game-frame { display: none; } + + /* camera tiles: smaller, multi-column grid so several face-cams fit + * side-by-side without dwarfing the screen share above them */ + #cameras { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 0.5rem; } + .camera-tile { + border: 1px solid #000; background: #000; padding: 0; + display: flex; flex-direction: column; position: relative; + } + .camera-tile video { + width: 100%; height: auto; max-height: 40vh; display: block; background: #000; + aspect-ratio: 16 / 9; object-fit: cover; + } + .camera-tile .screen-meta { + background: #111; color: #ddd; font-size: 0.7rem; padding: 0.2rem 0.4rem; + display: flex; justify-content: space-between; + } + /* tap-to-play overlay applies to camera tiles too */ + .camera-tile .tap-play { + position: absolute; left: 0; right: 0; top: 0; bottom: 1.2rem; + display: none; align-items: center; justify-content: center; + background: rgba(0,0,0,0.65); color: #fff; cursor: pointer; + font-family: monospace; font-size: 0.9rem; user-select: none; + } + .camera-tile.needs-tap .tap-play { display: flex; } h1 { font-family: 'chunkfiveregular', serif; font-size: 3rem; font-weight: normal; letter-spacing: 0.02em; @@ -203,6 +227,11 @@
+ +