@import url('./themes/classic-glass.css');
@import url('./themes/nova-prism.css');
@import url('./themes/cyber-neon.css');
@import url('./themes/luxury-noir.css');
@import url('./themes/maison-noir.css');
@import url('./themes/eclat-bistro.css');

:root {
  --brand-blue-600: #0b58c9;
  --brand-blue-500: #0a5ad1;
  --brand-blue-700: #074bb1;
  --brand-blue-800: #02229c;
  --brand-navy-900: #00175d;
  --brand-cyan-400: #00b3db;
  --brand-cyan-600: #008bae;
  --ink-950: #07111f;
  --ink-900: #0d1b2a;
  --ink-700: #334155;
  --ink-500: #64748b;
  --surface-0: #ffffff;
  --surface-50: #f5f8ff;
  --surface-100: #eaf1ff;
  --surface-900: #07111f;
  --success: #0a8f5b;
  --warning: #b7791f;
  --danger: #c43d4b;
  --color-primary: #0b58c9;
  --color-primary-hover: #074bb1;
  --color-primary-active: #02229c;
  --color-accent: #00b3db;
  --color-heading: #07111f;
  --color-body: #334155;
  --color-muted: #64748b;
  --color-page-bg: #f5f8ff;
  --color-dark-bg: #07111f;
  --color-card-bg: rgba(255, 255, 255, 0.68);
  --color-card-border: rgba(255, 255, 255, 0.52);
  --gradient-brand: linear-gradient(135deg, #00175d 0%, #074bb1 38%, #0b58c9 68%, #00b3db 100%);
  --gradient-glass-highlight: linear-gradient(135deg, rgba(255,255,255,.3), rgba(11,88,201,.08), rgba(0,179,219,.1));
  --glass-bg: linear-gradient(135deg, rgba(255,255,255,.16), rgba(255,255,255,.06));
  --glass-border: rgba(255, 255, 255, 0.22);
  --glass-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 18px 60px rgba(2,18,30,.14);
  --button-primary-bg: linear-gradient(135deg, #0b58c9 0%, #074bb1 58%, #00175d 100%);
  --button-primary-text: #ffffff;
  --button-primary-shadow: 0 18px 42px rgba(11, 88, 201, .34);
  --button-secondary-bg: rgba(255, 255, 255, .94);
  --button-secondary-text: #07111f;
  --button-secondary-border: rgba(255, 255, 255, .76);
  --button-light-bg: rgba(255, 255, 255, .16);
  --button-light-text: #ffffff;
  --button-light-border: rgba(255, 255, 255, .34);
  --button-dark-bg: #07111f;
  --button-dark-text: #ffffff;
  --tag-primary-bg: rgba(11, 88, 201, .14);
  --tag-primary-bg-strong: rgba(11, 88, 201, .24);
  --tag-primary-border: rgba(11, 88, 201, .46);
  --tag-primary-text: var(--color-primary);
  --tag-primary-text-on-dark: #73c7ff;
  --tag-primary-shadow: 0 8px 24px rgba(11, 88, 201, .22);
  --font-heading: "Manrope", Arial, Helvetica, sans-serif;
  --font-body: "Inter", Arial, Helvetica, sans-serif;
}

*,
*::before,
*::after { box-sizing: border-box; }

html {
  scroll-behavior: smooth;
  background: var(--color-page-bg);
}

body {
  margin: 0;
  color: var(--color-body);
  background:
    radial-gradient(circle at 15% 10%, rgba(0, 179, 219, .16), transparent 28rem),
    linear-gradient(180deg, #f9fbff 0%, #eef5ff 45%, #ffffff 100%);
  font-family: var(--font-body);
  line-height: 1.5;
}

body.togrow-modal-open { overflow: hidden; }

a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
img { max-width: 100%; display: block; }

.tg-app { min-height: 100vh; overflow: clip; }

.tg-home-story {
  position: relative;
  isolation: isolate;
  color: #fff;
  background: var(--ink-950);
}

.tg-container {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
}

.tg-header {
  position: fixed;
  z-index: 50;
  top: 12px;
  left: 0;
  right: 0;
  pointer-events: none;
}

.tg-header__inner {
  min-height: 72px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 12px 14px 12px 20px;
  pointer-events: auto;
  border-radius: 8px;
  background: rgba(255,255,255,.68);
  border: 1px solid rgba(255,255,255,.7);
  box-shadow: 0 16px 50px rgba(8, 32, 70, .12);
  backdrop-filter: blur(18px) saturate(150%);
  -webkit-backdrop-filter: blur(18px) saturate(150%);
  transition: min-height .2s ease, background .2s ease, box-shadow .2s ease;
}

.tg-header.is-scrolled .tg-header__inner {
  min-height: 60px;
  background: rgba(255,255,255,.9);
  box-shadow: 0 12px 38px rgba(8, 32, 70, .14);
}

.tg-logo { width: 150px; flex: 0 0 auto; }

.tg-nav {
  display: flex;
  align-items: center;
  gap: 18px;
  color: var(--ink-700);
  font-size: 14px;
  font-weight: 700;
}

.tg-nav a { white-space: nowrap; }
.tg-nav a:hover { color: var(--color-primary); }

.tg-nav-item {
  position: relative;
}

.tg-nav-item--mega::before {
  content: "";
  position: absolute;
  left: -24px;
  right: -24px;
  top: 100%;
  height: 28px;
}

.tg-nav-item > a {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
}

.tg-nav-item--mega > a::after {
  content: "";
  width: 7px;
  height: 7px;
  margin-left: 7px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg) translateY(-2px);
}

.tg-mega-menu {
  position: absolute;
  top: calc(100% + 8px);
  left: 50%;
  width: min(860px, calc(100vw - 48px));
  display: grid;
  grid-template-columns: minmax(210px, .42fr) minmax(0, 1fr);
  gap: 18px;
  padding: 18px;
  border-radius: 8px;
  color: var(--ink-950);
  background: rgba(255,255,255,.96);
  border: 1px solid rgba(255,255,255,.8);
  box-shadow: 0 28px 80px rgba(7,17,31,.22);
  backdrop-filter: blur(18px) saturate(150%);
  -webkit-backdrop-filter: blur(18px) saturate(150%);
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, 8px);
  transition: opacity .18s ease, transform .18s ease;
}

.tg-nav-item--mega:hover .tg-mega-menu,
.tg-nav-item--mega:focus-within .tg-mega-menu {
  opacity: 1;
  pointer-events: auto;
  transform: translate(-50%, 0);
}

.tg-mega-menu__intro {
  padding: 16px;
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(11,88,201,.12), rgba(0,179,219,.08));
}

.tg-mega-menu__intro h3 {
  margin: 0;
  color: var(--ink-950);
  font-family: var(--font-heading);
  font-size: 20px;
  line-height: 1.12;
}

.tg-mega-menu__all {
  display: inline-flex;
  margin-top: 16px;
  color: var(--color-primary);
  font-weight: 900;
}

.tg-mega-menu__image {
  width: min(190px, 100%);
  margin: 18px auto -6px;
  filter: drop-shadow(0 18px 34px rgba(7,17,31,.22));
}

.tg-mega-menu__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.tg-mega-link {
  display: grid;
  gap: 4px;
  padding: 12px;
  border-radius: 8px;
  background: rgba(245,248,255,.9);
  border: 1px solid rgba(11,88,201,.08);
  white-space: normal !important;
}

.tg-mega-link:hover {
  color: var(--ink-950) !important;
  background: #fff;
  border-color: rgba(11,88,201,.2);
  box-shadow: 0 14px 34px rgba(7,17,31,.1);
}

.tg-mega-link strong {
  color: var(--ink-950);
  font-size: 13px;
}

.tg-mega-link span {
  color: var(--ink-700);
  font-size: 12px;
  line-height: 1.35;
}

.tg-header__actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.tg-header-cart {
  position: relative;
  width: 44px;
  height: 44px;
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border-radius: 8px;
  border: 1px solid rgba(11,88,201,.18);
  background: rgba(234,241,255,.88);
  color: var(--color-primary);
  font-family: var(--font-heading);
  font-weight: 900;
  text-decoration: none;
  flex-shrink: 0;
  transition: transform .18s ease, background .18s ease, border-color .18s ease, color .18s ease;
}

.tg-header-cart:hover {
  background: var(--color-primary);
  border-color: var(--color-primary);
  color: #fff;
  transform: translateY(-1px);
}

.tg-header-cart__icon {
  position: relative;
  width: 19px;
  height: 18px;
  display: inline-block;
  border: 2px solid currentColor;
  border-top: 0;
  border-radius: 0 0 4px 4px;
}

.tg-header-cart__icon::before {
  content: "";
  position: absolute;
  left: 3px;
  right: 3px;
  top: -8px;
  height: 10px;
  border: 2px solid currentColor;
  border-bottom: 0;
  border-radius: 999px 999px 0 0;
}

.tg-header-cart__text {
  display: none !important;
}

.tg-header-cart__count {
  position: absolute;
  top: -4px;
  right: -4px;
  min-width: 20px;
  height: 20px;
  padding: 0 5px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: var(--color-primary);
  color: #fff;
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
  border: 2px solid #fff;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
}

html[dir="rtl"] .tg-header-cart__count {
  right: auto;
  left: -4px;
}

.tg-header-cart:hover .tg-header-cart__count {
  background: #0b58c9;
  color: #fff;
  border-color: #fff;
}

.tg-btn {
  min-height: 44px;
  border: 1px solid transparent;
  border-radius: 8px;
  padding: 0 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-family: var(--font-heading);
  font-weight: 800;
  color: var(--button-secondary-text);
  cursor: pointer;
  background: var(--button-secondary-bg);
  border-color: var(--button-secondary-border);
  box-shadow: 0 12px 28px rgba(7, 17, 31, .1);
  text-align: center;
  white-space: nowrap;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease;
}

.tg-btn:hover { transform: translateY(-1px); box-shadow: 0 16px 34px rgba(7, 17, 31, .16); }
.tg-btn:focus-visible { outline: 3px solid rgba(0,179,219,.42); outline-offset: 3px; }
.tg-btn--primary { color: var(--button-primary-text); background: var(--button-primary-bg); box-shadow: var(--button-primary-shadow); border-color: rgba(255,255,255,.16); }
.tg-btn--primary:hover { box-shadow: 0 22px 48px rgba(11, 88, 201, .42); }
.tg-btn--light { color: var(--button-light-text); background: var(--button-light-bg); border-color: var(--button-light-border); box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 14px 34px rgba(0,0,0,.18); }
.tg-btn--dark { color: var(--button-dark-text); background: var(--button-dark-bg); border-color: rgba(255,255,255,.12); }
.tg-btn--ghost { color: var(--color-primary); background: rgba(255,255,255,.82); border-color: rgba(11,88,201,.18); box-shadow: none; }
.tg-btn--wide { width: 100%; }

.tg-menu-button { display: none; width: 44px; padding: 0; }
.tg-menu-button span,
.tg-menu-button::before,
.tg-menu-button::after {
  content: "";
  width: 18px;
  height: 2px;
  background: currentColor;
  display: block;
}
.tg-menu-button { flex-direction: column; }

.tg-hero {
  min-height: 100svh;
  position: relative;
  isolation: isolate;
}

.tg-hero__stage {
  min-height: 100svh;
  display: grid;
  align-items: center;
  padding: 96px 0 28px;
}

.tg-hero__grid {
  display: block;
  align-items: center;
}

.tg-hero__copy {
  position: relative;
  z-index: 2;
  padding: 30px;
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(255,255,255,.82), rgba(255,255,255,.48));
  border: 1px solid rgba(255,255,255,.72);
  box-shadow: var(--glass-shadow);
  backdrop-filter: blur(22px) saturate(140%);
  -webkit-backdrop-filter: blur(22px) saturate(140%);
}

.tg-hero__copy.tg-fullscreen-card {
  max-width: none;
  display: grid;
  align-items: center;
  min-height: clamp(450px, 42vw, 570px);
  overflow: visible;
  padding-right: clamp(24px, 28vw, 410px);
}

.tg-hero__content {
  position: relative;
  z-index: 2;
  max-width: 760px;
}

.tg-hero__product {
  position: absolute;
  top: clamp(-148px, -10vw, -74px);
  right: clamp(-260px, -17vw, -126px);
  z-index: 1;
  width: min(62vw, 820px);
  max-width: 76%;
  pointer-events: none;
}

.tg-hero__product img {
  display: block;
  width: 100%;
  height: auto;
  filter: drop-shadow(0 34px 70px rgba(0,0,0,.5));
}

.tg-eyebrow {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  margin: 0 0 12px;
  padding: 7px 10px;
  border-radius: 8px;
  color: var(--color-primary) !important;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.35;
  letter-spacing: .02em;
  text-transform: uppercase;
  background: rgba(11, 88, 201, .1);
  text-shadow: none;
}

.tg-hero h1,
.tg-section h2,
.tg-final h2,
.tg-page-hero h1 {
  margin: 0;
  color: var(--color-heading);
  font-family: var(--font-heading);
  line-height: 1.04;
  letter-spacing: 0;
}

.tg-hero h1 { font-size: clamp(30px, 4vw, 52px); }
.tg-section h2,
.tg-final h2,
.tg-page-hero h1 { font-size: clamp(26px, 3.1vw, 42px); }

.tg-lede {
  margin: 18px 0 0;
  max-width: 640px;
  color: var(--ink-700);
  font-size: clamp(14px, 1.25vw, 17px);
}

.tg-hero__actions,
.tg-section__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.tg-trustline {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  margin-top: 24px;
  padding: 0;
  list-style: none;
  color: var(--ink-700);
  font-size: 13px;
  font-weight: 800;
}

.tg-hero__content .tg-trustline {
  max-width: 820px;
}

.tg-trustline li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.tg-trustline li::before {
  content: "";
  width: 7px;
  height: 7px;
  flex: 0 0 auto;
  border-radius: 999px;
  background: var(--color-primary);
  box-shadow: 0 0 0 4px rgba(11, 88, 201, .14);
}

.tg-hero__visual {
  position: relative;
  aspect-ratio: 1112 / 834;
  min-height: 360px;
}

.tg-home-backdrop {
  position: fixed;
  z-index: 0;
  inset: 0;
  width: 100vw;
  height: 100svh;
  min-height: 100svh;
  aspect-ratio: auto;
  pointer-events: none;
  overflow: hidden;
  background: #07111f;
}

.tg-frame-canvas,
.tg-frame-fallback {
  width: 100%;
  height: 100%;
  border-radius: 0;
  object-fit: cover;
  background: #dce8fa;
  box-shadow: none;
}

.tg-frame-fallback { position: absolute; inset: 0; }

.tg-frame-canvas { position: relative; z-index: 2; }

.tg-frame-vignette {
  position: absolute;
  z-index: 3;
  inset: 0;
  background:
    radial-gradient(circle at 74% 46%, rgba(0, 179, 219, .08), transparent 28rem),
    linear-gradient(90deg, rgba(7, 17, 31, .88), rgba(7, 17, 31, .52) 42%, rgba(7, 17, 31, .18) 100%),
    linear-gradient(180deg, rgba(7, 17, 31, .42), transparent 30%, rgba(7, 17, 31, .58));
}

.tg-section {
  position: relative;
  padding: clamp(32px, 5vw, 72px) 0;
}

.tg-home-story .tg-section {
  color: rgba(255,255,255,.84);
}

.tg-app > .tg-section {
  color: rgba(255,255,255,.84);
}

.tg-home-story .tg-section h2,
.tg-app > .tg-section h2 {
  color: #fff !important;
}

.tg-home-story .tg-section p:not(.tg-eyebrow),
.tg-app > .tg-section p:not(.tg-eyebrow) {
  color: rgba(255,255,255,.82) !important;
}

.tg-home-story .tg-section .tg-card,
.tg-app > .tg-section .tg-card {
  background:
    linear-gradient(135deg, rgba(255,255,255,.16), rgba(255,255,255,.07)),
    rgba(7,17,31,.5);
  border-color: rgba(255,255,255,.2);
  color: rgba(255,255,255,.82);
}

.tg-home-story .tg-section .tg-card h3,
.tg-home-story .tg-section .tg-card strong,
.tg-app > .tg-section .tg-card h3,
.tg-app > .tg-section .tg-card strong {
  color: #fff !important;
}

.tg-home-panel {
  position: relative;
  z-index: 2;
  min-height: 72svh;
  display: grid;
  align-items: center;
  padding: 56px 0 24px;
  color: rgba(255,255,255,.84);
  background: transparent;
}

#products.tg-home-panel {
  min-height: auto;
  align-items: start;
  padding-bottom: clamp(18px, 2.5vw, 32px);
}

.tg-home-panel h1,
.tg-home-panel h2,
.tg-home-panel .tg-lede {
  color: #fff;
}

.tg-home-panel .tg-lede,
.tg-home-panel p {
  color: rgba(255,255,255,.86);
}

.tg-solution-card {
  min-height: 220px;
}

.tg-card__link {
  display: inline-flex;
  align-items: center;
  margin-top: auto;
  color: var(--color-primary);
  font-weight: 900;
}

.tg-card__link::after {
  content: "";
  width: 8px;
  height: 8px;
  margin-left: 8px;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
  transform: rotate(45deg);
}

.tg-fullscreen-card {
  width: min(1320px, 100%);
  padding: clamp(22px, 4vw, 38px);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.2), rgba(255,255,255,.08)),
    rgba(7,17,31,.52);
  border: 1px solid rgba(255,255,255,.28);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 24px 90px rgba(0,0,0,.24);
  backdrop-filter: blur(24px) saturate(145%);
  -webkit-backdrop-filter: blur(24px) saturate(145%);
}

.tg-fullscreen-card .tg-section__head {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
  align-items: center;
  gap: clamp(28px, 5vw, 84px);
}

.tg-fullscreen-card .tg-section__head .tg-lede {
  max-width: 560px;
  font-size: clamp(16px, 1.35vw, 20px);
}

.tg-fullscreen-card .tg-section__media {
  justify-self: end;
  align-self: start;
  width: min(540px, 116%);
  margin-top: clamp(-128px, -8vw, -54px);
  margin-bottom: -36px;
  position: relative;
  z-index: 2;
}

.tg-fullscreen-card .tg-section__media img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: contain;
  object-position: center;
  border-radius: 8px;
  filter: drop-shadow(0 28px 54px rgba(0,0,0,.42));
}

.tg-fullscreen-card .tg-grid {
  gap: clamp(14px, 1.5vw, 24px);
}

.tg-home-panel:nth-of-type(even) .tg-fullscreen-card {
  margin-left: auto;
}

.tg-home-panel .tg-card {
  background:
    linear-gradient(135deg, rgba(255,255,255,.18), rgba(255,255,255,.08)),
    rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.2);
  color: rgba(255,255,255,.78);
}

.tg-home-panel .tg-card h3,
.tg-home-panel .tg-price {
  color: #fff;
}

.tg-home-panel .tg-card p,
.tg-home-panel .tg-feature-list {
  color: rgba(255,255,255,.84);
}

.tg-home-panel .tg-eyebrow {
  color: var(--color-primary) !important;
  background: rgba(234, 241, 255, .9);
}

.tg-home-panel .tg-trustline {
  color: rgba(255,255,255,.82);
}

.tg-home-panel .tg-trustline li {
  background: transparent;
  border: 0;
}

.tg-home-panel .tg-trustline li::before {
  background: var(--color-primary);
  box-shadow: 0 0 0 4px rgba(11, 88, 201, .22);
}

.tg-section--dark {
  color: rgba(255,255,255,.78);
  background:
    linear-gradient(135deg, rgba(0,179,219,.14), transparent 36%),
    var(--surface-900);
}
.tg-section--dark h2,
.tg-section--dark .tg-card h3 { color: #fff; }
.tg-section--dark .tg-lede { color: rgba(255,255,255,.76); }

.tg-section__head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 34px;
}
.tg-section__head .tg-lede { max-width: 520px; margin-top: 0; }

.tg-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.tg-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.tg-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.tg-time-distribution-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; font-size: 12px; }
.tg-linked-cards-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }

.tg-card {
  border-radius: 8px;
  padding: 24px;
  background: var(--gradient-glass-highlight), var(--glass-bg);
  border: 1px solid var(--glass-border);
  box-shadow: var(--glass-shadow);
  backdrop-filter: blur(22px) saturate(140%);
  -webkit-backdrop-filter: blur(22px) saturate(140%);
}

.tg-card h3 {
  margin: 0 0 10px;
  color: var(--color-heading);
  font-family: var(--font-heading);
  font-size: 20px;
  line-height: 1.18;
}

.tg-card p { margin: 0; }

.tg-card__meta {
  color: var(--color-primary);
  font-weight: 800;
  font-size: 13px;
}

.tg-product-card {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.tg-shop-products {
  padding-top: clamp(26px, 4vw, 48px);
  background:
    linear-gradient(135deg, rgba(11,88,201,.12), transparent 42%),
    #f6f9ff;
  color: var(--ink-850);
}

.tg-shop-products h2 {
  margin: 8px 0 0;
  max-width: 760px;
  color: var(--ink-950);
  font-family: var(--font-heading);
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1.08;
}

.tg-shop-products p {
  color: var(--ink-700);
}

.tg-shop-toolbar {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 20px;
}

.tg-shop-toolbar > p {
  flex: 0 0 auto;
  margin: 0;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(11,88,201,.08);
  color: var(--color-primary);
  font-weight: 900;
}

.tg-shop-categories {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 24px;
}

.tg-category-chip {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 16px;
  border: 1px solid rgba(11,88,201,.14);
  border-radius: 999px;
  background: rgba(255,255,255,.84);
  color: var(--ink-800);
  font-family: var(--font-heading);
  font-size: 14px;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 12px 32px rgba(15,36,69,.07);
}

.tg-category-chip span {
  min-width: 24px;
  height: 24px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  background: rgba(11,88,201,.1);
  color: var(--color-primary);
  font-size: 12px;
}

.tg-category-chip.is-active,
.tg-category-chip:hover {
  background: var(--color-primary);
  border-color: var(--color-primary);
  color: #fff;
}

.tg-category-chip.is-active span,
.tg-category-chip:hover span {
  background: rgba(255,255,255,.18);
  color: #fff;
}

.tg-shop-categories.is-loading {
  opacity: .78;
}

.tg-shop-grid {
  align-items: stretch;
  gap: clamp(18px, 2.4vw, 28px);
}

.tg-shop-products .tg-product-card {
  color: var(--ink-750);
}

.tg-product-card__image {
  display: block;
  margin: -10px -10px 2px;
  border-radius: 8px;
  overflow: hidden;
  background: linear-gradient(135deg, rgba(11,88,201,.08), rgba(234,241,255,.9));
}

.tg-product-card__image img {
  width: 100%;
  aspect-ratio: 4 / 3;
  display: block;
  object-fit: cover;
}

.tg-shop-card {
  gap: 0;
  padding: 12px;
  border-radius: 28px;
  background: #fff;
  border-color: rgba(11,88,201,.08);
  box-shadow: 0 26px 70px rgba(15,36,69,.14);
  overflow: hidden;
}

.tg-shop-card__media {
  position: relative;
  display: block;
  border-radius: 22px;
  overflow: hidden;
  background:
    radial-gradient(circle at 74% 18%, rgba(11,88,201,.18), transparent 32%),
    linear-gradient(135deg, rgba(234,241,255,.95), rgba(244,247,252,.86));
}

.tg-shop-card__media img {
  width: 100%;
  aspect-ratio: 1 / 1;
  display: block;
  object-fit: cover;
  transition: transform .35s ease;
}

.tg-shop-card:hover .tg-shop-card__media img {
  transform: scale(1.035);
}

.tg-shop-card__placeholder {
  min-height: 280px;
  display: grid;
  place-items: center;
  padding: 24px;
  color: var(--color-primary);
  font-family: var(--font-heading);
  font-weight: 900;
  text-align: center;
}

.tg-shop-card__body {
  display: grid;
  gap: 9px;
  padding: 18px 8px 4px;
}

.tg-shop-card__category {
  width: max-content;
  max-width: 100%;
  margin: 0;
  padding: 7px 11px;
  border-radius: 999px;
  background: rgba(11,88,201,.09);
  color: var(--color-primary) !important;
  font-family: var(--font-heading);
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}

.tg-shop-card h3 {
  margin: 0;
  color: var(--ink-950);
  font-size: clamp(20px, 2vw, 25px);
  line-height: 1.08;
}

.tg-shop-card__excerpt {
  min-height: 48px;
  margin: 0;
  color: rgba(43,56,76,.72) !important;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.35;
}

.tg-shop-card__footer {
  display: grid;
  margin-top: 10px;
}

.tg-shop-card__buybar {
  width: 100%;
  max-width: 100%;
  min-height: 54px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 86px max-content;
  align-items: center;
  justify-content: start;
  gap: 6px;
  padding: 6px;
  border-radius: 999px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 16px 38px rgba(15,36,69,.12), inset 0 1px 0 rgba(255,255,255,.9);
}

.tg-shop-card__buybar > * {
  min-width: 0;
}

.tg-shop-card__price,
body .tg-app .tg-shop-card .tg-shop-card__price {
  width: 100%;
  max-width: 128px;
  min-height: 42px;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-content: center;
  justify-content: flex-start;
  gap: 2px;
  padding: 0 6px 0 12px;
  border-radius: 999px;
  background: transparent;
  color: var(--ink-950);
  font-family: var(--font-heading);
  font-size: 13px;
  font-weight: 900;
  line-height: 1 !important;
  white-space: nowrap;
  overflow: hidden;
}

.tg-shop-card__price del,
body .tg-app .tg-shop-card .tg-shop-card__price del {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  color: rgba(43,56,76,.42);
  font-size: 11px;
  font-weight: 900;
  line-height: 1 !important;
  text-decoration-thickness: 2px;
}

.tg-shop-card__price ins,
body .tg-app .tg-shop-card .tg-shop-card__price ins {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--ink-950);
  font-size: 14px;
  line-height: 1 !important;
  text-decoration: none;
}

.tg-shop-card__price .amount,
.tg-shop-card__price bdi {
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1 !important;
}

.tg-shop-card__price > .amount:only-child,
.tg-shop-card__price > bdi:only-child {
  grid-column: 1 / -1;
}

.tg-shop-card__price .screen-reader-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.tg-shop-card__quantity {
  width: 86px;
  height: 42px;
  display: inline-grid;
  grid-template-columns: 26px 34px 26px;
  align-items: center;
  justify-items: center;
  border-radius: 999px;
  color: var(--ink-950);
  background: #f4f6fa;
  font-family: var(--font-heading);
  font-size: 13px;
  font-weight: 900;
}

.tg-shop-card__quantity button {
  width: 26px;
  height: 32px;
  display: inline-grid;
  place-items: center;
  border: 0;
  padding: 0;
  color: rgba(43,56,76,.62);
  background: transparent;
  font: inherit;
  cursor: pointer;
}

.tg-shop-card__quantity button:hover {
  color: var(--color-primary);
}

.tg-shop-card__quantity span {
  color: var(--ink-950);
  line-height: 1;
}

.tg-shop-card__cart,
body .tg-app .tg-shop-card a.tg-shop-card__cart,
body .tg-app .tg-shop-card a.tg-shop-card__cart.add_to_cart_button,
body .tg-app .tg-shop-card a.tg-shop-card__cart.ajax_add_to_cart {
  width: 52px;
  min-width: 52px;
  min-height: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border-radius: 14px;
  border: 0 !important;
  background-color: var(--color-primary) !important;
  background: var(--button-primary-bg) !important;
  background-image: var(--button-primary-bg) !important;
  color: #fff !important;
  font-family: var(--font-heading);
  font-size: 16px;
  font-weight: 900;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: 0 14px 28px rgba(11,88,201,.22);
}

.tg-shop-card__cart-icon {
  width: 19px;
  height: 17px;
  position: relative;
  display: inline-block;
  border: 2px solid currentColor;
  border-top: 0;
  border-radius: 0 0 4px 4px;
}

.tg-shop-card__cart-icon::before {
  content: "";
  position: absolute;
  left: 3px;
  right: 3px;
  top: -8px;
  height: 9px;
  border: 2px solid currentColor;
  border-bottom: 0;
  border-radius: 999px 999px 0 0;
}

.tg-shop-card__cart:hover,
body .tg-app .tg-shop-card a.tg-shop-card__cart:hover,
body .tg-app .tg-shop-card a.tg-shop-card__cart.add_to_cart_button:hover,
body .tg-app .tg-shop-card a.tg-shop-card__cart.ajax_add_to_cart:hover {
  background-color: #1574ec !important;
  background: linear-gradient(135deg, #1574ec, #062f8d) !important;
  background-image: linear-gradient(135deg, #1574ec, #062f8d) !important;
  color: #fff !important;
  transform: translateY(-1px);
}

.tg-shop-card__cart.added,
.tg-shop-card__cart.is-view-cart,
body .tg-app .tg-shop-card a.tg-shop-card__cart.added,
body .tg-app .tg-shop-card a.tg-shop-card__cart.is-view-cart {
  width: 76px;
  min-width: 76px;
  padding: 0 10px;
  font-size: 11px;
  background-color: var(--brand-blue-600) !important;
  background: linear-gradient(135deg, var(--brand-blue-600), var(--brand-blue-800)) !important;
  background-image: linear-gradient(135deg, var(--brand-blue-600), var(--brand-blue-800)) !important;
}

.tg-shop-card__cart--view,
body .tg-app .tg-shop-card a.tg-shop-card__cart--view {
  background-color: var(--ink-950) !important;
  background: linear-gradient(135deg, var(--ink-950), #26364f) !important;
  background-image: linear-gradient(135deg, var(--ink-950), #26364f) !important;
}

.tg-shop-card a.added_to_cart.wc-forward {
  display: none !important;
}

.tg-shop-card--skeleton {
  pointer-events: none;
}

.tg-shop-skeleton {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 999px;
  background: linear-gradient(90deg, #edf2f8 0%, #f8fbff 45%, #e5edf7 100%);
}

.tg-shop-skeleton::after {
  content: "";
  position: absolute;
  inset: 0;
  transform: translateX(-110%);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.82), transparent);
  animation: tg-shimmer 1.35s ease-in-out infinite;
}

.tg-shop-skeleton--media {
  border-radius: 22px;
  aspect-ratio: 1 / 1;
  background:
    radial-gradient(circle at 68% 20%, rgba(11,88,201,.14), transparent 30%),
    linear-gradient(135deg, #edf3fb, #f8fbff);
}

.tg-shop-skeleton--chip {
  width: 34%;
  height: 26px;
}

.tg-shop-skeleton--title {
  width: 72%;
  height: 28px;
}

.tg-shop-skeleton--text {
  width: 100%;
  height: 16px;
}

.tg-shop-skeleton--short {
  width: 68%;
}

.tg-shop-skeleton-price {
  display: grid;
  align-content: center;
  gap: 4px;
  min-height: 42px;
  padding-left: 10px;
}

.tg-shop-skeleton--old-price {
  width: 62px;
  height: 9px;
}

.tg-shop-skeleton--sale-price {
  width: 84px;
  height: 13px;
}

.tg-shop-skeleton--quantity {
  width: 86px;
  height: 42px;
  border-radius: 999px;
}

.tg-shop-skeleton--cart {
  width: 52px;
  height: 52px;
  border-radius: 14px;
  background: linear-gradient(90deg, rgba(11,88,201,.62), rgba(14,102,222,.82), rgba(6,47,141,.72));
}

@keyframes tg-shimmer {
  100% {
    transform: translateX(110%);
  }
}

/* ==========================================================================
   UNIVERSAL HIGH-PERFORMANCE SHIMMER SKELETON SYSTEM
   ========================================================================== */

@keyframes tg-shimmer-sweep {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(100%);
  }
}

.tg-shimmer-box,
.tg-shimmer-line,
.tg-shimmer-circle,
.tg-shimmer-btn {
  position: relative;
  overflow: hidden;
  background: rgba(11, 88, 201, 0.08);
  border-radius: 12px;
  display: block;
}

.tg-shimmer-box::after,
.tg-shimmer-line::after,
.tg-shimmer-circle::after,
.tg-shimmer-btn::after {
  content: "";
  position: absolute;
  inset: 0;
  transform: translateX(-100%);
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(255, 255, 255, 0.72) 50%,
    transparent 100%
  );
  animation: tg-shimmer-sweep 1.4s ease-in-out infinite;
}

.tg-shimmer-circle {
  border-radius: 50% !important;
}

.tg-shimmer-line {
  border-radius: 6px;
  height: 14px;
}

.tg-shimmer-btn {
  border-radius: 999px;
  height: 48px;
}

/* Dark Mode Theme Shimmer Overrides */
.tg-mode--dark .tg-shimmer-box,
.tg-mode--dark .tg-shimmer-line,
.tg-mode--dark .tg-shimmer-circle,
.tg-mode--dark .tg-shimmer-btn,
.tg-public-profile-app.tg-mode--dark .tg-shimmer-box,
.tg-public-profile-app.tg-mode--dark .tg-shimmer-line,
.tg-public-profile-app.tg-mode--dark .tg-shimmer-circle,
.tg-public-profile-app.tg-mode--dark .tg-shimmer-btn {
  background: rgba(255, 255, 255, 0.09);
}

.tg-mode--dark .tg-shimmer-box::after,
.tg-mode--dark .tg-shimmer-line::after,
.tg-mode--dark .tg-shimmer-circle::after,
.tg-mode--dark .tg-shimmer-btn::after,
.tg-public-profile-app.tg-mode--dark .tg-shimmer-box::after,
.tg-public-profile-app.tg-mode--dark .tg-shimmer-line::after,
.tg-public-profile-app.tg-mode--dark .tg-shimmer-circle::after,
.tg-public-profile-app.tg-mode--dark .tg-shimmer-btn::after {
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(255, 255, 255, 0.22) 50%,
    transparent 100%
  );
}

/* --------------------------------------------------------------------------
   Profile Shimmer Skeleton Layout
   -------------------------------------------------------------------------- */
.tg-skeleton-profile-wrap {
  width: 100%;
  max-width: 480px;
  margin: 24px auto;
  border-radius: 28px;
  overflow: hidden;
  background: #ffffff;
  border: 1px solid rgba(11, 88, 201, 0.12);
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.08);
}

.tg-skeleton-cover {
  width: 100%;
  height: 170px;
  border-radius: 0;
}

.tg-skeleton-avatar-wrap {
  display: flex;
  justify-content: center;
  margin-top: -46px;
  position: relative;
  z-index: 2;
}

.tg-skeleton-avatar {
  width: 92px;
  height: 92px;
  border: 4px solid #ffffff;
  box-shadow: 0 8px 24px rgba(0,0,0,0.12);
}

.tg-skeleton-profile-body {
  padding: 20px 24px 32px;
  text-align: center;
}

.tg-skeleton-name {
  width: 55%;
  height: 24px;
  margin: 0 auto 10px;
  border-radius: 8px;
}

.tg-skeleton-bio {
  width: 75%;
  height: 14px;
  margin: 0 auto 24px;
}

.tg-skeleton-actions-grid {
  display: grid;
  gap: 12px;
  margin-bottom: 28px;
}

.tg-skeleton-action-pill {
  height: 50px;
  border-radius: 25px;
}

.tg-skeleton-social-dock {
  display: flex;
  justify-content: center;
  gap: 14px;
}

.tg-skeleton-social-icon {
  width: 42px;
  height: 42px;
}

.tg-shop-state {
  padding: clamp(28px, 5vw, 46px);
  border: 1px dashed rgba(11,88,201,.28);
  border-radius: 8px;
  background:
    radial-gradient(circle at 50% 0%, rgba(11,88,201,.12), transparent 18rem),
    rgba(255,255,255,.86);
  color: var(--ink-950);
  font-weight: 900;
  text-align: center;
  box-shadow: 0 18px 54px rgba(8,32,70,.1);
}

.tg-pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-top: 26px;
}

.tg-pagination button {
  min-width: 42px;
  min-height: 42px;
  display: inline-grid;
  place-items: center;
  padding: 0 14px;
  border: 1px solid rgba(11,88,201,.16);
  border-radius: 8px;
  background: #fff;
  color: var(--ink-800);
  font-family: var(--font-heading);
  font-weight: 900;
  cursor: pointer;
}

.tg-pagination button.is-active,
.tg-pagination button:hover:not(:disabled) {
  background: var(--color-primary);
  border-color: var(--color-primary);
  color: #fff;
}

.tg-pagination button:disabled {
  cursor: not-allowed;
  opacity: .45;
}

.tg-product-band {
  display: grid;
  grid-template-columns: minmax(280px, .88fr) minmax(0, 1fr);
  gap: clamp(16px, 3vw, 30px);
  align-items: center;
  margin: 28px 0;
  padding: clamp(14px, 2vw, 22px);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.16), rgba(255,255,255,.06)),
    rgba(4,10,18,.68);
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.14), 0 22px 70px rgba(0,0,0,.2);
  overflow: hidden;
}

.tg-product-band--reverse {
  grid-template-columns: minmax(0, 1fr) minmax(280px, .88fr);
}

