:root{font-family:system-ui,sans-serif;color:#24211d;background:#f6f0e4}*{box-sizing:border-box}body{margin:0}header{background:#24211d;color:white;padding:20px max(20px,calc((100vw - 1200px)/2));display:flex;gap:16px;flex-wrap:wrap;justify-content:space-between}header a{color:inherit;font-weight:700}main{max-width:1240px;padding:24px 20px;margin:auto}h1{font-size:clamp(1.8rem,5vw,2.8rem);margin-bottom:12px}.toolbar{display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap;margin:24px 0}button{font:inherit;min-height:44px;padding:10px 16px;border:1px solid #726b60;border-radius:7px;background:white;color:#24211d;cursor:pointer}button[aria-pressed=true],#save-share{background:#24211d;color:white}button:disabled{opacity:.6;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid #d2a437;outline-offset:3px}#grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.card{padding:0;overflow:hidden;text-align:left;position:relative}.card img{width:100%;height:220px;object-fit:cover;display:block;background:#e9e1d2}.card span{display:block;padding:12px;overflow-wrap:anywhere}.card .play{position:absolute;top:12px;left:12px;background:#24211ddd;color:white;border-radius:24px;padding:8px 12px}dialog{width:min(1000px,96vw);max-height:94dvh;border:0;border-radius:10px;padding:16px;overflow:auto}dialog::backdrop{background:#171511df}#media{display:flex;justify-content:center;margin:12px 0}#media img,#media video{max-width:100%;max-height:60dvh;object-fit:contain;display:block}#close{display:block;margin-left:auto}.help,footer{font-size:.88rem;color:#625b50}.help{max-width:650px}footer{padding:30px;text-align:center}#more{margin-top:24px}#caption,#credit{overflow-wrap:anywhere}@media(max-width:500px){#grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card img{height:170px}main{padding:20px 12px}.card span{font-size:.88rem;padding:8px}.toolbar{gap:10px}#media img,#media video{max-height:52dvh}}

.media-actions{display:flex;flex-wrap:wrap;gap:8px;position:sticky;bottom:0;background:#fff;padding:10px 0}.media-actions button{flex:1 1 auto}#sentinel{height:1px}#load-status{min-height:1.4em;font-size:.9rem}#viewer-status{overflow-wrap:anywhere}
