Error message

  • Deprecated function: implode(): Passing glue string after array is deprecated. Swap the parameters in drupal_get_feeds() (line 394 of /home/cay45lq1/public_html/includes/common.inc).
  • Deprecated function: The each() function is deprecated. This message will be suppressed on further calls in menu_set_active_trail() (line 2405 of /home/cay45lq1/public_html/includes/menu.inc).

Feed aggregator

New forum topics

Former Trump aide says Republicans should've focused more on issues voters care about

NPR News Headlines - 1 hour 28 min ago

NPR's Juana Summers talks with former Trump aide Sonny Joy Nelson about where some GOP candidates fell short tonight.

(Image credit: Matt Rourke)

Categories: News

Democrat James Talarico wins Texas Senate seat

NPR News Headlines - 1 hour 28 min ago

Democrat James Talarico has won the Senate seat in Texas, according to a race call by the Associated Press.

(Image credit: Mark Felix)

Categories: News

Ohio elects Amy Acton first woman governor

NPR News Headlines - 1 hour 43 min ago

Democrat Amy Acton beat biotech entrepreneur Vivek Ramaswamy, a Republican backed by President Trump, in a race marked in the final weeks by a Ramaswamy attack ad that drew national criticism.

(Image credit: Carolyn Kaster/AP Photo)

Categories: News

5 DSA candidates are elected to the House in a historic night for their movement

NPR News Headlines - 1 hour 49 min ago

The candidates tapped into voter frustration with the political status quo and will now look to translate their success into policy wins that push Democrats further to the left.

(Image credit: Michael M. Santiago)

Categories: News

Rahm Emanuel says Trump's policies have upended the president's coalition

NPR News Headlines - 1 hour 52 min ago

NPR's Scott Detrow talks with Rahm Emanuel, who served as Chicago mayor and chief of staff to President Obama.

(Image credit: Rebecca Blackwell)

Categories: News

Democrat Annie Andrews wins South Carolina Senate race in major upset

NPR News Headlines - 1 hour 54 min ago

Andrews, a pediatrician, defeated GOP Sen. Darline Graham, who was appointed to the seat after the death of her brother, longtime Sen. Lindsey Graham.

(Image credit: Win McNamee)

Categories: News

Tens of millions cast ballots for midterms despite worries of Trump's interference

NPR News Headlines - 2 hours 45 min ago

Across the country, tens of millions of voters made their voices heard at the ballot box with no major disruptions from interference by the Trump administration.

(Image credit: Salwan Georges)

Categories: News

Melat Kiros becomes the first Gen Z woman elected to Congress

NPR News Headlines - 2 hours 59 min ago

The 29-year-old Ethiopian immigrant was one of several candidates to win with backing from the Democratic Socialists of America or its local chapters.

(Image credit: Timothy Hurst)

Categories: News

Former Speaker Nancy Pelosi says Democrats' power lies in their unity

NPR News Headlines - 3 hours 8 min ago

NPR's Mary Louise Kelly speaks with Former House Speaker Nancy Pelosi about the legacy of the Democratic Party.

(Image credit: Heather Diehl/AP Photo/Heather Diehl)

Categories: News

SteelSeries Rival Pro review: peak performance with endless playtime

TechRadar Reviews - 4 hours 33 min ago
SteelSeries Rival Pro review

The SteelSeries Rival Pro feels as if it's really pushing the boundaries of what a gaming mouse can do. Even when I glanced at the specs sheet, I was mightily impressed with the features on offer: interference-free ‘true’ 8K polling, hot-swappable batteries for endless play, and 42,000 DPI sensitivity.

But it’s one thing having a good set of specs, and another performing well in practice. So just how good is the SteelSeries Rival Pro? And is it worth its asking price of $179.99 / £169.99 (about AU$250)? Here’s my verdict after hours of testing.

First of all, this mouse feels incredibly comfortable to use — in fact, it's up there with some of the best mice as far as ergonomics are concerned.

It strikes a happy medium in terms of size, and it fits perfectly in my hand — though it's worth noting that this model is for right-handers only, whereas the ambidextrous form of the SteelSeries Sensei Pro is suited to lefties and righties alike. I use a palm grip style, but the model is also designed to suit those who prefer claw or fingertip as well. I also love how lightweight the Rival Pro is. At 1.9oz / 53g, making sharp movements and adjustments feels supremely swift.

The mouse has a lightly textured matte finish that feels, and indeed looks, pretty nice too. Sure, the matte black finish makes it a little prone to picking up fingerprints, but this is more of a nitpick, and this is likely to be less of an issue if you opt for the alternate white colorway.

And when it comes to performance, the SteelSeries Rival Pro is equally dazzling. I used it to play Cyberpunk 2077 with the LG UltraGear 25G590B 1000Hz gaming monitor, and was astonished by the sheer responsiveness and precision on offer. Aiming felt incredibly stable and accurate, turning the camera felt super-sharp and reactive, and the high-quality optical switches enabled me to let shots fly snappily and reliably. The mechanical scroll wheel also felt very tactile, with ridges offering great grip.

Said optical switches feel great to use for gaming or general productivity, and their mechanical, satisfying sound never felt grating or overzealous to me. Yes, they’re not the quietest switches, so if you prefer a more subdued sound then maybe look elsewhere, but their quality is undeniable — SteelSeries even claims that it tested them for 100 million clicks, so you’ll get plenty of mileage out of this mouse.

(Image credit: Future)

Feature-wise, this mouse has just about everything you could want. The GG app and web app open up all sorts of customization for binds, sensitivity, polling rate, and power management. I mainly used the web app, and found it incredibly easy to use and make small tweaks here and there.

Perhaps the real standout feature, though, is the ‘infinite power system’. You get two batteries with the Rival Pro: one that pops into the mouse itself, and another that you place onto the Ultra Wideband base station. The batteries are hot-swappable, and when your mouse runs flat, you can swiftly substitute in the battery from the base station (which charges while plugged in). As a result, you’ll quite literally never run out of battery — ideal for competitive gamers.

While the Rival Pro mouse lacks a USB port for wired play, this infinite power system means you’ll honestly never need it — totally removing any additional weight or awkwardness that comes with a cable connection.

With an 8K polling rate, SuperSync — which enables you to independently control tracking and clicking polling rates, and aim tools to boot, it truly feels like the perfect gaming mouse. But are there any real downsides?

Well, one thing could prove to put some gamers off: the Rival Pro’s price. At $179.99 / £169.99 (about AU$250), this model is certainly a premium product. Is it worth it? If you want peak performance and essentially endless battery life, then yes. But there are plenty of strong options for less than $100 / £100 out there.

All in all, though, the SteelSeries Rival Pro is an innovative, ergonomic gaming mouse with exceptional performance. If you’re looking to take your game up a notch, look no further than this model.

(Image credit: Future)SteelSeries Rival Pro review: price & release date
  • Priced at $179.99 / £169.99 (about AU$250)
  • Released in October 2026

The SteelSeries Rival Pro was released in October 2026, alongside three other models: the SteelSeries Rival Pro Mini, as well as the SteelSeries Sensei Pro and Sensei Pro Mini. The Rival Pro is priced at $179.99 / £169.99 (about AU$250). That lands it firmly in the premium category, with rivals including the Logitech G Pro X2 Superstrike and the Razer DeathAdder V4 Pro.

SteelSeries Rival Pro review: specs

Interface

Ultra Wideband Wireless (6GHz and above)

Battery life

Up to 60 hours 1K / 16 hours 8K

Sensor

TrueMove 42K Pro Sensor

Polling rate

8KHz (with 9KHz overpolling)

Buttons

6

DPI

42,000

Switches

Optical

Dimensions

4.95 x 2.69 x 1.66 inches / 125.7 x 68.2 x 42.2mm

Weight

1.9oz / 53g

(Image credit: Future)Should I buy the SteelSeries Rival Pro?

Attribute

Notes

Score

Design

Excellent ergonomics, lightweight, great build quality, a little prone to fingerprints.

4.5/5

Performance

True 8K polling with SuperSync, 42K DPI sensitivity, essentially endless battery life.

5/5

Value

Undoubtedly pricey, but has the performance to back it up.

4/5

Buy it if…

You want unbeatable gaming features
If you’re a pro gamer or an enthusiast, then the features available on the Rival Pro are sure to appeal to you. True 8K polling, 42K DPI sensitivity, and detailed customization options are perfectly suited to competitive play.

You want unlimited battery life
The Rival Pro has hot-swappable batteries, with one always on charge in the UWB base station. Apart from the five seconds it takes to swap the two batteries, you’ll get unlimited playtime, which is great for gaming tournaments or everyday use.

Don’t buy it if…

You’re not playing particularly intensive games
For a lot of gamers, the features on board are slightly overkill, so if you’re not playing games that require snappy response times, then you’ll probably be better off with a cheaper option.

You’re on a budget
Leading off from that, the Rival Pro is certainly not a model I’d recommend to anyone on a budget. While its performance ensures its still solid value overall, it's hard to look past that steep asking price.

SteelSeries Rival Pro review: also consider

Logitech G Pro X2 Superstrike
We were blown away by this Logitech mouse when we tested it earlier this year. Its ultra-low click and sensor latency, brilliant switches, and impressive build quality are hard to beat — even if it's pretty pricey. Read our full Logitech G Pro X2 Superstrike review.

Razer DeathAdder V4 Pro
The Razer DeathAdder V4 Pro is a top-tier gaming mouse, boasting flawless performance, a great optical scroll wheel, and beautiful ergonomics. It's similarly priced to this SteelSeries rival, but we’ve seen it pop up on sale from time to time. Read our full Razer DeathAdder V4 Pro review.

(Image credit: Future)How I tested the SteelSeries Rival Pro
  • Tested intensively for hours
  • Used for gaming and general productivity
  • Made use of all features in the GG web app

I spent many hours testing the SteelSeries Rival Pro, during which time I used it for gaming and general productivity.

When gaming, I paired the mouse with the LG UltraGear 25G590B 1000Hz gaming monitor to get the best performance possible. I made sure to play a range of games, but mainly tested the mouse with the PC version of Cyberpunk 2077. On top of this, I made sure to try out all of the mouse’s features and customization options via the GG web app.

More generally, I’ve spent years testing gadgets here at TechRadar, where I serve as a Senior Reviews Writer. I’ve reviewed everything from premium Dolby Atmos soundbars to gaming software, and have tested a number of mice, including the recently released Logitech Mobi Fold.

Categories: Reviews

Jon Ossoff wins reelection in Georgia, easily defeating Republican Mike Collins

NPR News Headlines - 4 hours 37 min ago

A year ago, the Georgia Senate race was considered one of the cycle's marquee Senate showdowns. In the end, Ossoff easily defeated Collins.

(Image credit: Ryan Murphy)

Categories: News

Google Is Forcing Schools to Choose Between Its Search Engine and AI

CNET News - 5 hours 3 min ago
Experts weigh in on the promises and pitfalls of Google’s new policy, which leaves schools unable to use Search unless they opt into its AI tools.
Categories: Technology

AI Data Centers Have a PR Problem. OpenAI Is Proposing a Rebrand

CNET News - 5 hours 11 min ago
As part of the company’s post-midterms marketing campaign, data centers could be called “AI compute campuses.”
Categories: Technology

Roku Retires Aquatic Life Screensaver to Reel Viewers Into Roku City

CNET News - 5 hours 27 min ago
Fans of the Roku aquarium will need to find a new way to just keep swimming.
Categories: Technology

Election Day 2026: Photos from around the country

NPR News Headlines - 5 hours 33 min ago

Voters across the country are heading to the polls today to cast their ballots in the 2026 midterm elections.

(Image credit: Tyrone Turner)

Categories: News

Hisense UR9 review: impressive performance, but with a high price tag

TechRadar Reviews - 5 hours 33 min ago
Hisense UR9 RGB MiniLED TV: Two-minute review

The Hisense UR9 is a great showcase for all that RGB LED TVs have to offer. The RGB LED tech in this TV means its able to hit a much wider range of colors than rival mini-LED TVs with more brightness.

Thanks to the fact this TV gets up to 180Hz refresh rate helps it compete with the best gaming TVs out there (as do features like AMD Freesync). And the color coverage and accuracy are as good as anything else you'll find on the market.

Of course, an RGB TV like this does suffer from some minor blooming, which the best TVs in the premium mid-range bracket have mostly solved. Add in the higher price tag and it’s clear that the Hisense UR9, as well as the other RGB LED TVs hitting the market, don’t offer up the same value as other QLED or mini-LED TVs in the same price range.

Like those other TVs though, it is filled to the gills with features, such as the conversational, AI-powered (albeit imperfect) Google Gemini voice assistant. Dolby Vision 2, Dolby Atmos, and other AI-powered features are also on offer.

The whole package is a bit pricey (unless you get one through Best Buy where the price has been slashed by a significant amount), but if you’re willing to throw in extra cash to be an early adopter, the Hisense UR9 is a great centerpiece to a home theater.

Hisense UR9 RGB MiniLED TV review: Price and release date

The Hisense UR9 showcasing its bright colors and smooth action during some Madden 26 PS5 gaming (Image credit: Future / James Holland)
  • Release date? April 2026
  • 65-inch: $3,499.99 ($1,999 through Best Buy), £1,699, AU$2,995
  • 75-inch: $4,999.99 ($2,999 through Best Buy), £2,299, AU$3,995
  • 85-inch: $5,999.99 ($3,999 through Best Buy), £2,999, AU$4,995
  • 100-inch: $8,999.99 ($5,999.99 through Best Buy) (around £6,760 / AU$12,780)

Since RGB LED TVs are the newest technology on the block, the prices are going to be a little higher than if you compare to more standard mini- or micro-LED TVs. After all, these types of TVs have only been on our collective radar since they were first introduced at CES 2025.

The Hisense UR9, released in April of 2026, has an MSRP of $3,499.99 / £1,999 / $3,999 at its smallest 65-inch size with prices going up to $8,999.99 (around £6,760 / AU$12,780) for the 100-inch, the biggest in the product line — although this size is only available in the US. It’s also available in 75- and 85-inch sizes.

Of course, the price has dropped since its release at various retailers by a pretty significant amount, with prices of $1,699 / £1,699 / AU$2,995 for the 65-inch, $2,499 / £2,299 / AU$3,995 for the 75-inch, and $3,499 / £2,999 / AU$4,995 for the 85-inch. Finally, the 100-inch version has had a massive price drop in the US down to $4,999.99 (around £4,510 / AU$8,520).

Hisense UR9 RGB MiniLED TV review: Specs

Screen type

RGB mini-LED

Refresh rate

180Hz

HDR support

HDR10, HDR10+, HLG, Dolby Vision

Smart TV

Google TV

HDMI ports

3x HDMI 2.1 (1x eArc), DisplayPort

Built-in tuner

ATSC 3.0 (NextGen TV), NTSC, Clear QAM