.tg-product-band--reverse img {
  order: 2;
}

.tg-product-band img {
  width: 100%;
  aspect-ratio: 16 / 11;
  object-fit: cover;
  border-radius: 8px;
  filter: saturate(1.08) contrast(1.05);
}

.tg-product-band__copy {
  display: grid;
  align-content: center;
}

.tg-product-band__copy h3 {
  margin: 0;
  color: #fff;
  font-family: var(--font-heading);
  font-size: clamp(20px, 2.1vw, 30px);
  line-height: 1.08;
}

.tg-product-band__copy p:not(.tg-eyebrow) {
  margin: 12px 0 0;
  color: rgba(255,255,255,.8);
}

.tg-product-showcase {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(340px, .92fr);
  gap: clamp(18px, 3vw, 34px);
  margin: 32px 0;
}

.tg-showcase-hero,
.tg-showcase-panel,
.tg-product-tile {
  border-radius: 8px;
  overflow: hidden;
  background:
    linear-gradient(135deg, rgba(255,255,255,.16), rgba(255,255,255,.06)),
    rgba(4,10,18,.72);
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.14), 0 24px 70px rgba(0,0,0,.22);
}

.tg-showcase-hero {
  position: relative;
  min-height: 500px;
  display: grid;
  align-items: end;
}

.tg-showcase-hero img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(1.08) contrast(1.05);
}

.tg-showcase-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(3,9,20,.06), rgba(3,9,20,.82)),
    linear-gradient(90deg, rgba(3,9,20,.62), transparent 62%);
}

.tg-showcase-hero__copy {
  position: relative;
  z-index: 2;
  max-width: 520px;
  padding: clamp(22px, 4vw, 36px);
}

.tg-showcase-hero__copy h3 {
  margin: 0;
  color: #fff;
  font-family: var(--font-heading);
  font-size: clamp(22px, 2.4vw, 34px);
  line-height: 1.08;
}

.tg-showcase-hero__copy p:not(.tg-eyebrow) {
  margin-top: 14px;
  color: rgba(255,255,255,.82);
}

.tg-showcase-panel {
  display: grid;
  gap: 16px;
  padding: clamp(16px, 2.5vw, 24px);
}

.tg-showcase-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.tg-showcase-stat {
  min-height: 92px;
  display: grid;
  align-content: center;
  gap: 2px;
  padding: 14px;
  border-radius: 8px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.14);
}

.tg-showcase-stat strong {
  color: #fff;
  font-family: var(--font-heading);
  font-size: clamp(24px, 3vw, 34px);
  line-height: 1;
}

.tg-showcase-stat span {
  color: rgba(255,255,255,.68);
  font-weight: 800;
  font-size: 12px;
}

.tg-product-tiles {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.tg-product-tile {
  min-height: 300px;
  display: grid;
  align-content: end;
  position: relative;
}

.tg-product-tile img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .72;
  filter: saturate(1.05) contrast(1.05);
}

.tg-product-tile::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 15%, rgba(3,9,20,.82) 100%);
}

.tg-product-tile > div {
  position: relative;
  z-index: 2;
  padding: 18px;
}

.tg-product-tile h3 {
  margin: 0 0 8px;
  color: #fff;
  font-family: var(--font-heading);
  font-size: 20px;
}

.tg-product-tile p {
  margin: 0;
  color: rgba(255,255,255,.78);
  font-size: 14px;
}

.tg-product-card__top {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

.tg-badge {
  display: inline-flex;
  align-items: center;
  height: 30px;
  padding: 0 10px;
  border-radius: 8px;
  color: var(--tag-primary-text);
  background: var(--tag-primary-bg);
  border: 1px solid var(--tag-primary-border);
  box-shadow: var(--tag-primary-shadow);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.tg-price {
  color: var(--ink-950);
  font-family: var(--font-heading);
  font-size: 30px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}

.tg-feature-list {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.tg-feature-list li::before {
  content: "";
  width: 8px;
  height: 8px;
  margin-right: 8px;
  border-radius: 8px;
  display: inline-block;
  background: var(--color-accent);
}

.tg-tabs {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  gap: 0;
  min-height: 440px;
  margin-top: 30px;
  overflow: hidden;
  border: 1px solid rgba(191,219,254,.58);
  border-radius: 8px;
  background: linear-gradient(135deg, #ffffff 0%, #f5f8ff 100%);
  box-shadow: 0 24px 70px rgba(7,17,31,.22), inset 0 1px 0 rgba(255,255,255,.82);
}

.tg-tabs__nav {
  position: relative;
  z-index: 3;
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-content: start;
  padding: 28px 14px;
  border-radius: 0 0 34px 0;
  background:
    radial-gradient(circle at 18% 0%, rgba(93,224,230,.26), transparent 34%),
    linear-gradient(180deg, #0879f7 0%, #043fc6 100%);
  box-shadow: 14px 0 38px rgba(11,88,201,.18);
}

.tg-tab-button {
  min-height: 54px;
  display: flex;
  align-items: center;
  gap: 12px;
  border: 0;
  border-radius: 8px;
  text-align: left;
  padding: 0 14px;
  color: rgba(255,255,255,.82);
  background: transparent;
  cursor: pointer;
  font-weight: 800;
  position: relative;
  transition: width .2s ease, transform .2s ease, color .2s ease, background .2s ease, box-shadow .2s ease;
}

.tg-tab-button__icon {
  width: 32px;
  height: 32px;
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  border-radius: 8px;
  color: #fff;
  background: rgba(255,255,255,.16);
  font-size: 12px;
  font-weight: 900;
}

.tg-tab-button__label {
  line-height: 1.15;
}

.tg-tab-button:hover {
  color: #fff;
  background: rgba(255,255,255,.12);
}

.tg-tab-button.is-active {
  color: var(--ink-950);
  background: #ffffff;
  box-shadow: 0 16px 30px rgba(7,17,31,.14);
  width: calc(100% + 18px);
  transform: none;
  border-radius: 8px 0 0 8px;
}

.tg-tab-button.is-active::after {
  content: "";
  position: absolute;
  top: 0;
  right: -18px;
  width: 18px;
  height: 100%;
  background: #ffffff;
  pointer-events: none;
}

.tg-tab-button.is-active .tg-tab-button__icon {
  color: #fff;
  background: var(--color-primary);
}

.tg-module-card {
  position: relative;
  display: grid;
  align-content: center;
  min-height: 100%;
  padding: clamp(26px, 5vw, 64px);
  border: 0;
  border-radius: 0;
  color: var(--ink-950);
  background:
    radial-gradient(circle at 88% 0%, rgba(0,179,219,.08), transparent 24rem),
    linear-gradient(135deg, #ffffff 0%, #f5f8ff 100%) !important;
  box-shadow: none;
}

.tg-app > .tg-section .tg-module-card,
.tg-home-story .tg-section .tg-module-card {
  color: var(--ink-950);
  background:
    radial-gradient(circle at 88% 0%, rgba(0,179,219,.08), transparent 24rem),
    linear-gradient(135deg, #ffffff 0%, #f5f8ff 100%) !important;
  border-color: transparent;
}

.tg-module-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 58px;
  background: linear-gradient(90deg, rgba(11,88,201,.12), rgba(11,88,201,.04), transparent);
  pointer-events: none;
}

.tg-module-card h3 {
  max-width: 720px;
  color: var(--ink-950) !important;
  font-size: clamp(26px, 3.5vw, 44px);
}

.tg-module-card p:not(.tg-card__meta) {
  max-width: 760px;
  color: var(--ink-700) !important;
  font-size: clamp(16px, 1.55vw, 21px);
}

.tg-module-card .tg-card__meta {
  color: var(--color-primary) !important;
}

.tg-module-card__row {
  display: grid;
  gap: 6px;
  margin-top: 26px;
  padding: 18px;
  border-radius: 8px;
  background: rgba(234,241,255,.86);
  border: 1px solid rgba(11,88,201,.14);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
}

.tg-module-card__row span {
  color: var(--color-primary) !important;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.tg-module-card__row strong {
  color: var(--ink-950) !important;
  font-size: 16px;
}

.tg-module-card__signals {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 22px;
}

.tg-module-card__signals span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 12px;
  border-radius: 8px;
  color: #fff;
  background: var(--color-primary);
  font-size: 12px;
  font-weight: 900;
}

.tg-app > .tg-section .tg-module-card p,
.tg-home-story .tg-section .tg-module-card p {
  color: var(--ink-700) !important;
}

.tg-app > .tg-section .tg-module-card .tg-card__meta,
.tg-home-story .tg-section .tg-module-card .tg-card__meta,
.tg-app > .tg-section .tg-module-card__row span,
.tg-home-story .tg-section .tg-module-card__row span {
  color: var(--color-primary) !important;
}

.tg-app > .tg-section .tg-module-card h3,
.tg-home-story .tg-section .tg-module-card h3,
.tg-app > .tg-section .tg-module-card strong,
.tg-home-story .tg-section .tg-module-card strong {
  color: var(--ink-950) !important;
}

.tg-app > .tg-section .tg-module-card__signals span,
.tg-home-story .tg-section .tg-module-card__signals span {
  color: #fff !important;
}

.tg-comparison {
  overflow-x: auto;
  margin-top: 28px;
  padding: 10px;
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.78), rgba(255,255,255,.48)),
    rgba(255,255,255,.72);
  border: 1px solid rgba(255,255,255,.7);
  box-shadow: 0 26px 90px rgba(0,0,0,.18);
}
.tg-comparison table {
  width: 100%;
  min-width: 760px;
  border-collapse: separate;
  border-spacing: 0 8px;
  overflow: hidden;
  border-radius: 8px;
}
.tg-comparison th,
.tg-comparison td {
  padding: 14px 18px;
  text-align: left;
  border-bottom: 0;
  background: rgba(255,255,255,.82);
}
.tg-comparison th {
  padding: 13px 18px;
  color: #fff;
  background: var(--color-primary);
  font-family: var(--font-heading);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  box-shadow: inset 0 -1px 0 rgba(255,255,255,.18);
}
.tg-comparison th:first-child { border-radius: 8px 0 0 8px; }
.tg-comparison th:last-child { border-radius: 0 8px 8px 0; }
.tg-comparison td:first-child {
  border-radius: 8px 0 0 8px;
  color: var(--ink-950);
  font-weight: 900;
}
.tg-comparison td:last-child { border-radius: 0 8px 8px 0; }

.tg-comparison__pill {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.tg-comparison__pill--low {
  color: #dc2626;
  background: rgba(254,226,226,.86);
}

.tg-comparison__pill--mid {
  color: #b45309;
  background: rgba(254,243,199,.9);
}

.tg-comparison__pill--high {
  color: #027a48;
  background: rgba(209,250,229,.9);
}

.tg-home-story .tg-comparison th,
.tg-home-story .tg-comparison td,
.tg-app > .tg-section .tg-comparison th,
.tg-app > .tg-section .tg-comparison td {
  color: rgba(255,255,255,.86);
  background: rgba(255,255,255,.08);
}

.tg-home-story .tg-comparison th,
.tg-app > .tg-section .tg-comparison th {
  color: #fff;
  background: var(--color-primary);
}

.tg-home-story .tg-comparison,
.tg-app > .tg-section .tg-comparison {
  background:
    linear-gradient(135deg, rgba(255,255,255,.18), rgba(255,255,255,.07)),
    rgba(5,12,24,.72);
  border-color: rgba(255,255,255,.2);
}

.tg-home-story .tg-comparison td:first-child,
.tg-app > .tg-section .tg-comparison td:first-child {
  color: #fff;
}

.tg-app > .tg-section .tg-faq details {
  background: rgba(7,17,31,.58);
  border-color: rgba(255,255,255,.16);
}

.tg-app > .tg-section .tg-faq summary {
  color: #fff !important;
}

.tg-faq {
  display: grid;
  gap: 10px;
}
.tg-faq details {
  border-radius: 8px;
  background: rgba(255,255,255,.75);
  border: 1px solid rgba(11,88,201,.1);
  padding: 16px 18px;
}
.tg-faq summary {
  color: var(--ink-950);
  cursor: pointer;
  font-weight: 800;
}

.tg-final {
  margin: 0 auto;
  padding: clamp(42px, 7vw, 78px);
  padding-right: clamp(32px, 38vw, 560px);
  border-radius: 8px;
  color: #fff;
  background: var(--gradient-brand);
  position: relative;
  overflow: visible;
  min-height: clamp(360px, 34vw, 500px);
}
.tg-final h2 { color: #fff; max-width: 780px; }
.tg-final p { max-width: 640px; color: rgba(255,255,255,.82); }

.tg-final__copy {
  position: relative;
  z-index: 2;
}

.tg-final__image {
  position: absolute;
  top: clamp(-92px, -7vw, -44px);
  right: clamp(-150px, -10vw, -70px);
  z-index: 1;
  width: min(46vw, 620px);
  max-width: 58%;
  max-height: none;
  object-fit: contain;
  border-radius: 8px;
  filter: drop-shadow(0 32px 70px rgba(0,0,0,.38));
  box-shadow: none;
}

.tg-footer {
  position: relative;
  z-index: 8;
  padding: clamp(54px, 8vw, 92px) 0 28px;
  color: rgba(255,255,255,.7);
  background:
    radial-gradient(circle at 18% 0%, rgba(0,179,219,.16), transparent 26rem),
    linear-gradient(180deg, #07111f 0%, #030914 100%);
}

.tg-footer .tg-container {
  position: relative;
  z-index: 2;
}

.tg-footer__top {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(320px, 1.1fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
  padding-bottom: 34px;
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.tg-footer__brand {
  display: grid;
  gap: 18px;
  max-width: 520px;
}

.tg-footer img { width: 148px; filter: none; }

.tg-footer__brand p,
.tg-footer__cta p,
.tg-footer__bottom p {
  margin: 0;
}

.tg-footer__proof {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
  margin: 0;
  padding: 0;
  list-style: none;
  color: rgba(255,255,255,.82);
  font-size: 13px;
  font-weight: 800;
}

.tg-footer__proof li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.tg-footer__proof li::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: var(--color-primary);
  box-shadow: 0 0 0 4px rgba(11,88,201,.22);
}

.tg-footer__cta {
  padding: clamp(22px, 3vw, 34px);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.14), rgba(255,255,255,.06)),
    rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.14), 0 22px 70px rgba(0,0,0,.22);
}

.tg-footer__cta h2 {
  margin: 0;
  max-width: 720px;
  color: #fff;
  font-family: var(--font-heading);
  font-size: clamp(28px, 3.4vw, 48px);
  line-height: 1.06;
}

.tg-footer__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}

.tg-footer__links {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(22px, 4vw, 56px);
  padding: 34px 0;
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.tg-footer__column {
  display: grid;
  gap: 10px;
  align-content: start;
}

.tg-footer__column h3 {
  margin: 0 0 6px;
  color: #fff;
  font-family: var(--font-heading);
  font-size: 16px;
}

.tg-footer__column a,
.tg-footer__bottom a {
  color: rgba(255,255,255,.72);
  font-weight: 700;
}

.tg-footer__column a:hover,
.tg-footer__bottom a:hover {
  color: #fff;
}

.tg-footer__bottom {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding-top: 22px;
  color: rgba(255,255,255,.62);
  font-size: 13px;
  font-weight: 700;
}

.tg-wc-app {
  min-height: 100vh;
  background:
    radial-gradient(circle at 78% 8%, rgba(0,179,219,.18), transparent 28rem),
    radial-gradient(circle at 12% 18%, rgba(11,88,201,.14), transparent 30rem),
    linear-gradient(180deg, #f9fbff 0%, #eef5ff 48%, #ffffff 100%);
}

.tg-wc-main {
  min-height: 100vh;
  padding: 142px 0 clamp(58px, 8vw, 96px);
}

.tg-wc-shell {
  color: var(--ink-950);
}

.tg-wc-shell .woocommerce-breadcrumb {
  margin: 0 0 18px;
  color: var(--ink-700);
  font-size: 13px;
  font-weight: 800;
}

.tg-wc-shell .woocommerce-breadcrumb a {
  color: var(--color-primary);
}

.tg-wc-shell .woocommerce-notices-wrapper {
  margin-bottom: 16px;
}

.tg-wc-shell .woocommerce-message,
.tg-wc-shell .woocommerce-info,
.tg-wc-shell .woocommerce-error {
  position: relative !important;
  margin: 0 0 18px;
  min-height: 54px;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 18px 14px 58px !important;
  border-radius: 8px;
  color: var(--ink-950);
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(11,88,201,.14);
  box-shadow: 0 16px 38px rgba(7,17,31,.08);
  font-weight: 800;
}

.tg-wc-shell .woocommerce-message::before,
.tg-wc-shell .woocommerce-info::before,
.tg-wc-shell .woocommerce-error::before {
  position: absolute !important;
  top: 50% !important;
  left: 20px !important;
  width: 22px !important;
  height: 22px !important;
  display: inline-grid !important;
  place-items: center !important;
  margin: 0 !important;
  color: var(--color-primary) !important;
  font-size: 16px !important;
  line-height: 1 !important;
  transform: translateY(-50%) !important;
  pointer-events: none;
}

.tg-wc-shell .woocommerce-message a,
.tg-wc-shell .woocommerce-info a,
.tg-wc-shell .woocommerce-error a {
  color: var(--color-primary);
  font-weight: 900;
}

.tg-wc-shell .woocommerce-message .button,
.tg-wc-shell .woocommerce-info .button,
.tg-wc-shell .woocommerce-error .button {
  order: 2;
  margin-left: auto;
  min-height: 40px;
  border-radius: 999px;
  color: #fff !important;
  background: var(--button-primary-bg) !important;
}

.tg-wc-shell .woocommerce-cart-form,
.tg-wc-shell .cart-collaterals,
.tg-wc-shell .woocommerce-checkout {
  padding: clamp(18px, 3vw, 30px);
  border-radius: 8px;
  background: rgba(255, 255, 255, .9);
  border: 1px solid rgba(11, 88, 201, .12);
  box-shadow: 0 24px 70px rgba(8, 32, 70, .12);
}

.tg-wc-shell table.shop_table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0 10px;
  border: 0;
  background: transparent;
}

.tg-wc-shell table.shop_table th {
  padding: 12px 14px;
  color: #fff;
  background: var(--color-primary);
  border: 0;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.tg-wc-shell table.shop_table th:first-child {
  border-radius: 8px 0 0 8px;
}

.tg-wc-shell table.shop_table th:last-child {
  border-radius: 0 8px 8px 0;
}

.tg-wc-shell table.shop_table td {
  padding: 12px 14px;
  vertical-align: middle;
  color: var(--ink-950);
  background: rgba(244, 248, 255, .92);
  border: 0;
  font-weight: 800;
}

.tg-wc-shell table.shop_table td.product-subtotal,
.tg-wc-shell table.shop_table td.product-price {
  color: var(--color-primary);
  font-family: var(--font-heading);
  font-weight: 900;
}

.tg-wc-shell table.shop_table tr.cart_item td:first-child {
  border-radius: 8px 0 0 8px;
}

.tg-wc-shell table.shop_table tr.cart_item td:last-child {
  border-radius: 0 8px 8px 0;
}

.tg-wc-shell table.cart .product-thumbnail {
  width: 92px;
}

.tg-wc-shell table.cart .product-thumbnail img {
  width: 68px;
  height: 68px;
  display: block;
  object-fit: cover;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(8, 32, 70, .12);
}

.tg-wc-shell table.cart .product-name a {
  color: var(--ink-950);
  text-decoration: none;
}

.tg-wc-shell table.cart .product-remove a {
  display: inline-grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  color: #fff !important;
  background: rgba(225, 29, 72, .9);
  font-size: 18px;
  line-height: 1;
  text-decoration: none;
  transition: transform .18s ease, background .18s ease;
}

.tg-wc-shell table.cart .product-remove a:hover {
  background: #be123c;
  transform: scale(1.06);
}

.tg-wc-shell table.cart .quantity .qty {
  width: 72px;
  min-height: 40px;
  border-radius: 999px;
  text-align: center;
  background: #fff;
}

.tg-wc-shell table.cart td.actions {
  padding: 16px;
  border-radius: 8px;
  background: rgba(232, 240, 255, .88);
}

.tg-wc-shell table.cart td.actions .coupon {
  display: flex;
  gap: 10px;
  align-items: center;
}

.tg-wc-shell table.cart td.actions .coupon .input-text,
.tg-wc-shell .checkout_coupon .input-text {
  min-width: min(280px, 100%);
  height: 46px;
  padding: 0 16px;
  border-radius: 999px;
  color: var(--ink-950);
  background: #fff;
  border: 1px solid rgba(11, 88, 201, .18);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
  font-weight: 800;
}

.tg-wc-shell table.cart td.actions .coupon .input-text:focus,
.tg-wc-shell .checkout_coupon .input-text:focus {
  outline: 3px solid rgba(11, 88, 201, .18);
  border-color: var(--color-primary);
}

.tg-wc-shell table.cart td.actions .button,
.tg-wc-shell .checkout_coupon .button {
  min-height: 46px;
  border-radius: 999px;
}

.tg-wc-shell table.cart td.actions > .button,
.tg-wc-shell table.cart td.actions .coupon .button,
.tg-wc-shell .checkout_coupon .button,
.tg-wc-shell .return-to-shop .button {
  color: #fff !important;
  background: var(--button-primary-bg) !important;
  box-shadow: 0 16px 34px rgba(11,88,201,.22);
  font-family: var(--font-heading);
  font-weight: 900;
}

.tg-wc-shell .wc-empty-cart-message,
.tg-wc-shell .cart-empty {
  margin: 0 0 18px;
}

.tg-wc-shell .return-to-shop {
  margin: 18px 0 0;
}

.tg-wc-shell .cart-collaterals {
  margin-top: 20px;
}

.tg-wc-shell .cart_totals h2 {
  margin: 0 0 16px;
  color: var(--ink-950);
  font-size: clamp(24px, 3vw, 34px);
}

.tg-wc-shell .woocommerce-shipping-calculator,
.tg-wc-shell .shipping-calculator-button,
.tg-wc-shell .shipping-calculator-form {
  display: none !important;
}

.tg-wc-shell .wc-proceed-to-checkout .checkout-button,
.tg-wc-shell a.checkout-button,
.tg-wc-shell .woocommerce-checkout-payment #place_order {
  width: 100%;
  min-height: 56px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  color: #fff !important;
  background:
    linear-gradient(135deg, var(--color-primary) 0%, #074bb1 58%, #00175d 100%) !important;
  box-shadow: 0 18px 40px rgba(11, 88, 201, .28);
  font-family: var(--font-heading);
  font-size: 16px;
  font-weight: 900;
  text-align: center;
}

.tg-wc-shell .wc-proceed-to-checkout .checkout-button:hover,
.tg-wc-shell a.checkout-button:hover,
.tg-wc-shell .woocommerce-checkout-payment #place_order:hover {
  transform: translateY(-1px);
  box-shadow: 0 22px 48px rgba(11, 88, 201, .34);
}

.tg-mini-cart-backdrop {
  position: fixed;
  inset: 0;
  z-index: 99998;
  background: rgba(4, 14, 30, 0.65);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.28s cubic-bezier(0.16, 1, 0.3, 1);
}

.tg-mini-cart-backdrop.is-open {
  opacity: 1;
  pointer-events: auto;
}

.tg-mini-cart {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 99999;
  width: min(440px, 100vw);
  height: 100vh;
  max-height: 100vh;
  overflow-y: auto;
  padding: 28px 24px;
  color: var(--ink-950);
  background: #ffffff;
  box-shadow: -12px 0 50px rgba(4, 16, 40, 0.25);
  transform: translateX(100%);
  opacity: 1;
  pointer-events: none;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1);
}

html[dir="rtl"] .tg-mini-cart {
  right: auto;
  left: 0;
  box-shadow: 12px 0 50px rgba(4, 16, 40, 0.25);
  transform: translateX(-100%);
}

.tg-mini-cart.is-open {
  transform: translateX(0) !important;
  pointer-events: auto;
}

.tg-mini-cart__title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 4px 40px 16px 0;
}

.tg-mini-cart__title-row h2 {
  margin: 0;
  font-size: 26px;
  line-height: 1;
}

.tg-mini-cart__empty-all {
  background: none;
  border: 1px solid rgba(220, 38, 38, 0.25);
  color: #dc2626;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
  padding: 4px 10px;
  border-radius: 20px;
  white-space: nowrap;
  transition: all 0.15s ease;
}

.tg-mini-cart__empty-all:hover {
  background: #dc2626;
  color: #ffffff;
  border-color: #dc2626;
}

.tg-mini-cart__close {
  position: absolute;
  top: 14px;
  right: 14px;
  width: 34px;
  height: 34px;
  border: 0;
  border-radius: 999px;
  color: var(--ink-950);
  background: rgba(232, 240, 255, .95);
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background 0.15s ease;
}

.tg-mini-cart__close:hover {
  background: rgba(210, 226, 255, 1);
}

.tg-mini-cart__items {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.tg-mini-cart__item {
  display: grid;
  grid-template-columns: 60px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border-radius: 12px;
  background: rgba(244, 248, 255, .94);
  border: 1px solid rgba(11, 88, 201, 0.08);
}

.tg-mini-cart__thumb img {
  width: 60px;
  height: 60px;
  display: block;
  object-fit: cover;
  border-radius: 8px;
}

.tg-mini-cart__meta {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.tg-mini-cart__meta strong,
.tg-mini-cart__meta a {
  color: var(--ink-950);
  font-size: 14px;
  line-height: 1.15;
  text-decoration: none;
  font-weight: 800;
}

.tg-mini-cart__qty-ctrl {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #ffffff;
  border: 1px solid rgba(11, 88, 201, 0.2);
  border-radius: 20px;
  padding: 2px 8px;
  width: fit-content;
}

.tg-cart-qty-btn {
  background: none;
  border: none;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  font-weight: 900;
  font-size: 14px;
  color: var(--brand-blue-600);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background 0.15s ease;
}

.tg-cart-qty-btn:hover {
  background: rgba(11, 88, 201, 0.12);
}

.tg-cart-qty-num {
  font-size: 13px;
  font-weight: 900;
  min-width: 16px;
  text-align: center;
  color: var(--ink-950);
}

.tg-mini-cart__right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 8px;
}

.tg-mini-cart__price {
  color: var(--ink-950);
  font-size: 13px;
  font-weight: 900;
  white-space: nowrap;
}

.tg-mini-cart__remove-item {
  background: rgba(220, 38, 38, 0.1);
  border: none;
  color: #dc2626;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  font-size: 16px;
  font-weight: 800;
  line-height: 1;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background 0.15s ease, transform 0.15s ease;
}

.tg-mini-cart__remove-item:hover {
  background: #dc2626;
  color: #ffffff;
  transform: scale(1.1);
}

.tg-mini-cart__empty {
  padding: 18px;
  border-radius: 12px;
  background: rgba(244, 248, 255, .94);
  font-weight: 800;
  text-align: center;
  color: var(--ink-700);
}

.tg-mini-cart__subtotal {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid rgba(11, 88, 201, .14);
  font-weight: 900;
}

.tg-mini-cart__actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 16px;
}

.tg-mini-cart__actions .tg-btn {
  min-height: 46px;
  justify-content: center;
  white-space: nowrap;
}

.tg-wc-shell .product.type-product {
  position: relative;
  display: grid;
  grid-template-columns: minmax(320px, .9fr) minmax(0, 1fr);
  gap: clamp(26px, 5vw, 68px);
  align-items: center;
  padding: clamp(24px, 4vw, 54px);
  overflow: hidden;
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(234,241,255,.72)),
    rgba(255,255,255,.82);
  border: 1px solid rgba(255,255,255,.78);
  box-shadow: 0 28px 90px rgba(8, 32, 70, .16);
}

.tg-wc-shell .product.type-product::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 82% 8%, rgba(0,179,219,.18), transparent 20rem),
    linear-gradient(135deg, rgba(11,88,201,.12), transparent 48%);
}

.tg-wc-shell .woocommerce-product-gallery,
.tg-wc-shell .summary {
  position: relative;
  z-index: 2;
}

.tg-wc-shell .woocommerce-product-gallery {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
  opacity: 1 !important;
}

.tg-wc-shell .woocommerce-product-gallery__wrapper {
  margin: 0;
}

.tg-wc-shell .woocommerce-product-gallery__image {
  border-radius: 8px;
  background:
    radial-gradient(circle at 50% 14%, rgba(255,255,255,.98), rgba(234,241,255,.66) 48%, rgba(11,88,201,.1));
  border: 1px solid rgba(11,88,201,.1);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.82), 0 24px 70px rgba(7,17,31,.12);
}

.tg-wc-shell .woocommerce-product-gallery__image img {
  width: 100%;
  height: auto;
  padding: clamp(16px, 3vw, 34px);
  object-fit: contain;
  filter: drop-shadow(0 24px 46px rgba(7,17,31,.18));
}

.tg-wc-shell .onsale {
  position: absolute;
  z-index: 4;
  top: 22px;
  left: 22px;
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 12px;
  border-radius: 999px;
  color: #fff;
  background: var(--color-primary);
  font-weight: 900;
  box-shadow: 0 14px 34px rgba(11,88,201,.28);
}

.tg-wc-shell .summary {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
}

.tg-wc-shell .product_title {
  margin: 0 0 12px;
  color: var(--ink-950);
  font-family: var(--font-heading);
  font-size: clamp(36px, 5vw, 68px);
  line-height: .98;
  letter-spacing: 0;
}

.tg-wc-shell .price {
  margin: 0 0 18px;
  color: var(--color-primary);
  font-family: var(--font-heading);
  font-size: clamp(24px, 3vw, 38px);
  font-weight: 900;
}

.tg-wc-shell .price del {
  margin-right: 10px;
  color: var(--ink-500);
  opacity: .72;
  font-size: .72em;
}

.tg-wc-shell .price ins {
  color: var(--color-primary);
  text-decoration: none;
}

.tg-wc-shell .woocommerce-product-details__short-description {
  max-width: 620px;
  margin: 0 0 24px;
  color: var(--ink-700);
  font-size: clamp(17px, 1.7vw, 21px);
  font-weight: 700;
}

.tg-wc-shell form.cart {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin: 0 0 22px;
}

.tg-wc-shell .quantity .qty {
  width: 82px;
  height: 48px;
  border: 1px solid rgba(11,88,201,.16);
  border-radius: 8px;
  color: var(--ink-950);
  background: #fff;
  font-weight: 900;
  text-align: center;
}

.tg-wc-shell .button,
.tg-wc-shell button.button,
.tg-wc-shell .single_add_to_cart_button {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 8px;
  padding: 0 22px;
  color: #fff;
  background: var(--button-primary-bg);
  box-shadow: var(--button-primary-shadow);
  font-family: var(--font-heading);
  font-weight: 900;
  cursor: pointer;
}

.tg-wc-shell .product_meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  color: var(--ink-700);
  font-size: 13px;
  font-weight: 800;
}

.tg-wc-shell .product_meta > span {
  padding: 8px 10px;
  border-radius: 8px;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(11,88,201,.1);
}

.woocommerce .related.products,
.woocommerce-page .related.products,
.tg-wc-shell .related.products,
.tg-wc-shell .upsells.products {
  clear: both !important;
  float: none !important;
  width: 100% !important;
  margin-top: 36px !important;
  padding: clamp(24px, 3.5vw, 40px) !important;
  border-radius: 20px !important;
  background: #ffffff !important;
  border: 1px solid rgba(11, 88, 201, 0.12) !important;
  box-shadow: 0 16px 48px rgba(8, 32, 70, 0.06) !important;
}

.woocommerce .related.products h2,
.woocommerce-page .related.products h2,
.tg-wc-shell .related.products h2,
.tg-wc-shell .upsells.products h2 {
  margin: 0 0 24px !important;
  color: var(--ink-950) !important;
  font-family: var(--font-heading) !important;
  font-size: clamp(22px, 2.5vw, 30px) !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
}

.woocommerce .related.products ul.products,
.woocommerce-page .related.products ul.products,
.tg-wc-shell .related.products ul.products,
.tg-wc-shell .upsells.products ul.products {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important;
  gap: 24px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  float: none !important;
}

.woocommerce .related.products ul.products::before,
.woocommerce .related.products ul.products::after,
.woocommerce-page .related.products ul.products::before,
.woocommerce-page .related.products ul.products::after {
  display: none !important;
  content: none !important;
}

.woocommerce .related.products ul.products li.product,
.woocommerce-page .related.products ul.products li.product,
.tg-wc-shell .related.products ul.products li.product,
.tg-wc-shell .upsells.products ul.products li.product {
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 20px !important;
  border-radius: 16px !important;
  background: #f8fafc !important;
  border: 1px solid rgba(11, 88, 201, 0.1) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  transition: all 0.25s ease !important;
  position: relative !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

.woocommerce .related.products ul.products li.product:hover,
.tg-wc-shell .related.products ul.products li.product:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 32px rgba(11, 88, 201, 0.12) !important;
  border-color: var(--brand-blue-500) !important;
  background: #ffffff !important;
}

.woocommerce .related.products ul.products li.product img,
.tg-wc-shell .related.products ul.products li.product img {
  width: 100% !important;
  height: 200px !important;
  object-fit: contain !important;
  margin-bottom: 14px !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  padding: 10px !important;
}

.woocommerce .related.products ul.products li.product .woocommerce-loop-product__title,
.woocommerce .related.products ul.products li.product h2,
.woocommerce .related.products ul.products li.product h3,
.tg-wc-shell .related.products ul.products li.product .woocommerce-loop-product__title {
  font-size: 16px !important;
  font-weight: 800 !important;
  color: var(--ink-950) !important;
  margin: 0 0 8px !important;
  line-height: 1.3 !important;
}

.woocommerce .related.products ul.products li.product .price,
.tg-wc-shell .related.products ul.products li.product .price {
  font-size: 18px !important;
  font-weight: 900 !important;
  color: var(--brand-blue-600) !important;
  margin: 0 0 16px !important;
}

.woocommerce .related.products ul.products li.product .button,
.woocommerce .related.products ul.products li.product a.add_to_cart_button,
.tg-wc-shell .related.products ul.products li.product .button {
  margin-top: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 44px !important;
  padding: 0 20px !important;
  border-radius: 22px !important;
  background: var(--brand-blue-600) !important;
  color: #ffffff !important;
  font-weight: 800 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  border: none !important;
  transition: all 0.2s ease !important;
  position: static !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.woocommerce .related.products ul.products li.product .button:hover,
.tg-wc-shell .related.products ul.products li.product .button:hover {
  background: var(--brand-blue-700) !important;
  transform: translateY(-1px) !important;
}

.tg-wc-shell .woocommerce-tabs ul.tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 18px;
  padding: 0;
  list-style: none;
}

.tg-wc-shell .woocommerce-tabs ul.tabs li {
  margin: 0;
  padding: 0;
}

.tg-wc-shell .woocommerce-tabs ul.tabs a {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  padding: 0 14px;
  border-radius: 8px;
  color: var(--ink-700);
  background: rgba(234,241,255,.88);
  font-weight: 900;
}

.tg-wc-shell .woocommerce-tabs ul.tabs .active a {
  color: #fff;
  background: var(--color-primary);
}

.tg-wc-shell .woocommerce-Tabs-panel h2,
.tg-wc-shell .related.products h2,
.tg-wc-shell .upsells.products h2 {
  margin: 0 0 14px;
  color: var(--ink-950);
  font-family: var(--font-heading);
  font-size: clamp(24px, 3vw, 38px);
  line-height: 1.08;
}

.tg-wc-shell .woocommerce-Tabs-panel p {
  color: var(--ink-700);
  font-weight: 700;
}

