.avlink-cr{
  margin-top:24px;
  /* Theme-first variables (allow theme to drive background/text) */
  --avlink-cr-bg:#ffffff;
  --avlink-cr-border:rgba(17,24,39,.08);
  --avlink-cr-text:#111827;
  --avlink-cr-muted:#4b5563;
  --avlink-cr-empty:#d1d5db;
  --avlink-cr-filled:#fbbf24;
  --avlink-cr-filled-hover:#f59e0b;
  --avlink-cr-focus:rgba(251,191,36,.45);
  --avlink-cr-toast-bg:rgba(16,185,129,.12);
  --avlink-cr-toast-text:#047857;
}

/* Card layout mirrors the provided reference design */
.avlink-cr__card{
  padding:32px;
  border:1px solid var(--avlink-cr-border);
  border-radius:20px;
  background:var(--bg-color, var(--avlink-cr-bg));
  color:var(--text-color, var(--avlink-cr-text));
  box-shadow:0 10px 25px -5px rgba(0,0,0,.10),0 8px 10px -6px rgba(0,0,0,.10);
  max-width:420px;
  width:100%;
  margin:0 auto;
  text-align:center;
}

.avlink-cr__title{font-size:20px;font-weight:700;line-height:1.2;margin:0}
.avlink-cr__desc{margin:8px 0 18px;font-size:13px;color:var(--avlink-cr-muted)}
.avlink-cr__stars{display:flex;justify-content:center;margin:0 0 12px}
.avlink-cr__stars-wrap{position:relative;width:200px;height:40px;transition:transform .15s ease}
.avlink-cr--hover .avlink-cr__stars-wrap{transform:scale(1.03)}
.avlink-cr__layer{position:absolute;inset:0;overflow:hidden}
.avlink-cr__layer--filled{width:0%}
.avlink-cr__svg{width:200px;height:40px}
.avlink-cr__svg--empty path{fill:var(--avlink-cr-empty)}
.avlink-cr__svg--filled path{fill:var(--avlink-cr-filled)}
.avlink-cr__hit{position:absolute;inset:0;display:flex}
.avlink-cr__btn{
  flex:1;
  border:0;
  background:transparent;
  cursor:pointer;
  display:block !important;
  padding:0;
  margin:0;
  -webkit-tap-highlight-color:transparent;
}
.avlink-cr__btn:focus-visible{outline:2px solid var(--avlink-cr-focus);outline-offset:4px;border-radius:10px}
.avlink-cr__hint{margin-top:10px;font-size:13px;color:var(--avlink-cr-muted)}
.avlink-cr__info{margin-top:14px;font-size:12px;color:var(--avlink-cr-muted)}
.avlink-cr__avg{font-weight:700;color:var(--text-color, var(--avlink-cr-text))}
.avlink-cr__count{opacity:1;color:inherit}
.avlink-cr__toast{
  margin-top:12px;
  font-size:13px;
  font-weight:600;
  color:var(--avlink-cr-toast-text);
  background:var(--avlink-cr-toast-bg);
  border-radius:10px;
  padding:0 12px;
  line-height:34px;
  max-height:0;
  opacity:0;
  transform:translateY(8px);
  overflow:hidden;
  transition:all .25s ease;
}
.avlink-cr__toast.is-visible{max-height:60px;opacity:1;transform:translateY(0)}
.avlink-cr--disabled .avlink-cr__card{opacity:.75}
.avlink-cr--hover{--avlink-cr-filled:var(--avlink-cr-filled-hover)}
@media (prefers-color-scheme: dark){
  .avlink-cr{
    --avlink-cr-bg:rgba(17,24,39,.62);
    --avlink-cr-border:rgba(255,255,255,.14);
    --avlink-cr-text:#f9fafb;
    --avlink-cr-muted:#d1d5db;
    --avlink-cr-empty:#374151;
    --avlink-cr-focus:rgba(251,191,36,.55);
    --avlink-cr-toast-bg:rgba(16,185,129,.18);
    --avlink-cr-toast-text:#6ee7b7;
  }
}
/* Hard override against theme-wide SVG resets */
.avlink-cr svg{display:block !important;visibility:visible !important;opacity:1 !important}
.avlink-cr__svg{pointer-events:none}
