tomshardware.co.uk

Revisión web de tomshardware.co.uk

Tom's Hardware: For The Hardcore PC Enthusiast

 Generado el 19 Marzo 2026 07:26 AM

Resultados antiguos? ACTUALIZAR !

La puntuación es 56/100

Contenido SEO

Título

Tom's Hardware: For The Hardcore PC Enthusiast

Longitud : 46

Perfecto, tu título contiene entre 10 y 70 caracteres.

Descripción

Tom's Hardware helps you buy the best hardware and build the best PC to play, create and work..

Longitud : 95

Genial, tu descripción meta contiene entre 70 y 160 caracteres.

Palabras Claves (Keywords)

Muy mal. No hemos encontrado palabras clave (meta keywords) en tu página. Usa este generador de meta tags gratuito para crear tus palabras clave.

Propiedades Meta Og

Bien. Tu página usa propiedades Og (etiquetas og).

Propiedad Contenido
site_name Tom's Hardware
type website
url https://www.tomshardware.com/uk

Titulos

H1 H2 H3 H4 H5 H6
0 15 95 0 0 0
  • [H2] News Stream
  • [H2]
  • [H2] Reviews
  • [H2] Best Picks
  • [H2] CPUs
  • [H2] Graphics Cards
  • [H2] Meet The Team
  • [H2] Laptops
  • [H2] Features
  • [H2] PC Components
  • [H2] Desktops and PC Building
  • [H2] Deals
  • [H2] Coupons
  • [H2] Help Us Test Our AI Chatbot
  • [H2] More from Tom's Hardware
  • [H3] Monthly \u00a36 per month Subscribe Now Included: \u2713 Flexible 30-day rolling contract Best Deal Annual \u00a325 per year Subscribe Now Included: \u2713 Save 65% on annual plans console.log('salut v7'); let scrollPositionB = 0; const subscriptionModule = document.getElementById('subscription-module'); if (window.self !== window.top) { subscriptionModule.classList.add('active'); } if (subscriptionModule) { const subscriptionOverlay = subscriptionModule.querySelector('.subscription-overlay'); const subscriptionCloseBtn = subscriptionModule.querySelector('.subscription-close'); function closeSubscriptionModal() { subscriptionModule.classList.remove('active'); const savedScroll = scrollPositionB; const html = document.documentElement; html.classList.remove('body-no-scroll'); html.style.top = ''; requestAnimationFrame(() => { window.scrollTo(0, savedScroll); }); } if (subscriptionOverlay) { subscriptionOverlay.addEventListener('click', closeSubscriptionModal); } if (subscriptionCloseBtn) { subscriptionCloseBtn.addEventListener('click', closeSubscriptionModal); } } const emailButtons = Array.from(document.getElementsByClassName('openEmailModalBtn')); emailButtons.forEach(btn => { btn.addEventListener('click', () => { if (subscriptionModule) closeSubscriptionModal(); const itemId = btn.getAttribute('data-item-id'); if (window.FUTR?.Kiosq?.ChargebeeCheckout) { window.FUTR.Kiosq.ChargebeeCheckout.open(itemId); } }); }); (function(){ console.debug(\"Tomshardware v3 offers multicurrency 1\"); document.getElementById(\"subscribe-now-redirection\").addEventListener('click', () => { scrollPositionB = window.pageYOffset; const subscriptionModule = document.getElementById('subscription-module'); if (subscriptionModule) { subscriptionModule.classList.add('active'); const html = document.documentElement; html.classList.add('body-no-scroll'); html.style.top = `-${scrollPositionB}px`; } }); window.FUTR.Kiosq.Gates.show('kiosq-subscription-gate_58cca5a8', { container: '#subscription-module', position: 'replace' }); })(); ","main_layer_premium_enabled":true,"main_layer_premium":" .frame-27, .frame-27 * { box-sizing: border-box; } .content-frame-27{ float: left; margin-top: 20px; width: 100%; border-radius: 1rem; \/* coins arrondis *\/ box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2); \/* ombre port\u00e9e *\/ padding: 2rem; z-index: 10; animation: floatIn 0.3s ease-out; background: white; border: 0px; --pay-secondary-color: #6b7280; } .kiosq-gradient-frame-27 { height: 100px; position: relative; background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 85%); } .frame-27 { background: #ffffff; border-style: solid; border-color: #db3330; border-width: 4px 0px 4px 0px; padding: 20px; display: flex; flex-direction: column; gap: 20px; align-items: center; justify-content: flex-start; flex-shrink: 0; width: 100%; position: relative; } .you-ve-reached-your-free-article-access-limit-this-month { color: #1b1b1b; text-align: center; font: 300 20px \"PalatinoLinotype-Regular\", sans-serif; position: relative; } .frame-10 { background: #f5f5f5; display: flex; flex-direction: row; gap: 20px; align-items: flex-start; justify-content: center; flex-shrink: 0; width: 100%; position: relative; } .frame-9 { background: #f5f5f5; border-style: solid; border-color: rgba(0, 0, 0, 0); border-width: 1px; display: flex; flex-direction: column; gap: 5px; align-items: center; justify-content: flex-start; align-self: stretch; flex-shrink: 0; width: 100%; position: relative; } .frame-4 { background: #f5f5f5; border-style: solid; border-color: transparent; border-width: 1px; display: flex; flex-direction: column; gap: 0px; align-items: center; justify-content: flex-start; align-self: stretch; flex-shrink: 0; position: relative; } .frame-3 { padding: 30px; display: flex; flex-direction: column; gap: 15px; align-items: center; justify-content: flex-start; flex-shrink: 0; width: 100%; position: relative; } .frame-7 { display: flex; flex-direction: column; gap: 10px; align-items: center; justify-content: flex-start; align-self: stretch; flex-shrink: 0; position: relative; color: var(--pay-secondary-color); & ul { margin: 1em; padding:0; display: flex; flex-direction: column; align-items: center; font-family: sans-serif; list-style-type: disc; } } .subscribe-to-the-week-to-continue-reading { color: #1b1b1b; text-align: center; font: 300 26px \"PalatinoLinotype-Regular\", sans-serif; position: relative; align-self: stretch; } .get-unlimited-website-access-exclusive-newsletters-plus-much-more-with-a-subscription-to-the-week-for-less-than-3-per-week { color: #1b1b1b; text-align: center; font: 300 18px\/21px \"Arial-Regular\", sans-serif; position: relative; align-self: stretch; } .frame-17 { display: flex; flex-direction: column; gap: 5px; align-items: flex-start; justify-content: flex-start; flex-shrink: 0; position: relative; color: #ffffff; text-align: left; font: 700 14px \"Arial-Bold\", sans-serif; text-transform: uppercase; } .frame-12 { background: #db3330; color: #fff; padding: 12px 32px; display: flex; flex-direction: row; gap: 12px; align-items: center; justify-content: center; width: fit-content; min-width: 210px; position: relative; cursor: pointer; border: none; border-radius: 8px; font-size: 1rem; font-weight: 600; text-align: center; text-decoration: none; transition: background 0.25s ease, box-shadow 0.25s ease, transform 0.15s ease; box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15); } .frame-12:hover { background: #b82b28; box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2); transform: translateY(-2px); } html[data-locale=\"US\"] .flexi-page.progressive .frame-27 .frame-12 { background: #005ba5; } .cancel-or-pause-at-anytime { color: #1b1b1b; text-align: center; font: 400 12px\/18px \"Arial-Regular\", sans-serif; position: relative; align-self: stretch; } .frame-32 { padding: 10px 0px 10px 0px; display: flex; flex-direction: column; gap: 20px; align-items: center; justify-content: flex-start; flex-shrink: 0; width: 100%; position: relative; } .already-subscribe-to-the-week { color: #1b1b1b; text-align: center; font: 400 24px \"PalatinoLinotype-Regular\", sans-serif; position: relative; align-self: stretch; } .think-this-paywall-popped-up-by-mistake-let-s-get-it-sorted-contact-us { color: #1b1b1b; text-align: center; font: 400 16px\/24px \"-\", sans-serif; position: relative; align-self: stretch; } .think-this-paywall-popped-up-by-mistake-let-s-get-it-sorted-contact-us-span { color: #1b1b1b; font: 400 16px\/24px \"Arial-Regular\", sans-serif; } .think-this-paywall-popped-up-by-mistake-let-s-get-it-sorted-contact-us-span2 { color: #1b1b1b; font: 700 16px\/24px \"Arial-Bold\", sans-serif; text-decoration: underline; } .already-have-an-account-sign-in{ color: #1b1b1b; font: 700 16px \/ 24px \"Arial-Bold\", sans-serif; text-decoration: underline; } .already-have-an-account-sign-in:hover{ cursor: pointer; } .no-deco-link{ text-decoration: none; } Unlock this article with a Tom\u2019s Hardware Premium subscription Annual plan just \u00a325 (less than \u00a32.50 a month) Access deeper news analysis World-class hardware roadmaps Navigate granular performance data using Bench Or choose our 30-day plan for \u00a36 Subscribe Now Already a subscriber to Tom's hardware? Sign in \/* Hidden by default *\/ #subscription-module { display: none; position: fixed; inset: 0; z-index: 1000; justify-content: center; align-items: center; } html { scroll-behavior: auto !important; } \/* When active *\/ #subscription-module.active { display: flex; button { border: 1px solid; } } .subscription-overlay { position: absolute; inset: 0; background: rgba(0,0,0,0.45); } .subscription-modal { position: relative; z-index: 103; width: 100%; max-width: 700px; padding: 0; margin: 20px; line-height: 1.5em; background: #fff; border-radius: 12px; box-shadow: 0 4px 30px rgba(0,0,0,0.2); font-family: \"Open Sans\", sans-serif; animation: fadeIn 0.25s ease; height: auto; flex-shrink: 1; display: flex; flex-direction: column; } @keyframes fadeIn { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } } .subscription-header { text-align: right; padding-top: 15px; padding-right: 25px; } .subscription-close { background: black; border:1px solid black; font-size: 20px; cursor: pointer; color: white; border-radius: 22px; width: 43px; height: 43px; line-height: 43px; position: absolute; top: -20px; text-align: center; vertical-align: middle; } \/* Centered site title *\/ .subscription-site-title { text-align: center; font-size: 36px; font-weight: 400; font-family: \"Open Sans\", sans-serif; color: #111; margin: 12px 0 25px; } .subscription-reccurence{ font-family: \"Open Sans\", sans-serif; } .pricing-options { display: flex; justify-content: flex-start; gap: 20px; background: Whitesmoke; padding: 20px; padding-bottom: 50px; } .pricing-card { width: 50%; border: 1px solid; border-color: hsl(from var(--flexi-brand_color_2, black) h s calc(l + 30)); border-radius: 10px; padding: 30px 20px; text-align: center; background: #fff; transition: transform 0.2s ease, box-shadow 0.2s ease; } .pricing-card .badge { display: block; border: 2px solid; padding: 10px 15px; margin-left: 2.5em; float: right; line-height: 1em; margin-top: -3em; border-color: var(--flexi-brand_color_2); border-radius: 6px; background-color: hsl(from var(--flexi-brand_color_2, #ffffff) h s calc(l + 30)); box-shadow: 0px 1px 25px #00000030; color: #000; font-size: 14px; font-weight: 600; } .pricing-card:hover { transform: translateY(-5px); box-shadow: 0 6px 25px rgba(0,0,0,0.05); } .subscription-included { margin-bottom: 20px; } .pricing-card h3 { display: block; text-align: center; font-size: 20px; color: #111; } .price { font-size: 26px; font-weight: bold; color: #111; } .recurrence { color: #555; margin-bottom: 20px; } .cta-button { display: inline-block; background: white; color: black; font-size: 16px; font-weight: 600; line-height: 1.2em; padding: 12px 0; border-radius: 6px; text-decoration: none; transition: background 0.2s ease; border: solid black 1px; width: 100%; font-family: \"Open Sans\", sans-serif; cursor: pointer; } .cta-button-best { background: black; color: #fff; background-color: #000; } .subscription-included { text-align: left; margin-top: 20px; font-weight: 300; } .features { & ul { list-style-type: none; } padding: 0; margin-top: 10px; text-align: left; color: #333; font-size: 15px; } .subscription-modal::-webkit-scrollbar { width: 8px; } .subscription-modal::-webkit-scrollbar-thumb { border-radius: 999px; background: rgba(0,0,0,0.12); } @media (max-width: 768px) { #subscription-module{ padding-top:20px; align-items: baseline; } .subscription-modal{ height: calc(100% - 40px); } .pricing-options { flex-direction: column; align-items: baseline; overflow-y: scroll; } .pricing-card { width:auto; } .subscription-site-title { font-size: 30px; margin-bottom: 30px; } .subscription-close { right: -3%; } } body { color:black; } \u2715 Choose your plan Monthly \u00a36 per month Subscribe Now Included: \u2713 Flexible 30-day rolling contract Best Deal Annual \u00a325 per year Subscribe Now Included: \u2713 Save 65% on annual plans console.log('salut v7'); let scrollPositionB = 0; const subscriptionModule = document.getElementById('subscription-module'); if (window.self !== window.top) { subscriptionModule.classList.add('active'); } if (subscriptionModule) { const subscriptionOverlay = subscriptionModule.querySelector('.subscription-overlay'); const subscriptionCloseBtn = subscriptionModule.querySelector('.subscription-close'); function closeSubscriptionModal() { subscriptionModule.classList.remove('active'); const savedScroll = scrollPositionB; const html = document.documentElement; html.classList.remove('body-no-scroll'); html.style.top = ''; requestAnimationFrame(() => { window.scrollTo(0, savedScroll); }); } if (subscriptionOverlay) { subscriptionOverlay.addEventListener('click', closeSubscriptionModal); } if (subscriptionCloseBtn) { subscriptionCloseBtn.addEventListener('click', closeSubscriptionModal); } } const emailButtons = Array.from(document.getElementsByClassName('openEmailModalBtn')); emailButtons.forEach(btn => { btn.addEventListener('click', () => { if (subscriptionModule) closeSubscriptionModal(); const itemId = btn.getAttribute('data-item-id'); if (window.FUTR?.Kiosq?.ChargebeeCheckout) { window.FUTR.Kiosq.ChargebeeCheckout.open(itemId); } }); }); (function(){ console.debug(\"Tomshardware v3 offers multicurrency 1\"); document.getElementById(\"subscribe-now-redirection\").addEventListener('click', () => { scrollPositionB = window.pageYOffset; const subscriptionModule = document.getElementById('subscription-module'); if (subscriptionModule) { subscriptionModule.classList.add('active'); const html = document.documentElement; html.classList.add('body-no-scroll'); html.style.top = `-${scrollPositionB}px`; } }); window.FUTR.Kiosq.Gates.show('kiosq-subscription-gate_58cca5a8', { container: '#subscription-module', position: 'replace' }); })(); "}}; /** * Simple hasBarrier Promise for Ad Targeting * Waits for Kiosq library to finalize hasBarrier after v2/campaigns */ // Create promises for v2 data and hasBarrier resolution window.FUTR.Kiosq.promiseKiosqDataV2 = new Promise((resolve) => { window.FUTR.Kiosq.resolveKiosqDataV2 = resolve; }); window.FUTR.Kiosq.promiseHasBarrier = new Promise((resolve) => { window.FUTR.Kiosq.resolveHasBarrier = resolve; }); // Resolve hasBarrier after Kiosq v2 and campaigns complete const resolveHasBarrierFinal = () => { // Use hasBarrier calculated by Kiosq library, or false if not set // We DON'T use displayBarrier as fallback because in metered paywall: // - displayBarrier = true (page has paywall configured) // - hasBarrier = false (user still has free articles) const finalHasBarrier = window.FUTR.Kiosq?.hasBarrier ?? false; window.FUTR.Kiosq.resolveHasBarrier(finalHasBarrier); console.log( '%cKIOSQ', 'color: #ffffff; background-color: #7F00FF; padding: 2px 6px;', 'hasBarrier resolved:', finalHasBarrier, 'from:', window.FUTR.Kiosq?.hasBarrier !== undefined ? 'kiosq-library' : 'default (false)' ); }; // Wait for v2, then allow minimal time for campaign overrides (50ms optimized for speed) if (window.FUTR.Kiosq.promiseKiosqDataV2) { window.FUTR.Kiosq.promiseKiosqDataV2 .then(() => setTimeout(resolveHasBarrierFinal, 50)) .catch(() => setTimeout(resolveHasBarrierFinal, 50)); } else { setTimeout(resolveHasBarrierFinal, 0); } window.FUTR.Kiosq.isHubPage = false; window.FUTR.Kiosq.kiosqEndpoint = "https:\/\/kiosq.vanilla.tools"; window.FUTR = window.FUTR || {}; window.FUTR.Kiosq = window.FUTR.Kiosq || {}; window.FUTR.Kiosq.isPremium = false; window.FUTR.Kiosq.displayBarrier = false; window.FUTR.Kiosq.disableServices = []; @layer legacy {#kiosqAssistant { font-family: Helvetica, Arial, sans-serif; font-size: 12px; height: auto; max-height: 400px; min-width: 250px; background: rgba(250, 249, 247, 0.18); border-radius: 16px; box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1); backdrop-filter: blur(16.4px); border: 1px solid rgba(0, 0, 0, 0.25); position: fixed; right: 10px; bottom: 10px; z-index: 10000; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); text-align: center; & > * { margin:0; padding:0; } & > div.content { overflow-y: scroll; overflow-x: clip; height: 300px; & header { display:flex; flex-direction: column; font-size: 1rem; background-color: #00000010; padding: 0.4em 0; margin: 0; } } & > header { padding: 2px; flex-grow: 1; display: flex; justify-content: center; align-items: center; margin: 0; font-size: 1.5rem; font-weight: 600; & h4{ display:flex; flex-direction: column; padding: 10px 5px; font-size: large; & span { font-size: small; } } & a { color: var(--flexi-brand_color_2); text-decoration: underline; } } & .btn svg { width: 20px; height: 20px; } .table-item { & .btn svg { width: 15px; height: 15px; } } } #kiosqAssistant.collapsed { max-height: 60px; width: auto; min-width: 200px; & > div.content { display: none; } & .campaign { display: none; } & header { flex-grow: 1; & > div > a { display: none; } } } .campaign { display: flex; flex-direction: column; justify-content: center; align-items: center; transition: all 0.3s ease; opacity: 1; & header { margin:0; padding: 0.4em 1em; font-weight: normal; } } .custom-template, .campaigns, .campaign { /* font-size: 15px; font-weight: 600; width: 100%; text-align: center; margin: 0; padding: 0.2em 0.5em; */ & header { background-color: #f2f3f4; } } .table-item { width: 100%; border: 1px solid rgba(250, 249, 247, 0.4); border-bottom: 1px solid #00000020; display: flex; flex-direction: column; & .btn svg { width: 18px; height: 18px; } & thead { & tr { display:flex; & th { display: flex; padding: 5px 0 10px 2px; font-size:1.2em; flex-grow: 1; font-weight: 600; } } } & tbody { display: flex; flex-direction: column; & tr{ display:inline-flex; flex-grow: 1; width: 100%; &:nth-child(odd){ background-color: #f8f8f8; } /* &:nth-child(odd){ background-color: #FFF; } */ } & td { padding: 4px; &:first-child{ flex-grow: 1; width: 25em; } &:last-child{ flex-grow: 0; width:4em; font-weight: 700; text-align: center; display: flex; justify-content: center; align-items: center; } } } } ul.table-item{ list-style: none; padding: 0; margin: 0; width: 100%; min-height: 2em; background-color:transparent; & li { padding: 0 5px; display:flex; width:100%; height: 2em; & span, & a { align-content: center; } & div { flex-grow: 1; align-content: center; } & a { text-decoration: none; color: var(--flexi-brand_color_2); &:hover { background-color: var(--flexi-brand_color_2); color:white; } } } } .table-item.empty { & td,& tbody td:last-child { display: block; text-align:center; width: 100%; } } .table-item.templates { & tbody { display:table; & tr { display:table-row; border-bottom: 1px solid #00000030; & td, th { text-align: center; display: table-cell; &:first-child{ width: auto; } /* &:nth-child(2) { } */ &[rowspan] { vertical-align: middle; font-weight: 600; width: 5em; } } } } } .table-header-col{ padding: 5px 0; } .table-header-col { padding: 0 3px; font-weight: bold; } .table-header-title-link{ border-bottom: 1px solid var(--flexi-brand_color_2); line-height: 25px; } .table-header-title-link:hover{ text-decoration: none; color: var(--flexi-brand_color_2); } ::-webkit-scrollbar { -webkit-appearance: none; width: 7px; } ::-webkit-scrollbar-thumb { border-radius: 4px; background-color: rgba(0, 0, 0, 0.5); box-shadow: 0 0 1px rgba(255, 255, 255, 0.5); } .result-custom-template, .result-campaign{ min-height: 60px; } .table-compare-col{ padding: 15px; border: 1px solid #333; text-align: center; } .table-config-compare .table-header-col{ text-align: center; border: 1px solid #999; padding: 5px; } /* SmartTooltip styles moved to SmartTooltip.css */ /* Button styles for all anchor tags with btn class */ .btn, .btn:visited { display: inline-flex; align-items: center; justify-content: center; color: var(--flexi-brand_color_2, #333); text-decoration: none !important; border-radius: 4px; font-size: 12px; font-weight: 500; transition: all 0.2s ease-in-out; cursor: pointer; border: 1px solid transparent; min-height: 24px; & svg { fill: currentColor; } } .btn:hover, .btn:visited:hover { transform: translateY(-1px); box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); text-decoration: none !important; background-color: var(--flexi-brand_color_2, #333); color: white; & svg { fill: white; } } .btn:active { transform: translateY(0); box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2); } /* Adjust spacing for icon-only buttons */ .btn:has(svg):not(:has(text)) { padding: 8px; min-width: 32px; } /* Table header title link buttons */ .table-header-title-link.btn { background-color: transparent; color: var(--flexi-brand_color_2, #007bff) !important; border: 1px solid var(--flexi-brand_color_2, #007bff); padding: 4px 8px; } .table-header-title-link.btn:hover { background-color: var(--flexi-brand_color_2, #007bff); color: #fff !important; } /* Config compare link buttons */ .config-compare-link { cursor: pointer; font-weight: normal; &:hover { font-weight: 600; } } .config-compare-link.btn { background-color: #28a745; font-size: 11px; padding: 4px 8px; } .config-compare-link.btn:hover { background-color: #218838; } .table-config-compare { & tbody > tr { border-bottom:1px solid #fff; } & tr { &:nth-child(odd) { background-color: #dfdfdf; } & td, th { &:first-child { vertical-align: middle; } overflow-wrap: anywhere; max-width: 40em; padding: 3px; vertical-align: baseline; } } & textarea{ height: 80px; width: 100%; padding: 5px; } } /* Smart Tooltip Styles */ .tooltip-container { position: relative; display: inline-block; } .smart-tooltip { position: absolute; background-color: var(--flexi-brand_color_2, #333); color: #fff; padding: 6px 8px; border-radius: 4px; font-size: 12px; z-index: 11000; pointer-events: none; box-shadow: 0 2px 8px rgba(0,0,0,0.2); max-width: 25em; opacity: 0; transition: opacity 0.2s ease-in-out; word-wrap: break-word; white-space: normal; line-height: 1.4; text-wrap: auto; } .smart-tooltip.visible { display: block; opacity: 1; } .smart-tooltip.hidden { display: none; opacity: 0; } .tooltip-arrow { position: absolute; width: 0; height: 0; border-left: 4px solid transparent; border-right: 4px solid transparent; } .tooltip-arrow.top { border-top: 4px solid var(--flexi-brand_color_2, #333); bottom: -4px; } .tooltip-arrow.bottom { border-bottom: 4px solid var(--flexi-brand_color_2, #333); top: -4px; } /* Prevent tooltip interference with modals */ .paywall-settings-overlay .tooltip-container, #kiosq-modal-portal .tooltip-container { pointer-events: auto; } .paywall-settings-overlay .smart-tooltip, #kiosq-modal-portal .smart-tooltip { z-index: 10011; /* Higher than modal content */ } .loader { border: 16px solid #f3f3f3; /* Light grey */ border-top: 16px solid var(--flexi-brand_color_2); /* Site brand color */ border-radius: 50%; width: 120px; height: 120px; animation: spin 2s linear infinite; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } .loader-content { display: flex; justify-content: center; align-items: center; } .loader-content.show-kiosq-loader { display: flex !important; margin: auto; width: max-content; } .loader-content.hide-kiosq-loader { display: none; } .overlay { background-color: #fff; opacity: 0.5; } .wrapper-template{ position:relative; } .override-loader-position { position: absolute; top: 0; bottom: 0; right: 0; left: 0; z-index: 10; } .responsive .override-loader-position{ height: auto; } .loader-content-debug{ height: auto; background: transparent; } .loader-debug{ width: 60px; height: 60px; } @media (min-width: 1024px){ .progressive .kiosq-main-layer+.override-loader-position { float: left; width: calc(100% - 320px); margin-bottom: 20px; margin-top: -120px; } } #kiosq-modal-portal{ position: fixed; top: 75px; right: 12px; z-index: 10000; font-size: 12px; box-shadow: 0px 0px 10px #000000; border-radius: 15px; background-color: white; max-width: 50%; } #kiosq-modal-container{ padding: 0 15px 15px 15px; } /* .modal-button-close,.modal-title{ display: inline-block; } */ /* .modal-wrapper{ width: auto; border-radius: 15px; padding: 15px; } */ .modal-header{ display: flex; flex-direction: row; font-size: 1.1rem; font-weight: 600; height: 2.5em; align-items: center; } .modal-title{ align-content: center; margin: auto; } .modal-content { overflow-y: scroll; max-height: 40em; } .button-header-debug-wrapper-close{ background: none; border: none; cursor: pointer; width: 2rem; height: 2rem; color: #333; background-color: lightgray; border-radius: 10%; } .button-header-debug-wrapper-close svg{ margin: auto; } /* Paywall Height Input Styles */ .paywall-height-input { & ul { display: flex; flex-direction: column; gap: 10px; list-style: none; padding: 0; margin: 0; & li { display: flex; align-items: center; gap: 10px; & label { min-width: 100px; font-weight: 500; } & input[type="range"] { display: block; flex: 1; } & .indicator { width: 40px; padding: 2px 4px; border: 1px solid #ccc; border-radius: 3px; background-color: #f5f5f5; color: #666; font-size: 1.2em; text-align: center; } } } } /* Paywall Settings Modal Styles */ .paywall-settings-overlay { position: fixed; top: 50px; /* Position below the paywall button (button at top: 10px + height ~40px) */ right: 10px; /* Align with the paywall button */ width: auto; height: auto; background-color: transparent; z-index: 10010; transition: all 0.3s ease-in-out; /* Smooth transitions */ } .paywall-settings-modal { background-color: #fff; border-radius: 8px; padding: 0.5em; min-width: 400px; max-width: 500px; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3); position: relative; transform-origin: top right; /* Scale from top right corner */ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); /* Smooth easing */ opacity: 1; transform: scale(1); & p { font-size: small; margin-bottom: 0.5em; & svg { display: inline-block; width: 20px; height: 20px; } } /* Animation states */ &.entering { opacity: 0; transform: scale(0.8); } &.entered { opacity: 1; transform: scale(1); } &.exiting { opacity: 0; transform: scale(0.8); } & .paywall-settings-header { display: flex; justify-content: space-between; align-items: center; margin:0; margin-bottom: 15px; border-bottom: 1px solid #eee; transition: all 0.3s ease; & h3 { margin: 0; transition: all 0.3s ease; } } & .paywall-settings-content { margin-bottom: 20px; transition: all 0.3s ease; font-size: small; & h5 { margin-bottom: 10px; transition: all 0.3s ease; } } & .paywall-settings-actions { text-align: center; transition: all 0.3s ease; } } /* Responsive adjustments */ @media (max-width: 768px) { .paywall-settings-overlay { bottom: 5px; right: 5px; } .paywall-settings-modal { min-width: 300px; max-width: 350px; padding: 15px; } } /* Ensure modal stays above debug wrapper */ .campaign-debug-wrapper.collapsed ~ .paywall-settings-overlay, .campaign-debug-wrapper ~ .paywall-settings-overlay { z-index: 10011; /* Higher than debug wrapper */ } /* SmartTooltip styles moved to SmartTooltip.css */ /* Button styles for all anchor tags with btn class */ .btn, .btn:visited { display: inline-flex; align-items: center; justify-content: center; color: var(--flexi-brand_color_2, #333); text-decoration: none !important; border-radius: 4px; font-size: 12px; font-weight: 500; transition: all 0.2s ease-in-out; cursor: pointer; border: 1px solid transparent; min-height: 24px; } .btn.alone { background-color: hsl(from var(--flexi-brand_color_2) h s calc(l + 30)); } .btn:hover, .btn:visited:hover { transform: translateY(-1px); box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); text-decoration: none !important; background-color: var(--flexi-brand_color_2, #333); color: white; } .btn:active { transform: translateY(0); box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2); } /* Special styling for buttons with SVG icons */ .btn svg { width: 16px; height: 16px; fill: currentColor; } /* Adjust spacing for icon-only buttons */ .btn:has(svg):not(:has(text)) { padding: 8px; min-width: 32px; } #kiosq-app-paywall-js { width: 100%; } .hasBarrier ._cm-video { display: none; } .hasBarrier .paywall-locker { height: var(--desktop-content-limit); overflow-y: clip; overflow-x: visible; display: flow-root; } .hasBarrier .paywall-locker + .paywall-locker { clear: none; } /* target when paywall-locker doesn't have height:auto */ .hasBarrier .paywall-locker:not([style*="height: auto"]) { user-select: none; } @media (max-width: 991px) { .responsive.hasBarrier .paywall-locker { height: var(--mobile-content-limit); } } @media (max-width: 1024px) { .progressive.hasBarrier .paywall-locker { height: var(--mobile-content-limit); } } #kiosq { z-index: 10; position: relative; top: -100px; width: 100%; } .kiosq-main-layer .kiosq-gradient { height: 100px; position: relative; background: linear-gradient( 180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 85% ); } .kiosq-main-layer.kiosq-sticky-layer .kiosq-gradient { height: 50px; background: linear-gradient( 180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 110% ); } .hasBarrier{ --desktop-content-limit:96px; --mobile-content-limit:96px; } .wrapper-main-template{ height: 550px; margin-top: -150px; } .paywall-locker .wrapper-main-template.is-visible{ margin-top: -120px; } .is-not-visible{ visibility: hidden; height: inherit; margin-top: inherit; } .kiosq-main-layer { /* max-height: 550px; overflow: scroll; */ border-bottom: 1px solid #333; margin-bottom: 20px; position: relative; } .disable-scrollbars::-webkit-scrollbar { background: transparent; width: 0px; } .disable-scrollbars { scrollbar-width: none; -ms-overflow-style: none; } .kiosq-main-layer.kiosq-sticky-layer { position: fixed; margin-top: 0; border-bottom: none; bottom: 0; z-index: 1000; margin-bottom: 0px; height: inherit; } .responsive .kiosq-main-layer.kiosq-sticky-layer { width: 602px; } @media (min-width: 991px) { .responsive.no-sidebar .kiosq-main-layer.kiosq-sticky-layer { width: 922px; } } @media (min-width: 991px) { .progressive .kiosq-main-layer.kiosq-sticky-layer { width: 940px; } } @media (min-width: 1024px) { .progressive .kiosq-main-layer { float: left; width: calc(100% - 320px); } } @media (min-width: 1281px) { .progressive .kiosq-main-layer.kiosq-sticky-layer { width: 1070px; } .progressive .kiosq-main-layer.kiosq-sticky-layer { margin-left: -50px; } } .kiosq-main-layer .kiosq-main-layer-container { margin-bottom: 30px; padding: 20px; background-color:#ededed; } .kiosq-main-layer.kiosq-sticky-layer .kiosq-main-layer-container { border-top: 1px solid #333; padding-top: 10px; margin-bottom: 0px; } .kiosq-main-layer .kiosq-logo.rowLeft { margin-bottom: 20px; display: flex; justify-content: flex-start; } .kiosq-main-layer .kiosq-logo.rowCenter { margin-bottom: 20px; display: flex; justify-content: center; order: 2; } .kiosq-main-layer .kiosq-logo.rowRight { margin-bottom: 20px; display: flex; justify-content: flex-end; order: 2; } .element_at_the_same_line_space_around { display: flex; justify-content: space-around; } .element_at_the_same_line_space_between { display: flex; justify-content: space-between; } .kiosq-main-layer .kiosq-logo img { width: 140px !important; } .kiosq-main-layer.kiosq-sticky-layer .kiosq-sticky-logo.rowLeft { margin: 0px; display: flex; justify-content: flex-start; } .kiosq-main-layer.kiosq-sticky-layer .kiosq-sticky-logo.rowCenter { margin: 0px; display: flex; justify-content: center; } .kiosq-main-layer.kiosq-sticky-layer .kiosq-sticky-logo.rowRight { margin: 0px; display: flex; justify-content: flex-end; } .kiosq-main-layer.kiosq-sticky-layer .kiosq-sticky-logo img { width: 70px; /*float: right;*/ } .kiosq-main-layer .kiosq-title { font-size: 30px; font-weight: bold; line-height: 38px; margin-bottom: 20px; } .kiosq-main-layer.kiosq-sticky-layer .kiosq-title { font-size: 18px; line-height: 24px; margin-bottom: 10px; } .kiosq-main-layer .kiosq-subtitle { font-size: 16px; font-weight: bold; line-height: 24px; margin-bottom: 10px; } .kiosq-main-layer.kiosq-sticky-layer .kiosq-subtitle { font-size: 14px; line-height: 22px; } .kiosq-main-layer .kiosq-description { font-size: 14px; line-height: 22px; margin-bottom: 25px; } #main_layer_regwall .kiosq-description { margin-bottom: 0px; } .kiosq-main-layer.kiosq-sticky-layer .kiosq-description { margin-bottom: 10px; } .kiosq-main-layer .kiosq-description .custom_h4 { font-size: 100%; font-weight: bold; } .kiosq-main-layer .kiosq-description .custom_h3 { font-size: 16px; font-weight: bold; line-height: 24px; margin-bottom: 10px; } .kiosq-main-layer .kiosq-description .custom_h2 { font-size: 18px; font-weight: bold; line-height: 24px; margin-bottom: 10px; } .kiosq-main-layer .kiosq-description .custom_h1 { margin-top: 0px; font-weight: bold; font-size: 28px; line-height: 34px; } .kiosq-main-layer .kiosq-description p { margin-bottom: 1em; } #main_layer_regwall .kiosq-description p { margin-bottom: 0px; } .kiosq-main-layer .kiosq-login-button > div { width: 100%; } .kiosq-main-layer .kiosq-login-button.rowLeft { font-size: 13px; margin-bottom: 25px; display: flex; flex-direction: column; align-items: flex-start; } .kiosq-main-layer .kiosq-login-button.rowCenter { font-size: 13px; margin-bottom: 25px; display: flex; flex-direction: column; align-items: center; order: 2; } .kiosq-main-layer .kiosq-login-button.rowRight { font-size: 13px; margin-bottom: 25px; display: flex; flex-direction: column; align-items: flex-end; order: 2; } .kiosq-main-layer.kiosq-sticky-layer .kiosq-login-button { margin-bottom: 0; font-size: 13px; } .kiosq-main-layer .kiosq-login-button button { height: 44px; width: 360px; text-align: center; color: #fff; margin-bottom: 10px; border: none; font-weight: 700; text-transform: uppercase; cursor: pointer; background-color:var(--flexi-brand_color_2); } .kiosq-main-layer.kiosq-sticky-layer .kiosq-login-button button { height: 34px; width: 310px; margin-right: 10px; } .kiosq-main-layer .kiosq-login-button a { color: #000000; text-decoration: underline; } .kiosq-main-layer .kiosq-conditions { font-size: 14px; line-height: 22px; } .kiosq-main-layer ul.kiosq-conditions, .kiosq-main-layer .kiosq-conditions ul { list-style-type: disc; list-style-position: outside; margin-bottom: 25px; margin-left: 20px; } .kiosq-main-layer ul.kiosq-conditions li, .kiosq-main-layer .kiosq-conditions ul li { font-size: 14px; line-height: 20px; } /* Menu header layer */ .kiosq-main-layer.kiosq-header-menu-layer { display: none; position: absolute; background-color: #333; width: 100%; left: 0; z-index: 1; top: 60px; color: #fff; margin-top: 0; } .kiosq-main-layer.kiosq-header-menu-layer a { color: #fff; } .kiosq-main-layer.kiosq-header-menu-layer .kiosq-main-layer-container { background: #333; display: flex; flex-wrap: wrap; margin: 20px; padding: 0px; } #kiosq-dropdown-checkbox { display: none; } .kiosq-dropdown-checkbox-img { font-size: medium; line-height: normal; } #kiosq-dropdown-checkbox:checked + .kiosq-main-layer.kiosq-header-menu-layer { display: block; } .kiosq-main-layer.kiosq-header-menu-layer .kiosq-title { width: 67%; } .kiosq-main-layer.kiosq-header-menu-layer .kiosq-subtitle { width: 33%; text-align: center; margin-bottom: 15px; } .kiosq-main-layer.kiosq-header-menu-layer .kiosq-description { width: 67%; font-size: 16px; line-height: 24px; } .kiosq-main-layer.kiosq-header-menu-layer .kiosq-login-button { width: 33%; text-align: center; line-height: 30px; margin: 0; font-size: 13px; } .kiosq-main-layer.kiosq-header-menu-layer .kiosq-login-button button { line-height: 24px; width: 90%; background-color: var(--flexi-brand_color_2); } .kiosq-main-layer.kiosq-button-layer { margin-top: 10px; border-bottom: none; margin-bottom: 0; } .kiosq-main-layer.kiosq-button-layer .kiosq-main-layer-container { padding: 0px; background-color: inherit; } .kiosq-main-layer.kiosq-button-layer .kiosq-login-button { margin-bottom: 0; } .kiosq-main-layer .kiosq-login-button button , .kiosq-main-layer.kiosq-sticky-layer .kiosq-login-button button { background-color: var(--flexi-brand_color_2); } .kiosq-main-layer.kiosq-button-layer .kiosq-login-button a { display: inherit; } /* Menu header drop down button */ .kiosq-dropdown { float: right; height: 60px; display: flex; flex-direction: column; justify-content: center; } .kiosq-dropdown label { line-height: 0; margin: 0; cursor: pointer; } .kiosq-dropdown label img { width: 67px; display: inline-block; } .kiosq-dropdown label svg { width: 7px; height: auto; fill: #333; margin-bottom: 9px; display: inline-block; } .hasBarrier #in-article, .hasBarrier #desktop-in-article, .hasBarrier #mobile-in-article, .hasBarrier .in-article { display: none; } @media screen and (max-width: 990px) { .responsive .kiosq-main-layer.kiosq-sticky-layer, .progressive .kiosq-main-layer.kiosq-sticky-layer { width: calc(100% - 40px); left: 20px; } } @media screen and (max-width: 699px) { #kiosq-app-paywall-js .kiosq-main-layer{ float:left } .kiosq-main-layer.kiosq-header-menu-layer .kiosq-main-layer-container { display: flex; flex-direction: column; margin: 15px 20px; } .kiosq-main-layer .kiosq-logo.rowLeft { margin-bottom: 10px; display: flex; justify-content: flex-start; } .kiosq-main-layer .kiosq-logo.rowCenter { margin-bottom: 10px; display: flex; justify-content: center; } .kiosq-main-layer .kiosq-logo.rowRight { margin-bottom: 10px; display: flex; justify-content: flex-end; } .kiosq-main-layer .kiosq-logo img { width: 120px !important; } .kiosq-dropdown label { position: absolute; top: 0; right: 95px; line-height: 60px; } .kiosq-main-layer.kiosq-sticky-layer { width: calc(100% - 20px); left: 10px; } .kiosq-main-layer.kiosq-header-menu-layer .kiosq-title { width: 100%; font-size: 22px; line-height: 30px; text-align: center; margin-bottom: 10px; order: 1; } .kiosq-main-layer.kiosq-header-menu-layer .kiosq-subtitle { width: 100%; font-size: 14px; line-height: 22px; text-align: center; order: 3; } .kiosq-main-layer.kiosq-header-menu-layer .kiosq-description { width: 100%; text-align: center; margin-bottom: 10px; order: 2; } .kiosq-main-layer.kiosq-header-menu-layer .kiosq-login-button { width: 100%; text-align: center; display: flex; flex-direction: column; order: 4; } .kiosq-main-layer.kiosq-header-menu-layer .kiosq-login-button button { width: 100%; } } @media screen and (max-width: 460px) { .kiosq-main-layer .kiosq-title { font-size: 22px; line-height: 30px; margin-bottom: 10px; } .kiosq-main-layer .kiosq-login-button { width: 100%; margin-bottom: 5px; } .kiosq-main-layer .kiosq-login-button button { width: 100%; margin-bottom: 0px; } .kiosq-main-layer .kiosq-login-button a { line-height: 33px; } .kiosq-main-layer .kiosq-description { margin-bottom: 10px; } .kiosq-main-layer ul.kiosq-conditions, .kiosq-main-layer .kiosq-conditions ul { margin-bottom: 20px; } .kiosq-main-layer.kiosq-sticky-layer .kiosq-main-layer-container { border-top: 1px solid #333; border-bottom: 1px solid #333; padding-top: 10px; padding-bottom: 110px; margin-left: -20px; margin-right: -20px; padding-left: 30px; padding-right: 30px; text-align: center; } .kiosq-main-layer.kiosq-sticky-layer .kiosq-sticky-logo { display: none; } .kiosq-main-layer.kiosq-sticky-layer .kiosq-login-button button { width: 100%; margin-right: 0px; margin-left: 0px; margin-right: 0px; } .kiosq-main-layer.kiosq-sticky-layer .kiosq-login-button a { color: #000000; text-decoration: underline; display: inherit; } .kiosq-main-layer.kiosq-sticky-layer .kiosq-subtitle { font-size: 12px; line-height: 18px; margin-bottom: 5px; } } /* MY account */ .kiosq-my-account-title { font-weight: 700; font-size: 26px; line-height: 44px; } .kiosq-my-account-col-content { display: flex; gap: 30px; } .kiosq-my-account { margin-top: 20px; } .kiosq-my-account .show { display: block; } .kiosq-my-account .hide { display: none; } .kiosq-my-account-user-infos-widget { display: flex; align-items: center; padding: 20px 10px; background-color: #ededed; gap: 5px; height: 60px; box-sizing: content-box; } .kiosq-my-account-left { min-width: 600px; } .kiosq-my-account-right { min-width: 300px; } .kiosq-my-account-user-infos { margin-left: 15px; } .kiosq-my-account-user-infos-img-content { width: 72px; height: 72px; border-radius: 50%; background-color: var(--flexi-brand_color_2); display: flex; justify-content: center; align-items: flex-end; } .kiosq-my-account-user-infos-img { fill: #ededed; margin-bottom: 5px; } .kiosq-my-account-user-name { font-weight: 700; font-size: 20px; line-height: 23px; margin-bottom: 10px; margin-top: 10px; } .kiosq-my-account-user-info-content { display: flex; align-items: center; } .kiosq-my-account-user-info-text-img-content { width: 24px; height: 24px; border-radius: 50%; background-color: var(--flexi-brand_color_2); display: flex; justify-content: center; align-items: center; } .kiosq-my-account-user-info-text-img { fill: #ededed; } .kiosq-my-account-user-info-text { font-weight: 400; font-size: 16px; line-height: 18px; margin-left: 10px; } .kiosq-my-account-title-widget { margin-top: calc(20px + 0.5rem); font-weight: 700; font-size: 24px; line-height: 30px; } .kiosq-my-account-subscription-widget { display: flex; align-items: flex-start; gap: 20px; border: 1px solid #cccccc; margin-top: 12px; margin-bottom: 20px; } .kiosq-my-account-subscription-widget-mobile { display: none; } .kiosq-my-account-subscription-img { box-sizing: border-box; min-width: 180px; height: 230px; background-size: cover; border-width: 1px 0px 1px 1px; border-style: solid; border-color: #cccccc; } .kiosq-my-account-subscription-datas-block { padding-top: 20px; padding-bottom: 10px; width: 100%; } .kiosq-my-account-subscription-datas { display: flex; } .kiosq-my-account-subscription-content { flex: 1; } .kiosq-my-account-bluebird-in-process-content { display: flex; width: 100%; height: 190px; justify-content: center; align-items: center; } .kiosq-my-account-bluebird-in-process { font-weight: 700; font-size: 16px; line-height: 20px; } .kiosq-my-account-subscription-title { font-weight: 700; font-size: 20px; line-height: 24px; margin-bottom: 15px; } .kiosq-my-account-subscription-data { font-weight: 400; font-size: 16px; line-height: 20px; margin-bottom: 5px; } .kiosq-my-account-subscription-data .kiosq-my-account-subscription-subtitle { font-weight: 700; } .kiosq-my-account-subscription-data .custom_h1 { display: none; } .kiosq-my-account-manage-button-block { display: flex; justify-content: center; } .kiosq-my-account-manage-button-anchor { text-decoration: none !important; } .kiosq-my-account-manage-button-content { display: flex; flex-direction: column; width: 188px; margin-top: 15px; } .kiosq-my-account-manage-button-content.no-subscriptions { width: 280px; } .kiosq-my-account-manage-button { display: flex; justify-content: center; align-items: center; padding: 2px 20px; width: 188px; height: 40px; background-color: var(--flexi-brand_color_2); border: 1px solid var(--flexi-brand_color_2); border-radius: 2px; } .kiosq-my-account-manage-button.no-subscriptions { width: 280px; } .kiosq-my-account-manage-button-text { font-weight: 700; font-size: 12px; line-height: 14px; text-transform: uppercase; color: #ffffff; } .kiosq-my-account-manage-button-sublink-content { font-weight: 400; font-size: 12px; line-height: 14px; text-align: center; color: #333333; margin-top: 5px; } .kiosq-my-account-manage-button-sublink { text-decoration-line: underline !important; color: #333333 !important; } #kiosq-link-account-input { height: 30px; padding-left: 4px; } #kiosq-link-account-button { display: flex; justify-content: center; align-items: center; padding: 2px 20px; width: 188px; height: 35px; background-color: var(--flexi-brand_color_2); border: 1px solid var(--flexi-brand_color_2); border-radius: 2px; margin-left: 20px; color: white; } #kiosq-link-account-button.processing:hover { filter: brightness(85%); cursor: wait !important; } .kiosq-my-account .input-mapping-error { border: 1px solid red; } .kiosq-my-account .input-mapping-success { border: 1px solid green; } .kiosq-my-account .message-div-error { color: red; font-size: 13px; } .kiosq-my-account .message-div-success { color: green; font-size: 13px; } #kiosq-link-account-button:hover { cursor: pointer; } .kiosq-link-account-div { display: flex; flex-direction: row; justify-content: start; margin: 10px 0; align-items: center; } .linking-account-description-text { margin-top: 15px; line-height: 20px; } .kiosq-my-account-subscription-status-content { position: relative; margin-right: 20px; margin-left: auto; display: flex; flex-direction: column; } @media screen and (min-width: 699px) { .kiosq-my-account-cancel-sub { position: absolute; bottom: 0; } .kiosq-main-layer .kiosq-logo { width: 250px; height: 30px; } } @media screen and (max-width: 699px) { .kiosq-my-account-cancel-sub { margin-top: 15px; } .kiosq-main-layer .kiosq-logo { height: 30px; } } .kiosq-my-account-cancel-sub { text-decoration: underline; } .kiosq-my-account-cancel-sub a, .kiosq-my-account-cancel-sub a:visited, .kiosq-my-account-cancel-sub a:hover { color: black !important; } .kiosq-my-account-subscription-status-flag-content { display: flex; justify-content: center; align-items: center; padding: 0px 10px; width: 77px; height: 20px; border-radius: 2px; margin-bottom: 6px; } .kiosq-my-account-subscription-status-flag-content.active { background-color: #0fa958; } .kiosq-my-account-subscription-status-flag-content.trial { background-color: #0f7ca9; } .kiosq-my-account-subscription-status-flag-content.future { background-color: #6c757d; } .kiosq-my-account-subscription-status-flag-content.non-renewing { background-color: #ff9800; } .kiosq-my-account-subscription-status-flag-content.paused { background-color: #9e9e9e; } .kiosq-my-account-subscription-status-flag-content.cancelled { background-color: #a90f0f; } .kiosq-my-account-subscription-status-flag-content.expired { background-color: #a90f0f; } .kiosq-my-account-subscription-status-flag-content.unknown { background-color: #cccccc; } .kiosq-my-account-subscription-status-flag-text { font-weight: 700; font-size: 14px; line-height: 20px; color: #ffffff; } .kiosq-my-account-subscription-status-title { font-weight: 700; font-size: 12px; line-height: 15px; margin-bottom: 3px; text-align: center; } .kiosq-my-account-subscription-status-data { font-size: 12px; line-height: 15px; margin-bottom: 3px; text-align: center; } .kiosq-my-account-stay-in-touch-widget { min-height: 400px; } .kiosq-my-account-stay-in-touch-title-content { display: flex; justify-content: flex-start; align-items: center; gap: 10px; width: 280px; height: 56px; background: #ffffff; border-width: 1px 0px; border-style: solid; border-color: #cccccc; padding: 0px 10px; } .kiosq-my-account-stay-in-touch-title-img-content { width: 38px; height: 38px; border-radius: 50%; background-color: var(--flexi-brand_color_2); display: flex; justify-content: center; align-items: center; } .kiosq-my-account-stay-in-touch-title-img { fill: #ededed; margin-right: 2px; } .kiosq-my-account-stay-in-touch-title { font-weight: 700; font-size: 18px; line-height: 21px; } .kiosq-my-account-stay-in-touch-subtitle { font-weight: 700; font-size: 14px; line-height: 21px; margin: 14px 0; } .kiosq-my-account-stay-in-touch-content { padding: 20px 15px; height: 102px; } .kiosq-my-account-stay-in-touch { font-weight: 400; font-size: 14px; line-height: 16px; margin-bottom: 15px; } .kiosq-my-account-stay-in-touch-link { /* text-decoration-line: underline; */ color: var(--flexi-brand_color_2); } .kiosq-my-account-stay-in-touch-social-content { display: flex; justify-content: flex-start; align-items: center; gap: 15px; } .kiosq-my-account-stay-in-touch-social-link { display: block; } .kiosq-my-account-proposal-widget { margin-top: 15px; display: block; } .kiosq-my-account-proposal-widget-mobile { margin-top: 15px; display: none; } .kiosq-my-account-proposal-slider { min-width: 600px; position: relative; min-height: 390px; overflow: hidden; } .kiosq-my-account-proposal-slide { width: 100%; position: absolute; transition: all 0.5s; gap: 30px; display: flex; } .kiosq-my-account-proposal-slide-mobile { width: 100%; position: absolute; transition: all 0.5s; gap: 30px; display: flex; } .kiosq-my-account-proposal-slide-widget { width: 180px; } .kiosq-my-account-proposal-slide-widget-img { width: 180px; height: 230px; background-size: cover; } .kiosq-my-account-proposal-slide-widget-title { font-weight: 700; font-size: 18px; line-height: 24px; margin-top: 10px; } .kiosq-my-account-proposal-slide-widget-infos-content { display: flex; justify-content: flex-start; margin-top: 11.5px; margin-bottom: 10px; } .kiosq-my-account-proposal-slide-widget-infos-img-content { display: flex; justify-content: center; align-items: center; width: 15px; height: 15px; border-radius: 50%; background-color: #0fa958; margin-right: 5px; } .kiosq-my-account-proposal-slide-widget-infos-img { fill: #ededed; } .kiosq-my-account-proposal-slide-widget-infos { font-weight: 400; font-size: 12px; line-height: 15px; } .kiosq-my-account-proposal-slide-widget-link { font-weight: 700; font-size: 14px; line-height: 16px; text-decoration-line: underline; color: var(--flexi-brand_color_2); } .kiosq-my-account-proposal-btn { position: absolute; width: 40px; height: 40px; padding: 10px; border: none; border-radius: 50%; z-index: 10px; cursor: pointer; background-color: #fff; font-size: 18px; } .kiosq-my-account-proposal-btn:active { transform: scale(1.1); } .kiosq-my-account-proposal-slide-btn-prev { top: 45%; left: 2%; } .kiosq-my-account-proposal-slide-btn-next { top: 45%; right: 2%; } .kiosq-my-account-proposal-slide-btn-prev-mobile { top: 45%; left: 2%; } .kiosq-my-account-proposal-slide-btn-next-mobile { top: 45%; right: 2%; } .kiosq-my-account-no-subscriptions-text { margin-top: 20px; margin-bottom: 5px; font-weight: 400; font-size: 20px; line-height: 25px; } .kiosq-my-account-current-site-header { margin-top: 20px; font-weight: 700; font-size: 20px; display: block; } .kiosq-my-account-current-site-header-mobile { display: none; } .kiosq-my-account-subscription-history-button-content { display: flex; height: 100%; align-items: flex-end; } .kiosq-my-account-subscription-history-button { display: flex; justify-content: center; background-color: #cccccc; align-items: center; padding: 0px 10px; width: 77px; height: 20px; border-radius: 2px; } .kiosq-my-account-subscription-history-button:hover { cursor: pointer; } .kiosq-my-account-subscription-history-button-mobile { display: flex; justify-content: center; background-color: #cccccc; align-items: center; padding: 0px 10px; width: 77px; height: 20px; border-radius: 2px; margin-top: 10px; } .kiosq-my-account-subscription-history-button-mobile:hover { cursor: pointer; } .kiosq-my-account-subscription-history-button-text { font-weight: 700; font-size: 14px; line-height: 20px; margin-right: 5px; } .kiosq-my-account-subscription-history-icon-content { display: flex; align-items: center; } .kiosq-my-account-subscription-history-content { max-height: 0; transition: max-height 0.25s ease-out; overflow: hidden; } .kiosq-my-account-subscription-history-content-mobile { max-height: 0; transition: max-height 0.25s ease-out; overflow: hidden; } .kiosq-my-account-subscription-history-button-icon-down { display: block; } .kiosq-my-account-subscription-history-button-icon-up { display: none; } .kiosq-complete-setup-title { font-weight: 700; margin: 15px 0px; } .kiosq-complete-setup-p { margin: 15px 0px; } .kiosq-complete-setup-button { display: flex; justify-content: center; align-items: center; height: 44px; width: 360px; background-color: var(--flexi-brand_color_2); margin: 30px auto; } .kiosq-complete-setup-button-text { font-weight: 700; color: #fff; } .kiosq-complete-setup-button:hover { cursor: pointer; } .kiosq-restricted-access-title { font-weight: 700; margin: 15px 0px; } .kiosq-restricted-access-p { margin: 15px 0px; } .kiosq-restricted-access-button { display: flex; justify-content: center; align-items: center; height: 44px; width: 360px; background-color: var(--flexi-brand_color_2); margin: 30px auto; } .kiosq-restricted-access-button-text { font-weight: 700; color: #fff; } .kiosq-restricted-access-button:hover { cursor: pointer; } @media screen and (max-width: 699px) { .flexi-page.responsive .widget-area { padding: 0px !important; } .kiosq-my-account-left { min-width: 375px; } .kiosq-my-account-right { min-width: 375px; } .kiosq-my-account-col-content { flex-direction: column; } .kiosq-my-account-title { font-size: 22px; padding-left: 15px; } .kiosq-my-account-user-infos-widget { min-width: 355px; } .kiosq-my-account-user-infos-img-content { width: 50px; height: 50px; } .kiosq-my-account-user-infos-img { width: 50px; height: 50px; margin-bottom: 2px; } .kiosq-my-account-user-info-text { font-size: 14px; line-height: 16px; } .kiosq-my-account-title-widget { font-size: 20px; line-height: 20px; padding-left: 15px; } .kiosq-my-account-subscription-widget { display: none; } .kiosq-my-account-subscription-widget-mobile { display: block; padding: 15px; border-top: 1px solid #cccccc; margin-top: 12px; } .kiosq-my-account-no-subscriptions-widget .kiosq-my-account-subscription-widget-mobile { padding: 15px 0px 15px 0px; } .kiosq-my-account-subscription-title-content-mobile { display: flex; margin-bottom: 20px; } .kiosq-my-account-subscription-img-mobile { box-sizing: border-box; min-width: 117px; height: 150px; background-size: cover; border-width: 1px 0px 1px 1px; border-style: solid; border-color: #cccccc; } .kiosq-my-account-subscription-datas-block-mobile { margin-bottom: 10px; display: flex; align-items: flex-start; gap: 15px; } .kiosq-my-account-subscription-title-mobile { font-weight: 700; font-size: 18px; line-height: 21px; } .kiosq-my-account-subscription-content-mobile { flex: 1; } .kiosq-my-account-bluebird-in-process-content { height: 150px; } .kiosq-my-account-subscription-data-mobile { font-weight: 400; font-size: 14px; line-height: 20px; margin-bottom: 5px; } .kiosq-my-account-subscription-data-mobile .kiosq-my-account-subscription-subtitle-mobile { font-weight: 700; } .kiosq-my-account-subscription-data-mobile .custom_h1 { display: none; } .kiosq-my-account-manage-button-content-mobile { display: flex; flex-direction: column; margin-top: 20px; align-items: center; width: 100%; } .kiosq-my-account-manage-button-mobile { display: flex; justify-content: center; align-items: center; padding: 2px 20px; height: 40px; background-color: var(--flexi-brand_color_2); border: 1px solid var(--flexi-brand_color_2); border-radius: 2px; width: 100%; } .kiosq-my-account-manage-button-text-mobile { font-weight: 700; font-size: 12px; line-height: 14px; text-transform: uppercase; color: #ffffff; } .kiosq-my-account-manage-button-sublink-content-mobile { font-weight: 400; font-size: 12px; line-height: 14px; text-align: center; color: #333333; margin-top: 5px; } .kiosq-my-account-manage-button-sublink-mobile { text-decoration-line: underline !important; color: #333333 !important; } .kiosq-my-account-subscription-status-flag-content-mobile { display: flex; justify-content: center; align-items: center; padding: 0px 10px; width: 63px; height: 21px; border-radius: 2px; margin-right: 0px; margin-left: auto; } .kiosq-my-account-subscription-status-flag-content-mobile.active { background-color: #0fa958; } .kiosq-my-account-subscription-status-flag-content-mobile.trial { background-color: #0f7ca9; } .kiosq-my-account-subscription-status-flag-content-mobile.future { background-color: #6c757d; } .kiosq-my-account-subscription-status-flag-content-mobile.non-renewing { background-color: #ff9800; } .kiosq-my-account-subscription-status-flag-content-mobile.paused { background-color: #9e9e9e; } .kiosq-my-account-subscription-status-flag-content-mobile.cancelled { background-color: #a90f0f; } .kiosq-my-account-subscription-status-flag-content-mobile.expired { background-color: #a90f0f; } .kiosq-my-account-subscription-status-flag-content-mobile.unknown { background-color: #cccccc; } .kiosq-my-account-subscription-status-flag-text-mobile { font-weight: 700; font-size: 14px; line-height: 16px; color: #ffffff; } .kiosq-my-account-block-link-in-widget-mobile { display: block; font-weight: 700; font-size: 14px; line-height: 16px; text-decoration-line: underline; color: var(--flexi-brand_color_2); } .kiosq-my-account-block-link-img-mobile { margin-left: 7px; fill: var(--flexi-brand_color_2); width: 15px; height: 15px; } .kiosq-my-account-stay-in-touch-title-content { width: 355px; border-width: 0px 0px 1px 0px; } .kiosq-my-account-proposal-widget { display: none; } .kiosq-my-account-proposal-widget-mobile { display: block; padding-left: 15px; padding-right: 15px; } .kiosq-my-account-proposal-slider { min-width: 345px; min-height: 360px; } .kiosq-my-account-proposal-slide-widget { width: 155px; } .kiosq-my-account-proposal-slide-widget-img { width: 155px; height: 198.05px; } .kiosq-my-account-proposal-slide-widget-title { line-height: 22px; } .kiosq-my-account-no-subscriptions-widget { padding-left: 15px; padding-right: 15px; } .kiosq-my-account-no-subscriptions-text { font-size: 14px; } .kiosq-my-account-current-site-header { display: none; } .kiosq-my-account-current-site-header-mobile { margin-top: 20px; font-weight: 700; font-size: 14px; display: block; padding-left: 15px; } .kiosq-my-account-no-subscriptions-widget .kiosq-my-account-current-site-header-mobile { padding-left: 0px; } .kiosq-my-account-manage-button-content.no-subscriptions { width: 100%; } .kiosq-my-account-manage-button.no-subscriptions { width: 100%; } .kiosq-my-account-manage-button-anchor { width: 100%; } .paywall-locker:not(.paywall-locker:not(.paywall-locker ~ .paywall-locker)) { display: none; } } .dismiss-barrier { position: absolute; right: 27px; width: 25px; } /*# sourceMappingURL=bundle.paywall.css.map*//* =========================== CHARGEBEE CHECKOUT WRAPPER =========================== */ /* Overlay */ .chargebee-checkout-overlay { position: fixed; inset: 0; /* top:0; right:0; bottom:0; left:0 */ display: flex; justify-content: center; align-items: center; background: rgba(0, 0, 0, 0.6); backdrop-filter: blur(6px); z-index: 100000; opacity: 0; animation: chargebee-checkout-fadeIn 0.3s ease forwards; } @keyframes chargebee-checkout-fadeIn { to { opacity: 1; } } /* Modal Box */ .chargebee-checkout-box { height: 90%; max-height: 573px; display: flex; flex-direction: column; background: #fff; border-radius: 3px; max-width: 400px; width: 90%; position: relative; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3); transform: scale(0.9) translateY(20px); animation: chargebee-checkout-slideIn 0.4s cubic-bezier(0.34, 1.56, 0.64, 1) forwards; font-family: 'Open Sans', sans-serif; font-weight: normal; &.result { height: auto; } } @keyframes chargebee-checkout-slideIn { to { transform: scale(1) translateY(0); } } /* =========================== CHARGEBEE CHECKOUT EMAIL MODAL =========================== */ .chargebee-checkout-email-icon { max-width: 80%; animation: chargebee-checkout-bounce 0.6s ease; width: 60%; max-height: 70px; } @keyframes chargebee-checkout-bounce { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.1); } } .chargebee-checkout-email-title { font-size: 14px; color: darkred; background: white; text-align: center; color: var(--brand-color-1); font-family: 'Open Sans', sans-serif; font-weight: normal; } .chargebee-checkout-email-subtitle { color: #666; text-align: center; font-size: 15px; line-height: 1.5; } /* OTP Modal specific styles */ .chargebee-checkout-otp-subtitle { color: #666; text-align: center; margin-top: 12px; margin-bottom: 10px; font-size: 14px; line-height: 1.5; } .chargebee-checkout-otp-input { text-align: center; font-size: 24px; letter-spacing: 8px; font-weight: 600; } .chargebee-checkout-otp-resend { display: flex; justify-content: center; margin-bottom: 6px; } .chargebee-checkout-otp-resend-btn { background: none; border: none; color: var(--brand-color-1, #007bff); font-size: 14px; cursor: pointer; text-decoration: underline; padding: 0; } .chargebee-checkout-otp-resend-btn:hover { opacity: 0.8; } .chargebee-checkout-otp-resend-btn:disabled { opacity: 0.5; cursor: not-allowed; } .chargebee-checkout-otp-resend-timer { color: #999; font-size: 14px; } .chargebee-checkout-email-message.success { color: #28a745; } /* End OTP Modal specific styles */ .chargebee-checkout-email-input-wrapper { width: 100%; } .chargebee-checkout-email-input { width: 100%; padding: 16px 16px 16px 16px; border: 1px solid darkslategrey !important; border-radius: 2px; font-size: 16px; transition: all 0.3s ease; outline: none; font-family: inherit; background-repeat: no-repeat; background-position: 16px center; background-size: 20px 20px; height: 50px; } .chargebee-checkout-email-input::placeholder { color: #1B1B1B; font-size: 14px; } .chargebee-checkout-email-message { color: #e63946; font-size: 0.9rem; margin-top: 0.5rem; text-align: center; min-height: 1.2em; margin-bottom: 4px; } .chargebee-checkout-email-cta-button { width: 234px; height: 40px; line-height: 22px; padding: 0px; display: block; border: none; border-radius: 1px; cursor: pointer; transition: all 0.3s ease; background: var(--flexi-brand_color_1, white); font-family: inherit; font-size: 16px; font-weight: 700; letter-spacing: 0.5px; text-transform: capitalize; color: white; } .chargebee-checkout-email-cta-button:hover { transform: translateY(-2px); box-shadow: 2px 0px 5px #00000099; } .chargebee-checkout-email-cta-button:active { transform: translateY(0); } /* =========================== CHARGEBEE CHECKOUT LOGIN MODAL =========================== */ .chargebee-checkout-login-modal-content { display: flex; flex-direction: column; align-items: center; text-align: center; position: relative; padding: 25px 40px 20px 40px; align-items: center; } .chargebee-checkout-success-content { padding: 25px 40px 20px 40px; } .chargebee-checkout-login-title { font-size: 24px; font-weight: 700; margin-bottom: 8px; text-align: center; } .chargebee-checkout-login-subtitle { font-size: 15px; color: #666; text-align: center; margin-bottom: 16px; } .chargebee-checkout-login-payment-details { background-color: #f9fafb; border-radius: 8px; padding: 16px; margin-bottom: 24px; width: 100%; } .chargebee-checkout-login-payment-details div { margin-bottom: 4px; font-size: 14px; color: #333; } .chargebee-checkout-login-cta-button { width: 100%; line-height: 3em; border: none; border-radius: 1px; font-size: 16px; font-weight: 600; cursor: pointer; background: linear-gradient(135deg, var(--flexi-brand_color_1, #006edc), color-mix(in srgb, var(--flexi-brand_color_1, #006edc) 70%, white)); color: white; box-shadow: 0 4px 15px rgba(102, 126, 234, 0.4); transition: all 0.3s ease; } .chargebee-checkout-login-notice { background-color: #eff6ff; border: 1px solid #bfdbfe; border-radius: 8px; padding: 16px; margin-bottom: 24px; display: flex; align-items: flex-start; gap: 12px; } .chargebee-checkout-login-info-icon { width: 20px; height: 20px; color: #3b82f6; margin-top: 2px; flex-shrink: 0; } .chargebee-checkout-login-notice-title { font-weight: 600; color: #1e40af; margin-bottom: 4px; font-size: 14px; text-align: left; } .chargebee-checkout-login-notice-text { color: #1d4ed8; font-size: 14px; line-height: 1.4; text-align: left; } .chargebee-checkout-login-success-icon { width: 64px; height: 64px; background-color: #dcfce7; border-radius: 50%; margin: 0 auto 16px; display: flex; align-items: center; justify-content: center; animation: post-purchase-login-v2-pulse 2s infinite; } .chargebee-checkout-login-success-icon svg { width: 32px; height: 32px; color: #16a34a; } .post-purchase-login-payment-details { background-color: #eff6ff; border-radius: 8px; padding: 16px; margin-bottom: 24px; } .chargebee-checkout-login-detail-row { display: flex; justify-content: space-between; margin-bottom: 12px; font-size: 14px; } .chargebee-checkout-login-detail-row:last-child { margin-bottom: 0; } .chargebee-checkout-login-detail-label { color: #6b7280; } .chargebee-checkout-login-detail-value { color: #111827; font-weight: 500; } .chargebee-checkout-login-cta-button:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(102, 126, 234, 0.5); } .chargebee-checkout-login-cta-button:active { transform: translateY(0); } .chargebee-checkout-close-btn { position: absolute; top: -12px; right: -12px; background: black; border: none; width: 24px; height: 24px; border-radius: 50%; cursor: pointer; display: flex; align-items: center; justify-content: center; color: white; transition: all 0.3s ease; } /* =========================== CHARGEBEE CHECKOUT SUCCESS MODAL =========================== */ .chargebee-checkout-checkmark { color: white; font-size: 35px; font-weight: bold; } .chargebee-checkout-success-icon { display: flex; align-items: center; justify-content: center; margin-bottom: 24px; } .chargebee-checkout-checkmark { font-size: 48px; color: #667eea; } .chargebee-checkout-success-title { font-size: 24px; font-weight: 700; margin-bottom: 12px; text-align: center; } .chargebee-checkout-success-message { text-align: center; color: #666; margin-bottom: 24px; } .chargebee-checkout-success-button { width: 100%; padding: 8px; line-height: 2em; border-radius: 3px; font-weight: 600; font-size: 16px; border: none; background: linear-gradient(135deg, var(--flexi-brand_color_1, #006edc), color-mix(in srgb, var(--flexi-brand_color_1, #006edc) 70%, white)); color: white; cursor: pointer; transition: all 0.3s ease; } .chargebee-checkout-success-button:hover { transform: translateY(-2px); } .chargebee-checkout-feature-list { background: rgba(16, 185, 129, 0.1); border: 1px solid rgba(16, 185, 129, 0.2); border-radius: 16px; padding: 20px; margin: 25px 0; text-align: left; } .chargebee-checkout-feature-item { display: flex; align-items: center; margin-bottom: 12px; color: #374151; font-size: 14px; } .chargebee-checkout-feature-item:last-child { margin-bottom: 0; } .chargebee-checkout-feature-item::before { content: '\2713'; color: #10b981; font-weight: bold; margin-right: 12px; font-size: 16px; } .chargebee-checkout-feature-item-autologin { font-weight: 500; } /* =========================== MEDIA QUERIES =========================== */ @media (max-width: 480px) { .email-modal-title { font-size: 24px; } .post-purchase-success-title { font-size: 20px; } } .chargebee-checkout-email-header { min-height: 90px; display: flex; flex-direction: column; justify-content: space-around; align-items: center; padding: 10px 0; box-sizing: content-box; } .chargebee-checkout-email-content { background: #f4f5f9; padding: 20px 25px 40px 25px; flex-grow: 1; display: flex; flex-direction: column; gap: 20px; align-items: center; & footer { align-items: center; display: flex; flex-direction: column; } } .chargebee-checkout-privacy { margin-top: 20px; margin-bottom: 15px; line-height: 23px; font-size: 14px; & a { font-weight: 700; line-height: 23px; font-size: 14px; } } .chargebee-checkout-consents { font-size: 13px; display: flex; flex-direction: column; flex-grow: 1; } .chargebee-checkout-checkbox input[type="checkbox"] { margin-right: 10px; flex-shrink: 0; width: 24px; height: 24px; margin-top: 2px; cursor: pointer; } .chargebee-checkout-checkbox { display: flex; align-items: flex-start; margin-bottom: 10px; cursor: pointer; line-height: 1.4; align-items: center; } .chargebee-checkout-checkbox span { flex: 1; font-size: 14px; } .chargebee-checkout-error-modal-content { text-align: center; padding: 30px 20px; } .chargebee-checkout-error-icon { margin: 10px auto 20px; color: #ef4444; /* red-500 */ } .chargebee-checkout-error-title { font-size: 20px; font-weight: bold; margin-bottom: 10px; } .chargebee-checkout-error-message { font-size: 14px; margin-bottom: 25px; color: #555; } .chargebee-checkout-error-close-btn { background: #ef4444; color: white; border: none; padding: 12px; width: 100%; font-size: 15px; border-radius: 8px; cursor: pointer; line-height: 20px; width: 300px; } .chargebee-checkout-select-wrapper { margin-top: 12px; } .chargebee-checkout-select { width: 100%; height: 50px; padding: 0 12px; border: 1px solid #ccc; border-radius: 4px; font-size: 14px; background: #fff; } .chargebee-checkout-processing-modal-content { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 3rem 2rem; gap: 1rem; text-align: center; } /* Title */ .chargebee-checkout-processing-title { font-size: 1.25rem; font-weight: 600; color: #111827; /* gray-900 */ letter-spacing: -0.01em; margin: 0; } /* Icon */ .chargebee-checkout-processing-icon { display: inline-block; margin-right: 5px; width: 27px; height: 27px; color: #4F46E5; opacity: 0.9; } /* processing */ .chargebee-checkout-processing-loader { width: 48px; height: 48px; border: 4px solid rgba(0,0,0,.1); border-left-color: #4F46E5; border-radius: 50%; animation: spin 1s linear infinite; } @keyframes spin { to { transform: rotate(360deg); } } /* Message */ .chargebee-checkout-processing-message { margin: 0; font-size: .95rem; font-weight: 500; color: #4B5563; /* gray-600 */ animation: pulse 2s ease-in-out infinite; } @keyframes pulse { 0%,100% { opacity: 1; } 50% { opacity: .6; } } /* =========================== ACTIVE SUBSCRIPTION MODAL =========================== */ .chargebee-checkout-active-sub-content { display: flex; flex-direction: column; align-items: center; padding: 32px 24px 24px; gap: 16px; text-align: center; } .chargebee-checkout-active-sub-icon { width: 64px; height: 64px; background-color: #dbeafe; border-radius: 50%; display: flex; align-items: center; justify-content: center; flex-shrink: 0; } .chargebee-checkout-active-sub-icon svg { width: 32px; height: 32px; color: #2563eb; } .chargebee-checkout-active-sub-title { font-size: 20px; font-weight: 700; color: #111827; margin: 0; } .chargebee-checkout-active-sub-description { font-size: 14px; color: #4b5563; line-height: 1.6; margin: 0; } .chargebee-checkout-active-sub-primary-cta { width: 100%; line-height: 3em; border: none; border-radius: 4px; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: #fff; font-size: 16px; font-weight: 600; cursor: pointer; transition: transform 0.2s ease, box-shadow 0.2s ease; } .chargebee-checkout-active-sub-primary-cta:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(102, 126, 234, 0.5); } .chargebee-checkout-active-sub-secondary-cta { background: none; border: none; color: #6b7280; font-size: 13px; cursor: pointer; text-decoration: underline; padding: 0; } .chargebee-checkout-active-sub-secondary-cta:hover { color: #374151; } .chargebee-checkout-active-sub-continue { text-align: center; margin-top: 12px; } .chargebee-checkout-active-sub-continue a { font-weight: 700; font-size: 14px; line-height: 23px; color: #101f9e; cursor: pointer; text-decoration: none; } .chargebee-checkout-active-sub-continue a:hover { text-decoration: underline; } /*# sourceMappingURL=chargebee-checkout.css.map*/ /*# sourceMappingURL=chargebee-checkout.css.map*/}@layer legacy {.kiosq-my-account-stay-in-touch-social-content { display: none !important; }} @layer legacy { #auth-in-nav-header { font-size: 14px; font-weight: inherit; width:80px; } #auth-in-nav-header .auth-in-nav-header-menu ul { padding-left: 0px; } #auth-in-nav-header-sign-out svg{ fill: #fff; } @media (min-width: 700px) { #auth-in-nav-header { justify-content: flex-start !important; } } @media (max-width: 699px) { .burgerbar #auth-in-nav-header { position: absolute; right: 32px; justify-content: center !important; } .burgerbar .slice-container.locale-selector-slice { right: 82px; } .burgerbar #auth-in-nav-header #auth-in-nav-header-text { display: none; } } #auth-in-nav-header-menu{ color: #fff !important; } .kiosq-my-account-stay-in-touch-social-content { display: none !important;} } window.FUTR = window.FUTR || {}; window.FUTR.Connect = {"callbackUrl":"\/auth_callback","SIGN_OUT_TEXT":"Sign out","type":"addEvent","target":"auth-in-nav-header","auth0LockConfig":{"logo_url":"https:\/\/cdn.mos.cms.futurecdn.net\/flexiimages\/ctdtrpdenc1761054384.svgz","logo_email":"https:\/\/cdn.mos.cms.futurecdn.net\/flexiimages\/tn8m46b2lp1747218165.png","color_primary":"#d8383b","extra_css":".auth0-lock-header-welcome {margin-top: 15px; margin-bottom: -15px;} .auth0-lock.auth0-lock .auth0-lock-header-bg {background: #fff !important} .auth0-lock.auth0-lock .auth0-lock-header-logo {max-width:45%} @media (max-width: 1200px) {.auth0-lock.auth0-lock .auth0-lock-header-logo{max-width: 100%;}}","sign_up_newsletter_text":"Please sign me up to Tom's hardware newsletter","site_name":"Tom's hardware","contact_other_brand_text":"Contact me with news and offers from Tom's hardware and other Future brands","newsletter_code":"XTH-X","label":"tomshardware_en-gb"}}; window.FUTR.Connect.auth0LockConfig.allowedConnections = "google-oauth2,Username-Password-Authentication,Tomshardware-forum"; window.FUTR.Connect.callbackUrl = window.location.origin + window.FUTR.Connect.callbackUrl; window.FUTR.Connect.auth0AppClientId = "JRKr0EFukuD1sJvmCPwYGLYQNEyOlhDB"; window.FUTR.Connect.Auth = window.FUTR.Connect.Auth || {}; window.FUTR.Connect.Auth.parseJwt = window.FUTR.Connect.Auth.parseJwt || ((token)=>{ if (typeof token === 'undefined' || !token) { return; } var base64Url = token.split('.')[1] || ''; var base64 = base64Url.replace(/-/g, '+').replace(/_/g, '/'); var jsonPayload = decodeURIComponent(window.atob(base64).split('').map(function(c) { return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2); }).join('')); return JSON.parse(jsonPayload); }); window.FUTR.Connect.Auth.getCookieByName = (name)=> { const value = `; ${document.cookie}`; const parts = value.split(`; ${name}=`); if (parts.length === 2) return parts.pop().split(';').shift(); } window.FUTR.Kiosq.User = window.FUTR.Connect.Auth.parseJwt(window.FUTR.Connect.Auth.getCookieByName("kiosq_user")); window.FUTR.Connect.isGranted = false; if(typeof window.FUTR.Kiosq.User !== 'undefined' && typeof window.FUTR.Kiosq.User.user_grant_status !== 'undefined' ){ const matchString = '^granted'; const regexp = new RegExp(matchString); if(regexp.test(window.FUTR.Kiosq.User.user_grant_status)){ window.FUTR.Connect.isGranted = true; } } window.addEventListener("DOMContentLoaded", (event) => { var connectBundle = document.createElement('script'); // window.FUTR.Connect.auth0AppClientId must be set before bundle.connect.js be added. connectBundle.src = "https://vanilla.futurecdn.net/tomshardware/1580304/media/shared/js/bundle.connect.js"; document.head.appendChild(connectBundle); }); window.FUTR = window.FUTR || {}; window.FUTR.Kiosq = window.FUTR.Kiosq || {}; window.FUTR.Kiosq.Campaign = window.FUTR.Kiosq.Campaign || {}; window.FUTR.Kiosq.Campaign.Context = window.FUTR.Kiosq.Campaign.Context || {}; window.FUTR.Kiosq.Campaign.Context = [{"name":"Device","script":"() => {\n const a = navigator.userAgent || navigator.vendor || window.opera;\n return \/(android|bb\\d+|meego).+mobile|avantgo|bada\\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows ce|xda|xiino\/i.test(\n a\n ) ||\n \/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\\-(n|u)|c55\\\/|capi|ccwa|cdm\\-|cell|chtm|cldc|cmd\\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\\-s|devi|dica|dmob|do(c|p)o|ds(12|\\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\\-|_)|g1 u|g560|gene|gf\\-5|g\\-mo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd\\-(m|p|t)|hei\\-|hi(pt|ta)|hp( i|ip)|hs\\-c|ht(c(\\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\\-(20|go|ma)|i230|iac( |\\-|\\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\\/)|klon|kpt |kwc\\-|kyo(c|k)|le(no|xi)|lg( g|\\\/(k|l|u)|50|54|\\-[a-w])|libw|lynx|m1\\-w|m3ga|m50\\\/|ma(te|ui|xo)|mc(01|21|ca)|m\\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\\-2|po(ck|rt|se)|prox|psio|pt\\-g|qa\\-a|qc(07|12|21|32|60|\\-[2-7]|i\\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\\-|oo|p\\-)|sdk\\\/|se(c(\\-|0|1)|47|mc|nd|ri)|sgh\\-|shar|sie(\\-|m)|sk\\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\\-|v\\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\\-|tdg\\-|tel(i|m)|tim\\-|t\\-mo|to(pl|sh)|ts(70|m\\-|m3|m5)|tx\\-9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\\-|your|zeto|zte\\-\/i.test(\n a.substr(0, 4)\n )\n ? \"Mobile\"\n : \"Desktop\";\n};"},{"name":"LoginStatus","script":"() => {\n if( FUTR?.Kiosq?.User?.user_grant_status?.match(\/^granted\/)) return \"granted\";\n if( FUTR?.Kiosq?.User?.is_authenticated ) return \"connected\";\n \/\/if( typeof FUTR.Kiosq.User === 'undefined' ) return \"non-connected\";\n return \"non_connected\";\n};"},{"name":"FreeRemainingArticle","script":"() => {\n if (localStorage.getItem(\"kiosq_article_url_ack\") !== null) {\n const articleSeenUrls = localStorage.getItem(\"kiosq_article_url_ack\");\n const decodedArticleSeenUrls = JSON.parse(window.atob(articleSeenUrls));\n const limitFreeArticles = window.FUTR.Kiosq?.defaultSiteConfig?.limitOfFreeArticle || 0;\n const numberOfFreeArticleRemaining = limitFreeArticles-decodedArticleSeenUrls.length;\n return numberOfFreeArticleRemaining >= 0 ? numberOfFreeArticleRemaining : 0;\n }\n\n return 0;\n }"},{"name":"NumberOfPagesVisited","script":"() => {\n const localHistory = JSON.parse(atob(localStorage.getItem('connect_articles_history') || localStorage.getItem('kiosq_article_url_ack') || btoa('[]')));\n return localHistory.length;\n }"},{"name":"ArticleControlTags","script":"() => {return window.ffte?.properties?.articleControlTag || []}"},{"name":"ArticleTagHandle","script":"() => {return window.ffte?.properties?.articleTagHandle || []}"},{"name":"BlueConicSegments","script":"() => {return typeof(blueConicClient) !== \"undefined\" && blueConicClient?.getSegments() ? blueConicClient?.getSegments() : [];}"},{"name":"Referrer","script":"() => {return document.referrer;}"},{"name":"ArticleTemplate","script":"() => {return window.ffte?.properties?.articleTemplate || \"\"}"},{"name":"ArticleType","script":"() => {return window.ffte?.properties?.articleType || \"\"}"},{"name":"ArticleId","script":"() => {return window.ffte?.properties?.id || \"\"}"},{"name":"UserGrantStatus","script":"() => {return window.FUTR?.Kiosq?.User?.user_grant_status || \"\"}"},{"name":"TimeOfTheDay","script":"() => new Date().getHours() < 12 ? \"AM\" : \"PM\";"},{"name":"ArticleCategory","script":"() => {return window.ffte?.properties?.articleCategoryHandle || []}"},{"name":"IsRegwallBarrier","script":"() => {return window?.FUTR?.Kiosq?.wallType === \"regwallAuthentication\" || (typeof(window?.FUTR?.Kiosq?.User) === \"undefined\" && window?.FUTR?.Kiosq?.wallType === \"regwallAuthPaywall\")}"},{"name":"GetLocaleSite","script":"() => {return window.ffte?.locale || \"\"}"},{"name":"UserCountryCodeReal","script":"() => {\n const value = `; ${window.document.cookie}`;\n const parts = value.split(`; FTR_Country_Code=`);\n if (parts.length === 2) return parts.pop().split(\";\").shift();\n};"},{"name":"TestCampaign","script":"() => {\n const urlParams = new URLSearchParams(window.location.search);\n const campaignToTest = urlParams.get('_flexi_test_campaign');\n return campaignToTest || '';\n}"},{"name":"ForceBarrierWithArticlesSeens(notForQueryBuilder)","script":"() => {\n const urlParams = new URLSearchParams(window.location.search);\n const nbArticlesSeensExpected = parseInt(urlParams.get('_flexi_force_barrier_seen'), 10); \/\/ Conversion en entier\n \n if(nbArticlesSeensExpected){\n \n let decodedArticleSeenUrls = [];\n \n \/\/ V\u00e9rification que nbArticlesSeensExpected est un nombre valide\n if (!isNaN(nbArticlesSeensExpected) && nbArticlesSeensExpected > 0) {\n for (let i = 0; i < nbArticlesSeensExpected; i++) { \n decodedArticleSeenUrls.push(`\/toto\/toto${i}`);\n }\n }\n \n \/\/ V\u00e9rifiez que articleSeenUrls est d\u00e9fini avant de le d\u00e9coder\n if (typeof articleSeenUrls !== 'undefined') {\n decodedArticleSeenUrls = JSON.parse(window.atob(articleSeenUrls));\n }\n \n localStorage.removeItem('kiosq_article_url_ack');\n localStorage.setItem('kiosq_article_url_ack', window.btoa(JSON.stringify(decodedArticleSeenUrls))); \n }\n}\n"},{"name":"UTMCampaignPaid","script":"() => {\n const urlParams = new URLSearchParams(window.location.search);\n return (urlParams.get('utm_campaign') ?? '').toLowerCase().includes('paid');\n}"},{"name":"UTMParams","script":"() => {\n \/\/ Get the search params\n const params = new URLSearchParams(window.location.search);\n \n \/\/ Create an object to store UTM parameters\n const utmParams = [];\n \n \/\/ UTM parameter names\n const utmNames = [\n 'utm_source',\n 'utm_source_id',\n 'utm_medium',\n 'utm_campaign',\n 'utm_term',\n 'utm_content'\n ];\n \n \/\/ Extract UTM parameters\n utmNames.forEach(name => {\n const value = params.get(name);\n if (value) {\n utmParams.push(value);\n }\n });\n \n return utmParams.join(',');\n}"},{"name":"FreeRemainingArticleAfterLogin","script":"() => {\n if (localStorage.getItem(\"kiosq_article_url_ack\") !== null) {\n const articleSeenUrls = localStorage.getItem(\"kiosq_article_url_ack\");\n const decodedArticleSeenUrls = JSON.parse(window.atob(articleSeenUrls));\n const limitFreeArticlesAfterLogin = window.FUTR.Kiosq?.defaultSiteConfig?.limitOfFreeArticleAfterLogin || 0;\n const numberOfFreeArticleRemaining = limitFreeArticlesAfterLogin-decodedArticleSeenUrls.length;\n return numberOfFreeArticleRemaining >= 0 ? numberOfFreeArticleRemaining : 0;\n }\n\n return 0;\n }"},{"name":"ABTestCampaigns","script":"() => { \n let result = '';\n const str = window.VAN?.abTest?.variationId || '';\n if (str) {\n const parts = str.split('|');\n \n const variantId = parts[2];\n const variantNumber = parts[3];\n result = `${variantId}_${variantNumber}`;\n }\n\n return result;\n}"},{"name":"UrlPath","script":"() => {return window.location.pathname;}"},{"name":"GetQueryStringKeys","script":"() => {\n \/\/ Get the search params\n const params = new URLSearchParams(window.location.search);\n \n \/\/ Create an array of 'key=value' strings\n const paramStrings = [];\n \n \/\/ Iterate through all parameters and create the strings\n params.forEach((value, key) => {\n paramStrings.push(`${key}=${value}`);\n });\n \n return paramStrings;\n}; "},{"name":"ABTestVariationId","script":"() => { return window.VAN?.abTest?.variationId?.split('|')[4] ?? null; }"},{"name":"ABTestId","script":"() => { return window.VAN?.abTest?.variationId?.split('|')[2] ?? null; }"}]; window.FUTR.Kiosq.Campaign.Context = window.FUTR.Kiosq.Campaign.Context.map(function({script, ...item}) { try { return { ...item, computeValue:(eval(script))(), }; } catch (e) { if (e instanceof SyntaxError) { console.error(`Kiosq Setting Script Campaign ${item.name} has syntax error: ` + e.message); } else { console.log(`Kiosq Setting Script Campaign ${item.name} has`,e.message) } } }); window.bordeaux = window.bordeaux || {}; window.bordeaux.cmd = window.bordeaux.cmd || []; window.ffte.bordeaux ={ pageTemplate: "home", adParameters: window.adParameters || {"site":"tomshardware","content":"unknown","type":"homepage"} }; (function() { const QA_BASE_URL = 'public.rtb-qa-eks-euw1.futureplc.engineering'; const createScriptTag = (src) => { const script = document.createElement('script'); script.setAttribute('src', src); script.setAttribute('onerror', 'handleHeaderError()'); script.setAttribute('crossorigin', 'anonymous'); script.defer = true; return script; }; const appendScriptTags = (qaBordeauxVersion, qaChampagneVersion) => { if (window.disableBordeaux === true) return; const bordeauxUrl = qaBordeauxVersion ? `https://bdx.${qaBordeauxVersion}.${QA_BASE_URL}/bordeaux.js` : 'https://bordeaux.futurecdn.net/bordeaux.js'; const champagneUrl = qaChampagneVersion ? `https://chmp.${qaChampagneVersion}.${QA_BASE_URL}/champagne.js` : 'https://champagne.futurecdn.net/champagne.js'; document.head.append( createScriptTag(bordeauxUrl), createScriptTag(champagneUrl) ); }; const getQueryParams = () => { const params = new URLSearchParams(window.location.search); return { qaBordeauxVersion: params.get('hybrid_bordeaux_version') ?? null, qaChampagneVersion: params.get('hybrid_champagne_version') ?? null, }; }; const { qaBordeauxVersion, qaChampagneVersion } = getQueryParams(); appendScriptTags(qaBordeauxVersion, qaChampagneVersion); if (qaBordeauxVersion) { window.bordeaux.setAdToolVersion(qaBordeauxVersion); } })(); /* */ function comscoreIntegration() { var TIMEOUT_DELAY = 2000; var COMSCORE_ID = "10055482"; function callComscore(ucfrValue) { window._comscore = window._comscore || []; var comscorePayload = { c1: "2", c2: COMSCORE_ID, options: { enableFirstPartyCookie: true, } }; if(ucfrValue) { comscorePayload.cs_ucfr = ucfrValue; } window._comscore.push(comscorePayload); injectComscore(); } function callComscoreForVideo(ucfrValue) { window._comscore = window._comscore || []; const seconds = 600; const comscorePayload = { c2: COMSCORE_ID, c5: jwplayer().getDuration() > seconds ? "03" : "02", }; if(ucfrValue) { comscorePayload.cs_ucfr = ucfrValue; } if (!window.COMSCORE) { window._comscore.push(comscorePayload); } else { window.COMSCORE.beacon(comscorePayload) } } function injectComscore() { let s = document.createElement('script'), el = document.getElementsByTagName("script")[0]; s.async = true; const URLbeginning = "https://sb"; if (window.__tcfapi) { s.src = URLbeginning + '.scorecardresearch.com/cs/' + COMSCORE_ID + '/beacon.js'; } else { s.src = URLbeginning + '.scorecardresearch.com/beacon.js'; } el.parentNode.insertBefore(s, el); } if (window.__tcfapi) { var timeout = window.setTimeout(function() { callComscore(); }, TIMEOUT_DELAY); window.__tcfapi('addEventListener', 2, function(res) { window.__tcfapi('removeEventListener', 2, function() {}, res.listenerId); const validStatus = ['tcloaded', 'useractioncomplete']; if (validStatus.includes(res.eventStatus) && res.gdprApplies) { window.clearTimeout(timeout); callComscore(res.vendor?.consents?.[77] ? 1 : 0); } }); } else { callComscore(); } window.reliablePageLoad.then(function () { window.document.addEventListener('jwplayerInstanceLoaded', function () { jwplayer().once('beforePlay', function () { callComscoreForVideo(); }); }); }); } comscoreIntegration(); !function(){"use strict";function e(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],c=document.createElement("script");c.src=e,t?c.type="module":(c.async=!0,c.type="text/javascript",c.setAttribute("nomodule",""));var n=document.getElementsByTagName("script")[0];n.parentNode.insertBefore(c,n)}!function(t,c){!function(t,c,n){var a,o,r;n.accountId=c,null!==(a=t.marfeel)&&void 0!==a||(t.marfeel={}),null!==(o=(r=t.marfeel).cmd)&&void 0!==o||(r.cmd=[]),t.marfeel.config=n;var i="https://sdk.mrf.io/statics";e("".concat(i,"/marfeel-sdk.js?id=").concat(c),!0),e("".concat(i,"/marfeel-sdk.es5.js?id=").concat(c),!1)}(t,c,arguments.length>2&&void 0!==arguments[2]?arguments[2]:{})}(window,7842,{})}(); FlexiLoader={loadJS:function(e,t){var n,r,a;r=!1,(n=document.createElement("script")).type="text/javascript",n.src=e,n.async=!0,n.onload=n.onreadystatechange=function(){r||this.readyState&&"complete"!==this.readyState||(r=!0,t())},(a=document.getElementsByTagName("script")[0]).parentNode.insertBefore(n,a)},execRequires:function(){this.requires.forEach(function(e,t,n){try{e()}catch(e){console.log("error",e)}}),this.requires=[]},execRequiresOnDomReady:function(){document.addEventListener("readystatechange",function(){["interactive","complete"].indexOf(document.readyState)>=0&&FlexiLoader.execRequires()},!1)},push:function(e){["interactive","complete"].indexOf(document.readyState)>=0?e():this.requires.push(e)},requires:window.FlexiLoaderRequires||[]}; FlexiLoader.loadJS('//vanilla.futurecdn.net/tomshardware/1580304/media/shared/js/flexi.js', function () { Flexi.globals = { "environment": "live", "endpoints": null }; FlexiLoader.execRequiresOnDomReady(); }); !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).cssVars=t()}(this,function(){"use strict";function e(){return(e=Object.assign||function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:"").trim().charAt(0))}function a(e,t){n.onError(e,r[t],t)}function c(e,t){var s=n.onSuccess(e,r[t],t);e=!1===s?"":s||e,o[t]=e,-1===o.indexOf(null)&&n.onComplete(o)}var i=document.createElement("a");r.forEach(function(e,t){if(i.setAttribute("href",e),i.href=String(i.href),Boolean(document.all&&!window.atob)&&i.host.split(":")[0]!==location.host.split(":")[0]){if(i.protocol===location.protocol){var r=new XDomainRequest;r.open("GET",e),r.timeout=0,r.onprogress=Function.prototype,r.ontimeout=Function.prototype,r.onload=function(){s(r.responseText)?c(r.responseText,t):a(r,t)},r.onerror=function(e){a(r,t)},setTimeout(function(){r.send()},0)}else console.warn("Internet Explorer 9 Cross-Origin (CORS) requests must use the same protocol (".concat(e,")")),a(null,t)}else{var o=new XMLHttpRequest;o.open("GET",e),n.mimeType&&o.overrideMimeType&&o.overrideMimeType(n.mimeType),n.onBeforeSend(o,e,t),o.onreadystatechange=function(){4===o.readyState&&(200===o.status&&s(o.responseText)?c(o.responseText,t):a(o,t))},o.send()}})}function r(e){var t={cssComments:/\/\*[\s\S]+?\*\//g,cssImports:/(?:@import\s*)(?:url\(\s*)?(?:['"])([^'"]*)(?:['"])(?:\s*\))?(?:[^;]*;)/g},r={rootElement:e.rootElement||document,include:e.include||'style,link[rel="stylesheet"]',exclude:e.exclude||null,filter:e.filter||null,useCSSOM:e.useCSSOM||!1,onBeforeSend:e.onBeforeSend||Function.prototype,onSuccess:e.onSuccess||Function.prototype,onError:e.onError||Function.prototype,onComplete:e.onComplete||Function.prototype},s=Array.apply(null,r.rootElement.querySelectorAll(r.include)).filter(function(e){return t=e,n=r.exclude,!(t.matches||t.matchesSelector||t.webkitMatchesSelector||t.mozMatchesSelector||t.msMatchesSelector||t.oMatchesSelector).call(t,n);var t,n}),a=Array.apply(null,Array(s.length)).map(function(e){return null});function c(){if(-1===a.indexOf(null)){var e=a.join("");r.onComplete(e,a,s)}}function i(e,t,o,s){var i=r.onSuccess(e,o,s);(function e(t,o,s,a){var c=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[];var i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:[];var l=u(t,s,i);l.rules.length?n(l.absoluteUrls,{onBeforeSend:function(e,t,n){r.onBeforeSend(e,o,t)},onSuccess:function(e,t,n){var s=r.onSuccess(e,o,t),a=u(e=!1===s?"":s||e,t,i);return a.rules.forEach(function(t,n){e=e.replace(t,a.absoluteRules[n])}),e},onError:function(n,r,u){c.push({xhr:n,url:r}),i.push(l.rules[u]),e(t,o,s,a,c,i)},onComplete:function(n){n.forEach(function(e,n){t=t.replace(l.rules[n],e)}),e(t,o,s,a,c,i)}}):a(t,c)})(e=void 0!==i&&!1===Boolean(i)?"":i||e,o,s,function(e,n){null===a[t]&&(n.forEach(function(e){return r.onError(e.xhr,o,e.url)}),!r.filter||r.filter.test(e)?a[t]=e:a[t]="",c())})}function u(e,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],s={};return s.rules=(e.replace(t.cssComments,"").match(t.cssImports)||[]).filter(function(e){return-1===r.indexOf(e)}),s.urls=s.rules.map(function(e){return e.replace(t.cssImports,"$1")}),s.absoluteUrls=s.urls.map(function(e){return o(e,n)}),s.absoluteRules=s.rules.map(function(e,t){var r=s.urls[t],a=o(s.absoluteUrls[t],n);return e.replace(r,a)}),s}s.length?s.forEach(function(e,t){var s=e.getAttribute("href"),u=e.getAttribute("rel"),l="LINK"===e.nodeName&&s&&u&&"stylesheet"===u.toLowerCase(),f="STYLE"===e.nodeName;if(l)n(s,{mimeType:"text/css",onBeforeSend:function(t,n,o){r.onBeforeSend(t,e,n)},onSuccess:function(n,r,a){var c=o(s,location.href);i(n,t,e,c)},onError:function(n,o,s){a[t]="",r.onError(n,e,o),c()}});else if(f){var p=e.textContent;r.useCSSOM&&(p=Array.apply(null,e.sheet.cssRules).map(function(e){return e.cssText}).join("")),i(p,t,e,location.href)}else a[t]="",c()}):r.onComplete("",[])}function o(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:location.href,n=document.implementation.createHTMLDocument(""),r=n.createElement("base"),o=n.createElement("a");return n.head.appendChild(r),n.body.appendChild(o),r.href=t,o.href=e,o.href}var s=a;function a(e,t,n){e instanceof RegExp&&(e=c(e,n)),t instanceof RegExp&&(t=c(t,n));var r=i(e,t,n);return r&&{start:r[0],end:r[1],pre:n.slice(0,r[0]),body:n.slice(r[0]+e.length,r[1]),post:n.slice(r[1]+t.length)}}function c(e,t){var n=t.match(e);return n?n[0]:null}function i(e,t,n){var r,o,s,a,c,i=n.indexOf(e),u=n.indexOf(t,i+1),l=i;if(i>=0&&u>0){for(r=[],s=n.length;l>=0&&!c;)l==i?(r.push(l),i=n.indexOf(e,l+1)):1==r.length?c=[r.pop(),u]:((o=r.pop())1&&void 0!==arguments[1]?arguments[1]:{});function r(e){throw new Error("CSS parse error: ".concat(e))}function o(e){var n=e.exec(t);if(n)return t=t.slice(n[0].length),n}function a(){return o(/^{\s*/)}function c(){return o(/^}/)}function i(){o(/^\s*/)}function u(){if(i(),"/"===t[0]&&"*"===t[1]){for(var e=2;t[e]&&("*"!==t[e]||"/"!==t[e+1]);)e++;if(!t[e])return r("end of comment is missing");var n=t.slice(2,e);return t=t.slice(e+2),{type:"comment",comment:n}}}function l(){for(var e,t=[];e=u();)t.push(e);return n.removeComments?[]:t}function f(){for(i();"}"===t[0];)r("extra closing bracket");var e=o(/^(("(?:\\"|[^"])*"|'(?:\\'|[^'])*'|[^{])+)/);if(e)return e[0].trim().replace(/\/\*([^*]|[\r\n]|(\*+([^*\/]|[\r\n])))*\*\/+/g,"").replace(/"(?:\\"|[^"])*"|'(?:\\'|[^'])*'/g,function(e){return e.replace(/,/g,"‌")}).split(/\s*(?![^(]*\)),\s*/).map(function(e){return e.replace(/\u200C/g,",")})}function p(){o(/^([;\s]*)+/);var e=/\/\*[^*]*\*+([^\/*][^*]*\*+)*\//g,t=o(/^(\*?[-#\/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/);if(t){if(t=t[0].trim(),!o(/^:\s*/))return r("property missing ':'");var n=o(/^((?:\/\*.*?\*\/|'(?:\\'|.)*?'|"(?:\\"|.)*?"|\((\s*'(?:\\'|.)*?'|"(?:\\"|.)*?"|[^)]*?)\s*\)|[^};])+)/),s={type:"declaration",property:t.replace(e,""),value:n?n[0].replace(e,"").trim():""};return o(/^[;\s]*/),s}}function m(){if(!a())return r("missing '{'");for(var e,t=l();e=p();)t.push(e),t=t.concat(l());return c()?t:r("missing '}'")}function d(){i();for(var e,t=[];e=o(/^((\d+\.\d+|\.\d+|\d+)%?|[a-z]+)\s*/);)t.push(e[1]),o(/^,\s*/);if(t.length)return{type:"keyframe",values:t,declarations:m()}}function v(){if(i(),"@"===t[0]){var e=function(){var e=o(/^@([-\w]+)?keyframes\s*/);if(e){var t=e[1];if(!(e=o(/^([-\w]+)\s*/)))return r("@keyframes missing name");var n,s=e[1];if(!a())return r("@keyframes missing '{'");for(var i=l();n=d();)i.push(n),i=i.concat(l());return c()?{type:"keyframes",name:s,vendor:t,keyframes:i}:r("@keyframes missing '}'")}}()||function(){var e=o(/^@supports *([^{]+)/);if(e)return{type:"supports",supports:e[1].trim(),rules:h()}}()||function(){if(o(/^@host\s*/))return{type:"host",rules:h()}}()||function(){var e=o(/^@media *([^{]+)/);if(e)return{type:"media",media:e[1].trim(),rules:h()}}()||function(){var e=o(/^@custom-media\s+(--[^\s]+)\s*([^{;]+);/);if(e)return{type:"custom-media",name:e[1].trim(),media:e[2].trim()}}()||function(){if(o(/^@page */))return{type:"page",selectors:f()||[],declarations:m()}}()||function(){var e=o(/^@([-\w]+)?document *([^{]+)/);if(e)return{type:"document",document:e[2].trim(),vendor:e[1]?e[1].trim():null,rules:h()}}()||function(){if(o(/^@font-face\s*/))return{type:"font-face",declarations:m()}}()||function(){var e=o(/^@(import|charset|namespace)\s*([^;]+);/);if(e)return{type:e[1],name:e[2].trim()}}();if(e&&n.onlyVars){var s=!1;if(e.declarations)s=e.declarations.some(function(e){return/var\(/.test(e.value)});else s=(e.keyframes||e.rules||[]).some(function(e){return(e.declarations||[]).some(function(e){return/var\(/.test(e.value)})});return s?e:{}}return e}}function y(){if(n.onlyVars){var e=s("{","}",t);if(e){var o=-1!==e.pre.indexOf(":root")&&/--\S*\s*:/.test(e.body),a=/var\(/.test(e.body);if(!o&&!a)return t=t.slice(e.end+1),{}}}var c=f()||[],i=n.onlyVars?m().filter(function(e){var t=c.some(function(e){return-1!==e.indexOf(":root")})&&/^--\S/.test(e.property),n=/var\(/.test(e.value);return t||n}):m();return c.length||r("selector missing"),{type:"rule",selectors:c,declarations:i}}function h(e){if(!e&&!a())return r("missing '{'");for(var n,o=l();t.length&&(e||"}"!==t[0])&&(n=v()||y());)n.type&&o.push(n),o=o.concat(l());return e||c()?o:r("missing '}'")}return{type:"stylesheet",stylesheet:{rules:h(!0),errors:[]}}}a.range=i;var l="--",f="var",p={dom:{},temp:{},user:{}};function m(t){var n,r,o=e({},{fixNestedCalc:!0,onlyVars:!1,persist:!1,preserve:!1,variables:{},onWarning:function(){}},arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}),a=o.persist?p.dom:p.temp=JSON.parse(JSON.stringify(p.dom)),c=u(t,{onlyVars:o.onlyVars});if(c.stylesheet.rules.forEach(function(e){var t=[];if("rule"===e.type&&1===e.selectors.length&&":root"===e.selectors[0]&&(e.declarations.forEach(function(e,n){var r=e.property,o=e.value;r&&0===r.indexOf(l)&&(a[r]=o,t.push(n))}),!o.preserve))for(var n=t.length-1;n>=0;n--)e.declarations.splice(t[n],1)}),Object.keys(p.user).forEach(function(e){a[e]=p.user[e]}),Object.keys(o.variables).length){var i={declarations:[],selectors:[":root"],type:"rule"};Object.keys(o.variables).forEach(function(e){var t="--".concat(e.replace(/^-+/,"")),n=o.variables[e];o.persist&&(p.user[t]=n),a[t]!==n&&(a[t]=n,i.declarations.push({type:"declaration",property:t,value:n}))}),o.preserve&&i.declarations.length&&c.stylesheet.rules.push(i)}return function e(t,n){t.rules.forEach(function(r){r.rules?e(r,n):r.keyframes?r.keyframes.forEach(function(e){"keyframe"===e.type&&n(e.declarations,r)}):r.declarations&&n(r.declarations,t)})}(c.stylesheet,function(e,t){for(var n,r,s,c=0;c1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2?arguments[2]:void 0,r={charset:function(e){return"@charset "+e.name+";"},comment:function(e){return 0===e.comment.indexOf("__CSSVARSPONYFILL")?"/*"+e.comment+"*/":""},"custom-media":function(e){return"@custom-media "+e.name+" "+e.media+";"},declaration:function(e){return e.property+":"+e.value+";"},document:function(e){return"@"+(e.vendor||"")+"document "+e.document+"{"+o(e.rules)+"}"},"font-face":function(e){return"@font-face{"+o(e.declarations)+"}"},host:function(e){return"@host{"+o(e.rules)+"}"},import:function(e){return"@import "+e.name+";"},keyframe:function(e){return e.values.join(",")+"{"+o(e.declarations)+"}"},keyframes:function(e){return"@"+(e.vendor||"")+"keyframes "+e.name+"{"+o(e.keyframes)+"}"},media:function(e){return"@media "+e.media+"{"+o(e.rules)+"}"},namespace:function(e){return"@namespace "+e.name+";"},page:function(e){return"@page "+(e.selectors.length?e.selectors.join(", "):"")+"{"+o(e.declarations)+"}"},rule:function(e){var t=e.declarations;if(t.length)return e.selectors.join(",")+"{"+o(t)+"}"},supports:function(e){return"@supports "+e.supports+"{"+o(e.rules)+"}"}};function o(e){for(var o="",s=0;s2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3?arguments[3]:void 0;if(-1===e.indexOf("var("))return e;var o=s("(",")",e);return o?"var"===o.pre.slice(-3)?0===o.body.trim().length?(n.onWarning("var() must contain a non-whitespace string"),e):o.pre.slice(0,-3)+function(e){var o=e.split(",")[0].replace(/[\s\n\t]/g,""),s=(e.match(/(?:\s*,\s*){1}(.*)?/)||[])[1],a=t.hasOwnProperty(o)?String(t[o]):void 0,c=a||(s?String(s):void 0),i=r||e;return a||n.onWarning('variable "'.concat(o,'" is undefined')),c&&"undefined"!==c&&c.length>0?d(c,t,n,i):"var(".concat(i,")")}(o.body)+d(o.post,t,n):o.pre+"(".concat(d(o.body,t,n),")")+d(o.post,t,n):(-1!==e.indexOf("var(")&&n.onWarning('missing closing ")" in the value "'.concat(e,'"')),e)}var v="css-vars-ponyfill",y="undefined"!=typeof window,h=y&&window.CSS&&window.CSS.supports&&window.CSS.supports("(--a: 0)"),g="cssVars(): ",S={rootElement:y?document:null,shadowDOM:!1,include:"style,link[rel=stylesheet]",exclude:"",variables:{},fixNestedCalc:!0,onlyLegacy:!0,onlyVars:!1,preserve:!1,silent:!1,updateDOM:!0,updateURLs:!0,watch:null,onBeforeSend:function(){},onSuccess:function(){},onWarning:function(){},onError:function(){},onComplete:function(){}},E={cssComments:/\/\*[\s\S]+?\*\//g,cssKeyframes:/@(?:-\w*-)?keyframes/,cssRootRules:/(?::root\s*{\s*[^}]*})/g,cssUrls:/url\((?!['"]?(?:data|http|\/\/):)['"]?([^'")]*)['"]?\)/g,cssVars:/(?:(?::root\s*{\s*[^;]*;*\s*)|(?:var\(\s*))(--[^:)]+)(?:\s*[:)])/},b=null,x=null,C=!1;function O(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},o=e({},S,n),s=v;function a(e,t,n,r){o.silent||console.error("".concat(g).concat(e,"\n"),t),o.onError(e,t,n,r)}function c(e){o.silent||console.warn("".concat(g).concat(e)),o.onWarning(e)}if(o.exclude="#".concat(s)+(o.exclude?",".concat(o.exclude):""),o._benchmark=o._benchmark?o._benchmark:A(),y)if(!1===o.watch&&b&&b.disconnect(),o.watch)!function(e,t){if(!window.MutationObserver)return;var n=function(e){return"LINK"===e.tagName&&-1!==(e.getAttribute("rel")||"").indexOf("stylesheet")},r=function(e){return"STYLE"===e.tagName&&(!t||e.id!==t)};b&&b.disconnect();e.watch=S.watch,(b=new MutationObserver(function(t){var o=t.some(function(e){var t=!1;if("attributes"===e.type)t=n(e.target)||r(e.target);else if("childList"===e.type){var o=Array.apply(null,e.addedNodes),s=Array.apply(null,e.removedNodes);t=[].concat(o,s).some(function(e){var t=n(e)&&!e.disabled,o=r(e)&&E.cssVars.test(e.textContent);return t||o})}return t});o&&w(e)})).observe(document.documentElement,{attributes:!0,attributeFilter:["disabled","href"],childList:!0,subtree:!0})}(o,s),w(o);else if("loading"!==document.readyState){var i=o.shadowDOM||o.rootElement.shadowRoot||o.rootElement.host;if(h&&o.onlyLegacy){if(o.updateDOM){var u=o.rootElement.host||(o.rootElement===document?document.documentElement:o.rootElement);Object.keys(o.variables).forEach(function(e){var t="--".concat(e.replace(/^-+/,"")),n=o.variables[e];u.style.setProperty(t,n)})}}else r(i&&!C?{rootElement:S.rootElement,include:S.include,exclude:o.exclude,onSuccess:function(e,t,n){return(e.match(E.cssRootRules)||[]).join("")||!1},onComplete:function(e,t,n){m(e,{persist:!0}),C=!0,O(o)}}:{rootElement:o.rootElement,include:o.include,exclude:o.exclude,filter:o.onlyVars?E.cssVars:null,onBeforeSend:o.onBeforeSend,onSuccess:function(e,t,n){var r=o.onSuccess(e,t,n);(e=void 0!==r&&!1===Boolean(r)?"":r||e,o.updateURLs)&&(e.replace(E.cssComments,"").match(E.cssUrls)||[]).forEach(function(t){var r=t.replace(E.cssUrls,"$1"),o=k(r,n);e=e.replace(t,t.replace(r,o))});return e},onError:function(e,t,n){var r=e.responseURL||k(n,location.href),o=e.statusText?"(".concat(e.statusText,")"):"Unspecified Error"+(0===e.status?" (possibly CORS related)":"");a("CSS XHR Error: ".concat(r," ").concat(e.status," ").concat(o),t,e,r)},onComplete:function(n,r,i){var u=o.rootElement.querySelector("#".concat(s))||document.createElement("style"),l=u.__cssVars||{};if(l.cssText===n&&l.settings===JSON.stringify(o))n=u.textContent,o.silent||console.info("".concat(g,"CSS source is unchanged"));else{u.setAttribute("id",s),u.__cssVars={cssText:n,settings:JSON.stringify(o)},n=r.map(function(e,t){return E.cssVars.test(e)?e:"/*__CSSVARSPONYFILL-".concat(t,"__*/")}).join("");try{n=m(n,{fixNestedCalc:o.fixNestedCalc,onlyVars:o.onlyVars,persist:o.updateDOM,preserve:o.preserve,variables:o.variables,onWarning:c});var f=E.cssKeyframes.test(n);if(n=n.replace(/\/\*__CSSVARSPONYFILL-(\d+)__\*\//g,function(e,t){return r[t]}),o.updateDOM&&i&&i.length){var d=i[i.length-1];u.textContent!==n&&(u.textContent=n),d.nextSibling!==u&&d.parentNode&&d.parentNode.insertBefore(u,d.nextSibling),f&&function(e){var t=["animation-name","-moz-animation-name","-webkit-animation-name"].filter(function(e){return getComputedStyle(document.body)[e]})[0];if(t){for(var n=e.getElementsByTagName("*"),r=[],o=0,s=n.length;o Tom's Hardware
  • [H3] Testing CPU scaling in Crimson Desert
  • [H3] Nvidia will only produce one 88-core Vera CPU model — Jensen says the company will make billions of dollars from a single SKU
  • [H3] With H200s set to flow into China, Groq is reportedly set to follow soon after
  • [H3] AMD claims it had no knowledge of fake Ryzen 5 7430U CPUs in Chuwi laptops
  • [H3] Microsoft considering suing OpenAI over Altman's recent deal with Amazon, report claims
  • [H3] AMD reportedly strikes back with Zen 5 refresh to counter Intel's latest Arrow Lake Refresh CPUs
  • [H3] Endgame: What’s it Like to build the Noctua-everything PC inside the Antec Flux Pro Noctua-Edition
  • [H3] Best motherboard deals 2026
  • [H3] SK Group chairman says memory chip shortage will last until 2030
  • [H3] Tech hobbyist makes shoulder-mounted guided missile prototype with $96 in parts and a 3D printer
  • [H3] Bitcoin is so resilient it could survive as much as 90% of the world's undersea cables failing simultaneously
  • [H3] Intel launches Core Ultra 200HX Plus mobile CPUs, new lineup includes 290HX Plus & 270HX Plus flagships
  • [H3] Nvidia updates data center roadmap with Rosa CPU and stacked Feynman GPUs
  • [H3] Jensen says Nvidia has received orders from Chinese customers for H200 GPUs, licenses from US gov't — H200 manufacturing restarting
  • [H3] Jensen Huang says gamers are 'completely wrong' about DLSS 5
  • [H3] Nvidia launches DGX Station with its bleeding-edge GB300 Grace Blackwell Superchip
  • [H3] End of an era for decades-old PlayStation 3, Xbox 360, and Nintendo Wii U as GameStop officially declares them retro
  • [H3] Nintendo Switch 2 update brings Handheld Mode Boost
  • [H3] Examining Nvidia's 60 exaflop Vera Rubin POD — how seven chips underpin company's 40 rack AI factory supercomputer
  • [H3] We got a first look at Nvidia's DLSS 5 and the future of neural rendering at GTC
  • [H3] With H200s set to flow into China, Groq is reportedly set to follow soon after
  • [H3] Examining Nvidia's 60 exaflop Vera Rubin POD — how seven chips underpin company's 40 rack AI factory supercomputer
  • [H3] Meta's new MTIA lineup joins hyperscalers' unified push for dedicated inferencing chips
  • [H3] Intel's roadmaps examined — 14A, Nova Lake, Diamond Rapids & AI accelerator push
  • [H3] Tech titans team up to form optical interconnect alliance to solve the AI buildout's big data bottleneck
  • [H3] The ongoing Strait of Hormuz blockage will impact the semiconductor and AI industries with Aluminum, Helium and LNG shortages
  • [H3] SPONSORED_HEADLINE
  • [H3] MSI MAG B850 Tomahawk Max Wifi II Motherboard review: Sharpening the Tomahawk’s blade
  • [H3] Creality Sermoon P1 3D Scanner review: 3D scanning on the go
  • [H3] Keychron Q16 HE 8K Review: All-ceramic, but not all good
  • [H3] Acer Swift 16 AI Review: A Premium contender with a curious twist
  • [H3] HyperX Origins 2 65 Review: 8,000Hz and Customizable
  • [H3] SPONSORED_HEADLINE
  • [H3] Best AIO Coolers 2026
  • [H3] The Best Wi-Fi Routers We've Benchmarked in 2026 — the best of Wi-Fi 7 from budget to premium
  • [H3] Best PC Speakers 2026: From Budget to Audiophile Bliss
  • [H3] SPONSORED_HEADLINE
  • [H3] Testing CPU scaling in Crimson Desert
  • [H3] Nvidia will only produce one 88-core Vera CPU model — Jensen says the company will make billions of dollars from a single SKU
  • [H3] AMD claims it had no knowledge of fake Ryzen 5 7430U CPUs in Chuwi laptops
  • [H3] SPONSORED_HEADLINE
  • [H3] Nvidia updates data center roadmap with Rosa CPU and stacked Feynman GPUs
  • [H3] Jensen Huang expects Nvidia to sell $1 trillion of AI hardware through 2027
  • [H3] Nvidia announces Vera Rubin Space Module
  • [H3] SPONSORED_HEADLINE
  • [H3] Jake Roach
  • [H3] Jeffrey Kampman
  • [H3] Anj Bryant
  • [H3] Stephen Warwick
  • [H3] Paul Alcorn
  • [H3] Matt Safford
  • [H3] Sarah Jacobsson Purewal
  • [H3] Andrew E. Freedman
  • [H3] Brandon Hill
  • [H3] Les Pounder
  • [H3] Stewart Bendle
  • [H3] Sayem Ahmed
  • [H3] Joe Shields
  • [H3] Ben Stockton
  • [H3] Dell updates Alienware gaming laptops with Intel’s Arrow Lake-HX Refresh CPUs
  • [H3] Apple's MacBook Neo modded to a 1 TB SSD, breaking the firm's 512 GB barrier
  • [H3] SPONSORED_HEADLINE
  • [H3] Intel's roadmaps examined — 14A, Nova Lake, Diamond Rapids & AI accelerator push
  • [H3] How to protect yourself from bad external SSDs during the PC hardware apocalypse
  • [H3] Shortages of crucial chip packaging material threatens AI accelerator supply chains
  • [H3] SPONSORED_HEADLINE
  • [H3] Endgame: What’s it Like to build the Noctua-everything PC inside the Antec Flux Pro Noctua-Edition
  • [H3] Best motherboard deals 2026
  • [H3] SK Group chairman says memory chip shortage will last until 2030
  • [H3] SPONSORED_HEADLINE
  • [H3] How to setup an Android smartphone as a webcam — Camo Studio unlocks new uses for old smartphones in Windows 10 or 11 and OBS software
  • [H3] Windows Phone makes a spiritual comeback thanks to NexPhone, which can triple-boot Windows, Android, and Linux
  • [H3] Monstrous SSD cooling solution strapped to iPhone 17 Pro Max delivers unparalleled performance
  • [H3] SPONSORED_HEADLINE
  • [H3] Best motherboard deals 2026
  • [H3] The best Amazon UK Spring Deals Days tech sales 2026
  • [H3] Save over £40 on the latest SteelSeries Arctis Nova Elite audiophile-grade headset
  • [H3] SPONSORED_HEADLINE
  • [H3] Meta promo codes for Mar 2026 |
  • [H3] Corsair Discount Codes in Mar 2026 |
  • [H3] Squarespace Coupon Codes for Mar 2026
  • [H3] Logitech G Promo Codes for March 2026
  • [H3] Autodesk Promo Codes in Mar 2026 |
  • [H3] SteelSeries Coupons for March 2026
  • [H3] SPONSORED_HEADLINE
  • [H3] With H200s set to flow into China, Groq is reportedly set to follow soon after
  • [H3] Microsoft considering suing OpenAI over Altman's recent deal with Amazon, report claims
  • [H3] Tech hobbyist makes shoulder-mounted guided missile prototype with $96 in parts and a 3D printer
  • [H3] Bitcoin is so resilient it could survive as much as 90% of the world's undersea cables failing simultaneously
  • [H3] Nvidia launches DGX Station with its bleeding-edge GB300 Grace Blackwell Superchip
  • [H3] End of an era for decades-old PlayStation 3, Xbox 360, and Nintendo Wii U as GameStop officially declares them retro
  • [H3] Best PC peripherals deals 2026
  • [H3] Nintendo Switch 2 update brings Handheld Mode Boost
  • [H3] SPONSORED_HEADLINE

Imagenes

Hemos encontrado 111 imágenes en esta web.

31 atributos alt están vacios o no existen. Agrega texto alternativo para que los motores de búsqueda puedan entender las imágenes.

Ratio Texto/HTML

Ratio : 2%

El ratio entre texto y código HTML de esta página es menor que el 15 por ciento, esto significa que tu web posiblemente necesite más contenido en texto.

Flash

Perfecto, no se ha detectado contenido Flash en la página.

Iframe

Muy mal, tienes Iframes en la página, esto significa que el contenido no podrá ser indexado.

Reescritura URL

Bien. Tus enlaces parecen amigables

Guiones bajos en las URLs

Perfecto! No hemos detectado guiones bajos en tus URLs

Enlaces en página

Hemos encontrado un total de 170 enlaces incluyendo 14 enlace(s) a ficheros

Ancla Tipo Jugo
Skip to main content Interna Pasando Jugo
Best Picks Externo Pasando Jugo
CPU Best Picks Externo Pasando Jugo
CPU Reviews Externo Pasando Jugo
GPU Best Picks Externo Pasando Jugo
GPU Reviews Externo Pasando Jugo
Laptop Best Picks Externo Pasando Jugo
Laptop Reviews Externo Pasando Jugo
Keyboard Best Picks Externo Pasando Jugo
Gaming Monitor Best Picks Externo Pasando Jugo
Gaming Headset Best Picks Externo Pasando Jugo
3D Printer Best Picks Externo Pasando Jugo
Webcam Best Picks Externo Pasando Jugo
Mice Best Picks Externo Pasando Jugo
How We Test Externo Pasando Jugo
CPUs Externo Pasando Jugo
AMD Ryzen Externo Pasando Jugo
Intel Lunar Lake Externo Pasando Jugo
Nvidia Externo Pasando Jugo
Qualcomm Externo Pasando Jugo
Apple Externo Pasando Jugo
Benchmarking Externo Pasando Jugo
X86 Externo Pasando Jugo
ARM Externo Pasando Jugo
Panther Lake Externo Pasando Jugo
Zen 5 Externo Pasando Jugo
AM5 Externo Pasando Jugo
Chipmaking Externo Pasando Jugo
DUV Externo Pasando Jugo
EUV Externo Pasando Jugo
Rare Earth Metals Externo Pasando Jugo
GPUs Externo Pasando Jugo
Nvidia Blackwell Externo Pasando Jugo
Nvidia Geforce Externo Pasando Jugo
AMD Radeon Externo Pasando Jugo
Intel Arc Externo Pasando Jugo
Snapdragon X Externo Pasando Jugo
GDDR7 Externo Pasando Jugo
GDDR8 Externo Pasando Jugo
HBM Externo Pasando Jugo
Drivers Externo Pasando Jugo
PC Components Externo Pasando Jugo
RAM Externo Pasando Jugo
DRAM Externo Pasando Jugo
DDR5 Externo Pasando Jugo
Storage Externo Pasando Jugo
HDDs Externo Pasando Jugo
SSDs Externo Pasando Jugo
Cooling Externo Pasando Jugo
Air Cooling Externo Pasando Jugo
Liquid Cooling Externo Pasando Jugo
Thermal Paste Externo Pasando Jugo
Networking Externo Pasando Jugo
Routers Externo Pasando Jugo
Motherboards Externo Pasando Jugo
Overclocking Externo Pasando Jugo
PC Cases Externo Pasando Jugo
PC Building Externo Pasando Jugo
Power Supplies Externo Pasando Jugo
News Externo Pasando Jugo
Tech Industry News Externo Pasando Jugo
CPU News Externo Pasando Jugo
GPU News Externo Pasando Jugo
Chips Act Externo Pasando Jugo
Semiconductors Externo Pasando Jugo
Cybersecurity Externo Pasando Jugo
Supercomputers Externo Pasando Jugo
Quantum Computing Externo Pasando Jugo
AMD Externo Pasando Jugo
Intel Externo Pasando Jugo
Microsoft Externo Pasando Jugo
TSMC Externo Pasando Jugo
IBM Externo Pasando Jugo
Newsletter Externo Pasando Jugo
Laptops Externo Pasando Jugo
Gaming Laptops Externo Pasando Jugo
Ultrabooks Externo Pasando Jugo
MacBooks Externo Pasando Jugo
Asus Externo Pasando Jugo
Razer Externo Pasando Jugo
HP Externo Pasando Jugo
MSI Externo Pasando Jugo
Desktops Externo Pasando Jugo
Gaming PCs Externo Pasando Jugo
Monitors Externo Pasando Jugo
Gaming Monitors Externo Pasando Jugo
Peripherals Externo Pasando Jugo
Keyboards Externo Pasando Jugo
Mice Externo Pasando Jugo
3D Printers Externo Pasando Jugo
Headphones Externo Pasando Jugo
Alienware Externo Pasando Jugo
Corsair Externo Pasando Jugo
Gigabyte Externo Pasando Jugo
Acer Externo Pasando Jugo
Software & AI Externo Pasando Jugo
Artificial Intelligence Externo Pasando Jugo
Machine Learning Externo Pasando Jugo
R&D Externo Pasando Jugo
Intel Gaudi Externo Pasando Jugo
Cerebras Externo Pasando Jugo
xAI Externo Pasando Jugo
LLMs Externo Pasando Jugo
OpenAI Externo Pasando Jugo
Anthropic Externo Pasando Jugo
DeepSeek Externo Pasando Jugo
Gemini Externo Pasando Jugo
Grok Externo Pasando Jugo
Operating Systems Externo Pasando Jugo
Windows Externo Pasando Jugo
MacOS Externo Pasando Jugo
iOS Externo Pasando Jugo
ChromeOS Externo Pasando Jugo
Linux Externo Pasando Jugo
Programming Externo Pasando Jugo
Applications Externo Pasando Jugo
Microsoft Office Externo Pasando Jugo
Web Browsers Externo Pasando Jugo
Coupons Interna Pasando Jugo
Laptop and PC Coupons Externo Pasando Jugo
Dell Coupon Codes Externo Pasando Jugo
Asus Coupon Codes Externo Pasando Jugo
Logitech Promo Codes Externo Pasando Jugo
Samsung Promo codes Externo Pasando Jugo
Hardware Coupons Externo Pasando Jugo
Newegg Promo Codes Externo Pasando Jugo
Corsair Discount Codes Externo Pasando Jugo
Razer Promo Codes Externo Pasando Jugo
Anycubic Discount codes Externo Pasando Jugo
Software Coupons Externo Pasando Jugo
Bitdefender Coupons Externo Pasando Jugo
Simplisafe Coupons Externo Pasando Jugo
MacPaw Coupons Externo Pasando Jugo
Squarespace Coupon Codes Externo Pasando Jugo
Gaming Coupons Externo Pasando Jugo
Kinguin Discount Codes Externo Pasando Jugo
Loaded Discount Codes Externo Pasando Jugo
Logitech G Promo Codes Externo Pasando Jugo
SteelSeries Coupons Externo Pasando Jugo
- Interna Pasando Jugo
Premium Externo Pasando Jugo
Forums Externo Pasando Jugo
🔥TH Premium Deal Externo Pasando Jugo
GTC 2026 Externo Pasando Jugo
DLSS 5 Externo Pasando Jugo
RAM Shortage Externo Pasando Jugo
Bartlett Lake Externo Pasando Jugo
Intel Xeon 600 Externo Pasando Jugo
RAM Combo Deals Externo Pasando Jugo
Terms & Conditions Externo Pasando Jugo
Privacy Policy Externo Pasando Jugo
3D Scanning Externo Pasando Jugo
Mechanical Keyboards Externo Pasando Jugo
Gaming Keyboards Externo Pasando Jugo
Speakers Externo Pasando Jugo
Android Externo Pasando Jugo
Phones Externo Pasando Jugo
iPhone Externo Pasando Jugo
this forum thread Externo Pasando Jugo
Cryptocurrency Externo Pasando Jugo
Retro Gaming Externo Pasando Jugo
Nintendo Externo Pasando Jugo
Visit our corporate site Externo Pasando Jugo
Contact Future's experts Externo Pasando Jugo
Cookies policy Externo Pasando Jugo
Accessibility Statement Externo Pasando Jugo
Advertise with us Externo Pasando Jugo
About us Externo Pasando Jugo
Coupons Externo Pasando Jugo
Careers Externo Pasando Jugo

Palabras Clave SEO

Nube de Palabras Clave

coupons codes premium view published best cpu picks march nvidia

Consistencia de las Palabras Clave

Palabra Clave (Keyword) Contenido Título Palabras Claves (Keywords) Descripción Titulos
view 33
best 32
march 31
codes 30
published 29

Usabilidad

Url

Dominio : tomshardware.co.uk

Longitud : 18

Favicon

Genial, tu web tiene un favicon.

Imprimibilidad

No hemos encontrado una hoja de estilos CSS para impresión.

Idioma

Genial. Has declarado el idioma en.

Dublin Core

Esta página no usa Dublin Core.

Documento

Tipo de documento (Doctype)

HTML 5

Codificación

Perfecto. Has declarado como codificación UTF-8.

Validez W3C

Errores : 0

Avisos : 0

Privacidad de los Emails

Genial. No hay ninguna dirección de email como texto plano!

HTML obsoleto

Genial, no hemos detectado ninguna etiqueta HTML obsoleta.

Consejos de Velocidad

Excelente, esta web no usa tablas.
Muy mal, tu web está usando estilos embenidos (inline CSS).
Genial, tu página web usa muy pocos ficheros CSS.
Muy mal, tu sitio usa demasiados ficheros JavaScript (más de 6).
Su sitio web se beneficia del tipo de compresión gzip. ¡Perfecto!

Movil

Optimización Móvil

Icono para Apple
Etiqueta Meta Viewport
Contenido Flash

Optimización

Mapa del sitio XML

¡Perfecto! Su sitio tiene un mapa del sitio en XML.

https://www.tomshardware.com/sitemap.xml
https://www.tomshardware.com/uk/sitemap.xml
https://www.tomshardware.com/sitemap-news.xml
https://www.tomshardware.com/uk/sitemap-news.xml

Robots.txt

https://tomshardware.co.uk/robots.txt

¡Estupendo! Su sitio web tiene un archivo robots.txt.

Herramientas de Analítica

No disponible

No hemos encontrado ninguna herramienta de analítica en esta web.

La analítica Web le permite medir la actividad de los visitantes de su sitio web. Debería tener instalada al menos una herramienta de analítica y se recomienda instalar otra más para obtener una confirmación de los resultados.

PageSpeed Insights


Dispositivo
Categorias

Free SEO Testing Tool

Free SEO Testing Tool es una herramienta seo gratuita que te ayuda a analizar tu web