.tg-wc-shell ul.products {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.tg-wc-shell ul.products li.product {
  width: auto !important;
  margin: 0 !important;
  padding: 16px;
  border-radius: 8px;
  background: rgba(245,248,255,.92);
  border: 1px solid rgba(11,88,201,.1);
}

.tg-wc-shell ul.products li.product img {
  aspect-ratio: 4 / 3;
  width: 100%;
  object-fit: contain;
}

body.single-product .tg-wc-app {
  background:
    radial-gradient(circle at 78% 6%, rgba(11,88,201,.12), transparent 24rem),
    radial-gradient(circle at 8% 78%, rgba(0,179,219,.1), transparent 28rem),
    linear-gradient(180deg, #f3f7ff 0%, #ffffff 52%, #eef5ff 100%);
}

body.single-product .tg-wc-header {
  top: 18px;
}

body.single-product .tg-wc-header .tg-header__inner {
  min-height: 58px;
  border-radius: 8px;
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 56px rgba(8,32,70,.1);
}

body.single-product .tg-wc-main {
  padding-top: clamp(104px, 12vh, 136px);
}

body.single-product .tg-wc-shell {
  width: min(1180px, calc(100% - 32px));
}

body.single-product .tg-wc-shell .woocommerce-breadcrumb {
  display: none;
}

body.single-product .tg-wc-shell .product.type-product {
  min-height: min(760px, calc(100svh - 140px));
  grid-template-columns: minmax(0, 1.28fr) minmax(330px, .72fr);
  gap: clamp(22px, 3.6vw, 54px);
  align-items: stretch;
  padding: clamp(18px, 2.5vw, 34px);
  border-radius: 8px;
  background:
    linear-gradient(90deg, rgba(255,255,255,.94) 0%, rgba(255,255,255,.9) 63%, rgba(246,250,255,.94) 100%);
  border: 1px solid rgba(11,88,201,.1);
  box-shadow: 0 34px 95px rgba(7,17,31,.14);
}

body.single-product .tg-wc-shell .product.type-product::before {
  display: none;
  content: none;
}

body.single-product .tg-wc-shell .product.type-product::after {
  display: none;
  content: none;
}

body.single-product .tg-wc-shell .woocommerce-product-gallery {
  display: grid;
  grid-template-columns: 82px minmax(0, 1fr);
  gap: 14px;
  min-height: 100%;
  align-items: center;
}

/* Prevent extra gallery images from stacking underneath main image before FlexSlider initializes */
body.single-product .tg-wc-shell .woocommerce-product-gallery:not(.flexslider) .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:nth-child(n+2),
body.single-product .tg-wc-shell .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:nth-child(n+2) {
  display: none !important;
}

body.single-product .tg-wc-shell .woocommerce-product-gallery.flexslider .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:nth-child(n+2) {
  display: block !important;
}

body.single-product .tg-wc-shell .woocommerce-product-gallery .woocommerce-product-gallery__trigger {
  z-index: 7;
}

body.single-product .tg-wc-shell .woocommerce-product-gallery__wrapper {
  grid-column: 2;
  grid-row: 1;
  min-width: 0;
  cursor: grab;
  touch-action: pan-y;
  user-select: none;
  -webkit-user-select: none;
  -webkit-user-drag: none;
}

body.single-product .tg-wc-shell .woocommerce-product-gallery.is-dragging .woocommerce-product-gallery__wrapper {
  cursor: grabbing;
}

body.single-product .tg-wc-shell .woocommerce-product-gallery.is-dragging a,
body.single-product .tg-wc-shell .woocommerce-product-gallery.is-dragging img {
  pointer-events: none;
}

body.single-product .tg-wc-shell .woocommerce-product-gallery__wrapper a,
body.single-product .tg-wc-shell .woocommerce-product-gallery__wrapper img {
  -webkit-user-drag: none;
  user-select: none;
  -webkit-user-select: none;
}

body.single-product .tg-wc-shell .woocommerce-product-gallery__image {
  display: grid;
  position: relative;
  min-height: min(620px, 58svh);
  place-items: center;
  overflow: hidden;
  border-radius: 20px;
  border: 0;
  background:
    radial-gradient(circle at 52% 52%, rgba(234,241,255,.85), transparent 18rem),
    linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,0));
  box-shadow: none;
}

body.single-product .tg-wc-shell .woocommerce-product-gallery__image.has-tg-product-frames {
  overflow: hidden;
}

body.single-product .tg-wc-shell .woocommerce-product-gallery__image.has-tg-product-frames > a {
  transition: opacity .16s ease;
}

body.single-product .tg-wc-shell .woocommerce-product-gallery__image > a {
  width: 100%;
  height: 100%;
  display: block;
}

body.single-product .tg-wc-shell .woocommerce-product-gallery.has-active-product-frames .woocommerce-product-gallery__image.has-tg-product-frames > a {
  opacity: 0;
}

body.single-product .tg-wc-shell .woocommerce-product-gallery:not(.has-active-product-frames) .tg-product-frame-canvas {
  opacity: 0;
}

body.single-product .tg-product-frame-canvas {
  position: absolute;
  inset: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  display: block;
  pointer-events: none;
  opacity: 1;
  transition: opacity .16s ease;
  filter: drop-shadow(0 44px 64px rgba(7,17,31,.18));
}

body.single-product .tg-wc-shell .woocommerce-product-gallery.has-active-product-frames .tg-product-frame-canvas {
  pointer-events: auto;
  cursor: grab;
}

body.single-product .tg-wc-shell .woocommerce-product-gallery.has-active-product-frames.is-pointer-down .tg-product-frame-canvas,
body.single-product .tg-wc-shell .woocommerce-product-gallery.has-active-product-frames.is-dragging .tg-product-frame-canvas {
  cursor: grabbing;
}

body.single-product .tg-wc-shell .woocommerce-product-gallery__image img {
  width: 100%;
  height: 100%;
  max-height: none;
  padding: 0;
  object-fit: cover;
  transform: none;
  filter: drop-shadow(0 44px 64px rgba(7,17,31,.2));
  opacity: 1 !important;
}

body.single-product .tg-wc-shell .flex-control-nav.flex-control-thumbs {
  grid-column: 1;
  grid-row: 1;
  align-self: center;
  display: grid;
  gap: 10px;
  max-height: min(560px, 54svh);
  margin: 0;
  padding: 0;
  overflow-y: auto;
  list-style: none;
}

body.single-product .tg-wc-shell .flex-control-nav.flex-control-thumbs li {
  width: auto !important;
  float: none !important;
  margin: 0 !important;
}

body.single-product .tg-wc-shell .flex-control-nav.flex-control-thumbs img {
  width: 72px;
  height: 72px;
  padding: 7px;
  border-radius: 8px;
  object-fit: contain;
  cursor: pointer;
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(11,88,201,.12);
  opacity: .62;
  transition: opacity .18s ease, border-color .18s ease, box-shadow .18s ease;
}

body.single-product .tg-wc-shell .flex-control-nav.flex-control-thumbs img.flex-active,
body.single-product .tg-wc-shell .flex-control-nav.flex-control-thumbs img:hover {
  opacity: 1;
  border-color: rgba(11,88,201,.42);
  box-shadow: 0 12px 30px rgba(11,88,201,.16);
}

body.single-product .tg-wc-shell .onsale {
  top: clamp(20px, 2.6vw, 34px);
  left: clamp(20px, 2.6vw, 34px);
  min-height: 30px;
  padding: 0 11px;
  border-radius: 8px;
  color: var(--color-primary);
  background: rgba(234,241,255,.92);
  box-shadow: none;
  font-size: 11px;
  text-transform: uppercase;
}

body.single-product .tg-wc-shell .summary {
  align-self: stretch;
  display: grid;
  align-content: center;
  padding: clamp(18px, 3vw, 42px) clamp(10px, 2vw, 24px);
}

body.single-product .tg-wc-shell .summary::before {
  content: "NFC growth product";
  width: max-content;
  margin-bottom: 18px;
  padding: 7px 10px;
  border-radius: 8px;
  color: var(--color-primary);
  background: rgba(11,88,201,.09);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}

body.single-product .tg-wc-shell .product_title {
  max-width: 420px;
  margin-bottom: 14px;
  font-size: clamp(30px, 4.4vw, 56px);
  line-height: .96;
  text-transform: uppercase;
}

body.single-product .tg-wc-shell .price {
  margin-bottom: 18px;
  color: var(--ink-950);
  font-size: clamp(20px, 2.4vw, 30px);
}

body.single-product .tg-wc-shell .price ins {
  color: var(--ink-950);
}

body.single-product .tg-wc-shell .woocommerce-product-details__short-description {
  max-width: 430px;
  margin-bottom: 22px;
  color: var(--ink-700);
  font-size: 14px;
  line-height: 1.72;
  font-weight: 700;
}

body.single-product .tg-wc-shell form.cart {
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 10px;
  max-width: 430px;
  margin-bottom: 22px;
}

body.single-product .tg-wc-shell form.cart script,
body.single-product .tg-wc-shell form.cart input[type="hidden"] {
  display: none !important;
}

body.single-product .tg-wc-shell form.cart .quantity {
  flex: 0 0 88px;
  float: none !important;
  margin: 0 !important;
}

body.single-product .tg-wc-shell .quantity .qty,
body.single-product .tg-wc-shell .single_add_to_cart_button {
  width: 100%;
  height: 50px;
  min-height: 50px;
}

body.single-product .tg-wc-shell .single_add_to_cart_button {
  flex: 1 1 auto;
  border-radius: 0;
  background: var(--ink-950);
  box-shadow: none;
  font-size: 12px;
  letter-spacing: .04em;
  line-height: 1.1;
  text-transform: uppercase;
  white-space: nowrap;
}

body.single-product .tg-wc-shell .single_add_to_cart_button:hover {
  background: var(--color-primary);
}

body.single-product .tg-wc-shell .product_meta {
  max-width: 430px;
  gap: 8px;
}

body.single-product .tg-wc-shell .product_meta::before {
  content: "Best for";
  flex-basis: 100%;
  margin-bottom: 2px;
  color: var(--ink-950);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}

body.single-product .tg-wc-shell .product_meta > span {
  padding: 7px 9px;
  color: var(--ink-700);
  background: rgba(245,248,255,.9);
}

body.single-product .tg-wc-shell .woocommerce-tabs,
body.single-product .tg-wc-shell .related.products,
body.single-product .tg-wc-shell .upsells.products {
  grid-column: 1 / -1;
  position: relative;
  z-index: 2;
  margin-top: 22px;
  background: rgba(255,255,255,.86);
  border-color: rgba(11,88,201,.12);
}

body.single-product .tg-wc-shell .woocommerce-tabs {
  display: block;
  padding: 0;
  overflow: visible;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 20px 58px rgba(8,32,70,.08);
}

body.single-product .tg-wc-shell .woocommerce-tabs ul.tabs {
  display: flex !important;
  flex-wrap: nowrap;
  gap: 6px;
  margin: 0 !important;
  padding: 8px 10px 0 !important;
  list-style: none;
  background: rgba(234,241,255,.92);
  border-bottom: 1px solid rgba(11,88,201,.1);
  overflow-x: auto;
  border-radius: 8px 8px 0 0;
}

body.single-product .tg-wc-shell .woocommerce-tabs ul.tabs::before,
body.single-product .tg-wc-shell .woocommerce-tabs ul.tabs::after,
body.single-product .tg-wc-shell .woocommerce-tabs ul.tabs li::before,
body.single-product .tg-wc-shell .woocommerce-tabs ul.tabs li::after {
  display: none !important;
}

body.single-product .tg-wc-shell .woocommerce-tabs ul.tabs li {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  flex: 0 0 auto;
  line-height: 1 !important;
  box-shadow: none !important;
}

body.single-product .tg-wc-shell .woocommerce-tabs ul.tabs a {
  height: 42px !important;
  min-height: 42px !important;
  display: grid !important;
  place-items: center;
  min-width: 132px;
  padding: 0 18px !important;
  border-radius: 8px 8px 0 0 !important;
  color: var(--ink-700);
  background: rgba(205,217,236,.72);
  border: 1px solid rgba(11,88,201,.08) !important;
  border-bottom: 0 !important;
  font-family: var(--font-heading);
  font-size: 14px;
  font-weight: 900;
  text-transform: none;
  letter-spacing: 0;
  line-height: 1 !important;
  text-align: center;
  box-shadow: inset 1px 0 0 rgba(255,255,255,.42);
}

body.single-product .tg-wc-shell .woocommerce-tabs ul.tabs li.active a,
body.single-product .tg-wc-shell .woocommerce-tabs ul.tabs a:hover {
  color: var(--color-primary);
  background: #fff;
  border-color: rgba(255,255,255,.92) !important;
  box-shadow: 0 -8px 24px rgba(8,32,70,.06);
  transform: translateY(1px);
}

body.single-product .tg-wc-shell .woocommerce-Tabs-panel {
  margin: 0 !important;
  padding: clamp(24px, 4vw, 42px) !important;
  border-radius: 0 0 8px 8px;
  color: var(--ink-950);
  background: rgba(255,255,255,.96);
  border: 0;
  box-shadow: none;
}

body.single-product .tg-wc-shell .woocommerce-Tabs-panel h2,
body.single-product .tg-wc-shell .woocommerce-Reviews-title {
  margin: 0 0 18px;
  font-size: clamp(24px, 3vw, 34px);
  line-height: 1.08;
}

body.single-product .tg-wc-shell .woocommerce-Tabs-panel--description p {
  max-width: 820px;
  margin: 0;
  padding: 0;
  border-radius: 0;
  color: var(--ink-700);
  background: transparent;
  border: 0;
  font-size: 16px;
  line-height: 1.75;
}

body.single-product .tg-wc-shell #reviews {
  display: grid;
  grid-template-columns: minmax(0, .72fr) minmax(280px, .9fr);
  gap: 22px;
}

body.single-product .tg-wc-shell #reviews #comments,
body.single-product .tg-wc-shell #reviews #review_form_wrapper {
  min-width: 0;
}

body.single-product .tg-wc-shell #review_form,
body.single-product .tg-wc-shell .comment-respond {
  padding: 18px;
  border-radius: 8px;
  background: rgba(245,248,255,.96);
  border: 1px solid rgba(11,88,201,.08);
}

body.single-product .tg-wc-shell .comment-reply-title {
  display: block;
  margin-bottom: 14px;
  color: var(--ink-950);
  font-family: var(--font-heading);
  font-size: 18px;
  font-weight: 900;
}

body.single-product .tg-wc-shell .comment-form {
  display: grid;
  gap: 12px;
}

body.single-product .tg-wc-shell .comment-form p {
  margin: 0;
}

body.single-product .tg-wc-shell .comment-form input,
body.single-product .tg-wc-shell .comment-form textarea,
body.single-product .tg-wc-shell .comment-form select {
  width: 100%;
  border: 1px solid rgba(11,88,201,.16);
  border-radius: 8px;
  padding: 11px 12px;
  color: var(--ink-950);
  background: #fff;
}

body.single-product .tg-wc-shell .comment-form-rating,
body.single-product .tg-wc-shell .comment-form-author,
body.single-product .tg-wc-shell .comment-form-email,
body.single-product .tg-wc-shell .comment-form-comment {
  display: grid;
  gap: 6px;
}

body.single-product .tg-wc-shell .comment-form label {
  color: var(--ink-700);
  font-size: 12px;
  font-weight: 900;
}

body.single-product .tg-wc-shell .comment-form .form-submit .submit {
  min-height: 44px;
  border: 0;
  border-radius: 8px;
  padding: 0 18px;
  color: #fff;
  background: var(--color-primary);
  font-family: var(--font-heading);
  font-weight: 900;
  cursor: pointer;
}

.tg-page-hero {
  padding: 142px 0 54px;
  background: linear-gradient(135deg, rgba(11,88,201,.1), rgba(0,179,219,.08));
}

main[data-view="cart"] > .tg-page-hero,
main[data-view="checkout"] > .tg-page-hero {
  display: none;
}

.tg-not-found {
  min-height: 100vh;
  padding: 126px 0 56px;
  background:
    radial-gradient(circle at 16% 10%, rgba(13, 112, 255, .2), transparent 30%),
    radial-gradient(circle at 86% 18%, rgba(0, 179, 219, .16), transparent 32%),
    linear-gradient(180deg, #eef7ff 0%, #f7fbff 46%, #fff 100%);
}

.tg-not-found__shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 380px);
  gap: clamp(18px, 4vw, 52px);
  align-items: stretch;
  padding: clamp(24px, 4vw, 44px);
  border: 1px solid rgba(9, 93, 216, .14);
  border-radius: 24px;
  background: rgba(255,255,255,.88);
  box-shadow: 0 24px 70px rgba(23, 52, 91, .12);
  overflow: hidden;
}

.tg-not-found__content {
  display: grid;
  align-content: center;
  justify-items: start;
}

.tg-not-found h1 {
  max-width: 720px;
  margin: 0;
  color: var(--ink-950);
  font-family: var(--font-heading);
  font-size: clamp(34px, 5vw, 68px);
  line-height: 1.02;
}

.tg-not-found .tg-lede {
  max-width: 690px;
  color: var(--text-700);
  font-weight: 700;
  line-height: 1.7;
}

.tg-not-found__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.tg-not-found__status {
  position: relative;
  display: grid;
  align-content: end;
  gap: 12px;
  min-height: 340px;
  padding: 24px;
  border-radius: 20px;
  color: #fff;
  background:
    linear-gradient(135deg, rgba(32, 151, 255, .92), rgba(6, 72, 188, .98)),
    var(--color-primary);
  box-shadow: 0 26px 56px rgba(8, 67, 151, .28);
  overflow: hidden;
}

.tg-not-found__status::before {
  content: "";
  position: absolute;
  inset: -22% -28% auto auto;
  width: 260px;
  aspect-ratio: 1;
  border: 34px solid rgba(255,255,255,.14);
  border-radius: 999px;
}

.tg-not-found__code {
  position: relative;
  z-index: 1;
  color: rgba(255,255,255,.18);
  font-family: var(--font-heading);
  font-size: clamp(92px, 13vw, 168px);
  font-weight: 900;
  line-height: .78;
}

.tg-not-found__status strong,
.tg-not-found__status p {
  position: relative;
  z-index: 1;
  color: #fff !important;
}

.tg-not-found__status strong {
  font-size: 22px;
}

.tg-not-found__status p {
  margin: 0;
  color: rgba(255,255,255,.84) !important;
  font-weight: 700;
  line-height: 1.6;
}

.tg-not-found__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-top: 18px;
}

.tg-not-found__card {
  display: grid;
  gap: 10px;
  min-height: 150px;
  padding: 20px;
  border: 1px solid rgba(9, 93, 216, .14);
  border-radius: 18px;
  color: var(--text-700);
  text-decoration: none;
  background: rgba(255,255,255,.9);
  box-shadow: 0 16px 42px rgba(23, 52, 91, .08);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.tg-not-found__card:hover {
  transform: translateY(-2px);
  border-color: rgba(9, 93, 216, .34);
  box-shadow: 0 22px 52px rgba(23, 52, 91, .14);
}

.tg-not-found__card span {
  color: var(--ink-950);
  font-family: var(--font-heading);
  font-weight: 900;
}

.tg-not-found__card p {
  margin: 0;
  color: var(--text-700);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.55;
}

.tg-legal .tg-container {
  display: grid;
  gap: 18px;
  max-width: min(1180px, calc(100vw - 32px));
}

.tg-legal__layout {
  display: grid;
  grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

.tg-legal__sidebar {
  position: sticky;
  top: 112px;
  display: grid;
  gap: 14px;
  padding: 18px;
}

.tg-legal__sidebar .tg-eyebrow {
  margin: 0;
}

.tg-legal__nav {
  display: grid;
  gap: 6px;
}

.tg-legal__nav a {
  display: block;
  padding: 10px 12px;
  border-radius: 8px;
  color: var(--ink-700);
  background: rgba(13, 101, 213, 0.06);
  border: 1px solid rgba(13, 101, 213, 0.08);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.25;
}

.tg-legal__nav a:hover,
.tg-legal__nav a:focus-visible {
  color: #fff;
  background: var(--color-primary);
  border-color: var(--color-primary);
  outline: none;
}

.tg-legal__content {
  display: grid;
  gap: 18px;
}

.tg-legal__intro {
  background: linear-gradient(135deg, rgba(13, 101, 213, 0.12), rgba(255, 255, 255, 0.96));
  border-color: rgba(13, 101, 213, 0.18);
}

.tg-legal__intro p:last-child {
  margin: 0;
  color: var(--text-700);
}

.tg-legal__section {
  display: grid;
  gap: 10px;
  padding: clamp(22px, 3vw, 34px);
  scroll-margin-top: 112px;
}

.tg-legal__section h2 {
  margin: 0;
  color: var(--ink-950) !important;
  font-size: clamp(22px, 2.4vw, 32px);
}

.tg-legal__section p {
  margin: 0;
  color: var(--text-700) !important;
  line-height: 1.75;
}

.tg-dashboard {
  padding: 118px 0 44px;
  min-height: 100vh;
  background:
    radial-gradient(circle at 18% 0%, rgba(13, 112, 255, .18), transparent 34%),
    linear-gradient(180deg, #eef7ff 0%, #f7fbff 42%, #ffffff 100%);
}
.tg-dashboard__shell {
  display: grid;
  grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
  gap: clamp(16px, 2vw, 26px);
  align-items: start;
}
.tg-dashboard__sidebar {
  position: sticky;
  top: 100px;
  display: grid;
  gap: 20px;
  padding: 22px;
  border-radius: 24px;
  background: linear-gradient(180deg, #2097ff 0%, #095dd8 54%, #0648bc 100%);
  box-shadow: 0 22px 48px rgba(8, 67, 151, .28);
  color: #fff;
}
.tg-dashboard__sidebar h2 {
  margin: 0;
  color: #fff !important;
  font-size: clamp(22px, 2.2vw, 30px);
  line-height: 1;
}
.tg-dashboard__sidebar .tg-eyebrow {
  width: fit-content;
  color: #0060d8 !important;
  background: rgba(255,255,255,.92);
}
.tg-dashboard__nav {
  display: grid;
  gap: 8px;
}
.tg-dashboard__nav a {
  display: flex;
  align-items: center;
  min-height: 46px;
  padding: 10px 13px;
  border-radius: 14px;
  color: rgba(255,255,255,.86);
  font-weight: 900;
  text-decoration: none;
}
.tg-dashboard__nav a:hover,
.tg-dashboard__nav a.is-active {
  color: var(--ink-950);
  background: #fff;
  box-shadow: 18px 18px 42px rgba(4, 35, 83, .24);
}
.tg-dashboard__mobile-header {
  display: none;
}
.tg-sidebar-overlay {
  display: none;
}
.tg-sidebar-close {
  display: none;
}
.tg-dashboard__support {
  display: grid;
  gap: 7px;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 16px;
  background: rgba(255,255,255,.12);
}
.tg-dashboard__support strong,
.tg-dashboard__support span {
  color: #fff !important;
}
.tg-dashboard__support span {
  font-size: 13px;
  line-height: 1.5;
  opacity: .86;
}
.tg-dashboard__support a {
  color: #fff;
  font-weight: 900;
}
.tg-dashboard__content {
  min-width: 0;
}
.tg-dashboard__stack {
  display: grid;
  gap: 18px;
}
.tg-dashboard__hero,
.tg-dashboard__headerline,
.tg-dashboard__panel,
.tg-dashboard__business-card,
.tg-dashboard__assign,
.tg-dashboard__filters,
.tg-dashboard__card-row,
.tg-dashboard__empty,
.tg-dashboard__preview-wrap,
.tg-dashboard__media-panel {
  border: 1px solid rgba(9, 93, 216, .14);
  border-radius: 22px;
  background: rgba(255,255,255,.86);
  box-shadow: 0 20px 54px rgba(23, 52, 91, .1);
}
.tg-dashboard__hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 22px;
  align-items: start;
  padding: clamp(24px, 3.2vw, 38px);
  overflow: hidden;
}
.tg-dashboard__hero-copy {
  max-width: 760px;
}
.tg-dashboard__hero h1,
.tg-dashboard__headerline h1 {
  margin: 0;
  max-width: 840px;
  color: var(--ink-950) !important;
  line-height: .98;
}
.tg-dashboard__hero h1 {
  max-width: 720px;
  font-size: clamp(32px, 3.4vw, 46px);
  line-height: 1.04;
}
.tg-dashboard__headerline h1 {
  font-size: clamp(34px, 4.4vw, 58px);
}
.tg-dashboard__hero p:not(.tg-eyebrow),
.tg-dashboard__headerline p:not(.tg-eyebrow) {
  max-width: 760px;
  margin: 14px 0 0;
  color: var(--text-700) !important;
  font-weight: 700;
  line-height: 1.65;
}
.tg-dashboard__quick-actions,
.tg-dashboard__actions,
.tg-dashboard__card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}
.tg-dashboard__hero .tg-dashboard__quick-actions {
  justify-content: flex-start;
  padding-top: 2px;
}
.tg-dashboard__metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.tg-dashboard__metric {
  display: grid;
  gap: 6px;
  padding: 18px;
  border: 1px solid rgba(9, 93, 216, .14);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 34px rgba(23, 52, 91, .08);
}
.tg-dashboard__metric strong {
  color: var(--color-primary) !important;
  font-size: clamp(30px, 3.2vw, 46px);
  line-height: 1;
}
.tg-dashboard__metric span {
  color: var(--text-700) !important;
  font-weight: 900;
}
.tg-dashboard__grid {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: 18px;
}
.tg-dashboard__panel {
  display: grid;
  gap: 18px;
  padding: clamp(20px, 3vw, 32px);
}
.tg-dashboard__panel h2,
.tg-dashboard__empty h3 {
  margin: 0;
  color: var(--ink-950) !important;
  font-size: clamp(24px, 2.6vw, 36px);
}
.tg-dashboard__panel-head {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
}
.tg-dashboard__steps,
.tg-dashboard__activity,
.tg-dashboard__detail-list {
  display: grid;
  gap: 10px;
}

.tg-dashboard__menu-insights {
  overflow: hidden;
}

.tg-dashboard__panel-head p {
  margin: 6px 0 0;
  color: var(--ink-700);
  font-size: 14px;
  font-weight: 750;
  line-height: 1.55;
}

.tg-dashboard__menu-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.tg-dashboard__menu-metrics article,
.tg-dashboard__menu-empty {
  min-height: 92px;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(11, 88, 201, 0.1), rgba(255, 255, 255, 0.9));
  border: 1px solid rgba(11, 88, 201, 0.14);
  padding: 14px;
}

.tg-dashboard__menu-metrics article {
  display: grid;
  align-content: center;
  gap: 4px;
}

.tg-dashboard__menu-metrics strong {
  color: var(--primary);
  font-size: clamp(24px, 2.5vw, 36px);
  line-height: 1;
  font-weight: 950;
}

.tg-dashboard__menu-metrics span,
.tg-dashboard__menu-empty span {
  color: var(--ink-700);
  font-size: 13px;
  font-weight: 850;
}

.tg-dashboard__menu-empty {
  display: grid;
  gap: 5px;
  align-content: center;
}

.tg-dashboard__menu-empty strong {
  color: var(--ink-950);
  font-size: 16px;
  font-weight: 950;
}

.tg-dashboard__step,
.tg-dashboard__activity a,
.tg-dashboard__activity > div,
.tg-dashboard__detail-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 13px 14px;
  border-radius: 14px;
  background: #f1f6ff;
  color: var(--ink-950);
  text-decoration: none;
}
.tg-dashboard__step {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  justify-content: stretch;
}
.tg-dashboard__step span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  color: #fff;
  background: #9fb4d5;
  font-weight: 900;
}
.tg-dashboard__step.is-done span {
  background: var(--color-primary);
}
.tg-dashboard__step strong {
  align-self: center;
  justify-self: start;
  min-width: 0;
  text-align: start;
  line-height: 1.45;
}
.tg-dashboard__activity a strong,
.tg-dashboard__activity > div strong,
.tg-dashboard__detail-item strong,
.tg-dashboard__step strong {
  color: var(--ink-950) !important;
}
.tg-dashboard__activity a span,
.tg-dashboard__activity > div span,
.tg-dashboard__detail-item span {
  color: var(--text-700) !important;
  font-size: 13px;
  font-weight: 800;
}
.tg-dashboard__headerline {
  padding: clamp(22px, 3vw, 34px);
}
.tg-dashboard__business-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.tg-dashboard__business-card {
  display: flex;
  gap: 14px;
  align-items: center;
  justify-content: space-between;
  padding: 18px;
}
.tg-dashboard__business-card.is-selected {
  border-color: rgba(11, 88, 201, .42);
  box-shadow: 0 18px 44px rgba(11, 88, 201, .16);
}
.tg-dashboard__business-card strong {
  display: block;
  color: var(--ink-950) !important;
  font-size: 18px;
}
.tg-dashboard__business-card span {
  display: block;
  margin-top: 5px;
  color: var(--text-700) !important;
  font-weight: 800;
}
.tg-dashboard__card-actions button,
.tg-dashboard__card-actions a,
.tg-dashboard__redirect-picker button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 8px 12px;
  border: 1px solid rgba(9, 93, 216, .16);
  border-radius: 999px;
  color: var(--color-primary);
  background: #edf5ff;
  font-weight: 900;
  text-decoration: none;
  cursor: pointer;
}
.tg-dashboard__card-actions button:hover,
.tg-dashboard__card-actions a:hover,
.tg-dashboard__redirect-picker button:hover,
.tg-dashboard__redirect-picker button.is-selected {
  color: #fff;
  background: var(--color-primary);
}
.tg-dashboard__editor {
  align-items: stretch;
}
.tg-dashboard__form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.tg-dashboard__media-panel {
  display: grid;
  gap: 14px;
  padding: 16px;
  background: linear-gradient(135deg, rgba(237, 245, 255, .96), rgba(255, 255, 255, .9));
}
.tg-dashboard__media-panel strong {
  color: var(--ink-950) !important;
}
.tg-dashboard__media-panel p {
  margin: 5px 0 0;
  color: var(--text-700) !important;
  font-weight: 750;
}
.tg-dashboard__media-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.tg-dashboard__media-upload {
  display: grid;
  gap: 9px;
  align-content: start;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 164px;
  padding: 16px;
  border: 2px dashed rgba(9, 93, 216, .22);
  border-radius: 16px;
  color: var(--ink-950);
  background: #f8fafc;
  cursor: pointer;
  overflow: hidden;
  transition: border-color .18s, background .18s, box-shadow .18s;
}
.tg-dashboard__media-upload:hover {
  border-color: var(--color-primary);
  background: #f0f7ff;
}
.tg-dashboard__media-upload.is-uploading {
  border-style: solid;
  border-color: var(--color-primary);
  background: #edf5ff;
  box-shadow: 0 4px 16px rgba(9, 93, 216, .12);
}
.tg-dashboard__media-upload img {
  width: 100%;
  max-height: 100px;
  object-fit: cover;
  border-radius: 12px;
  border: 1px solid rgba(9, 93, 216, .16);
}
.tg-media-preview-box {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.tg-media-remove-btn {
  position: absolute;
  top: 4px;
  right: 4px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: 2px solid #ffffff;
  background: rgba(190, 18, 60, .92);
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 4px 12px rgba(0, 0, 0, .3);
  transition: transform .15s, background .15s;
  z-index: 10;
}
.tg-media-remove-btn:hover {
  transform: scale(1.15);
  background: #be123c;
}
.tg-media-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 64px;
  border-radius: 12px;
  color: var(--color-primary);
  background: #e0edff;
  font-weight: 800;
  font-size: 13px;
}
.tg-upload-progress {
  position: relative;
  width: 100%;
  height: 20px;
  border-radius: 999px;
  background: rgba(9, 93, 216, .14);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.tg-upload-progress__bar {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  background: linear-gradient(90deg, var(--color-primary), #00c6ff);
  border-radius: 999px;
  transition: width .15s ease-out;
}
.tg-upload-progress__text {
  position: relative;
  z-index: 2;
  color: #ffffff;
  font-size: 11px;
  font-weight: 900;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .4);
}
.tg-upload-hint {
  font-size: 12px;
  font-weight: 800;
  color: var(--color-primary);
}
.tg-upload-error {
  color: #be123c;
  font-size: 11px;
  font-weight: 800;
}
.tg-dashboard__media-upload input {
  display: none;
}
.tg-dashboard__files {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.tg-dashboard__files a {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 7px 10px;
  border-radius: 999px;
  color: var(--color-primary);
  background: #fff;
  font-weight: 900;
  text-decoration: none;
}
.tg-dashboard__field {
  display: grid;
  gap: 8px;
}
.tg-dashboard__field--wide {
  grid-column: 1 / -1;
}
.tg-dashboard__field span,
.tg-dashboard__assign span {
  color: var(--ink-950) !important;
  font-weight: 900;
  font-size: 13px;
}
.tg-dashboard__field input,
.tg-dashboard__field textarea,
.tg-dashboard__field select,
.tg-dashboard__assign input,
.tg-dashboard__assign select,
.tg-dashboard__filters input,
.tg-dashboard__filters select {
  width: 100%;
  border: 1px solid rgba(9, 93, 216, .18);
  border-radius: 14px;
  padding: 13px 14px;
  color: var(--ink-950);
  background: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.65);
  font: inherit;
  font-weight: 800;
}
.tg-dashboard__field textarea {
  resize: vertical;
}
.tg-dashboard__redirect-picker {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  padding: 14px;
  border-radius: 16px;
  background: #eef5ff;
}
.tg-dashboard__redirect-picker strong {
  width: 100%;
  color: var(--ink-950) !important;
}
.tg-dashboard__redirect-picker p {
  width: 100%;
  margin: 0;
  color: var(--text-700) !important;
  font-weight: 750;
}
.tg-dashboard__redirect-picker label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 11px;
  border-radius: 999px;
  color: var(--color-primary);
  background: #fff;
  font-weight: 900;
  cursor: pointer;
}
.tg-dashboard__redirect-picker label.is-selected {
  color: #fff;
  background: var(--color-primary);
}
.tg-dashboard__redirect-picker input {
  accent-color: var(--color-primary);
}
.tg-dashboard__preview-wrap {
  padding: 20px;
  background:
    radial-gradient(circle at 50% 0%, rgba(13,112,255,.22), transparent 44%),
    linear-gradient(135deg, #071526, #0c2950);
}
.tg-dashboard__phone {
  width: min(100%, 360px);
  min-height: 620px;
  margin: 0 auto;
  padding: 22px;
  border: 10px solid #08111f;
  border-radius: 38px;
  background: #fff;
  box-shadow: 0 30px 70px rgba(0,0,0,.28);
  overflow: hidden;
}
.tg-dashboard__phone-cover {
  height: 128px;
  margin: -22px -22px 20px;
  background: linear-gradient(135deg, #0b58c9, #75d7ff);
  background-position: center;
  background-size: cover;
}
.tg-dashboard__phone img {
  width: 126px;
  height: auto;
}
.tg-dashboard__phone h3 {
  margin: 16px 0 8px;
  color: var(--ink-950) !important;
}
.tg-dashboard__phone p {
  margin: 0;
  color: var(--text-700) !important;
  font-weight: 750;
  line-height: 1.6;
}
.tg-dashboard__phone-actions {
  display: grid;
  gap: 10px;
  margin-top: 18px;
}
.tg-dashboard__phone-actions a,
.tg-dashboard__phone-actions span {
  padding: 13px;
  border-radius: 14px;
  color: #fff;
  background: var(--color-primary);
  text-align: center;
  font-weight: 900;
  text-decoration: none;
}
.tg-dashboard__assign {
  display: grid;
  grid-template-columns: minmax(160px, 1fr) minmax(160px, 1fr) minmax(140px, .8fr) auto;
  gap: 12px;
  align-items: end;
  padding: 16px;
}
.tg-dashboard__assign label {
  display: grid;
  gap: 8px;
}
.tg-dashboard__filters {
  display: flex;
  gap: 12px;
  padding: 14px;
  align-items: center;
}
.tg-dashboard__filter-search {
  position: relative;
  display: flex;
  align-items: center;
  flex: 999 1 520px;
  min-width: min(100%, 360px);
}
.tg-dashboard__filters select {
  flex: 0 1 210px;
  min-width: 170px;
}
.tg-dashboard__filter-search svg {
  position: absolute;
  left: 14px;
  color: var(--color-primary);
  pointer-events: none;
}
.tg-dashboard__filter-search input {
  padding-left: 44px;
}
html[dir="rtl"] .tg-dashboard__filter-search svg {
  left: auto;
  right: 14px;
}
html[dir="rtl"] .tg-dashboard__filter-search input {
  padding-left: 14px;
  padding-right: 44px;
}
.tg-dashboard__cards-table {
  display: grid;
  gap: 10px;
}
.tg-dashboard__card-row {
  display: grid;
  grid-template-columns: 120px minmax(180px, 1fr) minmax(110px, .55fr) minmax(90px, .45fr) auto;
  gap: 14px;
  align-items: center;
  padding: 14px;
}
.tg-dashboard__card-row strong {
  color: var(--ink-950) !important;
}
.tg-dashboard__card-row span {
  color: var(--text-700) !important;
  font-weight: 800;
}
.tg-dashboard__qr-mini {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  text-align: center;
  min-width: 80px;
}
.tg-dashboard__qr-mini img {
  width: 58px;
  height: 58px;
  border-radius: 10px;
  background: #ffffff;
  border: 1px solid rgba(9, 93, 216, .18);
  padding: 3px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, .06);
  object-fit: contain;
}
.tg-card-name-underneath {
  font-size: 12px;
  font-weight: 900;
  color: var(--ink-950) !important;
  word-break: break-word;
  line-height: 1.2;
}
.tg-card-code-sub {
  font-size: 10px;
  font-weight: 750;
  color: var(--text-700);
}
.tg-card-biz-label {
  display: block;
  font-size: 11px;
  font-weight: 800;
  color: var(--text-700);
  margin-bottom: 2px;
}
.tg-dashboard__status {
  width: fit-content;
  padding: 7px 10px;
  border-radius: 999px;
  color: #074bb1 !important;
  background: #dcecff;
  font-size: 12px;
  text-transform: capitalize;
}
.tg-dashboard__status--active {
  color: #04724d !important;
  background: #dffbea;
}
.tg-dashboard__status--disabled,
.tg-dashboard__status--lost,
.tg-dashboard__status--replaced {
  color: #9f1239 !important;
  background: #ffe4e6;
}
.tg-dashboard__card-detail {
  margin-top: 4px;
}
.tg-dashboard__detail-grid {
  display: grid;
  grid-template-columns: minmax(260px, .72fr) minmax(0, 1fr);
  gap: 18px;
}
.tg-dashboard__qr-card {
  padding: 18px;
  border-radius: 20px;
  background: #f6faff;
  text-align: center;
}
.tg-dashboard__qr-card > strong {
  color: var(--ink-950) !important;
  font-size: 20px;
}
.tg-dashboard__qr-card > span {
  max-width: 100%;
  color: var(--text-700) !important;
  font-size: 12px;
  font-weight: 800;
  overflow-wrap: anywhere;
}
.tg-dashboard__qr-art {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 4px;
  width: 184px;
  height: 184px;
  padding: 14px;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(23, 52, 91, .12);
}
.tg-dashboard__qr-art span {
  border-radius: 3px;
  background: #e8eff9;
}
.tg-dashboard__qr-art span.is-dark {
  background: #071526;
}
.tg-dashboard__redirect-picker--compact {
  align-items: flex-start;
}
/* ---- Modal Scroll Lock ---- */
body.tg-modal-open,
html.tg-modal-open {
  overflow: hidden !important;
  height: 100vh !important;
  touch-action: none !important;
  overscroll-behavior: none !important;
}

/* ---- Card detail modal ---- */
.tg-modal-overlay {
  position: fixed;
  inset: 0;
  z-index: 9990;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(7, 17, 31, .62);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  animation: tg-modal-in .22s ease-out;
}
@keyframes tg-modal-in {
  from { opacity: 0; }
  to   { opacity: 1; }
}
.tg-modal-panel {
  position: relative;
  display: flex;
  flex-direction: column;
  width: min(780px, 100%);
  max-height: calc(100vh - 48px);
  overflow: hidden !important;
  border: 1px solid rgba(9, 93, 216, .18);
  border-radius: 22px;
  background: #ffffff;
  box-shadow: 0 32px 80px rgba(7, 17, 31, .24);
  animation: tg-modal-slide .26s ease-out;
}
@keyframes tg-modal-slide {
  from { opacity: 0; transform: translateY(18px) scale(.97); }
  to   { opacity: 1; transform: translateY(0) scale(1); }
}
.tg-modal-panel__head {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 20px clamp(20px, 3vw, 32px) 16px;
  border-bottom: 1px solid rgba(9, 93, 216, .1);
  background: rgba(255, 255, 255, .96);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.tg-modal-panel__head > :first-child {
  flex: 1 1 auto;
  min-width: 0;
}
.tg-modal-panel__head h2 {
  margin: 0;
  color: var(--ink-950) !important;
  font-size: clamp(20px, 2.4vw, 30px);
}
.tg-modal-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  flex-shrink: 0;
  border: 1px solid rgba(9, 93, 216, .14);
  border-radius: 12px;
  color: var(--ink-950);
  background: #f1f6ff;
  font-size: 20px;
  font-weight: 900;
  cursor: pointer;
  transition: background .15s, color .15s;
}
.tg-modal-close:hover {
  color: #fff;
  background: var(--color-primary);
}
.tg-modal-panel__body {
  flex: 1;
  min-height: 0;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  display: grid;
  gap: 18px;
  padding: clamp(20px, 3vw, 32px);

  /* Modern Sleek Scrollbar */
  scrollbar-width: thin;
  scrollbar-color: rgba(9, 93, 216, 0.25) transparent;
}

.tg-modal-panel__body::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}

