:root {
    --green: #16a34a;
    --soft: #f5f7f5;
    --text: #1f2937;
}
body { background:#f7faf7; color:var(--text); }
.hero-card, .panel, .review-card, .admin-card, .company-card { background:#fff; border:1px solid #e5efe6; border-radius:18px; box-shadow:0 6px 18px rgba(16,24,40,.04); }
.hero-cover { height:220px; background:linear-gradient(135deg,#0f9f52,#7dd3a0); border-radius:20px; position:relative; overflow:hidden; }
.hero-cover img { width:100%; height:100%; object-fit:cover; }
.hero-info { margin-top:-50px; position:relative; z-index:2; }
.logo-box { width:108px; height:108px; border-radius:20px; border:5px solid #fff; background:#fff; display:flex; align-items:center; justify-content:center; overflow:hidden; box-shadow:0 12px 24px rgba(0,0,0,.1); }
.logo-box img { width:100%; height:100%; object-fit:cover; }
.action-btn { border-radius:999px; border:1px solid #d8e9db; background:#fff; padding:.55rem .9rem; color:#2d3748; text-decoration:none; display:inline-flex; gap:.45rem; align-items:center; }
.section-title { font-size:1.1rem; font-weight:700; margin-bottom:1rem; }
.rating-badge { width:44px; height:44px; border-radius:50%; background:var(--green); color:#fff; display:flex; align-items:center; justify-content:center; font-weight:700; }
.star-text { color:#f59e0b; letter-spacing:2px; }
.review-card { border-left:4px solid var(--green); padding:1.2rem; }
.review-avatar { width:54px; height:54px; border-radius:50%; background:#ebfff1; color:var(--green); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:1.15rem; overflow:hidden; }
.review-avatar-img { width:100%; height:100%; object-fit:cover; }
.tag-pill { background:#eef9f0; border:1px solid #d6efdc; color:#166534; border-radius:999px; font-size:.82rem; padding:.25rem .6rem; display:inline-block; margin:.15rem .25rem .15rem 0; }
.disadvantage { background:#fff2f2; border-color:#ffd7d7; color:#b91c1c; }
.info-row { display:flex; gap:.85rem; margin-bottom:1rem; align-items:flex-start; }
.info-icon { width:40px; height:40px; flex:0 0 40px; border-radius:50%; background:#ebfff1; color:var(--green); display:flex; align-items:center; justify-content:center; }
.category-chip { background:#fff; border:1px solid #d9ebde; border-radius:14px; padding:.7rem .9rem; display:flex; gap:.75rem; align-items:center; }
.category-chip i { width:40px; height:40px; border-radius:50%; background:#ebfff1; color:var(--green); display:flex; align-items:center; justify-content:center; }
.gallery-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(140px,1fr)); gap:12px; }
.gallery-grid img { width:100%; height:110px; object-fit:cover; border-radius:14px; }
.company-card img { width:100%; height:190px; object-fit:cover; border-top-left-radius:18px; border-top-right-radius:18px; }
.admin-sidebar a { display:block; padding:.65rem .85rem; border-radius:12px; text-decoration:none; color:#334155; }
.admin-sidebar a:hover, .admin-sidebar a.active { background:#ecfdf3; color:#166534; }
.form-stars button { border:none; background:none; font-size:1.5rem; color:#f59e0b; }
.small-muted { color:#6b7280; font-size:.93rem; }
.admin-actions .btn { margin:.125rem; }
