.grd-theme {
    --grd-bg: #ffffff;
    --grd-card-border: #e5e7eb;
    --grd-card-shadow: 0 16px 40px rgba(2, 6, 23, 0.08);
    --grd-text: #162033;
    --grd-muted: #667085;
    --grd-accent: #d4af37;
    --grd-card-radius: 20px;
    --grd-card-padding: 22px;
    --grd-gap: 24px;
}
.grd-wrap { font-family: inherit; color: var(--grd-text); }
.grd-grid { display:grid; gap:var(--grd-gap); }
.grd-grid.columns-1 { grid-template-columns: 1fr; }
.grd-grid.columns-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grd-grid.columns-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grd-grid.columns-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.grd-card, .grd-list-item { background: var(--grd-bg); border:1px solid var(--grd-card-border); border-radius:var(--grd-card-radius); box-shadow:var(--grd-card-shadow); overflow:hidden; }
.grd-card { padding:var(--grd-card-padding); display:flex; flex-direction:column; gap:16px; }
.grd-card__top, .grd-list-item__head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.grd-card__identity { display:flex; align-items:center; gap:14px; }
.grd-avatar { width:52px; height:52px; border-radius:999px; object-fit:cover; flex:0 0 52px; }
.grd-avatar--placeholder { display:inline-flex; align-items:center; justify-content:center; background:linear-gradient(135deg,#1f2937,#475467); color:#fff; font-weight:700; }
.grd-author { margin:0; font-size:1rem; line-height:1.2; color:var(--grd-text); }
.grd-date { margin-top:4px; color:var(--grd-muted); font-size:.88rem; }
.grd-stars { display:inline-flex; gap:3px; white-space:nowrap; align-items:center; }
.grd-star { color:#d0d5dd; font-size:1rem; line-height:1; }
.grd-star.is-filled { color:var(--grd-accent); }
.grd-card__body p, .grd-list-item__body p { margin:0; color:var(--grd-text); line-height:1.7; }
.grd-card__footer a { display:inline-flex; align-items:center; gap:6px; font-weight:600; text-decoration:none; color:var(--grd-accent); }
.grd-list { display:grid; gap:18px; }
.grd-list-item { padding:var(--grd-card-padding); }
.grd-carousel { display:grid; grid-template-columns:44px 1fr 44px; gap:16px; align-items:center; }
.grd-carousel__track { position:relative; min-height:260px; }
.grd-carousel__slide { display:none; }
.grd-carousel__slide.is-active { display:flex; }
.grd-carousel__nav { border:1px solid var(--grd-card-border); width:44px; height:44px; border-radius:999px; background:#fff; box-shadow:var(--grd-card-shadow); cursor:pointer; font-size:28px; line-height:1; color:var(--grd-text); }
.grd-empty { padding:18px 20px; border:1px dashed #cbd5e1; border-radius:16px; color:var(--grd-muted); }
@media (max-width:1024px) { .grd-grid.columns-4, .grd-grid.columns-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width:767px) {
  .grd-grid.columns-4, .grd-grid.columns-3, .grd-grid.columns-2 { grid-template-columns:1fr; }
  .grd-card__top, .grd-list-item__head { flex-direction:column; align-items:flex-start; }
  .grd-carousel { grid-template-columns:1fr; }
  .grd-carousel__nav { display:none; }
}