.tg-modal-panel__body::-webkit-scrollbar-track {
  background: transparent;
}

.tg-modal-panel__body::-webkit-scrollbar-thumb {
  background: rgba(9, 93, 216, 0.25);
  border-radius: 10px;
}

.tg-modal-panel__body::-webkit-scrollbar-thumb:hover {
  background: rgba(9, 93, 216, 0.5);
}

.tg-modal-panel__foot {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  padding: 16px clamp(20px, 3vw, 32px);
  border-top: 1px solid rgba(9, 93, 216, .1);
  background: rgba(255, 255, 255, .96);
}
.tg-business-modal-tabs {
  display: flex;
  gap: 8px;
  padding: 7px;
  margin: 0 0 18px;
  overflow-x: auto;
  border: 1px solid rgba(9, 93, 216, .12);
  border-radius: 18px;
  background: #eef5ff;
  scrollbar-width: thin;
  scrollbar-color: rgba(9, 93, 216, .28) transparent;
}
.tg-business-modal-tabs::-webkit-scrollbar {
  height: 4px;
}
.tg-business-modal-tabs::-webkit-scrollbar-thumb {
  background: rgba(9, 93, 216, .28);
  border-radius: 999px;
}
.tg-business-modal-tab {
  min-height: 42px;
  flex: 1 0 max-content;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid transparent;
  border-radius: 13px;
  padding: 9px 13px;
  color: var(--ink-700);
  background: transparent;
  font: inherit;
  font-size: 13px;
  font-weight: 900;
  cursor: pointer;
  white-space: nowrap;
  transition: background .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.tg-business-modal-tab:hover,
.tg-business-modal-tab:focus-visible {
  color: var(--color-primary);
  background: rgba(255, 255, 255, .72);
  border-color: rgba(9, 93, 216, .14);
  outline: none;
}
.tg-business-modal-tab.is-active {
  color: #fff;
  background: linear-gradient(135deg, var(--brand-blue-600), var(--brand-blue-800));
  border-color: rgba(255, 255, 255, .28);
  box-shadow: 0 10px 22px rgba(11, 88, 201, .22);
}
.tg-business-modal-tab__index {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 24px;
  border-radius: 9px;
  color: var(--color-primary);
  background: #fff;
  font-size: 11px;
  font-weight: 950;
}
.tg-business-modal-tab.is-active .tg-business-modal-tab__index {
  color: var(--brand-blue-700);
}
.tg-modal-editor-sections .tg-form-section {
  animation: tg-tab-panel-in .18s ease-out;
}
@keyframes tg-tab-panel-in {
  from { opacity: 0; transform: translateY(6px); }
  to { opacity: 1; transform: translateY(0); }
}
/* ---- Cards page top bar ---- */
.tg-dashboard__cards-topbar {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
}
/* ---- Pagination ---- */
.tg-pagination {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  justify-content: center;
  padding: 8px 0;
}
.tg-pagination button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  min-height: 38px;
  padding: 6px 12px;
  border: 1px solid rgba(9, 93, 216, .16);
  border-radius: 12px;
  color: var(--color-primary);
  background: #fff;
  font-weight: 900;
  font-size: 14px;
  cursor: pointer;
  transition: background .15s, color .15s;
}
.tg-pagination button:hover {
  color: #fff;
  background: var(--color-primary);
}
.tg-pagination button.is-active {
  color: #fff;
  background: var(--color-primary);
  box-shadow: 0 8px 20px rgba(11, 88, 201, .28);
}
.tg-pagination button:disabled {
  opacity: .45;
  cursor: default;
}
.tg-pagination__info {
  color: var(--ink-500);
  font-weight: 800;
  font-size: 13px;
  padding: 0 8px;
}
/* ---- Modal detail field with select ---- */
.tg-modal-detail-field {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 13px 14px;
  border-radius: 14px;
  background: #f1f6ff;
}
.tg-modal-detail-field span {
  color: var(--text-700) !important;
  font-size: 13px;
  font-weight: 800;
}
.tg-modal-detail-field strong {
  color: var(--ink-950) !important;
}
.tg-modal-detail-field select {
  min-width: 180px;
  border: 1px solid rgba(9, 93, 216, .18);
  border-radius: 10px;
  padding: 8px 10px;
  color: var(--ink-950);
  background: #fff;
  font: inherit;
  font-weight: 800;
  font-size: 13px;
}
/* ---- Business Username / Slug Field & Live Validation Badges ---- */
.tg-slug-input-wrap {
  display: flex;
  align-items: center;
  border: 1px solid rgba(9, 93, 216, .18);
  border-radius: 14px;
  background: #ffffff;
  overflow: hidden;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .65);
}
.tg-slug-prefix {
  padding: 12px 14px;
  background: #f1f6ff;
  color: var(--text-700);
  font-weight: 800;
  font-size: 13px;
  border-right: 1px solid rgba(9, 93, 216, .14);
  white-space: nowrap;
}
.tg-slug-input-wrap input {
  flex: 1;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 12px 14px !important;
  font: inherit !important;
  font-weight: 800 !important;
}
.tg-slug-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 800;
  width: fit-content;
}
.tg-slug-status.is-checking {
  color: #1d4ed8;
  background: #eff6ff;
}
.tg-slug-status.is-available {
  color: var(--tag-primary-text);
  background: var(--tag-primary-bg);
  border: 1px solid var(--tag-primary-border);
}
.tg-slug-status.is-taken {
  color: #be123c;
  background: #fff1f2;
  border: 1px solid rgba(190, 18, 60, .2);
}
.tg-slug-suggestions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 6px;
}
.tg-slug-suggestions-title {
  font-size: 12px;
  font-weight: 800;
  color: var(--text-700);
}
.tg-slug-suggestion-pill {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 5px 12px;
  border-radius: 999px;
  border: 1px solid var(--color-primary);
  background: #f0f7ff;
  color: var(--color-primary);
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
  transition: background .15s ease, color .15s ease, transform .15s ease;
}
.tg-slug-suggestion-pill:hover {
  background: var(--color-primary);
  color: #ffffff;
  transform: translateY(-1px);
}

/* ---- Modal Form Section Containers ---- */
.tg-modal-editor-sections {
  display: grid;
  gap: 20px;
}
.tg-form-section {
  display: grid;
  gap: 14px;
  padding: 20px;
  border-radius: 18px;
  background: #ffffff;
  border: 1px solid rgba(9, 93, 216, .12);
  box-shadow: 0 4px 16px rgba(9, 93, 216, .04);
}
.tg-form-section__head {
  display: grid;
  gap: 3px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(9, 93, 216, .08);
}
.tg-form-section__head--with-action {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
}
.tg-form-section__head h3 {
  margin: 0;
  color: var(--ink-950) !important;
  font-size: 16px;
  font-weight: 800;
}
.tg-form-section__head p {
  margin: 0;
  color: var(--text-700) !important;
  font-size: 13px;
  font-weight: 700;
}
.tg-menu-switch {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 42px;
  padding: 7px 12px 7px 8px;
  border: 1px solid rgba(9, 93, 216, .16);
  border-radius: 999px;
  background: #f6f9ff;
  color: var(--ink-950);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .82);
  cursor: pointer;
}
.tg-menu-switch input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.tg-menu-switch > span {
  position: relative;
  width: 46px;
  height: 28px;
  border-radius: 999px;
  background: #d7e4f6;
  box-shadow: inset 0 0 0 1px rgba(9, 93, 216, .08);
  transition: background .18s ease;
}
.tg-menu-switch > span::after {
  content: "";
  position: absolute;
  top: 4px;
  left: 4px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 4px 12px rgba(7, 17, 31, .16);
  transition: transform .18s ease;
}
.tg-menu-switch input:checked + span {
  background: linear-gradient(135deg, var(--primary), var(--primary-dark));
}
.tg-menu-switch input:checked + span::after {
  transform: translateX(18px);
}
[dir="rtl"] .tg-menu-switch input:checked + span::after,
.rtl .tg-menu-switch input:checked + span::after {
  transform: translateX(-18px);
}
.tg-menu-switch strong {
  font-size: 12px;
  font-weight: 950;
  white-space: nowrap;
}
.tg-menu-switch:has(input:focus-visible) {
  outline: 3px solid rgba(9, 93, 216, .22);
  outline-offset: 2px;
}
.tg-menu-switch:has(input:disabled) {
  cursor: not-allowed;
  opacity: .6;
}

/* ---- Business Action Links Component ---- */
.tg-action-links-panel {
  display: grid;
  gap: 12px;
  padding: 16px;
  border-radius: 16px;
  background: #f6faff;
  border: 1px solid rgba(9, 93, 216, .14);
}
.tg-action-links-panel strong {
  color: var(--ink-950) !important;
  font-size: 14px;
}
.tg-action-link-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  width: 100%;
  padding: 10px;
  background: #fff;
  border: 1px solid rgba(9, 93, 216, .14);
  border-radius: 12px;
  box-sizing: border-box;
}
.tg-action-link-row select {
  min-width: 180px;
  flex: 1;
  border: 1px solid rgba(9, 93, 216, .18);
  border-radius: 12px;
  padding: 10px 12px;
  color: var(--ink-950);
  background: #fff;
  font: inherit;
  font-weight: 800;
  font-size: 13px;
}
.tg-action-link-row input[type="text"] {
  min-width: 150px;
  flex: 1;
  border: 1px solid rgba(9, 93, 216, .18);
  border-radius: 12px;
  padding: 10px 12px;
  color: var(--ink-950);
  background: #fff;
  font: inherit;
  font-weight: 800;
  font-size: 13px;
}
.tg-action-link-row input[type="url"] {
  min-width: 200px;
  flex: 2;
  border: 1px solid rgba(9, 93, 216, .18);
  border-radius: 12px;
  padding: 10px 12px;
  color: var(--ink-950);
  background: #fff;
  font: inherit;
  font-weight: 800;
  font-size: 13px;
}
.tg-quick-action-checkbox {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 12px;
  border-radius: 10px;
  background: #f1f5f9;
  border: 1px solid rgba(9, 93, 216, .14);
  font-size: 12px;
  font-weight: 800;
  color: var(--ink-950);
  cursor: pointer;
  user-select: none;
  white-space: nowrap;
  transition: background .15s, border-color .15s, opacity .15s;
}
.tg-quick-action-checkbox input[type="checkbox"] {
  width: 15px !important;
  height: 15px !important;
  accent-color: var(--color-primary);
  cursor: pointer;
  margin: 0 !important;
}
.tg-quick-action-checkbox.is-disabled {
  opacity: 0.45;
  cursor: not-allowed;
  background: #f8fafc;
}
.tg-quick-action-checkbox.is-disabled input {
  cursor: not-allowed;
}

/* ---- Social Media Links Component ---- */
.tg-social-links-panel {
  grid-column: 1 / -1;
  display: grid;
  gap: 12px;
  padding: 16px;
  border-radius: 16px;
  background: #f6faff;
  border: 1px solid rgba(9, 93, 216, .14);
}
.tg-social-links-panel strong {
  color: var(--ink-950) !important;
  font-size: 14px;
}
.tg-social-link-row {
  display: grid;
  grid-template-columns: minmax(140px, .45fr) minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 10px;
  background: #fff;
  border: 1px solid rgba(9, 93, 216, .14);
  border-radius: 12px;
  box-sizing: border-box;
}
.tg-social-link-row select,
.tg-social-link-row input {
  width: 100%;
  border: 1px solid rgba(9, 93, 216, .18);
  border-radius: 12px;
  padding: 10px 12px;
  color: var(--ink-950);
  background: #fff;
  font: inherit;
  font-weight: 800;
  font-size: 13px;
}
.tg-btn-remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border: 1px solid rgba(190, 18, 60, .18);
  border-radius: 10px;
  color: #be123c;
  background: #fff1f2;
  font-size: 18px;
  font-weight: 900;
  cursor: pointer;
  transition: background .15s, color .15s;
}
.tg-btn-remove:hover {
  color: #fff;
  background: #be123c;
}

/* ---- Enhanced Search Box ---- */
.tg-search-box {
  position: relative;
  display: flex;
  align-items: center;
  flex: 1;
  min-width: 240px;
}
.tg-search-box__icon {
  position: absolute;
  left: 14px;
  width: 18px;
  height: 18px;
  color: var(--color-primary);
  pointer-events: none;
}
.tg-search-box input {
  width: 100%;
  padding: 12px 40px 12px 42px !important;
  border: 1px solid rgba(9, 93, 216, .22) !important;
  border-radius: 14px !important;
  background: #fff !important;
  color: var(--ink-950) !important;
  font-weight: 800 !important;
  font-size: 14px !important;
  box-shadow: 0 4px 16px rgba(9, 93, 216, .06) !important;
  transition: border-color .15s, box-shadow .15s;
}
.tg-search-box input:focus {
  border-color: var(--color-primary) !important;
  box-shadow: 0 0 0 3px rgba(9, 93, 216, .16), 0 4px 20px rgba(9, 93, 216, .1) !important;
  outline: none;
}
.tg-search-box__clear {
  position: absolute;
  right: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border: none;
  border-radius: 50%;
  color: var(--text-700);
  background: #eef5ff;
  font-size: 16px;
  font-weight: 900;
  cursor: pointer;
  transition: background .15s, color .15s;
}
.tg-search-box__clear:hover {
  color: #fff;
  background: var(--color-primary);
}

/* ---- Per page dropdown selector ---- */
.tg-per-page-selector {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-left: auto;
}
.tg-per-page-selector span {
  color: var(--text-700) !important;
  font-weight: 800;
  font-size: 13px;
  white-space: nowrap;
}
.tg-per-page-selector select {
  min-width: 110px;
  border: 1px solid rgba(9, 93, 216, .2) !important;
  border-radius: 12px !important;
  padding: 10px 12px !important;
  color: var(--ink-950) !important;
  background: #fff !important;
  font-weight: 800 !important;
  font-size: 13px !important;
  box-shadow: 0 4px 12px rgba(9, 93, 216, .05) !important;
  cursor: pointer;
}

/* ---- 1-in-a-row Businesses List ---- */
.tg-dashboard__business-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}
.tg-dashboard__business-row {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 20px;
  border: 1px solid rgba(9, 93, 216, .14);
  border-radius: 18px;
  background: rgba(255, 255, 255, .95);
  box-shadow: 0 8px 24px rgba(23, 52, 91, .05);
  transition: transform .18s, box-shadow .18s, border-color .18s;
}
@media (max-width: 768px) {
  .tg-dashboard__business-row {
    flex-wrap: nowrap;
    overflow: visible !important;
  }
}
.tg-dashboard__business-row:hover {
  transform: translateY(-2px);
  border-color: rgba(9, 93, 216, .3);
  box-shadow: 0 14px 34px rgba(23, 52, 91, .1);
}
.tg-dashboard__business-row-info {
  display: flex;
  align-items: center;
  gap: 16px;
  flex: 1;
  min-width: 0;
}
.tg-dashboard__business-avatar {
  width: 50px;
  height: 50px;
  flex-shrink: 0;
  border-radius: 14px;
  background: linear-gradient(135deg, #edf5ff, #ddecff);
  border: 1px solid rgba(9, 93, 216, .18);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  color: var(--color-primary);
  font-size: 20px;
  overflow: hidden;
}
.tg-dashboard__business-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.tg-dashboard__business-details {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  flex: 1;
}
.tg-dashboard__business-details strong {
  display: block;
  color: var(--ink-950) !important;
  font-size: 15px;
  font-weight: 800;
  white-space: normal !important;
  word-break: break-word !important;
  overflow: visible !important;
  text-overflow: clip !important;
  line-height: 1.35;
}
.tg-card-title-inline,
.tg-card-title-edit {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.tg-card-title-inline strong {
  min-width: 0;
}
.tg-card-title-edit {
  max-width: min(100%, 460px);
}
.tg-card-title-edit input {
  min-width: 0;
  flex: 1;
  border: 1px solid rgba(9, 93, 216, .22);
  border-radius: 12px;
  padding: 9px 11px;
  color: var(--ink-950);
  background: #fff;
  font: inherit;
  font-size: 14px;
  font-weight: 850;
  box-shadow: 0 8px 22px rgba(23, 52, 91, .06);
}
.tg-card-title-edit input:focus {
  outline: 3px solid rgba(11, 88, 201, .16);
  border-color: rgba(11, 88, 201, .58);
}
.tg-icon-action {
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(9, 93, 216, .18);
  border-radius: 11px;
  color: var(--color-primary);
  background: #f3f7ff;
  cursor: pointer;
  transition: transform .18s ease, border-color .18s ease, background .18s ease, color .18s ease;
}
.tg-icon-action:hover,
.tg-icon-action:focus-visible {
  transform: translateY(-1px);
  border-color: rgba(11, 88, 201, .45);
  background: var(--color-primary);
  color: #fff;
  outline: none;
}
.tg-icon-action:disabled {
  cursor: wait;
  opacity: .62;
  transform: none;
}
.tg-icon-action--edit {
  opacity: .82;
}
.tg-icon-action--save {
  background: var(--color-primary);
  color: #fff;
  border-color: rgba(11, 88, 201, .42);
}
.tg-dashboard__business-badges {
  display: flex;
  flex-wrap: nowrap !important;
  gap: 6px;
  align-items: center;
  white-space: nowrap;
}
.tg-dashboard__badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 9px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 800;
  background: var(--tag-primary-bg);
  color: var(--tag-primary-text);
  border: 1px solid var(--tag-primary-border);
  white-space: nowrap;
  flex-shrink: 0;
}
.tg-dashboard__badge--direct {
  background: var(--tag-primary-bg);
  color: var(--tag-primary-text);
}
.tg-dashboard__badge--plan {
  background: linear-gradient(135deg, rgba(11, 88, 201, .16), rgba(11, 88, 201, .08));
  color: var(--tag-primary-text);
}
.tg-dashboard__badge--locked {
  background: #fff1f2;
  color: #be123c;
}
.tg-dashboard__badge--assigned,
.tg-dashboard__badge--active {
  background: var(--tag-primary-bg-strong);
  color: var(--tag-primary-text);
}
.tg-dashboard__badge--unassigned {
  background: rgba(11, 88, 201, .08);
  color: var(--tag-primary-text);
}
.tg-dashboard__card-avatar {
  background: #ffffff !important;
  padding: 4px;
}
.tg-dashboard__card-avatar img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 8px;
}

/* Uniform Business & Card Action Dropdown */
.tg-dashboard__business-row,
.tg-dashboard__card-row {
  position: relative;
  overflow: visible !important;
}
.tg-dashboard__business-row.is-dropdown-open,
.tg-dashboard__card-row.is-dropdown-open {
  z-index: 9999 !important;
  transform: none !important;
}
.tg-action-dropdown-wrap {
  position: relative;
  display: inline-block;
  margin-left: auto;
}
.tg-action-dropdown-wrap.is-open {
  z-index: 9999 !important;
}
.tg-action-desktop-buttons {
  display: flex;
  align-items: center;
  gap: 8px;
}
.tg-action-mobile-trigger-wrap {
  display: none;
  position: relative;
}
.tg-biz-action-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 14px !important;
  border: 1px solid rgba(9, 93, 216, .16) !important;
  border-radius: 12px !important;
  background: #f1f6ff !important;
  color: var(--color-primary) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  cursor: pointer;
  white-space: nowrap;
  transition: all .18s ease;
  line-height: 1.2 !important;
}
.tg-biz-action-btn:hover {
  background: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
  color: #ffffff !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(9, 93, 216, .24) !important;
}
.tg-biz-action-btn svg {
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-right: 5px;
  vertical-align: middle;
  flex-shrink: 0;
}
@media (max-width: 768px) {
  .tg-action-desktop-buttons {
    display: none !important;
  }
  .tg-action-mobile-trigger-wrap {
    display: block !important;
  }
  .tg-action-mobile-trigger {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    padding: 8px 14px !important;
    border-radius: 12px !important;
    background: #f1f6ff !important;
    border: 1px solid rgba(9, 93, 216, .16) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    color: var(--color-primary) !important;
    cursor: pointer !important;
  }
  .tg-action-dropdown-menu {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    z-index: 9999 !important;
    min-width: 160px;
    background: #ffffff;
    border: 1px solid rgba(9, 93, 216, .18);
    border-radius: 14px;
    box-shadow: 0 16px 48px rgba(7, 17, 31, .24);
    padding: 6px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    animation: tg-dropdown-in 0.18s ease-out;
  }
  @keyframes tg-dropdown-in {
    from { opacity: 0; transform: translateY(-6px) scale(0.96); }
    to { opacity: 1; transform: translateY(0) scale(1); }
  }
  .tg-action-dropdown-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 700;
    color: var(--ink-950);
    text-decoration: none;
    background: transparent;
    border: none;
    width: 100%;
    text-align: left;
    cursor: pointer;
    transition: background 0.15s ease;
  }
  .tg-action-dropdown-item:hover,
  .tg-action-dropdown-item:active {
    background: #f1f6ff;
    color: var(--color-primary);
  }
  .tg-action-dropdown-item svg {
    color: var(--color-primary);
    flex-shrink: 0;
  }
  .tg-dashboard__business-row,
  .tg-dashboard__card-row {
    flex-wrap: nowrap !important;
    align-items: center !important;
    padding: 12px 14px !important;
    gap: 12px !important;
  }
}

/* ---- Business Design Selector Modal ---- */
.tg-design-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 12px;
}
@media (max-width: 768px) {
  .tg-design-grid {
    grid-template-columns: 1fr;
  }
}
.tg-design-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 14px;
  border-radius: 18px;
  border: 2px solid rgba(9, 93, 216, .14);
  background: #fff;
  cursor: pointer;
  transition: transform .18s, border-color .18s, box-shadow .18s;
}
.tg-design-card:hover {
  transform: translateY(-3px);
  border-color: rgba(9, 93, 216, .35);
  box-shadow: 0 12px 32px rgba(9, 93, 216, .12);
}
.tg-design-card.is-selected {
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px rgba(9, 93, 216, .2), 0 14px 36px rgba(9, 93, 216, .16);
  background: #f6faff;
}
.tg-design-card.is-locked {
  cursor: not-allowed;
  opacity: .72;
  background: #f8fafc;
  border-color: rgba(148, 163, 184, .32);
}
.tg-design-card.is-locked:hover {
  transform: none;
  box-shadow: none;
}
.tg-design-card__preview {
  height: 120px;
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 12px;
  color: #fff;
  overflow: hidden;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.15);
}
.tg-design-card__preview span {
  font-size: 13px;
  font-weight: 800;
}
.tg-design-card__btn-preview {
  display: inline-block;
  padding: 6px 14px;
  border-radius: 8px;
  font-size: 11px;
  font-weight: 900;
}
.tg-design-card__info strong {
  display: block;
  color: var(--ink-950) !important;
  font-size: 15px;
}
.tg-design-card__info p {
  margin: 2px 0 0;
  color: var(--text-700) !important;
  font-size: 12px;
  font-weight: 750;
}

/* Theme 1: Classic Glass (Default) */
.tg-preview--classic_glass {
  background: linear-gradient(145deg, #06111f 0%, #0b1830 100%);
}
.tg-preview--classic_glass .tg-design-card__btn-preview {
  background: var(--color-primary);
  color: #fff;
}

/* Theme 2: Vibrant Sunset */
.tg-preview--vibrant_sunset {
  background: linear-gradient(135deg, #2d0b4e 0%, #6b1154 50%, #d946ef 100%);
}
.tg-preview--vibrant_sunset .tg-design-card__btn-preview {
  background: linear-gradient(135deg, #f43f5e, #fb923c);
  color: #fff;
}

/* Theme 3: Sleek Minimal Dark */
.tg-preview--sleek_minimal {
  background: #121316;
}
.tg-preview--sleek_minimal .tg-design-card__btn-preview {
  background: #ffffff;
  color: #121316;
}

/* Theme 4: Luxury Gold */
.tg-preview--luxury_gold {
  background: #0b0d11;
  border: 1px solid rgba(212, 175, 55, .3);
}
.tg-preview--luxury_gold .tg-design-card__btn-preview {
  background: linear-gradient(135deg, #d4af37, #aa820a);
  color: #0b0d11;
}

/* Theme 5: Cyber Neon */
.tg-preview--cyber_neon {
  background: #060913;
  box-shadow: inset 0 0 20px rgba(0, 243, 255, .2);
}
.tg-preview--cyber_neon .tg-design-card__btn-preview {
  background: linear-gradient(135deg, #00f3ff, #bf00ff);
  color: #060913;
}

/* Theme 6: Clean Light */
.tg-preview--clean_light {
  background: #f1f5f9;
  color: #0f172a !important;
}
.tg-preview--clean_light span {
  color: #0f172a !important;
}
.tg-preview--clean_light .tg-design-card__btn-preview {
  background: #0284c7;
  color: #fff;
}

/* ---- Public Profile Themes CSS ---- */
.tg-public-profile-app.tg-design--vibrant_sunset {
  background: linear-gradient(135deg, #2d0b4e 0%, #6b1154 50%, #d946ef 100%) !important;
}
.tg-public-profile-app.tg-design--vibrant_sunset .tg-public-profile__action--primary {
  background: linear-gradient(135deg, #f43f5e, #fb923c) !important;
}

.tg-public-profile-app.tg-design--sleek_minimal {
  background: #121316 !important;
}
.tg-public-profile-app.tg-design--sleek_minimal .tg-public-profile__card {
  background: #1c1e24 !important;
  border-color: rgba(255,255,255,.1) !important;
}
.tg-public-profile-app.tg-design--sleek_minimal .tg-public-profile__action--primary {
  background: #ffffff !important;
  color: #121316 !important;
}

.tg-public-profile-app.tg-design--luxury_gold {
  background: radial-gradient(circle at 50% 20%, rgba(212, 175, 55, 0.15), transparent 30rem), #0b0d11 !important;
}
.tg-public-profile-app.tg-design--luxury_gold .tg-public-profile__card {
  background: linear-gradient(145deg, rgba(20, 24, 33, 0.95), rgba(12, 15, 20, 0.98)) !important;
  border-color: rgba(212, 175, 55, 0.4) !important;
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.6), 0 0 40px rgba(212, 175, 55, 0.12) !important;
}
.tg-public-profile-app.tg-design--luxury_gold h1 {
  color: #e2c46c !important;
}
.tg-public-profile-app.tg-design--luxury_gold .tg-public-profile__action--primary {
  background: linear-gradient(135deg, #d4af37, #aa820a) !important;
  color: #0c0f14 !important;
}

.tg-public-profile-app.tg-design--cyber_neon {
  background: radial-gradient(circle at 50% 0%, rgba(0, 243, 255, 0.25), transparent 28rem), #060913 !important;
}
.tg-public-profile-app.tg-design--cyber_neon .tg-public-profile__card {
  background: rgba(10, 20, 40, 0.9) !important;
  border-color: rgba(0, 243, 255, 0.5) !important;
  box-shadow: 0 0 50px rgba(0, 243, 255, 0.2) !important;
}
.tg-public-profile-app.tg-design--cyber_neon h1 {
  text-shadow: 0 0 12px rgba(0, 243, 255, 0.5) !important;
}
.tg-public-profile-app.tg-design--cyber_neon .tg-public-profile__action--primary {
  background: linear-gradient(135deg, #00f3ff, #bf00ff) !important;
  color: #060913 !important;
  box-shadow: 0 0 20px rgba(0, 243, 255, 0.4) !important;
}

.tg-public-profile-app.tg-design--clean_light {
  background: #f1f5f9 !important;
}
.tg-public-profile-app.tg-design--clean_light .tg-public-profile__card {
  background: #ffffff !important;
  border-color: rgba(15, 23, 42, 0.12) !important;
  box-shadow: 0 20px 60px rgba(15, 23, 42, 0.08) !important;
}
.tg-public-profile-app.tg-design--clean_light h1 {
  color: #0f172a !important;
}
.tg-public-profile-app.tg-design--clean_light p {
  color: #475569 !important;
}
.tg-public-profile-app.tg-design--clean_light .tg-public-profile__action--primary {
  background: #0284c7 !important;
  color: #ffffff !important;
}
/* ---- Real Profile Previews in Design Modal ---- */
.tg-design-card__preview-wrapper {
  position: relative;
  width: 100%;
  height: 220px;
  border-radius: 14px;
  overflow: hidden;
  background: #06111f;
  box-shadow: inset 0 0 0 1px rgba(0,0,0,.15);
}
.tg-design-card__real-preview {
  position: absolute;
  top: 0;
  left: 50%;
  width: 380px;
  min-height: 440px !important;
  transform: translateX(-50%) scale(0.48);
  transform-origin: top center;
  pointer-events: none;
  user-select: none;
}
.tg-design-card__real-preview .tg-public-profile {
  min-height: auto !important;
  padding: 10px 8px !important;
}
.tg-design-card__real-preview .tg-pp__card,
.tg-design-card__real-preview .tg-public-profile__card {
  width: 100% !important;
  box-shadow: 0 16px 40px rgba(0,0,0,.35) !important;
}

/* Brand color propagation overrides for Public Profile */
.tg-public-profile-app[style*="--brand-color"] .tg-pp__action--primary,
.tg-public-profile-app[style*="--brand-color"] .tg-public-profile__action--primary {
  background: var(--brand-color) !important;
  color: #ffffff !important;
  border-color: transparent !important;
}
.tg-public-profile-app[style*="--brand-color"] .tg-pp__social-icon:hover,
.tg-public-profile-app[style*="--brand-color"] .tg-public-profile__social-icon:hover {
  background: var(--brand-color) !important;
  color: #ffffff !important;
  border-color: transparent !important;
}
.tg-public-profile-app[style*="--brand-color"] .tg-pp__avatar--fallback,
.tg-public-profile-app[style*="--brand-color"] .tg-public-profile__avatar--fallback {
  background: var(--brand-color) !important;
}

.tg-dashboard__empty {
  display: grid;
  gap: 10px;
  padding: clamp(24px, 4vw, 44px);
  text-align: center;
}
.tg-dashboard__empty p:not(.tg-eyebrow) {
  max-width: 620px;
  margin: 0 auto;
  color: var(--text-700) !important;
  font-weight: 750;
  line-height: 1.6;
}
.tg-dashboard__empty .tg-btn {
  width: fit-content;
  margin: 4px auto 0;
}
.tg-dashboard__notice,
.tg-dashboard__error {
  margin-bottom: 14px;
  padding: 14px 16px;
  border-radius: 16px;
  color: #fff !important;
  font-weight: 900;
}
.tg-dashboard__notice {
  background: linear-gradient(135deg, #0f8a60, #07583d);
}
.tg-dashboard__error {
  background: linear-gradient(135deg, #be123c, #7f1d1d);
}
.tg-dashboard__loading {
  display: grid;
  gap: 14px;
}
.tg-dashboard__loading span {
  min-height: 132px;
  border-radius: 22px;
  background: linear-gradient(100deg, #eef5ff 0%, #ffffff 42%, #ddecff 68%, #eef5ff 100%);
  background-size: 220% 100%;
  animation: tg-shimmer 1.25s ease-in-out infinite;
}
.tg-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.tg-form-stack { display: grid; gap: 14px; }
.tg-auth-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; align-items: start; }
.tg-auth-card h2 { margin: 0; color: var(--ink-950) !important; font-size: clamp(24px, 3vw, 34px); }
.tg-auth-note { margin-top: 18px; }
.tg-section--embedded {
  padding: 0;
}
.tg-auth-embed {
  display: grid;
  gap: 14px;
}
.tg-auth-embed .tg-auth-grid {
  grid-template-columns: 1fr;
  gap: 14px;
}
.tg-auth-embed .tg-auth-card {
  padding: 18px;
  border-radius: 8px;
  box-shadow: none;
}
.tg-auth-embed .tg-auth-card h2 {
  font-size: clamp(20px, 2.2vw, 26px);
}
.tg-auth-switch {
  margin: 0;
  color: var(--ink-700) !important;
  font-weight: 750;
}
.tg-auth-switch a {
  color: var(--primary) !important;
  font-weight: 900;
  text-decoration: none;
}
.tg-auth-switch a:hover {
  text-decoration: underline;
}
.tg-auth-message {
  margin: 0 0 16px;
  padding: 12px 14px;
  border-radius: 8px;
  color: #fff !important;
  background: rgba(190, 18, 60, .88);
  border: 1px solid rgba(255,255,255,.18);
}
.tg-checkline {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--ink-700);
  font-weight: 800;
  font-size: 13px;
}
.tg-checkline input { width: 16px; height: 16px; accent-color: var(--color-primary); }
.tg-btn:disabled { opacity: .62; cursor: wait; transform: none; }
.tg-contact-layout {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(360px, .75fr);
  gap: 18px;
  align-items: start;
}
.tg-contact-help {
  display: grid;
  gap: 18px;
}
.tg-contact-help .tg-card h2 {
  margin: 0 0 12px;
  color: var(--ink-950) !important;
  font-size: clamp(24px, 3vw, 36px);
}
.tg-contact-help__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.tg-cf7-form .wpcf7 { color: var(--ink-950); }
.tg-cf7-form .wpcf7 form {
  display: grid;
  gap: 14px;
}
.tg-cf7-form .wpcf7 p {
  margin: 0;
  color: var(--ink-700) !important;
  font-weight: 800;
}
.tg-cf7-form .wpcf7 label {
  display: grid;
  gap: 7px;
}
.tg-cf7-form .wpcf7-form-control-wrap {
  display: block;
}
.tg-cf7-form .wpcf7 input:not([type="submit"]),
.tg-cf7-form .wpcf7 textarea,
.tg-cf7-form .wpcf7 select {
  width: 100%;
  border: 1px solid rgba(11,88,201,.16);
  border-radius: 8px;
  padding: 12px 14px;
  color: var(--ink-950);
  background: rgba(255,255,255,.88);
}
.tg-cf7-form .wpcf7 textarea { min-height: 150px; resize: vertical; }
.tg-cf7-form .wpcf7 input[type="submit"] {
  min-height: 44px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 8px;
  padding: 0 18px;
  color: var(--button-primary-text);
  background: var(--button-primary-bg);
  box-shadow: var(--button-primary-shadow);
  font-family: var(--font-heading);
  font-weight: 800;
  cursor: pointer;
}
.tg-cf7-form .wpcf7-not-valid-tip {
  margin-top: 6px;
  color: #be123c;
  font-size: 12px;
  font-weight: 800;
}
.tg-cf7-form .wpcf7-response-output {
  margin: 4px 0 0 !important;
  padding: 12px 14px !important;
  border-radius: 8px;
  color: var(--ink-950);
  background: rgba(234,241,255,.9);
}
.tg-cf7-fallback {
  margin: 0;
  color: var(--ink-700) !important;
  font-weight: 800;
}
.tg-field { display: grid; gap: 6px; }
.tg-field label { color: var(--ink-950); font-weight: 800; font-size: 13px; }
.tg-field input,
.tg-field textarea,
.tg-field select {
  width: 100%;
  border: 1px solid rgba(11,88,201,.16);
  border-radius: 8px;
  padding: 12px 14px;
  background: rgba(255,255,255,.82);
}
.tg-preview-phone {
  max-width: 340px;
  margin: 0 auto;
  border-radius: 28px;
  padding: 14px;
  background: var(--ink-950);
}
.tg-preview-phone__screen {
  min-height: 580px;
  border-radius: 20px;
  padding: 18px;
  background: #f7fbff;
}
.tg-metric-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 22px;
}
.tg-metric {
  min-height: 92px;
  display: grid;
  align-content: center;
  gap: 2px;
  padding: 16px;
  border-radius: 8px;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(11,88,201,.12);
}
.tg-metric strong {
  color: var(--ink-950);
  font-family: var(--font-heading);
  font-size: 34px;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}
.tg-metric span {
  color: var(--ink-700);
  font-weight: 800;
  font-size: 13px;
}
.tg-success,
.tg-error {
  margin: 0;
  padding: 12px 14px;
  border-radius: 8px;
  font-weight: 800;
}
.tg-success {
  color: #063f2a;
  background: rgba(10,143,91,.12);
}
.tg-error {
  color: #6f1e29;
  background: rgba(196,61,75,.12);
}

.tg-public-card {
  min-height: 100vh;
  padding: 124px 16px 64px;
  display: grid;
  place-items: center;
  color: #fff;
  background:
    radial-gradient(circle at 22% 18%, rgba(0,179,219,.24), transparent 28rem),
    radial-gradient(circle at 82% 12%, rgba(11,88,201,.36), transparent 30rem),
    linear-gradient(145deg, #06111f 0%, #0b1830 48%, #07111f 100%);
}
.tg-public-card__shell {
  width: min(760px, 100%);
}

.tg-public-card--skeleton {
  min-height: auto;
  padding: 0;
  place-items: start center;
  background: transparent;
}

.tg-public-card--skeleton .tg-public-card__shell {
  width: min(480px, 100%);
}

.tg-public-card--skeleton .tg-skeleton-profile-wrap {
  margin-block: 0;
}

.tg-public-card__panel {
  position: relative;
  overflow: hidden;
  padding: clamp(26px, 5vw, 54px);
  border-radius: 18px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.16), rgba(255,255,255,.07)),
    rgba(12,28,51,.76);
  border: 1px solid rgba(255,255,255,.22);
  box-shadow: 0 28px 90px rgba(0,0,0,.34);
  backdrop-filter: blur(20px) saturate(150%);
  -webkit-backdrop-filter: blur(20px) saturate(150%);
}
.tg-public-card__panel h1 {
  max-width: 680px;
  margin: 8px 0 14px;
  color: #fff !important;
  font-size: clamp(34px, 6vw, 58px);
  line-height: .98;
}
.tg-public-card__panel p {
  max-width: 620px;
  color: rgba(255,255,255,.82) !important;
  font-weight: 700;
  font-size: clamp(16px, 2.4vw, 20px);
}
.tg-public-card__code {
  width: fit-content;
  max-width: 100%;
  display: grid;
  gap: 3px;
  margin-top: 24px;
  padding: 12px 16px;
  border-radius: 8px;
  color: #fff;
  background: rgba(255,255,255,.1);
  border: 1px solid rgba(255,255,255,.18);
}
.tg-public-card__code span {
  color: var(--brand-cyan-400);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}
.tg-public-card__code strong {
  font-family: var(--font-heading);
  font-size: 22px;
  letter-spacing: .03em;
}
.tg-public-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}
.tg-public-card__shine {
  position: absolute;
  inset: -45% auto auto -20%;
  width: 55%;
  aspect-ratio: 1;
  border-radius: 999px;
  background: rgba(0,179,219,.18);
  filter: blur(32px);
  animation: tg-public-card-pulse 1.8s ease-in-out infinite alternate;
}
@keyframes tg-public-card-pulse {
  from { transform: translate3d(0, 0, 0) scale(.92); opacity: .48; }
  to { transform: translate3d(18px, 10px, 0) scale(1.08); opacity: .86; }
}

/* ==============================================================
 * CLASSIC GLASS THEME — REAL GLASSMORPHISM & SECTIONAL BUTTONS
 * ============================================================== */

.tg-public-profile-app.tg-design--classic_glass {
  min-height: 100vh;
  background:
    radial-gradient(ellipse at 20% 0%, rgba(9, 93, 216, 0.35), transparent 600px),
    radial-gradient(ellipse at 80% 100%, rgba(0, 179, 219, 0.25), transparent 600px),
    radial-gradient(circle at 50% 50%, rgba(15, 23, 42, 0.5), transparent 800px),
    linear-gradient(160deg, #030812 0%, #081326 50%, #0d1e3d 100%) !important;
  color: #fff;
}

/* Glass Card Container */
.tg-pp__card--classic-glass {
  position: relative;
  width: min(440px, 100%);
  border-radius: 32px;
  overflow: hidden;
  background: linear-gradient(160deg, rgba(8, 18, 36, 0.94) 0%, rgba(5, 12, 24, 0.96) 100%) !important;
  backdrop-filter: blur(32px) saturate(200%);
  -webkit-backdrop-filter: blur(32px) saturate(200%);
  border: 1px solid rgba(255, 255, 255, 0.22) !important;
  box-shadow:
    0 30px 90px rgba(0, 0, 0, 0.7),
    0 0 0 1px rgba(255, 255, 255, 0.12) inset,
    0 1px 0 rgba(255, 255, 255, 0.35) inset !important;
  color: #fff !important;
}

/* Shine reflection line on top of card */
.tg-glass-card__shine {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.6) 50%, transparent 100%);
  pointer-events: none;
  z-index: 5;
}

/* Glass Cover */
.tg-glass-cover {
  height: 160px;
  border-radius: 32px 32px 0 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}
.tg-glass-cover .tg-pp__cover-placeholder {
  background: linear-gradient(135deg, rgba(9, 93, 216, 0.7) 0%, rgba(0, 179, 219, 0.4) 100%);
}

/* Glass Avatar */
.tg-glass-avatar-wrap {
  margin: -52px 0 0 24px;
}
.tg-glass-avatar-wrap .tg-pp__avatar {
  border: 3px solid rgba(255, 255, 255, 0.4);
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.5), inset 0 0 0 1px rgba(255, 255, 255, 0.4);
  backdrop-filter: blur(14px);
  background: #ffffff !important;
  object-fit: cover;
}
.tg-glass-avatar-wrap .tg-pp__avatar--fallback {
  background: linear-gradient(135deg, var(--brand-color, #095dd8), #00b3db) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Typography in Glass Theme — High Contrast & Readability */
.tg-design--classic_glass .tg-pp__name {
  color: #ffffff !important;
  font-size: 26px;
  font-weight: 900;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.8);
  letter-spacing: -0.02em;
}
.tg-design--classic_glass .tg-pp__bio {
  color: #f1f5f9 !important;
  font-size: 14px;
  font-weight: 600;
  text-shadow: 0 1px 6px rgba(0, 0, 0, 0.7);
  line-height: 1.45;
}

/* Sections */
.tg-glass-section {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 8px;
}
.tg-glass-section__label {
  display: flex;
  align-items: center;
  font-size: 11.5px;
  font-weight: 900;
  letter-spacing: 0.08em;
  color: #ffffff !important;
  text-transform: uppercase;
  padding-left: 2px;
  margin-bottom: 2px;
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.8);
}

/* SECTION 1: QUICK ACTIONS (4-Column Card Grid in 1 Single Row) */
.tg-glass-quick-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 6px !important;
  width: 100%;
}

.tg-glass-quick-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 10px 4px;
  min-height: 84px;
  border-radius: 16px;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0.04) 100%);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.22);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.3);
  text-decoration: none;
  transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);
  box-sizing: border-box;
  overflow: hidden;
}
.tg-glass-quick-card:hover {
  transform: translateY(-3px);
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0.08) 100%);
  border-color: rgba(255, 255, 255, 0.4);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.45);
}

