4cf8846fix(popular): grid column min auto 폭 squeeze 수정
09:01f298141Merge branch 'feat/shuffle-page'
08:47d1df426perf(shuffle): cap photo processing at 30 — Vercel function timeout fix
08:47b432f22Merge branch 'feat/shuffle-page'
08:32ac673b8fix(shuffle): force-dynamic — skip build prerender (60s timeout)
08:3230240faMerge: /shuffle 페이지 — 사진+문장 페어 슬라이드쇼
08:208d02c3ffeat: /popular + admin Hidden Gems (view_count 활용)
08:2052d66b1feat(footer): Touch 섹션에 /shuffle 링크 추가
08:20a73bfc0refactor(shuffle): paired mode — photo + sentence from same post
08:072266887fix(shuffle): z-index above topnav + hide site chrome on /shuffle
07:3264c9b68fix(shuffle): frame opacity bug + timing label collision
07:306fedcc0fix(shuffle): server picks first pair — eliminates hydration mismatch cleanly
07:251d73970fix(shuffle): client-only render to avoid hydration mismatch from Math.random
07:20b1dd7c7perf(shuffle): cap photo/sentence sampling + timing logs
07:1168f808eperf(shuffle): Range request for photo dims + concurrency limit
07:0121f6ca7feat(admin): 최근 24h 활동 카드 (편지/댓글/방명록)
06:48d6d66c4feat(shuffle): /shuffle route — server entry + metadata
06:47c1aaaf1feat(shuffle): client orchestrator with keyboard/touch controls
06:46bd63f25feat(shuffle): styles for both frames + controls
06:465d3c74efeat(shuffle): Postcard frame for portrait photos
06:44e17e223feat(shuffle): Cinema frame for landscape photos
06:44a4f10e1feat(shuffle): useShuffleBuffer hook with ring buffer + refill
06:4345c14cefeat(shuffle): /api/shuffle/refill endpoint
06:41b32d13aperf(shuffle): pool — single-query post fetch, parallel photo dims, 8K sentence cap
06:398011f2afeat(shuffle): pool module with chunked random picker
06:35a65c514feat(shuffle): photo dimensions fetcher via sharp + unstable_cache
06:333f3826drefactor(shuffle): align MIN_LEN comments + simplify split regex
06:3206c9456feat(shuffle): sentence extractor from HTML body
06:296f9fcfafeat: /random — "오늘의 디노" (매일 무관 사진+문장 콜라주)
06:270b8f5dbfeat(shuffle): shared types for shuffle pool/buffer
06:24b4a0856refactor(style): STYLE-002/003/006/010 — bookmark hook + page IIFE
04:025ccc80ffeat: 북마크 + 검색 UI 개선 + 시리즈/연재
01:3140e55e2arch(ARCH-014): 메뉴-카테고리 매핑 하드코딩 → DB 전환
00:090ef4937arch+perf+style: ARCH-002/005-010/013/016/019 + PERF-005/006/014/016 + STYLE-013 + /posts/[slug] redirect
23:32