#gpm-download-rating {
  --rating-bg:#ffffff;--rating-fg:#153329;--rating-muted:#49665a;--rating-accent:#126447;--rating-border:#b8d5c7;
  position:fixed;inset:auto max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) auto;
  z-index:10000;box-sizing:border-box;width:min(320px,calc(100vw - 24px));max-height:70vh;overflow:auto;
  padding:14px 16px;border:1px solid var(--rating-border);border-radius:14px;background:var(--rating-bg);
  color:var(--rating-fg);box-shadow:0 5px 24px #102d2325;font:14px/1.4 system-ui,sans-serif;text-align:left;
}
html[data-theme=dark] #gpm-download-rating,html[data-gpm-theme=dark] #gpm-download-rating {
  --rating-bg:#162820;--rating-fg:#ecfaf3;--rating-muted:#c0d6ca;--rating-accent:#83e0b5;--rating-border:#517360;
}
#gpm-download-rating [hidden]{display:none!important}
#gpm-download-rating h2{font:650 18px/1.3 system-ui,sans-serif;color:var(--rating-fg);margin:3px 0}
#gpm-download-rating p{font:14px/1.4 system-ui,sans-serif;color:var(--rating-muted);margin:3px 0}
#gpm-download-rating p:empty{display:none}
#gpm-download-rating .gpm-rating-top{display:flex;align-items:center;justify-content:space-between}
#gpm-download-rating .gpm-rating-top span{font-size:10px;font-weight:700;letter-spacing:.12em;color:var(--rating-accent)}
#gpm-download-rating button{width:auto;min-width:0;border:0;border-radius:5px;background:transparent;color:var(--rating-accent);font:600 14px/1.3 system-ui,sans-serif;cursor:pointer;padding:6px}
#gpm-download-rating [data-stars]{display:flex;gap:1px}
#gpm-download-rating [data-stars] button{width:44px;height:44px;padding:0;text-align:center;font:32px/1 system-ui,sans-serif;opacity:1}
#gpm-download-rating button:disabled{cursor:default}
#gpm-download-rating button:focus-visible,#gpm-download-rating textarea:focus-visible{outline:2px solid var(--rating-accent);outline-offset:1px}
#gpm-download-rating label{display:block;margin-top:8px;color:var(--rating-fg)}
#gpm-download-rating textarea{box-sizing:border-box;display:block;width:100%;padding:7px;border:1px solid var(--rating-border);border-radius:5px;background:var(--rating-bg);color:var(--rating-fg);font:16px/1.4 system-ui,sans-serif;resize:vertical}