Hisense UR9 RGB MiniLED TV review: Benchmark results@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;700&display=swap'); @import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;700&display=swap'); #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper *, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper *:before, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper *:after, #fv-chart-1793621995295-o52s1xgav-slideshow *, #fv-chart-1793621995295-o52s1xgav-slideshow *:before, #fv-chart-1793621995295-o52s1xgav-slideshow *:after { box-sizing: border-box !important; margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper, #fv-chart-1793621995295-o52s1xgav-slideshow { font-family: 'Open Sans', sans-serif !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper { position: relative !important; overflow: visible !important; --riv-primary: #2E6E93; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-inner-wrapper { color: #1F2937 !important; background-color: #ffffff !important; padding: 1.5rem 1.5rem 2rem !important; border-radius: 0.5rem !important; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important; margin: 1rem 0 !important; display: flex !important; flex-direction: column !important; overflow: hidden !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-inner-wrapper.fv-no-header.fv-is-image-compare { padding-top: 0 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.fv-full-bleed { width: 100vw !important; margin-left: calc(50% - 50vw) !important; } body { overflow-x: clip !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.fv-full-bleed .fv-inner-wrapper { padding: 0 !important; border-radius: 0 !important; box-shadow: none !important; margin: 0 !important; background-color: transparent !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-inner-wrapper.fv-is-shop-the-look { padding: 0 !important; border-radius: 0 !important; box-shadow: none !important; margin: 0 !important; background-color: transparent !important; } #fv-chart-1793621995295-o52s1xgav-slideshow { position: relative !important; width: 100% !important; margin: 1rem 0 !important; --riv-primary: #2E6E93; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-slides-wrapper { position: relative !important; width: 100% !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-slide { width: 100% !important; animation: fv-fade-in 0.3s ease-in-out; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-slideshow-nav-row { position: relative !important; display: flex !important; justify-content: space-between !important; align-items: center !important; padding: 0 0 16px 0 !important; width: 100% !important; z-index: 20 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-nav-btn { background-color: var(--riv-primary) !important; color: #ffffff !important; border: none !important; border-radius: 4px !important; padding: 8px 16px !important; font-size: 14px !important; font-weight: 700 !important; cursor: pointer !important; display: flex !important; align-items: center !important; justify-content: center !important; gap: 6px !important; transition: opacity 0.2s, background-color 0.2s !important; height: 36px !important; text-transform: none !important; box-shadow: 0 1px 2px rgba(0,0,0,0.1) !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-nav-btn svg { width: 18px !important; height: 18px !important; stroke-width: 3px !important; filter: none !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-nav-btn:hover { opacity: 0.9 !important; transform: translateY(-1px) !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-nav-btn.disabled, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-nav-btn:disabled { background-color: #E5E7EB !important; color: #9CA3AF !important; cursor: default !important; pointer-events: none !important; box-shadow: none !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-slide-counter { font-family: 'Poppins', sans-serif !important; font-size: 14px !important; font-weight: 600 !important; color: #374151 !important; text-align: center !important; min-width: 40px !important; background-color: rgba(255,255,255,0.8) !important; padding: 2px 8px !important; border-radius: 10px !important; user-select: none !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-slideshow-select { position: absolute !important; top: 10px !important; right: 10px !important; z-index: 20 !important; appearance: none !important; -webkit-appearance: none !important; -moz-appearance: none !important; background-color: white !important; border: 1px solid #d1d5db !important; color: #1F2937 !important; font-family: 'Open Sans', sans-serif !important; font-size: 14px !important; font-weight: 600 !important; padding: 6px 32px 6px 12px !important; border-radius: 4px !important; cursor: pointer !important; box-shadow: 0 1px 2px rgba(0,0,0,0.05) !important; background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e") !important; background-position: right 0.5rem center !important; background-repeat: no-repeat !important; background-size: 1.5em 1.5em !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-slideshow-select:focus { outline: 2px solid #2E6E93 !important; border-color: #2E6E93 !important; } @keyframes fv-fade-in { from { opacity: 0; } to { opacity: 1; } } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-chart-title { font-weight: bold !important; text-align: center !important; margin-bottom: 0.5rem !important; color: var(--riv-primary) !important; font-size: 20px !important; line-height: 1.2 !important; font-family: 'Open Sans', sans-serif !important; text-transform: none !important; white-space: normal !important; overflow-wrap: break-word !important; padding: 0 20px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-chart-subhead { font-size: 18px !important; font-weight: 500 !important; text-align: center !important; margin-bottom: 2rem !important; color: #374151 !important; line-height: 1.7 !important; font-family: 'Open Sans', sans-serif !important; display: block !important; text-transform: none !important; padding: 0 20px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .rv-chart-caption { font-size: 15px !important; color: #374151 !important; text-align: center !important; font-style: normal !important; font-weight: normal !important; line-height: 1.7 !important; font-family: 'Open Sans', sans-serif !important; display: block !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-chart { display: flex; flex-direction: column; width: 100%; margin-top: 1rem; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 1.5rem; padding: 0 1rem; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-select-wrapper { flex: 1; min-width: 0; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-select-wrapper.fv-left { text-align: center; padding-right: 1rem; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-select-wrapper.fv-right { text-align: center; padding-left: 1rem; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-select-container { position: relative; display: inline-block; max-width: 100%; width: 100%; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-chevron { position: absolute; top: 50%; transform: translateY(-50%); pointer-events: none; width: 16px; height: 16px; flex-shrink: 0; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-select-wrapper.fv-left .fv-versus-chevron { right: 0; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-select-wrapper.fv-right .fv-versus-chevron { right: 0; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-select { background: transparent; border: none; border-bottom: 2px solid; font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 14px; padding: 0.25rem 0; cursor: pointer; outline: none; appearance: none; -webkit-appearance: none; -moz-appearance: none; max-width: 100%; width: 100%; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-select.fv-select-left { text-align: center; direction: ltr; padding-right: 1.25rem; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-select.fv-select-right { text-align: center; padding-right: 1.25rem; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-select option { font-family: 'Open Sans', sans-serif; font-weight: 400; font-size: 14px; color: #374151; direction: ltr; text-align: left; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-vs { font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 14px; color: #374151; letter-spacing: 0.1em; padding: 0 1rem; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-body { display: flex; flex-direction: column; gap: 1.5rem; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-row { position: relative; height: auto; padding-top: 20px; margin-bottom: 0.25rem; display: block; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-bar-container { position: relative; height: 32px; display: flex; align-items: center; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-bar-left-wrapper { flex: 1; height: 100%; display: flex; justify-content: flex-end; align-items: center; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-bar-right-wrapper { flex: 1; height: 100%; display: flex; justify-content: flex-start; align-items: center; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-bar { height: 32px; width: var(--target-width); transition: width 0.8s ease-out; animation: fv-grow-max-width 0.8s ease-out forwards; display: flex; align-items: center; overflow: hidden; color: #ffffff; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-bar-left { border-radius: 4px 0 0 4px; justify-content: flex-end; padding: 0 8px; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-bar-right { border-radius: 0 4px 4px 0; justify-content: flex-start; padding: 0 8px; } @keyframes fv-grow-max-width { from { max-width: 0; } to { max-width: 100%; } } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-center-line { position: absolute; left: 50%; top: 0; bottom: 0; width: 4px; background-color: #ffffff; transform: translateX(-50%); z-index: 1; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-inside-left { white-space: nowrap; flex-shrink: 0; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-inside-right { white-space: nowrap; flex-shrink: 0; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-val-text { font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 14px; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-pct-diff { font-size: 12px; font-weight: 600; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-label { position: absolute; left: 50%; transform: translateX(-50%); top: 0; background-color: transparent; border: none; box-shadow: none; padding: 0; font-family: 'Open Sans', sans-serif; font-weight: 700; font-size: 14px; color: #374151; white-space: nowrap; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bottom-bar { display: flex !important; flex-direction: column !important; align-items: center !important; margin-top: 0.5rem !important; gap: 1rem !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-footer-content { text-align: center !important; width: 100% !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-logo { display: block !important; margin: 0 auto !important; width: 120px !important; min-width: 120px !important; max-width: 120px !important; height: auto !important; object-fit: contain !important; flex-shrink: 0 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-dropdown-wrapper { text-align: center !important; margin-bottom: 16px !important; margin-top: 0 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-dropdown-title-container { position: relative !important; display: inline-block !important; max-width: 100% !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-dropdown-title { appearance: none !important; -webkit-appearance: none !important; -moz-appearance: none !important; background: transparent !important; border: none !important; font-size: 18px !important; font-weight: 600 !important; color: var(--riv-primary) !important; padding-right: 28px !important; padding-left: 10px !important; cursor: pointer !important; text-align: center !important; text-align-last: center !important; width: auto !important; max-width: 100% !important; font-family: 'Open Sans', sans-serif !important; line-height: 1.3 !important; margin: 0 !important; text-overflow: ellipsis !important; overflow: hidden !important; white-space: nowrap !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-dropdown-title:focus { outline: none !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-dropdown-title::-ms-expand { display: none !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-dropdown-chevron { position: absolute !important; right: 0 !important; top: 50% !important; transform: translateY(-50%) !important; pointer-events: none !important; color: var(--riv-primary) !important; display: flex !important; align-items: center !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-carousel-title-controls { display: flex !important; justify-content: space-between !important; align-items: center !important; margin-bottom: 16px !important; width: 100% !important; gap: 12px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-carousel-nav-btn { background: transparent !important; border: 1px solid #d1d5db !important; border-radius: 6px !important; padding: 6px 10px !important; cursor: pointer !important; font-size: 14px !important; color: #374151 !important; display: flex !important; align-items: center !important; gap: 4px !important; font-family: 'Open Sans', sans-serif !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-carousel-nav-btn:hover { border-color: #9ca3af !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-carousel-counter { font-size: 14px !important; color: #374151 !important; text-align: center !important; margin-top: 1rem !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-legend { display: flex !important; justify-content: center !important; flex-wrap: wrap !important; gap: 8px 16px !important; margin: 0 !important; padding: 0 !important; margin-top: 1rem !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-legend-item { display: flex !important; align-items: center !important; gap: 6px !important; font-size: 14px !important; color: #374151 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-legend-color { width: 12px !important; height: 12px !important; border-radius: 3px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-multi-value-legend { display: flex !important; justify-content: center !important; flex-wrap: wrap !important; gap: 12px 24px !important; margin-bottom: 1.5rem !important; padding: 0 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-multi-legend-item { display: flex !important; align-items: center !important; gap: 8px !important; font-size: 14px !important; color: #374151 !important; font-weight: 500 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-multi-legend-swatch { width: 16px !important; height: 16px !important; border-radius: 3px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-benchmark-group { margin-bottom: 1rem !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-benchmark-title { font-size: 18px !important; font-weight: 600 !important; margin-bottom: 16px !important; margin-top: 0 !important; padding: 0 !important; text-align: center !important; color: var(--riv-primary) !important; flex: 1 !important; min-width: 0 !important; font-family: 'Open Sans', sans-serif !important; line-height: 1.3 !important; text-transform: none !important; white-space: normal !important; overflow-wrap: break-word !important; word-wrap: break-word !important; max-width: 100% !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar-row, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-stacked-product { display: flex !important; align-items: center !important; width: 100% !important; margin-bottom: 0.75rem !important; position: relative !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar-label { width: 150px !important; flex-shrink: 0 !important; font-size: 14px !important; color: #374151 !important; padding-right: 10px !important; text-align: right !important; font-weight: 500 !important; display: block !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar-container { flex-grow: 1 !important; background-color: #E5E7EB !important; border-radius: 4px !important; min-height: 25px !important; border: 1px solid #D1D5DB !important; position: relative !important; display: flex !important; align-items: center !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar-commentary-inline { display: none !important; position: absolute !important; left: 150px !important; top: 0 !important; bottom: 0 !important; right: 0 !important; width: calc(100% - 150px) !important; margin: 0 !important; padding: 0 8px !important; font-size: 13px !important; color: #fff !important; background: rgba(0,0,0,0.8) !important; border-radius: 4px !important; line-height: 1.4 !important; font-weight: normal !important; text-transform: none !important; word-wrap: break-word !important; z-index: 10 !important; align-items: center !important; overflow-y: auto !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.preview-wrapper .fv-bar-row:hover .fv-bar-commentary-inline, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.preview-wrapper .fv-bar-commentary-inline:focus, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.preview-wrapper .fv-bar-commentary-inline:focus-within, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-bar-row:hover .fv-bar-commentary-inline, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-bar-commentary-inline:focus, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-bar-commentary-inline:focus-within { display: flex !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar { height: 100% !important; border-radius: 3px !important; display: flex !important; align-items: center !important; transition: opacity 0.2s ease, width 0.8s ease-out !important; min-height: 23px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar:hover { opacity: 0.8 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar-inner-content { display: flex !important; justify-content: space-between !important; align-items: center !important; width: 100% !important; height: 100% !important; padding: 0 8px !important; font-size: 14px !important; font-weight: bold !important; overflow: hidden !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar-inner-label { white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; padding-right: 8px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar-inner-value { flex-shrink: 0 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar-value-outside { padding-left: 8px !important; font-size: 14px !important; font-weight: bold !important; color: #374151 !important; white-space: nowrap !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar-label.fv-primary-product { font-weight: bold !important; color: var(--riv-primary) !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-multi-bar-container { flex-direction: column !important; padding: 4px !important; align-items: stretch !important; gap: 4px !important; height: auto !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-multi-bar-item { display: flex !important; align-items: center !important; height: 25px !important; width: 100% !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-stacked-bar { display: flex !important; overflow: hidden !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-stacked-segment { height: 100% !important; display: flex !important; align-items: center !important; justify-content: flex-end !important; padding-right: 8px !important; border-right: 1px solid rgba(255,255,255,0.3) !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-stacked-segment:last-child { border-right: none !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-segment-value { font-size: 14px !important; font-weight: bold !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-grouped-bar-product { display: flex !important; flex-direction: column !important; width: 100% !important; margin-bottom: 1.25rem !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-grouped-product-title-wrapper { padding-left: 150px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-grouped-product-title { width: 100% !important; text-align: left !important; padding-right: 0 !important; margin-bottom: 0.5rem !important; font-weight: 700 !important; font-size: 14px !important; color: #374151 !important; text-transform: none !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar-cluster { width: 100% !important; flex-grow: 1 !important; display: flex !important; flex-direction: column !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar-cluster .fv-bar-row { margin-bottom: 3px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar-cluster .fv-bar-container { height: 20px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-dials-grid { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(145px, 1fr)) !important; gap: 1.5rem 1rem !important; width: 100% !important; margin: 0.75rem 0 1.25rem !important; align-items: start !important; justify-items: center !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-dial-card { display: flex !important; flex-direction: column !important; align-items: center !important; text-align: center !important; width: 100% !important; max-width: 220px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-dial-title { font-family: 'Poppins', 'Open Sans', sans-serif !important; font-size: 18px !important; font-weight: 700 !important; color: #2b2b2b !important; line-height: 1.25 !important; margin-bottom: 0.35rem !important; text-align: center !important; width: 100% !important; overflow-wrap: break-word !important; text-transform: none !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-dial-svg-wrapper { width: 100% !important; max-width: 200px !important; display: flex !important; justify-content: center !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-dial-svg { width: 100% !important; height: auto !important; display: block !important; overflow: visible !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-dial-needle { transition: transform 0.9s cubic-bezier(0.22, 1, 0.36, 1) !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-dial-commentary { margin-top: 0.35rem !important; font-size: 13px !important; line-height: 1.45 !important; color: #4B5563 !important; text-align: center !important; width: 100% !important; padding: 0 4px !important; font-family: 'Open Sans', sans-serif !important; word-wrap: break-word !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.preview-wrapper .fv-dial-commentary-input { min-height: 22px !important; border: 1px dashed transparent !important; border-radius: 4px !important; transition: border-color 0.15s ease, background-color 0.15s ease !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.preview-wrapper .fv-dial-card:hover .fv-dial-commentary-input, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.preview-wrapper .fv-dial-commentary-input:focus { border-color: #CBD5E1 !important; background-color: rgba(241, 245, 249, 0.6) !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .riv-grid line { stroke: #D1D5DB !important; stroke-dasharray: 3 3 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-x-axis-wrapper { display: flex !important; width: 100% !important; margin-top: 0.5rem !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-x-axis-label-space { width: 150px !important; padding-right: 10px !important; flex-shrink: 0 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-x-axis-chart-space { flex-grow: 1 !important; padding-right: 8px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-x-axis-wrapper.fv-grouped-x-axis { margin-left: 0 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-x-axis-line { border-top: 1px solid #D1D5DB !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-x-axis-ticks { display: flex !important; justify-content: space-between !important; padding-top: 4px !important; font-size: 13px !important; color: #374151 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-x-axis-ticks span { position: relative !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-x-axis-ticks span::before { content: '' !important; position: absolute !important; top: -6px !important; left: 50% !important; transform: translateX(-50%) !important; width: 2px !important; height: 4px !important; background-color: #D1D5DB !important; border-radius: 1px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-x-axis-unit { text-align: center !important; font-size: 14px !important; color: #374151 !important; margin-top: 8px !important; display: block !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-x-axis-title { text-align: center !important; font-size: 15px !important; color: #374151 !important; margin-top: 8px !important; margin-bottom: 16px !important; line-height: 1.5 !important; padding: 0 1rem !important; display: block !important; font-weight: bold !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-y-axis-title { font-size: 15px !important; color: #374151 !important; line-height: 1.5 !important; text-align: left !important; padding-left: 5.83% !important; margin-bottom: 4px !important; display: block !important; font-weight: bold !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-pie-container, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-pie-container { flex-direction: column !important; gap: 1rem !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-grouped-product-title-wrapper, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-grouped-product-title-wrapper { padding-left: 0 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-bar-row, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-stacked-product, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-grouped-bar-product, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-bar-row, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-stacked-product, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-grouped-bar-product { flex-direction: column !important; align-items: flex-start !important; margin-bottom: 1.25rem !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-bar-label:not(.fv-grouped-product-title), #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-bar-label:not(.fv-grouped-product-title) { width: 100% !important; text-align: left !important; padding-right: 0 !important; margin-bottom: 0.25rem !important; font-size: 14px !important; font-weight: 700 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-bar-label, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-grouped-product-title, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-bar-label, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-grouped-product-title { width: 100% !important; text-align: left !important; padding-right: 0 !important; margin-bottom: 0.25rem !important; font-size: 14px !important; font-weight: 700 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-bar-container, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-bar-cluster, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-bar-container, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-bar-cluster { width: 100% !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-bar-row .fv-bar-commentary-inline, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-bar-row:hover .fv-bar-commentary-inline, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-bar-row .fv-bar-commentary-inline:focus, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-bar-row .fv-bar-commentary-inline:focus-within, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-bar-row .fv-bar-commentary-inline, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-bar-row:hover .fv-bar-commentary-inline, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-bar-row .fv-bar-commentary-inline:focus, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-bar-row .fv-bar-commentary-inline:focus-within { position: static !important; display: block !important; width: 100% !important; margin: 4px 0 0 0 !important; padding: 0 !important; background: transparent !important; color: #6B7280 !important; font-size: 12px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-x-axis-wrapper, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-x-axis-wrapper { margin-left: 0 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-x-axis-label-space, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-x-axis-label-space { display: none !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-x-axis-chart-space, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-x-axis-chart-space { padding-right: 0 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-benchmark-title, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-benchmark-title { font-size: 16px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-dropdown-title, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-dropdown-title { font-size: 16px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-carousel-nav-btn, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-carousel-nav-btn { padding: 8px 12px !important; font-size: 14px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-chart-title, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-chart-title { padding: 0 8px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-chart-subhead, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-chart-subhead { padding: 0 8px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-versus-header, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-versus-header { flex-direction: column !important; align-items: center !important; padding: 0 !important; gap: 0.5rem !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-versus-select-wrapper, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-versus-select-wrapper { flex: 1 !important; min-width: 0 !important; width: 100% !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-versus-select-wrapper.fv-left, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-versus-select-wrapper.fv-left { text-align: center !important; padding-right: 0 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-versus-select-wrapper.fv-right, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-versus-select-wrapper.fv-right { text-align: center !important; padding-left: 0 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-versus-select.fv-select-left, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-versus-select.fv-select-left { text-align: center !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-versus-select.fv-select-right, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-versus-select.fv-select-right { text-align: center !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-versus-vs, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-versus-vs { text-align: center !important; padding: 0.25rem 0 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-versus-select-container, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-versus-select-container { max-width: 100% !important; width: 100% !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-versus-select, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-versus-select { font-size: 14px !important; width: 100% !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-stl-shop-all-btn, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-stl-shop-all-btn { bottom: 0.5rem !important; right: 0.5rem !important; height: 2rem !important; font-size: 0.75rem !important; padding: 0 0.75rem 0 2.5rem !important; max-width: calc(100% - 1rem) !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-stl-shop-all-logo, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-stl-shop-all-icon, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-stl-shop-all-logo, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-stl-shop-all-icon { width: 2rem !important; height: 2rem !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-stl-shop-all-icon svg, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-stl-shop-all-icon svg { width: 14px !important; height: 14px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-bar-commentary-inline, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-bar-commentary-inline { display: block !important; margin-left: 0 !important; width: 100% !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-dials-grid, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-dials-grid { grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)) !important; gap: 1.25rem 0.75rem !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-dial-title, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.labels-on-top .fv-dial-title { font-size: 16px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view .fv-y-axis-title { padding-left: 5% !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.mobile-view.fv-contains-line-chart .fv-footer-content { margin-left: -1rem !important; margin-right: -1rem !important; } @media (max-width: 599px) { #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-pie-container { flex-direction: column !important; gap: 1rem !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-grouped-product-title-wrapper { padding-left: 0 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar-row, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-stacked-product, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-grouped-bar-product { flex-direction: column !important; align-items: flex-start !important; margin-bottom: 1.25rem !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar-label:not(.fv-grouped-product-title) { width: 100% !important; text-align: left !important; padding-right: 0 !important; margin-bottom: 0.25rem !important; font-size: 14px !important; font-weight: 700 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar-label, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-grouped-product-title { width: 100% !important; text-align: left !important; padding-right: 0 !important; margin-bottom: 0.25rem !important; font-size: 14px !important; font-weight: 700 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar-container, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar-cluster { width: 100% !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar-row .fv-bar-commentary-inline, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar-row:hover .fv-bar-commentary-inline, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar-row .fv-bar-commentary-inline:focus, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar-row .fv-bar-commentary-inline:focus-within { position: static !important; display: block !important; width: 100% !important; margin: 4px 0 0 0 !important; padding: 0 !important; background: transparent !important; color: #6B7280 !important; font-size: 12px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-x-axis-wrapper { margin-left: 0 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-x-axis-label-space { display: none !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-x-axis-chart-space { padding-right: 0 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-benchmark-title { font-size: 16px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-dropdown-title { font-size: 16px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-carousel-nav-btn { padding: 8px 12px !important; font-size: 14px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-chart-title { padding: 0 8px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-chart-subhead { padding: 0 8px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-header { flex-direction: column !important; align-items: center !important; padding: 0 !important; gap: 0.5rem !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-select-wrapper { flex: 1 !important; min-width: 0 !important; width: 100% !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-select-wrapper.fv-left { text-align: center !important; padding-right: 0 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-select-wrapper.fv-right { text-align: center !important; padding-left: 0 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-select.fv-select-left { text-align: center !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-select.fv-select-right { text-align: center !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-vs { text-align: center !important; padding: 0.25rem 0 !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-select-container { max-width: 100% !important; width: 100% !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-versus-select { font-size: 14px !important; width: 100% !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-stl-shop-all-btn { bottom: 0.5rem !important; right: 0.5rem !important; height: 2rem !important; font-size: 0.75rem !important; padding: 0 0.75rem 0 2.5rem !important; max-width: calc(100% - 1rem) !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-stl-shop-all-logo, #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-stl-shop-all-icon { width: 2rem !important; height: 2rem !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-stl-shop-all-icon svg { width: 14px !important; height: 14px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-bar-commentary-inline { display: block !important; margin-left: 0 !important; width: 100% !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-dials-grid { grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)) !important; gap: 1.25rem 0.75rem !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-dial-title { font-size: 16px !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper .fv-y-axis-title { padding-left: 5% !important; } #fv-chart-1793621995295-o52s1xgav-slideshow .fv-chart-wrapper.fv-contains-line-chart .fv-footer-content { margin-left: -1rem !important; margin-right: -1rem !important; } }[{ "@context": "https://schema.org", "@type": "Dataset", "name": "Brightness measurements", "description": "Subhead to describe the test and what's being measured and why", "creator": { "@type": "Organization", "name": "TechRadar", "logo": "https://cdn.mos.cms.futurecdn.net/dAwPEozB9GMMhAngdFJTHb.png" }, "isAccessibleForFree": true, "dateCreated": "2026-11-02T12:19:55.296Z", "citation": "Add your caption to explain the data, the learnings and the key takeaways of the data being visualized", "keywords": [ "Hisense UR9", "TCL QM8L", "Hisense UR8", "HDR Filmmaker Mode (10% window)", "HDR Standard Mode (10% window)", "SDR Filmmaker Mode (10% window)", "SDR Standard Mode (10% window)", "HDR Filmmaker Mode (Fullscreen)", "HDR Standard Mode (Fullscreen)", "SDR Filmmaker Mode (Fullscreen)", "SDR Standard Mode (Fullscreen)", "HDR Filmmaker Mode", "HDR Standard", "SDR Filmmaker Mode", "SDR Standard", "benchmark", "comparison", "performance", "review", "TechRadar" ], "measurementTechnique": "Performance Benchmarking", "variableMeasured": [ { "@type": "PropertyValue", "name": "Hisense UR9 – HDR Filmmaker Mode (10% window)", "value": 4370, "unitText": "nits" }, { "@type": "PropertyValue", "name": "Hisense UR9 – HDR Filmmaker Mode (Fullscreen)", "value": 1096, "unitText": "nits" }, { "@type": "PropertyValue", "name": "TCL QM8L – HDR Filmmaker Mode (10% window)", "value": 3719, "unitText": "nits" }, { "@type": "PropertyValue", "name": "TCL QM8L – HDR Filmmaker Mode (Fullscreen)", "value": 759, "unitText": "nits" }, { "@type": "PropertyValue", "name": "Hisense UR8 – HDR Filmmaker Mode (10% window)", "value": 2097, "unitText": "nits" }, { "@type": "PropertyValue", "name": "Hisense UR8 – HDR Filmmaker Mode (Fullscreen)", "value": 771, "unitText": "nits" }, { "@type": "PropertyValue", "name": "Hisense UR9 – HDR Standard Mode (10% window)", "value": 3003, "unitText": "nits" }, { "@type": "PropertyValue", "name": "Hisense UR9 – HDR Standard Mode (Fullscreen)", "value": 1124, "unitText": "nits" }, { "@type": "PropertyValue", "name": "TCL QM8L – HDR Standard Mode (10% window)", "value": 3771, "unitText": "nits" }, { "@type": "PropertyValue", "name": "TCL QM8L – HDR Standard Mode (Fullscreen)", "value": 795, "unitText": "nits" }, { "@type": "PropertyValue", "name": "Hisense UR8 – HDR Standard Mode (10% window)", "value": 2394, "unitText": "nits" }, { "@type": "PropertyValue", "name": "Hisense UR8 – HDR Standard Mode (Fullscreen)", "value": 767, "unitText": "nits" }, { "@type": "PropertyValue", "name": "Hisense UR9 – SDR Filmmaker Mode (10% window)", "value": 188, "unitText": "nits" }, { "@type": "PropertyValue", "name": "Hisense UR9 – SDR Filmmaker Mode (Fullscreen)", "value": 227, "unitText": "nits" }, { "@type": "PropertyValue", "name": "TCL QM8L – SDR Filmmaker Mode (10% window)", "value": 229, "unitText": "nits" }, { "@type": "PropertyValue", "name": "Hisense UR8 – SDR Filmmaker Mode (10% window)", "value": 314, "unitText": "nits" }, { "@type": "PropertyValue", "name": "Hisense UR8 – SDR Filmmaker Mode (Fullscreen)", "value": 372, "unitText": "nits" }, { "@type": "PropertyValue", "name": "Hisense UR9 – SDR Standard Mode (10% window)", "value": 2175, "unitText": "nits" }, { "@type": "PropertyValue", "name": "Hisense UR9 – SDR Standard Mode (Fullscreen)", "value": 794, "unitText": "nits" }, { "@type": "PropertyValue", "name": "TCL QM8L – SDR Standard Mode (10% window)", "value": 518, "unitText": "nits" }, { "@type": "PropertyValue", "name": "Hisense UR8 – SDR Standard Mode (10% window)", "value": 1514, "unitText": "nits" }, { "@type": "PropertyValue", "name": "Hisense UR8 – SDR Standard Mode (Fullscreen)", "value": 778, "unitText": "nits" } ]},{ "@context": "https://schema.org", "@type": "Dataset", "name": "HDR color gamut", "description": "Closer to 100% is better. Taken using a colorimeter and test pattern generator.", "creator": { "@type": "Organization", "name": "TechRadar", "logo": "https://cdn.mos.cms.futurecdn.net/dAwPEozB9GMMhAngdFJTHb.png" }, "isAccessibleForFree": true, "dateCreated": "2026-11-02T12:19:55.296Z", "citation": "Add your caption to explain the data, the learnings and the key takeaways of the data being visualized", "keywords": [ "Hisense UR9", "TCL QM8L", "Hisense UR8", "UHDA-P3", "BT.2020", "HDR Filmmaker Mode", "benchmark", "comparison", "performance", "review", "TechRadar" ], "measurementTechnique": "Performance Benchmarking", "variableMeasured": [ { "@type": "PropertyValue", "name": "Hisense UR9 – UHDA-P3", "value": 99.8, "unitText": "" }, { "@type": "PropertyValue", "name": "Hisense UR9 – BT.2020", "value": 93.1, "unitText": "" }, { "@type": "PropertyValue", "name": "TCL QM8L – UHDA-P3", "value": 97.9, "unitText": "" }, { "@type": "PropertyValue", "name": "TCL QM8L – BT.2020", "value": 90.3, "unitText": "" }, { "@type": "PropertyValue", "name": "Hisense UR8 – UHDA-P3", "value": 145, "unitText": "" }, { "@type": "PropertyValue", "name": "Hisense UR8 – BT.2020", "value": 95.1, "unitText": "" } ]},{ "@context": "https://schema.org", "@type": "Dataset", "name": "Picture accuracy", "description": "A lower score is better. Taken using a colorimeter and test pattern generator.", "creator": { "@type": "Organization", "name": "TechRadar", "logo": "https://cdn.mos.cms.futurecdn.net/dAwPEozB9GMMhAngdFJTHb.png" }, "isAccessibleForFree": true, "dateCreated": "2026-11-02T12:19:55.296Z", "citation": "Add your caption to explain the data, the learnings and the key takeaways of the data being visualized", "keywords": [ "Hisense UR9", "TCL QM8L", "Hisense UR8", "Delta-E", "SDR Delta-E", "benchmark", "comparison", "performance", "review", "TechRadar" ], "measurementTechnique": "Performance Benchmarking", "variableMeasured": [ { "@type": "PropertyValue", "name": "Hisense UR9 – Delta-E", "value": 2.7, "unitText": "" }, { "@type": "PropertyValue", "name": "TCL QM8L – Delta-E", "value": 3.7, "unitText": "" }, { "@type": "PropertyValue", "name": "Hisense UR8 – Delta-E", "value": 7.9, "unitText": "" } ]},{ "@context": "https://schema.org", "@type": "Dataset", "name": "Input lag", "description": "Lower is better. Taken using a Leo Bodnar 4K HDMI Video Signal Lag Tester.", "creator": { "@type": "Organization", "name": "TechRadar", "logo": "https://cdn.mos.cms.futurecdn.net/dAwPEozB9GMMhAngdFJTHb.png" }, "isAccessibleForFree": true, "dateCreated": "2026-11-02T12:19:55.296Z", "citation": "Add your caption to explain the data, the learnings and the key takeaways of the data being visualized", "keywords": [ "Hisense UR9", "TCL QM8L", "Hisense UR8", "4K 60Hz", "benchmark", "comparison", "performance", "review", "TechRadar" ], "measurementTechnique": "Performance Benchmarking", "variableMeasured": [ { "@type": "PropertyValue", "name": "Hisense UR9 – 4K 60Hz", "value": 12, "unitText": "ms" }, { "@type": "PropertyValue", "name": "TCL QM8L – 4K 60Hz", "value": 9.5, "unitText": "ms" }, { "@type": "PropertyValue", "name": "Hisense UR8 – 4K 60Hz", "value": 11.7, "unitText": "ms" } ]}]{"version":2,"exportedAt":"2026-11-02T12:19:55.296Z","state":{"data":[{"productName":"Hisense UR9","attribute":"4K 60Hz","value":12,"unit":"ms","site":"TechRadar"},{"productName":"TCL QM8L","attribute":"4K 60Hz","value":9.5,"unit":"ms","site":"TechRadar"},{"productName":"Hisense UR8","attribute":"4K 60Hz","value":11.7,"unit":"ms","site":"TechRadar"}],"products":["Hisense UR9","TCL QM8L","Hisense UR8"],"attributes":["4K 60Hz"],"selectedProducts":[],"selectedPrimaryProduct":null,"selectedAttributes":[],"productColors":[{"productName":"Hisense UR9","color":"#2E6E93"},{"productName":"TCL QM8L","color":"#E8238C"},{"productName":"Hisense UR8","color":"#5DA8D4"}],"initialProductColors":[{"productName":"Hisense UR9","color":"#2E6E93"},{"productName":"TCL QM8L","color":"#E8238C"},{"productName":"Hisense UR8","color":"#5DA8D4"}],"attributeColors":[],"attributeGroups":[{"name":"Group 1","attributes":[]}],"chartType":"Bar","roundupViewType":"bars","stlSelectedHotspotId":null,"iaSelectedNodeId":null,"barChartMaxValueOverrides":{},"barChartMinValueOverrides":{},"displayMode":"All Charts","brand":{"name":"TechRadar","logoUrl":"https://cdn.mos.cms.futurecdn.net/dAwPEozB9GMMhAngdFJTHb.png","sliderLogoUrl":"https://proof.vanilla.tools/media/images/brandLogos/techradar.png","colors":{"primary":"#2E6E93","secondary":"#E8238C","accent":"#FFFFFF","background":"#ffffff","text":"#1F2937","productColors":["#2E6E93","#E8238C","#5DA8D4","#F06EAF","#1A4E6B","#B81C70","#8CC3E0","#F499C9"]}},"textContent":{"title":"Input lag","subhead":"Lower is better. Taken using a Leo Bodnar 4K HDMI Video Signal Lag Tester.","caption":"Add your caption to explain the data, the learnings and the key takeaways of the data being visualized","productNameOverrides":{},"attributeNameOverrides":{},"chartTitleOverrides":{"grouped-bar-Group 1":"HDR Filmmaker Mode","grouped-bar-Group 2":"HDR Standard","grouped-bar-Group 3":"SDR Filmmaker Mode","grouped-bar-Group 4":"SDR Standard","bar-Delta-E":"SDR Delta-E"},"xAxisLabelOverrides":{},"subheadOverrides":{"grouped-bar-Group 4":"Taken using a colorimeter and test pattern generator. Click the test name for measurements and select the chosen test from the dropdown menu."},"captionOverrides":{},"unitOverrides":{},"multiValueLegendOverrides":{},"barCommentaryOverrides":{}},"dataEverLoaded":true,"showAISuggestionsButton":false,"barChartShowXAxis":true,"groupedBarChartShowProductName":true,"barChartLabelsOnTop":false,"experimentalEnablePieChart":false,"slideshowUseDropdown":false},"slides":[{"id":"slide-1793621824168","snapshot":{"selectedProducts":["Hisense UR9","TCL QM8L","Hisense UR8"],"selectedPrimaryProduct":"Hisense UR9","selectedAttributes":["HDR Filmmaker Mode (10% window)","HDR Standard Mode (10% window)","SDR Filmmaker Mode (10% window)","SDR Standard Mode (10% window)","HDR Filmmaker Mode (Fullscreen)","HDR Standard Mode (Fullscreen)","SDR Filmmaker Mode (Fullscreen)","SDR Standard Mode (Fullscreen)"],"productColors":[{"productName":"Hisense UR9","color":"#2E6E93"},{"productName":"TCL QM8L","color":"#E8238C"},{"productName":"Hisense UR8","color":"#5DA8D4"}],"initialProductColors":[{"productName":"Hisense UR9","color":"#2E6E93"},{"productName":"TCL QM8L","color":"#E8238C"},{"productName":"Hisense UR8","color":"#5DA8D4"}],"attributeColors":[],"attributeGroups":[{"name":"Group 1","attributes":["HDR Filmmaker Mode (10% window)","HDR Filmmaker Mode (Fullscreen)"]},{"name":"Group 2","attributes":["HDR Standard Mode (10% window)","HDR Standard Mode (Fullscreen)"]},{"name":"Group 3","attributes":["SDR Filmmaker Mode (10% window)","SDR Filmmaker Mode (Fullscreen)"]},{"name":"Group 4","attributes":["SDR Standard Mode (10% window)","SDR Standard Mode (Fullscreen)"]}],"chartType":"Bar","roundupViewType":"bars","stlSelectedHotspotId":null,"iaSelectedNodeId":null,"barChartMaxValueOverrides":{},"barChartMinValueOverrides":{},"displayMode":"Dropdown","brand":{"name":"TechRadar","logoUrl":"https://cdn.mos.cms.futurecdn.net/dAwPEozB9GMMhAngdFJTHb.png","sliderLogoUrl":"https://proof.vanilla.tools/media/images/brandLogos/techradar.png","colors":{"primary":"#2E6E93","secondary":"#E8238C","accent":"#FFFFFF","background":"#ffffff","text":"#1F2937","productColors":["#2E6E93","#E8238C","#5DA8D4","#F06EAF","#1A4E6B","#B81C70","#8CC3E0","#F499C9"]}},"textContent":{"title":"Brightness measurements","subhead":"Subhead to describe the test and what's being measured and why","caption":"Add your caption to explain the data, the learnings and the key takeaways of the data being visualized","productNameOverrides":{},"attributeNameOverrides":{},"chartTitleOverrides":{"grouped-bar-Group 1":"HDR Filmmaker Mode","grouped-bar-Group 2":"HDR Standard","grouped-bar-Group 3":"SDR Filmmaker Mode","grouped-bar-Group 4":"SDR Standard"},"xAxisLabelOverrides":{},"subheadOverrides":{"grouped-bar-Group 4":"Taken using a colorimeter and test pattern generator. Click the test name for measurements and select the chosen test from the dropdown menu."},"captionOverrides":{},"unitOverrides":{},"multiValueLegendOverrides":{},"barCommentaryOverrides":{}},"dataEverLoaded":true,"showAISuggestionsButton":false,"barChartShowXAxis":true,"groupedBarChartShowProductName":true,"barChartLabelsOnTop":false,"experimentalEnablePieChart":false,"slideshowUseDropdown":false,"dataOverride":[{"productName":"Hisense UR9","attribute":"HDR Filmmaker Mode (10% window)","value":4370,"unit":"nits","site":"TechRadar"},{"productName":"Hisense UR9","attribute":"HDR Standard Mode (10% window)","value":3003,"unit":"nits","site":"TechRadar"},{"productName":"Hisense UR9","attribute":"SDR Filmmaker Mode (10% window)","value":188,"unit":"nits","site":"TechRadar"},{"productName":"Hisense UR9","attribute":"SDR Standard Mode (10% window)","value":2175,"unit":"nits","site":"TechRadar"},{"productName":"Hisense UR9","attribute":"HDR Filmmaker Mode (Fullscreen)","value":1096,"unit":"nits","site":"TechRadar"},{"productName":"Hisense UR9","attribute":"HDR Standard Mode (Fullscreen)","value":1124,"unit":"nits","site":"TechRadar"},{"productName":"Hisense UR9","attribute":"SDR Filmmaker Mode (Fullscreen)","value":227,"unit":"nits","site":"TechRadar"},{"productName":"Hisense UR9","attribute":"SDR Standard Mode (Fullscreen)","value":794,"unit":"nits","site":"TechRadar"},{"productName":"TCL QM8L","attribute":"HDR Filmmaker Mode (10% window)","value":3719,"unit":"nits","site":"TechRadar"},{"productName":"TCL QM8L","attribute":"HDR Standard Mode (10% window)","value":3771,"unit":"nits","site":"TechRadar"},{"productName":"TCL QM8L","attribute":"SDR Filmmaker Mode (10% window)","value":229,"unit":"nits","site":"TechRadar"},{"productName":"TCL QM8L","attribute":"SDR Standard Mode (10% window)","value":518,"unit":"nits","site":"TechRadar"},{"productName":"TCL QM8L","attribute":"HDR Filmmaker Mode (Fullscreen)","value":759,"unit":"nits","site":"TechRadar"},{"productName":"TCL QM8L","attribute":"HDR Standard Mode (Fullscreen)","value":795,"unit":"nits","site":"TechRadar"},{"productName":"Hisense UR8","attribute":"HDR Filmmaker Mode (10% window)","value":2097,"unit":"nits","site":"TechRadar"},{"productName":"Hisense UR8","attribute":"HDR Standard Mode (10% window)","value":2394,"unit":"nits","site":"TechRadar"},{"productName":"Hisense UR8","attribute":"SDR Filmmaker Mode (10% window)","value":314,"unit":"nits","site":"TechRadar"},{"productName":"Hisense UR8","attribute":"SDR Standard Mode (10% window)","value":1514,"unit":"nits","site":"TechRadar"},{"productName":"Hisense UR8","attribute":"HDR Filmmaker Mode (Fullscreen)","value":771,"unit":"nits","site":"TechRadar"},{"productName":"Hisense UR8","attribute":"HDR Standard Mode (Fullscreen)","value":767,"unit":"nits","site":"TechRadar"},{"productName":"Hisense UR8","attribute":"SDR Filmmaker Mode (Fullscreen)","value":372,"unit":"nits","site":"TechRadar"},{"productName":"Hisense UR8","attribute":"SDR Standard Mode (Fullscreen)","value":778,"unit":"nits","site":"TechRadar"}]}},{"id":"slide-1793621894581","snapshot":{"selectedProducts":["Hisense UR9","TCL QM8L","Hisense UR8"],"selectedPrimaryProduct":"Hisense UR9","selectedAttributes":["UHDA-P3","BT.2020"],"productColors":[{"productName":"Hisense UR9","color":"#2E6E93"},{"productName":"TCL QM8L","color":"#E8238C"},{"productName":"Hisense UR8","color":"#5DA8D4"}],"initialProductColors":[{"productName":"Hisense UR9","color":"#2E6E93"},{"productName":"TCL QM8L","color":"#E8238C"},{"productName":"Hisense UR8","color":"#5DA8D4"}],"attributeColors":[],"attributeGroups":[{"name":"Group 1","attributes":["UHDA-P3","BT.2020"]}],"chartType":"Bar","roundupViewType":"bars","stlSelectedHotspotId":null,"iaSelectedNodeId":null,"barChartMaxValueOverrides":{},"barChartMinValueOverrides":{},"displayMode":"All Charts","brand":{"name":"TechRadar","logoUrl":"https://cdn.mos.cms.futurecdn.net/dAwPEozB9GMMhAngdFJTHb.png","sliderLogoUrl":"https://proof.vanilla.tools/media/images/brandLogos/techradar.png","colors":{"primary":"#2E6E93","secondary":"#E8238C","accent":"#FFFFFF","background":"#ffffff","text":"#1F2937","productColors":["#2E6E93","#E8238C","#5DA8D4","#F06EAF","#1A4E6B","#B81C70","#8CC3E0","#F499C9"]}},"textContent":{"title":"HDR color gamut","subhead":"Closer to 100% is better. Taken using a colorimeter and test pattern generator.","caption":"Add your caption to explain the data, the learnings and the key takeaways of the data being visualized","productNameOverrides":{},"attributeNameOverrides":{},"chartTitleOverrides":{"grouped-bar-Group 1":"HDR Filmmaker Mode","grouped-bar-Group 2":"HDR Standard","grouped-bar-Group 3":"SDR Filmmaker Mode","grouped-bar-Group 4":"SDR Standard"},"xAxisLabelOverrides":{},"subheadOverrides":{"grouped-bar-Group 4":"Taken using a colorimeter and test pattern generator. Click the test name for measurements and select the chosen test from the dropdown menu."},"captionOverrides":{},"unitOverrides":{},"multiValueLegendOverrides":{},"barCommentaryOverrides":{}},"dataEverLoaded":true,"showAISuggestionsButton":false,"barChartShowXAxis":true,"groupedBarChartShowProductName":true,"barChartLabelsOnTop":false,"experimentalEnablePieChart":false,"slideshowUseDropdown":false,"dataOverride":[{"productName":"Hisense UR9","attribute":"UHDA-P3","value":99.8,"unit":"","site":"TechRadar"},{"productName":"Hisense UR9","attribute":"BT.2020","value":93.1,"unit":"","site":"TechRadar"},{"productName":"TCL QM8L","attribute":"UHDA-P3","value":97.9,"unit":"","site":"TechRadar"},{"productName":"TCL QM8L","attribute":"BT.2020","value":90.3,"unit":"","site":"TechRadar"},{"productName":"Hisense UR8","attribute":"UHDA-P3","value":145,"unit":"","site":"TechRadar"},{"productName":"Hisense UR8","attribute":"BT.2020","value":95.1,"unit":"","site":"TechRadar"}]}},{"id":"slide-1793621949647","snapshot":{"selectedProducts":["Hisense UR9","TCL QM8L","Hisense UR8"],"selectedPrimaryProduct":"Hisense UR9","selectedAttributes":["Delta-E"],"productColors":[{"productName":"Hisense UR9","color":"#2E6E93"},{"productName":"TCL QM8L","color":"#E8238C"},{"productName":"Hisense UR8","color":"#5DA8D4"}],"initialProductColors":[{"productName":"Hisense UR9","color":"#2E6E93"},{"productName":"TCL QM8L","color":"#E8238C"},{"productName":"Hisense UR8","color":"#5DA8D4"}],"attributeColors":[],"attributeGroups":[{"name":"Group 1","attributes":[]}],"chartType":"Bar","roundupViewType":"bars","stlSelectedHotspotId":null,"iaSelectedNodeId":null,"barChartMaxValueOverrides":{},"barChartMinValueOverrides":{},"displayMode":"All Charts","brand":{"name":"TechRadar","logoUrl":"https://cdn.mos.cms.futurecdn.net/dAwPEozB9GMMhAngdFJTHb.png","sliderLogoUrl":"https://proof.vanilla.tools/media/images/brandLogos/techradar.png","colors":{"primary":"#2E6E93","secondary":"#E8238C","accent":"#FFFFFF","background":"#ffffff","text":"#1F2937","productColors":["#2E6E93","#E8238C","#5DA8D4","#F06EAF","#1A4E6B","#B81C70","#8CC3E0","#F499C9"]}},"textContent":{"title":"Picture accuracy","subhead":"A lower score is better. Taken using a colorimeter and test pattern generator.","caption":"Add your caption to explain the data, the learnings and the key takeaways of the data being visualized","productNameOverrides":{},"attributeNameOverrides":{},"chartTitleOverrides":{"grouped-bar-Group 1":"HDR Filmmaker Mode","grouped-bar-Group 2":"HDR Standard","grouped-bar-Group 3":"SDR Filmmaker Mode","grouped-bar-Group 4":"SDR Standard","bar-Delta-E":"SDR Delta-E"},"xAxisLabelOverrides":{},"subheadOverrides":{"grouped-bar-Group 4":"Taken using a colorimeter and test pattern generator. Click the test name for measurements and select the chosen test from the dropdown menu."},"captionOverrides":{},"unitOverrides":{},"multiValueLegendOverrides":{},"barCommentaryOverrides":{}},"dataEverLoaded":true,"showAISuggestionsButton":false,"barChartShowXAxis":true,"groupedBarChartShowProductName":true,"barChartLabelsOnTop":false,"experimentalEnablePieChart":false,"slideshowUseDropdown":false,"dataOverride":[{"productName":"Hisense UR9","attribute":"Delta-E","value":2.7,"unit":"","site":"TechRadar"},{"productName":"TCL QM8L","attribute":"Delta-E","value":3.7,"unit":"","site":"TechRadar"},{"productName":"Hisense UR8","attribute":"Delta-E","value":7.9,"unit":"","site":"TechRadar"}]}},{"id":"slide-1793621995294","snapshot":{"selectedProducts":["Hisense UR9","TCL QM8L","Hisense UR8"],"selectedPrimaryProduct":"Hisense UR9","selectedAttributes":["4K 60Hz"],"productColors":[{"productName":"Hisense UR9","color":"#2E6E93"},{"productName":"TCL QM8L","color":"#E8238C"},{"productName":"Hisense UR8","color":"#5DA8D4"}],"initialProductColors":[{"productName":"Hisense UR9","color":"#2E6E93"},{"productName":"TCL QM8L","color":"#E8238C"},{"productName":"Hisense UR8","color":"#5DA8D4"}],"attributeColors":[],"attributeGroups":[{"name":"Group 1","attributes":[]}],"chartType":"Bar","roundupViewType":"bars","stlSelectedHotspotId":null,"iaSelectedNodeId":null,"barChartMaxValueOverrides":{},"barChartMinValueOverrides":{},"displayMode":"All Charts","brand":{"name":"TechRadar","logoUrl":"https://cdn.mos.cms.futurecdn.net/dAwPEozB9GMMhAngdFJTHb.png","sliderLogoUrl":"https://proof.vanilla.tools/media/images/brandLogos/techradar.png","colors":{"primary":"#2E6E93","secondary":"#E8238C","accent":"#FFFFFF","background":"#ffffff","text":"#1F2937","productColors":["#2E6E93","#E8238C","#5DA8D4","#F06EAF","#1A4E6B","#B81C70","#8CC3E0","#F499C9"]}},"textContent":{"title":"Input lag","subhead":"Lower is better. Taken using a Leo Bodnar 4K HDMI Video Signal Lag Tester.","caption":"Add your caption to explain the data, the learnings and the key takeaways of the data being visualized","productNameOverrides":{},"attributeNameOverrides":{},"chartTitleOverrides":{"grouped-bar-Group 1":"HDR Filmmaker Mode","grouped-bar-Group 2":"HDR Standard","grouped-bar-Group 3":"SDR Filmmaker Mode","grouped-bar-Group 4":"SDR Standard","bar-Delta-E":"SDR Delta-E"},"xAxisLabelOverrides":{},"subheadOverrides":{"grouped-bar-Group 4":"Taken using a colorimeter and test pattern generator. Click the test name for measurements and select the chosen test from the dropdown menu."},"captionOverrides":{},"unitOverrides":{},"multiValueLegendOverrides":{},"barCommentaryOverrides":{}},"dataEverLoaded":true,"showAISuggestionsButton":false,"barChartShowXAxis":true,"groupedBarChartShowProductName":true,"barChartLabelsOnTop":false,"experimentalEnablePieChart":false,"slideshowUseDropdown":false,"dataOverride":[{"productName":"Hisense UR9","attribute":"4K 60Hz","value":12,"unit":"ms","site":"TechRadar"},{"productName":"TCL QM8L","attribute":"4K 60Hz","value":9.5,"unit":"ms","site":"TechRadar"},{"productName":"Hisense UR8","attribute":"4K 60Hz","value":11.7,"unit":"ms","site":"TechRadar"}]}}]}Previous1 / 4NextBrightness measurementsHDR Filmmaker ModeHDR StandardSDR Filmmaker ModeSDR StandardHisense UR9HDR Filmmaker Mode (10% window)4370HDR Filmmaker Mode (Fullscreen)1096TCL QM8LHDR Filmmaker Mode (10% window)3719HDR Filmmaker Mode (Fullscreen)759Hisense UR8HDR Filmmaker Mode (10% window)2097HDR Filmmaker Mode (Fullscreen)77101,5003,0004,5006,000nitsHDR Filmmaker Mode DataProductHDR Filmmaker Mode (10% window) (nits)HDR Filmmaker Mode (Fullscreen) (nits)Hisense UR943701096TCL QM8L3719759Hisense UR82097771Hisense UR9HDR Standard Mode (10% window)3003HDR Standard Mode (Fullscreen)1124TCL QM8LHDR Standard Mode (10% window)3771HDR Standard Mode (Fullscreen)795Hisense UR8HDR Standard Mode (10% window)2394HDR Standard Mode (Fullscreen)76701,0002,0003,0004,000nitsHDR Standard DataProductHDR Standard Mode (10% window) (nits)HDR Standard Mode (Fullscreen) (nits)Hisense UR930031124TCL QM8L3771795Hisense UR82394767Hisense UR9SDR Filmmaker Mode (10% window)188SDR Filmmaker Mode (Fullscreen)227TCL QM8LSDR Filmmaker Mode (10% window)229SDR Filmmaker Mode (Fullscreen)0Hisense UR8SDR Filmmaker Mode (10% window)314SDR Filmmaker Mode (Fullscreen)3720100200300400nitsSDR Filmmaker Mode DataProductSDR Filmmaker Mode (10% window) (nits)SDR Filmmaker Mode (Fullscreen) (nits)Hisense UR9188227TCL QM8L229N/AHisense UR8314372Hisense UR9SDR Standard Mode (10% window)2175SDR Standard Mode (Fullscreen)794TCL QM8LSDR Standard Mode (10% window)518SDR Standard Mode (Fullscreen)0Hisense UR8SDR Standard Mode (10% window)1514SDR Standard Mode (Fullscreen)77807501,5002,2503,000nitsSDR Standard DataProductSDR Standard Mode (10% window) (nits)SDR Standard Mode (Fullscreen) (nits)Hisense UR92175794TCL QM8L518N/AHisense UR81514778HDR color gamut

