  .rating-field { border:0; padding:0; margin:0; min-width:0; }
  .rating-field legend { font-size:13px; padding:0; margin-bottom:5px; }
  #id_score.paper-stars { display:flex; width:fit-content; gap:2px; flex-wrap:nowrap; }
  #id_score.paper-stars .paper-star { position:relative; background:transparent; border:0; padding:0; margin:0; display:flex; align-items:center; justify-content:center; width:44px; height:44px; cursor:pointer; border-radius:6px; }
  .paper-star input { position:absolute; width:1px; height:1px; padding:0; margin:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
  .paper-star svg { width:31px; height:31px; fill:transparent; stroke:#a7afa1; stroke-width:1.4; stroke-linejoin:round; transition:fill .12s,stroke .12s; }
  .paper-star:has(input:checked) svg,.paper-star:has(~ .paper-star input:checked) svg { fill:#aa8b32; stroke:#aa8b32; }
  .paper-star:has(input:focus-visible) { outline:2px solid var(--accent); outline-offset:2px; }
  @media(hover:hover) {
    .paper-stars:has(.paper-star:hover) .paper-star svg { fill:transparent; stroke:#a7afa1; }
    .paper-stars .paper-star:is(:hover,:has(~ .paper-star:hover)) svg { fill:#b69a48; stroke:#b69a48; }
  }

#id_score.paper-stars label:has(input:checked){background:transparent;border:0}
