/* VB Reviews - CPANEL PROOF FULL CSS (no hex, no media, no grid, no box-sizing, no pseudo, ASCII) */

.vb-wrap {
  width: 100%;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 18px;
  padding-right: 18px;
  padding-bottom: 18px;
  padding-left: 18px;
}

.vb-card {
  background-color: white;
  border-style: solid;
  border-width: 1px;
  border-color: silver;
  margin-top: 0px;
  margin-right: 0px;
  margin-bottom: 14px;
  margin-left: 0px;
}

.vb-inner {
  padding-top: 14px;
  padding-right: 14px;
  padding-bottom: 14px;
  padding-left: 14px;
}

.vb-title {
  margin-top: 0px;
  margin-right: 0px;
  margin-bottom: 6px;
  margin-left: 0px;
  font-size: 20px;
  font-weight: bold;
}

.vb-subtitle {
  margin-top: 0px;
  margin-right: 0px;
  margin-bottom: 0px;
  margin-left: 0px;
  font-size: 13px;
  color: dimgray;
}

.vb-headrow { display: block; }

.vb-adminBadge {
  display: inline-block;
  margin-top: 8px;
  padding-top: 6px;
  padding-right: 10px;
  padding-bottom: 6px;
  padding-left: 10px;
  font-size: 12px;
  background-color: black;
  color: white;
}

.vb-metaRow { display: block; margin-top: 10px; }

.vb-pill {
  display: inline-block;
  margin-top: 6px;
  margin-right: 8px;
  margin-bottom: 0px;
  margin-left: 0px;
  padding-top: 6px;
  padding-right: 10px;
  padding-bottom: 6px;
  padding-left: 10px;
  font-size: 13px;
  background-color: whitesmoke;
  border-style: solid;
  border-width: 1px;
  border-color: gainsboro;
}

/* top area */
.vb-topbar { display: block; }

.vb-formTitle {
  font-weight: bold;
  margin-top: 0px;
  margin-right: 0px;
  margin-bottom: 6px;
  margin-left: 0px;
}

.vb-hint {
  font-size: 12px;
  color: dimgray;
  margin-top: 6px;
  margin-right: 0px;
  margin-bottom: 0px;
  margin-left: 0px;
}

.vb-row { display: block; }

.vb-label {
  display: block;
  font-size: 12px;
  color: black;
  margin-top: 10px;
  margin-right: 0px;
  margin-bottom: 6px;
  margin-left: 0px;
}

.vb-input {
  width: 100%;
  border-style: solid;
  border-width: 1px;
  border-color: silver;
  background-color: white;
  color: black;
  padding-top: 10px;
  padding-right: 10px;
  padding-bottom: 10px;
  padding-left: 10px;
  font-size: 14px;
}

.vb-textarea {
  width: 100%;
  border-style: solid;
  border-width: 1px;
  border-color: silver;
  background-color: white;
  color: black;
  padding-top: 10px;
  padding-right: 10px;
  padding-bottom: 10px;
  padding-left: 10px;
  font-size: 14px;
  min-height: 90px;
}

.vb-btns { display: block; margin-top: 10px; }

.vb-btn {
  display: inline-block;
  cursor: pointer;
  border-style: solid;
  border-width: 1px;
  border-color: black;
  background-color: black;
  color: white;
  padding-top: 10px;
  padding-right: 12px;
  padding-bottom: 10px;
  padding-left: 12px;
  font-size: 14px;
  margin-top: 6px;
  margin-right: 8px;
  margin-bottom: 0px;
  margin-left: 0px;
}

.vb-btn-secondary {
  border-color: dimgray;
  background-color: dimgray;
  color: white;
}

.vb-starsInput { display: block; margin-top: 6px; }
.vb-star { cursor: pointer; font-size: 18px; }

.vb-sectionTitle {
  display: block;
  font-weight: bold;
  margin-top: 18px;
  margin-right: 0px;
  margin-bottom: 10px;
  margin-left: 0px;
}

.vb-line { display: none; }

/* reviews */
.vb-grid { display: block; }

.vb-review {
  border-style: solid;
  border-width: 1px;
  border-color: gainsboro;
  background-color: white;
  padding-top: 12px;
  padding-right: 12px;
  padding-bottom: 12px;
  padding-left: 12px;
  margin-top: 0px;
  margin-right: 0px;
  margin-bottom: 10px;
  margin-left: 0px;
}

.vb-reviewHeader {
  display: block;
  margin-top: 0px;
  margin-right: 0px;
  margin-bottom: 8px;
  margin-left: 0px;
}

.vb-who { font-weight: bold; }
.vb-date { font-size: 12px; color: dimgray; }
.vb-stars { font-size: 14px; }
.vb-text { font-size: 14px; color: black; }

/* ===== ADMIN ===== */
.vb-adminPanel {
  border-left-style: solid;
  border-left-width: 4px;
  border-left-color: black;
}

.vb-controlsInner { display: block; margin-top: 10px; }
.vb-search { width: 100%; }

