/* TechHauz Night. One stylesheet: tokens, base, header and footer, home, Card Finder, product cards, shop and product
   pages, WooCommerce's cart, checkout and account pages, and the dark versions of the TechHauz plugins' page parts.
   Motion is gentle and switches off for visitors who ask for less motion. */

/* ── tokens ─────────────────────────────────────────────────────────────────────────────────────────────────── */
:root {
  --bg: #070b16;
  --bg-2: #0a1020;
  --surface: #0e1424;
  --surface-2: #121a2e;
  --surface-3: #18223a;
  --line: rgba(255, 255, 255, .08);
  --line-2: rgba(255, 255, 255, .15);
  --text: #ffffff;
  --text-2: #d6dcea;
  --soft: #b9c2d3;
  --mute: #a9b4c8;
  --accent: #1f63ed;           /* brand blue (logo, top half) */
  --accent-2: #3a78f2;
  --accent-soft: #7fa6ff;
  --accent-pale: #b3c9ff;
  --accent-glow: rgba(31, 99, 237, .45);
  --red: #e11d48;              /* brand red (logo, bottom half) */
  --red-soft: #fb7190;
  --ok: #3ddc97;
  --warn: #ffb547;
  --bad: #ff6b6b;
  --r-s: 12px;
  --r: 18px;
  --r-l: 26px;
  --wrap: 1200px;
  --gutter: 24px;
  --head-h: 76px;
  --ease: cubic-bezier(.22, .61, .36, 1);
  --font: 'Poppins', system-ui, -apple-system, 'Segoe UI', sans-serif;
  /* WooCommerce's own colour settings follow the Night colours (form fields, buttons, notices) */
  --wc-primary: var(--accent); --wc-primary-text: #fff; --wc-secondary: var(--surface-3); --wc-secondary-text: #fff;
  --wc-highlight: var(--ok); --wc-highligh-text: #06140d; --wc-content-bg: var(--surface); --wc-subtext: var(--mute);
  --wc-red: var(--bad); --wc-green: var(--ok); --wc-blue: var(--accent-soft); --wc-orange: var(--warn);
  --wc-form-color-background: var(--bg-2); --wc-form-color-text: #fff; --wc-form-border-color: var(--line-2);
  --wc-form-border-radius: 12px; --wc-form-border-width: 1px; --wc-separator-color: var(--line); --wc-card-border-radius: 18px;
  color-scheme: dark;
}
@media (max-width: 700px) { :root { --gutter: 16px; --head-h: 64px; } }