Closer to 100% is better. Taken using a colorimeter and test pattern generator.

Hisense UR9UHDA-P399.8BT.202093.1TCL QM8LUHDA-P397.9BT.202090.3Hisense UR8UHDA-P3145BT.202095.1037.575112.5150HDR Filmmaker Mode DataProductUHDA-P3 ()BT.2020 ()Hisense UR999.893.1TCL QM8L97.990.3Hisense UR814595.1Picture accuracy

A lower score is better. Taken using a colorimeter and test pattern generator.

SDR Delta-EHisense UR92.7TCL QM8L3.7Hisense UR87.9012345678SDR Delta-E DataProductValueHisense UR92.7TCL QM8L3.7Hisense UR87.9Input lag

Lower is better. Taken using a Leo Bodnar 4K HDMI Video Signal Lag Tester.

4K 60HzHisense UR912TCL QM8L9.5Hisense UR811.703.757.511.2515ms4K 60Hz DataProductValueHisense UR912TCL QM8L9.5Hisense UR811.7 window.iFrameResizer = { heightCalculationMethod: 'taggedElement' }; (function() { function createChartAnimator() { return function animateChartWrapper(chartWrapper) { if (!chartWrapper) return; function animateBars(chartElement) { if (!chartElement) return; var bars = chartElement.querySelectorAll('.fv-bar, .fv-stacked-segment'); bars.forEach(function(bar, index) { bar.style.setProperty('width', '0%', 'important'); bar.style.setProperty('transition', 'none', 'important'); var targetWidth = bar.dataset.targetWidth; if (targetWidth === undefined) return; void bar.offsetWidth; var targetMargin = bar.dataset.targetMargin; var baseMargin = bar.dataset.baseMargin; if (baseMargin !== undefined) { bar.style.setProperty('margin-left', baseMargin + '%', 'important'); } setTimeout(function() { var marginTransition = baseMargin !== undefined ? ', margin-left 0.8s ease-out' : ''; bar.style.setProperty('transition', 'opacity 0.2s ease, width 0.8s ease-out' + marginTransition, 'important'); bar.style.setProperty('width', targetWidth + '%', 'important'); if (targetMargin !== undefined && baseMargin !== undefined) { bar.style.setProperty('margin-left', targetMargin + '%', 'important'); } }, index * 50 + 50); }); } function animateLineChart(chartElement) { if (!chartElement) return; var lineSvg = chartElement.querySelector('svg'); if (!lineSvg) return; var paths = lineSvg.querySelectorAll('.riv-line-path'); paths.forEach(function(p, i) { if (typeof p.getTotalLength === 'function') { var len = p.getTotalLength(); p.style.transition = 'none'; p.style.strokeDasharray = len; p.style.strokeDashoffset = len; p.getBoundingClientRect(); setTimeout(function() { p.style.transition = 'stroke-dashoffset 1s ease-out ' + (i * 0.1) + 's, stroke-width 0.2s, opacity 0.2s'; p.style.strokeDashoffset = '0'; }, 100); } }); var dots = lineSvg.querySelectorAll('.riv-dot'); dots.forEach(function(dot, i) { dot.style.opacity = '0'; setTimeout(function() { dot.style.transition = 'opacity 0.3s ease'; dot.style.opacity = '1'; }, 500 + i * 10); }); } function animateDials(chartElement) { if (!chartElement) return; var needles = chartElement.querySelectorAll('.fv-dial-needle'); needles.forEach(function(needle, index) { var targetAngle = needle.dataset.targetAngle; var baseAngle = needle.dataset.baseAngle || '-132'; if (targetAngle === undefined) return; needle.style.setProperty('transition', 'none', 'important'); needle.style.setProperty('transform', 'rotate(' + baseAngle + 'deg)', 'important'); void needle.getBoundingClientRect(); setTimeout(function() { needle.style.setProperty('transition', 'transform 0.9s cubic-bezier(0.22, 1, 0.36, 1)', 'important'); needle.style.setProperty('transform', 'rotate(' + targetAngle + 'deg)', 'important'); }, index * 60 + 50); }); } var charts = chartWrapper.querySelectorAll('.fv-chart-item'); charts.forEach(function(chart) { if (window.getComputedStyle(chart).display === 'none') return; var chartType = chart.dataset.chartType; if (chartType === 'Line') { animateLineChart(chart); } else if (chartType !== 'Pie') { animateBars(chart); animateDials(chart); } }); }; } var fvLocalAnimate = createChartAnimator(); window.fvAnimateCharts = fvLocalAnimate; function initialize(uniqueId, isSlideshow) { var root = document.getElementById(uniqueId); if (!root && !isSlideshow) return; function setupWrapper(chartWrapper) { if (!chartWrapper) return; /* Responsive mobile view handling */ function checkMobileView() { var width = chartWrapper.getBoundingClientRect().width; var isMobileDevice = window.screen && Math.min(window.screen.width, window.screen.height) <= 599; var isMobile; if (width === 0) { isMobile = isMobileDevice || window.matchMedia('(max-width: 599px)').matches; } else { isMobile = isMobileDevice || width < 600; } if (isMobile) { chartWrapper.classList.add('mobile-view'); } else { chartWrapper.classList.remove('mobile-view'); } } checkMobileView(); if (typeof ResizeObserver !== 'undefined') { var ro = new ResizeObserver(function() { checkMobileView(); }); ro.observe(chartWrapper); } window.addEventListener('resize', checkMobileView); var labelsOnTop = chartWrapper.dataset.barLabelsOnTop === 'true'; if (labelsOnTop) { var charts = chartWrapper.querySelectorAll('.fv-chart-item'); var hasVisibleBarChart = false; charts.forEach(function(c) { if (window.getComputedStyle(c).display !== 'none') { var cType = c.dataset.chartType; if (cType === 'Bar' || cType === 'Diverging Bar' || cType === 'Stacked Bar' || cType === 'Versus') { hasVisibleBarChart = true; } } }); if (hasVisibleBarChart) { chartWrapper.classList.add('labels-on-top'); } else { chartWrapper.classList.remove('labels-on-top'); } } else { chartWrapper.classList.remove('labels-on-top'); } /* Legend interactions */ chartWrapper.querySelectorAll('.riv-line-legend').forEach(function(legend) { var chartId = legend.dataset.chart; var chart = chartWrapper.querySelector('[id="' + chartId + '"]'); if (!chart) return; var lines = chart.querySelectorAll('.riv-line-path'); var dots = chart.querySelectorAll('.riv-dot'); var legendItems = legend.querySelectorAll('.riv-legend-item'); legendItems.forEach(function(item) { var productName = item.dataset.product; var safeProductName = productName.replace(/"/g, '\\"'); var line = chart.querySelector('.riv-line-path[data-product="' + safeProductName + '"]'); var productDots = chart.querySelectorAll('.riv-dot[data-product="' + safeProductName + '"]'); if (line && !line.dataset.origStroke) { line.dataset.origStroke = line.getAttribute('stroke-width') || '2'; } var highlight = function() { if (legend.querySelector('.isolated')) return; lines.forEach(function(l) { l.style.opacity = '0.2'; l.setAttribute('stroke-width', l.dataset.origStroke); }); dots.forEach(function(d) { d.style.opacity = '0.2'; }); legendItems.forEach(function(i) { i.style.opacity = '0.3'; i.style.transition = 'opacity 0.2s'; }); if (line) { line.style.opacity = '1'; line.setAttribute('stroke-width', '4'); } productDots.forEach(function(d) { d.style.opacity = '1'; }); item.style.opacity = '1'; }; var clearHighlight = function() { if (legend.querySelector('.isolated')) return; lines.forEach(function(l) { l.style.opacity = '1'; l.setAttribute('stroke-width', l.dataset.origStroke); }); dots.forEach(function(d) { d.style.opacity = '1'; }); legendItems.forEach(function(i) { i.style.opacity = '1'; }); }; var toggleIsolate = function() { var isIsolated = item.classList.contains('isolated'); legendItems.forEach(function(i) { i.classList.remove('isolated'); }); if (isIsolated) { lines.forEach(function(l) { l.style.opacity = '1'; l.setAttribute('stroke-width', l.dataset.origStroke); }); dots.forEach(function(d) { d.style.opacity = '1'; }); legendItems.forEach(function(i) { i.style.opacity = '1'; }); } else { item.classList.add('isolated'); lines.forEach(function(l) { l.style.opacity = '0.2'; l.setAttribute('stroke-width', l.dataset.origStroke); }); dots.forEach(function(d) { d.style.opacity = '0.2'; }); legendItems.forEach(function(i) { i.style.opacity = '0.3'; i.style.transition = 'opacity 0.2s'; }); if (line) { line.style.opacity = '1'; line.setAttribute('stroke-width', '4'); } productDots.forEach(function(d) { d.style.opacity = '1'; }); item.style.opacity = '1'; } }; item.addEventListener('mouseenter', highlight); item.addEventListener('focus', highlight); item.addEventListener('mouseleave', clearHighlight); item.addEventListener('blur', clearHighlight); item.addEventListener('click', toggleIsolate); if (line) { line.style.cursor = 'pointer'; line.addEventListener('mouseenter', highlight); line.addEventListener('mouseleave', clearHighlight); line.addEventListener('click', toggleIsolate); } }); }); /* Versus Chart Logic */ var versusCharts = chartWrapper.querySelectorAll('.fv-versus-chart'); versusCharts.forEach(function(vc) { var dataJson = vc.getAttribute('data-versus-data'); var leftColor = vc.getAttribute('data-left-color') || '#E53935'; var rightColor = vc.getAttribute('data-right-color') || '#FFB300'; if (!dataJson) return; var versusData = JSON.parse(dataJson); var leftSelect = vc.querySelector('.fv-select-left'); var rightSelect = vc.querySelector('.fv-select-right'); var rows = vc.querySelectorAll('.fv-versus-row'); function updateVersusChart() { var leftProduct = leftSelect.value; var rightProduct = rightSelect.value; leftSelect.style.color = leftColor; leftSelect.style.borderColor = leftColor; rightSelect.style.color = rightColor; rightSelect.style.borderColor = rightColor; rows.forEach(function(row) { var index = parseInt(row.getAttribute('data-index')); var data = versusData[index]; if (!data) return; var leftVal = data.productData[leftProduct] ? data.productData[leftProduct].value : undefined; var rightVal = data.productData[rightProduct] ? data.productData[rightProduct].value : undefined; var leftIsNum = typeof leftVal === 'number'; var rightIsNum = typeof rightVal === 'number'; var leftNum = leftIsNum ? leftVal : 0; var rightNum = rightIsNum ? rightVal : 0; var maxVal = Math.max(leftNum, rightNum, 0.0001); var leftWidth = leftIsNum ? (leftNum / maxVal) * 95 : 0; var rightWidth = rightIsNum ? (rightNum / maxVal) * 85 : 0; var winner = null; var pctDiffStr = null; if (leftIsNum && rightIsNum) { if (leftNum > rightNum) { winner = 'left'; if (rightNum > 0) { var diff = Math.round(((leftNum - rightNum) / rightNum) * 100); pctDiffStr = '+' + diff.toLocaleString() + '%'; } } else if (rightNum > leftNum) { winner = 'right'; if (leftNum > 0) { var diff = Math.round(((rightNum - leftNum) / leftNum) * 100); pctDiffStr = '+' + diff.toLocaleString() + '%'; } } } var leftDisplay = data.productData[leftProduct] && data.productData[leftProduct].displayValue !== undefined ? data.productData[leftProduct].displayValue : (leftIsNum ? leftNum.toLocaleString() : (leftVal !== undefined ? leftVal : '-')); var rightDisplay = data.productData[rightProduct] && data.productData[rightProduct].displayValue !== undefined ? data.productData[rightProduct].displayValue : (rightIsNum ? rightNum.toLocaleString() : (rightVal !== undefined ? rightVal : '-')); var unit = (data.productData[leftProduct] && data.productData[leftProduct].unit) || (data.productData[rightProduct] && data.productData[rightProduct].unit) || ''; var leftTextStr = leftDisplay; var rightTextStr = rightDisplay; var leftBar = row.querySelector('.fv-versus-bar-left'); var rightBar = row.querySelector('.fv-versus-bar-right'); var leftText = row.querySelector('.fv-inside-left'); var rightText = row.querySelector('.fv-inside-right'); var labelText = row.querySelector('.fv-versus-label span'); var existingPctDiffs = row.querySelectorAll('.fv-versus-pct-diff'); existingPctDiffs.forEach(function(el) { el.remove(); }); if (winner === 'left' && pctDiffStr) { var pctSpan = document.createElement('span'); pctSpan.className = 'fv-versus-pct-diff'; pctSpan.style.color = 'rgba(255, 255, 255, 0.9)'; pctSpan.textContent = pctDiffStr; if (leftBar) leftBar.insertBefore(pctSpan, leftBar.firstChild); } else if (winner === 'right' && pctDiffStr) { var pctSpan = document.createElement('span'); pctSpan.className = 'fv-versus-pct-diff'; pctSpan.style.color = 'rgba(255, 255, 255, 0.9)'; pctSpan.textContent = pctDiffStr; if (rightBar) rightBar.appendChild(pctSpan); } if (leftBar) { leftBar.style.backgroundColor = leftColor; leftBar.dataset.targetWidth = leftWidth; leftBar.style.setProperty('--target-width', leftWidth + '%'); leftBar.style.width = leftWidth + '%'; } if (rightBar) { rightBar.style.backgroundColor = rightColor; rightBar.dataset.targetWidth = rightWidth; rightBar.style.setProperty('--target-width', rightWidth + '%'); rightBar.style.width = rightWidth + '%'; } if (leftText) { leftText.innerHTML = leftTextStr; } if (rightText) { rightText.innerHTML = rightTextStr; } if (labelText) { labelText.textContent = data.attribute + (unit ? ' (' + unit + ')' : ''); } }); } if (leftSelect) leftSelect.addEventListener('change', updateVersusChart); if (rightSelect) rightSelect.addEventListener('change', updateVersusChart); }); /* Bar Commentary Hover Logic */ var barRows = chartWrapper.querySelectorAll('.fv-bar-row'); var globalCaptionEl = chartWrapper.querySelector('.rv-chart-caption'); var fallbackCaptionHtml = globalCaptionEl ? globalCaptionEl.innerHTML : ''; barRows.forEach(function(row) { var commentaryEl = row.querySelector('[data-commentary-key]'); if (commentaryEl) { var commentaryText = commentaryEl.textContent; if (commentaryText && commentaryText.trim().length > 0) { row.addEventListener('mouseenter', function() { if (!chartWrapper.classList.contains('mobile-view') && globalCaptionEl) { globalCaptionEl.innerHTML = commentaryText; globalCaptionEl.classList.add('fv-bar-active-caption'); } }); row.addEventListener('mouseleave', function() { if (!chartWrapper.classList.contains('mobile-view') && globalCaptionEl) { globalCaptionEl.innerHTML = fallbackCaptionHtml; globalCaptionEl.classList.remove('fv-bar-active-caption'); } }); } } }); /* Carousel & Dropdown Logic */ var charts = chartWrapper.querySelectorAll('.fv-chart-item'); var dropdown = chartWrapper.querySelector('.fv-dropdown-title'); var prevBtn = chartWrapper.querySelector('.fv-carousel-nav-btn.prev'); var nextBtn = chartWrapper.querySelector('.fv-carousel-nav-btn.next'); var carouselTitle = chartWrapper.querySelector('.fv-carousel-title-controls .fv-benchmark-title'); var counter = chartWrapper.querySelector('.fv-carousel-counter'); var subheadEl = chartWrapper.querySelector('.fv-chart-subhead'); var captionEl = chartWrapper.querySelector('.rv-chart-caption'); var footerContentEl = chartWrapper.querySelector('.fv-footer-content'); var bottomBarEl = chartWrapper.querySelector('.fv-bottom-bar'); var logoEl = chartWrapper.querySelector('.fv-logo'); if (charts.length > 1 && (dropdown || prevBtn)) { var currentChartIndex = 0; var titles = []; if (dropdown) { titles = Array.from(dropdown.options).map(function(o) { return o.text; }); } else { charts.forEach(function(c) { titles.push(c.getAttribute('data-title') || ''); }); } function showInternalChart(index) { if (index < 0) index = charts.length - 1; if (index >= charts.length) index = 0; currentChartIndex = index; charts.forEach(function(c, i) { c.style.display = i === index ? 'block' : 'none'; if (i === index) { var cType = c.dataset.chartType; if (cType !== 'Pie') { fvLocalAnimate(chartWrapper); } var labelsOnTop = chartWrapper.dataset.barLabelsOnTop === 'true'; if (labelsOnTop && (cType === 'Bar' || cType === 'Diverging Bar' || cType === 'Stacked Bar' || cType === 'Versus')) { chartWrapper.classList.add('labels-on-top'); } else { chartWrapper.classList.remove('labels-on-top'); } } }); if (dropdown) dropdown.value = index; if (carouselTitle && titles[index]) carouselTitle.textContent = titles[index]; if (counter) counter.textContent = (index + 1) + ' of ' + charts.length; var activeChart = charts[index]; if (activeChart) { var newSubhead = activeChart.getAttribute('data-subhead'); var newCaption = activeChart.getAttribute('data-caption'); var currentChartType = activeChart.getAttribute('data-chart-type'); var hideGlobalCaption = currentChartType === 'Countdown' || currentChartType === 'Image Comparison' || currentChartType === 'Shop the Collection'; if (subheadEl) subheadEl.textContent = newSubhead || ''; if (captionEl) { captionEl.textContent = newCaption || ''; fallbackCaptionHtml = newCaption || ''; } if (footerContentEl) { if (newCaption && newCaption.trim().length > 0 && !hideGlobalCaption) { footerContentEl.style.display = 'block'; if (bottomBarEl) bottomBarEl.style.display = 'flex'; } else { footerContentEl.style.display = 'none'; if (bottomBarEl && !logoEl) { bottomBarEl.style.display = 'none'; } } } } } if (dropdown) dropdown.addEventListener('change', function(e) { showInternalChart(parseInt(e.target.value)); }); if (prevBtn) prevBtn.addEventListener('click', function() { showInternalChart(currentChartIndex - 1); }); if (nextBtn) nextBtn.addEventListener('click', function() { showInternalChart(currentChartIndex + 1); }); } /* Image Comparison Logic */ var imageCompareWrappers = chartWrapper.querySelectorAll('.fv-image-compare-wrapper'); imageCompareWrappers.forEach(function(wrapper) { var inner = wrapper.querySelector('.fv-image-compare-inner') || wrapper; var slider = wrapper.querySelector('.fv-image-compare-slider'); var fgImage = wrapper.querySelector('.fv-image-compare-fg'); var bgImage = wrapper.querySelector('.fv-image-compare-bg'); var labelLeft = wrapper.querySelector('.fv-image-compare-label-left'); var labelRight = wrapper.querySelector('.fv-image-compare-label-right'); var isDragging = false; var scale = 1; var panX = 0; var panY = 0; var isPanning = false; var hasPanned = false; var lastClientX = 0; var lastClientY = 0; var initialDistance = null; var lastCenterX = null; var lastCenterY = null; function updateTransform() { if (wrapper.classList.contains('fv-image-compare-fullscreen')) { inner.style.setProperty('transform', 'translate(' + panX + 'px, ' + panY + 'px) scale(' + scale + ')', 'important'); } else { inner.style.removeProperty('transform'); scale = 1; panX = 0; panY = 0; } } function constrainPan() { var rect = wrapper.getBoundingClientRect(); var maxPanX = Math.max(0, (rect.width * scale - rect.width) / 2); var maxPanY = Math.max(0, (rect.height * scale - rect.height) / 2); panX = Math.max(-maxPanX, Math.min(panX, maxPanX)); panY = Math.max(-maxPanY, Math.min(panY, maxPanY)); } wrapper.addEventListener('wheel', function(e) { if (!wrapper.classList.contains('fv-image-compare-fullscreen')) return; e.preventDefault(); var zoomSensitivity = 0.005; var zoomFactor = Math.exp(-e.deltaY * zoomSensitivity); var newScale = Math.max(1, Math.min(scale * zoomFactor, 5)); if (newScale === scale) return; var rect = wrapper.getBoundingClientRect(); var mouseX = e.clientX - rect.left - rect.width / 2; var mouseY = e.clientY - rect.top - rect.height / 2; var ratio = newScale / scale; panX = mouseX - (mouseX - panX) * ratio; panY = mouseY - (mouseY - panY) * ratio; scale = newScale; constrainPan(); updateTransform(); }, { passive: false }); wrapper.addEventListener('mousedown', function(e) { if (!wrapper.classList.contains('fv-image-compare-fullscreen') || scale <= 1) return; if (e.target.closest('.fv-image-compare-slider') || e.target.closest('button')) return; isPanning = true; hasPanned = false; lastClientX = e.clientX; lastClientY = e.clientY; }); window.addEventListener('mousemove', function(e) { if (!isPanning) return; var dx = e.clientX - lastClientX; var dy = e.clientY - lastClientY; if (Math.abs(dx) > 2 || Math.abs(dy) > 2) { hasPanned = true; } lastClientX = e.clientX; lastClientY = e.clientY; panX += dx; panY += dy; constrainPan(); updateTransform(); }); window.addEventListener('mouseup', function() { isPanning = false; }); wrapper.addEventListener('touchstart', function(e) { if (!wrapper.classList.contains('fv-image-compare-fullscreen')) return; if (e.touches.length === 2) { e.preventDefault(); var dx = e.touches[0].clientX - e.touches[1].clientX; var dy = e.touches[0].clientY - e.touches[1].clientY; initialDistance = Math.sqrt(dx * dx + dy * dy); var rect = wrapper.getBoundingClientRect(); lastCenterX = (e.touches[0].clientX + e.touches[1].clientX) / 2 - rect.left - rect.width / 2; lastCenterY = (e.touches[0].clientY + e.touches[1].clientY) / 2 - rect.top - rect.height / 2; hasPanned = true; } else if (e.touches.length === 1 && scale > 1) { if (e.target.closest('.fv-image-compare-slider') || e.target.closest('button')) return; isPanning = true; hasPanned = false; lastClientX = e.touches[0].clientX; lastClientY = e.touches[0].clientY; } }, { passive: false }); wrapper.addEventListener('touchmove', function(e) { if (!wrapper.classList.contains('fv-image-compare-fullscreen')) return; if (e.touches.length === 2 && initialDistance !== null) { e.preventDefault(); var dx = e.touches[0].clientX - e.touches[1].clientX; var dy = e.touches[0].clientY - e.touches[1].clientY; var distance = Math.sqrt(dx * dx + dy * dy); if (initialDistance > 0) { var zoomFactor = distance / initialDistance; var newScale = Math.max(1, Math.min(scale * zoomFactor, 5)); var rect = wrapper.getBoundingClientRect(); var centerX = (e.touches[0].clientX + e.touches[1].clientX) / 2 - rect.left - rect.width / 2; var centerY = (e.touches[0].clientY + e.touches[1].clientY) / 2 - rect.top - rect.height / 2; var ratio = newScale / scale; panX = centerX - (centerX - panX) * ratio; panY = centerY - (centerY - panY) * ratio; if (lastCenterX !== null && lastCenterY !== null) { panX += (centerX - lastCenterX); panY += (centerY - lastCenterY); } scale = newScale; lastCenterX = centerX; lastCenterY = centerY; constrainPan(); updateTransform(); } initialDistance = distance; } else if (e.touches.length === 1 && isPanning) { e.preventDefault(); var dx = e.touches[0].clientX - lastClientX; var dy = e.touches[0].clientY - lastClientY; if (Math.abs(dx) > 2 || Math.abs(dy) > 2) { hasPanned = true; } lastClientX = e.touches[0].clientX; lastClientY = e.touches[0].clientY; panX += dx; panY += dy; constrainPan(); updateTransform(); } }, { passive: false }); wrapper.addEventListener('touchend', function(e) { if (e.touches.length < 2) { initialDistance = null; } if (e.touches.length === 0) { isPanning = false; } }); function handleMove(clientX) { var rect = inner.getBoundingClientRect(); var x = Math.max(0, Math.min(clientX - rect.left, rect.width)); var percent = Math.max(0, Math.min((x / rect.width) * 100, 100)); if (slider) slider.style.setProperty('left', percent + '%', 'important'); if (fgImage) fgImage.style.setProperty('clip-path', 'polygon(0 0, ' + percent + '% 0, ' + percent + '% 100%, 0 100%)', 'important'); if (labelLeft) { if (percent < 10) { labelLeft.style.setProperty('opacity', '0', 'important'); } else { labelLeft.style.setProperty('opacity', '1', 'important'); } } if (labelRight) { if (percent > 90) { labelRight.style.setProperty('opacity', '0', 'important'); } else { labelRight.style.setProperty('opacity', '1', 'important'); } } } function onMouseMove(e) { if (!isDragging) return; handleMove(e.clientX); } function onTouchMove(e) { if (!isDragging) return; e.preventDefault(); handleMove(e.touches[0].clientX); } function stopDragging() { isDragging = false; window.removeEventListener('mousemove', onMouseMove); window.removeEventListener('mouseup', stopDragging); window.removeEventListener('touchmove', onTouchMove); window.removeEventListener('touchend', stopDragging); } if (slider) { var startDrag = function(clientX) { isDragging = true; handleMove(clientX); window.addEventListener('mousemove', onMouseMove); window.addEventListener('mouseup', stopDragging); }; var startTouchDrag = function(clientX) { isDragging = true; handleMove(clientX); window.addEventListener('touchmove', onTouchMove, { passive: false }); window.addEventListener('touchend', stopDragging); }; slider.addEventListener('mousedown', function(e) { e.preventDefault(); startDrag(e.clientX); }); slider.addEventListener('touchstart', function(e) { e.preventDefault(); startTouchDrag(e.touches[0].clientX); }, { passive: false }); } var expandBtn = wrapper.querySelector('.fv-image-compare-expand-btn'); var closeBtn = wrapper.querySelector('.fv-image-compare-close-btn'); if (expandBtn) { if (window !== window.parent) { expandBtn.style.display = 'none'; } else { expandBtn.addEventListener('click', function(e) { e.stopPropagation(); wrapper.classList.add('fv-image-compare-fullscreen'); document.body.style.overflow = 'hidden'; if (fgImage && fgImage.dataset.highresSrc) { fgImage.src = fgImage.dataset.highresSrc; fgImage.removeAttribute('srcset'); fgImage.removeAttribute('sizes'); } if (bgImage && bgImage.dataset.highresSrc) { bgImage.src = bgImage.dataset.highresSrc; bgImage.removeAttribute('srcset'); bgImage.removeAttribute('sizes'); } }); } } if (closeBtn) { closeBtn.addEventListener('click', function(e) { e.stopPropagation(); wrapper.classList.remove('fv-image-compare-fullscreen'); document.body.style.overflow = ''; updateTransform(); }); } document.addEventListener('keydown', function(e) { if (e.key === 'Escape' && wrapper.classList.contains('fv-image-compare-fullscreen')) { wrapper.classList.remove('fv-image-compare-fullscreen'); document.body.style.overflow = ''; updateTransform(); } }); }); /* Shop The Look Hotspots */ var hotspots = chartWrapper.querySelectorAll('.fv-stl-hotspot-btn'); var allProductsModal = chartWrapper.querySelector('.fv-stl-all-products-modal'); var shopAllBtn = chartWrapper.querySelector('.fv-stl-shop-all-btn'); var stlContainer = chartWrapper.querySelector('.fv-stl-container'); function closeAllModals() { if (allProductsModal) { allProductsModal.classList.remove('is-active'); var items = allProductsModal.querySelectorAll('.fv-stl-all-products-item'); items.forEach(function(item) { item.classList.remove('is-highlighted'); }); if (stlContainer) { setTimeout(function() { if (!allProductsModal.classList.contains('is-active')) { stlContainer.style.minHeight = ''; if ('parentIFrame' in window) { window.parentIFrame.size(); } } }, 300); } } hotspots.forEach(function(btn) { btn.setAttribute('aria-expanded', 'false'); }); if ('parentIFrame' in window) { window.parentIFrame.size(); } } hotspots.forEach(function(btn) { btn.addEventListener('click', function(e) { e.stopPropagation(); var hotspotId = btn.getAttribute('data-hotspot-id'); var isExpanded = btn.getAttribute('aria-expanded') === 'true'; closeAllModals(); if (!isExpanded && allProductsModal) { btn.setAttribute('aria-expanded', 'true'); allProductsModal.classList.add('is-active'); var container = btn.closest('.fv-stl-container'); if (container && container.offsetHeight < 450) { container.style.minHeight = '450px'; } var targetItem = allProductsModal.querySelector('.fv-stl-all-products-item[data-product-id="' + hotspotId + '"]'); if (targetItem) { targetItem.classList.add('is-highlighted'); setTimeout(function() { targetItem.scrollIntoView({ behavior: 'smooth', block: 'center' }); }, 100); } if ('parentIFrame' in window) { window.parentIFrame.size(); } } }); }); if (shopAllBtn && allProductsModal) { shopAllBtn.addEventListener('click', function(e) { e.stopPropagation(); closeAllModals(); allProductsModal.classList.add('is-active'); var container = shopAllBtn.closest('.fv-stl-container'); if (container && container.offsetHeight < 450) { container.style.minHeight = '450px'; } if ('parentIFrame' in window) { window.parentIFrame.size(); } }); } if (allProductsModal) { var closeAllBtn = allProductsModal.querySelector('.fv-stl-all-products-close'); if (closeAllBtn) { closeAllBtn.addEventListener('click', function(e) { e.stopPropagation(); closeAllModals(); }); } } chartWrapper.addEventListener('click', function(e) { if (!e.target.closest('.fv-stl-all-products-content')) { closeAllModals(); } }); if (allProductsModal) { allProductsModal.addEventListener('click', function(e) { if (!e.target.closest('.fv-stl-all-products-content')) { closeAllModals(); } }); } /* Image Annotation Logic */ var iaNodes = chartWrapper.querySelectorAll('.fv-ia-node-button'); var iaWrapper = chartWrapper.querySelector('.fv-ia-wrapper'); var originalCaption = chartWrapper.querySelector('.fv-original-caption') || captionEl; var dynamicCaption = chartWrapper.querySelector('.fv-ia-dynamic-caption'); var exploreBtn = chartWrapper.querySelector('.fv-ia-explore-btn'); var currentIaIndex = -1; function closeAllIANodes() { iaNodes.forEach(function(btn) { btn.classList.remove('is-active'); }); if (originalCaption) originalCaption.style.display = 'block'; if (dynamicCaption) dynamicCaption.style.display = 'none'; } function resetExploreBtn() { currentIaIndex = -1; if (exploreBtn) { var exploreSpan = exploreBtn.querySelector('span'); if (exploreSpan) exploreSpan.textContent = 'Explore'; } } iaNodes.forEach(function(btn, index) { btn.addEventListener('click', function(e) { e.stopPropagation(); var isActive = btn.classList.contains('is-active'); closeAllIANodes(); if (!isActive) { currentIaIndex = index; if (exploreBtn) { var exploreSpan = exploreBtn.querySelector('span'); if (exploreSpan) exploreSpan.textContent = 'Next'; } btn.classList.add('is-active'); if (dynamicCaption) { var title = btn.getAttribute('data-title') || ''; var desc = btn.getAttribute('data-desc') || ''; dynamicCaption.innerHTML = ''; var strongTag = document.createElement('strong'); strongTag.textContent = title; dynamicCaption.appendChild(strongTag); if (desc) { dynamicCaption.appendChild(document.createTextNode(' - ' + desc)); } if (originalCaption) originalCaption.style.display = 'none'; dynamicCaption.style.display = 'block'; if (footerContentEl) footerContentEl.style.display = 'block'; } } else { resetExploreBtn(); } }); }); if (exploreBtn) { exploreBtn.addEventListener('click', function(e) { e.stopPropagation(); if (iaNodes.length === 0) return; var nextIndex = currentIaIndex + 1; if (nextIndex >= iaNodes.length) { closeAllIANodes(); resetExploreBtn(); } else { currentIaIndex = nextIndex; var targetBtn = iaNodes[currentIaIndex]; if (targetBtn) { if (targetBtn.classList.contains('is-active')) { targetBtn.click(); } targetBtn.click(); } } }); } if (iaWrapper) { iaWrapper.addEventListener('click', function(e) { if (!e.target.closest('.fv-ia-node-button') && !e.target.closest('.fv-ia-explore-btn')) { closeAllIANodes(); resetExploreBtn(); } }); } /* Initial Animation */ chartWrapper._fvAnimate = fvLocalAnimate; fvLocalAnimate(chartWrapper); /* Countdown Logic */ var countdownContainer = chartWrapper.querySelector('.fv-countdown-container'); if (countdownContainer) { var targetDateAttr = countdownContainer.getAttribute('data-target-date'); if (targetDateAttr) { var targetDate = new Date(targetDateAttr); var pad = function(n) { return (n < 10 ? '0' : '') + n; }; var updateCountdown = function() { var difference = +targetDate - +new Date(); var d = 0, h = 0, m = 0, s = 0; if (difference > 0) { d = Math.floor(difference / (1000 * 60 * 60 * 24)); h = Math.floor((difference / (1000 * 60 * 60)) % 24); m = Math.floor((difference / 1000 / 60) % 60); s = Math.floor((difference / 1000) % 60); } var daysEl = countdownContainer.querySelector('[data-time="days"]'); var hoursEl = countdownContainer.querySelector('[data-time="hours"]'); var minsEl = countdownContainer.querySelector('[data-time="minutes"]'); var secsEl = countdownContainer.querySelector('[data-time="seconds"]'); if (daysEl) daysEl.textContent = d; if (hoursEl) hoursEl.textContent = pad(h); if (minsEl) minsEl.textContent = pad(m); if (secsEl) secsEl.textContent = pad(s); }; updateCountdown(); setInterval(updateCountdown, 1000); } } } if (true) { var slideshowContainer = document.getElementById(uniqueId + '-slideshow'); if (slideshowContainer) { var slides = slideshowContainer.querySelectorAll('.fv-slide'); slides.forEach(function(slide) { setupWrapper(slide.querySelector('.fv-chart-wrapper')); }); } var slideshowContainer = document.getElementById(uniqueId + '-slideshow'); if (slideshowContainer) { var currentSlideIndex = 0; var slides = slideshowContainer.querySelectorAll('.fv-slide'); var counter = slideshowContainer.querySelector('.fv-slide-counter'); var prevBtn = slideshowContainer.querySelector('.fv-nav-btn.prev'); var nextBtn = slideshowContainer.querySelector('.fv-nav-btn.next'); var dropdown = slideshowContainer.querySelector('.fv-slideshow-select'); function updateControls(index) { if (counter) counter.textContent = (index + 1) + ' / ' + slides.length; if (dropdown) dropdown.value = index; if (prevBtn) { if (index === 0) prevBtn.classList.add('disabled'); else prevBtn.classList.remove('disabled'); } if (nextBtn) { if (index === slides.length - 1) nextBtn.classList.add('disabled'); else nextBtn.classList.remove('disabled'); } } function showSlide(index) { if (index < 0) return; if (index >= slides.length) return; currentSlideIndex = index; slides.forEach(function(slide, i) { slide.style.display = i === index ? 'block' : 'none'; if (i === index) { var chartEl = slide.querySelector('.fv-chart-wrapper'); if (chartEl) { fvLocalAnimate(chartEl); } } }); updateControls(currentSlideIndex); } if (prevBtn) { prevBtn.addEventListener('click', function() { showSlide(currentSlideIndex - 1); }); } if (nextBtn) { nextBtn.addEventListener('click', function() { showSlide(currentSlideIndex + 1); }); } if (dropdown) { dropdown.addEventListener('change', function(e) { showSlide(parseInt(e.target.value)); }); } updateControls(currentSlideIndex); if (slides.length > 0) { var firstChart = slides[0].querySelector('.fv-chart-wrapper'); if (firstChart) { setTimeout(function() { fvLocalAnimate(firstChart); }, 100); } } } } else { setupWrapper(root); } } if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', function() { initialize('fv-chart-1793621995295-o52s1xgav', true); }); } else { initialize('fv-chart-1793621995295-o52s1xgav', true); } })(); Hisense UR9 RGB MiniLED TV review: Features

(Image credit: Future / James Holland)
  • Comes with updated Dolby Vision 2
  • Google Gemini is conversational if slightly inaccurate
  • Comes with other AI-powered features including screensavers

Considering the price of the Hisense UR9, it’s no surprise that it has the smorgasbord of features one would expect. It comes with Dolby Vision IQ, which changes the picture based on ambient light. It also comes with Dolby Vision 2, the newly updated format that optimizes HDR content on a picture-by-picture basis using dynamic metadata. And, of course, the various HDR formats (HDR10, HDR10+ Adaptive, HLG) are all here as well. Internet connectivity is pretty fast too, thanks to Wi-Fi 6E.

This TV works with Apple HomeKit, Amazon Alexa, and has Google Cast and Google Assistant built in. And since there’s also far-field voice control on offer, you can basically interact with the TV to a large degree without a remote.

This particular feature runs through Google Gemini, Google’s AI-powered voice assistant. There are quite a few things I like about this voice assistant. Its conversational style, not to mention the various timbres to choose from, make it a more familiar experience (unless the uncanny valley-ness of it all is something that tends to get to you). I can ask it all sorts of things outside of controlling the TV, which is nice as well.

However, like my other experiences with Google Gemini, it’s not as accurate as one would hope, making it an imperfect companion for hands-free control, whether that means giving incorrect information about where something is streaming, or just posting up a bunch of YouTube videos about my requests instead of following through on my requests, which tend to be along the lines of: “Hey Google, play [insert content] on [streaming platform].”

Like other 2026 (and late 2025) TVs that I’ve interacted with, AI is the predominant buzzword that ties them altogether. It’s part of Google Gemini. It’s part of the RGB chipset. And it’s part of various other behind-the-scenes settings on the TV. Besides Google Gemini, the other user-facing feature utilizing AI is the screensaver where you can use either a photo from your Google account, artwork, or create AI artwork — a fun if, in my opinion, somewhat inconsequential feature.

  • Features score: 4.5/5
Hisense UR9 RGB MiniLED TV review: Picture quality

The colors are great, but there is some blooming as shown in this scene from the movie Soul (Image credit: Future / James Holland)
  • Impressive BT.2020 coverage and color accuracy
  • Plenty of brightness on tap
  • Some slight blooming

On paper, RGB mini-LED TVs (or MicroRGB for certain brands) should be a game changer for picture quality. In practice, I wouldn't say it's quite that, but it is a vibrant and immersive screen that's mostly a pleasure to use.

Looking at benchmarks, it is impressive with an almost 100% UHDA-P3 and over 92% BT.2020 color coverage in filmmaker mode — the fantastic TCL QM8L I recently reviewed hit 87% BT.2020 (both TVs are advertised as hitting 100%, of course).

The color accuracy in filmmaker mode is also a fairly impressive Delta E > 2.2 (closer to 0 is better), though it shoots up to 9.9 in standard mode. Changing into filmmaker mode on any TV greatly affects the colors shown onscreen, but it's never been so noticeable as it is on this TV.

Just like other more premium 2026 options, the brightness is more than enough. In our benchmarks, we recorded 227 nits in filmmaker mode and almost 800 in standard. And in our luminance benchmarks, it reached 4370 nits for 10% window and almost 1,100 in full screen for filmmaker mode.

I actually found the screen almost too bright. One of the reasons I like using filmmaker mode, especially on TV is the much reduced brightness. Of course, it still retains all the detail, whether it's the individual floorboards on a basketball court or the individual stars in the vastness of afterlife space per the movie Soul.

The picture is also smooth without any judder when there’s a lot of action, whether I’m watching some sports, movies, or even video games. For instance, watching the Detroit Pistons attempt a playoff comeback was as engaging as could be. I could keep track of not only the ball, but all the players whether they're running a pick and roll or grabbing a rebound.

Funnily enough, that is without all the AI clarity-related features. AI Super Resolution does sharpen things up a little, though I could see the AI in the player's faces at the highest settings. The Motion Enhancement smooths out the action a bit, which I found unnecessary, while the Motion Clearness sacrifices some of the picture fidelity for keeping up with the action. Also unnecessary with this TV.

However, when using those features for older content — say old, forgotten videos from the early days of YouTube — they do a decent job upscaling grainier content into something a little more pleasant and updated looking. While I wouldn't say older content looks 4K, it does look cleaner, sharper, and with better color.

The lone issue I found with the image quality is that it’s not as good at controlling blooming (also known as the Halo effect) due to the way RGB LEDs work. Since the red, blue, and yellow LEDs sit right next to each other, there’s more opportunity for cross talk between pixels than other TVs of similar quality that use a single LED in the same place with a filter creating the color.

I pulled up the usual screen tests on YouTube and didn’t really notice this too much as the image was sharp and clean. However, when watching Disney’s Soul, I noticed that when the main character enters the afterlife for the first time and is now a glowing avatar instead of a human in a void, he has a glow around him. Now, that’s somewhat intentional but it’s more muted on the other TVs I have accessible to me for comparison (the TCL QM8L and the Roku Pro Series TVs, specifically). This is, unfortunately, just a current limitation of RGB LED technology.

Back on the positives, the Hisense UR9 offers a number of picture modes including Film Maker Mode and IMAX Enhanced to take advantage of different content, something you don’t find (or at least to the same degree) on cheaper televisions.

  • Picture quality score: 4/5
Hisense UR9 RGB MiniLED TV review: Sound quality

The Hisense UR9 has visible woofers on the back of the TV (Image credit: Future / James Holland)
  • 110W of power with 4.1.2 virtualized spatial audio system
  • Sounds good except mids are bit forward
  • Room calibration and Intelligent settings help TV sound better

If you’re a TV manufacturer wanting to upgrade the audio experience, having Devialet tune your TV as the company has done with the Hisense UR9 is a good move. And I can confirm that the Hisense UR9 sounds pretty decent on its own.

Without an additional soundbar, this TV has up to 110 watts of power and provides a 4.1.2 multi-channel surround experience (6.2.2 channel audio in 100-inch), though you won’t get a full surround sound experience as all the speakers are in the TV, either pointing down or back. And when using Dolby Atmos content, it only produces a virtualized version when just using the TV speakers.

Now, the actual sound quality is good for a TV if not quite amazing. There’s a bit of a peak in the mid-bass on standard mode that gives the audio a bit of a bloated feel. However, this is easily mitigated, either by using the seven-band equalizer hidden in the bowels of the audio settings and pulling the 500Hz slider down a few ticks to taste (I had it at -4). Or if you’re lazy like me, just turn on the Intelligent Sound feature in the Intelligent Settings and it will do it for you.

The bass is decent for a TV without an actual subwoofer, though you’ll want to add one if you want that theater experience. And the high-end is clear and present.

There’s also a room calibration feature that, like the Intelligent Sound feature, will right the audio ship of this TV with minimal effort.

Of course, if you want to really upgrade the audio experience, this TV does pair with the Hisense HT Saturn speakers, which not only provides a surround sound and spatial audio experience, but also has specific features such as Hi-Concerto (using both the speakers of the sound system and the TV in tandem) among others.

  • Sound quality score: 4.5/5
Hisense UR9 RGB MiniLED TV review: Design

The USB-C port with DisplayPort support is separated out from the rest of the ports on the side of the TV. (Image credit: Future / James Holland)
  • Semi-adjustable central stand
  • A little bit on the thick side
  • Three HDMI 2.1 and a USB-C port with DisplayPort support

I feel like a broken record sometimes, but I will always tout the benefits of a central stand. So when I unboxed the Hisense UR9 and saw that the base was one central stand instead of legs on the far corners of the panel, I was thankful. I was maybe a little less thankful screwing in the base into the accompanying stand and then the stand into the back of the TV (I did do this alone so it will be significantly easier if you enlist a second person). But I did at least appreciate that the stand can be screwed into four different heights, so you can adjust how high the panel sits off the TV stand.

The panel uses very thin bezels — I feel like that’s more standard than not these days — with the exception of the bottom one that also holds the sensor. A little more unusual is the thickness of this TV. Make no mistake: this is still a flat panel TV, but it is just under two inches thick. Of course, if you’re into mounting your TV, it will sit a little more flush than the typical TV, due to the lack of unsightly bulge on the back.

When I unboxed the Hisense UR9, I was surprised by the fact that it only came with three HDMI ports. However, not only are they of the 2.1 variety so they support 4K at up to 180Hz (great for next-gen consoles that get up to 120 fps), but there’s also a USB-C port with DisplayPort support. That's great for plugging in a PC for professionals that want to use a TV to work on — although, let’s be real, PC gamers are probably the ones who’ll take most advantage of this.

As far as controls go, there’s just a single button on the bottom of the TV so don’t lose that remote. Thankfully, the fully backlit remote is on the bigger side so it’s not easy to lose. Of course, you can always just talk to the Hisense UR9 using Google Gemini.

  • Design score: 5/5
Hisense UR9 RGB MiniLED TV review: Smart TV and menus

The Google TV front page is easy to navigate, but does prioritize Google-related content (Image credit: Future / James Holland)
  • Google TV interface is intuitive if a bit YouTube-biased
  • Settings menus could be a little better organized
  • Google Gemini can be used to adjust settings

If the Fire TV interface that Amazon TVs come with seem to focus too much on Prime-related content, then the Google TV interface used here is a little too YouTube happy. But, outside of that bias, the layout of the interface is pretty intuitive for getting to content.

Not only does it feature tailored suggestions in the banner that takes up half of the screen, but it follows it with a row of suggestions across different streaming services as well as a “Continue Watching” row. Of course, the apps are also lined up in a row if you prefer to dig deep that way.

There’s plenty of Google TV-specific content even if you don’t use YouTube, with a good number of free channels playing content in a similar fashion as live cable (or cable-like streaming platforms like YouTube TV).

My only real gripe with Google TV is navigating the settings menu. This is mainly because it does require some digging to get to certain features. For instance, the room correction or calibration feature for audio is not available under audio, but under intelligent settings. While this sort of makes sense, it should also be under the audio settings since any adjustments I make to audio should be available there.

For picture settings, I did appreciate the number of various parameters available for adjusting. I can change the Gamma, for instance, as well as multiple motion blur and smoothing options, to name just a few.

Lastly, I’ve already talked about Google Gemini earlier, but it is a valid way of navigating this TV and its settings. However, besides the other issues I mentioned earlier, for whatever reason it just won’t directly play content from a voice command.

  • Smart TV & menus score: 4.5/5
Hisense UR9 RGB MiniLED TV review: Gaming

The Hisense UR9's vibrant screen and great contrast make it a great TV for gaming (Image credit: Future / James Holland)
  • Supports 4K at up to 180Hz depending on input
  • Plenty of gaming features on offer
  • Game Bar requires some menu diving to access

To test the gaming capabilities of the Hisense UR9, I plugged in a PlayStation 5 and played a number of games. Besides getting that 4K at 144Hz (capped at 120 by the PS5) performance afforded by the HDMI 2.1, being able to take advantage of HDR is nice as well.

There are also a number of features on offer. For example, there’s a game bar accessible through the menu that allows one to change settings like picture mode, Game Booster 330 (which supports a higher variable refresh rate) and turn on AMD Freesync, as well as see max frames of a game as not all PS5 games can go above 60 FPS.

The one annoying thing about the game bar is that there’s no way to pull it up directly. If I press the settings button on the remote, I just get the regular box out of “quick settings” for the TV. I have to press the menu button instead, which brings up a different type of quick settings across the bottom of the screen where I can select the game bar. Then the game bar HUD pops up with the various options for adjusting at the bottom and some metrics at the top including the FPS counter.

It may be a minor annoyance, but I’ve dealt with TVs where a long press somewhere on the remote while in game mode (the TV will automatically switch to game mode if enabled) will bring up the game bar menu.

In terms of gaming experiences on the TV, it’s impeccable. I get a clean, smooth image with plenty of detail. The only time I really had any issue was when I somehow had the TV in filmmaker mode and couldn’t see anything in the shadows of Lies of P, which at the time was about 75% of the screen.

Lastly, if you plan on doing any PC gaming on this, that USB-C port with 180Hz refresh rate will do wonders for any fast-paced Call of Duty-type action.

  • Gaming score: 4.5/5
Hisense UR9 RGB MiniLED TV review: Value

The Hisense UR9 showing a drone shot of a landscape (Image credit: Future / James Holland)
  • Marginally cheaper than other RGB LED TVs
  • Paying a premium for new tech
  • Other non-RGB LED TVs offer better value currently

Let’s face it. New tech is expensive. Therefore, RGB LED TVs are going to be pricey and, as an upgrade for your living room, they’re really not that great of a value. If you go for an RGB LED TV now, you’re an early adopter. A few generations from now, that might change. But, for now, you’re paying to be one of the first to have this technology.

The Hisense UR9 is going to be priced similarly to other RGB LED TVs, although now we've started to see discounts hitting some of these models, the Hisense is inching out just in front in terms of value.

Starting with LG's MRGB95B, its smallest size is 75 inches, which goes for $3,599.99 / AU$7,995 (around £2,710), while the 86-inch is $5,299.99 / £4,799 / AU$9,995, and the 100-inch is $6,999.99 / £9,999.98 / AU$17,995. Conversely, the Hisense UR9 is $2,499 / £2,299 / AU$3,995 at the 75-inch size, while the 85-inch model is $3,499 / £2,999 / AU$4,995 and the 100-inch goes for $4,999.99 (£4,510 / AU$8,520). So, out of the two, the Hisense is definitely coming out cheapest as things stand.

Samsung, another early adopter of RGB LED, is charging (65-inch) $2,499.99 / £2,599 / AU$5,295, (75-inch) $3,499.99 / £3,599 / AU$7,995, and (85-inch) $4,999.99 / £5,299 / AU$9,995 for the R95H model. Given Samsung's TV is the priciest of the three, the Hisense UR9 works out the best value for RGB LED TVs.

However, if we look at non-RGB LED TVs, like the TCL QM8L I just tested, they tend to offer an almost identical experience in terms of picture quality and features, though with better sound. That TCL QM8L, which has 4,000 local dimming zones, starts at $1,799.99 for the 65-inch model and goes up to $4,999.99 for the 98-inch.

  • Value score: 3.5/5
Should I buy the Hisense UR9 RGB MiniLED TV?

Hisense UR9 showcasing its upscaling with Magnet of Doom (L'aîné des Ferchaux) (Image credit: Future / James Holland)Hisense UR9 RGB MiniLED TV

Attributes

Notes

Rating

Features

Dolby Vision 2 and Google Gemini may be the most exciting features, but they’re just a few that are on offer.

4.5/5

Picture quality

This TV’s gorgeous picture quality provided by the RGB mini-LEDs is also somewhat held back by that tech, as there is some minor blooming.

4/5

Sound quality

The Hisense UR9 may have a bump in the mids, but that’s easily fixable either through the seven-band EQ, Intelligent Audio settings, or included AI room calibration.

4.5/5

Design

It might on the thick side, but there’s little to complain about here. The center base is solid and comes with some height adjustment. And the USB-C with DisplayPort support is a novel inclusion.

5/5

Smart TV and menus

Google TV is intuitive if a bit Google-content biased. Menu diving can be a little frustrating sometimes, however there are a lot of parameters available to finetune.

4.5/5

Gaming

From the picture quality to gaming specific features like AMD Freesync, this TV is made for gaming. Too bad, the gaming bar menu requires some menu diving.

4.5/5

Value

RGB LED TVs may be expensive, but the UR9's price drop makes it a good option. Of course, non-RGB LED TVs are still a bit better in terms of value.

3.5/5

Buy it if...

You want new tech
The concept and execution of RGB mini-LEDs is pretty cool, and if you want to be one of the first users with this kind of TV, the Hisense UR9 is a worthy option.

You’re a gamer
The fact that you can go up to 180Hz through the HDMI or USB-C (DisplayPort support) ports is fairly unique. Plus, plenty of the other features on offer like AMD Freesync make this a great TV for gamers.

You’re looking for color coverage and accuracy
Everyone is touting their 2026 TV as having 100% BT.2020 color coverage. This TV gets closer than plenty of the competition. And the color accuracy is pretty good too.

Don't buy it if…

You care about value or your choice of retailer
The Hisense UR9 is expensive (and not great value) like other RGB LED TVs.

You care about blooming
The one downside of RGB LEDs is blooming. While very minor, it’s more noticeable than on non-RGB LED TVs.

Hisense UR9 RGB MiniLED TV review: also consider

Hisense UR9 RGB MiniLED TV

TCL QM8L (C8L in other regions)

Hisense UR8

Hisense U65QF

LG C6

Price (65-inch)

$1,699.99 / £1,699 / AU$2,995

$1,799.99 / £1,499 / AU$2,695

$1,199.99 / £1,299.99 / AU$2,495

$999

$1,399 / £1,699 / AU$3,295

Screen type

RGB mini-LED

SQD mini-LED

RGB mini-LED

QLED w/ mini-LED

OLED

Refresh rate

180Hz

144Hz

144Hz

upt to 144Hz

144Hz

HDR support

HDR10, HDR10+, HLG, Dolby Vision

HDR10, HDR10+, HLG, Dolby Vision IQ

HDR10, HDR10+, HLG, Dolby Vision

Dolby Vision IQ, HDR10+, HDR10, HLG

Dolby Vision, HDR10, HLG

Smart TV

Google TV

Google TV

Google TV (US) / VIDAA (UK/Aus)

Fire TV

WebOS 25

HDMI ports

3 HDMI 2.1

4 HDMI 2.1

4 HDMI 2.1

4 (2x HDMI 2.1)

4x HDMI 2.1

TCL QM8L
The TCL QM8L, known as the TCL C8L in other regions like the UK and Australia, is as quality of a TV as the Hisense UR9 while being a bit cheaper in some regions, since it’s not using RGB LED. It does all the other things (though it does have a lower refresh rate) and has a similarly bright screen, though it isn’t quite as accurate. Read our full TCL QM8L review.

Hisense UR8
The step-down model from the UR9, the Hisense UR8 delivers good picture and sound quality in its own right, and is cheaper than the flagship UR9. It doesn't deliver the same brightness however and the UR9 is only slightly pricier for a better overall quality of TV. Read our full Hisense UR8 review.

Hisense U65QF
The Hisense U65QF is very affordable for a mini-LED TV. It’s packed with features like Dolby Atmos, a 144Hz refresh rate, and Dolby Vision IQ. It also has Alexa built in, though not Alexa+. Finding the video settings does take some deep menu diving, and the Prime-focused interface is a bit of an acquired taste. Read our full Hisense U65QF review.

LG C6
The LG C6 is a big upgrade over its predecessor the LG C5 and while its sound could be better, its brilliant picture quality, suite of gaming features, and AI-powered interface are just some of the reasons it's such a good TV. Despite it being a 2026 model, it's cheaper in the US and the same price in the UK for the 65-inch model than the Hisense UR9. Read our full LG C6 review.

How I tested the Hisense UR9 RGB MiniLED TV
  • I used the Hisense UR9 for a couple weeks
  • Tested with both TV, movies, music, and games
  • Benchmark measurements conducted by Future US testing lab

I used the Hisense UR9 regularly for a couple weeks. I tested it using streaming shows, movies, music, and games (via PS5). I went through the various features, particularly the hands-free Google Gemini, to see if it worked as advertised. I also spent time listening to the audio as well as paying attention to the picture quality.

The objective data measurements were taken by Future Publishing's TV testing lab, which uses the Klein K-10A colorimeter and Jeti 15VA spectroradiometer, Murideo Six G 8K Metal test pattern generator, and Portrait Displays' Calman color calibration software to record the results.

I’ve tested a lot of tech gear over the years, from laptops to speakers, and so have been able to use my expertise towards giving an honest and fair opinion, not to mention a critical eye, to any product I test.

You can read an in-depth overview of how we test TVs at TechRadar at that link.

Categories: Reviews

Apple Is Putting an Age Limit on Falling in Love With AI

CNET News - 6 hours 21 min ago
Dating and AI companion apps have new age gate restrictions, while apps that share your location will have to disclose it.
Categories: Technology

What Democrats plan to prioritize if they retake the House

NPR News Headlines - 6 hours 21 min ago

This election will determine control of Congress. Rep. Pete Aguilar, who represents California's 33rd Congressional District, shares how Democratic Party leaders are feeling as results come in.

Categories: News

Results: States decide on voter ID and redistricting ballot measures

NPR News Headlines - 6 hours 40 min ago

Several states — including Alaska, Arizona, California and Nevada — are voting on changes to how their elections are run, including voter ID measures. Other states decide on redistricting proposals.

(Image credit: Ty ONeil)

Categories: News

Legendary Photographer on getting that perfect election night picture

NPR News Headlines - 7 hours 14 sec ago

On election night, photographers will be in position, ready to snap history-making moments. It's something Pulitzer-prize-winner photographer David Hume Kennerly, has done for decades.

Categories: News

Pages

Subscribe to The Vortex aggregator