/* Results structure v1: one collection, exact reviews, one clear invitation. */
.dio-results-intro{padding-block:40px 28px;display:flex;align-items:end;justify-content:space-between;gap:32px}
.dio-results-intro h1{font-size:clamp(32px,3.4vw,46px);line-height:1.15;letter-spacing:-.025em;margin:0}
.dio-results-intro p{max-width:360px;color:var(--muted);font-size:17px;line-height:1.55;margin:0}
.dio-results-gallery{padding-bottom:40px}.dio-results-placeholder-note{font-size:13px;color:var(--muted);margin:16px 0 0}
.dio-results-reviews{padding-block:36px 48px;border-top:1px solid var(--rule);scroll-margin-top:110px}
.dio-reviews-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}
.dio-reviews-heading h2{font-size:clamp(28px,2.5vw,36px);margin:0}
.dio-reviews-heading>a{display:inline-flex;min-height:48px;align-items:center;gap:22px;font-size:16px;text-decoration:none}
.reviews-tools{display:grid;grid-template-columns:minmax(0,520px) auto;justify-content:start;align-items:end;gap:10px 24px;margin-bottom:24px}
.reviews-tools label{font-size:15px}.reviews-tools input{display:block;width:100%;min-height:52px;border:1px solid #708894;border-radius:4px;padding:12px 16px;font:inherit;font-size:17px;background:#fff;color:var(--ink);margin-top:8px}
.reviews-tools button,.reviews-empty button:not(.dio-review-control){display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:10px 16px;border:1px solid #788e9a;border-radius:5px;background:#fff;color:var(--ink);font:inherit;font-size:16px;cursor:pointer}
.reviews-tools button{border-color:transparent;text-decoration:underline;text-underline-offset:4px}
.reviews-tools>p{grid-column:1/-1;font-size:14px;color:var(--muted);margin:0}
.dio-review-more{margin-top:20px}.reviews-empty{padding:24px 0}.reviews-empty h3{font-size:22px}.reviews-empty p{font-size:17px;margin:12px 0 16px}
.dio-results-page [hidden]{display:none!important}
.dio-results-page .dio-review-card{scroll-margin-top:12px}
@media(max-width:599px){.dio-results-intro{display:block;padding-block:26px 24px}.dio-results-intro p{font-size:16px;margin-top:12px;max-width:none}.dio-results-gallery{padding-bottom:28px}.dio-results-reviews{padding-block:28px 32px}.dio-reviews-heading{display:block;margin-bottom:20px}.dio-reviews-heading>a{margin-top:8px}.reviews-tools{grid-template-columns:1fr;gap:4px;margin-bottom:18px}.reviews-tools button{justify-self:start;padding-left:0}.reviews-tools>p{margin-top:4px}.dio-review-more{width:100%}}
/* 2026-11-11 audit: the star count card was inset (980px, centred) while the heading above it and the bubbles and review cards below sit
   on the page column, and the bubble intro sat 20px under it. The card takes the column, its bars run the card's width, 48px follows. */
#reviews .dio-vis[data-dio-chart="results-stars"]{max-width:none}
#reviews .dio-vis[data-dio-chart="results-stars"] .ans-chart{margin-bottom:48px}
#reviews .dio-vis[data-dio-chart="results-stars"] .ans-chart .panels:has(> :only-child){grid-template-columns:minmax(0,1fr)}
/* 2026-11-11 audit: the six lines of room kept for a clamped review only even out the three-across rows; in one column it left a hole
   under short reviews, above "Google review" */
@media(max-width:899px){.dio-results-page .dio-review-card[data-enhanced][data-expanded="false"] .dio-review-text{min-height:0}}
/* 2026-11-11 audit: "Clear search" shows only when there is something to clear (a typed word or a picked bubble); it keeps its place */
.rv-themes:not(.has-pick)~.reviews-tools:has(#review-search:placeholder-shown) #review-clear{visibility:hidden}
/* 2026-11-11 audit (regression review): on phones the hidden "Clear search" still held its own 70px row; it takes no room until there is something to clear */
@media(max-width:599px){.rv-themes:not(.has-pick)~.reviews-tools:has(#review-search:placeholder-shown) #review-clear{display:none}}