/* ── base ───────────────────────────────────────────────────────────────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-padding-top: calc(var(--head-h) + 12px); }
@media (prefers-reduced-motion: no-preference) { html { scroll-behavior: smooth; } }
body.thzn { overflow-wrap: break-word; margin: 0; background: var(--bg); color: var(--text-2); font: 400 16px/1.65 var(--font); -webkit-font-smoothing: antialiased; overflow-x: clip; }
/* base element styles weigh nothing (:where), so each part's own rule always wins over them */
:where(.thzn) img { max-width: 100%; height: auto; }
:where(.thzn) a { color: var(--accent-soft); text-decoration: none; transition: color .15s; }
:where(.thzn) a:where(:hover) { color: var(--accent-pale); }
:where(.thzn) :where(h1, h2, h3, h4) { color: var(--text); font-family: var(--font); line-height: 1.2; margin: 0 0 .5em; }
:where(.thzn) p { margin: 0 0 1em; }
:where(.thzn) :where(p, li, dd, blockquote) { overflow-wrap: anywhere; }
.thzn :focus-visible { outline: 3px solid rgba(127, 166, 255, .6); outline-offset: 2px; border-radius: 6px; }
.thzn ::selection { background: rgba(31, 99, 237, .45); color: #fff; }
.thzn-wrap { width: 100%; max-width: calc(var(--wrap) + var(--gutter) * 2); margin: 0 auto; padding: 0 var(--gutter); }
.thzn-main { display: block; min-height: 60vh; outline: none; }
.thzn-mute { color: var(--mute); }
.screen-reader-text, .thzn .screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }
.thzn-skip { position: absolute; left: 12px; top: -60px; z-index: 1000; padding: 10px 16px; border-radius: 10px; background: var(--accent); color: #fff !important; font-weight: 600; }
.thzn-skip:focus { top: 12px; }
.thzn-i { display: block; flex: none; }

/* ── buttons and fields ─────────────────────────────────────────────────────────────────────────────────────── */
.thzn-btn, .thzn .button, .thzn button.button, .thzn input[type="submit"], .thzn .wp-element-button, .thzn .wc-block-components-button:not(.is-link) {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; padding: 0 22px; border: 0; border-radius: 999px;
  background: var(--accent); color: #fff !important; font: 600 15px/1 var(--font); cursor: pointer; text-decoration: none;
  transition: background-color .15s, transform .15s var(--ease), box-shadow .2s;
}
.thzn .button:disabled, .thzn .button.disabled, .thzn button.button:disabled, .thzn input[type="submit"]:disabled { background: var(--surface-3) !important; color: var(--mute) !important; box-shadow: none !important; cursor: not-allowed; }
.thzn-btn:hover, .thzn .button:hover, .thzn button.button:hover, .thzn input[type="submit"]:hover, .thzn .wp-element-button:hover, .thzn .wc-block-components-button:not(.is-link):hover {
  background: var(--accent-2); color: #fff; box-shadow: 0 10px 30px -10px var(--accent-glow);
}
@media (prefers-reduced-motion: no-preference) {
  .thzn-btn:active, .thzn .button:active, .thzn button.button:active { transform: translateY(1px) scale(.98); }
}
.thzn .button.alt, .thzn button.button.alt { background: var(--accent); }
.thzn .button:disabled, .thzn .button.disabled, .thzn button.button:disabled { opacity: .5; cursor: not-allowed; box-shadow: none; }
.thzn input[type="text"], .thzn input[type="email"], .thzn input[type="tel"], .thzn input[type="password"], .thzn input[type="number"], .thzn input[type="search"], .thzn input[type="url"],
.thzn select, .thzn textarea, .thzn .select2-container--default .select2-selection--single, .thzn .input-text {
  width: 100%; min-height: 48px; padding: 11px 14px; border: 1px solid var(--line-2); border-radius: var(--r-s); background: var(--bg-2); color: var(--text); font: 400 15px/1.4 var(--font);
  transition: border-color .15s, box-shadow .15s;
}
.thzn textarea { min-height: 120px; }
/* every dropdown: one arrow, inside the box with room around it (the browser's own sat against the right edge) */
.thzn select:not([multiple]):not([size]) { -webkit-appearance: none; appearance: none; padding-right: 42px; cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239aa6bd' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 16px center; background-size: 14px 14px; }
.thzn select:not([multiple]):not([size]):hover { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E"); }
.thzn select::-ms-expand { display: none; }
.thzn select option { background: var(--bg-2); color: var(--text); }
.thzn input:focus, .thzn select:focus, .thzn textarea:focus, .thzn .input-text:focus { outline: none; border-color: var(--accent); box-shadow: 0 0 0 3px rgba(31, 99, 237, .25); }
.thzn input::placeholder, .thzn textarea::placeholder { color: #7f8aa0; }
.thzn input[readonly], .thzn input[disabled] { opacity: .75; cursor: not-allowed; }
.thzn label { color: var(--text-2); font-size: 14px; font-weight: 500; }
.thzn input[type="checkbox"], .thzn input[type="radio"] { accent-color: var(--accent); width: 18px; height: 18px; vertical-align: -3px; }
.thzn .select2-container--default .select2-selection--single .select2-selection__rendered { color: var(--text); line-height: 26px; padding: 0; }
.thzn .select2-container--default .select2-selection--single .select2-selection__arrow { height: 46px; }
.thzn .select2-dropdown { background: var(--surface-2); border-color: var(--line-2); color: var(--text); }
.thzn .select2-search--dropdown .select2-search__field { background: var(--bg-2); color: var(--text); border-color: var(--line-2); }
.thzn .select2-results__option--highlighted[aria-selected], .thzn .select2-results__option--highlighted[data-selected] { background: var(--accent) !important; }

/* ── header ─────────────────────────────────────────────────────────────────────────────────────────────────── */
/* the blur sits on a layer behind the header: a blur on the header itself would make it the frame of the phone menu
   (position: fixed inside it), squeezing the open menu to the header's height */
.thzn-head { position: sticky; top: 0; z-index: 100; isolation: isolate; border-bottom: 1px solid var(--line); transition: box-shadow .2s; }
.thzn-head::before { content: ""; position: absolute; inset: 0; z-index: -1; background: rgba(7, 11, 22, .82); -webkit-backdrop-filter: saturate(140%) blur(14px); backdrop-filter: saturate(140%) blur(14px); transition: background-color .2s; }
.admin-bar .thzn-head { top: 32px; }
@media (max-width: 782px) { .admin-bar .thzn-head { top: 0; } }
.thzn-head.is-scrolled { box-shadow: 0 10px 30px -18px rgba(0, 0, 0, .8); }
.thzn-head.is-scrolled::before, .thzn-nav-open .thzn-head::before { background: rgba(7, 11, 22, .96); }
.thzn-menu-more { display: none; }
@media (max-width: 1000px) { .thzn-menu-more { display: block; } .thzn-menu-more:first-of-type { margin-top: 12px; } .thzn-menu .thzn-menu-more a { color: var(--accent-soft); } }
.thzn-head-row { display: flex; align-items: center; gap: 28px; height: var(--head-h); }
.thzn-logo { display: inline-flex; align-items: center; flex: none; }
.thzn-logo .thzn-logo-img { display: block; width: auto; max-width: none; height: 36px; }
.thzn-logo .thzn-logo-icon { height: 40px; }
.thzn-foot .thzn-logo .thzn-logo-img { height: 40px; }
@media (max-width: 700px) { .thzn-head .thzn-logo .thzn-logo-img { height: 32px; } .thzn-head .thzn-logo .thzn-logo-icon { height: 34px; } }
@media (max-width: 360px) { .thzn-head .thzn-logo .thzn-logo-img { height: 28px; } }
.thzn-nav { flex: 1 1 auto; min-width: 0; }
.thzn-menu { list-style: none; margin: 0; padding: 0; display: flex; gap: 6px; flex-wrap: nowrap; overflow: hidden; }
.thzn-menu > li { position: relative; }
.thzn-menu a { display: block; padding: 10px 12px; border-radius: 10px; color: var(--text-2); font-size: 14.5px; font-weight: 500; white-space: nowrap; }
.thzn-menu a:hover, .thzn-menu .current-menu-item > a, .thzn-menu .current-menu-ancestor > a { color: #fff; background: rgba(255, 255, 255, .06); }
.thzn-menu .sub-menu { list-style: none; margin: 0; padding: 8px; position: absolute; top: 100%; left: 0; min-width: 220px; background: var(--surface-2); border: 1px solid var(--line); border-radius: 14px; box-shadow: 0 24px 60px -20px rgba(0, 0, 0, .8); opacity: 0; visibility: hidden; transform: translateY(6px); transition: opacity .15s, transform .15s, visibility .15s; }
.thzn-menu li:hover > .sub-menu, .thzn-menu li:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: none; }
.thzn-head-tools { display: flex; align-items: center; gap: 4px; margin-left: auto; }
.thzn-icon-btn { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 0; border-radius: 12px; background: transparent; color: var(--text) !important; cursor: pointer; transition: background-color .15s; }
.thzn-icon-btn:hover { background: rgba(255, 255, 255, .07); }
.thzn-cart-count { position: absolute; top: 4px; right: 3px; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 999px; background: var(--accent); color: #fff; font-size: 11px; font-weight: 700; line-height: 18px; text-align: center; }
.thzn-menu-btn { display: none; margin-left: -8px; }
@media (min-width: 1001px) and (max-width: 1320px) { .thzn-menu > li:nth-child(n+7) { display: none; } }
@media (min-width: 1001px) and (max-width: 1200px) { .thzn-menu > li:nth-child(n+6) { display: none; } }
@media (min-width: 1001px) and (max-width: 1100px) { .thzn-menu > li:nth-child(n+5) { display: none; } }
.thzn-search-panel { border-top: 1px solid var(--line); padding: 16px 0; background: rgba(10, 16, 32, .98); }
@media (prefers-reduced-motion: no-preference) { .thzn-search-panel:not([hidden]) { animation: thzn-drop .22s var(--ease); } }
@keyframes thzn-drop { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }
@media (max-width: 1000px) {
  .thzn-menu-btn { display: inline-flex; }
  .thzn-head-row { gap: 10px; }
  .thzn-nav { position: fixed; inset: var(--head-h) 0 0 0; z-index: 99; background: var(--bg); padding: 16px var(--gutter) 40px; overflow-y: auto; transform: translateX(-100%); visibility: hidden; transition: transform .25s var(--ease), visibility .25s; }
  .thzn-nav-open .thzn-nav { transform: none; visibility: visible; }
  .thzn-nav-open { overflow: hidden; }
  .thzn-menu { flex-direction: column; gap: 2px; }
  .thzn-menu a { padding: 14px 12px; font-size: 17px; border-bottom: 1px solid var(--line); border-radius: 0; }
  .thzn-menu .sub-menu { position: static; opacity: 1; visibility: visible; transform: none; box-shadow: none; border: 0; background: transparent; padding: 0 0 0 14px; }
}

/* ── search box ─────────────────────────────────────────────────────────────────────────────────────────────── */
.thzn-search { display: flex; align-items: center; gap: 10px; height: 60px; padding: 0 7px 0 20px; border-radius: 999px; background: rgba(255, 255, 255, .07); border: 1px solid var(--line-2); max-width: 640px; margin: 0 auto; transition: border-color .15s, box-shadow .2s, background-color .15s; }
.thzn-search:focus-within { border-color: rgba(127, 166, 255, .6); box-shadow: 0 0 0 4px rgba(31, 99, 237, .18); background: rgba(255, 255, 255, .09); }
.thzn-search-icon { color: var(--mute); display: flex; }
.thzn .thzn-search input[type="search"] { flex: 1 1 auto; min-width: 0; min-height: 0; height: 100%; padding: 0; border: 0; background: transparent; box-shadow: none; color: #fff; font: 500 16px var(--font); }
.thzn .thzn-search input[type="search"]::-webkit-search-cancel-button { filter: invert(1); }
.thzn-search .thzn-btn { min-height: 46px; }
@media (max-width: 560px) {
  .thzn-search .thzn-btn span { display: none; }
  .thzn-search { height: 56px; padding: 0 6px 0 18px; }
  /* a true circle, the same space above, below and to the right inside the bar (it was taller than wide: an oval) */
  .thzn .thzn-search .thzn-btn { flex: 0 0 44px; width: 44px; height: 44px; min-height: 0; padding: 0; border-radius: 50%; line-height: 0; align-self: center; }
  .thzn .thzn-search .thzn-btn .thzn-i { width: 20px; height: 20px; }
}
@media (min-width: 561px) { .thzn-search .thzn-btn .thzn-i { display: none; } }

/* ── sections (home) ────────────────────────────────────────────────────────────────────────────────────────── */
.thzn-sec { padding: 104px 0 0; }
.thzn-eyebrow { margin: 0; font-size: 13px; font-weight: 600; letter-spacing: 2px; text-transform: uppercase; color: var(--accent-soft); }
.thzn-h1 { font-size: clamp(30px, 4vw, 44px); font-weight: 700; letter-spacing: -.022em; }
.thzn-h2 { font-size: clamp(28px, 3.6vw, 44px); font-weight: 700; letter-spacing: -.025em; line-height: 1.1; margin: 10px 0 0; }
.thzn-h2-s { font-size: clamp(26px, 2.8vw, 36px); }
.thzn-sub { font-size: 16px; color: var(--mute); margin: 12px 0 0; line-height: 1.7; max-width: 760px; }
.thzn-two { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; }
@media (max-width: 900px) { .thzn-sec { padding-top: 72px; } .thzn-two { grid-template-columns: 1fr; gap: 40px; } }
@media (prefers-reduced-motion: no-preference) {
  .thzn-reveal.is-armed { opacity: 0; transform: translateY(26px); }
  .thzn-reveal.is-armed.is-in { opacity: 1; transform: none; transition: opacity .7s var(--ease), transform .7s var(--ease); }
}

/* hero */
.thzn-hero { position: relative; overflow: hidden; padding: 84px 0 0; text-align: center; isolation: isolate; }
.thzn-glow { position: absolute; left: 50%; border-radius: 50%; pointer-events: none; z-index: -1; transform: translateX(-50%); }
.thzn-glow-a { top: 360px; width: min(1100px, 140vw); height: 520px; background: radial-gradient(closest-side, rgba(31, 99, 237, .42), rgba(31, 99, 237, 0)); }
.thzn-glow-b { top: -300px; width: min(900px, 120vw); height: 600px; background: radial-gradient(closest-side, rgba(225, 29, 72, .2), rgba(225, 29, 72, 0)); }
@media (prefers-reduced-motion: no-preference) {
  .thzn-glow-a { animation: thzn-breathe 9s ease-in-out infinite; }
  .thzn-glow-b { animation: thzn-breathe 12s ease-in-out -4s infinite; }
}
@keyframes thzn-breathe { 0%, 100% { opacity: .85; transform: translateX(-50%) scale(1); } 50% { opacity: 1; transform: translateX(-50%) scale(1.06); } }
.thzn-hero-in { position: relative; }
.thzn-kicker { display: inline-flex; align-items: center; gap: 10px; margin: 0; padding: 8px 16px; border-radius: 999px; border: 1px solid rgba(127, 166, 255, .3); background: rgba(31, 99, 237, .08); color: var(--accent-pale); font-size: 14px; font-weight: 500; }
.thzn-hero-title { font-size: clamp(38px, 6.2vw, 76px); line-height: 1.04; font-weight: 700; letter-spacing: -.03em; max-width: 1040px; margin: 24px auto 0; }
.thzn-hero-sub { font-size: clamp(15px, 1.5vw, 19px); color: var(--soft); line-height: 1.65; max-width: 720px; margin: 22px auto 30px; }
.thzn-hero-trust { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 8px; margin: 18px 0 0; color: var(--mute); font-size: 14px; }
.thzn-hero-trust strong { color: #fff; font-weight: 600; }
.thzn-stars { display: inline-flex; gap: 2px; }
.thzn-stars svg.on { fill: #f5a623; }
.thzn-stars svg.off { fill: rgba(255, 255, 255, .2); }
@media (prefers-reduced-motion: no-preference) {
  .thzn-hero-in > * { animation: thzn-rise .8s var(--ease) both; }
  .thzn-hero-in > :nth-child(2) { animation-delay: .06s; }
  .thzn-hero-in > :nth-child(3) { animation-delay: .12s; }
  .thzn-hero-in > :nth-child(4) { animation-delay: .18s; }
  .thzn-hero-in > :nth-child(5) { animation-delay: .24s; }
}
@keyframes thzn-rise { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }

/* the hand of cards: fanned from the middle, always inside the screen, the same number of cards on each side */
.thzn-hand { --px: 0; --py: 0; --sp: min(140px, 9.5vw); --w: 320px; position: relative; height: 420px; margin-top: 18px; }
.thzn-hand-card { position: absolute; left: 50%; bottom: calc(72px - (var(--o) * var(--o)) * 7px); width: var(--w); margin-left: calc(var(--w) / -2); z-index: calc(10 - var(--o) * var(--o));
  transform: translateX(calc(var(--o) * var(--sp) + var(--px) * var(--o) * 6px)) translateY(calc(var(--py) * -6px)) rotate(var(--r)); transform-origin: 50% 100%;
  filter: drop-shadow(0 30px 40px rgba(0, 0, 0, .55)); transition: transform .5s var(--ease); }
.thzn-hand-card img { display: block; width: 100%; height: auto; }
@media (prefers-reduced-motion: no-preference) {
  .thzn-hand-card { animation: thzn-deal 1s var(--ease) var(--d) both; }
  .thzn-hand-card:hover { transform: translateX(calc(var(--o) * var(--sp))) translateY(-18px) rotate(calc(var(--r) * .6)); }
}
@keyframes thzn-deal { from { opacity: 0; transform: translateX(0) translateY(120px) rotate(0deg) scale(.9); } }
@media (max-width: 1200px) { .thzn-hand-card.is-o3 { display: none; } }
@media (max-width: 900px) { .thzn-hand { --w: 210px; --sp: min(84px, 15vw); height: 260px; } .thzn-hand-card { bottom: calc(40px - (var(--o) * var(--o)) * 6px); } }
@media (max-width: 560px) { .thzn-hand { --w: 180px; --sp: 26vw; height: 220px; } .thzn-hand-card.is-o2 { display: none; } }

/* ── Card Finder ────────────────────────────────────────────────────────────────────────────────────────────── */
.thzn-finder { margin-top: 32px; padding: 30px 32px 32px; border-radius: 28px; background: linear-gradient(180deg, var(--surface-2), var(--surface)); border: 1px solid var(--line); box-shadow: 0 40px 90px -40px rgba(0, 0, 0, .8); }
.thzn-finder-title { font-size: 22px; font-weight: 600; margin: 0 0 18px; }
.thzn-finder-step { display: flex; align-items: center; gap: 10px; margin: 22px 0 0; font-size: 13px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase; color: var(--mute); }
.thzn-finder-step:first-of-type, .thzn-finder-title + .thzn-finder-step { margin-top: 0; }
.thzn-step { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; border-radius: 50%; background: var(--accent); color: #fff; font-size: 12px; letter-spacing: 0; }
.thzn-chips { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 12px; min-height: 46px; }
.thzn-chip { display: inline-flex; align-items: center; gap: 9px; min-height: 46px; padding: 0 16px; border-radius: 14px; border: 1.5px solid var(--line-2); background: rgba(255, 255, 255, .03); color: var(--text); font: 500 15px var(--font); cursor: pointer; transition: border-color .15s, background-color .15s, transform .15s var(--ease), color .15s; }
.thzn-chip img { width: 22px; height: 16px; border-radius: 3px; box-shadow: 0 0 0 1px rgba(255, 255, 255, .15); }
.thzn-chip small { color: var(--mute); font-size: 12px; }
.thzn-chip:hover { border-color: rgba(127, 166, 255, .55); background: rgba(31, 99, 237, .08); }
.thzn-chip.is-on { border-color: var(--accent); background: rgba(31, 99, 237, .18); color: #fff; font-weight: 600; box-shadow: 0 0 0 3px rgba(31, 99, 237, .15); }
@media (prefers-reduced-motion: no-preference) { .thzn-chip:active { transform: scale(.96); } }
.thzn-values { display: grid; grid-template-columns: repeat(auto-fill, minmax(124px, 1fr)); gap: 10px; margin-top: 14px; min-height: 74px; }
.thzn-val { display: flex; flex-direction: column; justify-content: center; min-height: 74px; padding: 12px 15px; border-radius: 14px; background: rgba(255, 255, 255, .04); border: 1.5px solid var(--line-2); color: var(--text) !important; transition: border-color .15s, background-color .15s, transform .2s var(--ease), box-shadow .2s; }
.thzn-val strong { display: block; font-size: 18px; font-weight: 700; color: #fff; }
.thzn-val span { display: block; font-size: 13px; color: var(--accent-soft); font-weight: 600; margin-top: 2px; }
.thzn-val:hover { border-color: var(--accent); background: rgba(31, 99, 237, .12); transform: translateY(-2px); box-shadow: 0 14px 30px -18px var(--accent-glow); }
.thzn-val.is-out { opacity: .42; border-style: dashed; background: transparent; cursor: default; }
.thzn-val.is-out strong { color: var(--text-2); }
.thzn-val:not(.is-out) { border-color: rgba(127, 166, 255, .28); background: linear-gradient(180deg, rgba(31, 99, 237, .1), rgba(255, 255, 255, .03)); }
.thzn-val:not(.is-out) span { color: var(--accent-pale); }
.thzn a.thzn-finder-all { display: inline-flex; align-items: center; gap: 8px; margin-top: 18px; color: var(--accent-soft); font-weight: 600; font-size: 14.5px; }
.thzn a.thzn-finder-all span { transition: transform .2s var(--ease); }
.thzn a.thzn-finder-all:hover span { transform: translateX(4px); }
.thzn-chip-logo { display: inline-flex; flex: none; align-items: center; justify-content: center; width: 26px; height: 26px; margin-left: -7px; border-radius: 8px; background: linear-gradient(135deg, var(--b1, var(--accent)), var(--b3, #0b2a6b)); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25); }
.thzn-chip .thzn-chip-logo img { width: 15px; height: 15px; object-fit: contain; border-radius: 0; box-shadow: none; }
.thzn-chip .thzn-chip-logo img.is-wide { width: 20px; height: 12px; }
.thzn-chip .thzn-chip-logo:has(img.is-wide) { width: 34px; }
/* many brands or countries: "+N more", a scrolling box when opened, a Find a brand box; phones: a two-row strip to swipe */
.thzn-chip { min-height: 42px; padding: 0 14px; font-size: 14.5px; border-radius: 13px; }
.thzn .thzn-chip-more { border-style: dashed; color: var(--accent-pale); font-weight: 600; background: transparent; }
.thzn .thzn-chip-more:hover { border-style: solid; }
.thzn-chips.is-open { max-height: 312px; overflow-y: auto; overscroll-behavior: contain; padding: 2px 6px 2px 2px; margin-right: -6px; scrollbar-width: thin; scrollbar-color: rgba(255, 255, 255, .2) transparent; }
.thzn-chips-none { margin: 10px 2px 0 !important; color: var(--mute); font-size: 14px; }
.thzn-finder-search { position: relative; margin-left: auto; flex: 0 1 240px; min-width: 0; }
.thzn-finder-search::before { content: ""; position: absolute; left: 12px; top: 50%; width: 15px; height: 15px; margin-top: -7.5px; background: var(--mute); pointer-events: none;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5'/%3E%3C/svg%3E") center / contain no-repeat; }
.thzn .thzn-finder-search input { width: 100%; height: 36px; margin: 0; padding: 0 12px 0 34px; border-radius: 999px; border: 1px solid var(--line-2); background: rgba(255, 255, 255, .04); color: #fff; font: 500 14px var(--font); letter-spacing: 0; text-transform: none; box-shadow: none; }
.thzn .thzn-finder-search input:focus { outline: none; border-color: var(--accent); background: rgba(31, 99, 237, .08); }
.thzn .thzn-finder-search input::placeholder { color: var(--mute); }
@media (max-width: 700px) {
  .thzn-chip { min-height: 40px; padding: 0 12px; font-size: 14px; gap: 8px; }
  .thzn-finder-search { flex: 1 1 auto; max-width: 200px; }
  .thzn-chips[data-finder="brands"]:not(.is-open) { display: grid; grid-auto-flow: column; grid-template-rows: repeat(2, auto); grid-auto-columns: max-content; gap: 8px; overflow-x: auto; scrollbar-width: none; margin-left: -16px; margin-right: -16px; padding: 2px 16px 6px; scroll-padding-inline: 16px;
    -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 36px), transparent); mask-image: linear-gradient(90deg, #000 calc(100% - 36px), transparent); }
  .thzn-chips[data-finder="brands"]::-webkit-scrollbar { display: none; }
  .thzn-chips[data-finder="brands"] .thzn-chip { flex: none; }
  .thzn-chips[data-finder="countries"] { gap: 8px; }
}
.thzn-val.is-out span { color: var(--mute); font-weight: 500; }
.thzn-val-all { border-style: dashed; }
.thzn-val-all span { color: var(--mute); }
@media (prefers-reduced-motion: no-preference) {
  .thzn-values.is-in .thzn-val { animation: thzn-pop .35s var(--ease) both; }
  .thzn-values.is-in .thzn-val:nth-child(2) { animation-delay: .03s; } .thzn-values.is-in .thzn-val:nth-child(3) { animation-delay: .06s; }
  .thzn-values.is-in .thzn-val:nth-child(4) { animation-delay: .09s; } .thzn-values.is-in .thzn-val:nth-child(n+5) { animation-delay: .12s; }
}
@keyframes thzn-pop { from { opacity: 0; transform: translateY(8px) scale(.98); } to { opacity: 1; transform: none; } }
@media (max-width: 700px) { .thzn-finder { padding: 20px 16px; border-radius: 22px; } .thzn-values { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* ── brand tiles ────────────────────────────────────────────────────────────────────────────────────────────── */
.thzn-bento { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-top: 36px; }
.thzn-tile { position: relative; overflow: hidden; display: flex; flex-direction: column; min-height: 250px; padding: 28px; border-radius: var(--r-l); background: var(--surface); border: 1px solid var(--line); color: var(--text) !important; isolation: isolate; transition: border-color .2s, transform .3s var(--ease), box-shadow .3s; }
.thzn-tile::after { content: ""; position: absolute; inset: 0; z-index: -2; background: radial-gradient(420px circle at 85% 110%, color-mix(in srgb, var(--b1, var(--accent)) 38%, transparent), transparent 62%); opacity: .7; transition: opacity .3s; }
.thzn-tile:hover { border-color: color-mix(in srgb, var(--b1, var(--accent)) 55%, transparent); transform: translateY(-4px); box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .9); }
.thzn-tile:hover::after { opacity: 1; }
.thzn-tile-img { position: absolute; right: -54px; bottom: -44px; width: 220px; height: auto; transform: rotate(-10deg); filter: drop-shadow(0 20px 30px rgba(0, 0, 0, .5)); transition: transform .5s var(--ease); z-index: -1; opacity: .95; }
.thzn-tile:hover .thzn-tile-img { transform: rotate(-6deg) translate(-8px, -10px); }
.thzn-tile-text { position: relative; max-width: 250px; }
.thzn-tile h3, .thzn-tile h2 { font-size: 22px; font-weight: 600; line-height: 1.2; margin: 0; }
.thzn-tile-p { font-size: 14px; color: var(--mute); margin: 6px 0 0; line-height: 1.55; }
.thzn-tile-n { position: relative; z-index: 1; align-self: flex-start; margin-top: auto; display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border-radius: 999px; background: rgba(7, 11, 22, .82); border: 1px solid var(--line-2); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); font-size: 13.5px; color: #fff; font-weight: 600; }
.thzn-tile:hover .thzn-tile-n { border-color: color-mix(in srgb, var(--b1, var(--accent)) 60%, transparent); }
.thzn-bento-all .thzn-tile { min-height: 230px; }
.thzn-bento-all .thzn-tile-img { width: 180px; right: -46px; bottom: -40px; }
.thzn-more-brands { display: flex; flex-wrap: wrap; gap: 10px; margin: 22px 0 0; }
.thzn-more-brands a { padding: 8px 16px; border-radius: 999px; border: 1px solid var(--line-2); color: var(--text-2); font-size: 14.5px; font-weight: 500; }
.thzn-more-brands a:hover { border-color: var(--accent); color: #fff; }
@media (min-width: 1101px) { .thzn-bento-all { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 900px) { .thzn-bento { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .thzn-bento { grid-template-columns: 1fr; gap: 12px; } .thzn-tile { min-height: 190px; padding: 22px; } .thzn-tile-img { width: 180px; } }

/* ── product cards and grids ────────────────────────────────────────────────────────────────────────────────── */
.thzn-grid, .thzn ul.products { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin: 36px 0 0 !important; padding: 0 !important; list-style: none; }
.thzn ul.products::before, .thzn ul.products::after { display: none !important; }
.thzn ul.products li.product, .thzn ul.products li.thzn-li { width: auto !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.thzn-prod { height: 100%; display: flex; flex-direction: column; padding: 16px 16px 18px; border-radius: 22px; background: var(--surface); border: 1px solid var(--line); transition: border-color .2s, transform .3s var(--ease), box-shadow .3s; }
.thzn-prod:hover { border-color: rgba(127, 166, 255, .3); transform: translateY(-3px); box-shadow: 0 24px 50px -28px rgba(0, 0, 0, .9); }
.thzn-prod-link { display: block; color: var(--text) !important; }
.thzn-card-img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; object-position: 50% 52%; border-radius: 14px; transition: transform .45s var(--ease); }
.thzn-prod:hover .thzn-card-img { transform: scale(1.035) rotate(-1deg); }
.thzn .thzn-prod-title { font-size: 16px; font-weight: 600; margin: 8px 0 0; line-height: 1.35; color: var(--text); }
.thzn-prod-sub { display: flex; align-items: center; gap: 7px; margin: 4px 0 0; font-size: 13px; color: var(--mute); }
.thzn-prod-sub .thzn-flag { width: 18px; height: 13px; border-radius: 2px; }
.thzn-prod-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: auto; padding-top: 14px; }
.thzn-prod-price { font-size: 19px; font-weight: 700; color: #fff; }
.thzn-prod-price del { font-size: 13px; color: var(--mute); font-weight: 500; margin-left: 6px; }
.thzn-prod-price ins { text-decoration: none; }
.thzn a.thzn-add { display: inline-flex; align-items: center; gap: 6px; height: 38px; padding: 0 14px; border-radius: 999px; background: rgba(31, 99, 237, .18); color: var(--accent-pale); font-weight: 600; font-size: 14px; transition: background-color .15s, color .15s; }
.thzn a.thzn-add:hover { background: var(--accent); color: #fff; }
.thzn a.thzn-add.loading { opacity: .6; pointer-events: none; }
.thzn a.thzn-add { flex: none; white-space: nowrap; }
/* a card's Add once it worked: the same button, green, a tick in place of the bag ("Added" where the label shows) */
.thzn a.thzn-add.added { background: rgba(34, 197, 94, .16); color: #4ade80; }
.thzn a.thzn-add.added:hover { background: #22c55e; color: #fff; }
.thzn a.thzn-add.added > svg { display: none; }
.thzn a.thzn-add.added::before { content: ""; flex: none; width: 17px; height: 17px; background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / contain no-repeat; }
.thzn a.thzn-add.added span { font-size: 0; }
.thzn a.thzn-add.added span::after { content: "Added"; font-size: 14px; }
@media (prefers-reduced-motion: no-preference) { .thzn a.thzn-add.added::before { animation: thzn-cart-pop .35s var(--ease) both; } }
/* after adding, WooCommerce puts a "View cart" link next to the button: a round cart button here, text kept for screen readers */
.thzn-prod-row .thzn-prod-price { margin-right: auto; }
.thzn .thzn-prod-row a.added_to_cart { display: inline-flex; flex: none; align-items: center; justify-content: center; width: 38px; height: 38px; margin: 0; padding: 0; border-radius: 999px; background: var(--accent); color: #fff; font-size: 0; line-height: 0; box-shadow: 0 8px 20px -8px var(--accent); animation: thzn-cart-pop .35s var(--ease); }
.thzn .thzn-prod-row a.added_to_cart::before { content: ""; width: 18px; height: 18px; background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='20' r='1.4'/%3E%3Ccircle cx='18' cy='20' r='1.4'/%3E%3Cpath d='M2.5 3.5h2.3l2.5 11.6a1 1 0 0 0 1 .8h9.4a1 1 0 0 0 1-.8L20.5 7.5H6'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='20' r='1.4'/%3E%3Ccircle cx='18' cy='20' r='1.4'/%3E%3Cpath d='M2.5 3.5h2.3l2.5 11.6a1 1 0 0 0 1 .8h9.4a1 1 0 0 0 1-.8L20.5 7.5H6'/%3E%3C/svg%3E") center / contain no-repeat; }
.thzn .thzn-prod-row a.added_to_cart:hover { background: var(--accent-2, #3b7bff); }
.thzn a.added_to_cart { display: none; }   /* anywhere else (WooCommerce's own rule is .woocommerce a.added_to_cart) */
@keyframes thzn-cart-pop { from { transform: scale(.4); opacity: 0; } 70% { transform: scale(1.12); opacity: 1; } to { transform: scale(1); } }
@media (prefers-reduced-motion: reduce) { .thzn .thzn-prod-row a.added_to_cart { animation: none; } }
.thzn-out { font-size: 13px; color: var(--mute); }
.thzn-prod.is-out { opacity: .7; }
@media (max-width: 1000px) { .thzn-grid, .thzn ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 700px) { .thzn-grid, .thzn ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; } .thzn-prod { padding: 10px 10px 12px; border-radius: 16px; } .thzn .thzn-prod-title { font-size: 14px; } .thzn-prod-price { font-size: 16px; } .thzn a.thzn-add span { display: none; } .thzn a.thzn-add { width: 38px; padding: 0; justify-content: center; } }

/* ── countries, stats, questions, guides ────────────────────────────────────────────────────────────────────── */
.thzn-countries { display: grid; grid-template-columns: repeat(auto-fill, minmax(168px, 1fr)); gap: 10px; margin-top: 26px; }
.thzn-country { display: flex; align-items: center; gap: 10px; min-width: 0; min-height: 48px; padding: 0 14px 0 12px; border-radius: 14px; background: var(--surface); border: 1px solid var(--line-2); color: #fff !important; font-size: 15px; font-weight: 600; transition: border-color .15s, background-color .15s, transform .2s var(--ease); }
.thzn-country:hover { border-color: var(--accent); background: rgba(31, 99, 237, .1); transform: translateY(-2px); }
.thzn-country .thzn-flag { flex: none; width: 24px; height: 18px; border-radius: 3px; box-shadow: 0 0 0 1px rgba(255, 255, 255, .14); }
.thzn-country-globe { flex: none; display: flex; width: 24px; justify-content: center; color: var(--accent-soft); }
.thzn-country > span:not(.thzn-country-globe) { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.thzn-country em { margin-left: auto; flex: none; padding: 2px 8px; border-radius: 999px; background: rgba(255, 255, 255, .06); font-style: normal; color: var(--text-2); font-size: 12px; font-weight: 600; }
.thzn-country.is-all { border-style: dashed; color: var(--accent-pale) !important; }
@media (max-width: 480px) { .thzn-countries { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; } .thzn-country { min-height: 44px; font-size: 14px; padding: 0 10px; gap: 8px; } .thzn-country em { padding: 1px 6px; font-size: 11.5px; } }
.thzn-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin-top: 36px; }
.thzn-stat { border-radius: 24px; padding: 30px 28px; background: linear-gradient(180deg, #0f1730, #0b1122); border: 1px solid var(--line); }
.thzn-stat strong { display: block; font-size: 44px; font-weight: 700; letter-spacing: -1px; color: #fff; line-height: 1.1; }
.thzn-stat small { font-size: 20px; color: var(--mute); font-weight: 600; }
.thzn-stat span { display: block; font-size: 14px; color: var(--mute); margin-top: 8px; line-height: 1.55; }
@media (max-width: 900px) { .thzn-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; } .thzn-stat { padding: 22px 18px; } .thzn-stat strong { font-size: 32px; } }
.thzn-faq { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 22px; margin-top: 34px; align-items: start; }
.thzn-faq details { border-radius: 20px; background: var(--surface); border: 1px solid var(--line); padding: 20px 24px; transition: border-color .2s; }
.thzn-faq details[open] { border-color: rgba(127, 166, 255, .25); }
.thzn-faq summary { list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 14px; font-size: 16.5px; font-weight: 600; color: #fff; cursor: pointer; }
.thzn-faq summary::-webkit-details-marker { display: none; }
.thzn-faq summary .thzn-i { color: var(--accent-soft); transition: transform .25s var(--ease); }
.thzn-faq details[open] summary .thzn-i { transform: rotate(180deg); }
.thzn-faq p { font-size: 14.5px; color: var(--soft); line-height: 1.75; margin: 10px 0 0; }
@media (max-width: 800px) { .thzn-faq { grid-template-columns: 1fr; } }
.thzn-guides { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }
.thzn-guide { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 18px; border-radius: 999px; border: 1px solid var(--line-2); color: var(--text-2) !important; font-size: 14.5px; font-weight: 500; transition: border-color .15s, background-color .15s; }
.thzn-guide:hover { border-color: var(--accent); background: rgba(31, 99, 237, .08); }
.thzn-guide-all { background: var(--accent); border-color: var(--accent); color: #fff !important; }
.thzn-guide-all:hover { background: var(--accent-2); }

/* ── footer ─────────────────────────────────────────────────────────────────────────────────────────────────── */
.thzn-foot { margin-top: 120px; border-top: 1px solid var(--line); padding: 56px 0 36px; color: var(--mute); background: linear-gradient(180deg, transparent, rgba(31, 99, 237, .04)); }
.thzn-foot-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 40px; }
.thzn-foot-about p { margin: 14px 0 0; font-size: 14px; line-height: 1.7; max-width: 320px; }
.thzn-foot-trust { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.thzn-foot-col h2 { color: #fff; font-size: 15px; margin: 0 0 12px; }
.thzn-foot-col ul { list-style: none; margin: 0; padding: 0; }
.thzn-foot-col a { color: var(--mute); display: inline-block; font-size: 14px; line-height: 2.1; }
.thzn-foot-col a:hover { color: #fff; }
.thzn-foot-legal { margin: 36px 0 0; padding-top: 22px; border-top: 1px solid var(--line); font-size: 13px; }
@media (max-width: 800px) { .thzn-foot { margin-top: 72px; } .thzn-foot-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; } .thzn-foot-about { grid-column: 1 / -1; } }

/* ── pages ──────────────────────────────────────────────────────────────────────────────────────────────────── */
.thzn-page { padding-top: 48px; }
.thzn-page-head { margin-bottom: 24px; }
.thzn-page-search { margin-top: 20px; max-width: 640px; }
.thzn-page-search .thzn-search { margin: 0; }
.thzn-content { color: var(--text-2); }
.thzn-content > *:first-child { margin-top: 0; }
.thzn-content table { width: 100%; border-collapse: collapse; }
.thzn-content th, .thzn-content td { padding: 10px 12px; border-bottom: 1px solid var(--line); text-align: left; }
.thzn-content blockquote { margin: 1.5em 0; padding: 4px 0 4px 18px; border-left: 3px solid var(--accent); color: var(--soft); }
/* 404: a game's "level not found" screen */
.thzn-404 { position: relative; text-align: center; padding-top: 56px; padding-bottom: 40px; overflow: hidden; }
.thzn-404::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; opacity: .5;
  background: radial-gradient(60% 45% at 50% 22%, rgba(31, 99, 237, .35), transparent 70%), radial-gradient(40% 30% at 70% 30%, rgba(225, 29, 72, .18), transparent 70%),
    repeating-linear-gradient(0deg, rgba(255, 255, 255, .03) 0 1px, transparent 1px 4px); }
.thzn-404 .thzn-sub, .thzn-404 .thzn-page-search { margin-left: auto; margin-right: auto; }
.thzn-404-hud { display: inline-flex; gap: 18px; padding: 7px 16px; border: 1px solid var(--line-2); border-radius: 999px; background: rgba(7, 11, 22, .6); color: var(--soft); font: 700 11.5px/1 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: 2px; text-transform: uppercase; }
.thzn-404-lives { color: #ff5a7a; letter-spacing: 4px; }
.thzn-404-code { position: relative; display: inline-block; margin: 18px 0 4px; font: 900 clamp(110px, 22vw, 220px)/.9 var(--font); letter-spacing: -.06em;
  background: linear-gradient(180deg, #fff 10%, #9cc0ff 55%, #1f63ed 100%); -webkit-background-clip: text; background-clip: text; color: transparent; filter: drop-shadow(0 18px 50px rgba(31, 99, 237, .55)); }
.thzn-404-code::before, .thzn-404-code::after { content: attr(data-code); position: absolute; inset: 0; background: inherit; -webkit-background-clip: text; background-clip: text; color: transparent; }
.thzn-404-code::before { transform: translate(-4px, 0); opacity: .55; background: linear-gradient(180deg, #ff2e63, #ff2e63); -webkit-background-clip: text; background-clip: text; clip-path: inset(18% 0 58% 0); }
.thzn-404-code::after { transform: translate(4px, 0); opacity: .55; background: linear-gradient(180deg, #08d9d6, #08d9d6); -webkit-background-clip: text; background-clip: text; clip-path: inset(62% 0 12% 0); }
@media (prefers-reduced-motion: no-preference) {
  .thzn-404-code::before { animation: thzn-glitch-a 2.6s steps(2) infinite; }
  .thzn-404-code::after { animation: thzn-glitch-b 3.1s steps(2) infinite; }
  .thzn-404-press { animation: thzn-blink 1.2s steps(2, start) infinite; }
}
@keyframes thzn-glitch-a { 0%, 88%, 100% { transform: translate(-4px, 0); clip-path: inset(18% 0 58% 0); } 90% { transform: translate(-10px, -2px); clip-path: inset(40% 0 35% 0); } 94% { transform: translate(6px, 2px); clip-path: inset(10% 0 80% 0); } }
@keyframes thzn-glitch-b { 0%, 84%, 100% { transform: translate(4px, 0); clip-path: inset(62% 0 12% 0); } 87% { transform: translate(10px, 1px); clip-path: inset(70% 0 5% 0); } 92% { transform: translate(-6px, -1px); clip-path: inset(50% 0 30% 0); } }
@keyframes thzn-blink { to { visibility: hidden; } }
.thzn-404-cta { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin: 22px 0 0; }
.thzn-404-press { margin: 22px 0 0 !important; color: var(--accent-pale); font: 700 12px/1 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: 3px; text-transform: uppercase; }
.thzn-404-brands { margin: 46px auto 0; max-width: 980px; text-align: left; }
.thzn-404-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; margin-top: 12px; }
@media (max-width: 600px) { .thzn-404-hud { gap: 10px; font-size: 10px; letter-spacing: 1px; } .thzn-404-grid { grid-template-columns: 1fr 1fr; } .thzn-404-cta .thzn-btn { flex: 1 1 100%; } }
.thzn-posts { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 18px; }
.thzn-post-card { padding: 24px; border-radius: var(--r); background: var(--surface); border: 1px solid var(--line); }
.thzn-post-card h2 { font-size: 19px; }
.thzn-search-sub { font-size: 22px; margin: 48px 0 18px !important; }
.thzn-page .thzn-grid + .thzn-posts { margin-top: 0; }
.thzn .nav-links, .thzn .woocommerce-pagination ul { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin: 40px 0 0; padding: 0; list-style: none; border: 0 !important; }
.thzn .nav-links .page-numbers, .thzn .woocommerce-pagination .page-numbers li { border: 0 !important; }
.thzn .nav-links a, .thzn .nav-links span, .thzn .woocommerce-pagination a.page-numbers, .thzn .woocommerce-pagination span.page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; height: 44px; padding: 0 12px; border-radius: 12px; border: 1px solid var(--line-2) !important; background: var(--surface) !important; color: var(--text-2) !important; }
.thzn .woocommerce-pagination span.current, .thzn .nav-links .current { background: var(--accent) !important; border-color: var(--accent) !important; color: #fff !important; }

/* ── shop, brand and category pages ─────────────────────────────────────────────────────────────────────────── */
.thzn-shop { padding-top: 28px; }
/* the breadcrumb (one for every page): links in the link blue, the current page in plain text, › between */
.thzn-crumbs { font-size: 13.5px; color: var(--mute); margin-bottom: 18px; }
.thzn-crumbs p, .thzn-crumbs nav { display: flex; flex-wrap: wrap; align-items: center; margin: 0 !important; }
.thzn .thzn-crumbs a { color: var(--accent-pale); text-decoration: none; transition: color .15s; }
.thzn .thzn-crumbs a:hover { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.thzn-crumbs .separator { font-size: 0; margin: 0 8px; }
.thzn-crumbs .separator::before { content: "›"; font-size: 15px; line-height: 1; color: var(--mute); }
.thzn-crumbs .last { color: var(--text-2); }
.thzn-shop-head { margin-bottom: 8px; }
.thzn-shop-head .term-description { color: var(--soft); max-width: 820px; }
.thzn-shop-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin-top: 30px; }
.thzn .woocommerce-result-count { margin: 0; color: var(--mute); font-size: 14px; }
.thzn .woocommerce-ordering { margin: 0; }
.thzn .woocommerce-ordering select { width: auto; min-width: 220px; min-height: 44px; border-radius: 999px; padding: 0 44px 0 18px; background-position: right 18px center; }
.thzn-shop-bar > .woocommerce-notices-wrapper:empty { display: none; }   /* an empty notices box pushed the result count to the middle */
.thzn-shop-bar > .woocommerce-notices-wrapper { flex: 1 1 100%; }
.thzn-shop-bar .woocommerce-result-count { margin-right: auto; }
.thzn .woocommerce-info, .thzn .woocommerce-message, .thzn .woocommerce-error, .thzn .wc-block-components-notice-banner {
  margin: 0 0 20px; padding: 14px 18px 14px 18px; border-radius: 14px; border: 1px solid var(--line-2); border-left-width: 1px; background: var(--surface-2); color: var(--text-2); list-style: none;
}
.thzn .woocommerce-message { border-color: rgba(61, 220, 151, .35); }
.thzn .woocommerce-error { border-color: rgba(255, 107, 107, .45); }
.thzn .woocommerce-info::before, .thzn .woocommerce-message::before, .thzn .woocommerce-error::before { display: none; }
.thzn .woocommerce-message .button, .thzn .woocommerce-info .button { float: right; min-height: 38px; margin-left: 12px; }

/* ── product page ───────────────────────────────────────────────────────────────────────────────────────────── */
.thzn div.product { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; align-items: start; margin-top: 8px; }
.thzn div.product > .woocommerce-product-gallery, .thzn div.product > .summary { width: auto !important; float: none !important; margin: 0 !important; }
.thzn div.product > .woocommerce-tabs, .thzn div.product > .related, .thzn div.product > .upsells, .thzn div.product > section { grid-column: 1 / -1; }
.thzn .woocommerce-product-gallery { position: relative !important; opacity: 1 !important; padding: 28px; border-radius: 28px; background: radial-gradient(80% 80% at 50% 45%, rgba(31, 99, 237, .18), transparent 70%), var(--surface); border: 1px solid var(--line); }
.thzn .woocommerce-product-gallery img { border-radius: 14px; filter: drop-shadow(0 30px 40px rgba(0, 0, 0, .55)); }
.thzn .woocommerce-product-gallery__trigger { background: var(--surface-3) !important; border-radius: 12px !important; }
.thzn .flex-control-thumbs { display: flex; gap: 8px; margin-top: 12px !important; }
.thzn .flex-control-thumbs li { width: 64px !important; }
.thzn .summary .product_title { font-size: clamp(26px, 3vw, 38px); font-weight: 700; letter-spacing: -.8px; margin: 0 0 10px; }
.thzn .summary .price { display: block; font-size: 30px; font-weight: 700; color: #fff !important; margin: 0 0 16px; }
.thzn .summary .price del { font-size: 18px; color: var(--mute); margin-left: 8px; }
.thzn .summary .price ins { text-decoration: none; }
.thzn .summary .woocommerce-product-details__short-description { color: var(--soft); }
.thzn .summary .stock { font-weight: 600; margin: 0 0 12px; }
.thzn .summary .stock.in-stock { color: var(--ok); }
.thzn .summary .stock.out-of-stock { color: var(--bad); }
.thzn .summary form.cart { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 18px 0 8px; }
.thzn .summary form.cart .quantity { margin: 0 !important; }
.thzn .quantity .qty { width: 84px; min-height: 52px; text-align: center; border-radius: 999px; }
.thzn .summary .single_add_to_cart_button { min-height: 52px; padding: 0 30px; font-size: 16px; flex: 1 1 200px; }
.thzn .summary .product_meta { margin-top: 18px; font-size: 13.5px; color: var(--mute); display: flex; flex-direction: column; gap: 4px; }
.thzn .summary .product_meta a { color: var(--soft); }
.thzn .summary .thz-denoms { margin: 20px 0 6px; }
@media (max-width: 900px) {
  .thzn div.product { grid-template-columns: 1fr; gap: 24px; }
  .thzn .woocommerce-product-gallery { padding: 18px; }
}
.thzn .woocommerce-tabs { margin-top: 56px; }
.thzn .woocommerce-tabs ul.tabs { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 24px !important; padding: 0 !important; list-style: none; border: 0 !important; }
.thzn .woocommerce-tabs ul.tabs::before, .thzn .woocommerce-tabs ul.tabs li::before, .thzn .woocommerce-tabs ul.tabs li::after { display: none !important; }
.thzn .woocommerce-tabs ul.tabs li { margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; border-radius: 0 !important; }
.thzn .woocommerce-tabs ul.tabs li a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 18px !important; border-radius: 999px; border: 1px solid var(--line-2); color: var(--text-2) !important; font-weight: 500; }
.thzn .woocommerce-tabs ul.tabs li.active a { background: var(--accent); border-color: var(--accent); color: #fff !important; }
.thzn .woocommerce-Tabs-panel > h2:first-child { display: none; }
.thzn .related > h2, .thzn .upsells > h2 { font-size: clamp(24px, 2.6vw, 32px); margin-top: 64px; }
.thzn #reviews .commentlist { list-style: none; padding: 0; }
.thzn #reviews .comment_container { padding: 18px; border-radius: 16px; background: var(--surface); border: 1px solid var(--line); margin-bottom: 12px; }
.thzn #reviews .star-rating span::before, .thzn .star-rating span::before { color: #f5a623; }
.thzn #review_form_wrapper { margin-top: 20px; }

/* ── cart, checkout, order and account (WooCommerce's own structure, dark) ────────────────────────────────── */
.thzn-page-wc .thzn-content { max-width: 1100px; }
.thzn.woocommerce-account .thzn-page-wc .thzn-content { max-width: none; }
.thzn table.shop_table, .thzn .woocommerce-table { width: 100%; border: 1px solid var(--line) !important; border-radius: 18px; border-collapse: separate !important; border-spacing: 0; overflow: hidden; background: var(--surface); }
.thzn table.shop_table th, .thzn table.shop_table td, .thzn .woocommerce-table th, .thzn .woocommerce-table td { padding: 14px 16px !important; border: 0 !important; border-top: 1px solid var(--line) !important; color: var(--text-2); vertical-align: middle; }
.thzn table.shop_table thead th, .thzn .woocommerce-table thead th { border-top: 0 !important; background: var(--surface-2); color: #fff; font-size: 13.5px; font-weight: 600; }
.thzn table.shop_table .product-thumbnail img { width: 64px; border-radius: 10px; }
.thzn table.shop_table .product-name a { color: #fff; font-weight: 500; }
.thzn table.shop_table .product-remove a.remove { color: var(--bad) !important; font-size: 22px; }
.thzn table.shop_table .product-remove a.remove:hover { background: rgba(255, 107, 107, .12); }
.thzn table.shop_table td.actions .coupon { display: flex; gap: 8px; flex-wrap: wrap; }
.thzn table.shop_table td.actions .coupon .input-text { width: 200px; }
.thzn .cart-collaterals .cart_totals, .thzn .woocommerce-checkout-review-order, .thzn #order_review { padding: 24px; border-radius: 22px; background: var(--surface); border: 1px solid var(--line); }
.thzn .cart-collaterals .cart_totals h2 { font-size: 22px; }
.thzn .cart-collaterals .cart_totals table.shop_table { background: transparent; border: 0 !important; }
.thzn .wc-proceed-to-checkout .checkout-button { width: 100%; min-height: 54px; font-size: 16px; }
.thzn form.checkout { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 32px; align-items: start; }
.thzn form.checkout > .woocommerce-NoticeGroup, .thzn form.checkout > .woocommerce-notices-wrapper { grid-column: 1 / -1; }
.thzn form.checkout #customer_details { width: auto; }
.thzn form.checkout #customer_details .col-1, .thzn form.checkout #customer_details .col-2 { width: 100%; float: none; }
.thzn form.checkout #order_review_heading { display: none; }
.thzn #order_review { position: sticky; top: calc(var(--head-h) + 20px); }
.thzn .woocommerce-billing-fields, .thzn .woocommerce-additional-fields, .thzn .woocommerce-shipping-fields { padding: 24px; border-radius: 22px; background: var(--surface); border: 1px solid var(--line); margin-bottom: 18px; }
.thzn .woocommerce-billing-fields h3, .thzn .woocommerce-additional-fields h3 { font-size: 20px; }
.thzn .form-row { margin: 0 0 14px; padding: 0; }
.thzn .form-row label { display: block; margin-bottom: 6px; }
.thzn .form-row .required { color: var(--bad); text-decoration: none; }
.thzn #payment { background: transparent !important; border-radius: 0; }
.thzn #payment ul.payment_methods { padding: 0 !important; border: 0 !important; margin: 0 0 16px; }
.thzn #payment ul.payment_methods li { list-style: none; padding: 14px 16px; border: 1px solid var(--line-2); border-radius: 14px; margin: 0 0 10px; background: var(--bg-2); }
.thzn #payment ul.payment_methods li label { color: #fff; font-weight: 600; }
.thzn #payment div.payment_box { background: var(--surface-2) !important; color: var(--text-2) !important; border-radius: 12px; margin: 12px 0 0 !important; }
.thzn #payment div.payment_box::before { display: none !important; }
.thzn #payment .place-order { padding: 0 !important; }
.thzn #place_order { width: 100%; min-height: 56px; font-size: 17px; }
.thzn .woocommerce-terms-and-conditions-wrapper { color: var(--soft); font-size: 14px; }
.thzn .woocommerce-privacy-policy-text { color: var(--mute); font-size: 13px; }
@media (max-width: 900px) { .thzn form.checkout { grid-template-columns: 1fr; } .thzn #order_review { position: static; } }
.thzn .woocommerce-order-overview { display: flex; flex-wrap: wrap; gap: 12px; padding: 0 !important; list-style: none; margin: 0 0 28px !important; }
.thzn .woocommerce-order-overview li { flex: 1 1 180px; padding: 16px 18px !important; margin: 0 !important; border: 1px solid var(--line) !important; border-radius: 16px; background: var(--surface); color: var(--mute); font-size: 12px !important; text-transform: uppercase; letter-spacing: 1px; }
.thzn .woocommerce-order-overview li strong { display: block; margin-top: 6px; color: #fff; font-size: 16px; text-transform: none; letter-spacing: 0; }
.thzn .woocommerce-thankyou-order-received { font-size: 20px; color: var(--ok); font-weight: 600; }
.thzn .woocommerce-customer-details address { padding: 20px; border-radius: 16px; border: 1px solid var(--line) !important; background: var(--surface); color: var(--text-2); font-style: normal; }
.thzn .woocommerce-account .woocommerce, .thzn.woocommerce-account .thzn-content > .woocommerce { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 32px; align-items: start; }
.thzn.woocommerce-account .woocommerce-MyAccount-navigation { width: auto; float: none; padding: 12px; border-radius: 20px; background: var(--surface); border: 1px solid var(--line); position: sticky; top: calc(var(--head-h) + 20px); }
.thzn.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; }
.thzn.woocommerce-account .woocommerce-MyAccount-navigation a { display: block; padding: 11px 14px; border-radius: 12px; color: var(--text-2); font-weight: 500; }
.thzn.woocommerce-account .woocommerce-MyAccount-navigation a:hover { background: rgba(255, 255, 255, .05); color: #fff; }
.thzn.woocommerce-account .woocommerce-MyAccount-navigation .is-active a { background: rgba(31, 99, 237, .18); color: #fff; }
.thzn.woocommerce-account .woocommerce-MyAccount-content { width: auto; float: none; }
.thzn.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button { min-height: 40px; }
.thzn.woocommerce-account:not(.logged-in) .thzn-content > .woocommerce { display: block; }
.thzn.woocommerce-account .thzn-content > .woocommerce::before, .thzn.woocommerce-account .thzn-content > .woocommerce::after,
.thzn .col2-set::before, .thzn .col2-set::after { display: none !important; }
.thzn.woocommerce-account .thzn-content > .woocommerce > * { grid-column: 1 / -1; min-width: 0; }
.thzn.woocommerce-account .thzn-content > .woocommerce > .woocommerce-MyAccount-navigation { grid-column: 1; }
.thzn.woocommerce-account .thzn-content > .woocommerce > .woocommerce-MyAccount-content { grid-column: 2; }
.thzn.woocommerce-account .woocommerce-MyAccount-navigation li { margin: 0; padding: 0; list-style: none; background: none !important; border: 0 !important; }
.thzn.woocommerce-account .woocommerce-MyAccount-navigation a { display: flex !important; align-items: center; justify-content: space-between; gap: 10px; }
.thzn.woocommerce-account .woocommerce-MyAccount-navigation .wcmamtx_fa_icon { color: var(--mute) !important; font-size: 15px; }
.thzn.woocommerce-account .woocommerce-MyAccount-navigation .is-active .wcmamtx_fa_icon { color: var(--accent-pale) !important; }
.thzn form.lost_reset_password .form-row, .thzn form.woocommerce-ResetPassword .form-row { width: 100% !important; float: none !important; }
.thzn .woocommerce-form-login, .thzn .woocommerce-form-register, .thzn form.lost_reset_password { padding: 28px; border-radius: 22px; background: var(--surface); border: 1px solid var(--line) !important; max-width: 520px; }
.thzn .u-columns.col2-set { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.thzn .u-columns.col2-set .col-1, .thzn .u-columns.col2-set .col-2 { width: auto; float: none; }
@media (max-width: 900px) {
  .thzn.woocommerce-account .thzn-content > .woocommerce { grid-template-columns: 1fr; }
  .thzn.woocommerce-account .thzn-content > .woocommerce > .woocommerce-MyAccount-navigation, .thzn.woocommerce-account .thzn-content > .woocommerce > .woocommerce-MyAccount-content { grid-column: 1 / -1; }
  .thzn.woocommerce-account .woocommerce-MyAccount-navigation { position: static; }
  .thzn.woocommerce-account .woocommerce-MyAccount-navigation ul { display: flex; overflow-x: auto; gap: 4px; }
  .thzn.woocommerce-account .woocommerce-MyAccount-navigation a { white-space: nowrap; }
  .thzn .u-columns.col2-set { grid-template-columns: 1fr; }
}
/* WooCommerce block cart and checkout, if they are ever used */
.thzn .wc-block-components-sidebar-layout .wc-block-components-main, .thzn .wc-block-components-sidebar { color: var(--text-2); }
.thzn .wc-block-components-text-input input, .thzn .wc-block-components-combobox .wc-block-components-combobox-control input { background: var(--bg-2) !important; color: #fff !important; border-color: var(--line-2) !important; }
.thzn .wc-block-components-text-input label, .thzn .wc-block-components-combobox label { color: var(--mute) !important; }
.thzn .wc-block-components-totals-wrapper, .thzn .wc-block-components-order-summary { border-color: var(--line) !important; }

/* ── the TechHauz plugins' page parts, dark ─────────────────────────────────────────────────────────────────── */
.thzn .thz-pd { --thz-ink: #ffffff; --thz-text: #c8d0de; --thz-mute: #a9b4c8; --thz-line: rgba(255, 255, 255, .09); --thz-soft: #121a2e; --thz-blue: var(--accent-2); --thz-blue-d: var(--accent-soft); color: var(--thz-text); }
.thzn .thz-pd h2, .thzn .thz-pd h3, .thzn .thz-pd h4, .thzn .thz-pd summary { color: #fff; }
.thzn .thz-pd strong { color: #fff; }
.thzn .thz-pd .thz-facts li, .thzn .thz-pd .thz-tile, .thzn .thz-pd .thz-way { background: var(--surface) !important; border-color: var(--line) !important; }
.thzn .thz-pd .thz-tile:hover { border-color: rgba(127, 166, 255, .3); box-shadow: 0 18px 40px -24px rgba(0, 0, 0, .9); }
.thzn .thz-pd .thz-ico { background: rgba(31, 99, 237, .16); color: var(--accent-soft); }
.thzn .thz-pd .thz-way h3 small { background: rgba(31, 99, 237, .2); color: var(--accent-pale); }
.thzn .thz-pd .thz-faq details, .thzn .thz-pd details { background: var(--surface); border-color: var(--line); }
.thzn .thz-pd .thz-why, .thzn .thz-pd .thz-hero { background: var(--surface) !important; border-color: var(--line) !important; }
.thzn .thz-pd .thz-eyebrow { color: var(--accent-pale); background: rgba(31, 99, 237, .16); }
.thzn .thz-pd a { color: var(--accent-soft); }
.thzn .thz-pd img.thz-fi { filter: brightness(0) invert(.75) sepia(1) hue-rotate(170deg) saturate(3); }
.thzn .thz-pd img.thz-fi.thz-flag, .thzn .thz-pd img.thz-flag { filter: none; }   /* a country's flag keeps its colours (it was tinted into a plain block) */
.thzn .thz-pd .thz-checks li::before { background-color: rgba(61, 220, 151, .16); }
.thzn ul.thz-short strong { color: #fff; }
.thzn ul.thz-short li { color: var(--soft); }
.thzn .thz-denoms { background: var(--surface) !important; border-color: var(--line) !important; }
.thzn .thz-denoms-head h2 { color: #fff !important; }
.thzn .thz-denoms-one { background: rgba(31, 99, 237, .18); color: var(--accent-pale); }
.thzn .thz-denom { background: rgba(255, 255, 255, .04) !important; border-color: var(--line-2) !important; color: #fff !important; }
.thzn .thz-denom strong { color: #fff; }
.thzn .thz-denom span { color: var(--accent-soft); }
.thzn .thz-denom:hover { border-color: var(--accent) !important; background: rgba(31, 99, 237, .12) !important; }
.thzn .thz-denom.is-current { border-color: var(--accent) !important; background: rgba(31, 99, 237, .2) !important; }
.thzn .thz-denom.is-out span { color: var(--mute); }
.thzn .thz-cchip { background: rgba(255, 255, 255, .03); border-color: var(--line-2); color: #fff; }
.thzn .thz-cchip small { color: var(--mute); }
.thzn .thz-cchip:hover { border-color: rgba(127, 166, 255, .55); }
.thzn .thz-cchip.is-on { border-color: var(--accent); background: rgba(31, 99, 237, .18); color: #fff; }
.thzn .thz-refund { background: rgba(31, 99, 237, .1); border-color: rgba(31, 99, 237, .3); color: var(--text-2); }
.thzn .thz-refund strong { color: var(--accent-pale); }
.thzn .thz-pd .thz-hub-link { background: var(--surface); }
.thzn .thz-pd .thz-hub-brands a { background: var(--surface); }
.thzn .thz-help .thz-hcat, .thzn .thz-help .thz-hhero, .thzn .thz-help .thz-contact > div, .thzn .thz-hresults { background: var(--surface) !important; border-color: var(--line) !important; }
.thzn .thz-help .thz-hhero { border-radius: 24px; }
.thzn .thz-help input[type="search"] { background: var(--bg-2); }
.thzn .thz-help .thz-guides a { background: var(--surface); border-color: var(--line); color: var(--text-2); }
.thzn .thz-help .thz-guides a:hover { background: var(--surface-2); border-color: var(--accent); color: #fff; }
.thzn .thz-help a.thz-btn { background: var(--accent); }
.thzn .thz-help a.thz-btn:hover { background: var(--accent-2); }
.thzn .techhauz-geo-content, .thzn .techhauz-trust-block, .thzn .techhauz-checkout-disclosure { background: var(--surface) !important; border-color: var(--line) !important; color: var(--text-2) !important; }
.thzn .techhauz-geo-content h2, .thzn .techhauz-trust-block strong, .thzn .techhauz-checkout-disclosure strong { color: #fff !important; }
.thzn .techhauz-disclosure-text { color: var(--soft) !important; }
.thzn .blockUI.blockOverlay { background: rgba(7, 11, 22, .6) !important; }

/* anything else that comes on white: the site's own images stay as they are, text boxes go dark */
.thzn .woocommerce .col2-set .col-1, .thzn .woocommerce .col2-set .col-2 { background: transparent; }

/* ── Customize My Account (the account plugin): its cards, badges and buttons in the Night colours ─────────── */
.thzn :is(.wcmam-order-card, .wcmamtx_view_order-card, .wcmtx_def1-card, .wcmam-dashboard-card, .wcmam-tile, .wcmam-style-1, .wcmamtx_modal-content, .wcmam-date-range-menu, .wcmamtx-profile-wizard, .wcmamtx_view_order-notes li, .sb-stat-box),
.thzn .wcmamtx_custom_download_design .wc-download-card, .thzn.woocommerce-edit-address .woocommerce-MyAccount-content form {
  background: var(--surface) !important; border: 1px solid var(--line) !important; color: var(--text-2) !important; box-shadow: none !important; }
.thzn :is(.wcmam-order-card, .wcmam-dashboard-card, .wcmtx_def1-card, .wcmam-tile):hover { border-color: rgba(127, 166, 255, .35) !important; }
.thzn :is(.wcmam-card-content h3, .wcmam-tile span:last-child, .wcmtx_def1-card span.wcmatx_tab_title_new_de, .wcmamtx_view_order-product__name, .wcmamtx_view_order-totals td, .wcmamtx_view_order-card__title, .wcmamtx-amz-title, .wcmamtx-task .task-label, .wcmamtx_view_order-payment__method, .wcmamtx_view_order-tl-content__label, .order-total, .sb-stat-box strong, .sb-stat-box h3, .sb-stat-box h4),
.thzn .wcmamtx_custom_download_design .wc-download-details h3, .thzn .wcmamtx_view_order-totals .wcmamtx_view_order-totals__grand td { color: #fff !important; }
.thzn :is(.order-details p, .order-date, .wcmamtx_view_order-address p, .wcmamtx_view_order-wrap, .wcmatx_tab_desc_below_dashlink, .wcmamtx_view_order-tl-content__date, .wcmamtx_default_text_below_avatar, .sb-stat-box span, .sb-stat-box p),
.thzn .wcmamtx_custom_download_design :is(.wc-download-remaining, .wc-download-expires) { color: var(--soft) !important; }
.thzn :is(.order-arrow, .wcmamtx_view_order-btn, .wcmam-date-range-btn, .wcmam-order-filters-button), .thzn p.order-again a.button {
  background: var(--surface-3) !important; border: 1px solid var(--line-2) !important; color: #fff !important; box-shadow: none !important; }
.thzn :is(.order-arrow, .wcmamtx_view_order-btn, .wcmam-order-filters-button):hover, .thzn .wcmam-order-filters-button.active, .thzn p.order-again a.button:hover { background: var(--accent) !important; border-color: var(--accent) !important; }
.thzn .wcmamtx_view_order-product-thumb { background: var(--surface-2) !important; border-color: var(--line) !important; }
.thzn .wcmamtx-tl-dot--pending { background: var(--surface-3) !important; border-color: var(--line-2) !important; }
.thzn .wcmamtx_view_order-tl-line { background: var(--line-2) !important; }
.thzn :is(.wcmamtx_badge-completed, .status.completed) { background: rgba(61, 220, 151, .12) !important; color: var(--ok) !important; border-color: rgba(61, 220, 151, .3) !important; }
.thzn :is(.wcmamtx_badge-processing, .status.processing) { background: rgba(31, 99, 237, .16) !important; color: var(--accent-pale) !important; border-color: rgba(127, 166, 255, .3) !important; }
.thzn :is(.wcmamtx_badge-pending, .wcmamtx_badge-onhold, .status.pending, .status.on-hold) { background: rgba(255, 181, 71, .12) !important; color: var(--warn) !important; border-color: rgba(255, 181, 71, .3) !important; }
.thzn :is(.wcmamtx_badge-cancelled, .wcmamtx_badge-failed, .status.cancelled, .status.failed) { background: rgba(255, 107, 107, .12) !important; color: var(--bad) !important; border-color: rgba(255, 107, 107, .3) !important; }
.thzn :is(.wcmamtx_badge-refunded, .wcmamtx_badge-default, .status.refunded) { background: var(--surface-3) !important; color: var(--text-2) !important; border-color: var(--line-2) !important; }
.thzn .wcmamtx_modal { background: rgba(0, 0, 0, .6) !important; }

/* ── product page: categories, tags and brand as tags you can click ─────────────────────────────────────── */
.thzn .summary .product_meta { gap: 10px; }
.thzn .thzn-meta-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; }
.thzn .thzn-meta-label { min-width: 84px; color: var(--mute); font-size: 13px; }
.thzn .thzn-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.thzn a.thzn-tag { display: inline-flex; align-items: center; min-height: 30px; padding: 0 12px; border-radius: 999px; background: rgba(31, 99, 237, .14); border: 1px solid rgba(127, 166, 255, .28); color: var(--accent-pale); font-size: 13px; font-weight: 500; line-height: 1; transition: background-color .15s, border-color .15s, color .15s; }
.thzn a.thzn-tag:hover { background: var(--accent); border-color: var(--accent); color: #fff; }
.thzn .product_meta .cr_brand { display: none; }   /* Customer Reviews' Google Shopping brand: kept for its feed, not shown twice */

/* ── product page: tabs and the details table ─────────────────────────────────────────────────────────── */
.thzn.woocommerce div.product .woocommerce-tabs ul.tabs li a { display: inline-flex; align-items: center; min-height: 44px; line-height: 1; font-weight: 600; font-size: 15px; }
.thzn.woocommerce div.product .woocommerce-tabs .panel { margin: 0 !important; padding: 0 !important; background: none; }
.thzn.woocommerce div.product .woocommerce-tabs .panel > h2:first-child { font-size: 22px; margin: 0 0 16px; }
.thzn.woocommerce table.shop_attributes { width: 100%; max-width: 720px; margin: 0; border: 1px solid var(--line) !important; border-radius: 16px; border-collapse: separate; border-spacing: 0; overflow: hidden; background: var(--surface); }
.thzn.woocommerce table.shop_attributes th, .thzn.woocommerce table.shop_attributes td { padding: 14px 18px !important; border: 0 !important; border-top: 1px solid var(--line) !important; font-style: normal !important; text-align: left; vertical-align: middle; background: none !important; }
.thzn.woocommerce table.shop_attributes tr:first-child th, .thzn.woocommerce table.shop_attributes tr:first-child td { border-top: 0 !important; }
.thzn.woocommerce table.shop_attributes th { width: 200px; color: var(--mute); font-weight: 500; }
.thzn.woocommerce table.shop_attributes td { color: #fff; }
.thzn.woocommerce table.shop_attributes td p { margin: 0; }

/* ── page numbers under a grid ────────────────────────────────────────────────────────────────────────── */
.thzn nav.woocommerce-pagination { margin: 48px 0 0; text-align: center; }
.thzn nav.woocommerce-pagination ul { display: inline-flex !important; gap: 8px; margin: 0 !important; padding: 0 !important; border: 0 !important; white-space: normal; }
.thzn nav.woocommerce-pagination ul li { float: none !important; margin: 0 !important; border: 0 !important; overflow: visible !important; }

/* ── TechHauz content (Help Center, product and brand text) lines up with the page title ─────────────── */
.thzn .thz-pd { max-width: none; margin-left: 0; margin-right: 0; }
.thzn .thz-hub-intro { padding: 0 !important; max-width: 820px; }
.thzn .thz-hub-intro .thz-lead { margin: 0; }
.thzn .thz-pd .thz-faq { display: flex; flex-direction: column; gap: 10px; }
.thzn .thz-pd .thz-faq details, .thzn .thz-pd .thz-faq details:first-of-type { border: 1px solid var(--line) !important; border-radius: 16px; background: var(--surface); overflow: hidden; transition: border-color .15s; }
.thzn .thz-pd .thz-faq details[open], .thzn .thz-pd .thz-faq details:hover { border-color: rgba(127, 166, 255, .35) !important; }
.thzn .thz-pd .thz-faq summary { padding: 18px 64px 18px 22px; }
.thzn .thz-pd .thz-faq summary::after { right: 18px; background: rgba(31, 99, 237, .16); color: var(--accent-pale); }
.thzn .thz-pd .thz-faq details p, .thzn .thz-pd .thz-faq details > div { padding: 0 64px 20px 22px; }
.thzn .thz-pd .thz-note { background: var(--surface) !important; border: 1px solid rgba(127, 166, 255, .28) !important; border-radius: 18px; color: var(--text-2); }
.thzn .thz-pd .thz-note .thz-ico { background: rgba(31, 99, 237, .16) !important; color: var(--accent-pale) !important; }
.thzn .thz-pd .thz-note h3 { color: #fff; }


/* ── brand identity (inc/brands.php): the brand's own colours, as on its card images ─────────────────────────────
   --b1, --b2, --b3 (light to dark) and --bink come from the page's brand; without one everything falls back to blue */
.thzn-bhero { --g1: var(--b1, var(--accent)); --g2: var(--b2, var(--accent-2)); --g3: var(--b3, #0b2a6b);
  position: relative; isolation: isolate; overflow: hidden; margin: 6px 0 30px; border-radius: 32px; border: 1px solid rgba(255, 255, 255, .09);
  background:
    radial-gradient(70% 90% at 82% 38%, color-mix(in srgb, var(--g1) 46%, transparent), transparent 70%),
    radial-gradient(60% 80% at 0% 100%, color-mix(in srgb, var(--g3) 55%, transparent), transparent 70%),
    linear-gradient(120deg, #070b16 0%, color-mix(in srgb, var(--g3) 38%, #070b16) 55%, color-mix(in srgb, var(--g2) 30%, #070b16) 100%);
  box-shadow: 0 50px 120px -60px color-mix(in srgb, var(--g2) 80%, transparent); }
.thzn-bhero-bg { position: absolute; inset: 0; z-index: -1; pointer-events: none; overflow: hidden;
  background-image: linear-gradient(rgba(255, 255, 255, .05) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .05) 1px, transparent 1px);
  background-size: 46px 46px; -webkit-mask-image: radial-gradient(90% 90% at 75% 40%, #000 20%, transparent 78%); mask-image: radial-gradient(90% 90% at 75% 40%, #000 20%, transparent 78%); }
.thzn-bhero-bg::after { content: ""; position: absolute; left: -10%; right: -10%; top: 58%; height: 2px; background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--g1) 70%, #fff), transparent); opacity: .35; transform: rotate(-8deg); }
.thzn-bhero-mark { position: absolute; right: -3%; bottom: -16%; width: 44%; max-width: 540px; height: auto; opacity: .07; transform: rotate(-14deg); }
.thzn-bhero-mark.is-tile { width: 34%; max-width: 420px; opacity: .14; -webkit-mask-image: radial-gradient(closest-side, #000 45%, transparent); mask-image: radial-gradient(closest-side, #000 45%, transparent); }
/* Brand logos are never recoloured with a CSS filter: iPhones draw filtered images at low resolution (blurry logos).
   A logo shown white is its own white file (assets/brands/*.white.svg, written by deploy/cards/export_theme.py). */
.thzn-bhero-in { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); gap: 32px; align-items: center; min-height: 460px; padding: 54px 56px 58px; }
.thzn-bhero-kind { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 0 0 16px !important; color: rgba(255, 255, 255, .86); font-size: 12.5px; font-weight: 700; letter-spacing: 1.6px; text-transform: uppercase; }
.thzn-bhero-where { padding: 6px 12px; border-radius: 999px; background: rgba(255, 255, 255, .1); border: 1px solid rgba(255, 255, 255, .12); font-weight: 500; letter-spacing: .3px; text-transform: none; font-size: 13px; }
.thzn-blogo { display: inline-flex; flex: none; align-items: center; justify-content: center; width: 46px; height: 46px; border-radius: 14px; background: linear-gradient(135deg, var(--b1, var(--accent)), var(--b3, #0b2a6b)); box-shadow: 0 12px 30px -10px var(--b2, var(--accent)), inset 0 1px 0 rgba(255, 255, 255, .28); }
.thzn-blogo img { width: 26px; height: 26px; object-fit: contain; }
.thzn-blogo img.is-wide { width: 34px; }
.thzn .thzn-bhero-title { font-size: clamp(40px, 5.6vw, 70px); font-weight: 800; letter-spacing: -.035em; line-height: .98; margin: 0 0 18px; color: #fff; text-shadow: 0 12px 50px color-mix(in srgb, var(--b2, var(--accent)) 55%, transparent); }
.thzn-bhero-intro .thz-lead, .thzn-bhero-intro p { color: rgba(255, 255, 255, .84) !important; font-size: 16px; line-height: 1.65; max-width: 580px; margin: 0; }
.thzn-bhero-intro .thz-lead strong { color: #fff; }
.thzn-bstats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; max-width: 620px; margin: 26px 0 0 !important; padding: 0 !important; list-style: none; }
.thzn-bstats li { margin: 0; padding: 14px 14px 12px; border-radius: 16px; background: rgba(7, 11, 22, .5); border: 1px solid rgba(255, 255, 255, .11); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.thzn-bstats strong { display: block; color: #fff; font-size: 22px; font-weight: 800; letter-spacing: -.02em; line-height: 1.1; white-space: nowrap; }
.thzn-bstats span { display: block; margin-top: 4px; color: rgba(255, 255, 255, .7); font-size: 12px; line-height: 1.3; }
.thzn-bhero-cta { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }
.thzn a.thzn-btn-brand { background: linear-gradient(135deg, var(--b1, var(--accent)), var(--b2, var(--accent-2))); color: var(--bink, #fff) !important; box-shadow: 0 16px 36px -14px var(--b2, var(--accent)), inset 0 1px 0 rgba(255, 255, 255, .25); }
.thzn a.thzn-btn-brand:hover { filter: brightness(1.08); transform: translateY(-1px); }
.thzn a.thzn-btn-ghost { background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .16); }
.thzn a.thzn-btn-ghost:hover { background: rgba(255, 255, 255, .14); box-shadow: none; }
/* three of the brand's cards, fanned; the front one floats */
.thzn-bhero-cards { position: relative; height: 380px; }
.thzn-bhero-cards::before { content: ""; position: absolute; inset: 18% 8%; border-radius: 50%; background: radial-gradient(closest-side, color-mix(in srgb, var(--b1, var(--accent)) 70%, transparent), transparent); filter: blur(24px); opacity: .8; }
.thzn-bcard { position: absolute; left: 50%; top: 50%; width: min(360px, 82%); transition: transform .6s var(--ease); filter: drop-shadow(0 28px 36px rgba(0, 0, 0, .6)); }
.thzn-bcard img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; object-position: 50% 52%; }
.thzn-bcard.is-0 { z-index: 3; transform: translate(-50%, -50%) rotate(-3deg); }
.thzn-bcard.is-1 { z-index: 2; transform: translate(-16%, -66%) rotate(11deg) scale(.84); }
.thzn-bcard.is-2 { z-index: 1; transform: translate(-84%, -34%) rotate(-15deg) scale(.84); }
.thzn-bhero-cards:hover .thzn-bcard.is-1 { transform: translate(-6%, -72%) rotate(15deg) scale(.86); }
.thzn-bhero-cards:hover .thzn-bcard.is-2 { transform: translate(-94%, -28%) rotate(-19deg) scale(.86); }
@media (prefers-reduced-motion: no-preference) {
  .thzn-bcard.is-0 { animation: thzn-float 6s ease-in-out infinite; }
  .thzn-bhero-in > * { animation: thzn-rise .8s var(--ease) both; }
  .thzn-bhero-cards { animation-delay: .12s !important; }
}
@keyframes thzn-float { 0%, 100% { translate: 0 0; } 50% { translate: 0 -12px; } }
@media (max-width: 1100px) { .thzn-bhero-in { padding: 44px 36px 48px; } .thzn-bstats { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 420px; } }
@media (max-width: 900px) {
  .thzn-bhero { border-radius: 24px; margin-top: 2px; }
  .thzn-bhero-in { grid-template-columns: minmax(0, 1fr); gap: 8px; min-height: 0; padding: 30px 22px 30px; }   /* never wider than the screen */
  .thzn-bhero-cards { order: -1; height: 230px; margin: -6px 0 4px; }
  .thzn-bcard { width: min(250px, 62%); }
  .thzn-bhero-mark { width: 70%; bottom: -8%; }
  .thzn-bhero-mark.is-tile { width: 56%; }
}
@media (max-width: 480px) { .thzn-bhero-in { padding: 24px 16px 26px; } .thzn-bstats strong { font-size: 19px; } .thzn-bhero-cta .thzn-btn { flex: 1 1 100%; } }
@media (max-width: 480px) { .thzn .thzn-bstats { grid-template-columns: repeat(auto-fit, minmax(96px, 1fr)); gap: 8px; } .thzn-bstats li { padding: 12px 12px 10px; } .thzn .thzn-bhero-title { overflow-wrap: anywhere; } }
/* brand hero on phones: the stats fill their rows (never one box alone), the intro shows four lines with Read more,
   a shorter picture; so Choose your card is closer to the top */
.thzn .thzn-bstats { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); max-width: 680px; }   /* one row where they fit */
.thzn .thzn-bstats li { min-width: 0; padding: 13px 12px 11px; }
.thzn .thzn-bstats strong { font-size: clamp(18px, 2.6vw, 20px); }
@media (max-width: 600px), (min-width: 901px) and (max-width: 1239px) {   /* narrower: three to a row (two when there are 2 or 4) */
  .thzn .thzn-bstats { grid-template-columns: repeat(6, minmax(0, 1fr)); grid-auto-flow: row; max-width: 620px; }
  .thzn-bstats li { grid-column: span 2; }
  .thzn-bstats li:nth-child(3n+1):last-child { grid-column: 1 / -1; }
  .thzn-bstats li:nth-child(3n+1):nth-last-child(2), .thzn-bstats li:nth-child(3n+2):last-child,
  .thzn-bstats li:first-child:nth-last-child(4), .thzn-bstats li:first-child:nth-last-child(4) ~ li { grid-column: span 3; }
}
.thzn-bhero-more { display: none; }
@media (max-width: 600px) {
  .thzn .thzn-bstats { gap: 8px; max-width: none; }
  .thzn .thzn-bstats li { padding: 11px 10px 10px; }
  .thzn .thzn-bstats strong { font-size: clamp(16px, 4.6vw, 19px); }
  .thzn-bstats span { font-size: 11.5px; }
  .thzn-bhero-intro.is-clamped .thz-hub-intro { margin-bottom: 0; }
  .thzn-bhero-intro.is-clamped p:first-of-type { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; line-clamp: 4; overflow: hidden; }
  .thzn-bhero-intro.is-clamped p ~ * { display: none; }
  .thzn .thzn-bhero-more:not([hidden]) { display: inline-flex; margin: 4px 0 0; padding: 4px 0; border: 0; background: none; color: #fff; font-family: inherit; font-size: 14px; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
  .thzn-bhero-cards { height: 200px; }
  .thzn-bcard { width: min(230px, 60%); }
  .thzn .thz-pd .thz-faq details p, .thzn .thz-pd .thz-faq details > div { padding: 0 22px 20px; }
}
.thzn-out { white-space: nowrap; }
.thzn-prod-row:has(.thzn-out) { flex-wrap: wrap; row-gap: 2px; }
.thzn-anchor { display: block; position: relative; top: calc(-1 * var(--head-h) - 16px); visibility: hidden; }

/* product page: the brand pill and the account country above the title; the card on a stage in the brand's colours */
.thzn-pills { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 0 14px; }
.thzn a.thzn-bpill { display: inline-flex; align-items: center; gap: 10px; min-height: 40px; padding: 4px 16px 4px 4px; border-radius: 999px; background: color-mix(in srgb, var(--b2, var(--accent)) 24%, var(--surface)); border: 1px solid color-mix(in srgb, var(--b1, var(--accent)) 45%, transparent); color: #fff; font-size: 14px; font-weight: 600; transition: border-color .15s, background-color .15s; }
.thzn a.thzn-bpill:hover { color: #fff; border-color: var(--b1, var(--accent)); background: color-mix(in srgb, var(--b2, var(--accent)) 40%, var(--surface)); }
.thzn-bpill .thzn-blogo { width: 32px; height: 32px; border-radius: 999px; box-shadow: none; }
.thzn-bpill .thzn-blogo img { width: 18px; height: 18px; }
.thzn-rpill { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 4px 16px 4px 10px; border-radius: 999px; background: var(--surface-2); border: 1px solid var(--line); color: var(--text-2); font-size: 14px; font-weight: 500; }
.thzn-rpill .thzn-flag { border-radius: 3px; }
.thzn.single-product .woocommerce-product-gallery { background:
    radial-gradient(70% 70% at 50% 46%, color-mix(in srgb, var(--b1, var(--accent)) 40%, transparent), transparent 72%),
    linear-gradient(160deg, color-mix(in srgb, var(--b3, #0b2a6b) 45%, var(--surface)), var(--surface) 70%) !important;
  border-color: color-mix(in srgb, var(--b1, var(--accent)) 30%, var(--line)) !important; isolation: isolate; overflow: hidden; }
.thzn.single-product .woocommerce-product-gallery::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background-image: linear-gradient(rgba(255, 255, 255, .05) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .05) 1px, transparent 1px);
  background-size: 40px 40px; -webkit-mask-image: radial-gradient(70% 70% at 50% 50%, #000, transparent 80%); mask-image: radial-gradient(70% 70% at 50% 50%, #000, transparent 80%); }
.thzn.single-product .woocommerce-product-gallery img { filter: drop-shadow(0 34px 44px color-mix(in srgb, var(--b3, #000) 55%, rgba(0, 0, 0, .5))); }

/* brand and product content (TechHauz Product Content) in the brand's colours: icon badges, numbered steps, facts */
.thzn .thz-pd .thz-ico:not(.thz-note .thz-ico) { background: linear-gradient(135deg, var(--b1, var(--accent)), var(--b3, #0b2a6b)) !important; color: var(--bink, #fff) !important; box-shadow: 0 10px 26px -10px var(--b2, var(--accent)), inset 0 1px 0 rgba(255, 255, 255, .25); }
.thzn .thz-pd .thz-tile { background: linear-gradient(180deg, var(--surface-2), var(--surface)) !important; border-color: var(--line) !important; transition: transform .25s var(--ease), border-color .2s, box-shadow .25s; }
.thzn .thz-pd .thz-tile:hover { transform: translateY(-4px); border-color: color-mix(in srgb, var(--b1, var(--accent)) 55%, transparent) !important; box-shadow: 0 22px 44px -26px var(--b2, var(--accent)); }
.thzn .thz-pd .thz-tile h3 { color: #fff; }
.thzn .thz-pd .thz-way { position: relative; overflow: hidden; background: linear-gradient(180deg, var(--surface-2), var(--surface)) !important; border: 1px solid var(--line); border-radius: 20px; }
.thzn .thz-pd .thz-way::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: linear-gradient(90deg, var(--b1, var(--accent)), var(--b2, var(--accent-2)), transparent); }
.thzn .thz-pd .thz-way h3 small { background: color-mix(in srgb, var(--b1, var(--accent)) 22%, transparent) !important; color: #fff !important; }
.thzn .thz-pd .thz-steps li::before { background: linear-gradient(135deg, var(--b1, var(--accent)), var(--b3, #0b2a6b)) !important; color: var(--bink, #fff) !important; box-shadow: 0 6px 16px -6px var(--b2, var(--accent)); font-weight: 700; }
.thzn .thz-pd .thz-facts li { position: relative; overflow: hidden; background: var(--surface) !important; border: 1px solid var(--line) !important; border-radius: 14px; }
.thzn .thz-pd .thz-facts li::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: linear-gradient(180deg, var(--b1, var(--accent)), var(--b3, #0b2a6b)); }
.thzn .thz-pd .thz-head h2 { position: relative; padding-left: 16px; }
.thzn .thz-pd .thz-head h2::before { content: ""; position: absolute; left: 0; top: .18em; bottom: .18em; width: 4px; border-radius: 4px; background: linear-gradient(180deg, var(--b1, var(--accent)), var(--b2, var(--accent-2))); }
.thzn .thz-pd .thz-hero { position: relative; overflow: hidden; border-radius: 24px !important; background:
    radial-gradient(60% 90% at 100% 0%, color-mix(in srgb, var(--b1, var(--accent)) 30%, transparent), transparent 70%), var(--surface) !important; }

/* ratings: a card's own stars; a product page without reviews shows its brand's rating, said as such */
.thzn-prod-rating { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 6px; margin: 6px 0 0 !important; color: var(--soft); font-size: 12.5px; }
.thzn-prod-rating > span { white-space: nowrap; }
.thzn-prod-rating .thzn-stars { flex: none; }
.thzn-brating { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: -4px 0 14px !important; color: var(--soft); font-size: 14px; }
.thzn-brating strong { color: #fff; }
.thzn.single-product .summary .woocommerce-product-rating { display: flex; align-items: center; gap: 10px; margin: -4px 0 14px; }
.thzn.single-product .summary .woocommerce-review-link { color: var(--soft); font-size: 14px; }
.thzn .star-rating { color: #f5a623; }
.thzn .star-rating::before { color: rgba(255, 255, 255, .2); }
.thzn-bstats { grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); max-width: 680px; }
/* wordmark logos (Jawaker, Amazon, ...) get a wider badge */
.thzn-blogo:has(img.is-wide) { width: auto; padding: 0 12px; }
.thzn-blogo img.is-wide { width: auto; height: 22px; max-width: 96px; }
.thzn-bpill .thzn-blogo:has(img.is-wide) { padding: 0 10px; }
.thzn-bpill .thzn-blogo img.is-wide { height: 16px; max-width: 70px; }
.thzn .woocommerce-MyAccount-content .woocommerce-pagination { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin: 28px 0 0; padding: 0; border: 0; }
.thzn .woocommerce-MyAccount-content .woocommerce-pagination .woocommerce-button { min-height: 44px; padding: 0 20px; background: var(--surface-3); border: 1px solid var(--line-2); }
.thzn .woocommerce-MyAccount-content .woocommerce-pagination .woocommerce-button:hover { background: var(--accent); border-color: var(--accent); }
.thzn .woocommerce-MyAccount-content .woocommerce-pagination .woocommerce-button--next { margin-left: auto; }
.thzn .woocommerce-MyAccount-content .woocommerce-pagination .woocommerce-button--previous::before { content: "\2190"; margin-right: 8px; }
.thzn .woocommerce-MyAccount-content .woocommerce-pagination .woocommerce-button--next::after { content: "\2192"; margin-left: 8px; }

/* address forms: two columns of fields, labels readable */
.thzn.woocommerce-edit-address .woocommerce-MyAccount-content form { padding: 26px 28px !important; border-radius: 22px; }
.thzn.woocommerce-edit-address .woocommerce-MyAccount-content h2, .thzn.woocommerce-edit-address .woocommerce-MyAccount-content h3 { color: #fff !important; }
.thzn.woocommerce-edit-address .woocommerce-MyAccount-content label { color: var(--text-2) !important; }
.thzn .woocommerce-address-fields__field-wrapper { display: grid; grid-template-columns: 1fr 1fr; gap: 0 18px; }
.thzn .woocommerce-address-fields__field-wrapper .form-row { width: auto !important; float: none !important; margin: 0 0 16px !important; padding: 0 !important; grid-column: 1 / -1; }
.thzn .woocommerce-address-fields__field-wrapper .form-row-first { grid-column: 1; }
.thzn .woocommerce-address-fields__field-wrapper .form-row-last { grid-column: 2; }
@media (max-width: 600px) { .thzn .woocommerce-address-fields__field-wrapper { grid-template-columns: 1fr; } .thzn .woocommerce-address-fields__field-wrapper .form-row-first, .thzn .woocommerce-address-fields__field-wrapper .form-row-last { grid-column: 1; } }

/* cart: the products on the left, the totals beside them (kept in view); suggestions under the products */
@media (min-width: 1001px) {
  .thzn.woocommerce-cart .thzn-content > .woocommerce { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 28px; align-items: start; }
  .thzn.woocommerce-cart .thzn-content > .woocommerce::before, .thzn.woocommerce-cart .thzn-content > .woocommerce::after { display: none !important; }
  .thzn.woocommerce-cart .thzn-content > .woocommerce > * { grid-column: 1 / -1; min-width: 0; }
  .thzn.woocommerce-cart .thzn-content > .woocommerce > form.woocommerce-cart-form { grid-column: 1; grid-row: 2; margin: 0; }
  .thzn.woocommerce-cart .thzn-content > .woocommerce > .cart-collaterals { display: contents; }
  .thzn.woocommerce-cart .cart-collaterals .cart_totals { grid-column: 2; grid-row: 2 / span 2; width: auto !important; float: none !important; margin: 0 !important; position: sticky; top: calc(var(--head-h) + 20px); }
  .thzn.woocommerce-cart .cart-collaterals .cross-sells { grid-column: 1; grid-row: 3; width: auto !important; float: none !important; }
  .admin-bar.thzn.woocommerce-cart .cart-collaterals .cart_totals { top: calc(var(--head-h) + 52px); }
}
.thzn.woocommerce-cart .thzn-page-wc .thzn-content { max-width: none; }
.thzn .cart-collaterals .cross-sells > h2, .thzn .cross-sells > h2 { font-size: 22px; margin: 36px 0 0; }
.thzn .cart-collaterals .cross-sells ul.products { margin-top: 18px !important; }
.thzn .cart_totals .wc-proceed-to-checkout { padding: 8px 0 0; }
.thzn .cart_totals .wc-proceed-to-checkout .checkout-button { width: 100%; min-height: 54px; font-size: 16px; margin: 0; }

/* Customer Reviews on product pages: the summary, the rating bars and the reviews in the Night colours */
.thzn #reviews .cr-summaryBox-wrap { background: var(--surface) !important; border: 1px solid var(--line) !important; border-radius: 22px; padding: 22px !important; margin-bottom: 18px; }
.thzn #reviews .cr-summaryBox-wrap * { border-color: var(--line) !important; }
.thzn #reviews .cr-average-rating, .thzn #reviews .cr-average-rating span { color: #fff !important; }
.thzn #reviews .cr-total-rating-count, .thzn #reviews .cr-histogram-a, .thzn #reviews .ivole-histogramCell1, .thzn #reviews .ivole-histogramCell3 { color: var(--text-2) !important; }
.thzn #reviews .ivole-meter { background: var(--surface-3) !important; border: 0 !important; border-radius: 999px !important; box-shadow: none !important; overflow: hidden; }
.thzn #reviews .ivole-meter .ivole-meter-bar { background: linear-gradient(90deg, #f5a623, #ffc857) !important; border-radius: 999px; }
.thzn #reviews .cr-summaryBox-wrap .cr-summary-separator, .thzn #reviews .cr-summaryBox-wrap hr { background: var(--line) !important; }
.thzn #reviews #comments > h2, .thzn #reviews .woocommerce-Reviews-title { font-size: 22px; }
.thzn #reviews #comments ol.commentlist { margin: 0 !important; padding: 0 !important; }
.thzn #reviews #comments ol.commentlist li { margin: 0 0 12px !important; padding: 0 !important; background: none !important; border: 0 !important; list-style: none; }
.thzn #reviews #comments ol.commentlist li .comment_container { display: flex; gap: 14px; align-items: flex-start; padding: 18px 20px; border-radius: 18px; background: var(--surface); border: 1px solid var(--line); }
.thzn #reviews #comments ol.commentlist li img.avatar { position: static !important; float: none !important; flex: none; width: 40px !important; height: 40px; padding: 0 !important; border: 0 !important; border-radius: 50%; background: var(--surface-3) !important; }
.thzn #reviews #comments ol.commentlist li .comment-text { flex: 1 1 auto; min-width: 0; margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; }
.thzn #reviews #comments ol.commentlist li .meta { color: var(--mute) !important; font-size: 13.5px; }
.thzn #reviews #comments ol.commentlist li .meta strong { color: #fff; }
.thzn #reviews #comments ol.commentlist li .description p { color: var(--text-2); margin: 10px 0 0; }
.thzn #reviews #comments ol.commentlist ul.children { margin: 10px 0 0 32px !important; padding: 0 !important; }
.thzn #reviews #comments ol.commentlist ul.children .comment_container { background: var(--surface-2); border-color: rgba(127, 166, 255, .22); }
.thzn #reviews .cr-voting-cont-uni, .thzn #reviews .cr-voting-a { color: var(--mute) !important; }
.thzn #review_form_wrapper { margin-top: 24px; padding: 24px; border-radius: 22px; background: var(--surface); border: 1px solid var(--line); }


/* My Account > Account details: the password block framed like the other boxes */
.thzn .woocommerce-EditAccountForm fieldset { margin: 26px 0 22px; padding: 22px 24px 8px; border: 1px solid var(--line-2); border-radius: 20px; background: var(--surface); min-width: 0; }
.thzn .woocommerce-EditAccountForm fieldset legend { padding: 0 10px; margin-left: -10px; color: #fff; font-size: 16px; font-weight: 600; }
.thzn .woocommerce-EditAccountForm .form-row { margin: 0 0 16px !important; padding: 0 !important; }
.thzn .woocommerce-EditAccountForm em, .thzn .woocommerce-EditAccountForm #account_display_name_description { display: block; margin-top: 6px; color: var(--mute); font-size: 13px; font-style: normal; }
.thzn .woocommerce-EditAccountForm > p:last-of-type { margin-top: 6px; }
.thzn .password-input { display: block; position: relative; }
.thzn .show-password-input { filter: invert(1) brightness(1.4); opacity: .7; }
.thzn .show-password-input:hover { opacity: 1; }

/* Support tickets (Contact us in My Account): the ticket form, tickets and messages in the Night colours */
.thzn #wcsts_new_ticket_box, .thzn .wcsts_single_ticket_container { background: var(--surface) !important; border: 1px solid var(--line) !important; border-radius: 20px; padding: 22px !important; color: var(--text-2); }
.thzn #wcsts_new_ticket_box_title { background: none !important; color: #fff !important; padding: 0 0 12px !important; margin: 0 0 8px !important; border-bottom: 1px solid var(--line); font-size: 20px; }
.thzn .wcsts_new_ticket_label, .thzn #wcsts_new_ticket_box label { color: var(--text-2) !important; font-weight: 500; }
.thzn #wcsts_new_ticket_subject, .thzn #wcsts_new_ticket_priority, .thzn #wcsts_new_ticket_message, .thzn .wcsts_new_message_textarea { width: 100% !important; max-width: none; border: 1px solid var(--line-2) !important; background-color: var(--bg-2) !important; color: #fff !important; border-radius: 12px; }
.thzn .wcsts_input_attachment_container, .thzn .wcsts_file_uploader_container { border: 1px dashed var(--line-2) !important; border-radius: 14px; background: var(--bg-2) !important; padding: 14px !important; color: var(--mute); }
.thzn .wcsts_input_attachment_container input[type="file"], .thzn .wcsts_file_uploader_container input[type="file"] { color: var(--mute); }
.thzn input[type="file"]::file-selector-button { margin-right: 12px; padding: 8px 14px; border: 1px solid var(--line-2); border-radius: 999px; background: var(--surface-3); color: #fff; font: 500 14px var(--font); cursor: pointer; }
.thzn .wcsts_button { min-height: 44px; padding: 0 20px !important; border: 0 !important; border-radius: 999px !important; background: var(--accent) !important; color: #fff !important; font-weight: 600; }
.thzn .wcsts_button:hover { background: var(--accent-2) !important; color: #fff !important; }
.thzn .wcsts_ticket_subject, .thzn .wcsts_ticket_status { background: var(--surface-2) !important; color: #fff !important; border-radius: 12px; }
.thzn .wcsts_ticket_status { color: var(--text-2) !important; }
.thzn .wcsts_message { background: var(--surface-2) !important; color: var(--text-2); border-radius: 14px; }
.thzn .wcsts_ticket_message_content.wcsts_ticket_unread_message_content .wcsts_message { background: rgba(31, 99, 237, .16) !important; color: #fff !important; border: 1px solid rgba(127, 166, 255, .35) !important; }
.thzn .wcsts_attachments_container { border-top-color: var(--line) !important; }
.thzn .wcts_single_attachment { border-color: var(--line-2) !important; border-radius: 10px; }
.thzn .wcsts_status_open, .thzn .wcsts_status_in_progress, .thzn .wcsts_status_closed { border-radius: 999px; padding: 3px 10px; color: #fff; }

/* product cards adapt to their own width (narrow grids: cart suggestions, related): price on one line, Add as an icon */
.thzn-prod { container-type: inline-size; }
.thzn-prod-price { white-space: nowrap; }
@container (max-width: 210px) {
  .thzn-prod .thzn-add span { display: none; }
  .thzn-prod a.thzn-add { width: 38px; padding: 0; justify-content: center; }
  .thzn-prod .thzn-prod-price { font-size: 16px; }
  .thzn-prod .thzn-prod-title { font-size: 14.5px; }
}
/* read-only fields (the locked billing email) stay dark */
.thzn input[readonly], .thzn .input-text[readonly] { background: var(--surface-2) !important; color: var(--mute) !important; border-color: var(--line) !important; }
/* cart totals: labels on one line */
.thzn .cart_totals table.shop_table th { white-space: nowrap; width: 40%; }

/* the phone menu: the button turns into a close button; brands carry their badge */
.thzn-menu-btn .thzn-when-open { display: none; }
.thzn-menu-btn[aria-expanded="true"] .thzn-when-open { display: inline-flex; }
.thzn-menu-btn[aria-expanded="true"] .thzn-when-closed { display: none; }
.thzn-menu-logo { display: none; }
@media (max-width: 1000px) {
  .thzn-menu a { display: flex; align-items: center; gap: 14px; }
  .thzn-menu-logo { display: inline-flex; margin-left: 0; width: 32px; height: 32px; border-radius: 10px; }
  .thzn-menu-logo img { width: 18px; height: 18px; object-fit: contain; }
  .thzn-menu-logo img.is-wide { width: 24px; height: 14px; }
  .thzn-menu-logo:has(img.is-wide) { width: 40px; }
  .thzn-nav { padding-top: 8px; }
  @media (prefers-reduced-motion: no-preference) { .thzn-nav-open .thzn-menu > li { animation: thzn-rise .35s var(--ease) both; } .thzn-nav-open .thzn-menu > li:nth-child(n+4) { animation-delay: .05s; } }
}

/* footer: "With (a beating heart) from Maryland, USA" */
.thzn-made { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
.thzn-heart { display: inline-block; fill: var(--red); filter: drop-shadow(0 0 6px rgba(225, 29, 72, .55)); transform-origin: 50% 60%; }
@media (prefers-reduced-motion: no-preference) { .thzn-heart { animation: thzn-beat 1.4s ease-in-out infinite; } }
@keyframes thzn-beat { 0%, 40%, 100% { transform: scale(1); } 10% { transform: scale(1.22); } 20% { transform: scale(.96); } 30% { transform: scale(1.14); } }

/* brand Thumbnails: a square one is the logo on its colours already, so it is the whole badge */
.thzn .thzn-blogo:has(img.is-tile), .thzn .thzn-chip-logo:has(img.is-tile) { overflow: hidden; padding: 0; background: var(--b2, var(--accent)); }
.thzn .thzn-blogo img.is-tile, .thzn .thzn-chip-logo img.is-tile { width: 100%; height: 100%; max-width: none; object-fit: cover; border-radius: inherit; box-shadow: none; filter: none; }

/* cart: compact rows; under each name the accounts the card works on and how it arrives */
.thzn table.shop_table.cart th, .thzn table.shop_table.cart td { padding: 10px 12px !important; }
.thzn table.shop_table.cart thead th { font-size: 12px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--mute); }
.thzn table.shop_table.cart .product-remove { width: 44px; }
.thzn table.shop_table.cart .product-remove a.remove { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 50%; font-size: 20px; line-height: 1; }
.thzn table.shop_table.cart .product-thumbnail { width: 80px; }
.thzn table.shop_table.cart .product-thumbnail img { display: block; width: 68px; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 8px; }
.thzn table.shop_table.cart .product-name a { font-size: 15px; font-weight: 600; }
.thzn table.shop_table.cart .product-price, .thzn table.shop_table.cart .product-subtotal { white-space: nowrap; font-size: 14.5px; }
.thzn table.shop_table.cart .product-subtotal { color: #fff; font-weight: 600; text-align: right; }
.thzn table.shop_table.cart thead .product-subtotal { color: var(--mute); }
.thzn table.shop_table.cart .quantity .qty { width: 64px; height: 36px; min-height: 36px; padding: 0 4px; font-size: 14px; border-radius: 10px; }
.thzn table.shop_table.cart td.actions .button { min-height: 38px; padding: 0 16px; font-size: 13.5px; }
.thzn-ci-meta { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 6px; }
.thzn-ci-tag { display: inline-flex; align-items: center; gap: 6px; padding: 3px 9px; border: 1px solid var(--line); border-radius: 999px; background: rgba(255, 255, 255, .04); color: var(--soft); font-size: 12px; line-height: 1.4; white-space: nowrap; }
.thzn .thzn-ci-tag img.thzn-flag { width: 16px !important; height: 12px; border-radius: 2px; box-shadow: none; }   /* WooCommerce sizes every cart image to 32 px */
.thzn-ci-globe { flex: none; width: 13px; height: 13px; background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3a14 14 0 0 1 0 18a14 14 0 0 1 0-18z'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3a14 14 0 0 1 0 18a14 14 0 0 1 0-18z'/%3E%3C/svg%3E") center / contain no-repeat; }
.thzn-ci-tag.is-global { color: var(--accent-pale); border-color: rgba(127, 166, 255, .28); background: rgba(31, 99, 237, .1); }
.thzn-ci-tag svg { width: 13px; height: 13px; flex: none; }
.thzn .cart_totals .shop_table th, .thzn .cart_totals .shop_table td { padding: 11px 14px !important; }
/* cart suggestions: as many columns as fit, each card wide enough to read */
.thzn .cross-sells ul.products { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); }
@media (max-width: 1000px) {   /* one column: the cart, the totals and checkout button, then the suggestions */
  .thzn.woocommerce-cart .cart-collaterals { display: flex; flex-direction: column; gap: 8px; margin-top: 22px; }
  .thzn.woocommerce-cart .cart-collaterals .cart_totals, .thzn.woocommerce-cart .cart-collaterals .cross-sells { width: auto !important; float: none !important; margin: 0 !important; }
  .thzn.woocommerce-cart .cart-collaterals .cart_totals { order: -1; }
}
@media (max-width: 700px) { .thzn .cross-sells ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* phones: each card in the cart is a small card of its own (picture, name and tags, remove; quantity and subtotal) */
@media (max-width: 768px) {
  .thzn table.shop_table.cart, .thzn table.shop_table.cart tbody, .thzn table.shop_table.cart tr:not(.cart_item) { display: block; }
  .thzn table.shop_table.cart tr.cart_item { display: grid; grid-template-columns: 72px minmax(0, 1fr) auto; grid-template-areas: "img name rm" "img qty sub"; gap: 8px 12px; align-items: center; padding: 12px; border-top: 1px solid var(--line); }
  .thzn table.shop_table.cart tr.cart_item:first-child { border-top: 0; }
  .thzn table.shop_table.cart tr.cart_item td { display: block !important; padding: 0 !important; border: 0 !important; text-align: left !important; background: none !important; }
  .thzn table.shop_table.cart tr.cart_item td::before { content: none !important; display: none !important; }
  .thzn table.shop_table.cart tr.cart_item td.product-thumbnail { grid-area: img; align-self: start; width: auto; }
  .thzn table.shop_table.cart tr.cart_item td.product-thumbnail img { width: 72px; }
  .thzn table.shop_table.cart tr.cart_item td.product-name { grid-area: name; min-width: 0; }
  .thzn table.shop_table.cart tr.cart_item td.product-name a { font-size: 14px; }
  .thzn table.shop_table.cart tr.cart_item td.product-remove { grid-area: rm; align-self: start; width: auto; }
  .thzn table.shop_table.cart tr.cart_item td.product-price { display: none !important; }
  .thzn table.shop_table.cart tr.cart_item td.product-quantity { grid-area: qty; }
  .thzn table.shop_table.cart tr.cart_item td.product-subtotal { grid-area: sub; text-align: right !important; }
  .thzn table.shop_table.cart td.actions { display: block; padding: 12px !important; border-top: 1px solid var(--line) !important; text-align: right; }
  .thzn-ci-tag { font-size: 11.5px; padding: 2px 8px; }
}

/* home: the line above the headline stays on one line on phones (shorter wording, smaller) */
.thzn-kicker-short { display: none; }
@media (max-width: 520px) {
  .thzn-kicker { gap: 7px; padding: 6px 12px; font-size: 12px; white-space: nowrap; max-width: 100%; }
  .thzn-kicker svg { width: 14px; height: 14px; flex: none; }
  .thzn-kicker-long { display: none; }
  .thzn-kicker-short { display: inline; }
}
/* home: the header magnifier brings up the search under the headline (a short glow shows where it is) */
.thzn-hero-search.is-called .thzn-search { animation: thzn-called 1.3s var(--ease); }
@keyframes thzn-called { 0% { box-shadow: 0 0 0 0 rgba(31, 99, 237, .55); } 40% { box-shadow: 0 0 0 10px rgba(31, 99, 237, .25); } 100% { box-shadow: 0 0 0 4px rgba(31, 99, 237, .18); } }
@media (prefers-reduced-motion: reduce) { .thzn-hero-search.is-called .thzn-search { animation: none; } }

/* after paying: delivery, secure payment, the region check and the Help Center, under the cart's and checkout's button */
.thzn-trust-box { margin: 18px 0 0; padding: 16px; border-radius: 18px; border: 1px solid rgba(127, 166, 255, .22); background: linear-gradient(160deg, rgba(31, 99, 237, .14), rgba(124, 58, 237, .06) 60%, rgba(255, 255, 255, .02)); }
.thzn-trust-box ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: minmax(0, 1fr); width: 100%; gap: 14px; }   /* a set width: in checkout's payment box it collapsed to nothing */
.thzn-trust-box li { display: flex; align-items: flex-start; gap: 12px; margin: 0; }
.thzn-trust-ic { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 12px; background: rgba(31, 99, 237, .2); color: #9cc0ff; box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12); }
.thzn-trust-box li strong { display: block; color: #fff; font-size: 14px; font-weight: 600; line-height: 1.35; }
.thzn-trust-box li small { display: block; margin-top: 2px; color: var(--soft); font-size: 12.5px; line-height: 1.45; }
.thzn a.thzn-trust-help { display: flex; align-items: center; gap: 8px; margin: 14px 0 0; padding: 12px 0 0; border-top: 1px solid rgba(127, 166, 255, .16); color: var(--accent-pale); font-size: 13.5px; font-weight: 600; }
.thzn a.thzn-trust-help .thzn-i:last-child { margin-left: auto; transition: transform .2s var(--ease); }
.thzn a.thzn-trust-help:hover .thzn-i:last-child { transform: translateX(3px); }

/* checkout: numbered steps (your details, your order, payment), the order summary with pictures, a clear total */
.thzn form.checkout { counter-reset: thzn-step; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 0 32px; }
.thzn form.checkout > .woocommerce-NoticeGroup, .thzn form.checkout > .woocommerce-notices-wrapper { grid-row: 1; margin-bottom: 20px; }
.thzn form.checkout #customer_details { grid-column: 1; grid-row: 2 / span 2; }
.thzn form.checkout #order_review_heading { display: flex; align-items: center; grid-column: 2; grid-row: 2; margin: 0 0 14px; font-size: 20px; color: #fff; }
.thzn form.checkout #order_review { grid-column: 2; grid-row: 3; }
.thzn .woocommerce-billing-fields > h3, .thzn form.checkout #order_review_heading, .thzn .thzn-co-step { display: flex; align-items: center; gap: 12px; }
.thzn .woocommerce-billing-fields > h3::before, .thzn form.checkout #order_review_heading::before, .thzn .thzn-co-step::before { counter-increment: thzn-step; content: counter(thzn-step); flex: none; display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 50%; background: linear-gradient(135deg, var(--accent), #7c3aed); color: #fff; font-size: 14px; font-weight: 700; box-shadow: 0 6px 18px -6px var(--accent); }
.thzn .thzn-co-step { margin: 22px 0 14px; font-size: 18px; color: #fff; }
.thzn #customer_details .col-2:not(:has(input, select, textarea)), .thzn .woocommerce-shipping-fields:not(:has(input, select, textarea)), .thzn .woocommerce-additional-fields:not(:has(input, select, textarea)) { display: none; }
.thzn #order_review { padding: 22px; background: linear-gradient(180deg, rgba(31, 99, 237, .08), transparent 140px), var(--surface); border-color: rgba(127, 166, 255, .22); box-shadow: 0 30px 60px -40px rgba(31, 99, 237, .6); }
.thzn .woocommerce-checkout-review-order-table { background: transparent !important; border: 0 !important; border-radius: 0; }
.thzn .woocommerce-checkout-review-order-table thead { display: none; }
.thzn .woocommerce-checkout-review-order-table tbody tr:first-child td { border-top: 0 !important; }
.thzn .woocommerce-checkout-review-order-table td, .thzn .woocommerce-checkout-review-order-table th { padding: 12px 0 !important; }
.thzn .woocommerce-checkout-review-order-table td.product-total { text-align: right; color: #fff; font-weight: 600; white-space: nowrap; vertical-align: middle; padding-left: 12px !important; }
.thzn .woocommerce-checkout-review-order-table .product-name .product-quantity { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.thzn-co-item { display: flex; align-items: center; gap: 14px; }
.thzn-co-pic { position: relative; flex: none; }
.thzn .thzn-co-pic img.thzn-co-img { display: block; width: 64px; height: 48px; object-fit: cover; border-radius: 9px; box-shadow: 0 8px 18px -10px rgba(0, 0, 0, .8); }
.thzn-co-qty { position: absolute; top: -8px; right: -8px; min-width: 22px; height: 22px; padding: 0 6px; display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; background: var(--accent); color: #fff; font-size: 12px; font-weight: 700; box-shadow: 0 0 0 2px var(--surface); }
.thzn-co-name { display: flex; flex-direction: column; align-items: flex-start; gap: 5px; min-width: 0; }
.thzn-co-title { color: #fff; font-size: 14px; font-weight: 600; line-height: 1.35; }
.thzn .woocommerce-checkout-review-order-table tfoot th { color: var(--soft); font-weight: 500; text-align: left; }
.thzn .woocommerce-checkout-review-order-table tfoot td { text-align: right; color: var(--text); }
.thzn .woocommerce-checkout-review-order-table tr.order-total th, .thzn .woocommerce-checkout-review-order-table tr.order-total td { padding-top: 16px !important; border-top: 1px solid rgba(127, 166, 255, .28) !important; color: #fff; }
.thzn .woocommerce-checkout-review-order-table tr.order-total th { font-size: 16px; font-weight: 700; }
.thzn .woocommerce-checkout-review-order-table tr.order-total td, .thzn .woocommerce-checkout-review-order-table tr.order-total td strong { font-size: 22px; font-weight: 700; color: #fff; }
.thzn #payment ul.payment_methods li { transition: border-color .15s, background-color .15s; }
.thzn #payment ul.payment_methods li:has(input:checked) { border-color: rgba(127, 166, 255, .6); background: rgba(31, 99, 237, .1); }
.thzn #payment ul.payment_methods li input[type="radio"] { accent-color: var(--accent); margin-right: 8px; }
.thzn #payment ul.payment_methods li.woocommerce-notice, .thzn #payment ul.payment_methods li .woocommerce-info { color: var(--soft); font-size: 14px; }
/* Stripe's saved cards ("MasterCard ending in 4152", "Use a new payment method"): the plugin colours the text dark, which
   disappeared on the dark boxes; light text instead */
.thzn #payment .wc-stripe-saved-method__label, .thzn #payment .wc-stripe-saved-method__title { color: #fff !important; font-weight: 600; }
.thzn #payment .woocommerce-SavedPaymentMethods-new .wc-stripe-saved-method__title { color: var(--text-2, #cbd5e1) !important; }
.thzn .woocommerce-terms-and-conditions-wrapper input[type="checkbox"] { accent-color: var(--accent); width: 18px; height: 18px; }
.thzn #place_order { position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 58px; border-radius: 999px; background: linear-gradient(135deg, #2f7bff, var(--accent) 45%, #5b3df0); box-shadow: 0 18px 40px -16px rgba(47, 123, 255, .9), inset 0 1px 0 rgba(255, 255, 255, .25); font-weight: 700; letter-spacing: .01em; transition: transform .15s var(--ease), box-shadow .2s; }
.thzn #place_order::before { content: ""; width: 18px; height: 18px; background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Crect x='4' y='11' width='16' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Crect x='4' y='11' width='16' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%3E%3C/svg%3E") center / contain no-repeat; }
.thzn #place_order:hover { transform: translateY(-1px); box-shadow: 0 22px 44px -16px rgba(47, 123, 255, 1), inset 0 1px 0 rgba(255, 255, 255, .25); }
/* the TechHauz notices (WhatsApp messages, digital delivery): a note with an icon, not an emoji box */
.thzn .techhauz-checkout-disclosure { border-radius: 14px !important; border: 1px solid rgba(245, 166, 35, .28) !important; background: rgba(245, 166, 35, .06) !important; }
.thzn .techhauz-checkout-disclosure-inner { display: flex; align-items: flex-start; gap: 10px; }
.thzn .techhauz-disclosure-icon { flex: none; width: 18px; height: 18px; margin-top: 2px; font-size: 0 !important; line-height: 0; background: #f5b54a;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 16v-4M12 8h.01'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 16v-4M12 8h.01'/%3E%3C/svg%3E") center / contain no-repeat; }
.thzn .techhauz-disclosure-text { margin: 0 !important; font-size: 13px !important; line-height: 1.5 !important; color: var(--text-2) !important; }
@media (max-width: 900px) {
  .thzn form.checkout { grid-template-columns: minmax(0, 1fr); }   /* never wider than the screen */
  .thzn form.checkout #customer_details { grid-column: 1; grid-row: 2; }
  .thzn form.checkout #order_review_heading { grid-column: 1; grid-row: 3; margin-top: 8px; }
  .thzn form.checkout #order_review { grid-column: 1; grid-row: 4; }
}
@media (max-width: 480px) { .thzn #order_review { padding: 16px; } .thzn .thzn-co-pic img.thzn-co-img { width: 56px; height: 42px; } .thzn-co-item { gap: 12px; } }

/* checkout: the returning customer's login (and a coupon form) opens as a full panel, not a narrow box */
.thzn.woocommerce-checkout form.woocommerce-form-login, .thzn.woocommerce-checkout form.checkout_coupon { max-width: none; margin: 0 0 24px; padding: 22px 24px; border-radius: 22px; background: var(--surface); border: 1px solid rgba(127, 166, 255, .22) !important; }
.thzn.woocommerce-checkout form.woocommerce-form-login > p:first-child { margin: 0 0 16px; color: var(--soft); font-size: 14px; }
.thzn.woocommerce-checkout form.woocommerce-form-login > p.form-row:not(.form-row-first):not(.form-row-last) { display: flex; align-items: center; justify-content: space-between; gap: 12px 20px; flex-wrap: wrap; margin: 4px 0 0; }
.thzn.woocommerce-checkout form.woocommerce-form-login .woocommerce-form-login__submit { width: auto; min-width: 170px; min-height: 48px; margin: 0; }
.thzn.woocommerce-checkout form.woocommerce-form-login > p.lost_password { margin: 10px 0 0; font-size: 14px; }
.thzn.woocommerce-checkout form.woocommerce-form-login .woocommerce-form-login__rememberme { margin: 0; }
@media (max-width: 600px) {
  .thzn.woocommerce-checkout form.woocommerce-form-login { padding: 18px 16px; }
  .thzn.woocommerce-checkout form.woocommerce-form-login .form-row-first, .thzn.woocommerce-checkout form.woocommerce-form-login .form-row-last { float: none; width: 100%; }
  .thzn.woocommerce-checkout form.woocommerce-form-login .woocommerce-form-login__submit { flex: 1 1 100%; }
}
/* Cloudflare Turnstile (checkout, and login, register and lost password when switched on): its own row, never wider than the page */
.thzn .cf-turnstile { display: block; clear: both; max-width: 100%; margin: 6px 0 14px; }
.thzn br.cf-turnstile-br { display: none; }
.thzn #place_order:disabled, .thzn #place_order.disabled { opacity: .55; cursor: not-allowed; transform: none; box-shadow: none; }
@media (max-width: 400px) {   /* the check is at least 300 px wide: the boxes around it give it room on small phones */
  .thzn #order_review { padding: 16px 12px; }
  .thzn .woocommerce-form-login, .thzn .woocommerce-form-register, .thzn form.lost_reset_password { padding: 18px 14px; }
}

/* My Account > Orders (Customize My Account's order cards): number, items and total beside the picture; View order and
   Invoice as labelled buttons (the plugin's icon circles, whose icon font drew oddly, give way to them) */
.thzn .wcmam-order-filters { gap: 8px; margin: 0 0 18px; }
.thzn button.wcmam-order-filters-button { padding: 8px 16px !important; border-radius: 999px !important; font-size: 13px; font-weight: 600; line-height: 1.2; min-height: 0; }
.thzn .wcmam-order-card { padding: 18px 20px !important; border-radius: 18px !important; margin: 0 0 14px !important; transform: none !important; }
.thzn .wcmam-order-header { gap: 12px; margin: 0 0 14px; font-size: 13px; }
.thzn .wcmam-order-header .status { padding: 4px 12px; border-radius: 999px; font-size: 12px; font-weight: 700; border: 1px solid; }
.thzn .wcmam-order-body { display: grid; grid-template-columns: 76px minmax(0, 1fr) auto auto; gap: 10px 16px; align-items: center; }
.thzn .wcmam-order-body > a:first-child { grid-column: 1; }
.thzn .wcmam-order-body .product-thumb { width: 76px; height: 57px; margin: 0; }
.thzn .wcmam-order-body .product-thumb img { width: 100%; height: 100%; object-fit: cover; border-radius: 10px; }
.thzn .wcmam-order-body .product-thumb.multiple { display: grid; grid-template-columns: 1fr 1fr; gap: 3px; }
.thzn .wcmam-order-body .product-thumb.multiple img { width: 100%; height: 27px; padding: 0; border-radius: 6px; }
.thzn .wcmam-order-body .order-details { grid-column: 2; min-width: 0; }
.thzn .wcmam-order-body .order-details h4 { margin: 0 0 3px; font-size: 16px; }
.thzn .wcmam-order-body .order-details h4 a { color: #fff; }
.thzn .wcmam-orders-wrapper .order-details p.wcmamtx_order_items_01 { max-width: none; margin: 0 0 6px; font-size: 14px; line-height: 1.45; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.thzn .wcmam-order-body .order-total { font-size: 14px; font-weight: 600; }
.thzn .wcmam-orders-wrapper .order-arrow { width: auto; height: auto; margin: 0; padding: 0; border-radius: 999px; font-size: 13.5px; background: transparent !important; border: 0 !important; }
.thzn .wcmam-orders-wrapper .order-arrow a { display: inline-flex; align-items: center; gap: 8px; height: 38px; padding: 0 15px; border-radius: 999px; border: 1px solid var(--line-2); background: var(--surface-3); color: #fff; font-weight: 600; white-space: nowrap; transition: background-color .15s, border-color .15s; }
.thzn .wcmam-orders-wrapper .order-arrow.view a { background: rgba(31, 99, 237, .18); border-color: rgba(127, 166, 255, .35); color: var(--accent-pale); }
.thzn .wcmam-orders-wrapper .order-arrow a:hover { background: var(--accent); border-color: var(--accent); color: #fff; }
.thzn .wcmam-orders-wrapper .order-arrow a i { display: none; }
.thzn .wcmam-orders-wrapper .order-arrow a::before { content: ""; width: 16px; height: 16px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / contain no-repeat; }
.thzn .wcmam-orders-wrapper .order-arrow.invoice a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z'/%3E%3Cpath d='M14 3v6h6M12 12v6M9 15l3 3 3-3'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z'/%3E%3Cpath d='M14 3v6h6M12 12v6M9 15l3 3 3-3'/%3E%3C/svg%3E"); }
.thzn .wcmam-orders-wrapper .order-arrow.view a::after { content: "View order"; }
.thzn .wcmam-orders-wrapper .order-arrow.invoice a::after { content: "Invoice"; }
.thzn .wcmam-order-card:hover .order-arrow { background: transparent !important; }
@media (max-width: 600px) {
  .thzn .wcmam-order-filters { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; padding-bottom: 2px; }
  .thzn button.wcmam-order-filters-button { flex: none; }
  .thzn .wcmam-order-card { padding: 16px !important; }
  .thzn .wcmam-order-body { grid-template-columns: 64px minmax(0, 1fr) minmax(0, 1fr); gap: 12px; }
  .thzn .wcmam-order-body .product-thumb { width: 64px; height: 48px; }
  .thzn .wcmam-order-body .order-details { grid-column: 2 / -1; }
  .thzn .wcmam-orders-wrapper .order-arrow.view { grid-column: 2; }
  .thzn .wcmam-orders-wrapper .order-arrow.invoice { grid-column: 3; }
  .thzn .wcmam-orders-wrapper .order-arrow.view:last-child { grid-column: 2 / -1; }
  .thzn .wcmam-orders-wrapper .order-arrow a { width: 100%; justify-content: center; padding: 0 10px; }
}

/* product page, Additional information: the details as cards, like the description's facts */
.thzn .woocommerce-Tabs-panel--additional_information > h2 { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.thzn.woocommerce table.shop_attributes { display: block; max-width: none; border: 0 !important; border-radius: 0; background: transparent; overflow: visible; }
.thzn.woocommerce table.shop_attributes tbody { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 12px; }
.thzn.woocommerce table.shop_attributes tr { position: relative; display: flex; flex-direction: column; gap: 6px; padding: 16px 18px 16px 20px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); overflow: hidden; }
.thzn.woocommerce table.shop_attributes tr::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: linear-gradient(180deg, var(--b1, var(--accent)), var(--b3, #0b2a6b)); }
.thzn.woocommerce table.shop_attributes th, .thzn.woocommerce table.shop_attributes td { display: block; width: auto; padding: 0 !important; border: 0 !important; background: none !important; }
.thzn.woocommerce table.shop_attributes th { color: var(--mute); font-size: 11.5px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase; }
.thzn.woocommerce table.shop_attributes td { display: flex; align-items: center; gap: 8px; color: #fff; font-size: 15.5px; font-weight: 600; line-height: 1.4; }
.thzn.woocommerce table.shop_attributes td p { margin: 0; }
.thzn.woocommerce table.shop_attributes td a { color: var(--accent-pale); }
.thzn.woocommerce table.shop_attributes td a:hover { color: #fff; }
.thzn.woocommerce table.shop_attributes td img.thzn-flag { flex: none; width: 22px; height: 16px; border-radius: 3px; }
.thzn.woocommerce table.shop_attributes td .thzn-ci-globe { width: 18px; height: 18px; color: var(--accent-pale); }

/* product page, out of stock: a clear notice where Add to cart would be, the picture marked too */
.thzn-oos { display: flex; align-items: flex-start; gap: 14px; margin: 18px 0; padding: 16px 18px; border-radius: 16px; border: 1px solid rgba(255, 107, 107, .35); background: linear-gradient(135deg, rgba(255, 107, 107, .14), rgba(255, 107, 107, .04)); }
.thzn-oos-ic { flex: none; width: 38px; height: 38px; border-radius: 12px; background: rgba(255, 107, 107, .18); position: relative; }
.thzn-oos-ic::after { content: ""; position: absolute; inset: 9px; background: #ff8a8a; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M5.6 5.6l12.8 12.8'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M5.6 5.6l12.8 12.8'/%3E%3C/svg%3E") center / contain no-repeat; }
.thzn-oos strong { display: block; color: #fff; font-size: 16px; }
.thzn-oos p { margin: 3px 0 0 !important; color: var(--text-2); font-size: 14px; line-height: 1.5; }
.thzn a.thzn-oos-link { display: inline-flex; align-items: center; gap: 6px; margin-top: 8px; color: var(--accent-pale); font-size: 14px; font-weight: 600; }
.thzn.thzn-is-oos .summary .stock.out-of-stock { display: none; }
.thzn.thzn-is-oos .woocommerce-product-gallery { position: relative; }
.thzn.thzn-is-oos .woocommerce-product-gallery::after { content: "Out of stock"; position: absolute; z-index: 3; inset: 16px auto auto 16px; width: auto; height: auto; padding: 6px 12px; background-image: none; -webkit-mask-image: none; mask-image: none; border-radius: 999px; background: rgba(12, 16, 28, .85); border: 1px solid rgba(255, 107, 107, .45); color: #ff9c9c; font-size: 12.5px; font-weight: 700; letter-spacing: .3px; pointer-events: none; }
.thzn.thzn-is-oos .woocommerce-product-gallery img { filter: saturate(.55) brightness(.8); }
.thzn.thzn-is-oos .summary .price { opacity: .6; }

/* My Account: compact, one look for every page (dashboard, orders, addresses, details, payment methods, order view) */
.thzn.woocommerce-account .thzn-h1 { font-size: clamp(28px, 3.4vw, 40px); }
.thzn.woocommerce-account .thzn-page-head { margin-bottom: 20px; }
.thzn .woocommerce-account .woocommerce, .thzn.woocommerce-account .thzn-content > .woocommerce { grid-template-columns: 230px minmax(0, 1fr); gap: 24px; }
.thzn.woocommerce-account .woocommerce-MyAccount-navigation { padding: 8px; border-radius: 18px; }
.thzn.woocommerce-account .woocommerce-MyAccount-navigation a { padding: 9px 12px; font-size: 14.5px; }
.thzn.woocommerce-account .woocommerce-MyAccount-navigation .customer-logout a, .thzn.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a { color: var(--mute); }
/* dashboard: the numbers, then the shortcuts with one icon style */
.thzn .sb-stats-grid { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px !important; margin: 0 0 14px !important; }
.thzn .sb-stat-box { padding: 14px 16px !important; border-radius: 16px !important; position: relative; overflow: hidden; }
.thzn .sb-stat-box::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: linear-gradient(180deg, var(--accent), #7c3aed); }
.thzn .sb-stat-box span { font-size: 11.5px !important; font-weight: 600; letter-spacing: 1.1px; text-transform: uppercase; }
.thzn .sb-stat-box strong { display: block; margin-top: 4px; font-size: 22px !important; font-weight: 800; letter-spacing: -.02em; }
.thzn .wcmtx_def1-dashboard { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 12px !important; }
.thzn a.wcmtx_def1-card { position: relative; display: grid !important; grid-template-columns: 40px minmax(0, 1fr); grid-template-rows: auto auto; column-gap: 12px; align-items: center; padding: 14px 16px !important; min-height: 0 !important; border-radius: 16px !important; text-align: left !important; transition: border-color .15s, transform .15s var(--ease); }
.thzn a.wcmtx_def1-card:hover { transform: translateY(-2px); }
.thzn a.wcmtx_def1-card > i.wcmamtx_fa_icon { display: none !important; }
.thzn a.wcmtx_def1-card::before { content: ""; grid-row: 1 / span 2; width: 40px; height: 40px; border-radius: 12px; background: rgba(31, 99, 237, .18); }
.thzn a.wcmtx_def1-card::after { content: ""; position: absolute; left: 26px; top: 50%; width: 20px; height: 20px; margin-top: -10px; background: #9cc0ff; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat; }
.thzn a.wcmtx_def1-card.orders::after { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 8h14l-1 13H6z'/%3E%3Cpath d='M9 8V6a3 3 0 0 1 6 0v2'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 8h14l-1 13H6z'/%3E%3Cpath d='M9 8V6a3 3 0 0 1 6 0v2'/%3E%3C/svg%3E"); }
.thzn a.wcmtx_def1-card.edit-address::after { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11a7 7 0 0 1 14 0c0 4.8-7 11-7 11z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11a7 7 0 0 1 14 0c0 4.8-7 11-7 11z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E"); }
.thzn a.wcmtx_def1-card.payment-methods::after { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='5' width='20' height='14' rx='2'/%3E%3Cpath d='M2 10h20M6 15h4'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='5' width='20' height='14' rx='2'/%3E%3Cpath d='M2 10h20M6 15h4'/%3E%3C/svg%3E"); }
.thzn a.wcmtx_def1-card.edit-account::after { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21a8 8 0 0 1 16 0'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21a8 8 0 0 1 16 0'/%3E%3C/svg%3E"); }
.thzn a.wcmtx_def1-card.downloads::after { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v12M7 11l5 5 5-5M5 20h14'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v12M7 11l5 5 5-5M5 20h14'/%3E%3C/svg%3E"); }
.thzn a.wcmtx_def1-card[class*="ticket"]::after { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12a8 8 0 0 1-11.6 7.1L3 21l1.9-6.4A8 8 0 1 1 21 12z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12a8 8 0 0 1-11.6 7.1L3 21l1.9-6.4A8 8 0 1 1 21 12z'/%3E%3C/svg%3E"); }
.thzn a.wcmtx_def1-card.customer-logout::before { background: rgba(255, 107, 107, .14); }
.thzn a.wcmtx_def1-card.customer-logout::after { background: #ff9c9c; -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 4h3a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2h-3M10 17l5-5-5-5M15 12H4'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 4h3a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2h-3M10 17l5-5-5-5M15 12H4'/%3E%3C/svg%3E"); }
.thzn a.wcmtx_def1-card .wcmatx_tab_title_new_de { grid-column: 2; font-size: 15px !important; font-weight: 600; margin: 0 !important; }
.thzn a.wcmtx_def1-card .wcmatx_tab_desc_below_dashlink { grid-column: 2; font-size: 12.5px !important; margin: 2px 0 0 !important; }
/* addresses: each address a card, its link a button */

.thzn .woocommerce-MyAccount-content .woocommerce-Address { width: auto; float: none; max-width: 520px; padding: 18px 20px; border-radius: 18px; border: 1px solid var(--line); background: var(--surface); }
.thzn .woocommerce-MyAccount-content .woocommerce-Address-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin: 0 0 10px; }
.thzn .woocommerce-MyAccount-content .woocommerce-Address-title h2 { margin: 0; font-size: 18px; }
.thzn .woocommerce-MyAccount-content .woocommerce-Address-title a.edit { display: inline-flex; align-items: center; height: 34px; padding: 0 14px; border-radius: 999px; border: 1px solid rgba(127, 166, 255, .35); background: rgba(31, 99, 237, .16); color: var(--accent-pale); font-size: 13.5px; font-weight: 600; float: none; }
.thzn .woocommerce-MyAccount-content .woocommerce-Address address { margin: 0; color: var(--text-2); font-style: normal; font-size: 14.5px; line-height: 1.6; }
/* account details and address forms: compact fields */
.thzn.woocommerce-account .woocommerce-MyAccount-content form .form-row { margin-bottom: 12px; }
.thzn.woocommerce-account .woocommerce-MyAccount-content form input.input-text, .thzn.woocommerce-account .woocommerce-MyAccount-content form select { min-height: 44px; }
.thzn.woocommerce-account .woocommerce-MyAccount-content form em { display: block; margin-top: 4px; color: var(--mute); font-size: 12.5px; }
/* order view: its buttons in one row; Order again stands out */
.thzn .woocommerce-MyAccount-content a[href*="order_again"] { background: var(--accent) !important; border-color: var(--accent) !important; color: #fff !important; }
/* orders list: Order again (added to completed orders by the theme's script) */
.thzn .wcmam-orders-wrapper .order-arrow.order-again a { background: var(--accent); border-color: var(--accent); color: #fff; }
.thzn .wcmam-orders-wrapper .order-arrow.order-again a:hover { background: #3a78f2; }
.thzn .wcmam-orders-wrapper .order-arrow.order-again a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 0 1 15.5-6.2L21 8M21 3v5h-5M21 12a9 9 0 0 1-15.5 6.2L3 16M3 21v-5h5'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 0 1 15.5-6.2L21 8M21 3v5h-5M21 12a9 9 0 0 1-15.5 6.2L3 16M3 21v-5h5'/%3E%3C/svg%3E"); }
.thzn .wcmam-order-body { grid-template-columns: 76px minmax(0, 1fr); grid-auto-flow: column; grid-auto-columns: auto; }
@media (max-width: 600px) {
  .thzn .wcmam-order-body { grid-template-columns: 64px minmax(0, 1fr) minmax(0, 1fr); grid-auto-flow: row; }
  .thzn .wcmam-orders-wrapper .order-arrow.order-again { grid-column: 2 / -1; }
  .thzn .sb-stats-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px !important; }
  .thzn .sb-stat-box { padding: 12px !important; }
  .thzn .sb-stat-box strong { font-size: 17px !important; }
  .thzn .sb-stat-box span { font-size: 10px !important; letter-spacing: .6px; }
  .thzn .wcmtx_def1-dashboard { grid-template-columns: 1fr 1fr; gap: 8px !important; }
  .thzn a.wcmtx_def1-card { grid-template-columns: 34px minmax(0, 1fr); padding: 12px !important; }
  .thzn a.wcmtx_def1-card::before { width: 34px; height: 34px; border-radius: 10px; }
  .thzn a.wcmtx_def1-card::after { left: 21px; width: 18px; height: 18px; margin-top: -9px; }
  .thzn a.wcmtx_def1-card .wcmatx_tab_desc_below_dashlink { display: none; }
}

/* My Account > Orders (sysbasics-myaccount/orders.php): the status filter, then one compact row per order */
.thzn-ofilter { display: flex; gap: 6px; flex-wrap: wrap; margin: 0 0 14px; }
.thzn .thzn-ofilter a { display: inline-flex; align-items: center; gap: 6px; height: 32px; padding: 0 12px; border-radius: 999px; border: 1px solid var(--line-2); background: var(--surface); color: var(--text-2); font-size: 13px; font-weight: 600; white-space: nowrap; }
.thzn .thzn-ofilter a span { min-width: 20px; height: 20px; padding: 0 6px; display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; background: rgba(255, 255, 255, .08); color: var(--mute); font-size: 11.5px; }
.thzn .thzn-ofilter a:hover { border-color: rgba(127, 166, 255, .45); color: #fff; }
.thzn .thzn-ofilter a.is-on { background: var(--accent); border-color: var(--accent); color: #fff; }
.thzn .thzn-ofilter a.is-on span { background: rgba(255, 255, 255, .22); color: #fff; }
.thzn-olist { list-style: none; margin: 0 !important; padding: 0 !important; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); overflow: hidden; }
.thzn-orow { display: grid; grid-template-columns: 56px minmax(0, 1fr) auto; gap: 14px; align-items: center; margin: 0; padding: 12px 16px; border-top: 1px solid var(--line); transition: background-color .15s; }
.thzn-orow:first-child { border-top: 0; }
.thzn-orow:hover { background: rgba(255, 255, 255, .025); }
.thzn-orow-pic { position: relative; display: block; width: 56px; height: 42px; }
.thzn .thzn-orow-pic img { width: 56px; height: 42px; object-fit: cover; border-radius: 8px; display: block; }
.thzn-orow-more { position: absolute; right: -6px; bottom: -6px; min-width: 20px; height: 20px; padding: 0 5px; display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; background: var(--surface-3); border: 2px solid var(--surface); color: #fff; font-size: 10.5px; font-weight: 700; }
.thzn-orow-main { min-width: 0; }
.thzn-orow-top { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.thzn .thzn-orow-num { color: #fff; font-weight: 700; font-size: 14.5px; }
.thzn .thzn-orow-num:hover { color: var(--accent-pale); }
.thzn-ostatus { display: inline-flex; align-items: center; height: 22px; padding: 0 9px; border-radius: 999px; border: 1px solid var(--line-2); background: var(--surface-3); color: var(--text-2); font-size: 11.5px; font-weight: 700; letter-spacing: .2px; }
.thzn-ostatus.is-completed { background: rgba(61, 220, 151, .12); border-color: rgba(61, 220, 151, .3); color: var(--ok); }
.thzn-ostatus:is(.is-processing, .is-arrival-shipment) { background: rgba(31, 99, 237, .16); border-color: rgba(127, 166, 255, .3); color: var(--accent-pale); }
.thzn-ostatus:is(.is-pending, .is-on-hold) { background: rgba(255, 181, 71, .12); border-color: rgba(255, 181, 71, .3); color: var(--warn); }
.thzn-ostatus:is(.is-cancelled, .is-failed, .is-disputed) { background: rgba(255, 107, 107, .12); border-color: rgba(255, 107, 107, .3); color: var(--bad); }
.thzn .thzn-orow-items { margin: 3px 0 0 !important; color: var(--text-2); font-size: 13.5px; line-height: 1.4; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.thzn .thzn-orow-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 7px; margin: 3px 0 0 !important; color: var(--mute); font-size: 12.5px; }
.thzn .thzn-orow-meta strong { color: #fff; font-weight: 600; }
.thzn-orow-actions { display: flex; gap: 6px; flex-wrap: wrap; justify-content: flex-end; }
.thzn .thzn-oact { display: inline-flex; align-items: center; gap: 6px; height: 32px; padding: 0 12px; border-radius: 999px; border: 1px solid var(--line-2); background: var(--surface-3); color: #fff; font-size: 12.5px; font-weight: 600; white-space: nowrap; transition: background-color .15s, border-color .15s; }
.thzn .thzn-oact::before { content: ""; width: 14px; height: 14px; flex: none; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / contain no-repeat; }
.thzn a.thzn-oact:hover { background: var(--accent); border-color: var(--accent); color: #fff; }
.thzn .thzn-oact.is-view { background: rgba(31, 99, 237, .16); border-color: rgba(127, 166, 255, .35); color: var(--accent-pale); }
.thzn .thzn-oact.is-order-again { background: var(--accent); border-color: var(--accent); color: #fff; }
.thzn .thzn-oact.is-order-again::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 0 1 15.5-6.2L21 8M21 3v5h-5M21 12a9 9 0 0 1-15.5 6.2L3 16M3 21v-5h5'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 0 1 15.5-6.2L21 8M21 3v5h-5M21 12a9 9 0 0 1-15.5 6.2L3 16M3 21v-5h5'/%3E%3C/svg%3E"); }
.thzn .thzn-oact.is-invoice::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z'/%3E%3Cpath d='M14 3v6h6M12 12v6M9 15l3 3 3-3'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z'/%3E%3Cpath d='M14 3v6h6M12 12v6M9 15l3 3 3-3'/%3E%3C/svg%3E"); }
.thzn .thzn-oact.is-pay::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='5' width='20' height='14' rx='2'/%3E%3Cpath d='M2 10h20'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='5' width='20' height='14' rx='2'/%3E%3Cpath d='M2 10h20'/%3E%3C/svg%3E"); }
.thzn .thzn-oact.is-cancel { color: #ff9c9c; }
.thzn .thzn-oact.is-cancel::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E"); }
.thzn .thzn-oact:is(.is-track, .is-ast_track)::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h11v10H3zM14 10h4l3 3v3h-7'/%3E%3Ccircle cx='7' cy='18' r='2'/%3E%3Ccircle cx='17' cy='18' r='2'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h11v10H3zM14 10h4l3 3v3h-7'/%3E%3Ccircle cx='7' cy='18' r='2'/%3E%3Ccircle cx='17' cy='18' r='2'/%3E%3C/svg%3E"); }
.thzn .thzn-oact.is-prev::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 12H5M11 6l-6 6 6 6'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 12H5M11 6l-6 6 6 6'/%3E%3C/svg%3E"); }
.thzn .thzn-oact.is-next { flex-direction: row-reverse; }
.thzn .thzn-oact.is-next::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E"); }
.thzn-opager { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 14px 0 0; }
.thzn-opager-at { color: var(--mute); font-size: 13px; }
.thzn-oempty { padding: 28px 20px; border: 1px dashed var(--line-2); border-radius: 18px; text-align: center; color: var(--soft); }
.thzn-oempty p { margin: 0 0 12px !important; }
@media (max-width: 700px) {
  .thzn-ofilter { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin-inline: -2px; padding: 0 2px 2px; }
  .thzn-orow { grid-template-columns: 48px minmax(0, 1fr); gap: 10px 12px; padding: 12px; }
  .thzn-orow-pic, .thzn .thzn-orow-pic img { width: 48px; height: 36px; }
  .thzn-orow-actions { grid-column: 1 / -1; justify-content: flex-start; }
  .thzn .thzn-orow-items { white-space: normal; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
}

/* My Account > Addresses: the plugin's pale notice becomes a dark note */
.thzn.woocommerce-account .woocommerce-MyAccount-content.endpoint-edit-address > p:first-of-type { display: flex; align-items: center; gap: 10px; margin: 0 0 14px; padding: 10px 14px; border-radius: 12px; border: 1px solid rgba(127, 166, 255, .22); background: rgba(31, 99, 237, .08); color: var(--text-2); font-size: 13.5px; }
.thzn.woocommerce-account .woocommerce-MyAccount-content.endpoint-edit-address > p:first-of-type::before { content: ""; flex: none; width: 16px; height: 16px; background: var(--accent-pale); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 16v-4M12 8h.01'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 16v-4M12 8h.01'/%3E%3C/svg%3E") center / contain no-repeat; }

/* support tickets (My Account > Contact us): labels readable, each ticket one compact card */
.thzn .wcsts_attachments_label, .thzn #wcsts_new_ticket_box .wcsts_attachments_label { color: var(--text-2) !important; }
.thzn .wcsts_single_ticket_container { padding: 14px 16px !important; border-radius: 16px; margin: 0 0 10px !important; }
.thzn .wcsts_ticket_subject { display: flex !important; align-items: center; justify-content: space-between; gap: 12px; padding: 0 !important; background: none !important; font-size: 16px; font-weight: 700; }
.thzn .wcsts_ticket_subject .wcts_expand_button { min-height: 32px !important; height: 32px; padding: 0 14px !important; font-size: 12.5px; background: rgba(31, 99, 237, .16) !important; border: 1px solid rgba(127, 166, 255, .35) !important; color: var(--accent-pale) !important; }
.thzn .wcsts_ticket_subject .wcts_expand_button:hover { background: var(--accent) !important; color: #fff !important; }
.thzn .wcsts_ticket_status { display: block; margin: 6px 0 0; padding: 0 !important; background: none !important; font-size: 12.5px; line-height: 1.9; color: var(--mute) !important; }
.thzn .wcsts_ticket_status strong { color: var(--soft); font-weight: 600; }
.thzn .wcsts_ticket_status .wcsts_status_box { display: inline-flex; align-items: center; height: 20px; padding: 0 8px !important; font-size: 11.5px; font-weight: 700; }

/* shop, category and brand pages: the In stock only switch beside the sorting */
.thzn a.thzn-stock-toggle { display: inline-flex; align-items: center; gap: 10px; height: 44px; padding: 0 16px 0 12px; border-radius: 999px; border: 1px solid var(--line-2); background: var(--bg-2); color: var(--text-2); font-size: 14px; font-weight: 600; white-space: nowrap; transition: border-color .15s, color .15s; }
.thzn a.thzn-stock-toggle:hover { border-color: rgba(127, 166, 255, .45); color: #fff; }
.thzn-switch { position: relative; flex: none; width: 34px; height: 20px; border-radius: 999px; background: var(--surface-3); border: 1px solid var(--line-2); transition: background-color .2s; }
.thzn-switch::after { content: ""; position: absolute; top: 2px; left: 2px; width: 14px; height: 14px; border-radius: 50%; background: #9aa6bd; transition: transform .2s var(--ease), background-color .2s; }
.thzn a.thzn-stock-toggle.is-on { border-color: rgba(61, 220, 151, .45); color: #fff; }
.thzn a.thzn-stock-toggle.is-on .thzn-switch { background: rgba(61, 220, 151, .35); border-color: rgba(61, 220, 151, .5); }
.thzn a.thzn-stock-toggle.is-on .thzn-switch::after { transform: translateX(14px); background: var(--ok); }
@media (max-width: 600px) { .thzn-shop-bar { gap: 10px; } .thzn-shop-bar .woocommerce-result-count { flex: 1 1 100%; } .thzn a.thzn-stock-toggle { height: 40px; } .thzn .woocommerce-ordering select { min-width: 0; min-height: 40px; } }

/* home: the platforms after the big six, as a row of small brand tiles (logo, name, cards), swiped or scrolled with arrows */
.thzn-strip-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 26px 0 12px; }
.thzn .thzn-strip-h { margin: 0; font-size: 15px; font-weight: 700; color: var(--soft); letter-spacing: .2px; }
.thzn-strip-nav { display: flex; gap: 6px; }
.thzn-strip-nav .thzn-icon-btn { width: 36px; height: 36px; border-radius: 50%; border: 1px solid var(--line-2); background: var(--surface); color: var(--text-2); }
.thzn-strip-nav .thzn-icon-btn:first-child svg { transform: scaleX(-1); }
.thzn-strip-nav .thzn-icon-btn:hover { border-color: rgba(127, 166, 255, .45); color: #fff; }
.thzn-strip { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(176px, 1fr); gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding: 2px 2px 8px; margin: 0 -2px; }
.thzn-strip::-webkit-scrollbar { display: none; }
.thzn a.thzn-mini { scroll-snap-align: start; display: flex; align-items: center; gap: 12px; min-width: 0; padding: 12px 14px; border-radius: 16px; border: 1px solid var(--line); background: linear-gradient(150deg, color-mix(in srgb, var(--b1, var(--accent)) 20%, var(--surface)), var(--surface) 70%); color: var(--text); transition: border-color .15s, transform .2s var(--ease); }
.thzn a.thzn-mini:hover { border-color: color-mix(in srgb, var(--b1, var(--accent)) 60%, transparent); transform: translateY(-2px); }
.thzn-mini .thzn-blogo { width: 42px; height: 42px; border-radius: 12px; }
.thzn-mini .thzn-blogo img:not(.is-tile) { width: 24px; height: 24px; }
.thzn-blogo-letter { color: #fff; font-weight: 800; font-size: 18px; }
.thzn-mini-t { display: flex; flex-direction: column; min-width: 0; }
.thzn-mini-t strong { color: #fff; font-size: 14px; font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.thzn-mini-t small { color: var(--mute); font-size: 12px; }
.thzn a.thzn-mini-all { background: var(--surface); }
.thzn-mini-all .thzn-blogo { background: rgba(31, 99, 237, .2); color: var(--accent-pale); box-shadow: none; }
@media (max-width: 700px) { .thzn-strip { grid-auto-columns: 158px; } .thzn-strip-nav { display: none; } }

/* My Account > an order: its buttons (Back to orders, Invoice, Order again, Pay, ...) one size and one style, own icons */
.thzn .wcmamtx_view_order-actions { display: flex !important; flex-wrap: wrap; gap: 10px !important; align-items: center !important; }
.thzn .wcmamtx_view_order-actions a.wcmamtx_view_order-btn, .thzn a.wcmamtx_view_order-btn { display: inline-flex !important; align-items: center !important; gap: 8px !important; height: 44px !important; min-height: 44px !important; margin: 0 !important; padding: 0 18px !important; border-radius: 12px !important; border: 1px solid var(--line-2) !important; background: var(--surface-3) !important; color: #fff !important; font: 600 14.5px/1 var(--font) !important; text-transform: none !important; letter-spacing: 0 !important; box-shadow: none !important; }
.thzn a.wcmamtx_view_order-btn:hover { background: var(--accent) !important; border-color: var(--accent) !important; }
.thzn a.wcmamtx_view_order-btn > i { display: none !important; }
.thzn a.wcmamtx_view_order-btn::before { content: ""; width: 16px; height: 16px; flex: none; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 12H5M11 6l-6 6 6 6'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 12H5M11 6l-6 6 6 6'/%3E%3C/svg%3E") center / contain no-repeat; }
.thzn a.wcmamtx_view_order-btn.invoice::before, .thzn a.wcmamtx_view_order-btn[href*="wcpdf"]::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z'/%3E%3Cpath d='M14 3v6h6M12 12v6M9 15l3 3 3-3'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z'/%3E%3Cpath d='M14 3v6h6M12 12v6M9 15l3 3 3-3'/%3E%3C/svg%3E"); }
.thzn a.wcmamtx_view_order-btn[href*="order_again"]::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 0 1 15.5-6.2L21 8M21 3v5h-5M21 12a9 9 0 0 1-15.5 6.2L3 16M3 21v-5h5'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 0 1 15.5-6.2L21 8M21 3v5h-5M21 12a9 9 0 0 1-15.5 6.2L3 16M3 21v-5h5'/%3E%3C/svg%3E"); }
.thzn a.wcmamtx_view_order-btn.pay::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='5' width='20' height='14' rx='2'/%3E%3Cpath d='M2 10h20'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='5' width='20' height='14' rx='2'/%3E%3Cpath d='M2 10h20'/%3E%3C/svg%3E"); }
.thzn a.wcmamtx_view_order-btn.cancel::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E"); }
.thzn a.wcmamtx_view_order-btn[href*="order_again"] { background: var(--accent) !important; border-color: var(--accent) !important; }
@media (max-width: 600px) { .thzn .wcmamtx_view_order-actions a.wcmamtx_view_order-btn { flex: 1 1 calc(50% - 5px); justify-content: center; padding: 0 12px !important; } }

/* product page: the zoom shows on the card's own dark panel (WooCommerce paints it white), a clear magnifier */
/* picture zoom on hover: the zoomed copy is see-through (no box of its own showing strips at the sides), the normal
   picture hides under it while zooming, so the gallery's own background shows as one piece */
.thzn.woocommerce div.product div.images .woocommerce-product-gallery__wrapper .zoomImg { background-color: transparent !important; }
.thzn.woocommerce div.product div.images .woocommerce-product-gallery__image > a img { transition: opacity .2s; }
.thzn.woocommerce div.product div.images .woocommerce-product-gallery__image:has(.zoomImg):hover > a img { opacity: 0; }
.thzn.woocommerce div.product div.images .woocommerce-product-gallery__trigger { width: 40px; height: 40px; top: 12px; right: 12px; border-radius: 12px !important; background: rgba(7, 11, 22, .72) !important; border: 1px solid rgba(255, 255, 255, .22) !important; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); transition: background-color .15s; }
.thzn.woocommerce div.product div.images .woocommerce-product-gallery__trigger:hover { background: var(--accent) !important; border-color: var(--accent) !important; }
.thzn.woocommerce div.product div.images .woocommerce-product-gallery__trigger::after { display: none; }
.thzn.woocommerce div.product div.images .woocommerce-product-gallery__trigger::before { content: ""; position: absolute; inset: 10px; width: auto; height: auto; left: 10px; top: 10px; border: 0; border-radius: 0; background: #fff; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5M11 8v6M8 11h6'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5M11 8v6M8 11h6'/%3E%3C/svg%3E") center / contain no-repeat; }

/* product page: quantity as a − / + stepper beside a large Add to cart */
.thzn .summary form.cart { gap: 12px; }
.thzn .summary form.cart .quantity.thzn-stepper { display: inline-flex; align-items: center; height: 56px; padding: 4px; border: 1px solid var(--line-2); border-radius: 999px; background: var(--bg-2); }
.thzn .thzn-stepper button { flex: none; width: 46px; height: 46px; border: 0; border-radius: 50%; background: var(--surface-3); color: #fff; font: 600 22px/1 var(--font); cursor: pointer; transition: background-color .15s; }
.thzn .thzn-stepper button:hover { background: var(--accent); }
.thzn .thzn-stepper button:disabled { opacity: .35; cursor: not-allowed; background: var(--surface-3); }
.thzn .summary .thzn-stepper .qty { width: 52px; min-height: 0; height: 46px; padding: 0; border: 0 !important; background: transparent !important; box-shadow: none !important; text-align: center; font: 700 17px var(--font); -moz-appearance: textfield; }
.thzn .thzn-stepper .qty::-webkit-outer-spin-button, .thzn .thzn-stepper .qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.thzn .summary .single_add_to_cart_button { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 56px; border-radius: 999px; background: linear-gradient(135deg, #2f7bff, var(--accent) 45%, #5b3df0) !important; box-shadow: 0 18px 40px -16px rgba(47, 123, 255, .9), inset 0 1px 0 rgba(255, 255, 255, .25); font-size: 16.5px; font-weight: 700; transition: transform .15s var(--ease), box-shadow .2s; }
.thzn .summary .single_add_to_cart_button::before { content: ""; width: 20px; height: 20px; flex: none; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 8h14l-1 13H6z'/%3E%3Cpath d='M9 8V6a3 3 0 0 1 6 0v2'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 8h14l-1 13H6z'/%3E%3Cpath d='M9 8V6a3 3 0 0 1 6 0v2'/%3E%3C/svg%3E") center / contain no-repeat; }
.thzn .summary .single_add_to_cart_button:hover { transform: translateY(-1px); }
.thzn .summary .single_add_to_cart_button.loading::before { -webkit-mask: none; mask: none; border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; width: 16px; height: 16px; animation: thzn-spin .7s linear infinite; }
@keyframes thzn-spin { to { transform: rotate(360deg); } }
.thzn .summary .techhauz-trust-block { margin-top: 18px !important; }
@media (max-width: 480px) { .thzn .summary .single_add_to_cart_button { flex: 1 1 100%; } .thzn .summary form.cart .quantity.thzn-stepper { flex: 1 1 100%; justify-content: space-between; } }

/* product page: Share, beside the brand and country pills */
.thzn-pills { align-items: center; }
.thzn-share { position: relative; margin-left: auto; }
.thzn .thzn-share-btn { display: inline-flex; align-items: center; gap: 7px; height: 36px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--line-2); background: var(--surface); color: var(--text-2); font: 600 13.5px var(--font); cursor: pointer; }
.thzn .thzn-share-btn:hover, .thzn .thzn-share-btn[aria-expanded="true"] { border-color: rgba(127, 166, 255, .45); color: #fff; }
.thzn-share-ic { width: 15px; height: 15px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='18' cy='5' r='3'/%3E%3Ccircle cx='6' cy='12' r='3'/%3E%3Ccircle cx='18' cy='19' r='3'/%3E%3Cpath d='M8.6 13.5l6.8 4M15.4 6.5l-6.8 4'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='18' cy='5' r='3'/%3E%3Ccircle cx='6' cy='12' r='3'/%3E%3Ccircle cx='18' cy='19' r='3'/%3E%3Cpath d='M8.6 13.5l6.8 4M15.4 6.5l-6.8 4'/%3E%3C/svg%3E") center / contain no-repeat; }
.thzn-share-menu { position: absolute; z-index: 30; right: 0; top: calc(100% + 8px); width: 232px; padding: 8px; border: 1px solid var(--line-2); border-radius: 18px; background: var(--surface-2); box-shadow: 0 28px 60px -22px rgba(0, 0, 0, .95), 0 0 0 1px rgba(255, 255, 255, .02); }
.thzn-share-menu[hidden] { display: none; }
.thzn .thzn-share-menu a, .thzn .thzn-share-menu button { display: flex; align-items: center; gap: 12px; width: 100%; min-height: 46px; padding: 7px 10px; border: 0; border-radius: 12px; background: none; color: var(--text-2); font: 600 14px var(--font); text-align: left; text-decoration: none; cursor: pointer; transition: background .15s, color .15s; }
.thzn .thzn-share-menu a:hover, .thzn .thzn-share-menu button:hover { background: rgba(255, 255, 255, .06); color: #fff; }
.thzn .thzn-share-head { margin: 2px 10px 6px !important; color: var(--mute); font-size: 11.5px; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase; }
.thzn-share-badge { display: inline-flex; flex: none; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 50%; color: #fff; transition: transform .15s; }
.thzn-share-badge svg { width: 17px; height: 17px; }
.thzn .thzn-share-menu a:hover .thzn-share-badge, .thzn .thzn-share-menu button:hover .thzn-share-badge { transform: scale(1.06); }
.thzn-share-badge.is-copy { background: rgba(255, 255, 255, .08); border: 1px solid var(--line-2); color: var(--text); }
.thzn-share-badge.is-copy svg + svg, .thzn-share-copy.is-done .thzn-share-badge.is-copy svg:first-child { display: none; }
.thzn-share-copy.is-done .thzn-share-badge.is-copy svg + svg { display: block; }
.thzn .thzn-share-copy.is-done { color: #fff; }
.thzn-share-copy.is-done .thzn-share-badge.is-copy { background: #22c55e; border-color: #22c55e; color: #fff; }
.thzn-share-badge.is-whatsapp { background: #25d366; }
.thzn-share-badge.is-whatsapp svg { width: 18px; height: 18px; }
.thzn-share-badge.is-telegram { background: radial-gradient(circle, #fff 0 60%, transparent 62%); color: #26a5e4; }
.thzn-share-badge.is-telegram svg, .thzn-share-badge.is-facebook svg { width: 32px; height: 32px; }
.thzn-share-badge.is-x { background: #000; border: 1px solid rgba(255, 255, 255, .22); }
.thzn-share-badge.is-x svg { width: 14px; height: 14px; }
.thzn-share-badge.is-facebook { background: radial-gradient(circle, #fff 0 60%, transparent 62%); color: #0866ff; }
.thzn-share-badge.is-email { background: linear-gradient(135deg, var(--accent), #6d8dff); }
.thzn-co-name .thzn-ci-tag { white-space: normal; }   /* a long region name wraps inside the order summary */
.thzn-404-code { padding: 0 .06em; }
/* WooCommerce's Sale! badge on the product picture, in the theme's colours (it was yellow on white text) */
.thzn.woocommerce span.onsale, .thzn .woocommerce span.onsale { top: 14px; left: 14px; right: auto; min-width: 0; min-height: 0; margin: 0; padding: 6px 12px; border-radius: 999px; background: linear-gradient(135deg, #ff4d6d, #e11d48); color: #fff; font-size: 12.5px; font-weight: 700; line-height: 1.2; letter-spacing: .3px; box-shadow: 0 10px 24px -10px rgba(225, 29, 72, .8); z-index: 4; }
/* home best sellers: sixteen are sent, eight show (night.js shuffles them first) */
.thzn-grid[data-thzn-shuffle="8"] > :nth-child(n+9) { display: none; }
/* cart: Proceed to checkout in the product page's Add to cart style (gradient, glow, icon), with a lock for checkout */
.thzn .wc-proceed-to-checkout a.checkout-button, .thzn .wc-proceed-to-checkout a.checkout-button:hover { display: flex; align-items: center; justify-content: center; gap: 10px; min-height: 56px; border: 0; border-radius: 999px; color: #fff !important; background: linear-gradient(135deg, #2f7bff, var(--accent) 45%, #5b3df0) !important; box-shadow: 0 18px 40px -16px rgba(47, 123, 255, .9), inset 0 1px 0 rgba(255, 255, 255, .25); font-size: 16.5px; font-weight: 700; transition: transform .15s var(--ease), box-shadow .2s, filter .2s; }
.thzn .wc-proceed-to-checkout a.checkout-button::before { content: ""; width: 19px; height: 19px; flex: none; background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='11' width='16' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='11' width='16' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%3E%3C/svg%3E") center / contain no-repeat; }
.thzn .wc-proceed-to-checkout a.checkout-button:hover { transform: translateY(-1px); filter: brightness(1.08); box-shadow: 0 22px 46px -16px rgba(47, 123, 255, 1), inset 0 1px 0 rgba(255, 255, 255, .3); }
/* a gift card drawn from the brand's logo and colours (a brand with no card pictures yet): hero and brand tiles */
.thzn-lcard { position: relative; display: flex; flex-direction: column; justify-content: space-between; overflow: hidden; width: 100%; aspect-ratio: 1.6; padding: 7% 8%; border-radius: 16px; isolation: isolate;
  background: radial-gradient(120% 90% at 100% 0%, color-mix(in srgb, var(--b1, var(--accent)) 85%, #fff 0%), transparent 60%), linear-gradient(135deg, var(--b2, var(--accent)), var(--b3, #0b2a6b));
  border: 1px solid rgba(255, 255, 255, .22); box-shadow: 0 30px 50px -24px rgba(0, 0, 0, .8), inset 0 1px 0 rgba(255, 255, 255, .3); color: #fff; }
.thzn-lcard::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(115deg, transparent 40%, rgba(255, 255, 255, .16) 50%, transparent 60%); }
.thzn-lcard-logo { display: inline-flex; align-items: center; justify-content: center; width: 22%; aspect-ratio: 1; border-radius: 22%; overflow: hidden; background: rgba(255, 255, 255, .14); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .25); }
.thzn-lcard-logo img { width: 62%; height: 62%; object-fit: contain; }
.thzn-lcard-logo img.is-tile { width: 100%; height: 100%; object-fit: cover; }
.thzn-lcard-mark { position: absolute; right: -8%; bottom: -18%; z-index: -1; width: 56%; aspect-ratio: 1; opacity: .16; transform: rotate(-12deg); }
.thzn-lcard-mark img { width: 100%; height: 100%; object-fit: contain; }   /* the logo's white file */
.thzn-lcard-text { display: flex; flex-direction: column; gap: 2px; }
.thzn-lcard-text small { font-size: clamp(8px, 3.4cqw, 11px); font-weight: 700; letter-spacing: 1.4px; text-transform: uppercase; opacity: .8; }
.thzn-lcard-text strong { font-size: clamp(14px, 8cqw, 26px); font-weight: 800; line-height: 1.05; letter-spacing: -.02em; }
.thzn-bcard.is-logo, .thzn-tile-img.thzn-lcard { container-type: inline-size; }
.thzn-bcard.is-logo .thzn-lcard { transform: none; }
.thzn-tile-img.thzn-lcard { position: absolute; height: auto; padding: 16px 18px; }
/* checkout: WooCommerce floats Place order, so the box under it slid up behind the button; a clear gap instead */
.thzn.woocommerce-checkout #payment #place_order, .thzn #payment #place_order { float: none; display: flex; width: 100%; }
.thzn #payment .thzn-trust-box { clear: both; margin-top: 16px; }
.thzn #payment .place-order::after { content: ""; display: table; clear: both; }
/* Searchanise's search suggestions (drawn by its own script and styles, light by default) in the Night colours */
body.thzn .snize-ac-results .snize-ac-results-content { background: var(--surface-2) !important; border: 1px solid var(--line-2); border-radius: 16px !important; box-shadow: 0 28px 60px -20px rgba(0, 0, 0, .95) !important; overflow: hidden; }
body.thzn .snize-ac-results .snize-arrow-outer { border-bottom-color: var(--line-2); }
body.thzn .snize-ac-results .snize-arrow-inner { border-bottom-color: var(--surface-2); }
body.thzn .snize-ac-results a, body.thzn .snize-ac-results .snize-suggestion, body.thzn .snize-ac-results .snize-category, body.thzn .snize-ac-results .snize-vendor,
body.thzn .snize-ac-results .snize-tag, body.thzn .snize-ac-results .snize-page, body.thzn .snize-ac-results .snize-title, body.thzn .snize-ac-results .snize-price-list,
body.thzn .snize-ac-results .snize-no-products-found-text, body.thzn .snize-ac-results .snize-nothing-found-text, body.thzn .snize-ac-results .snize-popular-suggestions-text { color: var(--text) !important; }
body.thzn .snize-ac-results .snize-description, body.thzn .snize-ac-results .snize-attribute, body.thzn .snize-ac-results .snize-sku,
body.thzn .snize-ac-results .snize-discounted-price, body.thzn .snize-ac-results .snize-unit-price, body.thzn .snize-ac-results span.snize-highlight-saving-text { color: var(--mute) !important; }
body.thzn .snize-ac-results .snize-price-list, body.thzn .snize-ac-results .snize-price { color: var(--accent-pale) !important; font-weight: 700; }
body.thzn .snize-ac-results .snize-label { color: var(--mute) !important; border-bottom-color: var(--line) !important; font-size: 11.5px; letter-spacing: 1.2px; text-transform: uppercase; }
body.thzn .snize-ac-results .snize-ac-over-nodrop, body.thzn .snize-ac-results li:hover, body.thzn .snize-ac-results .snize-product:hover { background-color: rgba(255, 255, 255, .06) !important; border-radius: 10px !important; }
body.thzn .snize-ac-results .snize-item-image, body.thzn .snize-ac-results .snize-thumbnail img { border-radius: 8px !important; background: transparent !important; }
body.thzn .snize-ac-results .snize-view-all-link, body.thzn .snize-ac-results .snize-button, body.thzn .snize-ac-results .snize-nothing-found .snize-popular-suggestions-view-all-products-text { color: #fff !important; background: linear-gradient(135deg, #2f7bff, var(--accent) 45%, #5b3df0) !important; border-radius: 999px !important; }
body.thzn .snize-ac-results .snize-in-stock, body.thzn .snize-ac-results .snize-out-of-stock, body.thzn .snize-ac-results .snize-pre-order, body.thzn .snize-ac-results .snize-product-label { background: rgba(255, 255, 255, .1) !important; color: var(--text) !important; border-radius: 999px !important; }
body.thzn .snize-ac-results .snize-suggestion::before, body.thzn .snize-ac-results .snize-page:not(.snize-view-all-pages)::before { filter: invert(1) opacity(.55); }
body.thzn .snize-ac-results .snize-no-products-found .snize-did-you-mean .snize-no-products-found-link, body.thzn .snize-ac-results .snize-popular-suggestions-text a { color: var(--accent-pale) !important; background: rgba(31, 99, 237, .12) !important; border-radius: 999px !important; }
body.thzn .snize-ac-results .stars-container:before { color: rgba(255, 255, 255, .2); }
body.thzn .snize-ac-results .stars-container:after { color: #f5a623; }
body.thzn .snize-ac-results-mobile .snize-ac-results-content { border-radius: 0 0 16px 16px !important; }
/* the Stripe plugin swaps Place order for Apple Pay / Google Pay / Link buttons by adding .wc-stripe-hide: nothing of ours may keep it visible */
.thzn #payment #place_order.wc-stripe-hide, .thzn #place_order.wc-stripe-hide { min-height: 0 !important; margin: 0 !important; box-shadow: none !important; transform: none !important; }
.thzn #payment .place-order [id^="wc-stripe"][id$="-checkout-button"] { width: 100%; }
/* the game screens for empty moments (empty cart, a search or a shelf with nothing on it), in the 404 page's look */
.thzn-game { padding-top: 26px; padding-bottom: 26px; border-radius: 28px; }
.thzn-404-code.is-word { font-size: clamp(72px, 15vw, 156px); letter-spacing: -.045em; }
.thzn .thzn-game-title { margin: 6px 0 10px; }
.thzn-game .thzn-404-brands { margin-top: 38px; }
.thzn-page:has(.thzn-game-cart) .thzn-page-head, .thzn-page:has(.thzn-game-cart) .thzn-crumbs { display: none; }   /* the screen is the page */
.thzn-page-wc .woocommerce:has(.thzn-game-cart) > .woocommerce-notices-wrapper:empty { display: none; }
/* product picture: no CSS filter shadow on the big picture (some browsers, Safari among them, clip a filtered picture
   to a hard box: strips at the sides and a cut card); a soft floor shadow drawn under the card instead */
.thzn.single-product:not(.thzn-is-oos) .woocommerce-product-gallery img { filter: none; }
.thzn.woocommerce div.product div.images .woocommerce-product-gallery__wrapper, .thzn.woocommerce div.product div.images .flex-viewport,
.thzn.woocommerce div.product div.images .woocommerce-product-gallery__image { background: transparent !important; }
.thzn.woocommerce div.product div.images .woocommerce-product-gallery__image { position: relative; }
.thzn.woocommerce div.product div.images .woocommerce-product-gallery__image > a { display: block; }
.thzn.woocommerce div.product div.images .woocommerce-product-gallery__image > a img { width: 100% !important; max-width: 100%; height: auto !important; }
.thzn.woocommerce div.product div.images .woocommerce-product-gallery__image::after { content: ""; position: absolute; z-index: -1; left: 16%; right: 16%; bottom: 17%; height: 14%; border-radius: 50%; pointer-events: none;
  background: radial-gradient(closest-side, color-mix(in srgb, var(--b3, #000) 60%, rgba(0, 0, 0, .7)), transparent); }
/* the game screens: the HUD line above the big word, not beside it; the word never wider than its box */
.thzn-game .thzn-404-hud { display: flex; width: fit-content; max-width: 100%; margin: 0 auto; }
.thzn-game .thzn-404-code { display: block; width: fit-content; max-width: 100%; margin-left: auto; margin-right: auto; padding: 0 .09em; }
.thzn:has(.thzn-game-shelf.is-search) .thzn-shop-head, .thzn:has(.thzn-game-shelf.is-stock) .thzn-shop-head { display: none; }   /* the screen says it */
@media (max-width: 420px) { .thzn .thzn-co-name .thzn-ci-tag { font-size: 11.5px; padding: 2px 8px 2px 6px; gap: 5px; } .thzn .thzn-co-name .thzn-ci-tag img.thzn-flag { width: 14px !important; height: 10.5px !important; } }
.thzn .techhauz-disclosure-icon { opacity: 1; }
