/* Gohop Rating CSS - styled to match provided image */
.gohop-rating-wrap { font-family: Arial, Helvetica, sans-serif; margin: 18px 0; }
.gohop-rating-box { background: #fff; border-radius: 8px; padding: 14px; box-shadow: 0 1px 30px rgba(0,0,0,0.08); display:flex; gap:18px; align-items:flex-start; }
.gohop-rating-header { position:absolute; left:16px; top:-10px; }
.gohop-rating-title { margin:0 0 10px 0; font-size:16px; color:#222; font-weight:700; }

.gohop-rating-left { width:120px; display:flex; flex-direction:column; align-items:center; gap:8px; }
.gohop-score-square { background:#2aa05a; width:56px; height:56px; border-radius:8px; display:flex; align-items:center; justify-content:center; box-shadow: inset 0 -6px 10px rgba(0,0,0,0.06); }
.gohop-score-number { color:#fff; font-weight:700; font-size:22px; }
.gohop-score-text { text-align:center; }
.gohop-score-desc { font-size:14px; color:#333; font-weight:600; }
.gohop-score-sub { font-size:12px; color:#888; }

.gohop-rating-right { flex:1; display:flex; flex-direction:column; gap:10px; }
.gohop-criteria-list { list-style:none; margin:0; padding:0; }
.gohop-criteria-item { display:flex; align-items:center; gap:12px; padding:6px 0; }
.crit-label { width:88px; color:#8a8a8a; font-size:13px; }
.crit-bar { flex:1; height:8px; background:#f1f1f1; border-radius:6px; overflow:hidden; box-shadow: inset 0 1px 0 rgba(255,255,255,0.6); }
.crit-fill { height:100%; background:#2aa05a; width:0%; transition: width 0.4s ease; }
.crit-score { width:28px; text-align:right; font-size:13px; color:#666; }

.gohop-btn-rate { align-self:flex-start; margin-top:6px; padding:8px 14px; border:2px solid #2aa05a; background:transparent; color:#2aa05a; border-radius:8px; cursor:pointer; font-weight:600; }

/* Modal form */
.gohop-rating-modal { position:fixed; left:0; top:0; width:100%; height:100%; display:flex; align-items:center; justify-content:center; background:rgba(0,0,0,0.35); z-index:9999; }
.gohop-rating-form { background:#fff; padding:18px; border-radius:8px; width:360px; box-shadow:0 6px 18px rgba(0,0,0,0.12); }
.gohop-form-note { font-size:13px; color:#666; margin:6px 0 10px; }
.gohop-field { margin-bottom:10px; }
.gohop-field label { display:block; margin-bottom:6px; color:#333; font-size:14px; }
.gohop-field select, .gohop-field textarea { width:100%; padding:8px; border:1px solid #ddd; border-radius:6px; font-size:14px; }
.gohop-form-actions { display:flex; gap:8px; justify-content:flex-end; }
.gohop-submit { background:#2aa05a; color:#fff; padding:8px 12px; border-radius:6px; border:none; cursor:pointer; }
.gohop-cancel { background:transparent; border:1px solid #ccc; padding:8px 12px; border-radius:6px; cursor:pointer; }
.gohop-form-msg { margin-top:8px; color:green; font-size:13px; display:none; }

/* Responsive small screens */
@media (max-width:100%){
    .gohop-rating-box { flex-direction:column; }
    .gohop-rating-left { flex-direction:row; justify-content:flex-start; gap:12px; width:100%; }
    .crit-label { width:100%; }
}