/* Explore grid: Instagram-style content grid used by search.html (For you / Posts / keyword results) and
   hashtag.html. Always 3 columns, phone and web alike, tiles 3:4, hairline gaps. On web the grid is centred
   in a column so three rows fit a screen, like Instagram's search. Tiles come from post-engine.js
   (profileGridTileHtml), so tapping one opens the normal post + comments panel. */
.ex-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;width:100%;max-width:935px;margin:0 auto;padding:0;box-sizing:border-box;background:transparent;border:0;overflow:hidden;align-content:start;}
.ex-grid .comm-profile-grid-tile{position:relative;display:block;width:100%;aspect-ratio:3/4;border:0;border-radius:0;padding:0;margin:0;overflow:hidden;color:#fff;cursor:pointer;text-align:left;background:#e9eeec;}
.ex-grid .comm-profile-grid-tile.is-text{background:linear-gradient(145deg,#0f3d36,#1b7a6e);}
.ex-grid .comm-profile-grid-cover{display:block;width:100%;height:100%;object-fit:cover;}
.ex-grid .comm-profile-grid-text{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:7;padding:30px 12px 12px;font-size:14px;line-height:1.45;font-weight:600;white-space:normal;}
.ex-grid .comm-profile-grid-carousel{position:absolute;right:8px;top:8px;display:grid;place-items:center;color:#fff;filter:drop-shadow(0 1px 2px rgba(0,0,0,.45));}
.ex-grid .comm-profile-grid-pin{display:none;}
@media (min-width:841px){.ex-grid{gap:4px;}}
@media (max-width:720px){
  .ex-grid{gap:2px;}
  .ex-grid .comm-profile-grid-text{padding:24px 8px 8px;font-size:11px;-webkit-line-clamp:7;}
  .ex-grid .comm-profile-grid-carousel{right:6px;top:6px;}
}
.ex-empty{max-width:935px;margin:0 auto;}
.ex-skel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;max-width:935px;margin:0 auto;}
.ex-skel span{display:block;aspect-ratio:3/4;background:#eceff0;position:relative;overflow:hidden;}
.ex-skel span::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(27,33,45,.06),transparent);animation:exshimmer 1.3s infinite;}
@keyframes exshimmer{0%{transform:translateX(-100%);}100%{transform:translateX(100%);}}
