:root{
  --font: Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  --radius: 14px;
  --pad: 14px;
  --app-gutter: 18px;

  --focus: 0 0 0 3px rgba(77,142,240,0.18);

  --shadow: 0 10px 28px rgba(0,0,0,0.10);
  --shadow-soft: 0 6px 18px rgba(0,0,0,0.08);

  --brand-gradient-vert: linear-gradient(180deg, #0f3c3c 0%, #154e4e 35%, #1e52a8 100%);

  /* Corporate website tokens */
  --t9: #041212;
  --t8: #0a2828;
  --t7: #0f3c3c;
  --t6: #154e4e;
  --t5: #1a8080;
  --t4: #1fa8a8;
  --t3: #2dcece;
  --t2: #72e0e0;
  --t1: #b8f0f0;
  --t0: #e8fafa;

  --b6: #1e52a8;
  --b5: #2563eb;
  --b4: #4d8ef0;

  --orange: #f4793a;
  --orange-lt: #f69060;

  --red: #dc2626;
  --amber: #d97706;
  --green: #16a34a;

  --corp-bg: #ffffff;
  --corp-bg2: #f0f8f8;
  --corp-card: #ffffff;
  --corp-txt: #041414;
  --corp-txt2: #1a5050;
  --corp-txt3: #3a8080;
  --corp-bd: rgba(26,110,110,.12);
  --corp-nav-bg: rgba(255,255,255,.97);
  --corp-nav-bd: rgba(26,110,110,.10);
  --corp-nav-tx: #041414;
  --corp-alt: #f0f8f8;
  --corp-hero: linear-gradient(160deg, #0a2828 0%, #0f4242 45%, #0d2840 100%);

  /* Legacy GTM corporate dark tokens */
  --gtm-corp-bg: #081616;
  --gtm-corp-bg2: #0b2020;
  --gtm-corp-card: #0d2626;
  --gtm-corp-txt: #e4f6f6;
  --gtm-corp-txt2: #7ec8c8;
  --gtm-corp-txt3: #2e8080;
  --gtm-corp-bd: rgba(31,168,168,.14);
  --gtm-corp-nav-bg: rgba(8,22,22,.96);
  --gtm-corp-nav-bd: rgba(31,168,168,.15);
  --gtm-corp-nav-tx: #e4f6f6;
  --gtm-corp-alt: #0b1f1f;
  --gtm-corp-hero: linear-gradient(160deg, #081616 0%, #0b2c2c 55%, #081a2a 100%);

  /* Premium GTMbyDesign app dark tokens */
  --gtmbd-app-bg: #031615;
  --gtmbd-app-bg-soft: #061f1d;
  --gtmbd-app-bg-deep: #020d0c;

  --gtmbd-nav-bg: rgba(2, 15, 14, 0.96);
  --gtmbd-sidebar-bg: rgba(5, 28, 27, 0.94);

  --gtmbd-card-bg: rgba(8, 42, 39, 0.88);
  --gtmbd-card-bg-soft: rgba(11, 50, 47, 0.62);
  --gtmbd-card-bg-muted: rgba(255, 255, 255, 0.035);

  /* Softer premium card header */
  --gtmbd-card-header-bg: rgba(2, 15, 14, 0.24);

  --gtmbd-border-subtle: rgba(105, 214, 204, 0.13);
  --gtmbd-border-medium: rgba(105, 214, 204, 0.22);
  --gtmbd-border-strong: rgba(45, 198, 190, 0.48);

  --gtmbd-text-primary: rgba(244, 252, 250, 0.94);
  --gtmbd-text-secondary: rgba(213, 238, 234, 0.74);
  --gtmbd-text-muted: rgba(165, 210, 204, 0.58);

  --gtmbd-teal: #22b8b3;
  --gtmbd-teal-bright: #38d4cd;
  --gtmbd-teal-soft: rgba(34, 184, 179, 0.14);

  --gtmbd-orange: #ff7338;
  --gtmbd-orange-hover: #ff8654;
  --gtmbd-orange-soft: rgba(255, 115, 56, 0.16);

  --gtm-orange: #f4793a;
  --gtm-orange-hover: #f69060;

  --gtm-topbar-border: rgba(255,255,255,0.00);
  --gtm-page-body-border: rgba(255,255,255,0.00);
  --gtm-sf-tabs-bg: linear-gradient(90deg, rgba(8,22,22,.96) 0%, rgba(11,44,44,.96) 100%);

  --gtm-input-bg: rgba(0,0,0,0.16);
  --gtm-input-border: rgba(31,168,168,.22);
  --gtm-input-placeholder: rgba(228,246,246,.55);
  --gtm-input-border-focus: rgba(244,121,58,.55);
  --gtm-input-bg-focus: rgba(0,0,0,0.22);
  --gtm-input-disabled-bg: rgba(0,0,0,0.12);
  --gtm-input-disabled-text: rgba(126,200,200,.72);

  --gtm-form-panel-border: rgba(31,168,168,.22);

  --gtm-subnav-bg: var(--gtm-corp-hero);
  --gtm-subnav-border: rgba(255,255,255,0.10);
  --gtm-subnav-divider: rgba(255,255,255,0.10);
  --gtm-subnav-link: rgba(255,255,255,0.88);
  --gtm-subnav-link-secondary: rgba(255,255,255,0.78);
  --gtm-subnav-link-hover-bg: rgba(255,255,255,0.06);
  --gtm-subnav-link-hover-border: rgba(255,255,255,0.10);
}

html[data-theme="teal"],
html[data-theme="gtmbydesign-light"],
html[data-theme="gtmbydesign-dark"]{
  --brand-primary: var(--t6);
  --brand-primary-2: var(--b6);
  --brand-primary-3: var(--t4);
  --brand-cta: var(--orange);
  --brand-cta-hover: var(--orange-lt);

  --bg: var(--corp-bg);
  --surface: var(--corp-card);
  --surface-2: var(--corp-bg2);
  --border: var(--corp-bd);

  --text: var(--corp-txt);
  --muted: var(--corp-txt2);
  --link: var(--corp-txt);

  --topbar-bg: var(--corp-nav-bg);
  --topbar-border: var(--corp-nav-bd);

  --page-title-bg: linear-gradient(135deg, #FFFFFF 0%, var(--t4) 100%);
  --sf-tabs-bg: linear-gradient(90deg, #FFFFFF 0%, var(--t4) 100%);

  --main-bg: linear-gradient(180deg, var(--corp-bg) 0%, var(--corp-bg2) 100%);

  --page-body-bg: transparent;
  --page-body-border: transparent;

  --sidebar-bg: var(--t7);
  --sidebar-border: rgba(255,255,255,0.12);
  --sidebar-shadow: 10px 0 26px rgba(0,0,0,0.18);

  --nav-text: rgba(255,255,255,0.92);
  --nav-text-muted: rgba(255,255,255,0.72);
  --nav-text-strong: rgba(255,255,255,0.96);

  --input-bg: rgba(17,24,39,0.03);
  --input-border: rgba(17,24,39,0.10);
  --input-text: rgba(17,24,39,0.92);
  --input-placeholder: rgba(17,24,39,0.50);
  --input-border-focus: rgba(31,168,168,0.45);
  --input-bg-focus: rgba(17,24,39,0.05);
  --input-disabled-bg: rgba(17,24,39,0.03);
  --input-disabled-text: rgba(17,24,39,0.50);
}

html[data-theme="gtmbydesign-light"]{
  --corp-bg: var(--gtm-corp-bg);
  --corp-bg2: var(--gtm-corp-bg2);
  --corp-card: var(--gtm-corp-card);
  --corp-txt: var(--gtm-corp-txt);
  --corp-txt2: var(--gtm-corp-txt2);
  --corp-txt3: var(--gtm-corp-txt3);
  --corp-bd: var(--gtm-corp-bd);
  --corp-nav-bg: var(--gtm-corp-nav-bg);
  --corp-nav-bd: var(--gtm-corp-nav-bd);
  --corp-nav-tx: var(--gtm-corp-nav-tx);
  --corp-alt: var(--gtm-corp-alt);
  --corp-hero: var(--gtm-corp-hero);

  --surface: var(--corp-card);
  --surface-2: var(--corp-bg2);
  --border: var(--corp-bd);
  --text: var(--corp-txt);
  --muted: var(--corp-txt2);
  --link: var(--corp-txt);

  --main-bg: var(--corp-hero);
  --topbar-bg: var(--corp-hero);
  --topbar-border: var(--gtm-topbar-border);
  --page-title-bg: var(--corp-hero);
  --sf-tabs-bg: var(--gtm-sf-tabs-bg);

  --page-body-bg: var(--corp-hero);
  --page-body-border: var(--gtm-page-body-border);

  --sidebar-bg: var(--corp-hero);

  --input-bg: var(--gtm-input-bg);
  --input-border: var(--gtm-input-border);
  --input-text: var(--corp-txt);
  --input-placeholder: var(--gtm-input-placeholder);
  --input-border-focus: var(--gtm-input-border-focus);
  --input-bg-focus: var(--gtm-input-bg-focus);
  --input-disabled-bg: var(--gtm-input-disabled-bg);
  --input-disabled-text: var(--gtm-input-disabled-text);

  --form-panel-border: var(--gtm-form-panel-border);

  --subnav-bg: var(--gtm-subnav-bg);
  --subnav-border: var(--gtm-subnav-border);
  --subnav-divider: var(--gtm-subnav-divider);
  --subnav-link: var(--gtm-subnav-link);
  --subnav-link-secondary: var(--gtm-subnav-link-secondary);
  --subnav-link-hover-bg: var(--gtm-subnav-link-hover-bg);
  --subnav-link-hover-border: var(--gtm-subnav-link-hover-border);
}

html[data-theme="gtmbydesign-dark"]{
  --corp-bg: var(--gtmbd-app-bg);
  --corp-bg2: var(--gtmbd-app-bg-soft);
  --corp-card: var(--gtmbd-card-bg);
  --corp-txt: var(--gtmbd-text-primary);
  --corp-txt2: var(--gtmbd-text-secondary);
  --corp-txt3: var(--gtmbd-text-muted);
  --corp-bd: var(--gtmbd-border-subtle);
  --corp-nav-bg: var(--gtmbd-nav-bg);
  --corp-nav-bd: rgba(105, 214, 204, 0.10);
  --corp-nav-tx: var(--gtmbd-text-primary);
  --corp-alt: var(--gtmbd-app-bg-soft);
  --corp-hero:
    radial-gradient(circle at 24% 0%, rgba(34, 184, 179, 0.10), transparent 34%),
    radial-gradient(circle at 90% 12%, rgba(30, 82, 168, 0.10), transparent 30%),
    var(--gtmbd-app-bg);

  --surface: var(--gtmbd-card-bg);
  --surface-2: var(--gtmbd-card-bg-soft);
  --border: var(--gtmbd-border-subtle);
  --text: var(--gtmbd-text-primary);
  --muted: var(--gtmbd-text-secondary);
  --link: var(--gtmbd-text-primary);

  --main-bg:
    radial-gradient(circle at 24% 0%, rgba(34, 184, 179, 0.10), transparent 34%),
    radial-gradient(circle at 90% 12%, rgba(30, 82, 168, 0.10), transparent 30%),
    var(--gtmbd-app-bg);

  --sidebar-bg:
    linear-gradient(180deg, rgba(5, 28, 27, 0.96), rgba(3, 18, 17, 0.96));

  --sidebar-border: rgba(105, 214, 204, 0.11);
  --sidebar-shadow: 10px 0 30px rgba(0, 0, 0, 0.28);

  --topbar-bg: var(--gtmbd-nav-bg);
  --topbar-border: rgba(105, 214, 204, 0.10);

  --page-title-bg: transparent;
  --sf-tabs-bg: rgba(2, 15, 14, 0.46);

  --page-body-bg: transparent;
  --page-body-border: transparent;

  --brand-cta: var(--gtmbd-orange);
  --brand-cta-hover: var(--gtmbd-orange-hover);

  --input-bg: rgba(0, 0, 0, 0.20);
  --input-border: rgba(105, 214, 204, 0.18);
  --input-text: var(--gtmbd-text-primary);
  --input-placeholder: rgba(213, 238, 234, 0.48);
  --input-border-focus: rgba(56, 212, 205, 0.48);
  --input-bg-focus: rgba(0, 0, 0, 0.26);
  --input-disabled-bg: rgba(255, 255, 255, 0.035);
  --input-disabled-text: rgba(165, 210, 204, 0.50);

  --focus: 0 0 0 3px rgba(56, 212, 205, 0.16);

  --form-panel-border: var(--gtmbd-border-subtle);

  --subnav-bg: rgba(2, 15, 14, 0.84);
  --subnav-border: rgba(105, 214, 204, 0.10);
  --subnav-divider: rgba(105, 214, 204, 0.10);
  --subnav-link: rgba(244, 252, 250, 0.84);
  --subnav-link-secondary: rgba(213, 238, 234, 0.70);
  --subnav-link-hover-bg: rgba(34, 184, 179, 0.08);
  --subnav-link-hover-border: rgba(105, 214, 204, 0.16);

  --corp-form-panel-bg: var(--gtmbd-card-bg);
  --corp-form-panel-glow-a: radial-gradient(700px 220px at 15% 0%, rgba(34, 184, 179, 0.10) 0%, rgba(34, 184, 179, 0) 62%);
  --corp-form-panel-glow-b: radial-gradient(620px 260px at 85% 10%, rgba(30, 82, 168, 0.08) 0%, rgba(30, 82, 168, 0) 60%);
}

html[data-theme="teal"],
html[data-theme="gtmbydesign-light"]{
  --corp-form-panel-bg: linear-gradient(160deg, rgba(10,40,40,.96) 0%, rgba(15,60,60,.94) 55%, rgba(13,40,64,.94) 100%);
  --corp-form-panel-glow-a: radial-gradient(900px 220px at 15% 0%, rgba(114,224,224,.22) 0%, rgba(114,224,224,0) 62%);
  --corp-form-panel-glow-b: radial-gradient(640px 260px at 85% 10%, rgba(77,142,240,.18) 0%, rgba(77,142,240,0) 60%);
}

*{ box-sizing:border-box; }

html, body{ height:100%; }

body{
  font-family: var(--font);
  margin: 0;
  padding: 0;
  background: var(--bg);
  color: var(--text);
  height: 100%;
  overflow: hidden;
  font-size: 16px;
  line-height: 1.55;
}

/* Premium dark scrollbar treatment */
html[data-theme="gtmbydesign-dark"] *{
  scrollbar-width: thin;
  scrollbar-color: rgba(105, 214, 204, 0.35) rgba(255, 255, 255, 0.04);
}

html[data-theme="gtmbydesign-dark"] *::-webkit-scrollbar{
  width: 10px;
  height: 10px;
}

html[data-theme="gtmbydesign-dark"] *::-webkit-scrollbar-track{
  background: rgba(255, 255, 255, 0.04);
  border-radius: 999px;
}

html[data-theme="gtmbydesign-dark"] *::-webkit-scrollbar-thumb{
  background: rgba(105, 214, 204, 0.35);
  border-radius: 999px;
  border: 2px solid rgba(3, 22, 21, 0.90);
}

html[data-theme="gtmbydesign-dark"] *::-webkit-scrollbar-thumb:hover{
  background: rgba(105, 214, 204, 0.52);
}

a{ color: var(--link); }

h1, h2, h3{ margin:0; }

h1{
  font-size: 28px;
  line-height: 1.15;
  font-weight: 750;
  letter-spacing: -0.025em;
}

h2{
  line-height: 1.2;
  font-weight: 750;
}

h3{
  font-size: 16px;
  line-height: 1.45;
  font-weight: 500;
  color: var(--muted);
  margin-top: 6px;
}

.app.app-app{
  min-height: 100vh;
  height: 100vh;
  display: grid;
  grid-template-rows: 60px 1fr;
  grid-template-columns: 260px minmax(0, 1fr);
  grid-template-areas: "top top" "nav main";
  overflow: hidden;
}

.topbar{
  grid-area: top;
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height: 60px;
  padding: 0 14px;
  background: var(--header-bg, var(--topbar-bg));
  color: var(--header-text, inherit);
  border-bottom: 1px solid var(--header-border, var(--topbar-border));
}

html[data-theme="gtmbydesign-dark"] .topbar{
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.03);
}

.topbar .brand a{ color: inherit; }

.wordmark{
  height: 40px;
  display:flex;
  align-items:center;
}

.wordmark img{ display:none; height:100%; width:auto; }

html[data-theme="light"] .wordmark .wordmark--light{ display:block; }
html[data-theme="dark"] .wordmark .wordmark--dark{ display:block; }
html[data-theme="teal"] .wordmark .wordmark--teal{ display:block; }
html[data-theme="purple"] .wordmark .wordmark--purple{ display:block; }
html[data-theme="logicalapproach"] .wordmark .wordmark--logicalapproach{ display:block; }
html[data-theme="gtmbydesign-light"] .wordmark .wordmark--light{ display:block; }
html[data-theme="gtmbydesign-dark"] .wordmark .wordmark--dark{ display:block; }

.topbar .center{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  flex: 1 1 auto;
  margin-left: 14px;
}

.mobile-nav-toggle{ display:none; }

.topnav{
  display:flex;
  gap: 14px;
  align-items:center;
}

.topnav a{
  text-decoration:none;
  color: inherit;
  font-weight: 600;
  font-size: 15px;
  padding: 8px 10px;
  border-radius: 10px;
  border: 1px solid transparent;
}

.topnav a:hover{
  background: rgba(0,0,0,0.04);
  border-color: rgba(0,0,0,0.06);
}

.topnav a.is-active{
  background: rgba(31,168,168,0.14);
  border-color: rgba(31,168,168,0.26);
}

html[data-theme="gtmbydesign-dark"] .topnav a{
  color: rgba(244, 252, 250, 0.86);
  font-weight: 650;
  background: transparent;
  border-color: transparent;
}

html[data-theme="gtmbydesign-dark"] .topnav a:hover,
html[data-theme="dark"] .topnav a:hover{
  color: rgba(244, 252, 250, 0.96);
  background: rgba(34, 184, 179, 0.08);
  border-color: rgba(105, 214, 204, 0.16);
}

html[data-theme="gtmbydesign-dark"] .topnav a.is-active{
  color: var(--gtmbd-teal-bright);
  background: transparent;
  border-color: transparent;
  border-bottom: 2px solid var(--gtmbd-teal-bright);
  border-radius: 0;
}

.topbar .right{
  display:flex;
  gap: 10px;
  align-items:center;
}

.topbar .right .topnav.topnav--auth{
  gap: 10px;
}

.topbar .right .topnav.topnav--auth .text-link,
.topbar .right .topnav.topnav--auth .btn{
  white-space: nowrap;
}

.icon-btn{
  border: 1px solid rgba(127,127,127,0.18);
  background: rgba(255,255,255,0.55);
  color: inherit;
  border-radius: 12px;
  padding: 8px 10px;
  cursor: pointer;
  font-weight: 700;
}

html[data-theme="gtmbydesign-dark"] .icon-btn,
html[data-theme="dark"] .icon-btn{
  background: rgba(0, 0, 0, 0.20);
  border-color: rgba(105, 214, 204, 0.14);
  color: rgba(244, 252, 250, 0.90);
}

html[data-theme="gtmbydesign-dark"] .icon-btn:hover{
  background: rgba(34, 184, 179, 0.08);
  border-color: rgba(105, 214, 204, 0.24);
}

.text-link{
  text-decoration:none;
  color: inherit;
  font-weight: 600;
  font-size: 15px;
}

html[data-theme="gtmbydesign-dark"] .text-link{
  color: rgba(244, 252, 250, 0.88);
}

.user-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width: 32px;
  height: 32px;
  border-radius: 999px;
  border: 1px solid var(--user-chip-border, rgba(127,127,127,0.20));
  background: var(--user-chip-bg, rgba(255,255,255,0.55));
  color: var(--user-chip-text, inherit);
  font-weight: 900;
}

html[data-theme="gtmbydesign-dark"] .user-chip,
html[data-theme="dark"] .user-chip{
  background: rgba(34, 184, 179, 0.20);
  border-color: rgba(56, 212, 205, 0.26);
  color: var(--gtmbd-text-primary);
}

.sidebar{
  grid-area: nav;
  background: var(--leftnav-bg, var(--sidebar-bg));
  border-right: 1px solid var(--leftnav-border, var(--sidebar-border));
  box-shadow: var(--leftnav-shadow, var(--sidebar-shadow));
  filter: var(--nav-filter, none);
  padding: 48px 12px 12px;
  overflow-y: auto;
  min-height: 0;
  position: relative;
  z-index: 20;
}

.sidebar-toggle{
  position: absolute;
  top: 10px;
  right: 10px;
  border: 1px solid rgba(255,255,255,0.18);
  background: rgba(0,0,0,0.10);
  color: rgba(255,255,255,0.92);
  border-radius: 12px;
  padding: 6px 8px;
  cursor:pointer;
}

html[data-theme="gtmbydesign-dark"] .sidebar-toggle{
  background: rgba(0, 0, 0, 0.18);
  border-color: rgba(105, 214, 204, 0.16);
  color: rgba(244, 252, 250, 0.84);
}

html[data-theme="gtmbydesign-dark"] .sidebar-toggle:hover{
  background: rgba(34, 184, 179, 0.08);
  border-color: rgba(105, 214, 204, 0.24);
}

.app.app-app.is-nav-collapsed{
  grid-template-columns: 32px minmax(0, 1fr);
}

.app.app-app.is-nav-collapsed .sidebar{
  padding: 12px;
  width: 260px;
  transform: translateX(-228px);
  overflow: visible;
}

.app.app-app.is-nav-collapsed .sidebar .nav-title,
.app.app-app.is-nav-collapsed .sidebar .nav,
.app.app-app.is-nav-collapsed .sidebar .label{
  display:none;
}

.app.app-app.is-nav-collapsed .sidebar .sidebar-toggle{
  width: 28px;
  padding: 8px 0;
  border-radius: 999px;
  position: absolute;
  top: 10px;
  right: 2px;
  background: rgba(255,255,255,0.22);
  border-color: rgba(255,255,255,0.26);
}

.nav-title{
  margin: 10px 6px 8px;
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--leftnav-text-muted, var(--nav-text-muted));
}

html[data-theme="gtmbydesign-dark"] .nav-title{
  color: rgba(165, 210, 204, 0.68);
}

.nav{
  display:flex;
  flex-direction:column;
  gap: 6px;
}

.nav a{
  display:grid;
  grid-template-columns: 28px minmax(0, 1fr);
  align-items:center;
  gap: 8px;
  text-decoration:none;
  padding: 10px 10px;
  border-radius: 12px;
  border: 1px solid transparent;
  background: transparent;
  color: var(--leftnav-text, var(--nav-text));
}

.nav a .icon{ opacity: 0.85; }

.nav a:hover{
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.14);
}

.nav a.is-active,
.nav a.active{
  background: transparent;
  border-color: transparent;
  color: var(--gtmbd-teal-bright);
  font-weight: 900;
}

html[data-theme="gtmbydesign-dark"] .nav a{
  color: rgba(244, 252, 250, 0.86);
  background: transparent;
  border-color: transparent;
}

html[data-theme="gtmbydesign-dark"] .nav a .icon{
  opacity: 0.90;
}

html[data-theme="gtmbydesign-dark"] .nav a:hover{
  background: rgba(34, 184, 179, 0.08);
  border-color: rgba(105, 214, 204, 0.18);
}

html[data-theme="gtmbydesign-dark"] .nav a.is-active,
html[data-theme="gtmbydesign-dark"] .nav a.active{
  color: var(--gtmbd-teal-bright);
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}

.main{
  grid-area: main;
  padding: 0 var(--app-gutter) var(--app-gutter);
  background: var(--main-bg);
  color: var(--main-text, var(--text));
  overflow-y: auto;
  min-height: 0;
}

.main > .page-title,
.main > .sticky-top{
  margin-top: 0;
}

.vix-subnav{
  background: var(--subnav-bg, var(--page-title-bg));
  margin-left: calc(-1 * var(--app-gutter));
  margin-right: calc(-1 * var(--app-gutter));
  margin-top: 0;
  padding: 12px var(--app-gutter);
  border-bottom: 1px solid var(--subnav-border, var(--leftnav-border, rgba(255,255,255,0.10)));
  box-shadow: var(--subnav-shadow, var(--leftnav-shadow, var(--sidebar-shadow)));
  filter: var(--nav-filter, none);
  position: sticky;
  top: 0;
  z-index: 20;
}

html[data-theme="gtmbydesign-dark"] .vix-subnav{
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.18);
}

