tomshardware.co.uk

Webside score tomshardware.co.uk

Tom's Hardware: For The Hardcore PC Enthusiast

 Genereret Marts 19 2026 07:26 AM

Gammel data? OPDATER !

Scoren er 56/100

SEO Indhold

Titel

Tom's Hardware: For The Hardcore PC Enthusiast

Længde : 46

Perfekt, din titel indeholder mellem 10 og 70 bogstaver.

Beskrivelse

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

Længde : 95

Perfekt, din meta beskrivelse indeholder mellem 70 og 160 karakterer.

Nøgleord

Dårligt! Vi kan ikke finde nogle meta nøgleord på din side! Brug denne gratis online meta generator for at oprette nye nøgleord.

Og Meta Egenskaber

Godt, din side benytter Og egenskaberne

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

Overskrifter

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

Billeder

Vi fandt 111 billeder på denne side.

31 alt tags mangler eller er tomme. Tilføj alternativ tekst til dine billeder for at gøre siden mere brugervenlig, og for at optimere din SEO i forhold til søgemaskinerne.

Text/HTML balance

Balance : 2%

Denne sides text til HTML fordeling er under 15 procent, dette betyder at din side mangler indhold!

Flash

Perfekt, ingen Flash objekter er blevet fundet på siden.

iFrame

Beklager! Din side har iFrames og det kan medføre i yderst dårlig læsning af søgerobotterne.

URL Omskrivning

Godt. Dine links ser venlige ud!

Underscores i links

Perfekt! Ingen underscores blev fundet i dine links

On-page links

Vi fandt et total af 170 links inkluderende 14 link(s) til filer

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

SEO Nøgleord

Nøgleords cloud

premium view march best codes published coupons picks cpu nvidia

Nøgleords balance

Nøgleord Indhold Titel Nøgleord Beskrivelse Overskrifter
view 33
best 32
march 31
codes 30
published 29

Brugervenlighed

Link

Domæne : tomshardware.co.uk

Længde : 18

FavIkon

Godt, din side har et FavIcon!

Printervenlighed

Vi kunne ikke finde en printer venlig CSS skabelon.

Sprog

Godt, dit tildelte sprog er en.

Dublin Core

Denne side benytter IKKE Dublin Core principperne.

Dokument

Dokumenttype

HTML 5

Kryptering

Perfekt. Dit Charset er tildelt UTF-8.

W3C Validering

Fejl : 0

Advarsler : 0

Email Privatliv

Godt! Ingen email adresser er blevet fundet i rå tekst!

Udgået HTML

Godt! Vi har ikke fundet udgåede HTML tags i din kildekode

Hastigheds Tips

Alle tiders! Din webside bruger ikke nestede tabeller.
Advarsel! Din webside benytter inline CSS kode!
Godt, din website har få antal CSS filer
Dårligt, din webside har for mange JavaScript filer (mere end 6).
Perfekt, din hjemmeside udnytter gzip.

Mobil

Mobil Optimering

Apple Ikon
Meta Viewport Tag
Flash indhold

Optimering

XML Sitemap

Stor, din hjemmeside har en XML sitemap.

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

Stor, din hjemmeside har en robots.txt-fil.

Analytics

Mangler

Vi har ikke registrerer en analyseværktøj installeret på denne hjemmeside.

Web analytics kan du måle besøgendes aktivitet på dit websted. Du bør have mindst én analyseværktøj installeret, men det kan også være godt at installere et sekund for at krydstjekke data.

PageSpeed Insights


Apparat
Kategorier

Free SEO Testing Tool

Free SEO Testing Tool er et gratis SEO redskab der hjælper med din hjemmeside