.tg-glass-quick-card__icon-wrap {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--brand-color, linear-gradient(135deg, #095dd8 0%, #00b3db 100%));
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  margin-bottom: 6px;
  box-shadow: 0 4px 14px rgba(9, 93, 216, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.4);
  flex-shrink: 0;
}
.tg-glass-quick-card__icon-wrap svg {
  width: 18px;
  height: 18px;
}

.tg-glass-quick-card__title {
  font-size: 11px;
  font-weight: 800;
  color: #ffffff !important;
  line-height: 1.2;
  font-family: var(--font-heading);
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8);
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding: 0 2px;
}

.tg-glass-quick-card__sub {
  font-size: 9.5px;
  font-weight: 600;
  color: #cbd5e1 !important;
  margin-top: 2px;
  line-height: 1.1;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8);
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding: 0 2px;
}


/* SECTION 2: LINKS & RESOURCES (2-Column Grid) */
.tg-glass-links-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
@media (max-width: 400px) {
  .tg-glass-links-grid {
    grid-template-columns: 1fr;
  }
}

.tg-glass-link-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border-radius: 18px;
  background: linear-gradient(145deg, rgba(15, 23, 42, 0.75) 0%, rgba(30, 41, 59, 0.6) 100%);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #ffffff !important;
  font-family: var(--font-heading);
  font-weight: 800;
  font-size: 13.5px;
  text-decoration: none;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.2);
}
.tg-glass-link-item:hover {
  background: linear-gradient(145deg, rgba(30, 41, 59, 0.85) 0%, rgba(51, 65, 85, 0.75) 100%);
  border-color: rgba(255, 255, 255, 0.38);
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.35);
}

.tg-glass-link-item__icon-wrap {
  width: 34px;
  height: 34px;
  border-radius: 12px;
  background: var(--brand-color, #095dd8);
  border: 1px solid rgba(255, 255, 255, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  flex-shrink: 0;
  box-shadow: 0 2px 8px rgba(0,0,0,0.3);
}
.tg-glass-link-item__icon-wrap svg {
  width: 17px;
  height: 17px;
}

.tg-glass-link-item__label {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #ffffff !important;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.6);
}

.tg-glass-link-item__arrow {
  color: #ffffff;
  filter: drop-shadow(0 1px 2px rgba(0,0,0,0.6));
  transition: transform 0.2s ease, color 0.2s ease;
  flex-shrink: 0;
}
.tg-glass-link-item:hover .tg-glass-link-item__arrow {
  transform: translateX(3px);
}


/* SECTION 3: SOCIAL MEDIA DOCK - 5 PER ROW GRID */
.tg-glass-social-dock {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 10px !important;
  justify-items: center;
  align-items: center;
  padding: 8px 0;
  width: 100%;
}
.tg-glass-social-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100% !important;
  max-width: 48px;
  aspect-ratio: 1 / 1;
  border-radius: 16px;
  background: linear-gradient(145deg, rgba(15, 23, 42, 0.8) 0%, rgba(30, 41, 59, 0.7) 100%);
  border: 1px solid rgba(255, 255, 255, 0.22);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  color: #ffffff;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.25);
  transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);
}
.tg-glass-social-btn svg {
  width: 20px;
  height: 20px;
}
.tg-glass-social-btn:hover {
  background: var(--brand-color, #095dd8) !important;
  border-color: rgba(255, 255, 255, 0.45) !important;
  color: #ffffff !important;
  transform: translateY(-3px) scale(1.08);
  box-shadow: 0 10px 25px rgba(9, 93, 216, 0.55), inset 0 1px 0 rgba(255, 255, 255, 0.4);
}
.tg-glass-social-btn svg {
  width: 20px;
  height: 20px;
}
.tg-glass-social-btn:hover {
  background: var(--brand-color, #095dd8) !important;
  border-color: rgba(255, 255, 255, 0.4) !important;
  color: #ffffff !important;
  transform: translateY(-3px) scale(1.08);
  box-shadow: 0 10px 25px rgba(9, 93, 216, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.4);
}

/* Glass Footer */
.tg-glass-footer {
  width: fit-content;
  max-width: calc(100% - 32px);
  margin: 16px auto 0;
  padding: 10px 14px !important;
  border: 1px solid rgba(11, 99, 206, 0.18) !important;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.94) !important;
  color: #17263a !important;
  box-shadow: 0 14px 34px rgba(3, 9, 20, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.85);
  text-shadow: none !important;
}
.tg-glass-footer img {
  filter: none !important;
  opacity: 1 !important;
  max-height: 24px;
  width: auto;
}
/* ==============================================================
 * PUBLIC PROFILE — BASE STYLES
 * Selectors cover both legacy (tg-public-profile__*) and
 * abstract layout system (tg-pp__*) class names.
 * ============================================================== */

.tg-public-profile-app {
  min-height: 100vh;
  background:
    radial-gradient(circle at 18% 12%, rgba(0,179,219,.18), transparent 24rem),
    linear-gradient(160deg, #06111f 0%, #0d1b2a 100%);
  padding: 16px 12px !important;
  display: flex !important;
  justify-content: center !important;
  align-items: flex-start !important;
  box-sizing: border-box !important;
}
.tg-public-profile {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  display: flex !important;
  justify-content: center !important;
  box-sizing: border-box !important;
}

/* ---- Card shell ---- */
.tg-public-profile__card,
.tg-pp__card {
  position: relative;
  width: 100% !important;
  max-width: 480px;
  margin: 0 auto;
  border-radius: 28px;
  overflow: hidden;
  background: rgba(255,255,255,.97);
  border: 1px solid rgba(255,255,255,.8);
  box-shadow: 0 32px 80px rgba(0,0,0,.32), 0 0 0 1px rgba(255,255,255,.08);
  color: var(--ink-950);
}

/* ---- Cover ---- */
.tg-public-profile__cover,
.tg-pp__cover {
  width: 100%;
  height: 140px;
  position: relative;
  overflow: hidden;
  border-radius: 28px 28px 0 0;
}
.tg-public-profile__cover-img,
.tg-pp__cover-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.tg-public-profile__cover-placeholder,
.tg-pp__cover-placeholder {
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #c7d9f7 0%, #a5c4f3 50%, #e0ecff 100%);
}

/* ---- Avatar ---- */
.tg-public-profile__avatar-wrap,
.tg-pp__avatar-wrap {
  position: relative;
  margin: -44px 0 0 20px;
  width: 88px;
  z-index: 2;
}
.tg-public-profile__avatar,
.tg-pp__avatar {
  width: 88px;
  height: 88px;
  border-radius: 50%;
  object-fit: cover;
  border: 4px solid #fff;
  box-shadow: 0 4px 20px rgba(0,0,0,.16);
  display: block;
  background: #eaf1ff;
}
.tg-public-profile__avatar--fallback,
.tg-pp__avatar--fallback {
  width: 88px;
  height: 88px;
  border-radius: 50%;
  border: 4px solid #fff;
  box-shadow: 0 4px 20px rgba(0,0,0,.16);
  background: linear-gradient(135deg, #095dd8, #00b3db);
  display: flex;
  align-items: center;
  justify-content: center;
}
.tg-public-profile__avatar--fallback span,
.tg-pp__avatar--fallback span {
  color: #fff;
  font-size: 36px;
  font-weight: 900;
  font-family: var(--font-heading);
  line-height: 1;
}

/* ---- Body ---- */
.tg-public-profile__body,
.tg-pp__body {
  padding: 12px 20px 20px;
  display: grid;
  gap: 14px;
}
.tg-public-profile__name,
.tg-pp__name {
  margin: 0;
  font-size: clamp(22px, 6vw, 28px);
  font-weight: 900;
  color: var(--ink-950) !important;
  line-height: 1.15;
  font-family: var(--font-heading);
}
.tg-public-profile__bio,
.tg-pp__bio {
  margin: 0;
  color: var(--ink-600) !important;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.5;
}

/* ---- Action buttons ---- */
.tg-public-profile__actions,
.tg-pp__actions {
  display: grid;
  gap: 10px;
}
.tg-public-profile__action,
.tg-pp__action {
  min-height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 13px 16px;
  border-radius: 14px;
  color: var(--ink-950);
  background: #f1f6ff;
  border: 1px solid rgba(11,88,201,.14);
  font-family: var(--font-heading);
  font-weight: 900;
  font-size: 15px;
  text-decoration: none;
  transition: background .15s, transform .12s;
}
.tg-public-profile__action:hover,
.tg-pp__action:hover {
  background: #e2ecff;
  transform: translateY(-1px);
}
.tg-public-profile__action--primary,
.tg-pp__action--primary {
  color: #fff;
  background: var(--button-primary-bg);
  box-shadow: var(--button-primary-shadow);
  border-color: transparent;
}
.tg-public-profile__action--primary:hover,
.tg-pp__action--primary:hover {
  background: var(--color-primary);
  transform: translateY(-1px);
}

/* ---- Social icon bar ---- */
.tg-public-profile__social-bar,
.tg-pp__social-bar {
  display: flex;
  justify-content: center;
  gap: 8px;
  padding: 10px 0 4px;
  border-top: 1px solid rgba(9,93,216,.08);
}
.tg-public-profile__social-icon,
.tg-pp__social-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border-radius: 14px;
  background: #f1f6ff;
  border: 1px solid rgba(9,93,216,.1);
  color: var(--ink-700);
  transition: background .15s, color .15s, transform .12s;
  flex-shrink: 0;
}
.tg-public-profile__social-icon svg,
.tg-pp__social-icon svg {
  width: 20px;
  height: 20px;
}
.tg-public-profile__social-icon:hover,
.tg-pp__social-icon:hover {
  background: var(--color-primary);
  color: #fff;
  border-color: transparent;
  transform: translateY(-2px);
}

/* ==============================================================
 * UNIFIED "POWERED BY TO GROW" FOOTER (FOR ALL THEMES, LIGHT & DARK)
 * ============================================================== */

.tg-public-profile__footer,
.tg-pp__footer,
.tg-glass-footer,
.tg-cyber-footer,
.tg-noir-footer,
.tg-maison-footer,
.tg-nova-footer {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 16px 20px 8px 20px !important;
  margin-top: 24px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
  color: #94a3b8 !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.tg-pp__footer span,
.tg-glass-footer span,
.tg-cyber-footer span,
.tg-noir-footer span,
.tg-maison-footer span,
.tg-nova-footer span {
  color: #94a3b8 !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em !important;
}

.tg-pp__footer img,
.tg-glass-footer img,
.tg-cyber-footer img,
.tg-noir-footer img,
.tg-maison-footer img,
.tg-nova-footer img {
  height: 22px !important;
  max-height: 22px !important;
  width: auto !important;
  opacity: 1 !important;
  filter: none !important;
  display: inline-block !important;
  vertical-align: middle !important;
}

.tg-pp__footer strong,
.tg-glass-footer strong,
.tg-cyber-footer strong,
.tg-noir-footer strong,
.tg-maison-footer strong,
.tg-nova-footer strong {
  font-weight: 900 !important;
  font-size: 13.5px !important;
  letter-spacing: -0.01em !important;
  color: var(--brand-color, #095dd8) !important;
}

/* Unified Light Mode Footer Overrides */
.tg-mode--light .tg-public-profile__footer,
.tg-mode--light .tg-pp__footer,
.tg-mode--light .tg-glass-footer,
.tg-mode--light .tg-cyber-footer,
.tg-mode--light .tg-noir-footer,
.tg-mode--light .tg-maison-footer,
.tg-mode--light .tg-nova-footer {
  border-top-color: rgba(0, 0, 0, 0.08) !important;
  color: #64748b !important;
}

.tg-mode--light .tg-pp__footer span,
.tg-mode--light .tg-glass-footer span,
.tg-mode--light .tg-cyber-footer span,
.tg-mode--light .tg-noir-footer span,
.tg-mode--light .tg-maison-footer span,
.tg-mode--light .tg-nova-footer span {
  color: #64748b !important;
}
.tg-claim__grid {
  display: grid;
  grid-template-columns: minmax(280px, .72fr) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}
.tg-claim__summary h2 {
  margin: 0 0 14px;
  color: var(--ink-950) !important;
  font-size: clamp(34px, 5vw, 52px);
  line-height: 1;
  word-break: break-word;
}
.tg-claim__summary--active {
  max-width: 920px;
  margin: 0 auto;
  text-align: left;
  padding: clamp(22px, 4vw, 34px);
  overflow: hidden;
  position: relative;
}
.tg-claim__status {
  max-width: 720px;
  margin: 0 auto;
  padding: clamp(22px, 4vw, 34px);
  text-align: center;
}
.tg-claim__status h2 {
  margin: 0 0 14px;
  color: var(--ink-950) !important;
  font-size: clamp(34px, 6vw, 58px);
  line-height: 1;
  word-break: break-word;
}
.tg-claim__summary--active::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 50% 0%, rgba(9, 93, 216, .14), transparent 42%),
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(238,245,255,.74));
  pointer-events: none;
}
.tg-claim__summary--active > * {
  position: relative;
}
.tg-claim__active-main {
  display: grid;
  grid-template-columns: 118px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  margin-bottom: 22px;
}
.tg-claim__active-qr {
  display: grid;
  place-items: center;
  width: 118px;
  aspect-ratio: 1;
  margin: 0;
  padding: 10px;
  border-radius: 20px;
  background: #fff;
  border: 1px solid rgba(9, 93, 216, .14);
  box-shadow: 0 18px 40px rgba(9, 93, 216, .16);
}
.tg-claim__active-qr img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.tg-claim__summary--active h2 {
  max-width: 680px;
  margin: 0 0 8px;
  font-size: clamp(34px, 5vw, 58px);
}
.tg-claim__active-copy {
  max-width: 620px;
  margin: 0;
  color: var(--ink-700) !important;
  font-size: clamp(16px, 2vw, 19px);
  font-weight: 800;
  line-height: 1.55;
}
.tg-claim__details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 0;
  text-align: left;
}
.tg-claim__details div {
  display: grid;
  gap: 4px;
  padding: 14px 16px;
  border-radius: 8px;
  background: rgba(255, 255, 255, .72);
  border: 1px solid rgba(9, 93, 216, .12);
  box-shadow: 0 12px 28px rgba(15, 23, 42, .06);
}
.tg-claim__details-url {
  grid-column: 1 / -1;
}
.tg-claim__details div:first-child {
  background: var(--tag-primary-bg);
  border-color: var(--tag-primary-border);
}
.tg-claim__details div:first-child dt {
  color: var(--tag-primary-text) !important;
}
.tg-claim__details div:first-child dd {
  color: var(--tag-primary-text) !important;
}
.tg-claim__details dt {
  color: var(--primary) !important;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}
.tg-claim__details dd {
  margin: 0;
  color: var(--ink-950) !important;
  font-weight: 850;
  overflow-wrap: anywhere;
}
.tg-claim__details a {
  color: var(--primary) !important;
  text-decoration: none;
}
.tg-claim__details a:hover {
  text-decoration: underline;
}
.tg-claim__summary p:not(.tg-eyebrow),
.tg-claim__next p {
  color: var(--ink-700) !important;
  font-weight: 750;
}
.tg-claim__forms {
  display: grid;
  gap: 18px;
}
.tg-claim__forms h3,
.tg-claim__next h3 {
  margin: 0 0 8px;
  color: var(--ink-950) !important;
  font-size: clamp(22px, 3vw, 30px);
  line-height: 1.05;
}
.tg-claim__lookup {
  max-width: 620px;
  margin: 0 auto;
}
.tg-claim__success {
  display: grid;
  gap: 5px;
  margin-top: 16px;
}
.tg-claim__success a {
  color: var(--success);
  text-decoration: underline;
}

.tg-profile {
  min-height: 100vh;
  padding: 36px 0;
  background: var(--gradient-brand);
}
.tg-profile__card {
  width: min(460px, calc(100% - 24px));
  margin: 0 auto;
  color: var(--ink-950);
}

.tg-wp-content {
  width: min(900px, calc(100% - 32px));
  margin: 0 auto;
  padding: 140px 0 80px;
}

.tg-dashboard__menu-btn {
  display: none;
}
@media (max-width: 980px) {
  .tg-nav,
  .tg-header__actions .tg-btn--ghost { display: none; }
  .tg-menu-button { display: inline-flex; }
  .tg-nav.is-open {
    display: grid;
    position: absolute;
    left: 16px;
    right: 16px;
    top: 86px;
    padding: 16px;
    border-radius: 8px;
    background: rgba(255,255,255,.94);
    box-shadow: 0 18px 50px rgba(8, 32, 70, .16);
  }
  .tg-nav-item,
  .tg-nav-item > a { display: grid; }
  .tg-nav-item--mega > a::after { display: none; }
  .tg-mega-menu {
    position: static;
    width: auto;
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    margin-top: 8px;
    padding: 10px;
    opacity: 1;
    pointer-events: auto;
    transform: none;
    box-shadow: none;
  }
  .tg-mega-menu__grid { grid-template-columns: 1fr; }
  .tg-wc-main { padding-top: 112px; }
  .tg-wc-shell .product.type-product { grid-template-columns: 1fr; }
  body.single-product .tg-wc-shell .product.type-product {
    min-height: 0;
    grid-template-columns: 1fr;
  }
  body.single-product .tg-wc-shell .woocommerce-tabs {
    grid-template-columns: 1fr;
  }
  body.single-product .tg-wc-shell #reviews {
    grid-template-columns: 1fr;
  }
  body.single-product .tg-wc-shell .woocommerce-product-gallery__image {
    min-height: 420px;
  }
  body.single-product .tg-wc-shell .woocommerce-product-gallery__image img {
    transform: translateX(0) scale(1.06);
  }
  body.single-product .tg-wc-shell .flex-control-nav.flex-control-thumbs {
    max-height: 420px;
  }
  .tg-hero__grid,
  .tg-tabs,
  .tg-auth-grid,
  .tg-contact-layout,
  .tg-dashboard__shell,
  .tg-dashboard__grid,
  .tg-dashboard__detail-grid,
  .tg-claim__grid,
  .tg-product-showcase,
  .tg-product-band,
  .tg-product-band--reverse,
  .tg-final { grid-template-columns: 1fr; }
  .tg-claim__active-main {
    grid-template-columns: 1fr;
    text-align: center;
  }
  .tg-claim__active-qr {
    margin: 0 auto;
  }
  .tg-claim__summary--active h2,
  .tg-claim__active-copy {
    margin-left: auto;
    margin-right: auto;
  }
  .tg-claim__details {
    grid-template-columns: 1fr;
  }
  .tg-dashboard__mobile-header {
    display: none !important;
  }
  .tg-eyebrow--desktop-only {
    display: none !important;
  }
  .tg-dashboard__menu-btn {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    padding: 6px 12px;
    border-radius: 12px;
    background: #f1f6ff;
    border: 1px solid rgba(9, 93, 216, .14);
    font-weight: 800;
    font-size: 13px;
    color: var(--ink-950);
    cursor: pointer;
    margin-bottom: 6px;
    transition: background 0.15s ease;
  }
  .tg-dashboard__menu-btn:active {
    background: #e2eeff;
  }
  .tg-sidebar-overlay {
    display: block;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.4);
    z-index: 9998;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
  }
  .tg-sidebar-overlay.is-open {
    opacity: 1;
    pointer-events: auto;
  }
  .tg-sidebar-close {
    display: block;
    position: absolute;
    top: 16px;
    right: 16px;
    background: none;
    border: none;
    color: #fff;
    font-size: 32px;
    cursor: pointer;
    line-height: 1;
    padding: 0;
  }
  .tg-dashboard__sidebar {
    position: fixed !important;
    top: 0 !important;
    left: -320px;
    width: 280px;
    height: 100vh;
    border-radius: 0;
    z-index: 9999;
    overflow-y: auto;
    transition: left 0.3s ease;
    margin: 0;
  }
  .tg-dashboard__sidebar.is-open {
    left: 0;
  }
  .tg-dashboard__nav {
    grid-auto-flow: row;
    grid-auto-columns: auto;
    overflow-x: visible;
  }
  .tg-dashboard__hero {
    grid-template-columns: 1fr;
  }
  .tg-dashboard__metrics,
  .tg-dashboard__business-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .tg-dashboard__assign {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .tg-dashboard__card-row {
    grid-template-columns: 80px minmax(160px, 1fr) minmax(100px, auto);
  }
  .tg-dashboard__card-row > span:nth-of-type(2),
  .tg-dashboard__card-row .tg-dashboard__card-actions {
    grid-column: 2 / -1;
  }
  .tg-legal__layout { grid-template-columns: 1fr; }
  .tg-legal__sidebar {
    position: relative;
    top: auto;
    overflow: hidden;
  }
  .tg-legal__nav {
    grid-auto-flow: column;
    grid-auto-columns: minmax(180px, max-content);
    overflow-x: auto;
    padding-bottom: 4px;
  }
  .tg-legal__nav a {
    white-space: nowrap;
  }
  .tg-not-found__shell {
    grid-template-columns: 1fr;
  }
  .tg-not-found__status {
    min-height: 260px;
  }
  .tg-not-found__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .tg-tabs { grid-template-columns: 1fr; min-height: 0; }
  .tg-tabs__nav {
    flex-direction: row;
    overflow-x: auto;
    padding: 14px;
    border-radius: 0 0 24px 24px;
  }
  .tg-tab-button {
    min-width: 210px;
  }
  .tg-tab-button.is-active {
    width: auto;
    transform: none;
  }
  .tg-tab-button.is-active::after { display: none; }
  .tg-module-card {
    min-height: 360px;
  }
  .tg-final {
    padding-right: clamp(24px, 6vw, 42px);
    min-height: 0;
  }
  .tg-final__image {
    position: relative;
    top: auto;
    right: auto;
    width: min(440px, 96%);
    max-width: none;
    margin: 24px auto -58px;
  }
  .tg-product-band--reverse img { order: 0; }
  .tg-hero__copy { order: 2; }
  .tg-hero__copy.tg-fullscreen-card {
    min-height: auto;
    padding-right: 20px;
  }
  .tg-hero__product {
    position: relative;
    top: auto;
    right: auto;
    width: min(410px, 96%);
    max-width: none;
    margin: 18px auto -44px;
  }
  .tg-hero__visual:not(.tg-home-backdrop) { order: 1; min-height: 0; }
  .tg-grid,
  .tg-grid--2,
  .tg-grid--4,
  .tg-contact-help__grid { grid-template-columns: 1fr 1fr; }
  .tg-wc-shell ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .tg-fullscreen-card .tg-section__head { grid-template-columns: 1fr; }
  .tg-fullscreen-card .tg-section__media {
    justify-self: start;
    width: min(390px, 100%);
    margin-top: 6px;
    margin-bottom: 0;
  }
}