.vix-subnav-row{
  display:flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items:center;
}

.vix-subnav-row--right{
  justify-content: flex-end;
}

.vix-subnav-divider{
  height: 1px;
  background: var(--subnav-divider, rgba(255,255,255,0.10));
  margin: 10px 0;
}

.vix-subnav-link{
  text-decoration: none;
  color: var(--subnav-text, var(--subnav-link, rgba(255,255,255,0.88)));
  font-weight: 800;
  font-size: 13px;
  padding: 6px 8px;
  border-radius: 10px;
  border: 1px solid transparent;
}

.vix-subnav-link:hover{
  background: var(--subnav-link-hover-bg, rgba(255,255,255,0.06));
  border-color: var(--subnav-link-hover-border, rgba(255,255,255,0.10));
}

.vix-subnav-link.is-active{
  color: var(--subnav-active, var(--brand-cta));
}

html[data-theme="gtmbydesign-dark"] .vix-subnav-link.is-active{
  color: var(--gtmbd-teal-bright);
}

.vix-subnav-row--secondary .vix-subnav-link{
  font-weight: 700;
  font-size: 12.5px;
  color: var(--subnav-link-secondary, rgba(255,255,255,0.78));
}

.vix-subnav-pill-cta{
  background: linear-gradient(135deg, #ff7338, #ff8654);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 12px 26px rgba(255, 115, 56, 0.18);
  padding: 8px 14px;
  border-radius: 999px;
  font-weight: 900;
  text-decoration: none;
}

.vix-subnav-pill-cta:hover{
  background: linear-gradient(135deg, #ff8654, #ff9566);
  border-color: rgba(255, 255, 255, 0.14);
  box-shadow: 0 16px 34px rgba(255, 115, 56, 0.24);
}

.vix-tag{
  display: inline-flex;
  align-items: center;
  margin-left: 10px;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  background: rgba(255,255,255,0.10);
  border: 1px solid rgba(255,255,255,0.14);
  color: rgba(255,255,255,0.92);
}

html[data-theme="gtmbydesign-dark"] .vix-tag{
  background: rgba(34, 184, 179, 0.10);
  border-color: rgba(105, 214, 204, 0.18);
  color: rgba(244, 252, 250, 0.88);
}

.vix-page-body{
  background: var(--page-body-bg, var(--main-bg));
  border: 1px solid var(--page-body-border);
  border-radius: var(--radius);
  padding: 14px;
}

.vix-page-body > .page-title-main{ padding: 0; }

.vix-form-panel{
  background:
    var(--corp-form-panel-glow-a),
    var(--corp-form-panel-glow-b),
    var(--corp-form-panel-bg);
  border: 1px solid var(--form-panel-border, rgba(255,255,255,0.10));
}

html[data-theme="gtmbydesign-dark"] .vix-form-panel{
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.28);
}

.footer-note{
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}

.main > footer.footer-note{
  padding-left: 14px;
  padding-right: 14px;
}

.notice{
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(127,127,127,0.20);
  background: rgba(255,255,255,0.05);
  color: var(--text, inherit);
  font-family: 'Inter', sans-serif;
  font-size: 0.875rem;
  line-height: 1.35;
}

html[data-theme="gtmbydesign-dark"] .notice{
  background: rgba(255, 255, 255, 0.035);
  border-color: rgba(105, 214, 204, 0.12);
  color: var(--gtmbd-text-secondary);
}

.notice.notice--error{
  border-color: rgba(244,121,58,0.35);
  color: var(--gtm-orange);
  background: rgba(244,121,58,0.08);
}

html[data-theme="gtmbydesign-dark"] .notice.notice--error{
  border-color: rgba(255, 115, 56, 0.34);
  color: #ff9a70;
  background: rgba(255, 115, 56, 0.08);
}

.btn{
  border: 1px solid rgba(127,127,127,0.18);
  background: rgba(255,255,255,0.70);
  color: inherit;
  padding: 9px 12px;
  border-radius: 12px;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap: 8px;
  font-family: 'Inter', sans-serif;
  font-size: 0.875rem;
  line-height: 1;
  font-weight: 700;
  transition: transform .12s ease, filter .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

.btn:hover{
  transform: translateY(-1px);
  filter: brightness(1.02);
}

.btn:active{
  transform: translateY(0);
}

.btn.orange{
  border: none;
  color: #fff;
  background: linear-gradient(135deg, rgba(244,121,58,0.96), rgba(246,144,96,0.96));
  box-shadow: 0 14px 30px rgba(244,121,58,0.18);
  font-weight: 800;
}

.btn.orange:hover{
  transform: translateY(-1px);
  filter: brightness(1.03);
}

html[data-theme="gtmbydesign-dark"] .btn,
html[data-theme="dark"] .btn{
  background: rgba(0, 0, 0, 0.18);
  border-color: rgba(105, 214, 204, 0.14);
  color: rgba(244, 252, 250, 0.92);
}

html[data-theme="gtmbydesign-dark"] .btn:hover{
  background: rgba(34, 184, 179, 0.08);
  border-color: rgba(105, 214, 204, 0.24);
}

html[data-theme="gtmbydesign-dark"] .btn.surface2,
html[data-theme="dark"] .btn.surface2{
  background: rgba(255, 255, 255, 0.045);
  border-color: rgba(105, 214, 204, 0.14);
  color: rgba(244, 252, 250, 0.90);
}

html[data-theme="gtmbydesign-dark"] .btn.orange,
html[data-theme="gtmbydesign-dark"] .btn.cta,
html[data-theme="dark"] .btn.orange{
  border: none;
  color: #fff;
  background: linear-gradient(135deg, #ff7338, #ff8654);
  box-shadow: 0 16px 34px rgba(255, 115, 56, 0.22);
  font-weight: 800;
}

html[data-theme="gtmbydesign-dark"] .btn.orange:hover,
html[data-theme="gtmbydesign-dark"] .btn.cta:hover,
html[data-theme="dark"] .btn.orange:hover{
  background: linear-gradient(135deg, #ff8654, #ff9566);
  box-shadow: 0 18px 38px rgba(255, 115, 56, 0.26);
  filter: brightness(1.03);
}

.btn.muted{
  background: transparent;
  border: 1px solid rgba(127,127,127,0.28);
  color: inherit;
  font-weight: 500;
}

.btn.muted:hover{
  transform: translateY(-1px);
  filter: brightness(1.03);
}

html[data-theme="gtmbydesign-dark"] .btn.muted,
html[data-theme="dark"] .btn.muted{
  background: transparent;
  border-color: rgba(105, 214, 204, 0.18);
  color: rgba(244, 252, 250, 0.88);
}

.btn.cta{
  background: var(--brand-cta);
  border-color: rgba(0,0,0,0.10);
  color: #fff;
}

.btn.cta:hover{
  background: var(--brand-cta-hover);
}

.btn.surface2{
  background: var(--surface-2);
}

.gtmbd-cta-arrow{
  --gtmbd-cta-bg: linear-gradient(135deg, rgba(244,121,58,0.98), rgba(246,144,96,0.98));
  --gtmbd-cta-bg-hover: linear-gradient(135deg, rgba(244,121,58,1), rgba(244,121,58,0.90));
  --gtmbd-cta-min-h: 76px;
  --gtmbd-cta-font-size: 22px;
  --gtmbd-cta-arrow-size: 64px;
  position: relative;
  width: 100%;
  min-height: var(--gtmbd-cta-min-h);
  border: none;
  border-radius: 12px;
  background: var(--gtmbd-cta-bg);
  color: #fff;
  font-size: var(--gtmbd-cta-font-size);
  font-weight: 900;
  cursor: pointer;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background 180ms ease, box-shadow 180ms ease, transform 180ms ease, filter 180ms ease;
}

html[data-theme="gtmbydesign-dark"] .gtmbd-cta-arrow{
  --gtmbd-cta-bg: linear-gradient(135deg, #ff7338, #ff8654);
  --gtmbd-cta-bg-hover: linear-gradient(135deg, #ff8654, #ff9566);
  --gtmbd-cta-min-h: 58px;
  --gtmbd-cta-font-size: 18px;
  --gtmbd-cta-arrow-size: 42px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 16px 34px rgba(255, 115, 56, 0.22);
}

.gtmbd-cta-arrow:hover{
  background: var(--gtmbd-cta-bg-hover);
  box-shadow: 0 14px 30px rgba(244,121,58,0.18);
  transform: translateY(-1px);
  filter: brightness(1.02);
}

html[data-theme="gtmbydesign-dark"] .gtmbd-cta-arrow:hover{
  box-shadow: 0 18px 38px rgba(255, 115, 56, 0.26);
}

.gtmbd-cta-arrow:active{
  transform: translateY(0);
}

.gtmbd-cta-arrow:disabled{
  opacity: 0.65;
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
}

.gtmbd-cta-outline{
  position: relative;
  width: 100%;
  min-height: var(--gtmbd-cta-min-h);
  border-radius: 12px;
  border: 1px solid rgba(105, 214, 204, 0.18);
  background: rgba(255, 255, 255, 0.03);
  color: rgba(244, 252, 250, 0.90);
  font-size: var(--gtmbd-cta-font-size);
  font-weight: 900;
  cursor: pointer;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 58px 0 18px;
  transition: background 180ms ease, border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease, filter 180ms ease;
}

html[data-theme="gtmbydesign-dark"] .gtmbd-cta-outline{
  border-color: rgba(105, 214, 204, 0.22);
  background: rgba(255, 255, 255, 0.03);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
}

.gtmbd-cta-outline:hover{
  background: rgba(34, 184, 179, 0.06);
  border-color: rgba(105, 214, 204, 0.32);
  transform: translateY(-1px);
  filter: brightness(1.02);
}

.gtmbd-cta-outline:active{
  transform: translateY(0);
}

.gtmbd-cta-outline:disabled{
  opacity: 0.65;
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
}

.gtmbd-cta-outline-ico{
  position: absolute;
  right: 18px;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  opacity: 0.92;
}

.gtmbd-cta-text{
  position: relative;
  z-index: 2;
}

.gtmbd-cta-arrows{
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  gap: 0;
  z-index: 2;
}

.gtmbd-cta-arrows span{
  display: inline-block;
  font-size: var(--gtmbd-cta-arrow-size);
  line-height: 1;
  font-weight: 300;
  opacity: 0;
  transform: translateX(-28px);
}

.gtmbd-cta-arrow .gtmbd-cta-arrows span:nth-child(1){
  opacity: 1;
  transform: translateX(0);
}

.gtmbd-cta-arrow:hover .gtmbd-cta-arrows span{
  animation: gtmbdArrowSlide 650ms ease forwards;
}

.gtmbd-cta-arrow:hover .gtmbd-cta-arrows span:nth-child(1){
  animation-delay: 0ms;
}

.gtmbd-cta-arrow:hover .gtmbd-cta-arrows span:nth-child(2){
  animation-delay: 80ms;
}

.gtmbd-cta-arrow:hover .gtmbd-cta-arrows span:nth-child(3){
  animation-delay: 160ms;
}

.gtmbd-cta-arrow--compact{
  --gtmbd-cta-min-h: 54px;
  --gtmbd-cta-font-size: 18px;
  --gtmbd-cta-arrow-size: 44px;
}

@keyframes gtmbdArrowSlide{
  0%{ opacity: 0; transform: translateX(-30px); }
  45%{ opacity: 0.55; }
  100%{ opacity: 1; transform: translateX(0); }
}

.sticky-top{
  position: sticky;
  top: 0;
  z-index: 20;
}

.page-title-wrap{
  margin: 0;
  border-radius: var(--radius);
  overflow:hidden;
}

.page-title-main{
  padding: 14px 16px;
}

/* More premium spacing for GTMbyDesign dark title areas */
html[data-theme="gtmbydesign-dark"] .page-title-main{
  padding-top: 22px;
  padding-bottom: 22px;
}

.sticky-top .page-title-wrap{
  background: var(--page-title-bg);
  margin-left: calc(-1 * var(--app-gutter));
  margin-right: calc(-1 * var(--app-gutter));
  border-radius: 0;
}

.page-title-main{
  color: var(--page-title-h1-color, var(--text));
}

.page-title-main h1,
.page-title-main h2{
  color: var(--page-title-h1-color, var(--text));
}

.page-title-main h3:not(.no-pill){
  color: var(--brand-cta);
  display: inline-block;
  padding: 6px 10px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--t7) 0%, var(--t6) 35%, var(--b6) 100%);
}

.page-title-main h3.no-pill{
  display:block;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: var(--page-title-h3-color, var(--muted));
  font-weight: 600;
}

html[data-theme="gtmbydesign-dark"] .page-title-main h3.no-pill{
  color: var(--gtmbd-text-secondary);
  font-weight: 500;
}

.page-title-main .footer-note,
.page-title-main .footer-note code{
  color: var(--page-title-note-color, var(--muted));
}

.pf-row{
  display:grid;
  grid-template-columns: 200px 1fr;
  gap: 14px;
  align-items:center;
  margin-bottom:12px;
}

.page-title{
  background: var(--page-title-bg, var(--main-bg));
  margin-left: calc(-1 * var(--app-gutter));
  margin-right: calc(-1 * var(--app-gutter));
  border-radius: 0 !important;
}

.sf-tabs{
  background: var(--sf-tabs-bg);
}

html[data-theme="gtmbydesign-dark"] .sf-tabs{
  border-color: rgba(105, 214, 204, 0.10);
}

.card{
  padding: 14px;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  background: var(--surface-1-bg, var(--surface));
  color: var(--surface-1-text, var(--card-text, var(--text)));
  box-shadow: var(--shadow-soft);
}

html[data-theme="gtmbydesign-dark"] .card{
  background: var(--gtmbd-card-bg);
  border: 1px solid var(--gtmbd-border-subtle);
  color: var(--gtmbd-text-primary);
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.28);
  border-radius: 18px;
}

.card .footer-note{
  color: var(--card-muted, var(--muted));
}

.card .card-title-bar{
  margin: -14px -14px 12px -14px;
  padding: 10px 12px;
  border-radius: var(--radius) var(--radius) 0 0;
  background: var(--card-title-bg, transparent);
  color: var(--card-title-text, inherit);
}

.card .card-title-bar *{
  color: inherit;
}

/* Softer card title bar */
html[data-theme="gtmbydesign-dark"] .card .card-title-bar{
  background: var(--gtmbd-card-header-bg);
  border-bottom: 1px solid rgba(105, 214, 204, 0.08);
  color: var(--gtmbd-text-primary);
}

.card.card--sub .subcard-title-bar{
  margin: -14px -14px 12px -14px;
  padding: 10px 12px;
  border-radius: var(--radius) var(--radius) 0 0;
  background: var(--subcard-title-bg, var(--card-title-bg, transparent));
  color: var(--subcard-title-text, var(--card-title-text, inherit));
}

.card.card--sub .subcard-title-bar *{
  color: inherit;
}

/* Softer subcard title bar */
html[data-theme="gtmbydesign-dark"] .card.card--sub .subcard-title-bar{
  background: var(--gtmbd-card-header-bg);
  border-bottom: 1px solid rgba(105, 214, 204, 0.08);
  color: var(--gtmbd-text-primary);
}

.card.card--sub{
  background: var(--surface-2-bg, var(--subcard-bg, var(--surface-2)));
  color: var(--surface-2-text, var(--subcard-text, var(--surface-1-text, var(--card-text, var(--text)))));
}

html[data-theme="gtmbydesign-dark"] .card.card--sub,
html[data-theme="gtmbydesign-dark"] .card.card--alt{
  background: var(--gtmbd-card-bg-soft);
  border-color: rgba(105, 214, 204, 0.11);
}

.card.card--sub .footer-note{
  color: var(--subcard-muted, var(--card-muted, var(--muted)));
}

.card.card--chat{
  background: var(--chat-bg, var(--surface-3-bg, var(--surface-2-bg, var(--subcard-bg, var(--surface-2)))));
  color: var(--chat-text, var(--surface-3-text, var(--surface-2-text, var(--subcard-text, var(--surface-1-text, var(--card-text, var(--text)))))));
  border-color: var(--chat-border, var(--border));
}

html[data-theme="gtmbydesign-dark"] .card.card--chat{
  background: var(--gtmbd-card-bg);
  border-color: var(--gtmbd-border-subtle);
  color: var(--gtmbd-text-primary);
}

.card.card--chat .card-title-bar{
  background: var(--chat-title-bg, var(--card-title-bg, transparent));
  color: var(--chat-title-text, var(--card-title-text, inherit));
}

.card.card--chat .card-title-bar *{
  color: inherit;
}

/* Softer chat card title bar */
html[data-theme="gtmbydesign-dark"] .card.card--chat .card-title-bar{
  background: var(--gtmbd-card-header-bg);
  border-bottom: 1px solid rgba(105, 214, 204, 0.08);
  color: var(--gtmbd-text-primary);
}

.card.card--chat .footer-note{
  color: var(--chat-muted, var(--subcard-muted, var(--card-muted, var(--muted))));
}

html[data-theme="gtmbydesign-dark"] .card .footer-note,
html[data-theme="gtmbydesign-dark"] .card.card--sub .footer-note,
html[data-theme="gtmbydesign-dark"] .card.card--chat .footer-note{
  color: var(--gtmbd-text-muted);
}

.card.card--chat input,
.card.card--chat select,
.card.card--chat textarea{
  background: var(--chat-input-bg, var(--input-bg));
  border-color: var(--chat-input-border, var(--input-border));
  color: var(--chat-input-text, var(--input-text, var(--text)));
}

.card.card--chat input::placeholder,
.card.card--chat textarea::placeholder{
  color: var(--chat-input-placeholder, var(--input-placeholder));
}

.card.card--chat .btn.cta{
  background: var(--chat-btn-primary-bg, var(--brand-cta));
  color: var(--chat-btn-primary-text, #fff);
  border-color: var(--chat-btn-primary-border, rgba(0,0,0,0.10));
}

.card.card--chat .btn.cta:hover{
  background: var(--chat-btn-primary-hover-bg, var(--brand-cta-hover));
}

.card.card--chat .btn.surface2,
.card.card--chat .btn.surface2lite{
  background: var(--chat-btn-secondary-bg, var(--surface-2));
  color: var(--chat-btn-secondary-text, inherit);
  border-color: var(--chat-btn-secondary-border, rgba(127,127,127,0.18));
}

.card.card--chat .btn.surface2:hover,
.card.card--chat .btn.surface2lite:hover{
  filter: brightness(1.02);
}

.card.card--alt{
  background: var(--surface-2-bg, var(--surface-2));
}

.card.is-active,
.card.is-featured,
.app-card-active,
.app-card-featured{
  border-color: var(--gtmbd-border-strong);
  box-shadow:
    0 0 0 1px rgba(45, 198, 190, 0.16),
    0 28px 80px rgba(0, 0, 0, 0.34);
}

/* Slightly lifted question cards */
html[data-theme="gtmbydesign-dark"] .question-card,
html[data-theme="gtmbydesign-dark"] .assessment-question-card,
html[data-theme="gtmbydesign-dark"] .question-panel,
html[data-theme="gtmbydesign-dark"] .assessment-panel{
  background: rgba(11, 50, 47, 0.70);
  border: 1px solid rgba(105, 214, 204, 0.14);
}

input, select, textarea{
  width:100%;
  padding:10px 12px;
  border-radius: 12px;
  border: 1px solid var(--input-border);
  background: var(--input-bg);
  color: var(--input-text, var(--text));
  outline:none;
}

input::placeholder,
textarea::placeholder{
  color: var(--input-placeholder);
}

input:focus,
select:focus,
textarea:focus{
  border-color: var(--input-border-focus);
  background: var(--input-bg-focus, var(--input-bg));
  box-shadow: var(--focus);
}

input:disabled,
select:disabled,
textarea:disabled{
  background: var(--input-disabled-bg);
  color: var(--input-disabled-text);
}

/* Rating options: calmer by default, stronger only when selected */
html[data-theme="gtmbydesign-dark"] .rating-label{
  opacity: 0.86;
}

html[data-theme="gtmbydesign-dark"] .rating-option:not(.is-selected),
html[data-theme="gtmbydesign-dark"] .rating-choice:not(.is-selected),
html[data-theme="gtmbydesign-dark"] .score-option:not(.is-selected),
html[data-theme="gtmbydesign-dark"] .score-choice:not(.is-selected){
  background: rgba(255, 255, 255, 0.035);
  border-color: rgba(105, 214, 204, 0.10);
}

html[data-theme="gtmbydesign-dark"] .rating-option:not(.is-selected):hover,
html[data-theme="gtmbydesign-dark"] .rating-choice:not(.is-selected):hover,
html[data-theme="gtmbydesign-dark"] .score-option:not(.is-selected):hover,
html[data-theme="gtmbydesign-dark"] .score-choice:not(.is-selected):hover{
  background: rgba(34, 184, 179, 0.08);
  border-color: rgba(105, 214, 204, 0.20);
}

.gar-meta-5col{
  display:grid;
  grid-template-columns: 2.1fr 1fr 1fr 1fr auto;
  gap: 0;
  align-items: center;
}

.gar-meta-5col > .gar-meta-cell{
  padding: 12px 14px;
  min-width: 0;
}

.gar-meta-5col > .gar-meta-cell + .gar-meta-cell{
  border-left: 1px solid rgba(105, 214, 204, 0.16);
}

.gar-meta-k{
  font-size: 11px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  opacity: 0.70;
}

.gar-meta-v{
  margin-top: 6px;
  font-weight: 900;
  color: rgba(244, 252, 250, 0.92);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.gar-meta-action{
  display:flex;
  justify-content: flex-end;
  padding-right: 12px;
}

.gar-sit-grid{
  display:grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(0, 0.7fr);
  gap: 0;
}

.gar-sit-left{
  padding: 18px 18px;
  min-width: 0;
}

.gar-sit-right{
  padding: 18px 18px;
  min-width: 0;
  border-left: 1px solid rgba(105, 214, 204, 0.16);
}

.gar-kicker{
  font-size: 11px;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  opacity: 0.70;
  font-weight: 900;
}

.gar-sit-headline{
  margin-top: 10px;
  font-size: 24px;
  line-height: 1.24;
  font-weight: 1000;
  color: rgba(244, 252, 250, 0.94);
}

.gar-sit-body{
  margin-top: 14px;
  color: rgba(213, 238, 234, 0.72);
  line-height: 1.6;
}

.gar-maturity-score{
  margin-top: 14px;
  font-size: 64px;
  line-height: 1;
  font-weight: 1000;
  background: linear-gradient(180deg, rgba(34,197,94,0.95) 0%, rgba(34,197,94,0.65) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.gar-maturity-label{
  margin-top: 8px;
  font-weight: 1000;
  color: rgba(244, 252, 250, 0.90);
}

.gar-maturity-bar{
  margin-top: 12px;
  display:grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 6px;
  align-items: center;
}

.gar-maturity-bar > span{
  height: 7px;
  border-radius: 999px;
  background: rgba(148, 163, 184, 0.14);
  border: 1px solid rgba(105, 214, 204, 0.10);
}

.gar-maturity-bar > span.is-r{
  background: rgba(239, 68, 68, 0.78);
  border-color: rgba(239, 68, 68, 0.30);
}

.gar-maturity-bar > span.is-o{
  background: rgba(255, 115, 56, 0.78);
  border-color: rgba(255, 115, 56, 0.30);
}

.gar-maturity-bar > span.is-y{
  background: rgba(234, 179, 8, 0.80);
  border-color: rgba(234, 179, 8, 0.30);
}

.gar-maturity-bar > span.is-g{
  background: rgba(34, 197, 94, 0.60);
  border-color: rgba(34, 197, 94, 0.22);
}

.gar-maturity-note{
  margin-top: 14px;
  font-size: 12px;
  line-height: 1.5;
  color: rgba(165, 210, 204, 0.62);
}

.gar-maturity-note a{
  color: rgba(126, 200, 200, 0.86);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.gar-kicker-row{
  display:flex;
  align-items:center;
  gap: 10px;
  margin-bottom: 10px;
}

.gar-kicker-ico{
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  opacity: 0.90;
}

.gar-subnote{
  margin-top: 10px;
  color: rgba(165, 210, 204, 0.62);
  line-height: 1.5;
}

.gar-rank-list{
  display:flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 12px;
}

.gar-rank-row{
  display:grid;
  grid-template-columns: 28px minmax(0, 1fr) 54px 92px;
  gap: 12px;
  align-items: center;
  padding: 12px 12px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(105, 214, 204, 0.10);
}

.gar-rank-badge{
  width: 26px;
  height: 26px;
  border-radius: 999px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight: 1000;
  font-size: 12px;
  color: rgba(244, 252, 250, 0.92);
  border: 1px solid rgba(105, 214, 204, 0.18);
  background: rgba(148, 163, 184, 0.10);
}

.gar-rank-badge.is-strong{
  background: rgba(34, 197, 94, 0.20);
  border-color: rgba(34, 197, 94, 0.26);
}

.gar-rank-badge.is-early{
  background: rgba(239, 68, 68, 0.18);
  border-color: rgba(239, 68, 68, 0.26);
}

.gar-rank-badge.is-developing{
  background: rgba(234, 179, 8, 0.16);
  border-color: rgba(234, 179, 8, 0.24);
}

.gar-rank-title{
  font-weight: 1000;
  color: rgba(244, 252, 250, 0.92);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.gar-rank-score{
  text-align: center;
  font-weight: 1000;
  color: rgba(244, 252, 250, 0.82);
}

.gar-rank-status{
  text-align: right;
  font-weight: 1000;
}

.gar-rank-status.is-strong{ color: rgba(34, 197, 94, 0.90); }
.gar-rank-status.is-early{ color: rgba(239, 68, 68, 0.88); }
.gar-rank-status.is-developing{ color: rgba(234, 179, 8, 0.90); }

.gar-dual-card-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
}

.gar-dual-card-col{
  padding: 16px 16px;
  min-width: 0;
}

.gar-dual-card-col + .gar-dual-card-col{
  border-left: 1px solid rgba(105, 214, 204, 0.16);
}

.gar-focus-list{
  display:flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 12px;
}

.gar-focus-row{
  display:grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
  padding: 12px 12px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(105, 214, 204, 0.10);
}

.gar-focus-num{
  width: 26px;
  height: 26px;
  border-radius: 999px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight: 1000;
  font-size: 12px;
  color: rgba(244, 252, 250, 0.92);
  border: 1px solid rgba(105, 214, 204, 0.18);
  background: rgba(148, 163, 184, 0.10);
}

.gar-focus-title{
  font-weight: 1000;
  color: rgba(244, 252, 250, 0.92);
}

.gar-focus-desc{
  margin-top: 6px;
  color: rgba(213, 238, 234, 0.70);
  line-height: 1.5;
  font-size: 13px;
}

.gar-focus-tag{
  margin-top: 2px;
  padding: 6px 10px;
  border-radius: 999px;
  font-weight: 1000;
  font-size: 12px;
  border: 1px solid rgba(105, 214, 204, 0.18);
  background: rgba(148, 163, 184, 0.08);
  color: rgba(244, 252, 250, 0.80);
  white-space: nowrap;
}

.gar-focus-tag.is-early{
  background: rgba(239, 68, 68, 0.14);
  border-color: rgba(239, 68, 68, 0.22);
  color: rgba(239, 68, 68, 0.92);
}

.gar-focus-tag.is-developing{
  background: rgba(234, 179, 8, 0.14);
  border-color: rgba(234, 179, 8, 0.22);
  color: rgba(234, 179, 8, 0.95);
}

.gar-lead-list{
  display:flex;
  flex-direction: column;
  gap: 12px;
  margin-top: 14px;
}

.gar-lead-row{
  display:grid;
  grid-template-columns: 26px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
}

.gar-lead-ico{
  width: 26px;
  height: 26px;
  border-radius: 999px;
  display:flex;
  align-items:center;
  justify-content:center;
  border: 1px solid rgba(105, 214, 204, 0.18);
  background: rgba(255, 255, 255, 0.03);
  color: rgba(126, 200, 200, 0.86);
  font-weight: 1000;
  font-size: 12px;
}

.gar-lead-q{
  color: rgba(244, 252, 250, 0.88);
  line-height: 1.45;
}

.gar-nextsteps-bar{
  display:grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 12px;
  align-items: center;
}

.gar-nextsteps-left{
  min-width: 0;
}

.gar-nextsteps-center{
  display:flex;
  justify-content: center;
}

.gar-nextsteps-right{
  display:flex;
  justify-content: flex-end;
}

.vix-grid-1col{
  display:grid;
  grid-template-columns: 1fr;
  gap: 12px;
  align-items: start;
}

.vix-grid-2col{
  display:grid;
  grid-template-columns: 1fr 420px;
  gap: 12px;
  align-items: start;
}

.vix-grid-span-all{
  grid-column: 1 / -1;
}

/* Card spacing for stacked columns inside 2-col layouts (prevents cards from touching) */
.vix-page-body .vix-grid-2col > div > .card + .card{
  margin-top: 12px;
}

.vix-page-body .vix-grid-2col > div > .card + .gar-3up{
  margin-top: 12px;
}

.vix-page-body .vix-grid-2col > div > .gar-3up + .card{
  margin-top: 12px;
}

.vix-grid-3col{
  display:grid;
  grid-template-columns: 320px minmax(0, 1fr) 360px;
  gap: 12px;
  align-items: start;
}

.vix-mb-12{
  margin-bottom: 12px;
}

.vix-grid-auto-fit-220{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 12px;
}

.vix-card-border-soft{
  border: 1px solid rgba(255,255,255,0.10);
}

html[data-theme="gtmbydesign-dark"] .vix-card-border-soft{
  border-color: rgba(105, 214, 204, 0.10);
}

.vix-actions-row{
  display:flex;
  justify-content:flex-end;
  margin-top: 10px;
}

.vix-table-wrap{
  overflow:auto;
}

.vix-table{
  width:100%;
  border-collapse: collapse;
}

.vix-table th,
.vix-table td{
  padding: 10px 12px;
  border-bottom: 1px solid var(--table-row-border, rgba(255,255,255,0.10));
}

html[data-theme="gtmbydesign-dark"] .vix-table th,
html[data-theme="gtmbydesign-dark"] .vix-table td{
  border-bottom-color: rgba(105, 214, 204, 0.10);
}

.vix-table th{
  text-align:left;
  font-weight: 800;
}

html[data-theme="gtmbydesign-dark"] .vix-table th{
  color: rgba(244, 252, 250, 0.88);
}

html[data-theme="gtmbydesign-dark"] .vix-table td{
  color: rgba(213, 238, 234, 0.78);
}

.vix-spacer-10{ height: 10px; }
.vix-spacer-12{ height: 12px; }
.vix-spacer-14{ height: 14px; }

.vix-label-strong{
  font-weight: 900;
}

.status-focus-card{
  margin:0;
  padding:0;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  background: var(--status-card-bg);
  color: var(--status-card-text);
}

html[data-theme="gtmbydesign-dark"] .status-focus-card{
  background: rgba(255, 255, 255, 0.035);
  border-color: rgba(105, 214, 204, 0.10);
}

.status-focus-card .status-focus-card-title{
  padding:10px 12px;
  font-weight:800;
  background: var(--status-title-bg);
  color: var(--status-title-text);
}

.status-focus-card .status-focus-card-title *{
  color: inherit;
}

.status-focus-card .status-focus-card-body{
  padding:12px;
  flex: 1;
  background: transparent;
  color: inherit;
}

.status-focus-card .status-focus-card-body *{
  color: inherit;
}

html[data-theme="gtmbydesign-dark"] .status-focus-card .status-focus-card-body{
  color: var(--gtmbd-text-secondary);
}

.status-focus-card.status-focus-card--at-risk{
  --status-title-bg: var(--status-at-risk-title-bg, linear-gradient(90deg, rgba(231,76,60,0.95), rgba(231,76,60,0.70)));
  --status-title-text: var(--status-at-risk-title-text, rgba(255,255,255,0.96));
  --status-card-bg: var(--status-at-risk-card-bg, transparent);
  --status-card-text: var(--status-at-risk-card-text, inherit);
}

.status-focus-card.status-focus-card--due-soon{
  --status-title-bg: var(--status-due-soon-title-bg, linear-gradient(90deg, rgba(243,156,18,0.95), rgba(243,156,18,0.70)));
  --status-title-text: var(--status-due-soon-title-text, rgba(255,255,255,0.96));
  --status-card-bg: var(--status-due-soon-card-bg, transparent);
  --status-card-text: var(--status-due-soon-card-text, inherit);
}

.status-focus-card.status-focus-card--opportunity{
  --status-title-bg: var(--status-opportunity-title-bg, linear-gradient(90deg, rgba(46,204,113,0.95), rgba(46,204,113,0.70)));
  --status-title-text: var(--status-opportunity-title-text, rgba(255,255,255,0.96));
  --status-card-bg: var(--status-opportunity-card-bg, transparent);
  --status-card-text: var(--status-opportunity-card-text, inherit);
}

.status-focus-card.status-focus-card--momentum{
  --status-title-bg: var(--status-momentum-title-bg, linear-gradient(90deg, rgba(52,152,219,0.95), rgba(52,152,219,0.70)));
  --status-title-text: var(--status-momentum-title-text, rgba(255,255,255,0.96));
  --status-card-bg: var(--status-momentum-card-bg, transparent);
  --status-card-text: var(--status-momentum-card-text, inherit);
}

html[data-theme="gtmbydesign-dark"] .status-focus-card.status-focus-card--at-risk{
  --status-at-risk-title-bg: linear-gradient(90deg, rgba(220, 38, 38, 0.82), rgba(220, 38, 38, 0.44));
}

html[data-theme="gtmbydesign-dark"] .status-focus-card.status-focus-card--due-soon{
  --status-due-soon-title-bg: linear-gradient(90deg, rgba(217, 119, 6, 0.82), rgba(217, 119, 6, 0.44));
}

html[data-theme="gtmbydesign-dark"] .status-focus-card.status-focus-card--opportunity{
  --status-opportunity-title-bg: linear-gradient(90deg, rgba(22, 163, 74, 0.82), rgba(22, 163, 74, 0.44));
}

html[data-theme="gtmbydesign-dark"] .status-focus-card.status-focus-card--momentum{
  --status-momentum-title-bg: linear-gradient(90deg, rgba(37, 99, 235, 0.78), rgba(37, 99, 235, 0.42));
}

/* Common disclaimer naming patterns */
.disclaimer,
.legal-disclaimer,
.assessment-disclaimer{
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid rgba(105, 214, 204, 0.10);
  color: var(--gtmbd-text-muted);
}

.disclaimer h3,
.legal-disclaimer h3,
.assessment-disclaimer h3{
  color: rgba(244, 252, 250, 0.84);
}

@media (max-width: 920px){
  .pf-row{
    grid-template-columns: 1fr;
  }

  .app.app-app{
    grid-template-columns: 1fr;
    grid-template-areas: "top" "main";
  }

  .sidebar{
    display:none;
  }

  .vix-grid-3col{
    grid-template-columns: 1fr;
  }
}

@media (max-width: 520px){
  .topbar{
    padding: 0 10px;
  }

  .topbar .center{
    margin-left: 10px;
    min-width: 0;
  }

  .topnav{
    gap: 8px;
    overflow-x: auto;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
  }

  .topnav a{
    padding: 8px 8px;
  }
}

@media (max-width: 520px){
  .vix-grid-auto-fit-220{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 380px){
  .vix-grid-auto-fit-220{
    grid-template-columns: 1fr;
  }
}

@media (max-width: 920px){
  .mobile-nav-toggle{
    display:inline-flex;
    align-items:center;
    justify-content:center;
  }

  .mobile-nav-overlay{
    display:none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.40);
    z-index: 50;
  }

  html[data-theme="gtmbydesign-dark"] .mobile-nav-overlay{
    background: rgba(0, 0, 0, 0.52);
  }

  .app.app-app .sidebar{
    display:block;
    position: fixed;
    top: 60px;
    left: 0;
    height: calc(100vh - 60px);
    width: 260px;
    transform: translateX(-105%);
    transition: transform 180ms ease;
    z-index: 60;
  }

  html[data-theme="gtmbydesign-dark"] .app.app-app .sidebar{
    background:
      linear-gradient(180deg, rgba(5, 28, 27, 0.98), rgba(3, 18, 17, 0.98));
  }

  .app.app-app.is-mobile-nav-open .sidebar{
    transform: translateX(0);
  }

  .app.app-app.is-mobile-nav-open .mobile-nav-overlay{
    display:block;
  }
}

@media (min-width: 921px){
  .mobile-nav-toggle{
    display:none;
  }

  .mobile-nav-overlay{
    display:none;
  }
}

.gar-wrap {
  max-width: none;
  margin: 0;
}

.gar-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
}

.gar-card-body {
  padding: 14px;
}

.gar-exec {
  background: rgba(11, 64, 62, 0.58);
  border: 1px solid rgba(70, 210, 200, 0.26);
  border-radius: 18px;
  overflow: hidden;
}

.gar-exec .card-title-bar {
  background: rgba(4, 35, 33, 0.75);
  border-bottom: 1px solid rgba(70, 210, 200, 0.14);
}

.gar-exec-body {
  padding: 16px;
}

.gar-exec-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  align-items: stretch;
}

.gar-exec-left {
  padding-right: 16px;
}

.gar-exec-headline {
  font-size: 18px;
  font-weight: 1000;
  letter-spacing: -0.02em;
  color: rgba(255,255,255,0.96);
}

.gar-exec-narrative {
  margin-top: 10px;
  color: rgba(126, 200, 200, 0.86);
  font-weight: 750;
  line-height: 1.35;
}

.gar-exec-right {
  padding-left: 16px;
  border-left: 1px solid rgba(70, 210, 200, 0.18);
}

.gar-exec-kt {
  font-weight: 950;
  color: rgba(255,255,255,0.90);
  letter-spacing: -0.01em;
}

.gar-takeaway-row {
  margin-top: 12px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.gar-takeaway {
  padding: 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.10);
  background: rgba(255,255,255,0.02);
  min-height: 90px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
}

.gar-ico {
  width: 38px;
  height: 38px;
  max-width: 38px;
  max-height: 38px;
  opacity: 0.92;
  filter: drop-shadow(0 0 10px rgba(31,168,168,0.20));
}

.gar-takeaway .gar-ico{
  width: 38px !important;
  height: 38px !important;
}

.gar-takeaway-label {
  font-weight: 1000;
  color: rgba(255,255,255,0.94);
  letter-spacing: -0.01em;
}

.gar-takeaway-text {
  margin-top: 6px;
  color: rgba(255,255,255,0.74);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
}

@media (max-width: 900px) {
  .gar-exec-grid {
    grid-template-columns: 1fr;
  }

  .gar-exec-left {
    padding-right: 0;
  }

  .gar-exec-right {
    padding-left: 0;
    border-left: none;
    border-top: 1px solid rgba(70, 210, 200, 0.18);
    margin-top: 14px;
    padding-top: 14px;
  }

  .gar-takeaway-row {
    grid-template-columns: 1fr;
  }
}

.gar-topbar {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.gar-topbar-left {
  min-width: 260px;
}

.gar-topbar-right {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.gar-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.03);
  font-weight: 800;
  color: rgba(255,255,255,0.88);
  font-size: 12px;
  line-height: 1;
  white-space: nowrap;
}

.gar-chip .k {
  color: rgba(255,255,255,0.70);
  font-weight: 900;
}

.gar-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(31,168,168,0.22);
  background: rgba(31,168,168,0.10);
  color: rgba(255,255,255,0.92);
  font-weight: 900;
  font-size: 12px;
  cursor: pointer;
  opacity: 1;
}

.gar-btn[disabled],
.gar-btn[aria-disabled="true"]{
  cursor: not-allowed;
  opacity: 0.70;
  pointer-events: none;
}

.gar-savebar{
  display:grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
}

@media (max-width: 900px){
  .gar-savebar{
    grid-template-columns: 1fr;
  }
}

.gar-savebar-left{
  display:grid;
  grid-template-columns: 140px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
}

@media (max-width: 700px){
  .gar-savebar-left{
    grid-template-columns: 1fr;
    gap: 8px;
  }
}

.gar-savebar-right{
  display:flex;
  align-items:center;
  justify-content: flex-end;
  gap: 12px;
}

.gar-savebar-k{
  font-size: 11px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-weight: 900;
  color: rgba(244, 252, 250, 0.62);
  white-space: nowrap;
}

.gar-savebar-input{
  height: 44px;
  width: 100%;
  border-radius: 12px;
  border: 1px solid rgba(105, 214, 204, 0.22);
  background: rgba(255, 255, 255, 0.04);
  padding: 10px 12px;
  color: rgba(244, 252, 250, 0.92);
  font-weight: 850;
}

.gar-savebar-input::placeholder{
  color: rgba(244, 252, 250, 0.45);
}

.gar-savebar-input:focus{
  outline: none;
  border-color: rgba(105, 214, 204, 0.42);
  box-shadow: 0 0 0 4px rgba(34, 184, 179, 0.12);
}

.gar-switch{
  position: relative;
  display:inline-flex;
  width: 92px;
  height: 38px;
  align-items:center;
  justify-content:center;
  cursor: pointer;
  user-select: none;
}

.gar-switch input{
  position:absolute;
  opacity:0;
  width:1px;
  height:1px;
}

.gar-switch-track{
  position:absolute;
  inset: 0;
  border-radius: 999px;
  background: rgba(148, 163, 184, 0.22);
  border: 1px solid rgba(105, 214, 204, 0.18);
  transition: background 140ms ease, border-color 140ms ease;
}

.gar-switch-thumb{
  position:absolute;
  top: 4px;
  left: 4px;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  background: rgba(244, 252, 250, 0.70);
  border: 1px solid rgba(0,0,0,0.18);
  box-shadow: 0 10px 18px rgba(0,0,0,0.24);
  transition: transform 140ms ease, background 140ms ease;
}

.gar-switch input:checked ~ .gar-switch-track{
  background: rgba(34, 197, 94, 0.55);
  border-color: rgba(34, 197, 94, 0.40);
}

.gar-switch input:checked ~ .gar-switch-thumb{
  transform: translateX(54px);
  background: rgba(244, 252, 250, 0.86);
}

.gtmbd-help{
  position: relative;
  display: inline-flex;
  align-items: center;
}

.gtmbd-help-btn{
  width: 24px;
  height: 24px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.16);
  background: rgba(255,255,255,0.04);
  color: rgba(255,255,255,0.92);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.gtmbd-help-btn:focus{
  outline: 2px solid rgba(34,197,94,0.55);
  outline-offset: 2px;
}

.gtmbd-help-btn svg{
  width: 16px;
  height: 16px;
  display: block;
}

.gtmbd-help-pop{
  position: absolute;
  top: 30px;
  right: 0;
  width: 320px;
  max-width: min(320px, calc(100vw - 48px));
  padding: 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgb(6, 20, 19) !important;
  opacity: 1 !important;
  box-shadow: 0 18px 40px rgba(0,0,0,0.35);
  display: none;
  z-index: 30;
}

 .ghp-help-pop{
   background: rgb(6, 20, 19) !important;
   opacity: 1 !important;
   backdrop-filter: none !important;
 }

.gtmbd-help-pop.is-open{
  display: block;
}

.gtmbd-help-pop-title{
  font-size: 13px;
  font-weight: 900;
  color: rgba(255,255,255,0.94);
}

.gtmbd-help-pop-body{
  margin-top: 8px;
  color: rgba(255,255,255,0.82);
  font-weight: 650;
  line-height: 1.45;
  font-size: 12.5px;
  white-space: pre-line;
}

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

@media (max-width: 1000px) {
  .gar-takeaways {
    grid-template-columns: 1fr;
  }
}

.gar-tile {
  padding: 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.10);
  background: rgba(255,255,255,0.02);
  min-height: 86px;
}

.gar-tile-title {
  font-weight: 1000;
  color: rgba(255,255,255,0.92);
  letter-spacing: -0.01em;
}

.gar-tile-text {
  margin-top: 6px;
  color: rgba(255,255,255,0.72);
  font-size: 12px;
  font-weight: 750;
  line-height: 1.35;
}

.gar-3up {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 12px;
  align-items: start;
}

@media (max-width: 1100px) {
  .gar-3up {
    grid-template-columns: 1fr;
  }
}

.gar-chart-wrap {
  position: relative;
  width: 100%;
  height: 240px;
  max-height: 240px;
  overflow: hidden;
}

canvas.gar-chart {
  width: 100% !important;
  height: 100% !important;
  max-height: 240px !important;
  display: block;
}

.gar-legend {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.gar-legend-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 8px 10px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,0.10);
  background: rgba(255,255,255,0.02);
}

.gar-dot {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  flex: 0 0 auto;
}

.gar-legend-left {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 180px;
}

.gar-legend-dim {
  font-weight: 950;
  color: rgba(255,255,255,0.90);
}

.gar-legend-meta {
  color: rgba(255,255,255,0.70);
  font-size: 12px;
  font-weight: 800;
}

.gar-list {
  display: grid;
  gap: 10px;
}

.gar-row {
  padding: 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.10);
  background: rgba(255,255,255,0.02);
}

.gar-row-title {
  font-weight: 950;
  color: rgba(255,255,255,0.92);
}

.gar-meta {
  margin-top: 6px;
  color: rgba(255,255,255,0.72);
  font-size: 12px;
  font-weight: 750;
}

.gar-driver-row {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
}

.gar-rank {
  width: 28px;
  height: 28px;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(244,121,58,0.18);
  border: 1px solid rgba(244,121,58,0.28);
  color: rgba(255,255,255,0.92);
  font-weight: 1000;
  font-size: 12px;
}

.gar-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.03);
  font-weight: 850;
  color: rgba(255,255,255,0.86);
  font-size: 12px;
  line-height: 1;
  white-space: nowrap;
}

