

:root,
[data-theme="light"],
.theme-light {
  
  --page-bg:            #ffffff;
  --page-bg-alt:        var(--surface-canvas);

  
  --field-green:        radial-gradient(ellipse 62% 56% at 50% 50%, rgba(108,222,168,0.95) 0%, rgba(133,229,186,0.70) 34%, rgba(180,239,214,0.40) 60%, rgba(255,255,255,0) 90%);
  --field-orbit:        #45d98e;
  --field-orbit-alpha:  0.9;
  --field-glow:         radial-gradient(circle, rgba(47,194,120,0.14) 0%, rgba(47,194,120,0.05) 46%, rgba(47,194,120,0) 72%);
  --field-pulse:        radial-gradient(circle, rgba(47,194,120,0) 48%, rgba(47,194,120,0.13) 76%, rgba(47,194,120,0) 92%);

  

  
  --mock-shadow:        0 20px 44px rgba(0,22,62,0.10), 0 2px 8px rgba(0,22,62,0.06);
  --mock-shadow-lift:   0 2px 6px rgba(0,22,62,0.06), 0 26px 52px -18px rgba(0,22,62,0.22);
  --tile-shadow:        0 14px 34px rgba(0,22,62,0.055), 0 3px 10px rgba(0,22,62,0.035);
  --tile-shadow-sm:     0 10px 24px rgba(0,22,62,0.05), 0 2px 6px rgba(0,22,62,0.03);
  --hub-shadow:         0 18px 50px rgba(0,22,62,0.07), 0 3px 10px rgba(0,22,62,0.035);
  --nav-lift:           0 10px 30px rgba(0,22,62,0.07);
  --bar-shadow:         0 -8px 28px rgba(0,22,62,0.08);
  --scrim:              rgba(13,13,13,0.28);

  
  --bar-bg:             rgba(255,255,255,0.93);

  
  --partner-filter:     brightness(0) opacity(0.58);
  
  --logo-chip-bg:       var(--surface-card);
  
  --why-core-in:        #9AEFC8;
  --why-core-out:       rgba(154, 239, 200, 0);
  --why-core-ring:      rgba(154, 239, 200, 0.55);
  --logo-chip-ring:     0.5px solid var(--border-subtle);

  
  --pattern-ink:        var(--border-subtle);
  
  --fig-mesh:           var(--neutral-400);
  
  --fig-stroke:         1.65px;

  
  
  --sweep-ink:          var(--text-brand);
  --sweep-flash:        var(--green-100);
  --sweep-tail-1:       var(--green-500);
  --sweep-tail-2:       var(--green-800);

  
  --fig-strong:         var(--green-700);        
  --fig-soft:           var(--green-600);        
  --fig-faint:          var(--green-400);        
  --fig-hair:           rgba(47,194,120,0.20);   
  --fig-ring-1:         var(--green-600);
  --fig-ring-2:         var(--green-400);
  --fig-core-1:         rgb(123,220,172);        
  --fig-core-2:         rgb(181,237,210);
  --fig-core-3:         #ffffff;
  --fig-halo-1:         rgba(131,222,177,0.60);  
  --fig-halo-2:         rgba(186,239,214,0.30);
  --fig-halo-3:         rgba(255,255,255,0);
  --fig-plate:          #ffffff;                 
  --fig-mark:           #ffffff;                 
  --fig-petal:          #2fc278;
  --fig-chip-bg:        var(--surface-card);
  --fig-chip-ring:      rgb(226,226,226);

  
  --prompt-hover-bg:    #f2faf6;
  --fig-chip-shadow:    0 2px 4px rgba(174,174,174,0.36);
  --fig-chip-fg:        rgb(81,81,81);

  
  --footer-bg:          var(--nodi-carbon-black);
  --footer-rule:        transparent;
  --footer-fg:          rgba(255,255,255,0.78);
  --footer-fg-strong:   #ffffff;
  
  --footer-fg-quiet:    rgba(255,255,255,0.55);
  --footer-fg-faint:    rgba(255,255,255,0.48);
  --footer-grid:        rgba(255,255,255,0.06);
  --footer-wordmark:    0.055;
  --footer-mark-filter: brightness(0) invert(1);
}

