/* =========================
   GBP Modal + Admin
   ========================= */
.ll-gbp-modal{position:fixed;inset:0;z-index:10000}
.ll-gbp-modal[hidden]{display:none}
.ll-gbp-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.45)}
.ll-gbp-modal__dialog{position:relative;margin:6vh auto;max-width:820px;background:#fff;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.25);padding:16px}
.ll-gbp-modal__header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.ll-gbp-modal__close{font-size:22px;line-height:1;padding:6px 10px}
.ll-gbp-modal__body{max-height:65vh;overflow:auto}
.ll-gbp-modal__footer{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}

.ll-gbp-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:900px){.ll-gbp-admin-grid{grid-template-columns:1fr}}

.ll-gbp-progress{position:relative;height:18px;background:#eee;border-radius:10px;overflow:hidden;margin-bottom:10px}
.ll-gbp-progress__bar{position:absolute;left:0;top:0;height:100%;width:0%;background:linear-gradient(90deg,#6aa84f,#38761d)}
.ll-gbp-progress__label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:12px;color:#fff;text-shadow:0 1px 0 rgba(0,0,0,.45)}

.ll-gbp-checklist{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.ll-gbp-checklist li{background:#fafafa;border:1px solid #e5e5e5;border-radius:8px;padding:8px}
.ll-gbp-checklist--readonly .tick{margin-right:6px}
.ll-gbp-checklist--readonly li.is-done{opacity:.85}
.ll-gbp-notes__box{white-space:pre-wrap;border:1px dashed #ccc;background:#fff;padding:8px;border-radius:8px}
.ll-gbp-hours td{padding:2px 6px}

/* =========================
   Google Widgets (scoped)
   ========================= */
.ll-google-rating{
  --rating-font-size:20px;  /* text size (larger) */
  --ll-star-size:22px;      /* star size (larger) */
  font-family:Arial,sans-serif;
  font-size:var(--rating-font-size);
  margin:10px 0;
  display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;
  color:#202124; /* default text */
}
.ll-google-rating .rating-value{font-weight:700;color:#202124}

/* Center ratings in directory cards */
.business-card .ll-google-rating,
.business-card .google-rating {
  justify-content: center;
  text-align: center;
  width: 100%;
}

/* Stars (SVG-based) */
.ll-google-rating .ll-stars{display:inline-flex;gap:3px;align-items:center}
.ll-google-rating .ll-star{width:var(--ll-star-size);height:var(--ll-star-size);display:inline-block;vertical-align:middle}

/* Optional default fill ONLY if polygon has no fill set inline */
.ll-google-rating .ll-star polygon:not([fill]){ fill:#fbbc04; }

/* Reviews link (blue like Google) */
.ll-google-rating a{color:#1a0dab;text-decoration:none}
.ll-google-rating a:hover{text-decoration:underline}

/* Reviews list */
.ll-google-reviews{background:#f9f9f9;padding:10px;margin-bottom:20px;border-radius:5px}
.ll-google-review{margin:0 0 12px}
.ll-google-reviews .ll-review-divider{border:0;border-top:1px solid #e6e6e6;margin:10px 0}
.ll-all-reviews-link{text-align:right;margin:8px 0 0}
.ll-all-reviews-link a{color:#1a0dab;text-decoration:none}
.ll-all-reviews-link a:hover{text-decoration:underline}

/* Business hours */
.ll-business-hours{background:#fff;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.06);padding:12px}
.ll-business-hours h4{margin:10px 0 6px}
.ll-open-now{margin:0 0 8px}
.ll-hours-list{list-style:none;padding-left:0;margin:0}
.ll-hours-list li{margin:2px 0}

/* Small utilities */
.ll-meta{color:#555}
.ll-place-id-ref{margin-top:8px;font-size:12px;color:#666}
.ll-brought-by-business{margin-top:16px}
.ll-related-offers h3,
.ll-gallery-section h3,
.ll-gallery-section h4{margin:8px 0 12px}