/* pending */
.vb-pending {
  border-style: solid;
  border-width: 1px;
  border-color: gainsboro;
  background-color: whitesmoke;
  padding-top: 10px;
  padding-right: 10px;
  padding-bottom: 10px;
  padding-left: 10px;
  margin-top: 10px;
  margin-right: 0px;
  margin-bottom: 0px;
  margin-left: 0px;
}

.vb-pendingTop { display: block; }
.vb-pendingBtns { display: block; margin-top: 8px; }

.vb-btn-small {
  display: inline-block;
  font-size: 12px;
  padding-top: 6px;
  padding-right: 10px;
  padding-bottom: 6px;
  padding-left: 10px;
}

.vb-pendingBody { margin-top: 8px; font-size: 13px; }

/* admin list */
.vb-adminRow {
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: gainsboro;
  padding-top: 10px;
  padding-right: 0px;
  padding-bottom: 10px;
  padding-left: 0px;
}

.vb-adminMeta { display: block; }
.vb-adminText { margin-top: 6px; color: black; }

/* admin edit */
.vb-adminEdit {
  margin-top: 10px;
  border-style: solid;
  border-width: 1px;
  border-color: gainsboro;
  background-color: white;
  padding-top: 10px;
  padding-right: 10px;
  padding-bottom: 10px;
  padding-left: 10px;
}

.vb-adminEditGrid { display: block; }
.vb-adminActions { display: block; margin-top: 8px; }

.vb-btn-danger {
  border-color: maroon;
  background-color: maroon;
  color: white;
}

.vb-adminSmall { font-size: 12px; color: dimgray; }


/* ===== 1.4.0 (19/10/2026) ===== */
.vb-reviews-app .vb-grid.vb-grid14 { display:grid; grid-template-columns:repeat(auto-fill, minmax(260px, 1fr)); gap:16px; }
.vb-reviews-app .vb-grid.vb-grid14 .vb-review { margin:0; height:100%; box-sizing:border-box; }
.vb-reviews-app .vb-paginazione { display:flex; justify-content:center; gap:12px; margin:20px 0 8px; }
.vb-reviews-app .vb-paginazione a.vb-btn { text-decoration:none; }
.vb-reviews-app .vb-starPick { display:flex; gap:4px; padding-top:4px; }
.vb-reviews-app .vb-starBtn { background:none; border:0; padding:0 2px; font-size:32px; line-height:1; cursor:pointer; color:#d1d5db; }
.vb-reviews-app .vb-starBtn.on { color:#d4a017; }
.vb-reviews-app .vb-starBtn:focus-visible { outline:2px solid #8a6a00; border-radius:4px; }

/* ===== 1.4.1: stelle piu' facili da cliccare ===== */
.vb-reviews-app .vb-starPick { align-items:center; gap:8px; user-select:none; }
.vb-reviews-app .vb-starBtn { font-size:40px; width:48px; height:48px; padding:0; display:inline-flex; align-items:center; justify-content:center; touch-action:manipulation; -webkit-tap-highlight-color:transparent; }
.vb-reviews-app .vb-starBtn:hover { transform:scale(1.12); }
.vb-reviews-app .vb-starVal { margin-left:10px; font-weight:600; color:#8a6a00; font-size:16px; white-space:nowrap; }

/* ===== 1.4.2: stelle delle recensioni color oro ===== */
.vb-reviews-app .vb-review .vb-stars { color:#d4a017; letter-spacing:1px; }

/* ===== 1.4.3: bordo recensioni 2px verde ===== */
.vb-reviews-app .vb-review { border:2px solid #2E7D32; }

/* ===== 1.5.0 ===== */
.vb-reviews-app .vb-uvRow { margin-top:10px; }
.vb-reviews-app .vb-uv { display:inline-flex; align-items:center; gap:6px; }
.vb-reviews-app .vb-uvTxt { font-size:12px; font-weight:700; color:#2E7D32; letter-spacing:.3px; }
.vb-reviews-app.vb-home .vb-grid.vb-grid14 { grid-template-columns:repeat(auto-fill, minmax(240px, 1fr)); }

/* ===== 1.5.1: User Verified verde sobrio ===== */
.vb-reviews-app .vb-uvTxt { color:#5b7a5e; font-weight:600; font-style:italic; letter-spacing:.2px; }

/* ===== 1.5.2: colonne scelte in Impostazioni ===== */
.vb-reviews-app .vb-grid.vb-grid14,
.vb-reviews-app.vb-home .vb-grid.vb-grid14 { grid-template-columns:repeat(var(--vb-col, 3), minmax(0, 1fr)); }
@media (max-width: 700px) {
  .vb-reviews-app .vb-grid.vb-grid14,
  .vb-reviews-app.vb-home .vb-grid.vb-grid14 { grid-template-columns:1fr; }
}

/* ===== 1.5.3 ===== */
.vb-reviews-app .vb-regola { margin:14px 0 0; font-size:13px; color:#6b7280; font-style:italic; }
