.gHead{margin:10px 0 16px}
.gHead__inner{background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}
.gHead__title{margin:0 0 8px;font-size:24px;line-height:1.15}
.gHead__lead{margin:0;color:#374151;font-size:14px;line-height:1.65}
.gHead__actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:12px}

.gFilters{margin-top:12px;display:flex;flex-direction:column;gap:12px}
.gFilterBlock{border:1px solid var(--border);border-radius:16px;padding:12px;background:#fff}
.gFilterTitle{font-weight:900;font-size:13px;color:var(--text);margin:0 0 10px}
.gFilterRow{display:flex;flex-wrap:wrap;gap:8px}

.gPill{
  border:1px solid var(--border);
  background:#fff;
  color:var(--text);
  border-radius:999px;
  padding:8px 12px;
  font-weight:900;
  font-size:13px;
  cursor:pointer;
}
.gPill:hover{background:#f9fafb}
.gPill.isOn{background:var(--orange);border-color:var(--orange);color:#fff}

.gMeta{margin-top:10px;color:var(--muted);font-size:13px;font-weight:900}

.gSection{margin-top:10px}
.gGrid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:12px;
}

.gCard{
  background:#fff;
  border:1px solid var(--border);
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 10px 26px rgba(0,0,0,.06);
}
.gCard__btn{
  width:100%;
  padding:0;
  border:0;
  background:transparent;
  cursor:pointer;
  text-align:left;
  display:block;
}
.gCard__media{position:relative}
.gCard__img{
  width:100%;
  height:100%;
  aspect-ratio:1/1;
  object-fit:cover;
  display:block;
  background:#f3f4f6;
}
.gCard__like{
  position:absolute;
  top:10px;
  right:10px;
  width:34px;
  height:34px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  border:1px solid var(--border);
  box-shadow:0 10px 26px rgba(0,0,0,.10);
  opacity:0;
  transform:scale(.92);
  transition:opacity .16s ease, transform .16s ease;
  pointer-events:none;
}
.gCard.isLiked .gCard__like{opacity:1;transform:scale(1)}
.gCard__cap{padding:10px 12px;border-top:1px solid var(--border)}
.gCard__title{font-weight:900;font-size:13px;color:var(--text);line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gCard__sub{margin-top:4px;font-size:12px;color:var(--muted);font-weight:800}

.gCard__cap{display:none}

.gLightbox{
  position:fixed;
  inset:0;
  z-index:2800;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(17,24,39,.30);
  backdrop-filter:blur(10px);
}
.gLightbox[hidden]{display:none}
.gLightbox__inner{
  width:min(1100px, 94vw);
  background:#fff;
  border:1px solid var(--border);
  border-radius:18px;
  box-shadow:0 18px 50px rgba(0,0,0,.18);
  overflow:hidden;
  position:relative;
}
.gLightbox__close{
  position:absolute;
  right:10px;
  top:8px;
  width:40px;
  height:40px;
  border-radius:12px;
  border:1px solid var(--border);
  background:#fff;
  font-weight:900;
  cursor:pointer;
  z-index:5;
}
.gLightbox__close:hover{background:#f9fafb}

.gLightbox__media{position:relative;background:#fff}
.gLightbox__stack{position:relative;height:72vh;background:#fff}
.gLightbox__img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  background:#fff;
  opacity:0;
  transform:translateX(0);
  transition:opacity .45s ease, transform .45s ease;
}
.gLightbox__img.isActive{opacity:1;z-index:1}
.gLightbox__img.isTop{z-index:2}
.gProg{position:absolute;left:0;right:0;bottom:0;height:4px;background:rgba(0,0,0,.10);z-index:4}
.gProg__bar{height:100%;width:0%;background:var(--orange)}
.gLightbox__zone{position:absolute;top:0;bottom:0;width:50%;z-index:3}
.gLightbox__zone--left{left:0;cursor:w-resize}
.gLightbox__zone--right{right:0;cursor:e-resize}

.gLightbox__bar{
  display:flex;
  gap:10px;
  align-items:flex-start;
  justify-content:space-between;
  padding:12px 12px;
  border-top:1px solid var(--border);
}
.gLightbox__txt{min-width:220px}
.gLightbox__name{font-weight:900;font-size:14px;line-height:1.25;color:var(--text)}
.gLightbox__meta{margin-top:4px;color:var(--muted);font-size:12px;font-weight:800}

.gLightbox__txt{display:none}

.gLightbox__btns{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.gMiniBtn{padding:9px 10px;border-radius:12px}
.gMiniBtn.btn--primary{background:var(--orange);color:#fff}
.gMiniBtn.btn--primary:hover{background:var(--orangeDark)}
.gMiniBtn.isLiked{filter:brightness(1.02)}
.gMiniBtn.isLiked{box-shadow:0 10px 22px rgba(255,90,0,.18)}

.gShare{
  position:fixed;
  inset:0;
  z-index:2900;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(17,24,39,.30);
  backdrop-filter:blur(10px);
}
.gShare[hidden]{display:none}
.gShare__card{
  width:min(520px, 92vw);
  background:#fff;
  border:1px solid var(--border);
  border-radius:18px;
  box-shadow:0 18px 50px rgba(0,0,0,.18);
  padding:12px;
}
.gShare__head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 6px 10px}
.gShare__title{font-weight:900;font-size:14px}
.gShare__x{width:40px;height:40px;border-radius:12px;border:1px solid var(--border);background:#fff;font-weight:900;cursor:pointer}
.gShare__x:hover{background:#f9fafb}
.gShare__grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:6px}
.gShare__note{margin:8px 6px 6px;font-size:12px;color:var(--muted);font-weight:800}

@media (max-width: 980px){
  .gGrid{grid-template-columns:repeat(2, minmax(0, 1fr))}
  .gLightbox__stack{height:62vh}
  .gLightbox__bar{flex-direction:column;align-items:stretch}
  .gLightbox__btns{justify-content:flex-start}
}

.gEmpty{grid-column:1/-1;display:flex;align-items:center;justify-content:center;padding:20px 0}
.gEmpty__img{width:min(520px, 92vw);height:auto;display:block;border-radius:16px;border:1px solid var(--border);box-shadow:var(--shadow);background:#fff}
