/* Recent Gallery Module */
.rg-wrap{
  max-width:var(--mod-max-width, 1200px);
  margin:0 auto;
  padding:var(--mod-padding, 30px 20px);
  background:var(--mod-bg, transparent);
}
.rg-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:16px;
  padding-bottom:12px;
  border-bottom:2px solid var(--mod-border, #333);
}
.rg-title{
  font-size:var(--mod-title-size, 20px);
  font-weight:800;
  color:var(--mod-text, #1a1a2e);
  display:flex;
  align-items:center;
  gap:8px;
  margin:0;
}
.rg-title .rg-icon{color:var(--mod-accent, #555);font-size:16px}
.rg-more{
  font-size:13px;
  color:var(--mod-accent, #1a73e8);
  text-decoration:none;
  font-weight:600;
  display:flex;
  align-items:center;
  gap:4px;
  white-space:nowrap;
}
.rg-more:hover{text-decoration:underline}

/* Grid */
.rg-grid{display:grid;gap:var(--mod-gap, 20px)}
.rg-grid.cols-2{grid-template-columns:repeat(2,1fr)}
.rg-grid.cols-3{grid-template-columns:repeat(3,1fr)}
.rg-grid.cols-4{grid-template-columns:repeat(4,1fr)}
.rg-grid.cols-5{grid-template-columns:repeat(5,1fr)}
.rg-grid.cols-6{grid-template-columns:repeat(6,1fr)}

/* Card */
.rg-card{
  display:block;
  text-decoration:none;
  color:inherit;
  transition:transform .3s, box-shadow .3s;
}
.rg-card:hover{transform:translateY(-4px);box-shadow:0 6px 20px rgba(0,0,0,.08)}
.rg-thumb{
  position:relative;
  overflow:hidden;
  background:#f0f0f0;
  border-radius:var(--mod-card-radius, 4px);
}
.rg-thumb img{
  position:absolute;
  top:0;left:0;
  width:100%;height:100%;
  object-fit:cover;
  transition:transform .3s;
}
.rg-card:hover .rg-thumb img{transform:scale(1.05)}
.rg-no-thumb{
  position:absolute;inset:0;
  display:flex;align-items:center;justify-content:center;
  color:#ccc;font-size:32px;
  background:#f5f6f8;
}
.rg-info{padding:10px 2px}
.rg-name{
  font-size:var(--mod-name-size, 13px);
  font-weight:500;
  color:var(--mod-text, #333);
  text-align:center;
  line-height:1.4;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.rg-date{
  font-size:11px;
  color:#aaa;
  text-align:center;
  margin-top:4px;
}
.rg-price{
  font-size:13px;
  font-weight:700;
  color:var(--mod-accent, #e74c3c);
  text-align:center;
  margin-top:4px;
}
.rg-price-origin{
  font-size:11px;
  color:#bbb;
  text-decoration:line-through;
  margin-left:4px;
}
.rg-badge{
  position:absolute;
  top:6px;left:6px;
  padding:3px 8px;
  border-radius:3px;
  font-size:10px;
  font-weight:700;
  color:#fff;
  background:#22c55e;
}
.rg-badge.notice{background:#ef4444}

/* Loading / Empty */
.rg-loading,.rg-empty{
  text-align:center;
  padding:50px 20px;
  color:#bbb;
  font-size:13px;
  grid-column:1/-1;
}

/* Responsive */
@media(max-width:992px){
  .rg-grid.cols-5,.rg-grid.cols-6{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:768px){
  .rg-grid.cols-4,.rg-grid.cols-5,.rg-grid.cols-6{grid-template-columns:repeat(3,1fr)}
  .rg-title{font-size:17px}
}
@media(max-width:576px){
  .rg-grid.cols-3,.rg-grid.cols-4,.rg-grid.cols-5,.rg-grid.cols-6{grid-template-columns:repeat(2,1fr)}
  .rg-info{padding:6px 0}
  .rg-name{font-size:12px}
}