@media (max-width: 640px) {
  .tg-container { width: min(100% - 20px, 1180px); }
  .tg-header { top: 8px; }
  .tg-header__inner { min-height: 60px; padding: 10px; }
  .tg-logo { width: 126px; }
  .tg-hero__stage { padding-top: 76px; }
  .tg-hero__copy { padding: 20px; }
  .tg-hero h1 { font-size: clamp(28px, 8.6vw, 38px); }
  .tg-home-panel { min-height: 68svh; padding: 52px 0 22px; }
  #products.tg-home-panel { min-height: auto; padding-bottom: 18px; }
  .tg-fullscreen-card { width: 100%; }
  .tg-frame-vignette {
    background:
      linear-gradient(180deg, rgba(7,17,31,.78), rgba(7,17,31,.38) 42%, rgba(7,17,31,.82));
  }
  .tg-section__head { display: block; }
  .tg-section__head .tg-lede { margin-top: 14px; }
  .tg-not-found {
    padding: 92px 0 36px;
  }
  .tg-not-found__shell {
    padding: 20px;
    border-radius: 18px;
  }
  .tg-not-found h1 {
    font-size: clamp(30px, 10vw, 46px);
  }
  .tg-not-found__actions,
  .tg-not-found__actions .tg-btn {
    width: 100%;
  }
  .tg-not-found__grid {
    grid-template-columns: 1fr;
  }
  .tg-not-found__card {
    min-height: 0;
  }
  .tg-grid,
  .tg-grid--2,
  .tg-grid--4,
  .tg-product-tiles,
  .tg-form-grid,
	  .tg-dashboard__form-grid,
	  .tg-dashboard__media-grid,
  .tg-dashboard__business-grid,
  .tg-dashboard__assign,
  .tg-contact-help__grid,
  .tg-metric-row,
  .tg-dashboard__menu-metrics { grid-template-columns: 1fr; }

  .tg-dashboard__panel-head {
    align-items: flex-start;
    flex-direction: column;
  }

  /* Compact 2-column metrics on mobile */
  .tg-dashboard__metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
  .tg-time-distribution-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }
  .tg-linked-cards-grid {
    grid-template-columns: 1fr !important;
  }
  .tg-dashboard__metric {
    padding: 12px 14px !important;
    border-radius: 14px !important;
  }
  .tg-dashboard__metric strong {
    font-size: 22px !important;
  }
  .tg-dashboard__metric span {
    font-size: 11px !important;
    line-height: 1.3 !important;
  }

  .tg-dashboard {
    padding-top: 84px;
  }
  .tg-dashboard__shell {
    gap: 12px;
  }
  .tg-dashboard__sidebar {
    padding: 18px;
    border-radius: 18px;
  }
  .tg-dashboard__hero,
  .tg-dashboard__headerline,
  .tg-dashboard__panel,
  .tg-dashboard__business-card,
  .tg-dashboard__assign,
  .tg-dashboard__filters,
	  .tg-dashboard__card-row,
	  .tg-dashboard__empty,
	  .tg-dashboard__preview-wrap,
	  .tg-dashboard__media-panel {
    border-radius: 16px;
    padding: 16px !important;
  }
  .tg-dashboard__hero h1,
  .tg-dashboard__headerline h1 {
    font-size: clamp(22px, 7vw, 32px);
  }
  .tg-dashboard__panel-head,
  .tg-dashboard__business-card,
  .tg-dashboard__filters {
    align-items: stretch;
    flex-direction: column;
    gap: 10px;
  }

  /* Small Mobile Topbars & Filters */
  .tg-topbar-actions-group {
    width: 100% !important;
    margin-left: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
  }
  .tg-topbar-actions-group .tg-btn,
  .tg-topbar-create-btn {
    width: 100% !important;
    margin-left: 0 !important;
    justify-content: center !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }
  .tg-dashboard__cards-topbar h1 {
    font-size: clamp(20px, 6vw, 30px) !important;
    line-height: 1.3 !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
  }
  .tg-dashboard__filters select,
  .tg-dashboard__filters input,
  .tg-search-box {
    width: 100% !important;
    box-sizing: border-box !important;
  }
  .tg-dashboard__filter-search,
  .tg-card-title-edit {
    max-width: none;
    width: 100%;
  }
  .tg-card-title-inline {
    width: 100%;
  }
  /* Mobile Modal Social Links & Slug Input */
  .tg-social-link-row {
    grid-template-columns: 1fr auto !important;
    row-gap: 8px !important;
    padding: 10px !important;
    background: #f8fafc !important;
    border-radius: 12px !important;
    border: 1px solid rgba(9, 93, 216, .14) !important;
  }
  .tg-social-link-row select {
    grid-column: 1 / -1 !important;
  }
  .tg-social-link-row input {
    grid-column: 1 !important;
  }
  .tg-btn-remove {
    grid-column: 2 !important;
  }
  
  .tg-slug-input-wrap {
    flex-direction: column !important;
    align-items: stretch !important;
  }
  .tg-slug-prefix {
    border-right: none !important;
    border-bottom: 1px solid rgba(9, 93, 216, .14) !important;
    font-size: 12px !important;
    padding: 10px 12px !important;
    color: var(--text-500) !important;
    background: #f8fafc !important;
    font-weight: 500 !important;
    white-space: normal !important;
    word-break: break-all !important;
  }
  .tg-slug-input-wrap input {
    font-size: 16px !important;
    padding: 14px 12px !important;
    font-weight: 900 !important;
    color: var(--color-primary) !important;
  }

  /* Optimized Mobile Cards Row */
  .tg-dashboard__card-row {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    padding: 14px !important;
    grid-template-columns: none !important;
  }
  .tg-dashboard__qr-mini {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    justify-items: start !important;
  }
  .tg-dashboard__qr-mini img {
    width: 44px !important;
    height: 44px !important;
    border-radius: 10px !important;
    flex-shrink: 0 !important;
  }
  .tg-dashboard__card-business-col {
    display: flex;
    flex-direction: column;
    gap: 2px;
  }
  .tg-dashboard__card-actions {
    display: flex !important;
    gap: 8px !important;
    width: 100% !important;
  }
  .tg-dashboard__card-actions button {
    flex: 1 !important;
    min-height: 40px !important;
    padding: 8px 12px !important;
    font-size: 13px !important;
    border-radius: 10px !important;
  }

  /* Mobile Modals optimization */
  .tg-modal-overlay {
    padding: 12px 10px !important;
  }
  .tg-modal-panel {
    max-height: calc(100vh - 24px) !important;
    border-radius: 18px !important;
    width: 100% !important;
  }
  .tg-modal-panel__head {
    padding: 14px 16px !important;
  }
  .tg-modal-panel__head h2 {
    font-size: 18px !important;
  }
  .tg-modal-panel__body {
    padding: 14px 16px !important;
    gap: 14px !important;
  }
  .tg-modal-panel__body input,
  .tg-modal-panel__body select,
  .tg-modal-panel__body textarea {
    font-size: 16px !important;
    min-height: 44px !important;
  }

  .tg-dashboard__detail-grid {
    grid-template-columns: 1fr;
  }
  .tg-dashboard__phone {
    min-height: 500px;
    border-width: 6px;
  }

  /* Filters & select inputs on mobile */
  .tg-dashboard__filters select,
  .tg-per-page-selector select {
    width: 100% !important;
    min-height: 44px !important;
    font-size: 15px !important;
  }
  .tg-per-page-selector {
    width: 100%;
    justify-content: space-between;
  }
  .tg-search-field input {
    font-size: 16px !important;
    min-height: 44px !important;
  }

  .tg-wc-shell .product.type-product { padding: 18px; }
  body.single-product .tg-wc-shell .product.type-product {
    padding: 16px;
  }
  body.single-product .tg-wc-shell .woocommerce-product-gallery__image {
    min-height: 300px;
  }
  body.single-product .tg-wc-shell .woocommerce-product-gallery {
    grid-template-columns: 1fr;
  }
  body.single-product .tg-wc-shell .woocommerce-product-gallery__wrapper,
  body.single-product .tg-wc-shell .flex-control-nav.flex-control-thumbs {
    grid-column: 1;
  }
  body.single-product .tg-wc-shell .woocommerce-product-gallery__wrapper {
    grid-row: 1;
  }
  body.single-product .tg-wc-shell .flex-control-nav.flex-control-thumbs {
    grid-row: 2;
    display: flex;
    max-height: none;
    overflow-x: auto;
    overflow-y: hidden;
  }
  body.single-product .tg-wc-shell .flex-control-nav.flex-control-thumbs img {
    width: 68px;
    height: 68px;
  }
  body.single-product .tg-wc-shell .summary {
    padding: 10px 4px 4px;
  }
  body.single-product .tg-wc-shell form.cart {
    display: grid;
    grid-template-columns: 1fr;
  }
  body.single-product .tg-wc-shell form.cart .quantity {
    flex-basis: auto;
  }
  .tg-shop-card__buybar {
    grid-template-columns: minmax(0, 1fr) 82px max-content;
    gap: 5px;
  }
  .tg-shop-card__quantity {
    width: 82px;
    grid-template-columns: 24px 34px 24px;
  }
  .tg-shop-skeleton--quantity {
    width: 82px;
  }
  .tg-shop-card__price,
  body .tg-app .tg-shop-card .tg-shop-card__price {
    min-height: 42px;
    padding: 0 4px 0 10px;
    font-size: 13px;
  }
  .tg-wc-shell ul.products { grid-template-columns: 1fr; }
  .tg-wc-shell form.cart { display: grid; }
  .tg-wc-shell .quantity .qty,
  .tg-wc-shell .single_add_to_cart_button { width: 100%; }
  .tg-wc-shell .woocommerce-cart-form,
  .tg-wc-shell .cart-collaterals,
  .tg-wc-shell .woocommerce-checkout {
    padding: 14px;
  }
  .tg-wc-shell table.shop_table {
    border-spacing: 0 8px;
  }
  .tg-wc-shell table.shop_table th,
  .tg-wc-shell table.shop_table td {
    padding: 10px;
    font-size: 12px;
  }
  .tg-wc-shell table.cart .product-thumbnail {
    width: 58px;
  }
  .tg-wc-shell table.cart .product-thumbnail img {
    width: 48px;
    height: 48px;
  }
  .tg-wc-shell table.cart td.actions .coupon {
    display: grid;
    grid-template-columns: 1fr;
  }
  .tg-wc-shell table.cart td.actions .coupon .input-text,
  .tg-wc-shell table.cart td.actions .coupon .button,
  .tg-wc-shell table.cart td.actions > .button {
    width: 100%;
  }
  .tg-mini-cart {
    top: 10px;
    right: 10px;
    width: calc(100vw - 20px);
    max-height: calc(100vh - 20px);
    padding: 18px;
  }
  .tg-mini-cart__item {
    grid-template-columns: 54px minmax(0, 1fr);
  }
  .tg-mini-cart__price {
    grid-column: 2;
  }
  .tg-mini-cart__thumb img {
    width: 54px;
    height: 54px;
  }
  .tg-mini-cart__actions {
    grid-template-columns: 1fr;
  }
  .tg-footer__top,
  .tg-footer__links { grid-template-columns: 1fr; }
  .tg-footer__links { gap: 24px; }
  .tg-footer__bottom { display: grid; }
}

@media (max-width: 480px) {
  html, body {
    overflow-x: hidden !important;
  }
  .tg-container {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
    box-sizing: border-box !important;
  }
  .tg-dashboard__business-row {
    padding: 10px 12px !important;
    gap: 8px !important;
    box-sizing: border-box !important;
  }
  .tg-dashboard__business-avatar {
    width: 42px !important;
    height: 42px !important;
    border-radius: 10px !important;
  }
  .tg-dashboard__business-details strong {
    font-size: 14px !important;
    line-height: 1.25 !important;
  }
  .tg-dashboard__business-badges {
    flex-wrap: wrap !important;
    gap: 4px !important;
  }
  .tg-dashboard__badge {
    font-size: 10px !important;
    padding: 2px 7px !important;
  }
  .tg-action-mobile-trigger {
    padding: 6px 12px !important;
    font-size: 12px !important;
  }
}

/* ---- Business Performance Reports Item (Desktop original, Mobile 3-column) ---- */
.tg-reports-biz-stats-mobile {
  display: none;
}

.tg-reports-btn-text-mobile {
  display: none;
}

@media (max-width: 640px) {
  .tg-reports-item-row {
    display: grid !important;
    grid-template-columns: 44px 1fr auto !important;
    gap: 10px !important;
    padding: 12px 14px !important;
    align-items: center !important;
  }

  .tg-reports-item-row .tg-dashboard__business-row-info {
    display: contents !important;
  }

  .tg-reports-item-row .tg-dashboard__business-avatar {
    width: 44px !important;
    height: 44px !important;
    border-radius: 10px !important;
    font-size: 18px !important;
    grid-column: 1 !important;
  }

  .tg-reports-item-row .tg-dashboard__business-details {
    grid-column: 2 !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
  }

  .tg-reports-item-row .tg-dashboard__reports-metrics {
    grid-column: 3 !important;
    display: block !important;
    margin: 0 !important;
  }

  .tg-reports-metrics-block {
    display: none !important;
  }

  .tg-reports-biz-stats-mobile {
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    font-size: 12px !important;
    color: #64748b !important;
  }

  .tg-reports-stat-taps {
    font-weight: 800 !important;
    color: #0b58c9 !important;
  }

  .tg-reports-stat-devices {
    font-weight: 600 !important;
    color: #475569 !important;
  }

  .tg-reports-btn {
    padding: 8px 12px !important;
    font-size: 12px !important;
    border-radius: 10px !important;
  }
}

@media (max-width: 480px) {
  .tg-reports-btn-text-full {
    display: none !important;
  }
  .tg-reports-btn-text-mobile {
    display: inline !important;
  }
}

/* ==============================================================
 * MULTILINGUAL & RTL DIRECTION SYSTEM (EN, ES, FR, DE, AR)
 * ============================================================== */

/* Header Language Selector */
.tg-lang-switcher {
  position: relative;
  display: inline-flex;
  align-items: center;
}
.tg-lang-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  font-size: 13px;
  font-weight: 700;
  color: var(--ink-950);
  background: rgba(11, 88, 201, 0.06);
  border: 1px solid rgba(11, 88, 201, 0.16);
  border-radius: 20px;
  cursor: pointer;
  transition: all 0.2s ease;
}
.tg-lang-btn:hover {
  background: rgba(11, 88, 201, 0.12);
  border-color: rgba(11, 88, 201, 0.3);
}

.tg-lang-dropdown {
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  background: #ffffff;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 12px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
  padding: 6px;
  min-width: 140px;
  z-index: 1000;
  display: grid;
  gap: 2px;
}
html[dir="rtl"] .tg-lang-dropdown {
  right: auto;
  left: 0;
}

.tg-lang-option {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  font-size: 13px;
  font-weight: 600;
  color: var(--ink-950);
  background: transparent;
  border: none;
  border-radius: 8px;
  width: 100%;
  text-align: left;
  cursor: pointer;
}
html[dir="rtl"] .tg-lang-option {
  text-align: right;
}
.tg-lang-option:hover,
.tg-lang-option.is-active {
  background: rgba(11, 88, 201, 0.08);
  color: #0b58c9;
}

/* Floating Public Profile Language Switcher */
.tg-profile-lang-pill {
  position: fixed;
  top: max(12px, env(safe-area-inset-top));
  left: 50%;
  right: auto;
  transform: translateX(-50%);
  z-index: 99990;
  display: inline-flex;
  justify-content: center;
  filter: drop-shadow(0 14px 28px rgba(7, 17, 31, .16));
}
.tg-profile-lang-pill .tg-lang-btn {
  min-height: 42px;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .92);
  border-color: rgba(9, 93, 216, .22);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.85);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}
.tg-profile-lang-pill .tg-lang-dropdown {
  top: calc(100% + 8px);
  left: 50%;
  right: auto;
  transform: translateX(-50%);
  min-width: 172px;
  border-color: rgba(9, 93, 216, .16);
  box-shadow: 0 18px 44px rgba(7, 17, 31, .18);
}
.tg-profile-lang-pill .tg-lang-option {
  text-decoration: none;
}
.tg-profile-lang-pill .tg-lang-emoji {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 18px;
  font-size: 17px;
  letter-spacing: 0;
  line-height: 1;
}
html[dir="rtl"] .tg-profile-lang-pill {
  right: auto;
  left: 50%;
  transform: translateX(-50%);
}

@media (min-width: 720px) {
  .tg-profile-lang-pill {
    top: 18px;
    left: auto;
    right: 22px;
    transform: none;
  }
  html[dir="rtl"] .tg-profile-lang-pill {
    left: 22px;
    right: auto;
    transform: none;
  }
  .tg-profile-lang-pill .tg-lang-dropdown {
    left: auto;
    right: 0;
    transform: none;
  }
  html[dir="rtl"] .tg-profile-lang-pill .tg-lang-dropdown {
    left: 0;
    right: auto;
  }
}

/* RTL Layout Directives */
html[dir="rtl"],
body.is-rtl {
  direction: rtl;
  text-align: right;
}

html[dir="rtl"] .tg-dashboard__header,
html[dir="rtl"] .tg-modal-panel__head {
  flex-direction: row-reverse;
}

html[dir="rtl"] .tg-modal-panel__head {
  text-align: right;
}

html[dir="rtl"] .tg-modal-panel__head > :first-child {
  text-align: right;
}

html[dir="rtl"] .tg-modal-close {
  margin: 0 !important;
}

html[dir="rtl"] .tg-btn svg,
html[dir="rtl"] .tg-btn-arrow {
  transform: scaleX(-1);
}

html[dir="rtl"] .tg-nova-link-card,
html[dir="rtl"] .tg-cyber-link-card,
html[dir="rtl"] .tg-noir-link-card,
html[dir="rtl"] .tg-glass-link-card,
html[dir="rtl"] .tg-glass-link-item,
html[dir="rtl"] .tg-eclat-link-row,
html[dir="rtl"] .tg-maison-link-card {
  min-width: 0;
  overflow: hidden;
}

html[dir="rtl"] .tg-nova-link-content,
html[dir="rtl"] .tg-noir-link-content,
html[dir="rtl"] .tg-eclat-link-content,
html[dir="rtl"] .tg-maison-link-content {
  min-width: 0;
  max-width: 100%;
  text-align: start;
}

html[dir="rtl"] .tg-nova-link-title,
html[dir="rtl"] .tg-nova-link-sub,
html[dir="rtl"] .tg-noir-link-title,
html[dir="rtl"] .tg-noir-link-sub,
html[dir="rtl"] .tg-eclat-link-title,
html[dir="rtl"] .tg-eclat-link-sub,
html[dir="rtl"] .tg-maison-link-title,
html[dir="rtl"] .tg-maison-link-sub,
html[dir="rtl"] .tg-cyber-link-label,
html[dir="rtl"] .tg-glass-link-label,
html[dir="rtl"] .tg-glass-link-item__label {
  display: block;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}

html[dir="rtl"] .tg-nova-link-arrow,
html[dir="rtl"] .tg-cyber-link-arrow,
html[dir="rtl"] .tg-noir-link-arrow,
html[dir="rtl"] .tg-glass-link-arrow,
html[dir="rtl"] .tg-glass-link-item__arrow,
html[dir="rtl"] .tg-eclat-link-arrow,
html[dir="rtl"] .tg-maison-link-arrow {
  flex: 0 0 auto;
  transform: scaleX(-1);
}

/* ==============================================================
 * CYBER NEON THEME — NEON GLOW DARK UI (INSPIRED BY SCREENSHOT)
 * ============================================================== */

.tg-public-profile-app.tg-design--cyber_neon {
  min-height: 100vh;
  background:
    radial-gradient(circle at 50% 0%, rgba(255, 59, 123, 0.18), transparent 500px),
    radial-gradient(circle at 80% 60%, rgba(156, 39, 176, 0.15), transparent 500px),
    radial-gradient(circle at 20% 80%, rgba(0, 229, 255, 0.12), transparent 500px),
    linear-gradient(180deg, #0b0c10 0%, #12141c 50%, #08090d 100%) !important;
  color: #ffffff;
}

/* Global Responsive Card Width System for ALL Themes */
.tg-pp__card,
.tg-public-profile__card,
.tg-pp__card--cyber-neon,
.tg-pp__card--classic-glass,
.tg-pp__card--vibrant_sunset,
.tg-pp__card--sleek_minimal,
.tg-pp__card--luxury_gold,
.tg-pp__card--clean_light {
  position: relative;
  width: 100% !important;
  max-width: 480px !important;
  margin: 0 auto !important;
  border-radius: 28px;
  overflow: hidden;
  box-sizing: border-box !important;
  transition: max-width 0.25s cubic-bezier(0.16, 1, 0.3, 1), border-radius 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

/* Tablet Breakpoint (576px and up) */
@media (min-width: 576px) {
  .tg-pp__card,
  .tg-public-profile__card,
  .tg-pp__card--cyber-neon,
  .tg-pp__card--classic-glass,
  .tg-pp__card--vibrant_sunset,
  .tg-pp__card--sleek_minimal,
  .tg-pp__card--luxury_gold,
  .tg-pp__card--clean_light {
    max-width: 580px !important;
  }
}

/* Desktop Breakpoint (768px and up) */
@media (min-width: 768px) {
  .tg-public-profile-app {
    padding: 32px 20px !important;
  }
  .tg-pp__card,
  .tg-public-profile__card,
  .tg-pp__card--cyber-neon,
  .tg-pp__card--classic-glass,
  .tg-pp__card--vibrant_sunset,
  .tg-pp__card--sleek_minimal,
  .tg-pp__card--luxury_gold,
  .tg-pp__card--clean_light {
    max-width: 720px !important;
    border-radius: 32px !important;
  }
}

/* Large Display Breakpoint (1100px and up) */
@media (min-width: 1100px) {
  .tg-public-profile-app {
    padding: 48px 24px !important;
  }
  .tg-pp__card,
  .tg-public-profile__card,
  .tg-pp__card--cyber-neon,
  .tg-pp__card--classic-glass,
  .tg-pp__card--vibrant_sunset,
  .tg-pp__card--sleek_minimal,
  .tg-pp__card--luxury_gold,
  .tg-pp__card--clean_light {
    max-width: 820px !important;
    border-radius: 36px !important;
  }
}

.tg-pp__card--cyber-neon {
  background: linear-gradient(180deg, rgba(24, 27, 36, 0.95) 0%, rgba(14, 16, 22, 0.98) 100%) !important;
  backdrop-filter: blur(28px);
  -webkit-backdrop-filter: blur(28px);
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  box-shadow:
    0 30px 90px rgba(0, 0, 0, 0.8),
    0 0 40px rgba(255, 59, 123, 0.15),
    0 1px 0 rgba(255, 255, 255, 0.25) inset !important;
  color: #ffffff !important;
}

/* Cover Image Wrapper with Fade */
.tg-cyber-cover-wrap {
  position: relative;
  height: 120px;
  width: 100%;
}
.tg-cyber-cover {
  height: 100%;
  width: 100%;
}
.tg-cyber-cover-gradient {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.2) 0%, rgba(18, 20, 28, 0.95) 100%);
  pointer-events: none;
}

