
/* GRU v1.6.6 */
/* Review box */
.gru-review-box{
  --gru-sep-color:#e5e7eb; --gru-primary:#111; --gru-accent:#111; --gru-radius:12px;
  --gru-score-text:#fff; --gru-body-text:#111; --gru-overlay: transparent;
  position:relative; border:1px solid var(--gru-sep-color); border-radius:var(--gru-radius);
  overflow:hidden; color:var(--gru-body-text); margin:16px 0; box-sizing:border-box;
  background-repeat:no-repeat; background-position:center; background-size:cover;
  background-color:transparent;
}
.gru-review-box::before{content:""; position:absolute; inset:0; background:var(--gru-overlay); pointer-events:none; z-index:0;}
.gru-review-box *{box-sizing:border-box; max-width:100%}
.gru-inner-grid{position:relative; z-index:1; display:grid; grid-template-columns:260px 1fr; gap:16px; padding:16px; align-items:start}
@media (max-width:900px){.gru-inner-grid{grid-template-columns:1fr}}
.gru-left{display:flex; align-items:stretch; justify-content:center}
.gru-score-box{display:flex; flex-direction:column; align-items:center; justify-content:center; width:100%; min-height:200px;
  border-radius:16px; background:var(--gru-primary); color:var(--gru-score-text); box-shadow:0 10px 24px rgba(0,0,0,.12)}
.gru-score-num{font-size:56px; font-weight:900; line-height:1; letter-spacing:.5px}
.gru-score-label{opacity:.9; margin-top:6px; font-weight:700}

/* Top "table" line for post box */
.gru-topline{background:var(--gru-topline-bg, transparent); padding:10px; border-radius:var(--gru-radius);
  display:grid; grid-template-columns:1fr auto auto; gap:16px; padding:8px 0 12px 0;
  border-bottom:1px solid var(--gru-sep-color);
}
@media (max-width:640px){ .gru-topline{background:var(--gru-topline-bg, transparent); padding:10px; border-radius:var(--gru-radius); grid-template-columns:1fr; } }
.gru-tcell{min-width:0}
.gru-tlabel{font-size:.78rem; opacity:.8; margin-bottom:4px; font-weight:700; letter-spacing:.2px; color:var(--gru-top-label, currentColor)}
.gru-tvalue{font-weight:800; font-size:1.05rem; overflow-wrap:anywhere; word-break:break-word; white-space:normal; color:var(--gru-top-value, currentColor);
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,sans-serif}

.gru-meta{display:flex; flex-wrap:wrap; gap:14px; padding:8px 0; font-size:.95em; border-top:1px solid var(--gru-sep-color); color:var(--gru-body-text)}
.gru-seps-off .gru-meta{border-top:none}
.gru-proscons-grid{display:grid; grid-template-columns:1fr 1fr; gap:16px; padding:10px 0; border-top:1px solid var(--gru-sep-color)}
.gru-seps-off .gru-proscons-grid{border-top:none}
.gru-subtitle{font-weight:800; margin:0 0 8px; font-size:1em; color:var(--gru-body-text)}
.gru-list{list-style:none; margin:0; padding:0; color:var(--gru-body-text)}
.gru-list li{display:flex; gap:8px; align-items:flex-start; font-size:.95em; margin:6px 0; overflow-wrap:anywhere; word-break:break-word; white-space:normal}
.gru-ico{display:inline-block; width:18px; height:18px; border-radius:4px; flex:0 0 18px}
.gru-ico-ok{background:#059669; position:relative}
.gru-ico-ok::before{content:'✓'; position:absolute; inset:0; display:flex; align-items:center; justify-content:center; color:#fff; font-weight:900; font-size:14px}
.gru-ico-x{background:#dc2626; position:relative}
.gru-ico-x::before{content:'✕'; position:absolute; inset:0; display:flex; align-items:center; justify-content:center; color:#fff; font-weight:900; font-size:14px}
.gru-bonus{margin-top:10px; padding:10px 12px; border-radius:10px; font-weight:700}

/* Latest list */
.gru-el-wrap{display:block}
.gru-latest{position:relative; border:1px solid var(--gru-card-border, #e5e7eb); border-radius:var(--gru-container-radius, 12px); padding:16px; background:var(--gru-latest-bg, #fff); background-repeat:no-repeat; background-size:cover; background-position:center}
.gru-latest::before{content:""; position:absolute; inset:0; background:var(--gru-list-overlay, transparent); pointer-events:none; border-radius:inherit}
.gru-cards{display:grid; grid-template-columns:repeat(3,1fr); gap:12px}
.gru-cols-1 .gru-cards{grid-template-columns:1fr}
.gru-cols-2 .gru-cards{grid-template-columns:repeat(2,1fr)}
.gru-cols-3 .gru-cards{grid-template-columns:repeat(3,1fr)}
.gru-cols-4 .gru-cards{grid-template-columns:repeat(4,1fr)}
.gru-cols-5 .gru-cards{grid-template-columns:repeat(5,1fr)}
.gru-cols-6 .gru-cards{grid-template-columns:repeat(6,1fr)}
@media (max-width:900px){.gru-cards{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.gru-cards{grid-template-columns:1fr}}
.gru-card{display:block; border:1px solid var(--gru-card-border, #e5e7eb); border-radius:var(--gru-card-radius, 12px); padding:12px; background:var(--gru-card-bg, #fff); color:var(--gru-card-text, #111); overflow:hidden}

/* Minirow header inside card */
.gru-minirow{background:var(--gru-minirow-bg, transparent); padding:10px; border-radius:var(--gru-card-radius, 12px);
  display:grid; grid-template-columns:1fr auto auto; gap:10px; padding-bottom:8px; border-bottom:1px solid rgba(0,0,0,.08);
}
@media (max-width:540px){ .gru-minirow{background:var(--gru-minirow-bg, transparent); padding:10px; border-radius:var(--gru-card-radius, 12px); grid-template-columns:1fr; } }
.gru-minirow .mi-cell{min-width:0}
.gru-minirow .mi-label{font-size:.72rem; opacity:.75; margin-bottom:3px; font-weight:700; color:var(--gru-mini-label, rgba(0,0,0,.75))}
.gru-minirow .mi-val{font-weight:800; font-size:1rem; overflow-wrap:anywhere; word-break:break-word; white-space:normal; color:var(--gru-mini-value, #111);
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,sans-serif}

.gru-card-top{display:flex; justify-content:space-between; align-items:center; gap:8px}
.gru-card-title{font-weight:700; font-size:16px; margin:0}
.gru-card-badge .gru-badge{min-width:48px; min-height:28px; background:var(--gru-badge-bg, #111); color:var(--gru-badge-text, #fff); border-radius:8px; font-weight:800; font-size:14px; display:flex; align-items:center; justify-content:center; padding:4px 8px; font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",system-ui,sans-serif}

.gru-card-meta{margin-top:8px; font-size:.85em; opacity:.85; overflow-wrap:anywhere; word-break:break-word; white-space:normal}
/* Masonry */
.gru-masonry .gru-cards{display:block; column-count:3; column-gap:12px}
.gru-cols-1.gru-masonry .gru-cards{column-count:1}
.gru-cols-2.gru-masonry .gru-cards{column-count:2}
.gru-cols-3.gru-masonry .gru-cards{column-count:3}
.gru-cols-4.gru-masonry .gru-cards{column-count:4}
.gru-cols-5.gru-masonry .gru-cards{column-count:5}
.gru-cols-6.gru-masonry .gru-cards{column-count:6}
.gru-masonry .gru-card{break-inside:avoid; display:inline-block; width:100%; margin:0 0 12px 0}