.gar-pill[data-pill="people"] { border-color: rgba(34,197,94,0.22); background: rgba(34,197,94,0.10); }
.gar-pill[data-pill="process"] { border-color: rgba(244,121,58,0.25); background: rgba(244,121,58,0.10); }
.gar-pill[data-pill="data"] { border-color: rgba(234,179,8,0.25); background: rgba(234,179,8,0.10); }
.gar-pill[data-pill="technology"] { border-color: rgba(59,130,246,0.25); background: rgba(59,130,246,0.10); }

.gar-focus {
  display: grid;
  gap: 10px;
}

.gar-focus-card {
  padding: 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.10);
  background: rgba(255,255,255,0.02);
}

.gar-roadmap {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

@media (max-width: 1100px) {
  .gar-roadmap {
    grid-template-columns: 1fr;
  }
}

.gar-step {
  padding: 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.10);
  background: rgba(255,255,255,0.02);
}

.gar-step-num {
  width: 26px;
  height: 26px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(31,168,168,0.18);
  border: 1px solid rgba(31,168,168,0.28);
  font-weight: 1000;
  color: rgba(255,255,255,0.92);
  font-size: 12px;
  margin-right: 8px;
}

.gar-step-title {
  font-weight: 1000;
  color: rgba(255,255,255,0.92);
  letter-spacing: -0.01em;
}

.gar-step-meta {
  margin-top: 8px;
  color: rgba(255,255,255,0.70);
  font-size: 12px;
  font-weight: 750;
  line-height: 1.35;
}

.gar-error {
  padding: 12px;
  border-radius: 14px;
  border: 1px solid rgba(244,121,58,0.30);
  background: rgba(244,121,58,0.08);
  color: rgba(255,255,255,0.90);
  font-weight: 900;
}

.gar-loading {
  padding: 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.03);
  color: rgba(255,255,255,0.80);
  font-weight: 900;
}