[data-theme="dark"],
.theme-dark {
  --page-bg:            var(--surface-canvas);   
  --page-bg-alt:        #101010;

  
  --field-green:        radial-gradient(ellipse 62% 56% at 50% 50%, rgba(47,194,120,0.26) 0%, rgba(47,194,120,0.14) 34%, rgba(47,194,120,0.05) 60%, rgba(13,13,13,0) 90%);
  --field-orbit:        #2fc278;
  --field-orbit-alpha:  0.45;
  --field-glow:         radial-gradient(circle, rgba(47,194,120,0.20) 0%, rgba(47,194,120,0.06) 46%, rgba(47,194,120,0) 72%);
  --field-pulse:        radial-gradient(circle, rgba(47,194,120,0) 48%, rgba(47,194,120,0.18) 76%, rgba(47,194,120,0) 92%);

  
  --mock-shadow:        0 20px 44px rgba(0,0,0,0.6), 0 2px 8px rgba(0,0,0,0.45);
  --mock-shadow-lift:   0 2px 6px rgba(0,0,0,0.45), 0 26px 52px -18px rgba(0,0,0,0.7);
  --tile-shadow:        0 14px 34px rgba(0,0,0,0.5), 0 3px 10px rgba(0,0,0,0.38);
  --tile-shadow-sm:     0 10px 24px rgba(0,0,0,0.45), 0 2px 6px rgba(0,0,0,0.3);
  --hub-shadow:         0 18px 50px rgba(0,0,0,0.55), 0 3px 10px rgba(0,0,0,0.4);
  --nav-lift:           0 10px 30px rgba(0,0,0,0.55);
  --bar-shadow:         0 -8px 28px rgba(0,0,0,0.5);
  --scrim:              rgba(0,0,0,0.62);

  --bar-bg:             rgba(18,18,18,0.92);

  --partner-filter:     brightness(0) invert(1) opacity(0.68);
  
  --logo-chip-bg:       #ffffff;
  
  --why-core-in:        rgba(56, 215, 135, 0.30);
  --why-core-out:       rgba(56, 215, 135, 0);
  --why-core-ring:      rgba(56, 215, 135, 0.22);
  --logo-chip-ring:     0.5px solid rgba(255,255,255,0.14);
  
  --story-logo-filter:  brightness(0) invert(1);
  --pattern-ink:        rgba(255,255,255,0.20);
  --fig-mesh:           rgba(255,255,255,0.34);

  --sweep-ink:          var(--green-400);
  --sweep-flash:        #ffffff;
  --sweep-tail-1:       var(--green-300);
  --sweep-tail-2:       var(--green-500);

  
  --fig-strong:         #45d98e;
  --fig-soft:           rgba(69,217,142,0.55);
  --fig-faint:          rgba(69,217,142,0.20);
  --fig-hair:           rgba(69,217,142,0.26);
  --fig-ring-1:         rgba(69,217,142,0.55);
  --fig-ring-2:         rgba(69,217,142,0.14);
  --fig-core-1:         rgba(47,194,120,0.52);
  --fig-core-2:         rgba(47,194,120,0.18);
  --fig-core-3:         rgba(47,194,120,0);
  --fig-halo-1:         rgba(47,194,120,0.40);
  --fig-halo-2:         rgba(47,194,120,0.15);
  --fig-halo-3:         rgba(47,194,120,0);
  --fig-plate:          var(--surface-canvas);
  --fig-mark:           var(--surface-canvas);
  --fig-petal:          #45d98e;
  --fig-chip-bg:        var(--surface-card);
  --fig-chip-ring:      rgba(255,255,255,0.18);

  
  --prompt-hover-bg:    #17241e;
  --fig-chip-shadow:    0 2px 6px rgba(0,0,0,0.55);
  --fig-chip-fg:        var(--text-body);

  
  --footer-bg:          #070707;
  --footer-rule:        rgba(255,255,255,0.10);
  --footer-fg:          rgba(255,255,255,0.74);
  --footer-fg-strong:   #ffffff;
  --footer-fg-quiet:    rgba(255,255,255,0.55);
  --footer-fg-faint:    rgba(255,255,255,0.48);
  --footer-grid:        rgba(255,255,255,0.06);
  --footer-wordmark:    0.07;
  --footer-mark-filter: brightness(0) invert(1);
}

[data-theme] body,
[data-theme] {
  transition: background-color 260ms cubic-bezier(.4, 0, .2, 1);
}

@media (prefers-reduced-motion: reduce) {
  [data-theme] body,
  [data-theme] { transition: none; }
}
