/* ====== Tokens (match site) ====== */
    :root{ --mq-ink:#0f2333; --mq-muted:#2a3d4a; --mq-sky:#0a6aa1; --mq-sky2:#0e4f78; --mq-gold:#f5c76d; --mq-gold2:#e7ad38; --mq-white:#fff; --mq-r:26px; --mq-rs:14px; --mq-shadow-lg:0 28px 60px rgba(6,55,94,.16); --mq-shadow-md:0 16px 32px rgba(6,55,94,.12); --mq-shadow-sm:0 8px 18px rgba(6,55,94,.10) }

    /* ====== Wrapper card (glassy) ====== */
    .sabil-reviews{
      position:relative; isolation:isolate; overflow:hidden;
      background: linear-gradient(180deg, rgba(255,255,255,.70), rgba(255,255,255,.45));
      border:1px solid rgba(14,79,120,.18);
      border-radius: var(--mq-r);
      box-shadow: var(--mq-shadow-md);
      padding: clamp(18px,2.6vw,26px);
      color: var(--mq-ink);
      font-family:"Inter",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
    }
    .sabil-reviews::before{
      content:""; position:absolute; inset:0; z-index:0; pointer-events:none; opacity:.35;
      background:
        radial-gradient(900px 520px at 115% -20%, rgba(10,106,161,.10), transparent 60%),
        radial-gradient(700px 420px at -12% -25%, rgba(231,173,56,.10), transparent 55%),
        linear-gradient(180deg,#f7fbff,#eff6ff);
      mix-blend-mode:multiply;
    }
    .sabil-reviews::after{
      content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none;
      background: linear-gradient(180deg, rgba(245,199,109,.55), rgba(231,173,56,.15));
      -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
      mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
      -webkit-mask-composite:xor; mask-composite:exclude; padding:1px;
    }

    /* ====== Header (avg + stars + count) ====== */
    .sabil-rev-head{ position:relative; z-index:1; display:flex; gap:14px; align-items:center; justify-content:space-between; flex-wrap:wrap; margin-bottom:12px }
    .sabil-rev-summary{ display:flex; align-items:center; gap:12px; flex-wrap:wrap }
    .sabil-avg{
      font-weight:900; color:var(--mq-sky2);
      font-size: clamp(18px,2vw,22px);
      background:linear-gradient(180deg,#ffffff,#fbfdff);
      border:1px solid rgba(14,79,120,.12);
      border-radius:12px; padding:8px 12px; box-shadow:var(--mq-shadow-sm);
    }
    .sabil-count{ color:var(--mq-muted); font-weight:700 }

    /* Stars (display) */
    .sabil-stars{ display:inline-flex; gap:4px; vertical-align:middle }
    .sabil-star{
      width:18px; height:18px;
      background: linear-gradient(180deg,var(--mq-gold),var(--mq-gold2));
      -webkit-mask: polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%) no-repeat center/100% 100%;
              mask: polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%) no-repeat center/100% 100%;
      opacity:.28;
    }
    .sabil-star.on{ opacity:1 }

    .sabil-note{ color:var(--mq-muted); font-size:.95rem; opacity:.95 }

    /* ====== Review list ====== */
    .sabil-rev-item{
      position:relative; z-index:1;
      background:linear-gradient(180deg,#ffffff,#fbfdff);
      border:1px solid rgba(14,79,120,.12);
      border-radius: var(--mq-rs);
      padding:14px 16px; margin:10px 0;
      box-shadow: var(--mq-shadow-sm);
    }
    .sabil-rev-item .meta{ display:flex; gap:10px; align-items:center; margin-bottom:6px; color:var(--mq-sky2); font-weight:800 }
    .sabil-rev-item .meta .date{ color:var(--mq-muted); font-size:12px; font-weight:700; opacity:.75 }
    .sabil-title{ margin:4px 0 6px; color:var(--mq-ink); font-weight:900; font-size:16px }
    .sabil-rev-item .content{ color:var(--mq-muted); line-height:1.85; font-size:15px }
    .sabil-rev-item .content p{ margin:.4em 0 }

    /* ====== Form (Constellation controls) ====== */
    .sabil-form{ position:relative; z-index:1; margin-top:16px; padding-top:16px; border-top:1px dashed rgba(14,79,120,.18) }
    .sabil-form h3{ margin:10px 0 8px; color:var(--mq-sky2); font-weight:900; font-size: clamp(18px,2vw,22px) }
    .sabil-form .field{ margin:10px 0 }
    .sabil-form label{ display:block; font-weight:800; color:var(--mq-sky2); margin-bottom:6px }
    .sabil-input,.sabil-text{
      width:100%; padding:12px 14px; border-radius:14px;
      border:1px solid rgba(14,79,120,.16);
      background:#fff; color:var(--mq-ink);
      box-shadow:0 0 0 8px rgba(10,106,161,.06) inset;
      transition: box-shadow .15s ease, border-color .15s ease;
      font: inherit;
    }
    .sabil-input:focus,.sabil-text:focus{
      outline:none; border-color: rgba(14,79,120,.30);
      box-shadow:0 0 0 10px rgba(10,106,161,.10) inset, 0 0 0 4px rgba(231,173,56,.25);
    }

    /* star picker */
    .sabil-rate-pick{ display:flex; flex-direction:row-reverse; gap:6px } /* RTL-safe */
    .sabil-rate-pick input{ display:none }
    .sabil-rate-pick label{
      width:28px; height:28px; cursor:pointer; opacity:.35;
      background: linear-gradient(180deg,var(--mq-gold),var(--mq-gold2));
      -webkit-mask: polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%) no-repeat center/100% 100%;
              mask: polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%) no-repeat center/100% 100%;
      transition: opacity .15s ease, transform .15s ease;
    }
    .sabil-rate-pick label:hover,
    .sabil-rate-pick label:hover ~ label{ opacity:1; transform:translateY(-1px) }
    /* when checked: fill up to that star */
    .sabil-rate-pick input:checked + label,
    .sabil-rate-pick input:checked + label ~ label{ opacity:1 }

    .sabil-btn{
      appearance:none; border:0; cursor:pointer; text-decoration:none;
      padding:12px 18px; border-radius:14px; font-weight:900;
      background:linear-gradient(180deg,var(--mq-gold),var(--mq-gold2)); color:#4b3000;
      box-shadow:0 12px 24px rgba(229,170,62,.34);
      transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;
    }
    .sabil-btn:hover{ transform:translateY(-2px); box-shadow:0 16px 28px rgba(229,170,62,.4) }
    .sabil-btn:active{ transform:none; filter:brightness(.98) }
    .sabil-privacy{ color:var(--mq-muted); font-size:.95rem; opacity:.95 }

    /* WP comment form minor resets inside our block */
    .sabil-reviews .comment-respond{ margin:0; }
    .sabil-reviews .comment-form p{ margin:0 0 12px }
    .sabil-reviews .form-submit{ margin-top:6px }

    /* RTL safety */
    [dir="rtl"] .sabil-rev-head,
    .rtl .sabil-rev-head{ direction:rtl }
    [dir="rtl"] .sabil-rev-item .meta .date,
    .rtl .sabil-rev-item .meta .date{ margin-right:6px }