/* Centered Circular Avatar with Neon Double Ring Glow */
.tg-cyber-avatar-container {
  display: flex;
  justify-content: center;
  margin-top: -46px;
  position: relative;
  z-index: 10;
}
.tg-cyber-avatar-ring {
  width: 98px;
  height: 98px;
  border-radius: 50%;
  padding: 4px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, var(--brand-color, #ff3b7b) 0%, #9c27b0 50%, #00e5ff 100%) !important;
  box-shadow: 0 0 25px var(--brand-color, rgba(255, 59, 123, 0.6)), 0 0 10px rgba(0, 229, 255, 0.4);
  flex-shrink: 0;
}
.tg-cyber-avatar-wrap {
  margin: 0 !important;
  width: 90px !important;
  height: 90px !important;
  border-radius: 50% !important;
}
.tg-cyber-avatar-wrap .tg-pp__avatar {
  width: 90px !important;
  height: 90px !important;
  border-radius: 50% !important;
  border: 3px solid #14161d !important;
  background: #ffffff !important;
  object-fit: cover !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
  display: block;
}
.tg-cyber-avatar-wrap .tg-pp__avatar--fallback {
  background: linear-gradient(135deg, var(--brand-color, #ff3b7b), #9c27b0) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Body Content */
.tg-cyber-body {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 8px 12px 14px 12px;
  text-align: center;
}

.tg-cyber-name {
  font-size: 22px !important;
  font-weight: 900 !important;
  color: var(--brand-color, #095dd8) !important;
  letter-spacing: -0.02em;
  margin-top: 2px;
  margin-bottom: 1px;
  text-shadow: 0 0 16px color-mix(in srgb, var(--brand-color, #095dd8) 45%, transparent);
}
.tg-cyber-bio {
  font-size: 12.5px !important;
  font-weight: 500 !important;
  color: #94a3b8 !important;
  margin-bottom: 8px;
  line-height: 1.35;
  max-width: 95%;
}

/* Stats Row */
.tg-cyber-stats-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  padding: 6px 14px;
  margin-bottom: 10px;
  background: rgba(255, 255, 255, 0.04);
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  width: 100%;
  box-sizing: border-box;
}
.tg-cyber-stat-item {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.tg-cyber-stat-item strong {
  font-size: 18px;
  font-weight: 900;
  color: #ffffff;
}
.tg-cyber-stat-item span {
  font-size: 11px;
  font-weight: 600;
  color: #94a3b8;
  margin-top: 1px;
}
.tg-cyber-stat-divider {
  width: 1px;
  height: 24px;
  background: rgba(255, 255, 255, 0.12);
}

/* Dual Action Pills */
.tg-cyber-pills-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  width: 100%;
  margin-bottom: 18px;
}
.tg-cyber-pill {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 13px 16px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
  font-family: var(--font-heading);
  transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);
  box-sizing: border-box;
}
.tg-cyber-pill--dark {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.16);
  color: #ffffff !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.3);
}
.tg-cyber-pill--dark:hover {
  background: rgba(255, 255, 255, 0.16);
  border-color: rgba(255, 255, 255, 0.3);
  transform: translateY(-2px);
}
.tg-cyber-pill--neon {
  background: linear-gradient(135deg, #ff3b7b 0%, #d90429 100%) !important;
  color: #ffffff !important;
  box-shadow: 0 6px 20px rgba(255, 59, 123, 0.45);
  border: 1px solid rgba(255, 255, 255, 0.3);
}
.tg-cyber-pill--neon:hover {
  transform: translateY(-2px) scale(1.02);
  box-shadow: 0 10px 28px rgba(255, 59, 123, 0.65);
}

/* Featured Highlight Card */
.tg-cyber-featured-card {
  width: 100%;
  padding: 16px;
  border-radius: 24px;
  background: linear-gradient(135deg, #7b2cbf 0%, #d90429 50%, #ff007f 100%);
  color: #ffffff;
  text-align: left;
  box-shadow: 0 10px 30px rgba(123, 44, 191, 0.4);
  margin-bottom: 20px;
  box-sizing: border-box;
}
.tg-cyber-featured-card__head {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 0.02em;
  margin-bottom: 4px;
}
.tg-cyber-featured-card p {
  font-size: 12px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.9);
  margin: 0 0 10px 0;
  line-height: 1.35;
}
.tg-cyber-featured-card__tags {
  display: flex;
  gap: 8px;
}
.tg-cyber-tag {
  font-size: 10.5px;
  font-weight: 800;
  padding: 4px 10px;
  border-radius: 999px;
  color: var(--tag-primary-text-on-dark);
  background: var(--tag-primary-bg-strong);
  backdrop-filter: blur(8px);
  border: 1px solid var(--tag-primary-border);
  box-shadow: var(--tag-primary-shadow);
}

/* Section Container */
.tg-cyber-section {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 38px !important;
}
.tg-cyber-section__label {
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.08em;
  color: #94a3b8;
  margin-bottom: 14px !important;
  text-transform: uppercase;
  text-align: center;
  width: 100%;
}

/* 4 Circular Neon Quick Action Badges - Center Aligned & Filling Width */
.tg-cyber-quick-circles {
  display: flex !important;
  justify-content: center !important;
  align-items: flex-start !important;
  gap: 10px !important;
  width: 100%;
  box-sizing: border-box;
}
.tg-cyber-quick-circle-item {
  flex: 1 1 0px !important;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  text-decoration: none;
  transition: transform 0.2s ease;
}
.tg-cyber-quick-circle-item:hover {
  transform: translateY(-3px);
}
.tg-cyber-circle-badge {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  margin-bottom: 6px;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.4);
  transition: all 0.22s ease;
}
.tg-cyber-circle-badge svg {
  width: 22px;
  height: 22px;
}
.tg-cyber-circle--solid-pink {
  background: linear-gradient(135deg, var(--brand-color, #ff3b7b) 0%, #d90429 100%) !important;
  box-shadow: 0 0 20px var(--brand-color, rgba(255, 59, 123, 0.5)) !important;
}
.tg-cyber-circle--ring-purple {
  background: #181b24;
  border: 2px solid #9c27b0;
  box-shadow: 0 0 15px rgba(156, 39, 176, 0.4);
}
.tg-cyber-circle--ring-cyan {
  background: #181b24;
  border: 2px solid #00e5ff;
  box-shadow: 0 0 15px rgba(0, 229, 255, 0.4);
}
.tg-cyber-circle--ring-pink {
  background: #181b24;
  border: 2px solid var(--brand-color, #ff3b7b) !important;
  box-shadow: 0 0 15px var(--brand-color, rgba(255, 59, 123, 0.4)) !important;
}

.tg-cyber-circle-label {
  font-size: 11px;
  font-weight: 700;
  color: #ffffff;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Links & Resources List - 2 in a row grid */
.tg-cyber-links-list {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 10px !important;
  width: 100%;
}
@media (max-width: 360px) {
  .tg-cyber-links-list {
    grid-template-columns: 1fr !important;
  }
}
.tg-cyber-link-card {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: #ffffff !important;
  text-decoration: none;
  font-weight: 700;
  font-size: 13px;
  font-family: var(--font-heading);
  transition: all 0.2s ease;
  box-sizing: border-box;
}
.tg-cyber-link-card:hover {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.22);
  transform: translateX(3px);
}
.tg-cyber-link-icon-wrap {
  width: 32px;
  height: 32px;
  border-radius: 10px;
  background: color-mix(in srgb, var(--brand-color, #ff3b7b) 20%, transparent) !important;
  border: 1px solid color-mix(in srgb, var(--brand-color, #ff3b7b) 45%, transparent) !important;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--brand-color, #ff3b7b) !important;
  flex-shrink: 0;
}
.tg-cyber-link-icon-wrap svg {
  width: 16px;
  height: 16px;
}
.tg-cyber-link-label {
  flex: 1;
  text-align: left;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tg-cyber-link-arrow {
  color: #94a3b8;
  transition: transform 0.2s ease, color 0.2s ease;
}
.tg-cyber-link-card:hover .tg-cyber-link-arrow {
  color: #ffffff;
  transform: translateX(3px);
}

/* Floating Bottom Social Media Dock - 5 PER ROW GRID */
.tg-cyber-social-dock {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 10px !important;
  justify-items: center;
  align-items: center;
  width: 100%;
  padding: 10px 12px;
  border-radius: 28px;
  background: rgba(24, 27, 36, 0.9);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.14);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
  box-sizing: border-box;
}
.tg-cyber-social-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100% !important;
  max-width: 48px;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  background: linear-gradient(135deg, rgba(255, 59, 123, 0.3) 0%, rgba(156, 39, 176, 0.35) 100%) !important;
  border: 1px solid rgba(255, 59, 123, 0.45) !important;
  color: #ffffff !important;
  box-shadow: 0 4px 14px rgba(255, 59, 123, 0.25);
  transition: all 0.22s ease;
  text-decoration: none;
  box-sizing: border-box;
}
.tg-cyber-social-btn svg {
  width: 20px;
  height: 20px;
}
.tg-cyber-social-btn--center {
  width: 52px;
  height: 52px;
  background: linear-gradient(135deg, #ff3b7b 0%, #9c27b0 100%) !important;
  box-shadow: 0 0 20px rgba(255, 59, 123, 0.6);
  border: 1px solid rgba(255, 255, 255, 0.4) !important;
}
.tg-cyber-social-btn:hover {
  background: linear-gradient(135deg, #ff3b7b 0%, #00e5ff 100%) !important;
  color: #ffffff !important;
  transform: translateY(-3px) scale(1.08);
  box-shadow: 0 8px 24px rgba(255, 59, 123, 0.6);
}

.tg-cyber-footer {
  width: fit-content;
  max-width: calc(100% - 32px);
  margin: 16px auto 0;
  padding: 10px 14px !important;
  border: 1px solid rgba(11, 99, 206, 0.2) !important;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.94) !important;
  color: #17263a !important;
  box-shadow: 0 16px 38px rgba(3, 9, 20, 0.22), 0 0 0 1px rgba(255, 255, 255, 0.46);
  text-shadow: none !important;
}

/* ==============================================================
 * LIGHT MODE OVERRIDES FOR CLASSIC GLASS & CYBER NEON
 * ============================================================== */

/* Light Mode: Classic Glass — Ultra-Readable Eye-Friendly Contrast */
.tg-public-profile-app.tg-mode--light.tg-design--classic_glass {
  background:
    radial-gradient(circle at 50% 0%, rgba(9, 93, 216, 0.08), transparent 500px),
    radial-gradient(circle at 80% 80%, rgba(0, 179, 219, 0.06), transparent 500px),
    linear-gradient(180deg, #f1f5f9 0%, #e2e8f0 100%) !important;
  color: #0f172a !important;
}
.tg-mode--light .tg-pp__card--classic-glass {
  background: #ffffff !important;
  border: 1px solid rgba(203, 213, 225, 0.8) !important;
  box-shadow: 0 20px 60px rgba(15, 23, 42, 0.08), 0 4px 16px rgba(15, 23, 42, 0.04) !important;
  color: #0f172a !important;
}
.tg-mode--light.tg-design--classic_glass .tg-pp__name,
.tg-mode--light .tg-pp__card--classic-glass .tg-pp__name {
  color: #0f172a !important;
  text-shadow: none !important;
}
.tg-mode--light.tg-design--classic_glass .tg-pp__bio,
.tg-mode--light .tg-pp__card--classic-glass .tg-pp__bio {
  color: #334155 !important;
  text-shadow: none !important;
}
.tg-mode--light.tg-design--classic_glass .tg-glass-section__label,
.tg-mode--light .tg-pp__card--classic-glass .tg-glass-section__label {
  color: #475569 !important;
  text-shadow: none !important;
}
.tg-mode--light .tg-glass-quick-card {
  background: #f8fafc !important;
  border: 1px solid #cbd5e1 !important;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.05) !important;
}
.tg-mode--light .tg-glass-quick-card:hover {
  background: #ffffff !important;
  border-color: var(--brand-color, #095dd8) !important;
  box-shadow: 0 6px 20px rgba(9, 93, 216, 0.12) !important;
}
.tg-mode--light .tg-glass-quick-card__title {
  color: #0f172a !important;
  font-weight: 800 !important;
  text-shadow: none !important;
}
.tg-mode--light .tg-glass-quick-card__sub {
  color: #475569 !important;
  font-weight: 600 !important;
  text-shadow: none !important;
}
.tg-mode--light .tg-glass-link-item {
  background: #f8fafc !important;
  border: 1px solid #cbd5e1 !important;
  color: #0f172a !important;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04) !important;
}
.tg-mode--light .tg-glass-link-item:hover {
  background: #ffffff !important;
  border-color: var(--brand-color, #095dd8) !important;
}
.tg-mode--light .tg-glass-link-item__label {
  color: #0f172a !important;
  font-weight: 700 !important;
  text-shadow: none !important;
}
.tg-mode--light .tg-glass-link-item__arrow {
  color: #475569 !important;
  filter: none !important;
}
.tg-mode--light .tg-glass-social-btn {
  background: #f8fafc !important;
  border: 1px solid #cbd5e1 !important;
  color: #0f172a !important;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.05) !important;
}
.tg-mode--light .tg-glass-social-btn:hover {
  background: var(--brand-color, #095dd8) !important;
  color: #ffffff !important;
  border-color: var(--brand-color, #095dd8) !important;
}

/* Light Mode: Cyber Neon */
.tg-public-profile-app.tg-mode--light.tg-design--cyber_neon {
  background:
    radial-gradient(circle at 50% 0%, rgba(255, 59, 123, 0.15), transparent 500px),
    radial-gradient(circle at 80% 60%, rgba(156, 39, 176, 0.12), transparent 500px),
    linear-gradient(180deg, #f8fafc 0%, #f1f5f9 50%, #e2e8f0 100%) !important;
  color: #0f172a;
}
.tg-mode--light .tg-pp__card--cyber-neon {
  background: rgba(255, 255, 255, 0.94) !important;
  border-color: rgba(0, 0, 0, 0.08) !important;
  box-shadow: 0 25px 70px rgba(15, 23, 42, 0.15), 0 0 30px rgba(255, 59, 123, 0.1) !important;
  color: #0f172a !important;
}
.tg-mode--light .tg-cyber-name {
  color: var(--brand-color, #095dd8) !important;
  text-shadow: 0 0 12px color-mix(in srgb, var(--brand-color, #095dd8) 25%, transparent) !important;
}
.tg-mode--light .tg-cyber-bio {
  color: #475569 !important;
}
.tg-mode--light .tg-cyber-stats-row {
  background: #ffffff !important;
  border-color: rgba(0, 0, 0, 0.08) !important;
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.06) !important;
}
.tg-mode--light .tg-cyber-stat-item strong {
  color: #0f172a !important;
}
.tg-mode--light .tg-cyber-stat-item span {
  color: #64748b !important;
}
.tg-mode--light .tg-cyber-stat-divider {
  background: rgba(0, 0, 0, 0.1) !important;
}
.tg-mode--light .tg-cyber-pill--dark {
  background: #ffffff !important;
  border-color: rgba(0, 0, 0, 0.12) !important;
  color: #0f172a !important;
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.08) !important;
}
.tg-mode--light .tg-cyber-circle-badge {
  color: #ffffff;
}
.tg-mode--light .tg-cyber-circle--ring-purple {
  background: #ffffff !important;
  border-color: #9c27b0 !important;
  color: #9c27b0 !important;
}
.tg-mode--light .tg-cyber-circle--ring-cyan {
  background: #ffffff !important;
  border-color: #00b3db !important;
  color: #00b3db !important;
}
.tg-mode--light .tg-cyber-circle--ring-pink {
  background: #ffffff !important;
  border-color: #ff3b7b !important;
  color: #ff3b7b !important;
}
.tg-mode--light .tg-cyber-circle-label {
  color: #0f172a !important;
}
.tg-mode--light .tg-cyber-link-card {
  background: #ffffff !important;
  border-color: rgba(0, 0, 0, 0.08) !important;
  color: #0f172a !important;
  box-shadow: 0 2px 10px rgba(15, 23, 42, 0.05) !important;
}
.tg-mode--light .tg-cyber-link-label {
  color: #0f172a !important;
}
.tg-mode--light .tg-cyber-section__label {
  color: #64748b !important;
}
.tg-mode--light .tg-cyber-social-dock {
  background: rgba(255, 255, 255, 0.9) !important;
  border-color: rgba(0, 0, 0, 0.1) !important;
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.1) !important;
}
.tg-mode--light .tg-cyber-social-btn {
  background: #ffffff !important;
  border-color: rgba(0, 0, 0, 0.1) !important;
  color: #0f172a !important;
}
.tg-mode--light .tg-cyber-footer {
  background: #ffffff !important;
  border-color: rgba(11, 99, 206, 0.18) !important;
  color: #17263a !important;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.1) !important;
}

/* ==============================================================
 * LUXURY NOIR THEME — OPULENT MATTE BLACK & CHAMPAGNE GOLD
 * Inspired by high-end luxury fine dining & bespoke brand designs
 * ============================================================== */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,600;0,700;0,900;1,400&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap');

/* Base Container & App Background */
.tg-public-profile-app.tg-design--luxury_noir {
  background: radial-gradient(circle at 50% 0%, #1e1a14 0%, #0d0e12 60%, #060709 100%) !important;
  color: #f1f5f9;
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
}

/* Luxury Noir Card */
.tg-pp__card--luxury-noir {
  background: rgba(18, 19, 24, 0.96) !important;
  border: 1px solid rgba(212, 175, 55, 0.22) !important;
  border-radius: 32px !important;
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.75), 0 0 40px rgba(212, 175, 55, 0.08) !important;
  overflow: hidden !important;
  color: #f1f5f9 !important;
  padding: 0 0 24px 0 !important;
  box-sizing: border-box !important;
}

/* Cover Header */
.tg-noir-cover-wrap {
  position: relative;
  width: 100%;
  height: 180px;
  overflow: hidden;
}
.tg-noir-cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: contrast(1.05) brightness(0.85);
}
.tg-noir-cover-overlay {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: linear-gradient(180deg, rgba(18, 19, 24, 0.2) 0%, rgba(18, 19, 24, 0.95) 100%);
}

/* Avatar Ring */
.tg-noir-avatar-container {
  display: flex;
  justify-content: center;
  margin-top: -54px;
  position: relative;
  z-index: 10;
}
.tg-noir-avatar-ring {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  padding: 3px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, var(--brand-color, #d4af37) 0%, #fef1c9 50%, #b38728 100%) !important;
  box-shadow: 0 0 30px color-mix(in srgb, var(--brand-color, #d4af37) 35%, transparent);
  flex-shrink: 0;
}
.tg-noir-avatar-wrap {
  margin: 0 !important;
  width: 94px !important;
  height: 94px !important;
  border-radius: 50% !important;
}
.tg-noir-avatar-wrap .tg-pp__avatar {
  width: 94px !important;
  height: 94px !important;
  border-radius: 50% !important;
  border: 3px solid #121318 !important;
  background: #000000 !important;
  object-fit: cover !important;
  display: block;
}

/* Body Content */
.tg-noir-body {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 12px 20px 20px 20px;
  text-align: center;
}

/* Title Row & Typography */
.tg-noir-title-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 4px;
  margin-bottom: 2px;
}
.tg-noir-name {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  color: var(--brand-color, #ffffff) !important;
  letter-spacing: -0.01em;
  margin: 0;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.8);
}
.tg-noir-badge {
  color: #d4af37 !important;
  filter: drop-shadow(0 0 6px rgba(212, 175, 55, 0.5));
}
.tg-noir-tagline {
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 0.18em !important;
  color: #c5a059 !important;
  text-transform: uppercase;
  margin-bottom: 8px;
}
.tg-noir-bio {
  font-size: 13px !important;
  font-weight: 400 !important;
  color: #94a3b8 !important;
  line-height: 1.5;
  max-width: 92%;
  margin-bottom: 24px;
}

/* Section Header Labels */
.tg-noir-section {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 34px !important;
}
.tg-noir-section__label {
  font-size: 11.5px;
  font-weight: 900;
  letter-spacing: 0.14em;
  color: #c5a059;
  margin-bottom: 16px !important;
  text-transform: uppercase;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
}
.tg-noir-sparkle {
  color: #d4af37;
}

/* 4-Column Quick Action Card Grid */
.tg-noir-quick-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 12px !important;
  width: 100%;
  box-sizing: border-box;
}
@media (max-width: 480px) {
  .tg-noir-quick-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 10px !important;
  }
}
.tg-noir-quick-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 16px 12px;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.025);
  border: 1px solid rgba(212, 175, 55, 0.25);
  text-decoration: none;
  transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);
  box-sizing: border-box;
}
.tg-noir-quick-card:hover {
  background: rgba(212, 175, 55, 0.08);
  border-color: rgba(212, 175, 55, 0.6);
  transform: translateY(-3px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4), 0 0 15px rgba(212, 175, 55, 0.2);
}
.tg-noir-quick-card__icon {
  width: 36px;
  height: 36px;
  border-radius: 12px;
  color: #d4af37;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 8px;
}
.tg-noir-quick-card__icon svg {
  width: 24px;
  height: 24px;
}
.tg-noir-quick-card__title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 13.5px;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 3px;
  text-align: center;
}
.tg-noir-quick-card__sub {
  font-size: 10.5px;
  font-weight: 500;
  color: #94a3b8;
  text-align: center;
}

/* Links & Resources List */
.tg-noir-links-list {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 12px !important;
  width: 100%;
}
.tg-noir-link-card {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px 18px;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.025);
  border: 1px solid rgba(212, 175, 55, 0.2);
  text-decoration: none;
  transition: all 0.22s ease;
  box-sizing: border-box;
}
.tg-noir-link-card:hover {
  background: rgba(212, 175, 55, 0.07);
  border-color: rgba(212, 175, 55, 0.5);
  transform: translateX(4px);
}
.tg-noir-link-icon-wrap {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: rgba(212, 175, 55, 0.1);
  border: 1px solid rgba(212, 175, 55, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #d4af37;
  flex-shrink: 0;
}
.tg-noir-link-icon-wrap svg {
  width: 18px;
  height: 18px;
}
.tg-noir-link-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  text-align: left;
  min-width: 0;
}
.tg-noir-link-title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 14.5px;
  font-weight: 700;
  color: #ffffff;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tg-noir-link-sub {
  font-size: 11px;
  font-weight: 500;
  color: #94a3b8;
}
.tg-noir-link-arrow {
  color: #c5a059;
  transition: transform 0.2s ease;
}
.tg-noir-link-card:hover .tg-noir-link-arrow {
  transform: translateX(4px);
  color: #ffffff;
}

/* Social Media Dock (5 per row) */
.tg-noir-social-dock {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 12px !important;
  width: 100%;
  box-sizing: border-box;
}
.tg-noir-social-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 48px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.03) !important;
  border: 1px solid rgba(212, 175, 55, 0.25) !important;
  color: #d4af37 !important;
  transition: all 0.22s ease;
}
.tg-noir-social-btn:hover {
  background: linear-gradient(135deg, #d4af37, #b38728) !important;
  color: #000000 !important;
  border-color: #d4af37 !important;
  transform: translateY(-3px);
  box-shadow: 0 6px 20px rgba(212, 175, 55, 0.35);
}
.tg-noir-social-btn svg {
  width: 20px;
  height: 20px;
}

/* Bottom Business Info Status Card */
.tg-noir-info-card {
  display: flex;
  align-items: center;
  justify-content: space-around;
  width: 100%;
  padding: 14px 18px;
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(212, 175, 55, 0.2);
  box-sizing: border-box;
  margin-top: 10px;
}
.tg-noir-info-item {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #d4af37;
  text-align: left;
}
.tg-noir-info-item strong {
  display: block;
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 13px;
  font-weight: 700;
  color: #ffffff;
}
.tg-noir-info-item span {
  display: block;
  font-size: 11px;
  font-weight: 500;
  color: #94a3b8;
}
.tg-noir-info-divider {
  width: 1px;
  height: 28px;
  background: rgba(212, 175, 55, 0.2);
}

/* Light Mode Overrides for Luxury Noir */
.tg-public-profile-app.tg-mode--light.tg-design--luxury_noir {
  background: linear-gradient(180deg, #fdfbf7 0%, #f4efe6 100%) !important;
  color: #1e1e24;
}
.tg-mode--light .tg-pp__card--luxury-noir {
  background: #ffffff !important;
  border-color: rgba(197, 160, 89, 0.35) !important;
  box-shadow: 0 25px 70px rgba(0, 0, 0, 0.08), 0 0 30px rgba(197, 160, 89, 0.12) !important;
  color: #1e1e24 !important;
}
.tg-mode--light .tg-noir-name {
  color: var(--brand-color, #095dd8) !important;
  text-shadow: none !important;
}
.tg-mode--light .tg-noir-bio {
  color: #475569 !important;
}
.tg-mode--light .tg-noir-quick-card {
  background: #faf8f5 !important;
  border-color: rgba(197, 160, 89, 0.3) !important;
}
.tg-mode--light .tg-noir-quick-card__title {
  color: #1e1e24 !important;
}
.tg-mode--light .tg-noir-link-card {
  background: #faf8f5 !important;
  border-color: rgba(197, 160, 89, 0.25) !important;
}
.tg-mode--light .tg-noir-link-title {
  color: #1e1e24 !important;
}
.tg-mode--light .tg-noir-social-btn {
  background: #faf8f5 !important;
  border-color: rgba(197, 160, 89, 0.3) !important;
}
.tg-mode--light .tg-noir-info-card {
  background: #faf8f5 !important;
  border-color: rgba(197, 160, 89, 0.3) !important;
}
.tg-mode--light .tg-noir-info-item strong {
  color: #1e1e24 !important;
}

/* ==============================================================
 * GLOBAL CONTENT ALIGNMENT SYSTEM (.tg-align--left, --center, --right)
 * Applies seamlessly across all themes (Standard Card, Classic Glass, Nova Prism, Cyber Neon, Luxury Noir, Maison Noir, Éclat Bistro)
 * ============================================================== */

/* Universal Container Width & Flex Behavior */
.tg-pp__card,
.tg-pp__body,
.tg-glass-body,
.tg-cyber-body,
.tg-noir-body,
.tg-maison-body,
.tg-nova-body,
.tg-eclat-body,
.tg-pp__actions,
.tg-pp__links,
.tg-glass-links-grid,
.tg-cyber-links-grid,
.tg-noir-links-grid,
.tg-maison-links-grid,
.tg-nova-links-grid,
.tg-eclat-links-grid {
  width: 100% !important;
  box-sizing: border-box !important;
}

.tg-pp__action,
.tg-pp__link,
.tg-glass-link-item,
.tg-cyber-action-item,
.tg-maison-link-item,
.tg-noir-action-btn,
.tg-nova-card,
.tg-eclat-link-card {
  width: 100% !important;
  box-sizing: border-box !important;
}

/* --------------------------------------------------------------
 * LEFT ALIGNMENT
 * -------------------------------------------------------------- */
.tg-align--left {
  text-align: left !important;
}

.tg-align--left .tg-pp__card,
.tg-align--left .tg-pp__body,
.tg-align--left .tg-cyber-body,
.tg-align--left .tg-noir-body,
.tg-align--left .tg-maison-body,
.tg-align--left .tg-nova-body,
.tg-align--left .tg-glass-body,
.tg-align--left .tg-eclat-body {
  align-items: flex-start !important;
  text-align: left !important;
}

/* Avatar Position - Left */
.tg-align--left .tg-pp__avatar-wrap,
.tg-align--left .tg-pp__avatar,
.tg-align--left .tg-cyber-avatar-container,
.tg-align--left .tg-noir-avatar-container,
.tg-align--left .tg-maison-avatar-container,
.tg-align--left .tg-nova-avatar-header,
.tg-align--left .tg-nova-avatar-container,
.tg-align--left .tg-glass-avatar-container,
.tg-align--left .tg-eclat-avatar-container {
  display: flex !important;
  justify-content: flex-start !important;
  align-self: flex-start !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}

/* Typography Text - Left */
.tg-align--left .tg-pp__name,
.tg-align--left .tg-pp__title,
.tg-align--left .tg-cyber-name,
.tg-align--left .tg-noir-name,
.tg-align--left .tg-maison-name,
.tg-align--left .tg-nova-name,
.tg-align--left .tg-eclat-name,
.tg-align--left .tg-pp__bio,
.tg-align--left .tg-pp__desc,
.tg-align--left .tg-cyber-bio,
.tg-align--left .tg-noir-bio,
.tg-align--left .tg-maison-bio,
.tg-align--left .tg-nova-bio,
.tg-align--left .tg-eclat-bio,
.tg-align--left .tg-noir-tagline,
.tg-align--left .tg-maison-tagline,
.tg-align--left .tg-nova-tagline,
.tg-align--left .tg-eclat-tagline,
.tg-align--left .tg-cyber-section__label,
.tg-align--left .tg-noir-section__label,
.tg-align--left .tg-maison-section__label,
.tg-align--left .tg-nova-section__label,
.tg-align--left .tg-glass-section__label,
.tg-align--left .tg-eclat-section__label,
.tg-align--left .tg-noir-title-row,
.tg-align--left .tg-maison-title-row,
.tg-align--left .tg-nova-title-row,
.tg-align--left .tg-eclat-title-row,
.tg-align--left .tg-eclat-tagline-wrap {
  text-align: left !important;
  justify-content: flex-start !important;
  align-self: flex-start !important;
  width: 100% !important;
}

/* Buttons & Links Inner Content Alignment - Left */
.tg-align--left .tg-pp__action,
.tg-align--left .tg-pp__link,
.tg-align--left .tg-glass-link-item,
.tg-align--left .tg-cyber-action-item,
.tg-align--left .tg-maison-link-item,
.tg-align--left .tg-noir-action-btn,
.tg-align--left .tg-nova-card,
.tg-align--left .tg-eclat-link-card {
  display: flex !important;
  flex-direction: row !important;
  justify-content: flex-start !important;
  align-items: center !important;
  text-align: left !important;
}

/* Social Icon Dock - Left */
.tg-align--left .tg-pp__social-bar,
.tg-align--left .tg-cyber-quick-circles,
.tg-align--left .tg-glass-social-dock,
.tg-align--left .tg-cyber-social-dock,
.tg-align--left .tg-noir-social-dock,
.tg-align--left .tg-maison-social-dock,
.tg-align--left .tg-nova-social-dock,
.tg-align--left .tg-eclat-social-dock {
  display: flex !important;
  justify-content: flex-start !important;
  width: 100% !important;
}

/* --------------------------------------------------------------
 * CENTER ALIGNMENT (DEFAULT)
 * -------------------------------------------------------------- */
.tg-align--center {
  text-align: center !important;
}

.tg-align--center .tg-pp__card,
.tg-align--center .tg-pp__body,
.tg-align--center .tg-cyber-body,
.tg-align--center .tg-noir-body,
.tg-align--center .tg-maison-body,
.tg-align--center .tg-nova-body,
.tg-align--center .tg-glass-body,
.tg-align--center .tg-eclat-body {
  align-items: center !important;
  text-align: center !important;
}

/* Avatar Position - Center */
.tg-align--center .tg-pp__avatar-wrap,
.tg-align--center .tg-pp__avatar,
.tg-align--center .tg-cyber-avatar-container,
.tg-align--center .tg-noir-avatar-container,
.tg-align--center .tg-maison-avatar-container,
.tg-align--center .tg-nova-avatar-header,
.tg-align--center .tg-nova-avatar-container,
.tg-align--center .tg-glass-avatar-container,
.tg-align--center .tg-eclat-avatar-container {
  display: flex !important;
  justify-content: center !important;
  align-self: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Typography Text - Center */
.tg-align--center .tg-pp__name,
.tg-align--center .tg-pp__title,
.tg-align--center .tg-cyber-name,
.tg-align--center .tg-noir-name,
.tg-align--center .tg-maison-name,
.tg-align--center .tg-nova-name,
.tg-align--center .tg-eclat-name,
.tg-align--center .tg-pp__bio,
.tg-align--center .tg-pp__desc,
.tg-align--center .tg-cyber-bio,
.tg-align--center .tg-noir-bio,
.tg-align--center .tg-maison-bio,
.tg-align--center .tg-nova-bio,
.tg-align--center .tg-eclat-bio,
.tg-align--center .tg-noir-tagline,
.tg-align--center .tg-maison-tagline,
.tg-align--center .tg-nova-tagline,
.tg-align--center .tg-eclat-tagline,
.tg-align--center .tg-cyber-section__label,
.tg-align--center .tg-noir-section__label,
.tg-align--center .tg-maison-section__label,
.tg-align--center .tg-nova-section__label,
.tg-align--center .tg-glass-section__label,
.tg-align--center .tg-eclat-section__label,
.tg-align--center .tg-noir-title-row,
.tg-align--center .tg-maison-title-row,
.tg-align--center .tg-nova-title-row,
.tg-align--center .tg-eclat-title-row,
.tg-align--center .tg-eclat-tagline-wrap {
  text-align: center !important;
  justify-content: center !important;
  align-self: center !important;
  width: 100% !important;
}

/* Buttons & Links Inner Content Alignment - Center */
.tg-align--center .tg-pp__action,
.tg-align--center .tg-pp__link,
.tg-align--center .tg-glass-link-item,
.tg-align--center .tg-cyber-action-item,
.tg-align--center .tg-maison-link-item,
.tg-align--center .tg-noir-action-btn,
.tg-align--center .tg-nova-card,
.tg-align--center .tg-eclat-link-card {
  display: flex !important;
  flex-direction: row !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
}

/* Social Icon Dock - Center */
.tg-align--center .tg-pp__social-bar,
.tg-align--center .tg-cyber-quick-circles,
.tg-align--center .tg-glass-social-dock,
.tg-align--center .tg-cyber-social-dock,
.tg-align--center .tg-noir-social-dock,
.tg-align--center .tg-maison-social-dock,
.tg-align--center .tg-nova-social-dock,
.tg-align--center .tg-eclat-social-dock {
  display: flex !important;
  justify-content: center !important;
  width: 100% !important;
}

/* --------------------------------------------------------------
 * RIGHT ALIGNMENT
 * -------------------------------------------------------------- */
.tg-align--right {
  text-align: right !important;
}

.tg-align--right .tg-pp__card,
.tg-align--right .tg-pp__body,
.tg-align--right .tg-cyber-body,
.tg-align--right .tg-noir-body,
.tg-align--right .tg-maison-body,
.tg-align--right .tg-nova-body,
.tg-align--right .tg-glass-body,
.tg-align--right .tg-eclat-body {
  align-items: flex-end !important;
  text-align: right !important;
}

/* Avatar Position - Right */
.tg-align--right .tg-pp__avatar-wrap,
.tg-align--right .tg-pp__avatar,
.tg-align--right .tg-cyber-avatar-container,
.tg-align--right .tg-noir-avatar-container,
.tg-align--right .tg-maison-avatar-container,
.tg-align--right .tg-nova-avatar-header,
.tg-align--right .tg-nova-avatar-container,
.tg-align--right .tg-glass-avatar-container,
.tg-align--right .tg-eclat-avatar-container {
  display: flex !important;
  justify-content: flex-end !important;
  align-self: flex-end !important;
  margin-left: auto !important;
  margin-right: 0 !important;
}

/* Typography Text - Right */
.tg-align--right .tg-pp__name,
.tg-align--right .tg-pp__title,
.tg-align--right .tg-cyber-name,
.tg-align--right .tg-noir-name,
.tg-align--right .tg-maison-name,
.tg-align--right .tg-nova-name,
.tg-align--right .tg-eclat-name,
.tg-align--right .tg-pp__bio,
.tg-align--right .tg-pp__desc,
.tg-align--right .tg-cyber-bio,
.tg-align--right .tg-noir-bio,
.tg-align--right .tg-maison-bio,
.tg-align--right .tg-nova-bio,
.tg-align--right .tg-eclat-bio,
.tg-align--right .tg-noir-tagline,
.tg-align--right .tg-maison-tagline,
.tg-align--right .tg-nova-tagline,
.tg-align--right .tg-eclat-tagline,
.tg-align--right .tg-cyber-section__label,
.tg-align--right .tg-noir-section__label,
.tg-align--right .tg-maison-section__label,
.tg-align--right .tg-nova-section__label,
.tg-align--right .tg-glass-section__label,
.tg-align--right .tg-eclat-section__label,
.tg-align--right .tg-noir-title-row,
.tg-align--right .tg-maison-title-row,
.tg-align--right .tg-nova-title-row,
.tg-align--right .tg-eclat-title-row,
.tg-align--right .tg-eclat-tagline-wrap {
  text-align: right !important;
  justify-content: flex-end !important;
  align-self: flex-end !important;
  width: 100% !important;
}

/* Buttons & Links Inner Content Alignment - Right */
.tg-align--right .tg-pp__action,
.tg-align--right .tg-pp__link,
.tg-align--right .tg-glass-link-item,
.tg-align--right .tg-cyber-action-item,
.tg-align--right .tg-maison-link-item,
.tg-align--right .tg-noir-action-btn,
.tg-align--right .tg-nova-card,
.tg-align--right .tg-eclat-link-card {
  display: flex !important;
  flex-direction: row-reverse !important;
  justify-content: flex-start !important;
  align-items: center !important;
  text-align: right !important;
}

/* Social Icon Dock - Right */
.tg-align--right .tg-pp__social-bar,
.tg-align--right .tg-cyber-quick-circles,
.tg-align--right .tg-glass-social-dock,
.tg-align--right .tg-cyber-social-dock,
.tg-align--right .tg-noir-social-dock,
.tg-align--right .tg-maison-social-dock,
.tg-align--right .tg-nova-social-dock,
.tg-align--right .tg-eclat-social-dock {
  display: flex !important;
  justify-content: flex-end !important;
  width: 100% !important;
}

/* ==============================================================
 * CORNER FLOATING CONTACT ACTION BUTTON (FAB) & ANIMATED SPEED DIAL
 * ============================================================== */

.tg-fab-container {
  position: fixed !important;
  bottom: 24px !important;
  z-index: 999999 !important;
  display: flex !important;
  flex-direction: column !important;
  pointer-events: none !important;
}

.tg-fab-container:not(.tg-fab--rtl) {
  right: 24px !important;
  left: auto !important;
  inset-inline-end: 24px !important;
  inset-inline-start: auto !important;
  align-items: flex-end !important;
}

.tg-fab-container.tg-fab--rtl,
[dir="rtl"] .tg-fab-container {
  right: auto !important;
  left: 24px !important;
  inset-inline-end: auto !important;
  inset-inline-start: 24px !important;
  align-items: flex-start !important;
}

.tg-fab-toggle {
  width: 56px !important;
  height: 56px !important;
  min-width: 56px !important;
  min-height: 56px !important;
  max-width: 56px !important;
  max-height: 56px !important;
  border-radius: 50% !important;
  background: var(--brand-color, #c5a059) !important;
  border: none !important;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.28) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), background 0.3s ease, box-shadow 0.3s ease !important;
  outline: none !important;
  color: #ffffff !important;
  padding: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  flex-shrink: 0 !important;
}

.tg-fab-toggle:hover {
  transform: scale(1.08) !important;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.35) !important;
}

.tg-fab-toggle-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
}
.tg-fab-toggle-icon svg {
  width: 24px !important;
  height: 24px !important;
  max-width: 24px !important;
  max-height: 24px !important;
  flex-shrink: 0 !important;
}

.tg-fab-open .tg-fab-toggle {
  background: #1e293b !important;
  transform: rotate(90deg) scale(1.05) !important;
}

.tg-fab-menu {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 12px !important;
  margin-bottom: 14px !important;
  pointer-events: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(15px) !important;
  transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s !important;
}

.tg-fab-container.tg-fab--rtl .tg-fab-menu,
[dir="rtl"] .tg-fab-container .tg-fab-menu {
  align-items: flex-start !important;
}

.tg-fab-open .tg-fab-menu {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translateY(0) !important;
}

.tg-fab-item {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 10px !important;
  text-decoration: none !important;
  opacity: 0 !important;
  transform: translateY(16px) scale(0.85) !important;
  transition: opacity 0.25s ease, transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
  transition-delay: var(--fab-delay, 0s) !important;
  pointer-events: none !important;
}

.tg-fab-container.tg-fab--rtl .tg-fab-item,
[dir="rtl"] .tg-fab-container .tg-fab-item {
  flex-direction: row-reverse !important;
  justify-content: flex-start !important;
}

.tg-fab-open .tg-fab-item {
  opacity: 1 !important;
  transform: translateY(0) scale(1) !important;
  pointer-events: auto !important;
}

.tg-fab-label {
  background: rgba(15, 23, 42, 0.92) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  color: #ffffff !important;
  padding: 6px 12px !important;
  border-radius: 10px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25) !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
  pointer-events: auto !important;
}

.tg-fab-icon {
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  max-width: 44px !important;
  max-height: 44px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #ffffff !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25) !important;
  border: 1.5px solid rgba(255, 255, 255, 0.35) !important;
  box-sizing: border-box !important;
  flex-shrink: 0 !important;
  transition: transform 0.2s ease !important;
  pointer-events: auto !important;
}
.tg-fab-icon svg {
  width: 20px !important;
  height: 20px !important;
  max-width: 20px !important;
  max-height: 20px !important;
  flex-shrink: 0 !important;
}

.tg-fab-item:hover .tg-fab-icon {
  transform: scale(1.12) !important;
}

/* ==============================================================
 * SUBSCRIPTION PRICING + THEME ACCESS UX
 * ============================================================== */

.tg-plan-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: clamp(22px, 3vw, 30px);
  border: 1px solid rgba(11, 88, 201, 0.14);
  background: #ffffff;
  box-shadow: 0 18px 42px rgba(8, 18, 38, 0.08);
}

.tg-plan-card--popular {
  border: 2px solid var(--brand-blue-600);
  box-shadow: 0 24px 58px rgba(11, 88, 201, 0.18);
  transform: translateY(-6px);
}

.tg-plan-card__badge {
  position: absolute;
  top: -12px;
  right: 20px;
  padding: 5px 12px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--brand-blue-600), var(--brand-blue-800));
  color: #ffffff;
  border: 1px solid rgba(255, 255, 255, .24);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  box-shadow: 0 10px 22px rgba(11, 88, 201, 0.24);
}

.tg-plan-card h3 {
  margin: 0;
  color: var(--ink-950);
  font-size: clamp(20px, 2.4vw, 25px);
  line-height: 1.1;
}

.tg-plan-card__desc {
  min-height: 44px;
  margin: 0;
  color: var(--ink-600);
  font-size: 14px;
  line-height: 1.55;
  font-weight: 650;
}

.tg-plan-card__headline {
  display: block;
  min-height: 42px;
  color: var(--ink-950);
  font-size: 15px;
  line-height: 1.35;
}

.tg-plan-card__price {
  display: flex;
  align-items: baseline;
  gap: 8px;
  padding: 14px 16px;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(11, 88, 201, 0.08), rgba(0, 179, 219, 0.06));
}

.tg-plan-card__price span {
  color: var(--brand-blue-600);
  font-size: clamp(30px, 4vw, 42px);
  line-height: 1;
  font-weight: 950;
}

.tg-plan-card__price small {
  color: var(--ink-600);
  font-size: 13px;
  font-weight: 800;
}

.tg-plan-card__savings {
  color: var(--tag-primary-text);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.tg-plan-card__limits {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.tg-plan-card__limits span {
  padding: 8px 10px;
  border-radius: 999px;
  background: rgba(11, 88, 201, 0.07);
  color: var(--ink-800);
  font-size: 12px;
  font-weight: 850;
  text-align: center;
}

.tg-plan-card__features {
  flex: 1;
  padding-top: 14px;
  border-top: 1px solid rgba(11, 88, 201, 0.1);
}

.tg-plan-card__features > strong {
  display: block;
  margin-bottom: 12px;
  color: var(--ink-950);
  font-size: 13px;
}

.tg-plan-card__features ul {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.tg-plan-card__features li {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  color: var(--ink-700);
  font-size: 13px;
  line-height: 1.45;
  font-weight: 650;
}

.tg-plan-card__features svg {
  flex: 0 0 auto;
  margin-top: 1px;
}

.tg-plan-card > .tg-btn {
  width: 100%;
  justify-content: center;
  margin-top: auto;
}

.tg-pricing-toggle-section {
  padding-top: 18px !important;
}

@media (max-width: 640px) {
  .tg-pricing-toggle-section {
    padding-top: 14px !important;
  }
}

.tg-subscription-alert {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin: 0 0 16px;
  padding: 12px 14px;
  border: 1px solid rgba(190, 18, 60, 0.16);
  border-radius: 14px;
  background: rgba(190, 18, 60, 0.06);
  color: #7f1d1d;
  font-size: 13px;
  line-height: 1.45;
  font-weight: 750;
}

.tg-subscription-alert strong {
  color: #991b1b;
}

.tg-subscription-overview {
  background:
    radial-gradient(circle at 92% 12%, rgba(0, 179, 219, .16), transparent 30%),
    linear-gradient(135deg, rgba(255,255,255,.96), rgba(238,246,255,.9));
}

.tg-subscription-overview .tg-dashboard__panel-head {
  align-items: flex-start;
}

.tg-subscription-overview h1 {
  max-width: 720px;
  margin: 8px 0 0;
  color: var(--ink-950);
  font-size: clamp(30px, 3.7vw, 52px);
  line-height: 1.02;
}

.tg-subscription-overview p {
  max-width: 720px;
  margin: 12px 0 0;
  color: var(--text-700);
  font-weight: 750;
  line-height: 1.55;
}

.tg-subscription-overview__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}

.tg-subscription-overview__plan {
  display: grid;
  gap: 8px;
  margin-top: 10px;
  padding: 18px;
  border: 1px solid rgba(9, 93, 216, .14);
  border-radius: 18px;
  background: rgba(255,255,255,.72);
}

.tg-subscription-overview__plan strong {
  color: var(--color-primary);
  font-size: clamp(24px, 2.6vw, 38px);
  line-height: 1;
}

.tg-subscription-availability__card {
  display: grid;
  gap: 10px;
  padding: 18px;
  background: #fff;
}

.tg-subscription-availability__card > span,
.tg-subscription-theme-list em {
  color: var(--text-600);
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
  text-transform: uppercase;
}

.tg-subscription-availability__card > strong {
  color: var(--ink-950);
  font-size: 20px;
}

.tg-subscription-meter {
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(9, 93, 216, .1);
}

.tg-subscription-meter i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--color-primary), var(--brand-cyan-400));
}

.tg-subscription-feature-list,
.tg-subscription-theme-list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.tg-subscription-feature-list span,
.tg-subscription-theme-list span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  border: 1px solid rgba(9, 93, 216, .14);
  border-radius: 999px;
  background: #f3f7ff;
  color: var(--ink-950);
  font-weight: 850;
}

.tg-subscription-theme-list span.is-locked {
  background: #f8fafc;
  color: var(--text-600);
}

.tg-subscription-theme-list span.is-unlocked em {
  color: var(--color-primary);
}

.tg-design-preview-error {
  display: grid;
  min-height: 180px;
  place-items: center;
  padding: 18px;
  border-radius: 18px;
  background: linear-gradient(135deg, #f8fbff, #e8f2ff);
  color: var(--ink-800);
  font-size: 13px;
  font-weight: 900;
  text-align: center;
}

.tg-plan-access-strip,
.tg-locked-feature-note {
  border: 1px solid rgba(9, 93, 216, .16);
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(9, 93, 216, .08), rgba(219, 234, 254, .72));
  color: var(--ink-800);
}

.tg-plan-access-strip {
  display: grid;
  gap: 6px;
  margin: 0 0 16px;
  padding: 14px 16px;
}

.tg-plan-access-strip__badge,
.tg-feature-lock-pill,
.tg-theme-lock-status {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}

.tg-plan-access-strip__badge {
  padding: 7px 10px;
  background: var(--tag-primary-bg);
  color: var(--tag-primary-text);
  border: 1px solid var(--tag-primary-border);
  box-shadow: var(--tag-primary-shadow);
}

.tg-plan-access-strip strong {
  color: var(--ink-950);
  font-size: 15px;
}

.tg-plan-access-strip p {
  margin: 0;
  color: var(--ink-650);
  font-size: 13px;
  font-weight: 750;
}

.tg-locked-feature-note {
  margin: 8px 0;
  padding: 10px 12px;
  font-size: 12px;
  font-weight: 850;
}

.tg-action-link-row.is-locked,
.tg-social-link-row.is-locked {
  opacity: .72;
}

.tg-action-link-row.is-locked select,
.tg-action-link-row.is-locked input,
.tg-social-link-row.is-locked select,
.tg-social-link-row.is-locked input {
  background: #f1f5f9;
  color: #64748b;
  cursor: not-allowed;
}

.tg-feature-lock-pill,
.tg-theme-lock-status {
  padding: 6px 8px;
  background: #fff1f2;
  color: #be123c;
}

.tg-design-card:not(.is-locked) .tg-theme-lock-status {
  background: var(--tag-primary-bg);
  color: var(--tag-primary-text);
  border-color: var(--tag-primary-border);
}

.tg-design-card__lock-copy {
  margin: 0;
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
}

.tg-theme-gallery-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 20px;
  border: 1px solid rgba(11, 88, 201, 0.13);
  background: #ffffff;
  box-shadow: 0 18px 38px rgba(8, 18, 38, 0.08);
}

.tg-theme-gallery-card.is-locked {
  background: linear-gradient(180deg, #ffffff, #f8fbff);
}

.tg-theme-gallery-card__preview {
  position: relative;
  display: grid;
  place-items: center;
  height: 118px;
  margin-bottom: 16px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--theme-accent, #0b58c9) 32%, transparent);
  border-radius: 16px;
  background:
    radial-gradient(circle at 24% 24%, color-mix(in srgb, var(--theme-accent, #0b58c9) 42%, transparent), transparent 34%),
    linear-gradient(135deg, color-mix(in srgb, var(--theme-accent, #0b58c9) 10%, #ffffff), color-mix(in srgb, var(--theme-accent, #0b58c9) 35%, #0b1830));
}

.tg-theme-gallery-card__orb {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background: var(--theme-accent, #0b58c9);
  color: #ffffff;
  font-size: 14px;
  font-weight: 950;
  box-shadow: 0 12px 28px color-mix(in srgb, var(--theme-accent, #0b58c9) 45%, transparent);
}

.tg-theme-gallery-card__status {
  position: absolute;
  top: 10px;
  right: 10px;
  padding: 4px 9px;
  border-radius: 999px;
  background: #ffffff;
  color: var(--ink-900);
  font-size: 10.5px;
  font-weight: 950;
  text-transform: uppercase;
}

.tg-theme-gallery-card.is-locked .tg-theme-gallery-card__status {
  color: #be123c;
}

.tg-theme-gallery-card__category {
  margin-bottom: 4px;
  color: var(--brand-blue-600);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.tg-theme-gallery-card h3 {
  margin: 0 0 6px;
  color: var(--ink-950);
  font-size: 18px;
}

.tg-theme-gallery-card p {
  min-height: 44px;
  margin: 0 0 16px;
  color: var(--ink-600);
  font-size: 13px;
  line-height: 1.5;
  font-weight: 650;
}

.tg-theme-gallery-card .tg-btn {
  width: 100%;
  justify-content: center;
  margin-top: auto;
}

/* ==========================================================================
   REDESIGNED HUMANIZED HOMEPAGE STYLES & SUB-CONSCIOUS SELLING MACHINE
   ========================================================================== */

.tg-proof-ticker-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--tag-primary-bg-strong);
  border: 1px solid var(--tag-primary-border);
  color: var(--tag-primary-text-on-dark);
  font-size: 12px;
  font-weight: 800;
  padding: 6px 14px;
  border-radius: 30px;
  margin-bottom: 16px;
  box-shadow: 0 4px 20px rgba(11, 88, 201, 0.25);
}

.tg-pulse-dot {
  width: 8px;
  height: 8px;
  background: var(--brand-blue-500);
  border-radius: 50%;
  box-shadow: 0 0 10px #3b82f6;
  animation: tg-pulse-glow 1.5s infinite;
}

@keyframes tg-pulse-glow {
  0% { transform: scale(0.95); opacity: 0.8; }
  50% { transform: scale(1.3); opacity: 1; box-shadow: 0 0 16px #3b82f6; }
  100% { transform: scale(0.95); opacity: 0.8; }
}

.tg-hero-human-title {
  font-size: clamp(32px, 4.5vw, 54px) !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em !important;
  color: #ffffff !important;
  margin: 0 0 18px 0 !important;
}

.tg-text-highlight {
  background: linear-gradient(135deg, #3b82f6 0%, #60a5fa 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-shadow: 0 0 30px rgba(59, 130, 246, 0.4);
}

.tg-btn--hero-main {
  background: linear-gradient(135deg, #0b58c9 0%, #2563eb 100%) !important;
  border: none !important;
  color: #ffffff !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  padding: 16px 28px !important;
  border-radius: 30px !important;
  box-shadow: 0 8px 30px rgba(11, 88, 201, 0.45) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.tg-btn--hero-main:hover {
  transform: translateY(-2px) scale(1.02);
  box-shadow: 0 12px 40px rgba(11, 88, 201, 0.6) !important;
}

.tg-trustline--rich {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
  padding: 0;
  list-style: none;
}

.tg-trustline--rich li {
  font-size: 13px;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.9);
  background: rgba(255, 255, 255, 0.08);
  padding: 6px 14px;
  border-radius: 20px;
  border: 1px solid rgba(255, 255, 255, 0.15);
}

/* FOMO Matrix Cards */
.tg-fomo-card {
  padding: 28px !important;
  border-radius: 20px !important;
  transition: transform 0.3s ease !important;
}

.tg-fomo-card--old {
  background: linear-gradient(135deg, rgba(190, 18, 60, 0.14), rgba(15, 23, 42, 0.75)) !important;
  border: 1px solid rgba(190, 18, 60, 0.35) !important;
}

.tg-fomo-card--new {
  background: linear-gradient(135deg, var(--tag-primary-bg-strong), rgba(11, 88, 201, 0.35)) !important;
  border: 1px solid var(--tag-primary-border) !important;
  box-shadow: var(--tag-primary-shadow) !important;
}

.tg-fomo-badge {
  display: inline-block;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  padding: 4px 12px;
  border-radius: 12px;
  margin-bottom: 12px;
}

.tg-fomo-badge--old {
  background: #be123c;
  color: #fff;
}

/* Interactive Full Cycle Stepper */
.tg-stepper-wrapper {
  margin-top: 32px;
}

.tg-stepper-nav {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  overflow-x: auto;
  padding-bottom: 12px;
  margin-bottom: 32px;
  border-bottom: 1px solid rgba(11, 88, 201, 0.15);
}

.tg-step-tab {
  flex: 1;
  min-width: 170px;
  padding: 14px 16px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.7);
  border: 1px solid rgba(11, 88, 201, 0.15);
  cursor: pointer;
  text-align: left;
  transition: all 0.25s ease;
  position: relative;
}

.tg-step-tab:hover {
  background: rgba(255, 255, 255, 0.95);
  transform: translateY(-2px);
}

.tg-step-tab.is-active {
  background: linear-gradient(135deg, #0b58c9, #053b8c);
  color: #ffffff;
  border-color: #0b58c9;
  box-shadow: 0 10px 30px rgba(11, 88, 201, 0.3);
}

.tg-step-tab__num {
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.05em;
  opacity: 0.75;
  text-transform: uppercase;
  margin-bottom: 4px;
  display: block;
}

.tg-step-tab.is-active .tg-step-tab__num {
  color: rgba(255, 255, 255, 0.85);
}

.tg-step-tab__title {
  font-size: 14px;
  font-weight: 800;
  line-height: 1.25;
  display: block;
}

.tg-step-content-card {
  background: #ffffff;
  border: 1px solid rgba(11, 88, 201, 0.16);
  border-radius: 24px;
  padding: 36px;
  box-shadow: 0 20px 60px rgba(4, 16, 40, 0.08);
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 36px;
  align-items: center;
}

@media (max-width: 900px) {
  .tg-step-content-card {
    grid-template-columns: 1fr;
    padding: 24px;
  }
}

.tg-step-info__tag {
  display: inline-block;
  padding: 6px 14px;
  border-radius: 20px;
  background: var(--tag-primary-bg);
  color: var(--tag-primary-text);
  border: 1px solid var(--tag-primary-border);
  box-shadow: var(--tag-primary-shadow);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.05em;
  margin-bottom: 16px;
}

.tg-step-info h3 {
  font-size: 30px;
  font-weight: 900;
  line-height: 1.15;
  margin-bottom: 14px;
  color: var(--ink-950);
}

.tg-step-info p {
  font-size: 16px;
  line-height: 1.6;
  color: var(--ink-700);
  margin-bottom: 24px;
}

.tg-step-features {
  display: grid;
  gap: 12px;
  margin-bottom: 28px;
  padding: 0;
  list-style: none;
}

.tg-step-features li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 14px;
  font-weight: 700;
  color: var(--ink-900);
}

.tg-step-features li::before {
  content: "✓";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--tag-primary-bg);
  color: var(--tag-primary-text);
  font-weight: 900;
  font-size: 12px;
  flex-shrink: 0;
}

.tg-step-controls {
  display: flex;
  gap: 12px;
}

.tg-step-demo-box {
  background: linear-gradient(135deg, #091936, #050d1e);
  border-radius: 20px;
  padding: 28px;
  color: #ffffff;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.25);
  border: 1px solid rgba(255, 255, 255, 0.1);
  position: relative;
  overflow: hidden;
}

.tg-step-demo-box__badge {
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--tag-primary-text-on-dark);
  margin-bottom: 12px;
  display: block;
}

.tg-demo-theme-btn {
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #ffffff;
  padding: 8px 14px;
  border-radius: 12px;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.2s ease;
}

.tg-demo-theme-btn.is-active {
  background: #3b82f6;
  border-color: #60a5fa;
  box-shadow: 0 4px 14px rgba(59, 130, 246, 0.4);
}

.tg-demo-phone-screen {
  background: #ffffff;
  border-radius: 16px;
  padding: 20px;
  color: var(--ink-950);
  margin-top: 16px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
  text-align: center;
}

/* Stepper Real UI Screenshot Showcase */
.tg-step-screenshot-box {
  width: 100%;
}

/* Dangerous action buttons (e.g. Remove / Delete) */
.tg-biz-action-btn.tg-action--danger {
  color: #ef4444 !important;
  border-color: rgba(239, 68, 68, 0.3) !important;
  background: rgba(239, 68, 68, 0.05) !important;
}

.tg-biz-action-btn.tg-action--danger:hover {
  color: #ffffff !important;
  background: #ef4444 !important;
  border-color: #ef4444 !important;
}

.tg-biz-action-btn.tg-action--danger svg {
  stroke: #ef4444 !important;
}

.tg-biz-action-btn.tg-action--danger:hover svg {
  stroke: #ffffff !important;
}

.tg-action-dropdown-item.tg-action--danger {
  color: #ef4444 !important;
}

.tg-action-dropdown-item.tg-action--danger:hover {
  background: rgba(239, 68, 68, 0.1) !important;
  color: #ef4444 !important;
}

.tg-action-dropdown-item.tg-action--danger svg {
  stroke: #ef4444 !important;
}

.tg-step-screenshot-frame {
  background: #091936;
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid rgba(11, 88, 201, 0.25);
  box-shadow: 0 20px 50px rgba(4, 16, 40, 0.22);
}

.tg-step-screenshot-header {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  background: #061124;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.tg-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  display: inline-block;
}

.tg-dot--red { background: #ff5f56; }
.tg-dot--yellow { background: #ffbd2e; }
.tg-dot--green { background: #27c93f; }

.tg-step-screenshot-title {
  font-size: 11px;
  font-weight: 700;
  color: #94a3b8;
  margin-left: 8px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.tg-step-screenshot-img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.tg-step-screenshot-frame:hover .tg-step-screenshot-img {
  transform: scale(1.02);
}

.tg-fomo-badge--new {
  background: linear-gradient(135deg, var(--brand-blue-600), var(--brand-blue-800));
  color: #fff;
}

.tg-fomo-list {
  list-style: none;
  padding: 0;
  margin: 20px 0 0 0;
  display: grid;
  gap: 16px;
}

.tg-fomo-list li strong {
  display: block;
  font-size: 15px;
  color: #fff !important;
  margin-bottom: 4px;
}

.tg-fomo-list li p {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.82) !important;
  margin: 0;
  line-height: 1.5;
}

/* Pillar Cards */
.tg-pillar-card {
  padding: 26px !important;
  border-radius: 20px !important;
  background: linear-gradient(135deg, rgba(255,255,255,0.12), rgba(255,255,255,0.04)) !important;
  border: 1px solid rgba(255,255,255,0.18) !important;
  transition: transform 0.3s ease, border-color 0.3s ease !important;
}

.tg-pillar-card:hover {
  transform: translateY(-4px);
  border-color: var(--tag-primary-border) !important;
}

.tg-pillar-card__top {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.tg-pillar-icon {
  font-size: 28px;
}

.tg-pillar-tag {
  font-size: 11px;
  font-weight: 900;
  color: var(--tag-primary-text-on-dark);
  background: var(--tag-primary-bg-strong);
  padding: 4px 10px;
  border-radius: 12px;
  border: 1px solid var(--tag-primary-border);
  box-shadow: var(--tag-primary-shadow);
}

/* Solution Tabs */
.tg-solution-tab {
  padding: 12px 22px;
  border-radius: 30px;
  font-size: 14px;
  font-weight: 800;
  background: rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.8);
  border: 1px solid rgba(255, 255, 255, 0.18);
  cursor: pointer;
  transition: all 0.2s ease;
}

.tg-solution-tab.is-active,
.tg-solution-tab:hover {
  background: var(--brand-blue-600);
  color: #fff;
  border-color: var(--brand-blue-500);
  box-shadow: 0 6px 20px rgba(11, 88, 201, 0.4);
}

.tg-solution-benefits-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 10px;
}

.tg-solution-benefits-list li {
  font-size: 14px;
  font-weight: 700;
  color: #fff;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: .001ms !important;
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
  }
  .tg-hero { min-height: auto; }
}

/* ==============================================================
 * RTL FLIP RULES FOR HOME PAGE & FULL WEBSITE (v1.0.386)
 * ============================================================== */

html[dir="rtl"] {
  direction: rtl;
  text-align: right;
}

/* Header RTL Flipping */
html[dir="rtl"] .tg-header__inner {
  flex-direction: row !important;
}

html[dir="rtl"] .tg-nav-item--mega > a::after {
  margin-left: 0 !important;
  margin-right: 7px !important;
}

html[dir="rtl"] .tg-header__actions {
  margin-left: 0 !important;
  margin-right: auto !important;
}

html[dir="rtl"] .tg-nav {
  margin-right: 0 !important;
  margin-left: auto !important;
}

/* Hero Section RTL Flipping */
html[dir="rtl"] .tg-hero__copy.tg-fullscreen-card {
  padding-right: clamp(24px, 4vw, 48px) !important;
  padding-left: clamp(24px, 28vw, 410px) !important;
  text-align: right !important;
}

html[dir="rtl"] .tg-hero__product {
  right: auto !important;
  left: clamp(-260px, -17vw, -126px) !important;
}

html[dir="rtl"] .tg-hero__content {
  text-align: right !important;
  margin-left: auto !important;
  margin-right: 0 !important;
}

html[dir="rtl"] .tg-hero__actions {
  justify-content: flex-start !important;
}

html[dir="rtl"] .tg-trustline {
  justify-content: flex-start !important;
}

html[dir="rtl"] .tg-proof-ticker-pill {
  margin-right: 0 !important;
  margin-left: auto !important;
}

/* Section Head Alignment in RTL */
html[dir="rtl"] .tg-section__head {
  text-align: right !important;
}

html[dir="rtl"] .tg-section__head .tg-lede,
html[dir="rtl"] .tg-section__head .tg-eyebrow,
html[dir="rtl"] .tg-section__head h2 {
  text-align: right !important;
}

/* FOMO Comparison Section RTL */
html[dir="rtl"] .tg-fomo-card {
  text-align: right !important;
}

html[dir="rtl"] .tg-fomo-list li {
  text-align: right !important;
}

/* 4 Pillars Section RTL */
html[dir="rtl"] .tg-pillar-card {
  text-align: right !important;
}

/* Industry Solutions Section RTL */
html[dir="rtl"] .tg-solution-tabs-wrap {
  justify-content: flex-start !important;
}

html[dir="rtl"] .tg-card__link::after {
  margin-left: 0 !important;
  margin-right: 8px !important;
  transform: rotate(225deg) !important;
}

html[dir="rtl"] .tg-tab-button {
  text-align: right !important;
}

html[dir="rtl"] .tg-solution-benefits-list {
  text-align: right !important;
}

/* Live Proof Stats Section RTL */
html[dir="rtl"] .tg-stat-card {
  text-align: right !important;
}

/* Humanized FAQ Accordion RTL */
html[dir="rtl"] .tg-faq-card {
  text-align: right !important;
}

/* Final CTA Section RTL */
html[dir="rtl"] .tg-final {
  direction: rtl !important;
  padding-right: clamp(42px, 7vw, 78px) !important;
  padding-left: clamp(32px, 38vw, 560px) !important;
}

html[dir="rtl"] .tg-final__copy {
  text-align: right !important;
}

html[dir="rtl"] .tg-final__copy .tg-section__actions {
  justify-content: flex-start !important;
}

html[dir="rtl"] .tg-final__image {
  right: auto !important;
  left: clamp(-150px, -10vw, -70px) !important;
}

@media (max-width: 900px) {
  html[dir="rtl"] .tg-final {
    padding-left: clamp(24px, 5vw, 42px) !important;
    padding-right: clamp(24px, 5vw, 42px) !important;
  }
}

/* Breadcrumbs & Navigation Arrows in RTL */
html[dir="rtl"] .tg-breadcrumb-sep,
html[dir="rtl"] .tg-arrow-icon {
  transform: scaleX(-1) !important;
  display: inline-block;
}

/* Background Gradients & Overlay Flipping in RTL */
html[dir="rtl"] .tg-frame-vignette {
  background:
    radial-gradient(circle at 26% 46%, rgba(0, 179, 219, .08), transparent 28rem),
    linear-gradient(270deg, rgba(7, 17, 31, .88), rgba(7, 17, 31, .52) 42%, rgba(7, 17, 31, .18) 100%),
    linear-gradient(180deg, rgba(7, 17, 31, .42), transparent 30%, rgba(7, 17, 31, .58)) !important;
}

html[dir="rtl"] .tg-showcase-hero::after {
  background:
    linear-gradient(180deg, rgba(3,9,20,.06), rgba(3,9,20,.82)),
    linear-gradient(270deg, rgba(3,9,20,.62), transparent 62%) !important;
}

html[dir="rtl"] .tg-showcase-hero__copy {
  text-align: right !important;
}

html[dir="rtl"] .tg-showcase-stat {
  text-align: right !important;
}

/* Pricing Cards & Badges in RTL */
html[dir="rtl"] .tg-plan-card {
  text-align: right !important;
}

html[dir="rtl"] .tg-plan-card__badge {
  right: auto !important;
  left: 20px !important;
}

html[dir="rtl"] .tg-plan-card__price {
  justify-content: flex-start !important;
}

html[dir="rtl"] .tg-plan-card__features li {
  text-align: right !important;
}

/* Comparison Table RTL Flipping */
html[dir="rtl"] .tg-comparison table th,
html[dir="rtl"] .tg-comparison table td {
  text-align: right !important;
}

html[dir="rtl"] .tg-comparison-table,
html[dir="rtl"] .tg-comparison-table th,
html[dir="rtl"] .tg-comparison-table td {
  text-align: right !important;
}

html[dir="rtl"] .tg-comparison th:first-child,
html[dir="rtl"] .tg-comparison td:first-child {
  border-radius: 0 8px 8px 0 !important;
}

html[dir="rtl"] .tg-comparison th:last-child,
html[dir="rtl"] .tg-comparison td:last-child {
  border-radius: 8px 0 0 8px !important;
}

/* How It Works & Step Cards RTL */
html[dir="rtl"] .tg-step-content-card {
  text-align: right !important;
}

html[dir="rtl"] .tg-step-tab {
  text-align: right !important;
}

html[dir="rtl"] .tg-step-screenshot-title {
  margin-left: 0 !important;
  margin-right: 8px !important;
}

html[dir="rtl"] .tg-step-info h3,
html[dir="rtl"] .tg-step-info p {
  text-align: right !important;
}

html[dir="rtl"] .tg-step-features li {
  text-align: right !important;
}

html[dir="rtl"] .tg-step-features li::before {
  margin-right: 0 !important;
  margin-left: 10px !important;
}

/* E-Commerce, Dashboard & Forms RTL */
html[dir="rtl"] .tg-cart-page,
html[dir="rtl"] .tg-checkout-page,
html[dir="rtl"] .tg-single-product,
html[dir="rtl"] .tg-dashboard__panel,
html[dir="rtl"] .tg-dashboard__card,
html[dir="rtl"] .tg-dashboard__form {
  text-align: right !important;
}

/* Dashboard Setup Steps & Activity Rows RTL */
html[dir="rtl"] .tg-dashboard__step,
html[dir="rtl"] .tg-dashboard__activity a,
html[dir="rtl"] .tg-dashboard__activity > div,
html[dir="rtl"] .tg-dashboard__detail-item {
  flex-direction: row-reverse !important;
  text-align: right !important;
}

html[dir="rtl"] .tg-dashboard__step {
  direction: rtl !important;
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  flex-direction: initial !important;
  text-align: right !important;
}

html[dir="rtl"] .tg-dashboard__step strong {
  justify-self: start !important;
  text-align: right !important;
}

html[dir="rtl"] .tg-mini-cart__title-row {
  flex-direction: row-reverse !important;
}

/* Mobile Navigation Drawer & Mini Cart Background Scroll Lock */
html.tg-menu-open,
body.tg-menu-open,
html.tg-cart-open,
body.tg-cart-open {
  overflow: hidden !important;
  touch-action: none !important;
  height: 100vh !important;
}

.tg-mobile-drawer {
  position: fixed;
  inset: 0;
  z-index: 999999;
  visibility: hidden;
  pointer-events: none;
  transition: visibility 0.3s ease;
}

.tg-mobile-drawer.is-open {
  visibility: visible;
  pointer-events: auto;
}

.tg-mobile-drawer__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(7, 17, 31, 0.76);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.tg-mobile-drawer.is-open .tg-mobile-drawer__backdrop {
  opacity: 1;
}

.tg-mobile-drawer__content {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: min(380px, 88vw);
  background: #091220;
  color: #fff;
  display: flex;
  flex-direction: column;
  box-shadow: -12px 0 50px rgba(0, 0, 0, 0.6);
  transform: translateX(100%);
  transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1);
  border-left: 1px solid rgba(255, 255, 255, 0.1);
  z-index: 2;
}

html[dir="rtl"] .tg-mobile-drawer__content {
  right: auto;
  left: 0;
  transform: translateX(-100%);
  border-left: none;
  border-right: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 12px 0 50px rgba(0, 0, 0, 0.6);
}

.tg-mobile-drawer.is-open .tg-mobile-drawer__content {
  transform: translateX(0);
}

.tg-mobile-drawer__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.tg-mobile-drawer__header .tg-logo {
  height: 32px;
  width: auto;
}

.tg-mobile-drawer__close {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.15);
  color: #fff;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  font-size: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background 0.2s ease;
}

.tg-mobile-drawer__close:hover {
  background: rgba(255, 255, 255, 0.18);
}

.tg-mobile-drawer__body {
  flex: 1;
  overflow-y: auto;
  padding: 16px 20px;
  -webkit-overflow-scrolling: touch;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.tg-mobile-link {
  display: flex !important;
  align-items: center !important;
  min-height: 48px !important;
  padding: 10px 14px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  color: rgba(255, 255, 255, 0.92) !important;
  text-decoration: none !important;
  border-radius: 8px !important;
  transition: background 0.2s ease, color 0.2s ease !important;
  flex-shrink: 0 !important;
  box-sizing: border-box !important;
}

.tg-mobile-link:hover,
.tg-mobile-link:focus {
  background: rgba(11, 88, 201, 0.25) !important;
  color: #fff !important;
}

/* Accordion */
.tg-mobile-accordion {
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  margin: 4px 0 !important;
  flex-shrink: 0 !important;
  overflow: hidden !important;
}

.tg-mobile-accordion.is-open {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: rgba(37, 99, 235, 0.4) !important;
}

.tg-mobile-accordion__header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  min-height: 48px !important;
  box-sizing: border-box !important;
}

html[dir="rtl"] .tg-mobile-accordion__header {
  padding-right: 0;
  padding-left: 8px;
}

.tg-mobile-link--acc {
  flex: 1 !important;
  background: transparent !important;
}

.tg-mobile-accordion__toggle {
  background: transparent !important;
  border: none !important;
  color: var(--brand-blue-500, #3b82f6) !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  flex-shrink: 0 !important;
}

.tg-mobile-accordion__panel {
  padding: 6px 12px 14px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.tg-mobile-sublink {
  display: flex !important;
  flex-direction: column !important;
  padding: 10px 12px !important;
  border-radius: 6px !important;
  text-decoration: none !important;
  color: rgba(255, 255, 255, 0.88) !important;
  background: rgba(255, 255, 255, 0.02) !important;
  transition: background 0.2s ease !important;
}

.tg-mobile-sublink strong {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #fff !important;
  line-height: 1.3 !important;
}

.tg-mobile-sublink span {
  font-size: 12px !important;
  color: rgba(255, 255, 255, 0.65) !important;
  line-height: 1.4 !important;
  margin-top: 2px !important;
}

.tg-mobile-sublink:hover {
  background: rgba(37, 99, 235, 0.25) !important;
}

.tg-mobile-sublink--all {
  font-size: 14px !important;
  font-weight: 800 !important;
  color: var(--brand-blue-500, #3b82f6) !important;
  padding: 10px 12px !important;
  margin-top: 4px !important;
  background: rgba(37, 99, 235, 0.12) !important;
  border-radius: 6px !important;
}

/* Footer of Drawer */
.tg-mobile-drawer__footer {
  padding: 16px 20px 24px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  background: #060d17;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.tg-mobile-drawer__langs {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  justify-content: center;
}

.tg-mobile-lang-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 6px 10px;
  border-radius: 20px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.05);
  color: rgba(255, 255, 255, 0.75);
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.2s ease;
}

.tg-mobile-lang-btn.is-active,
.tg-mobile-lang-btn:hover {
  background: #0b58c9;
  border-color: #2563eb;
  color: #fff;
}

.tg-mobile-drawer__buttons {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* Final RTL hardening for public profile link cards. */
html[dir="rtl"] .tg-nova-link-card,
html[dir="rtl"] .tg-cyber-link-card,
html[dir="rtl"] .tg-noir-link-card,
html[dir="rtl"] .tg-glass-link-card,
html[dir="rtl"] .tg-glass-link-item,
html[dir="rtl"] .tg-eclat-link-row,
html[dir="rtl"] .tg-maison-link-card {
  min-width: 0 !important;
  overflow: hidden !important;
}

html[dir="rtl"] .tg-nova-link-content,
html[dir="rtl"] .tg-noir-link-content,
html[dir="rtl"] .tg-eclat-link-content,
html[dir="rtl"] .tg-maison-link-content {
  min-width: 0 !important;
  max-width: 100% !important;
}

html[dir="rtl"] .tg-nova-link-title,
html[dir="rtl"] .tg-nova-link-sub,
html[dir="rtl"] .tg-noir-link-title,
html[dir="rtl"] .tg-noir-link-sub,
html[dir="rtl"] .tg-eclat-link-title,
html[dir="rtl"] .tg-eclat-link-sub,
html[dir="rtl"] .tg-maison-link-title,
html[dir="rtl"] .tg-maison-link-sub,
html[dir="rtl"] .tg-cyber-link-label,
html[dir="rtl"] .tg-glass-link-label,
html[dir="rtl"] .tg-glass-link-item__label {
  display: block !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-align: right !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

html[dir="rtl"] .tg-nova-link-arrow,
html[dir="rtl"] .tg-cyber-link-arrow,
html[dir="rtl"] .tg-noir-link-arrow,
html[dir="rtl"] .tg-glass-link-arrow,
html[dir="rtl"] .tg-glass-link-item__arrow,
html[dir="rtl"] .tg-eclat-link-arrow,
html[dir="rtl"] .tg-maison-link-arrow,
html[dir="rtl"] .tg-nova-link-card:hover .tg-nova-link-arrow,
html[dir="rtl"] .tg-cyber-link-card:hover .tg-cyber-link-arrow,
html[dir="rtl"] .tg-noir-link-card:hover .tg-noir-link-arrow,
html[dir="rtl"] .tg-glass-link-card:hover .tg-glass-link-arrow,
html[dir="rtl"] .tg-glass-link-item:hover .tg-glass-link-item__arrow,
html[dir="rtl"] .tg-eclat-link-row:hover .tg-eclat-link-arrow,
html[dir="rtl"] .tg-maison-link-card:hover .tg-maison-link-arrow {
  flex: 0 0 auto !important;
  transform: scaleX(-1) !important;
}

html[dir="rtl"] .tg-nova-section__label,
html[dir="rtl"] .tg-glass-section__label,
html[dir="rtl"] .tg-cyber-section__label,
html[dir="rtl"] .tg-noir-section__label,
html[dir="rtl"] .tg-maison-section__label,
html[dir="rtl"] .tg-eclat-section__label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}

html[dir="rtl"] .tg-nova-section__label svg,
html[dir="rtl"] .tg-glass-section__label svg,
html[dir="rtl"] .tg-cyber-section__label svg,
html[dir="rtl"] .tg-noir-section__label svg,
html[dir="rtl"] .tg-maison-section__label svg,
html[dir="rtl"] .tg-eclat-section__label svg {
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-inline: 0 !important;
  flex: 0 0 auto !important;
}

/* Internal menu builder and public menu popup */
.tg-menu-builder {
  display: grid;
  gap: 16px;
}

.tg-menu-builder__toolbar,
.tg-menu-builder__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}

.tg-menu-builder__toolbar {
  padding: 14px;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(11, 88, 201, 0.08), rgba(255, 255, 255, 0.82));
}

.tg-menu-builder__toolbar select,
.tg-menu-category-head input,
.tg-menu-item-editor input,
.tg-menu-item-editor textarea,
.tg-public-menu-search input {
  width: 100%;
  border: 1px solid rgba(11, 88, 201, 0.16);
  border-radius: 12px;
  background: #fff;
  color: var(--ink-950);
  font: inherit;
  font-weight: 700;
  padding: 11px 12px;
  outline: none;
}

.tg-menu-builder__toolbar select {
  width: auto;
  min-width: 110px;
}

.tg-menu-builder__language-note {
  display: grid;
  gap: 2px;
  min-width: 0;
  color: var(--ink-950);
}

.tg-menu-builder__language-note strong {
  color: var(--primary);
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.tg-menu-builder__language-note span {
  color: var(--ink-700);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.45;
}

.tg-menu-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 8px 10px;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.78);
  color: var(--ink-950);
  font-size: 13px;
  font-weight: 900;
}

.tg-menu-toggle--small {
  min-height: 34px;
  padding: 6px 8px;
  font-size: 12px;
}

.tg-menu-toggle input {
  accent-color: var(--primary);
}

.tg-menu-upload {
  position: relative;
  overflow: hidden;
}

.tg-menu-upload input {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}

.tg-menu-builder__stats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.tg-menu-builder__stats span {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  border-radius: 999px;
  background: rgba(11, 88, 201, 0.1);
  color: var(--primary);
  padding: 6px 10px;
  font-size: 12px;
  font-weight: 950;
}

.tg-menu-builder__locked,
.tg-menu-builder__empty,
.tg-public-menu-empty,
.tg-public-menu-error {
  padding: 18px;
  border-radius: 16px;
  background: rgba(235, 244, 255, 0.82);
  color: var(--ink-950);
  border: 1px solid rgba(11, 88, 201, 0.14);
}

.tg-menu-builder__locked p,
.tg-menu-builder__empty p {
  margin: 6px 0 0;
  color: var(--ink-700);
  font-weight: 700;
}

.tg-menu-builder__workspace {
  display: grid;
  grid-template-columns: minmax(180px, 240px) minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}

.tg-menu-builder__cats {
  display: grid;
  gap: 8px;
  padding: 10px;
  border-radius: 18px;
  background: linear-gradient(180deg, var(--primary), var(--primary-dark));
}

.tg-menu-cat {
  display: grid;
  gap: 2px;
  width: 100%;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: rgba(255, 255, 255, 0.88);
  padding: 12px;
  text-align: start;
  cursor: pointer;
}

.tg-menu-cat.is-active {
  background: #fff;
  color: var(--ink-950);
  box-shadow: 0 16px 34px rgba(2, 18, 48, 0.18);
}

.tg-menu-cat__name {
  font-weight: 900;
}

.tg-menu-cat small {
  font-weight: 800;
  opacity: 0.78;
}

.tg-menu-builder__panel {
  display: grid;
  gap: 14px;
}

.tg-menu-category-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto auto auto auto;
  gap: 10px;
  align-items: center;
}

.tg-menu-items {
  display: grid;
  gap: 12px;
}

.tg-menu-item-editor {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(120px, 180px);
  gap: 12px;
  padding: 14px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(11, 88, 201, 0.12);
  box-shadow: 0 12px 28px rgba(7, 17, 31, 0.06);
}

.tg-menu-item-editor__main,
.tg-menu-item-editor__side {
  display: grid;
  gap: 9px;
}

.tg-menu-item-editor textarea {
  min-height: 72px;
  resize: vertical;
}

.tg-menu-add-item {
  width: 100%;
  border: 1px dashed rgba(11, 88, 201, 0.38);
  border-radius: 14px;
  background: rgba(11, 88, 201, 0.07);
  color: var(--primary);
  padding: 13px;
  font-weight: 900;
  cursor: pointer;
}

.tg-menu-item-upload {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-height: 38px;
  overflow: hidden;
  border-radius: 12px;
  background: rgba(11, 88, 201, 0.1);
  color: var(--primary);
  padding: 9px 10px;
  font-size: 12px;
  font-weight: 950;
  cursor: pointer;
}

.tg-menu-item-upload input {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}

.tg-menu-preview,
.tg-menu-imports {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid rgba(11, 88, 201, 0.14);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.94), rgba(235, 244, 255, 0.76));
  box-shadow: 0 16px 36px rgba(7, 17, 31, 0.07);
}

.tg-menu-preview__head,
.tg-menu-imports__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.tg-menu-preview__head strong,
.tg-menu-imports__head strong {
  color: var(--ink-950);
  font-weight: 950;
}

.tg-menu-preview__head small,
.tg-menu-imports__head small {
  color: var(--ink-700);
  font-size: 12px;
  font-weight: 850;
}

.tg-menu-preview__cat {
  display: grid;
  gap: 8px;
}

.tg-menu-preview__cat h4 {
  margin: 0;
  color: var(--ink-950);
  font-size: 14px;
  font-weight: 950;
}

.tg-menu-preview__item,
.tg-menu-import-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 10px;
  border: 1px solid rgba(11, 88, 201, 0.1);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.86);
}

.tg-menu-preview__item img {
  width: 42px;
  height: 42px;
  border-radius: 12px;
  object-fit: cover;
}

.tg-menu-preview__item span,
.tg-menu-import-card strong {
  min-width: 0;
  color: var(--ink-950);
  font-weight: 950;
}

.tg-menu-preview__item strong {
  color: var(--primary);
  font-size: 13px;
  font-weight: 950;
  white-space: nowrap;
}

.tg-menu-import-card {
  grid-template-columns: minmax(0, 1fr) auto auto;
}

.tg-menu-import-card small {
  display: block;
  color: var(--ink-700);
  font-size: 11px;
  font-weight: 800;
}

.tg-menu-import-card a,
.tg-menu-import-card__status {
  border-radius: 999px;
  background: rgba(11, 88, 201, 0.1);
  color: var(--primary);
  padding: 6px 10px;
  text-decoration: none;
  font-size: 12px;
  font-weight: 950;
}

.tg-menu-import-card p {
  grid-column: 1 / -1;
  margin: 0;
  color: var(--ink-700);
  font-size: 12px;
  font-weight: 750;
}

.tg-menu-import-card__meta {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.tg-menu-import-card__actions {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.tg-menu-import-card__actions button {
  border: 0;
  border-radius: 12px;
  background: linear-gradient(135deg, var(--primary), var(--primary-dark));
  color: #fff;
  padding: 8px 11px;
  font: inherit;
  font-size: 12px;
  font-weight: 950;
  cursor: pointer;
}

.tg-menu-import-card__actions button:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.tg-menu-import-card__meta span {
  border-radius: 999px;
  background: rgba(11, 88, 201, 0.08);
  color: var(--ink-700);
  padding: 5px 8px;
  font-size: 11px;
  font-weight: 900;
}

.tg-public-menu-overlay {
  position: fixed;
  inset: 0;
  z-index: 1000000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px;
  background: rgba(3, 10, 24, 0.56);
  backdrop-filter: blur(14px);
}

.tg-public-menu-sheet {
  width: min(760px, 100%);
  max-height: min(86vh, 860px);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-radius: 24px;
  background: linear-gradient(180deg, #ffffff, #eef5ff);
  color: var(--ink-950);
  box-shadow: 0 30px 90px rgba(2, 18, 48, 0.38);
}

.tg-public-menu-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 18px;
  border-bottom: 1px solid rgba(11, 88, 201, 0.12);
}

.tg-public-menu-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.tg-public-menu-brand img,
.tg-public-menu-brand > span {
  width: 46px;
  height: 46px;
  border-radius: 14px;
  object-fit: cover;
  display: grid;
  place-items: center;
  background: var(--primary);
  color: #fff;
  font-weight: 900;
}

.tg-public-menu-brand strong {
  display: block;
  font-size: 18px;
  font-weight: 950;
}

.tg-public-menu-brand small {
  display: block;
  color: var(--ink-700);
  font-weight: 800;
}

.tg-public-menu-search,
.tg-public-menu-loading {
  padding: 14px 18px;
}

.tg-public-menu-tabs {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding: 0 18px 14px;
  scrollbar-width: thin;
}

.tg-public-menu-tab {
  flex: 0 0 auto;
  border: 1px solid rgba(11, 88, 201, 0.14);
  border-radius: 999px;
  background: rgba(11, 88, 201, 0.08);
  color: var(--ink-950);
  padding: 9px 14px;
  font-weight: 900;
  cursor: pointer;
}

.tg-public-menu-tab.is-active {
  background: var(--primary);
  color: #fff;
  box-shadow: 0 14px 28px rgba(11, 88, 201, 0.26);
}

.tg-public-menu-items {
  display: grid;
  gap: 10px;
  overflow: auto;
  padding: 0 18px 16px;
}

.tg-public-menu-item {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  padding: 12px;
  border: 1px solid rgba(11, 88, 201, 0.1);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.88);
}

.tg-public-menu-item > img {
  width: 74px;
  height: 74px;
  border-radius: 14px;
  object-fit: cover;
}

.tg-public-menu-item--no-image {
  grid-template-columns: minmax(0, 1fr);
}

.tg-public-menu-item__top {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

.tg-public-menu-item h3,
.tg-public-menu-item p {
  margin: 0;
}

.tg-public-menu-item h3 {
  font-size: 15px;
  font-weight: 950;
}

.tg-public-menu-item p {
  margin-top: 5px;
  color: var(--ink-700);
  font-size: 13px;
  font-weight: 700;
}

.tg-public-menu-price {
  flex: 0 0 auto;
  color: var(--primary);
  font-weight: 950;
  white-space: nowrap;
}

.tg-public-menu-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 9px;
}

.tg-public-menu-badges span {
  border-radius: 999px;
  background: rgba(11, 88, 201, 0.1);
  color: var(--primary);
  padding: 4px 8px;
  font-size: 11px;
  font-weight: 900;
}

.tg-public-menu-foot {
  display: flex;
  gap: 10px;
  padding: 14px 18px 18px;
  border-top: 1px solid rgba(11, 88, 201, 0.12);
}

.tg-public-menu-foot a,
.tg-public-menu-foot button {
  flex: 1;
  border: 0;
  border-radius: 14px;
  background: linear-gradient(135deg, var(--primary), var(--primary-dark));
  color: #fff;
  text-align: center;
  text-decoration: none;
  padding: 12px;
  font: inherit;
  font-weight: 950;
  cursor: pointer;
}

@media (max-width: 720px) {
  .tg-menu-builder__workspace,
  .tg-menu-item-editor,
  .tg-menu-category-head,
  .tg-menu-import-card {
    grid-template-columns: 1fr;
  }

  .tg-menu-builder__cats {
    grid-auto-flow: column;
    grid-auto-columns: minmax(150px, 1fr);
    overflow-x: auto;
  }

  .tg-public-menu-overlay {
    align-items: flex-end;
    padding: 0;
  }

  .tg-public-menu-sheet {
    width: 100%;
    max-height: 92vh;
    border-radius: 24px 24px 0 0;
  }
}

/* Modal-safe internal menu editor */
.tg-modal-editor-sections .tg-menu-builder {
  min-width: 0;
  gap: 14px;
}

.tg-modal-editor-sections .tg-menu-builder__toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(120px, 150px);
  align-items: center;
  gap: 10px;
  padding: 12px;
  border: 1px solid rgba(9, 93, 216, .1);
  border-radius: 16px;
  background: #f6f9ff;
}

.tg-modal-editor-sections .tg-menu-builder__toolbar select {
  width: 100%;
  min-width: 0;
  min-height: 44px;
}

.tg-modal-editor-sections .tg-menu-toggle {
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid rgba(9, 93, 216, .1);
  background: #fff;
}

.tg-modal-editor-sections .tg-menu-builder__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 12px;
  border: 1px solid rgba(9, 93, 216, .1);
  border-radius: 16px;
  background: #fff;
}

.tg-modal-editor-sections .tg-menu-builder__actions .tg-btn {
  min-height: 40px;
  padding: 10px 14px;
  border-radius: 12px;
  font-size: 13px;
}

.tg-modal-editor-sections .tg-menu-builder__actions .tg-btn--primary {
  margin-inline-start: auto;
}

.tg-modal-editor-sections .tg-menu-builder__workspace {
  grid-template-columns: minmax(150px, 210px) minmax(0, 1fr);
  gap: 14px;
  min-width: 0;
}

.tg-modal-editor-sections .tg-menu-builder__cats {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 10px;
  border: 1px solid rgba(9, 93, 216, .1);
  border-radius: 16px;
  background: #f6f9ff;
}

.tg-modal-editor-sections .tg-menu-cat {
  display: flex;
  flex-direction: column;
  gap: 3px;
  border: 1px solid rgba(9, 93, 216, .1);
  background: #fff;
  color: var(--ink-700);
  padding: 11px 12px;
  transition: background .16s ease, color .16s ease, border-color .16s ease, box-shadow .16s ease;
}

.tg-modal-editor-sections .tg-menu-cat.is-active {
  background: linear-gradient(135deg, var(--primary), var(--primary-dark));
  color: #fff;
  border-color: rgba(255, 255, 255, .2);
  box-shadow: 0 12px 26px rgba(11, 88, 201, .18);
}

.tg-modal-editor-sections .tg-menu-builder__panel,
.tg-modal-editor-sections .tg-menu-preview,
.tg-modal-editor-sections .tg-menu-imports {
  min-width: 0;
  padding: 14px;
  border: 1px solid rgba(9, 93, 216, .1);
  border-radius: 16px;
  background: #fff;
  box-shadow: none;
}

.tg-modal-editor-sections .tg-menu-category-head {
  grid-template-columns: minmax(0, 1fr) auto auto auto auto;
}

.tg-modal-editor-sections .tg-menu-category-head > .tg-menu-toggle {
  grid-column: auto;
}

.tg-modal-editor-sections .tg-menu-category-head > button {
  min-height: 38px;
  border: 1px solid rgba(9, 93, 216, .12);
  border-radius: 11px;
  background: #f1f6ff;
  color: var(--color-primary);
  padding: 8px 10px;
  font: inherit;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}

.tg-modal-editor-sections .tg-menu-item-editor {
  grid-template-columns: minmax(0, 1fr) minmax(128px, 168px);
  background: #f8fbff;
  box-shadow: none;
}

@media (max-width: 900px) {
  .tg-form-section__head--with-action {
    grid-template-columns: 1fr;
  }

  .tg-menu-switch {
    justify-self: start;
  }

  .tg-modal-editor-sections .tg-menu-builder__toolbar,
  .tg-modal-editor-sections .tg-menu-builder__workspace,
  .tg-modal-editor-sections .tg-menu-item-editor,
  .tg-modal-editor-sections .tg-menu-category-head {
    grid-template-columns: 1fr;
  }

  .tg-modal-editor-sections .tg-menu-builder__cats {
    flex-direction: row;
    overflow-x: auto;
  }

  .tg-modal-editor-sections .tg-menu-cat {
    min-width: 150px;
  }

  .tg-modal-editor-sections .tg-menu-builder__actions .tg-btn--primary {
    margin-inline-start: 0;
  }
}
