/* The stars a customer gives a stay */
.rt-stars { display: inline-flex; gap: .1rem; font-size: .85rem; color: var(--bs-border-color); white-space: nowrap; }
.rt-stars .is-on { color: #f5a524; }
.rt-input { margin: 0 0 .6rem; padding: 0; border: 0; }
.rt-input legend { float: none; margin-bottom: .35rem; font-size: .9rem; font-weight: 600; }
/* Five down to one in the page, one to five on screen: a star lights up with those on its left */
.rt-choice { display: inline-flex; flex-direction: row-reverse; gap: .2rem; }
.rt-choice label { position: relative; padding: .1rem; font-size: 1.6rem; line-height: 1; color: var(--bs-border-color); cursor: pointer; }
.rt-choice input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.rt-choice label:has(input:checked), .rt-choice label:has(input:checked) ~ label { color: #f5a524; }
.rt-choice:hover label:has(input) { color: var(--bs-border-color); }
.rt-choice:hover label:hover, .rt-choice:hover label:hover ~ label { color: #f5a524; }
.rt-choice label:has(input:focus-visible) { outline: 2px solid var(--bs-primary); outline-offset: 2px; border-radius: 4px; }
.rt-comment { display: block; width: 100%; min-height: 4rem; margin-bottom: .6rem; padding: .5rem .7rem; border: 1px solid var(--bs-border-color); border-radius: 6px; background: transparent; color: inherit; font: inherit; font-size: .9rem; }
.rt-given { display: flex; flex-wrap: wrap; gap: .3rem .6rem; align-items: center; margin: 0 0 .6rem; font-size: .9rem; }
.rt-text { display: block; margin: .25rem 0 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.rt-error { margin: 0 0 .6rem; font-size: .85rem; font-weight: 600; color: var(--bs-danger); }
/* A parking's rating: stars, average and count */
.rt-summary { display: inline-flex; flex-wrap: wrap; gap: .1rem .4rem; align-items: center; font-size: .9rem; color: var(--nav-text-strong, inherit); }
.rt-summary strong { font-weight: 700; font-variant-numeric: tabular-nums; }
.rt-summary small { font-size: .8rem; color: var(--nav-text, var(--t-muted)); }
a:has(> .rt-summary) { color: inherit; text-decoration: none; }
a:has(> .rt-summary):hover small { text-decoration: underline; }
.rt-overall .rt-summary { font-size: 1.1rem; }
.rt-overall .rt-stars { font-size: 1.1rem; }
.pp-rating { margin: 0 0 .75rem; }
.rt-reviews { display: grid; gap: .75rem; margin: .75rem 0 0; padding: 0; list-style: none; }
.rt-reviews li { padding: .75rem .9rem; border: 1px solid var(--bs-border-color); border-radius: 10px; }
.rt-review-head { display: flex; flex-wrap: wrap; gap: .25rem .6rem; align-items: center; font-size: .9rem; }
.rt-review-head small { color: var(--nav-text); }
