﻿/* ================================================================
   NPAV Design Tokens
   ----------------------------------------------------------------
   Single source of truth for colors, typography, spacing, radius,
   shadows, transitions, and z-index used across the site's CSS.
   Loaded FIRST (before npav-critical.css) so every other stylesheet
   can reference these custom properties.

   Where npav-critical.css already defines a canonical variable
   (--npav-*, --nr-*), tokens here ALIAS it instead of redefining
   the value a second time â€” one source of truth per value.

   Every token is added on-demand as each stylesheet is refactored
   to use it, per file, in this order: datasheet.css,
   edition-compare.css, epsdemo.css, npav-responsive.css,
   npav-critical.css, npav-2026-home.css, npav-2026-dark.css,
   npav-deferred.css. Distinct-but-similar legacy values (e.g. the
   several near-identical greens below) are kept as separate tokens
   rather than merged, so no visual value changes.
   ================================================================ */

:root {

    /* ==========================
       COLORS â€” brand / primary
    ========================== */
    --color-primary:          var(--npav-green-primary, rgb(0, 143, 79));
    --color-primary-dark:     var(--npav-green-dark, #007a44);
    --color-primary-deep:     color-mix(in srgb, var(--npav-green-primary) 95%, black);
    --color-primary-hover:    color-mix(in srgb, var(--npav-green-primary) 85%, white);
    --color-primary-hover-alt:color-mix(in srgb, var(--npav-green-primary) 78%, white);
    --color-primary-light:    color-mix(in srgb, var(--npav-green-primary) 88%, white);

    /* Accent-theme public API — derived from --npav-green-primary (the
       one lever swapped per data-accent by npav-accent-themes.css) so
       these never need redeclaring per theme. Do not hardcode these. */
    --color-primary-active:  color-mix(in srgb, var(--npav-green-primary) 80%, black);
    --color-primary-soft:    color-mix(in srgb, var(--npav-green-primary) 12%, transparent);
    --color-primary-border:  color-mix(in srgb, var(--npav-green-primary) 32%, transparent);
    --color-focus:            var(--npav-green-primary);
    --color-link:             var(--npav-green-primary);

    /* Status */
    --color-success:      #198754;
    --color-warning:      #ffc107;
    --color-warning-alt:  #ff9800;
    --color-danger:       #dc3545;
    --color-accent-orange:#ff5722;

    /* Neutrals */
    --color-white: #ffffff;
    --color-black: #000000;
    --color-ink:         #212121;
    --color-text:        #333333;
    --color-text-light:  #666666;
    --color-text-muted:  #767676; /* was #999999 — failed WCAG AA (~2.8:1) on white/tint backgrounds */
    --color-border:       #dddddd;
    --color-border-light: #cccccc;
    --color-bg-tint:     #f9f9f9;
    --color-bg-tint-alt: #f5f4f4;
    --color-icon-muted:  #fcfcfc85;
    --color-tint-blue-50:#f0f4f7;

    /* Edition-compare product-tier badge colors â€” distinct brand
       colors per edition, not duplicates of each other. */
    --color-edition-antipro:    rgb(237, 29, 35);
    --color-edition-intsec:     rgb(254, 202, 10);
    --color-edition-totsec:     rgb(0, 139, 67);
    --color-edition-totsec-pre: rgb(0, 88, 36);
    --color-edition-totsec-plus: rgb(0, 121, 140);
    --color-edition-zsec:       rgb(35, 31, 32);
    --color-edition-zplus:      rgb(199, 200, 202);

    /* Overlay / shadow alphas */
    --overlay-black-05:   rgba(0, 0, 0, 0.05);
    --overlay-black-08:   rgba(0, 0, 0, 0.08);
    --overlay-black-10:   rgba(0, 0, 0, 0.1);
    --overlay-primary-35: color-mix(in srgb, var(--npav-green-primary) 35%, transparent);
    --overlay-success-25: rgba(25, 135, 84, 0.25);

    /* ==========================
       TYPOGRAPHY
    ========================== */
    /* Canonical typeface tokens — the only two font families used sitewide
       (excluding icon fonts and the standalone CISO microsite). Every
       component must reference one of these, never a literal font-family. */
    --font-ui:      'Sailec', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    --font-display: 'Optima', 'Segoe UI', Candara, Calibri, Arial, sans-serif;
    --font-mono:    ui-monospace, 'SF Mono', Consolas, monospace;

    --font-size-xs:      12px;
    --font-size-sm:      14px;
    --font-size-base:    16px;
    --font-size-md:      18px;
    --font-size-lg:      20px;
    --font-size-xl:      26px;
    --font-size-2xl:     32px;
    --font-size-3xl:     35px;
    --font-size-xs-rem:  0.7rem;
    --font-size-base-rem:1rem;
    --font-size-md-rem:  1.1rem;
    /* extended font-size values, auto-generated from npav-critical.css */
    --font-size-val-0-85em: 0.85em;
    --font-size-val-0-85rem: 0.85rem;
    --font-size-val-0-875rem: 0.875rem;
    --font-size-val-0-95rem: 0.95rem;
    --font-size-val-0-9rem: 0.9rem;
    --font-size-val-1-05rem: 1.05rem;
    --font-size-val-1-0em: 1.0em;
    --font-size-val-10px: 10px;
    --font-size-val-1-0rem: 1.0rem;
    --font-size-val-11-5px: 11.5px;
    --font-size-val-1-15rem: 1.15rem;
    --font-size-val-1-1em: 1.1em;
    --font-size-val-11px: 11px;
    --font-size-val-1-25rem: 1.25rem;
    --font-size-val-1-2em: 1.2em;
    --font-size-val-1-2rem: 1.2rem;
    --font-size-val-13-5px: 13.5px;
    --font-size-val-1-35rem: 1.35rem;
    --font-size-val-13px: 13px;
    --font-size-val-1-3rem: 1.3rem;
    --font-size-val-14-5px: 14.5px;
    --font-size-val-1-4rem: 1.4rem;
    --font-size-val-15-5px: 15.5px;
    --font-size-val-15px: 15px;
    --font-size-val-1-5rem: 1.5rem;
    --font-size-val-16-5px: 16.5px;
    --font-size-val-1-75rem: 1.75rem;
    --font-size-val-1-8rem: 1.8rem;
    --font-size-val-2-25rem: 2.25rem;
    --font-size-val-22px: 22px;
    --font-size-val-2-2rem: 2.2rem;
    --font-size-val-24px: 24px;
    --font-size-val-2-5rem: 2.5rem;
    --font-size-val-2-625rem: 2.625rem;
    --font-size-val-2rem: 2rem;
    --font-size-val-9px: 9px;
    --font-size-val-0-72rem: 0.72rem;
    --font-size-val-0-78rem: 0.78rem;
    --font-size-val-0-8125rem: 0.8125rem;
    --font-size-val-0-8rem: 0.8rem;
    --font-size-val-1-0625rem: 1.0625rem;
    --font-size-val-1-125rem: 1.125rem;
    --font-size-val-1-375rem: 1.375rem;
    --font-size-val-1-625rem: 1.625rem;
    --font-size-val-1-6rem: 1.6rem;
    --font-size-val-1-875rem: 1.875rem;
    --font-size-val-1-9rem: 1.9rem;
    --font-size-val-2-75rem: 2.75rem;
    --font-size-val-4rem: 4rem;
    --font-size-val-0-75rem: 0.75rem;
    --font-size-val-12-5px: 12.5px;
    --font-size-val-28px: 28px;
    --font-size-val-0-65rem: 0.65rem;
    --font-size-val-0-82rem: 0.82rem;
    --font-size-val-0px: 0px;
    --font-size-val-10-5px: 10.5px;
    --font-size-val-17px: 17px;
    --font-size-val-19px: 19px;
    --font-size-val-21px: 21px;
    --font-size-val-25px: 25px;
    --font-size-val-27px: 27px;
    --font-size-val-30px: 30px;
    --font-size-val-34px: 34px;
    --font-size-val-36px: 36px;
    --font-size-val-38px: 38px;
    --font-size-val-40px: 40px;
    --font-size-val-42px: 42px;
    --font-size-val-44px: 44px;

    --font-weight-light:    200;
    --font-weight-normal:   400;
    --font-weight-medium:   500;
    --font-weight-semibold: 600;
    --font-weight-bold:     500; /* was 700 — house rule bans 700+ weight ("too bold"); 600 still allowed via --font-weight-semibold */
    --font-weight-val-300: 300;
    --font-weight-val-800: 800;
    --font-weight-val-900: 900;
    --font-weight-val-590: 590;

    --line-height-normal:  1.5;
    --line-height-relaxed: 1.6;
    --line-height-lg:      29px;
    --line-height-lg-rem:  1.5rem;
    --line-height-val-1: 1;
    --line-height-val-1-15: 1.15;
    --line-height-val-1-2: 1.2;
    --line-height-val-1-3: 1.3;
    --line-height-val-1-4: 1.4;
    --line-height-val-1-55: 1.55;
    --line-height-val-1-65: 1.65;
    --line-height-val-1-7: 1.7;
    --line-height-val-2-1rem: 2.1rem;
    --line-height-val-22px: 22px;
    --line-height-val-38px: 38px;
    --line-height-val-8px: 8px;
    --line-height-val-1-35: 1.35;
    --line-height-val-1-45: 1.45;
    --line-height-val-15px: 15px;
    --line-height-val-2-2: 2.2;
    --line-height-val-0-1rem: 0.1rem;
    --line-height-val-1-8: 1.8;
    --line-height-val-18px: 18px;
    --line-height-val-1-9: 1.9;
    --line-height-val-20px: 20px;
    --line-height-val-21px: 21px;
    --line-height-val-24px: 24px;
    --line-height-val-25px: 25px;
    --line-height-val-26px: 26px;
    --line-height-val-28px: 28px;
    --line-height-val-30px: 30px;
    --line-height-val-32px: 32px;
    --line-height-val-34px: 34px;
    --line-height-val-35px: 35px;
    --line-height-val-36px: 36px;
    --line-height-val-40px: 40px;

    --letter-spacing-wide: 0.04em;
    --letter-spacing-val-neg-0-3px: -0.3px;
    --letter-spacing-val-0-4px: 0.4px;
    --letter-spacing-val-0-5px: 0.5px;
    --letter-spacing-val-0-9px: 0.9px;
    --letter-spacing-val-1px: 1px;
    --letter-spacing-val--0-01em: -0.01em;
    --letter-spacing-val-0-02em: 0.02em;
    --letter-spacing-val-0-08em: 0.08em;
    --letter-spacing-val-0-14em: 0.14em;
    --letter-spacing-val-0-01em: 0.01em;
    --letter-spacing-val-0-03em: 0.03em;
    --letter-spacing-val-0-05em: 0.05em;
    --letter-spacing-val-0-06em: 0.06em;
    --letter-spacing-val-0-12em: 0.12em;
    --letter-spacing-val-0-18em: 0.18em;
    --letter-spacing-val-0-1em: 0.1em;
    --letter-spacing-val-0-1px: 0.1px;
    --letter-spacing-val-0-2px: 0.2px;
    --letter-spacing-val-0-3px: 0.3px;
    --letter-spacing-val--0-5px: -0.5px;

    /* ==========================
       SPACING
    ========================== */
    --space-0: 0;
    --space-1: 4px;
    --space-2: 6px;
    --space-3: 8px;
    --space-4: 10px;
    --space-5: 12px;
    --space-6: 15px;
    --space-7: 20px;
    --space-8: 40px;

    /* additional px steps, added as npav-responsive.css needed them â€”
       named by literal value since they don't fit the ordinal ramp above */
    --space-14:  14px;
    --space-30:  30px;
    --space-36:  36px;
    --space-60:  60px;
    --space-100: 100px;

    /* rem-based spacing (kept separate from the px scale above â€”
       different literal values, not interchangeable) */
    --space-rem-3xs: 0.1rem;
    --space-rem-sm:  0.5rem;
    --space-rem-0-75:0.75rem;
    --space-rem-1-25:1.25rem;
    --space-rem-md:  1rem;
    --space-rem-lg:  2rem;

    /* percentage-based spacing (legacy layout uses % padding/margin
       in several places; kept distinct from the px/rem scales) */
    --space-pct-1:  1%;
    --space-pct-2:  2%;
    --space-pct-5:  5%;
    --space-pct-7:  7%;
    --space-pct-8:  8%;
    --space-pct-10: 10%;

    /* extended px/rem/%/viewport spacing â€” auto-generated from
       npav-critical.css, named literally by value (no clean ordinal
       scale existed in the source to map onto without changing sizes) */
    --space-px-0: 0px;
    --space-px-1: 1px;
    --space-px--1: -1px;
    --space-px--10: -10px;
    --space-px-1200: 1200px;
    --space-px-130: 130px;
    --space-px--15: -15px;
    --space-px-150: 150px;
    --space-px-16: 16px;
    --space-px-1600: 1600px;
    --space-px-1700: 1700px;
    --space-px-18: 18px;
    --space-px-2: 2px;
    --space-px--20: -20px;
    --space-px-200: 200px;
    --space-px-215: 215px;
    --space-px-22: 22px;
    --space-px-230: 230px;
    --space-px-24: 24px;
    --space-px-25: 25px;
    --space-px-250: 250px;
    --space-px-26: 26px;
    --space-px-260: 260px;
    --space-px-28: 28px;
    --space-px-3: 3px;
    --space-px-32: 32px;
    --space-px-320: 320px;
    --space-px-370: 370px;
    --space-px-38: 38px;
    --space-px-400: 400px;
    --space-px-42: 42px;
    --space-px-44: 44px;
    --space-px-45: 45px;
    --space-px-450: 450px;
    --space-px-48: 48px;
    --space-px-5: 5px;
    --space-px-50: 50px;
    --space-px-52: 52px;
    --space-px--6: -6px;
    --space-px-600: 600px;
    --space-px-65: 65px;
    --space-px-70: 70px;
    --space-px-700: 700px;
    --space-px-75: 75px;
    --space-px--8: -8px;
    --space-px-80: 80px;
    --space-px-800: 800px;
    --space-px-960: 960px;
    --space-rem-val-0-25: 0.25rem;
    --space-rem-val-0-3: 0.3rem;
    --space-rem-val-0-35: 0.35rem;
    --space-rem-val-0-4: 0.4rem;
    --space-rem-val-0-45: 0.45rem;
    --space-rem-val-0-6: 0.6rem;
    --space-rem-val-0-65: 0.65rem;
    --space-rem-val-0-8: 0.8rem;
    --space-rem-val-0-9: 0.9rem;
    --space-rem-val-1-0: 1.0rem;
    --space-rem-val-1-1: 1.1rem;
    --space-rem-val-1-125: 1.125rem;
    --space-rem-val-1-2: 1.2rem;
    --space-rem-val-1-4: 1.4rem;
    --space-rem-val-1-5: 1.5rem;
    --space-rem-val-1-75: 1.75rem;
    --space-rem-val-1-8: 1.8rem;
    --space-rem-val-2-2: 2.2rem;
    --space-rem-val-2-5: 2.5rem;
    --space-rem-val-2-8: 2.8rem;
    --space-rem-val-3: 3rem;
    --space-rem-val-4: 4rem;
    --space-rem-val-0-2: 0.2rem;
    --space-rem-val-0-125: 0.125rem;
    /* extended values from npav-2026-home.css */
    --space-pct-val-20: 20%;
    --space-pct-val-200: 200%;
    --space-pct-val--25: -25%;
    --space-pct-val-78: 78%;
    --space-px-1080: 1080px;
    --space-px--120: -120px;
    --space-px-122: 122px;
    --space-px--13: -13px;
    --space-px-148: 148px;
    --space-px--16: -16px;
    --space-px-160: 160px;
    --space-px-174: 174px;
    --space-px-180: 180px;
    --space-px-212: 212px;
    --space-px-226: 226px;
    --space-px-276: 276px;
    --space-px-280: 280px;
    --space-px--2px: -2px;
    --space-px-34: 34px;
    --space-px-340: 340px;
    --space-px-380: 380px;
    --space-px--4: -4px;
    --space-px-46: 46px;
    --space-px-460: 460px;
    --space-px-520: 520px;
    --space-px-56: 56px;
    --space-px-62: 62px;
    --space-px-620: 620px;
    --space-px-64: 64px;
    --space-px-640: 640px;
    --space-px-680: 680px;
    --space-px-72: 72px;
    --space-px-740: 740px;
    --space-px-760: 760px;
    --space-px-780: 780px;
    --space-px-820: 820px;
    --space-px-84: 84px;
    --space-px-9: 9px;
    --space-px-90: 90px;
    --space-px-920: 920px;
    --space-px-96: 96px;
    --space-rem-val-1-625: 1.625rem;
    --space-rem-val-3-25: 3.25rem;
    /* extended values from npav-2026-dark.css */
    --size-vw-80: 80vw;
    --space-pct-val-23: 23%;
    --space-pct-val-42: 42%;
    --space-pct-val-48: 48%;
    --space-pct-val-74: 74%;
    --space-pct-val-9: 9%;
    --space-pct-val-90: 90%;
    --space-px-1040: 1040px;
    --space-px-11: 11px;
    --space-px-1140: 1140px;
    --space-px-1180: 1180px;
    --space-px--14: -14px;
    --space-px-220: 220px;
    --space-px--28px: -28px;
    --space-px-420: 420px;
    --space-px-560: 560px;
    --space-px-7: 7px;
    --space-px-720: 720px;
    --space-rem-val-2-25: 2.25rem;
    --space-rem-val-2-75: 2.75rem;
    --space-rem-val-8-5: 8.5rem;
    /* extended values from npav-deferred.css */
    --size-vh-38: 38vh;
    --space-em-val-0-5: 0.5em;
    --space-em-val--0-5: -0.5em;
    --space-em-val-1: 1em;
    --space-pct-val-0-1: 0.1%;
    --space-pct-val-0-2: 0.2%;
    --space-pct-val-0-3: 0.3%;
    --space-pct-val--0-3: -0.3%;
    --space-pct-val-0-4: 0.4%;
    --space-pct-val--0-5: -0.5%;
    --space-pct-val--0-6: -0.6%;
    --space-pct-val--0-7: -0.7%;
    --space-pct-val-0-8: 0.8%;
    --space-pct-val--0-8: -0.8%;
    --space-pct-val--0-9: -0.9%;
    --space-pct-val--1: -1%;
    --space-pct-val-11-50: 11.50%;
    --space-pct-val-12: 12%;
    --space-pct-val-1-2: 1.2%;
    --space-pct-val-13: 13%;
    --space-pct-val-15: 15%;
    --space-pct-val-1-5: 1.5%;
    --space-pct-val-17-5: 17.5%;
    --space-pct-val-18: 18%;
    --space-pct-val--2: -2%;
    --space-pct-val-2-1: 2.1%;
    --space-pct-val-22: 22%;
    --space-pct-val-25: 25%;
    --space-pct-val-2-5: 2.5%;
    --space-pct-val-26: 26%;
    --space-pct-val-27: 27%;
    --space-pct-val-28: 28%;
    --space-pct-val--3: -3%;
    --space-pct-val-30: 30%;
    --space-pct-val-32: 32%;
    --space-pct-val-33: 33%;
    --space-pct-val-33-333: 33.333%;
    --space-pct-val-38: 38%;
    --space-pct-val-43: 43%;
    --space-pct-val-56: 56%;
    --space-pct-val-6: 6%;
    --space-pct-val-65: 65%;
    --space-pct-val-68: 68%;
    --space-pct-val-70: 70%;
    --space-pct-val-75: 75%;
    --space-pct-val-80: 80%;
    --space-pct-val-85: 85%;
    --space-px-0-1: 0.1px;
    --space-px--12: -12px;
    --space-px-120: 120px;
    --space-px-13: 13px;
    --space-px--14-5: -14.5px;
    --space-px-17: 17px;
    --space-px-19: 19px;
    --space-px-23: 23px;
    --space-px-240: 240px;
    --space-px-29: 29px;
    --space-px--30: -30px;
    --space-px-300: 300px;
    --space-px-33: 33px;
    --space-px-35: 35px;
    --space-px--3px: -3px;
    --space-px-540: 540px;
    --space-px-58: 58px;
    --space-px-81: 81px;
    --space-px--8-5: -8.5px;
    --space-px-92: 92px;
    --space-rem-val-0-10: 0.10rem;
    --space-rem-val-4-2: 4.2rem;
    --space-rem-val-5: 5rem;
    --space-pct-val-0: 0%;
    --space-pct-val-0-5: 0.5%;
    --space-pct-val--10: -10%;
    --space-pct-val-100: 100%;
    --space-pct-val--100: -100%;
    --space-pct-val-11: 11%;
    --space-pct-val-110: 110%;
    --space-pct-val-120: 120%;
    --space-pct-val-16: 16%;
    --space-pct-val-3: 3%;
    --space-pct-val-4: 4%;
    --space-pct-val-40: 40%;
    --space-pct-val-45: 45%;
    --space-pct-val-46: 46%;
    --space-pct-val--5: -5%;
    --space-pct-val-50: 50%;
    --space-pct-val-95: 95%;
    --size-vh-60: 60vh;
    --size-vh-70: 70vh;
    --size-vh-80: 80vh;
    --size-vh-90: 90vh;
    --size-vw-45: 45vw;
    --size-vw-55: 55vw;
    --size-vw-90: 90vw;

    /* ==========================
       RADIUS
    ========================== */
    --radius-xs:   4px;
    --radius-sm:   5px;
    --radius-md:   6px;
    --radius-base: 8px;
    --radius-lg:   10px;
    /* extended radius values, auto-generated from npav-critical.css */
    --radius-val-0-25rem: 0.25rem;
    --radius-val-0-5rem: 0.5rem;
    --radius-val-0-75rem: 0.75rem;
    --radius-val-12px: 12px;
    --radius-val-15px: 15px;
    --radius-val-16px: 16px;
    --radius-val-1rem: 1rem;
    --radius-val-20px: 20px;
    --radius-val-30px: 30px;
    --radius-val-3px: 3px;
    --radius-val-40px: 40px;
    --radius-val-50pct: 50%;
    --radius-val-9999px: 9999px;
    --radius-val-14px: 14px;
    --radius-val-18px: 18px;
    --radius-val-22px: 22px;
    --radius-val-24px: 24px;
    --radius-val-36px: 36px;
    --radius-val-999px: 999px;
    --radius-val-0px: 0px;
    --radius-val-1px: 1px;
    --radius-val-23px: 23px;
    --radius-val-25px: 25px;
    --radius-val-2px: 2px;
    --radius-val-32px: 32px;
    --radius-val-34px: 34px;
    --radius-val-41px: 41px;
    --radius-val-50px: 50px;
    --radius-val-7px: 7px;

    /* ==========================
       COLORS â€” extended primitives
       Auto-generated from a hue/lightness audit of npav-critical.css.
       Legacy one-off values (dashboard/chart accents, imported
       component colors) with no clear brand role â€” named by hue
       family + lightness step rather than invented business meaning.
       Distinct literal values are kept as distinct tokens even when
       visually close, so no rendered color changes.
    ========================== */
    --color-blue-200: #e1e4ed;
    --color-blue-300: #c2c9d8;
    --color-blue-50: #f8f9fb;
    --color-blue-500: #4e73df;
    --color-blue-600: #445383;
    --color-blue-600-v2: #224abe;
    --color-blue-900: #111827;
    --color-cyan-100: #f1f5f9;
    --color-cyan-100-v2: #edf2f7;
    --color-cyan-100-v3: #e6f7ff;
    --color-cyan-200: #e2e8f0;
    --color-cyan-200-v2: #d1d9e6;
    --color-cyan-300: #cbd5e1;
    --color-cyan-50: #f8fafc;
    --color-cyan-500: #0d6efd;
    --color-cyan-50-v2: #f0f7ff;
    --color-cyan-50-v3: #f0f8ff;
    --color-cyan-50-v4: #f7faff;
    --color-cyan-50-v5: #fcfdfe;
    --color-cyan-600: #0b5ed7;
    --color-cyan-800: #0b2a55;
    --color-cyan-800-v2: #1f2937;
    --color-cyan-800-v3: #334155;
    --color-cyan-800-v4: #2d3748;
    --color-cyan-800-v5: #1e293b;
    --color-cyan-a15-500: rgba(13, 110, 253, 0.15);
    --color-cyan-a60-700: #196fa099;
    --color-cyan-a7-700: rgba(24, 101, 149, 0.07);
    --color-cyan-a80-500: rgba(0,153,255,0.8);
    --color-gray-100: #e9ecef;
    --color-gray-100-v2: #eee;
    --color-gray-100-v3: #f1f1f1;
    --color-gray-100-v4: #f5f6f8;
    --color-gray-100-v5: #f7f3f3;
    --color-gray-100-v6: #f7f7f7;
    --color-gray-200: #e2e2e2;
    --color-gray-200-v2: #dee2e6;
    --color-gray-300: #ced4da;
    --color-gray-400: #adb5bd;
    --color-gray-400-v2: #94a3b8;
    --color-gray-50: #f8f9fa;
    --color-gray-500: #828282;
    --color-gray-500-v2: #8c9aa3;
    --color-gray-600: #6c757d;
    --color-gray-600-v2: #64748b;
    --color-gray-600-v3: #5f6f73;
    --color-gray-600-v4: #6b7c80;
    --color-gray-600-v5: #56707b;
    --color-gray-700: #495057;
    --color-gray-700-v2: #525252;
    --color-gray-700-v3: #4a5568;
    --color-gray-700-v4: #555;
    --color-gray-700-v5: #475569;
    --color-gray-700-v6: rgb(89 92 95);
    --color-gray-800: #2F3E46;
    --color-gray-800-v2: #343a40;
    --color-gray-900: #212529;
    --color-gray-900-v2: #1b1b1b;
    --color-gray-900-v3: #111;
    --color-gray-900-v4: #222;
    --color-gray-a0-50: #fff0;
    --color-gray-a10-900: rgba(0,0,0,0.1);
    --color-gray-a12-900: rgba(0,0,0,0.12);
    --color-gray-a15-50: rgba(255,255,255,0.15);
    --color-gray-a15-900: rgba(0,0,0,0.15);
    --color-gray-a16-50: rgba(255, 255, 255, 0.16);
    --color-gray-a20-900: rgba(0,0,0,0.2);
    --color-gray-a24-500: #6d758f3d;
    --color-gray-a25-50: rgba(255, 255, 255, 0.25);
    --color-gray-a25-900: rgba(0,0,0,0.25);
    --color-gray-a28-50: rgba(255, 255, 255, 0.28);
    --color-gray-a28-900: rgba(0, 0, 0, 0.28);
    --color-gray-a30-50: rgba(255, 255, 255, 0.3);
    --color-gray-a30-900: rgba(0,0,0,0.3);
    --color-gray-a35-900: rgb(0 0 0 / 35%);
    --color-gray-a40-900: rgba(0,0,0,0.4);
    --color-gray-a50-50: rgba(255, 255, 255, 0.5);
    --color-gray-a50-900: rgba(0, 0, 0, 0.5);
    --color-gray-a5-900: rgba(0,0,0,0.05);
    --color-gray-a60-50: rgba(255, 255, 255, 0.6);
    --color-gray-a63-800: #333333a1;
    --color-gray-a63-900: #000000a1;
    --color-gray-a6-900: rgba(0, 0, 0, 0.06);
    --color-gray-a75-50: rgba(255, 255, 255, 0.75);
    --color-gray-a80-50: rgba(255, 255, 255, 0.8);
    --color-gray-a82-50: rgba(255, 255, 255, 0.82);
    --color-gray-a8-900: rgba(0,0,0,0.08);
    --color-gray-a90-50: rgba(255,255,255,0.9);
    --color-green-100: #f0fdf4;
    --color-green-100-v2: #e6f7f1;
    --color-green-200: #dff5ec;
    --color-green-200-v2: #e0f2e0;
    --color-green-200-v3: #d4f2e0;
    --color-green-400: #33ff99;
    --color-green-500: #4CAF50;
    --color-green-600: #1cc88a;
    --color-green-600-v2: #0e0;
    --color-green-600-v3: #00e699;
    --color-green-600-v4: #388E3C;
    --color-green-700: #13855c;
    --color-green-700-v2: #16a34a;
    --color-green-800: #006437;
    --color-green-800-v2: #006b38;
    --color-green-800-v3: #006c3c;
    --color-green-800-v4: #00703e;
    --color-green-800-v5: #014d33;
    --color-green-800-v6: #004d2b;
    --color-green-900: #01180d;
    --color-green-a0-700: color-mix(in srgb, var(--npav-green-primary) 0%, transparent);
    --color-green-a12-700: color-mix(in srgb, var(--npav-green-primary) 12%, transparent);
    --color-green-a15-700: color-mix(in srgb, var(--npav-green-primary) 15%, transparent);
    --color-green-a18-700: color-mix(in srgb, var(--npav-green-primary) 18%, transparent);
    --color-green-a20-700: color-mix(in srgb, var(--npav-green-primary) 20%, transparent);
    --color-green-a25-700: color-mix(in srgb, var(--npav-green-primary) 25%, transparent);
    --color-green-a35-700: color-mix(in srgb, var(--npav-green-primary) 35%, transparent);
    --color-green-a40-500: rgba(76, 175, 80, 0.4);
    --color-green-a40-800: rgba(0, 77, 43, 0.4);
    --color-green-a50-700: color-mix(in srgb, var(--npav-green-primary) 50%, transparent);
    --color-green-a5-700: color-mix(in srgb, var(--npav-green-primary) 5%, transparent);
    --color-green-a66-700: color-mix(in srgb, var(--npav-green-primary) 66%, transparent);
    --color-green-a67-700: color-mix(in srgb, var(--npav-green-primary) 67%, transparent);
    --color-green-a70-700: color-mix(in srgb, var(--npav-green-primary) 70%, transparent);
    --color-green-a81-700: color-mix(in srgb, var(--npav-green-primary) 81%, transparent);
    --color-green-a92-900: rgba(1, 24, 13, 0.92);
    --color-green-a96-700: color-mix(in srgb, var(--npav-green-primary) 96%, transparent);
    --color-indigo-500: #794bdd;
    --color-indigo-900: #0e0129;
    --color-orange-400: #f6c23e;
    --color-orange-400-v2: #f7c948;
    --color-orange-500: #f59e0b;
    --color-orange-500-v2: #f90;
    --color-orange-600: #dda20a;
    --color-pink-600: #c70039;
    --color-red-400: #ff4757;
    --color-red-400-v2: #ff4d4f;
    --color-red-500: #e74a3b;
    --color-red-600: #be2617;
    --color-red-a30-400: rgba(255, 71, 87, 0.3);
    --color-red-a71-500: #d9534fb5;
    --color-teal-300: #b5d0c7;
    --color-teal-400: #99cec1;
    --color-teal-500: #00ffaa;
    --color-teal-600: #0dd;
    --color-teal-700: #2f6956;
    --color-violet-400: #f6f;
    --color-yellow-a58-800: rgb(82 86 40 / 58%);
    /* extended primitives from npav-2026-home.css */
    --color-cyan-100-v4: #eef2f6;
    --color-cyan-500-v2: #3b82f6;
    --color-cyan-50-v6: #f7f9fa;
    --color-cyan-50-v7: #f7f9fb;
    --color-cyan-800-v8: #1f2a37;
    --color-gray-100-v10: #F1F3F5;
    --color-gray-100-v7: #eceef0;
    --color-gray-100-v8: #f0f0f0;
    --color-gray-100-v9: #eef1f4;
    --color-gray-200-v3: #e6e8eb;
    --color-gray-200-v4: #e5e7eb;
    --color-gray-200-v5: #e8eaed;
    --color-gray-300-v3: #b3bcc4;
    --color-gray-300-v4: #cfd5da;
    --color-gray-400-v3: #9ca3af;
    --color-gray-400-v4: #9aa0ac;
    --color-gray-600-v6: #6b7280;
    --color-gray-600-v7: #5a6268;
    --color-gray-700-v7: #4a4a4a;
    --color-gray-700-v8: #5a5a5a;
    --color-gray-700-v9: #3f4a54;
    --color-gray-800-v3: #374151;
    --color-gray-900-v5: #1a1a1a;
    --color-gray-a0-900: rgba(0, 0, 0, 0);
    --color-gray-a16-900: rgba(0, 0, 0, 0.16);
    --color-gray-a22-900: rgba(0, 0, 0, 0.22);
    --color-gray-a45-50: rgba(255, 255, 255, 0.45);
    --color-gray-a78-900: rgba(0, 0, 0, 0.78);
    --color-gray-a9-900: rgba(0, 0, 0, 0.09);
    --color-green-300: #c8e8c8;
    --color-green-50: #f7fdfb;
    --color-green-a10-700: color-mix(in srgb, var(--npav-green-primary) 10%, transparent);
    --color-green-a2-700: color-mix(in srgb, var(--npav-green-primary) 2.5%, transparent);
    --color-green-a2-700-v2: color-mix(in srgb, var(--npav-green-primary) 2%, transparent);
    --color-green-a28-700: color-mix(in srgb, var(--npav-green-primary) 28%, transparent);
    --color-green-a30-700: color-mix(in srgb, var(--npav-green-primary) 30%, transparent);
    --color-green-a3-700: color-mix(in srgb, var(--npav-green-primary) 3%, transparent);
    --color-green-a40-700: color-mix(in srgb, var(--npav-green-primary) 40%, transparent);
    --color-green-a6-700: color-mix(in srgb, var(--npav-green-primary) 6%, transparent);
    --color-green-a7-700: color-mix(in srgb, var(--npav-green-primary) 7%, transparent);
    --color-green-a8-700: color-mix(in srgb, var(--npav-green-primary) 8%, transparent);
    --color-orange-100: #fdf6f0;
    --color-orange-100-v2: #fbf3ec;
    --color-orange-a12-500: rgba(210, 120, 60, 0.12);
    --color-orange-a16-500: rgba(210, 120, 60, 0.16);
    --color-orange-a22-500: rgba(210, 120, 60, 0.22);
    --color-orange-a26-500: rgba(210, 120, 60, 0.26);
    --color-orange-a28-500: rgba(245, 158, 11, 0.28);
    --color-orange-a30-500: rgba(210, 120, 60, 0.30);
    --color-orange-a32-500: rgba(210, 120, 60, 0.32);
    --color-orange-a5-500: rgba(210, 120, 60, 0.05);
    --color-red-400-v3: #ef4444;
    --color-teal-50: #f8fbfa;
    --color-teal-a29-500: rgba(0, 229, 255, 0.29);
    /* extended primitives from npav-2026-dark.css */
    --color-blue-800: #1b2747;
    --color-blue-a16-300: rgba(155, 123, 255, 0.16);
    --color-blue-a82-900: rgba(7, 11, 20, 0.82);
    --color-cyan-100-v5: #e7f3fe;
    --color-cyan-400: #9aa9c4;
    --color-cyan-400-v2: #6b9fef;
    --color-cyan-500-v3: #2b93e2;
    --color-cyan-700: #3d5068;
    --color-cyan-900-v2: #04101f;
    --color-cyan-a10-500: rgba(47, 111, 237, 0.10);
    --color-cyan-a12-500: rgba(59, 111, 212, 0.12);
    --color-cyan-a16-500: rgba(47, 111, 237, 0.16);
    --color-cyan-a35-500: rgba(59, 111, 212, 0.35);
    --color-gray-50-v2: #fcfcfc;
    --color-gray-a12-50: rgba(255, 255, 255, 0.12);
    --color-gray-a14-50: rgba(255, 255, 255, 0.14);
    --color-gray-a18-50: rgba(255, 255, 255, 0.18);
    --color-gray-a19-600: #74747430;
    --color-gray-a22-50: rgba(255, 255, 255, 0.22);
    --color-gray-a2-50: rgba(255, 255, 255, 0.02);
    --color-gray-a3-50: rgba(255, 255, 255, 0.03);
    --color-gray-a4-50: rgba(255, 255, 255, 0.04);
    --color-gray-a45-900: rgba(0, 0, 0, 0.45);
    --color-gray-a55-900: rgba(0, 0, 0, 0.55);
    --color-gray-a57-900: #00000091;
    --color-gray-a6-50: rgba(255, 255, 255, 0.06);
    --color-gray-a70-900: rgba(0, 0, 0, 0.7);
    --color-gray-a8-50: rgba(255, 255, 255, 0.08);
    --color-green-300-v2: #86efac;
    --color-green-500-v2: #25d366;
    --color-green-600-v5: #28a745;
    --color-green-700-v4: var(--npav-green-primary);
    --color-green-a12-600: rgba(34, 197, 94, 0.12);
    --color-green-a12-600-v2: rgba(42, 158, 92, 0.12);
    --color-green-a18-600: rgba(34, 197, 94, 0.18);
    --color-green-a35-600: rgba(34, 197, 94, 0.35);
    --color-green-a35-600-v2: rgba(42, 158, 92, 0.35);
    --color-green-a7-500: rgba(74, 222, 128, 0.07);
    --color-orange-300: #f7dca6;
    --color-orange-500-v3: #f5b301;
    --color-orange-500-v4: #ea580c;
    --color-orange-600-v2: #d97e06;
    --color-orange-900: #1a1208;
    --color-orange-a10-500: rgba(245, 158, 11, 0.10);
    --color-orange-a30-500-v2: rgba(245, 158, 11, 0.30);
    --color-orange-a60-500: rgba(245, 158, 11, 0.6);
    --color-red-400-v4: #f87171;
    --color-red-400-v5: #ff6b6b;
    --color-red-400-v6: #ef6b6b;
    --color-red-500-v2: #dc2626;
    --color-red-a12-500: rgba(220, 38, 38, 0.12);
    --color-red-a22-500: rgba(220, 38, 38, 0.22);
    --color-red-a32-500: rgba(220, 38, 38, 0.32);
    --color-red-a50-400: rgba(239, 68, 68, 0.5);
    --color-red-a50-500: rgba(220, 38, 38, 0.5);
    --color-teal-500-v2: #1fd9a6;
    --color-teal-500-v3: #00e5ff;
    --color-teal-a10-500: rgba(31, 217, 166, 0.10);
    --color-teal-a12-500: rgba(0, 229, 255, 0.12);
    --color-teal-a14-500: rgba(31, 217, 166, 0.14);
    --color-teal-a15-500: rgba(0, 229, 255, 0.15);
    --color-teal-a16-500: rgba(31, 217, 166, 0.16);
    --color-teal-a18-500: rgba(31, 217, 166, 0.18);
    --color-teal-a18-500-v2: rgba(0, 229, 255, 0.18);
    --color-teal-a20-500: rgba(0, 229, 255, 0.20);
    --color-teal-a22-500: rgba(31, 217, 166, 0.22);
    --color-teal-a22-600: rgba(0, 201, 167, 0.22);
    --color-teal-a25-500: rgba(0, 220, 255, 0.25);
    --color-teal-a28-500: rgba(0, 229, 255, 0.28);
    --color-teal-a3-500: rgba(31, 217, 166, 0.03);
    --color-teal-a5-500: rgba(31, 217, 166, 0.05);
    --color-teal-a6-500: rgba(0, 229, 255, 0.06);
    --color-teal-a7-600: rgba(0, 201, 167, 0.07);
    --color-teal-a85-200: rgba(200, 245, 235, 0.85);
    /* extended primitives from npav-deferred.css */
    --color-blue-100: #eef3fd;
    --color-blue-50-v2: #fafbff;
    --color-blue-700: #414d76;
    --color-blue-900-v2: #0f172a;
    --color-blue-a10-800: rgba(24,32,60,.10);
    --color-blue-a12-800: rgba(24,32,60,.12);
    --color-blue-a1-800: rgb(25 33 61 / 1%);
    --color-blue-a24-800: rgb(25 33 61 / 24%);
    --color-blue-a25-800: rgb(25 33 61 / 25%);
    --color-blue-a4-800: rgba(24,32,60,.04);
    --color-blue-a5-800: rgba(24,32,60,.05);
    --color-blue-a6-800: rgba(24,32,60,.06);
    --color-blue-a72-800: rgb(25 33 61 / 72%);
    --color-blue-a8-800: rgb(25 33 61 / 8%);
    --color-blue-a8-800-v2: rgba(24,32,60,.08);
    --color-cyan-100-v6: #edf1f5;
    --color-cyan-200-v3: #dfe5ec;
    --color-cyan-200-v4: #d0dff7;
    --color-cyan-300-v2: #99caff;
    --color-cyan-300-v3: #c0cad8;
    --color-cyan-500-v4: #007BFF;
    --color-cyan-500-v5: #3b6fd4;
    --color-cyan-500-v6: #2196F3;
    --color-cyan-50-v8: #f8fafb;
    --color-cyan-600-v2: #4a6fa5;
    --color-cyan-700-v2: #196fa0;
    --color-cyan-700-v3: #0056b3;
    --color-cyan-700-v4: #165c8a;
    --color-cyan-700-v5: #3f537a;
    --color-cyan-800-v10: #0e2c53;
    --color-cyan-800-v11: #1e3a6e;
    --color-cyan-800-v12: #12436c;
    --color-cyan-800-v13: #2c3e50;
    --color-cyan-800-v14: #0d2b52;
    --color-cyan-800-v9: #113b64;
    --color-cyan-a10-500-v2: rgba(0,123,255,0.1);
    --color-cyan-a15-400: #3c87f626;
    --color-cyan-a20-800: rgba(26,45,72,.2);
    --color-cyan-a30-700: rgba(0, 86, 179, 0.3);
    --color-cyan-a42-700: #3f537a6b;
    --color-cyan-a45-700: #14517d73;
    --color-cyan-a5-700: #1559870d;
    --color-cyan-a5-700-v2: #18699a0d;
    --color-gray-100-v11: #ebebf0;
    --color-gray-100-v12: #ececef;
    --color-gray-100-v13: #f3f3f3;
    --color-gray-100-v14: #f5f5f5;
    --color-gray-200-v6: #dcdcdc;
    --color-gray-200-v7: #e1e1e1;
    --color-gray-200-v8: #e8e8e8;
    --color-gray-200-v9: #e0d5d5;
    --color-gray-300-v5: #d3d3d3;
    --color-gray-300-v6: #c6b5b5;
    --color-gray-400-v5: #aaa;
    --color-gray-400-v6: #9E9E9E;
    --color-gray-400-v7: #929ca8;
    --color-gray-500-v3: #888;
    --color-gray-500-v4: #868e96;
    --color-gray-600-v10: #69887a;
    --color-gray-600-v11: #616161;
    --color-gray-600-v12: #6c6c6c;
    --color-gray-600-v13: #707070;
    --color-gray-600-v8: #646465;
    --color-gray-600-v9: #5E7C61;
    --color-gray-700-v10: #4b5563;
    --color-gray-700-v11: #5e5b5b;
    --color-gray-700-v12: #605d5d;
    --color-gray-700-v13: #5a5353;
    --color-gray-700-v14: #3E5F42;
    --color-gray-800-v4: #444;
    --color-gray-800-v5: #3b3b3b;
    --color-gray-800-v6: #444445;
    --color-gray-900-v6: #111214;
    --color-gray-a12-600: rgba(108, 117, 125, 0.12);
    --color-gray-a19-100: #eeeeee30;
    --color-gray-a30-600: rgba(108, 117, 125, 0.3);
    --color-gray-a32-400: #9e9e9e52;
    --color-gray-a33-100: #ebebf054;
    --color-gray-a36-300: #cccccc5c;
    --color-gray-a37-300: #cccccc5e;
    --color-gray-a40-800: #343a4066;
    --color-gray-a42-300: #cccccc6b;
    --color-gray-a5-300: #cccccc0d;
    --color-gray-a56-300: #cccccc8f;
    --color-gray-a60-400: #b5b3b399;
    --color-gray-a61-900: #2121219c;
    --color-gray-a65-300: #cccccca6;
    --color-gray-a66-600: #666666a8;
    --color-gray-a71-800: rgb(59 59 61 / 71%);
    --color-gray-a71-900: #000000b5;
    --color-gray-a72-900: #212529b8;
    --color-gray-a75-900: #000000bf;
    --color-gray-a76-900: #212121c2;
    --color-gray-a77-900: #000000c4;
    --color-gray-a80-300: #cccc;
    --color-gray-a81-700: #4c4652cf;
    --color-gray-a83-800: #323131d4;
    --color-gray-a88-50: rgba(255,255,255,.88);
    --color-gray-a95-50: rgba(255,255,255,.95);
    --color-gray-a98-900: #000000fa;
    --color-green-100-v10: #f0f9f5;
    --color-green-100-v3: #eef8f2;
    --color-green-100-v4: #eaf6f0;
    --color-green-100-v5: #eaf7ef;
    --color-green-100-v6: #ecfdf5;
    --color-green-100-v7: #e8f6ee;
    --color-green-100-v8: #f0fdf7;
    --color-green-100-v9: #edfaf2;
    --color-green-200-v4: #c0ffd2;
    --color-green-200-v5: #d7e8de;
    --color-green-200-v6: #d6f0e3;
    --color-green-200-v7: #d1fae5;
    --color-green-200-v8: #e4efe8;
    --color-green-200-v9: #d4edda;
    --color-green-300-v3: #c3e6cb;
    --color-green-300-v4: #a7f3d0;
    --color-green-300-v5: #a3ffb7;
    --color-green-300-v6: #c3e6d5;
    --color-green-400-v2: #7fc6a6;
    --color-green-500-v3: #40c978;
    --color-green-500-v4: #4cd38a;
    --color-green-500-v5: #4bc27d;
    --color-green-500-v6: #45c655;
    --color-green-500-v7: #48bc59;
    --color-green-500-v8: #66BB6A;
    --color-green-500-v9: #4cae4c;
    --color-green-50-v2: #fbfffc;
    --color-green-50-v3: #f8fbf9;
    --color-green-50-v4: #f7fbf8;
    --color-green-600-v6: #2bb673;
    --color-green-600-v7: #2a9e5c;
    --color-green-600-v8: rgb(61 178 123);
    --color-green-700-v10: #2d7a4e;
    --color-green-700-v11: #1e9058;
    --color-green-700-v12: #1e9f69;
    --color-green-700-v13: #406c59;
    --color-green-700-v5: #12975c;
    --color-green-700-v6: #1c9b62;
    --color-green-700-v7: #218838;
    --color-green-700-v8: #149c47;
    --color-green-700-v9: #14a85c;
    --color-green-800-v10: #155235;
    --color-green-800-v11: #155724;
    --color-green-800-v12: #1a4d33;
    --color-green-800-v8: #007a43;
    --color-green-800-v9: #027b45;
    --color-green-a0-500: rgba(37, 211, 102, 0);
    --color-green-a12-400: #6affba1f;
    --color-green-a15-600: rgba(40, 167, 69, 0.15);
    --color-green-a18-700-v2: rgba(15,143,79,.18);
    --color-green-a20-300: #b7dfcd33;
    --color-green-a25-700-v2: rgba(26,158,92,.25);
    --color-green-a30-600: rgba(40, 167, 69, 0.3);
    --color-green-a32-700: color-mix(in srgb, var(--npav-green-primary) 32%, transparent);
    --color-green-a32-700-v2: rgba(26,158,92,.32);
    --color-green-a36-700: color-mix(in srgb, var(--npav-green-primary) 36%, transparent);
    --color-green-a40-600: rgba(40, 167, 69, 0.4);
    --color-green-a52-700: color-mix(in srgb, var(--npav-green-primary) 52%, transparent);
    --color-green-a60-500: rgba(76, 175, 80, 0.6);
    --color-green-a60-500-v2: rgba(37, 211, 102, 0.6);
    --color-green-a68-700: color-mix(in srgb, var(--npav-green-primary) 68%, transparent);
    --color-green-a75-700: color-mix(in srgb, var(--npav-green-primary) 75%, transparent);
    --color-green-a78-700: #277b4bc7;
    --color-green-a80-500: rgba(37, 211, 102, 0.8);
    --color-green-a83-700: color-mix(in srgb, var(--npav-green-primary) 83%, transparent);
    --color-green-a85-700: color-mix(in srgb, var(--npav-green-primary) 85%, transparent);
    --color-green-a8-700-v2: rgba(25, 135, 84, 0.08);
    --color-green-a8-700-v3: rgba(15,143,79,.08);
    --color-green-a91-700: #1f9524e8;
    --color-indigo-a80-500: #794bddcc;
    --color-indigo-a90-900: #0e0129e6;
    --color-orange-500-v5: #ffa929;
    --color-orange-500-v6: #fcc930;
    --color-orange-800: #664d03;
    --color-pink-a17-500: #e91e632b;
    --color-red-400-v7: #ff5e68;
    --color-red-400-v8: #ff4d4d;
    --color-red-50: #fef2f2;
    --color-red-50-v2: #fbdede;
    --color-red-500-v3: #e71313;
    --color-red-500-v4: #F44336;
    --color-red-500-v5: #ff1a1a;
    --color-red-500-v6: #e2574c;
    --color-red-600-v2: #c82333;
    --color-red-700: #851c1c;
    --color-red-a30-500: rgba(255, 0, 0, 0.3);
    --color-red-a3-500: #dc354508;
    --color-red-a5-400: #fe5d680d;
    --color-red-a60-400: rgba(255, 94, 104, 0.6);
    --color-red-a70-500: #dc3545b3;
    --color-teal-200: #d2e8e2;
    --color-teal-600-v2: #3297a8;
    --color-teal-700-v2: #128C7E;
    --color-teal-700-v3: #059669;
    --color-teal-700-v4: #008f7d;
    --color-teal-800: #047857;
    --color-teal-800-v2: #065f46;
    --color-teal-800-v3: #055160;
    --color-teal-a12-600: rgba(16, 185, 129, 0.12);
    --color-teal-a25-400: #9dcec540;
    --color-teal-a40-700: rgba(18, 140, 126, 0.4);
    --color-teal-a45-600: rgba(16,185,129,.45);
    --color-teal-a60-600: rgba(16,185,129,.6);
    --color-teal-a73-700: rgb(0 143 107 / 73%);
    --color-yellow-300: #efdc9d;
    --color-yellow-400: #ffeb3b;
    --color-yellow-500: #ffd700;
    --color-yellow-600: #9e934b;
    --color-yellow-a41-500: #ffc10769;
    --color-yellow-a60-500: #ffc10799;
    --color-yellow-a83-500: #ffc107d4;
    /* CSS named-color keywords used literally in npav-deferred.css */
    --color-keyword-gray: #808080;
    --color-keyword-red: #ff0000;

    /* ==========================
       SIZING (viewport units / aspect ratios)
    ========================== */
    --size-viewport-width:  100vw;
    --size-viewport-height-dynamic: 100dvh;
    --size-mega-menu-max:   65vh;
    --aspect-ratio-hero:    4 / 3;

    /* ==========================
       SHADOWS
    ========================== */
    --shadow-xs: 0 2px 5px var(--overlay-black-10);
    --shadow-sm: 0 2px 8px var(--overlay-black-05);
    --shadow-md: 0 4px 12px var(--overlay-black-08);
    --shadow-lg: 0 4px 8px var(--overlay-primary-35);
    --shadow-focus-success: 0 0 0 0.2rem var(--overlay-success-25);
    /* Consolidated from 8 (rest) and 3 (hover) selectors in npav-2026-home.css
       that already shared this exact value — no new shadow was designed here. */
    --shadow-card-rest:  var(--space-0) var(--space-px-1) var(--space-px-3) var(--color-gray-a6-900);
    --shadow-card-hover: var(--space-0) var(--space-3) var(--space-px-24) var(--color-gray-a8-900);

    /* Consolidated from 4 selectors in npav-deferred.css that already shared
       this exact outline treatment — the closest thing to a de facto focus
       ring standard already in use. */
    --focus-ring: 2px solid var(--color-green-700-v4);

    /* ==========================
       TRANSITIONS
    ========================== */
    --transition-fast:   0.2s ease;
    --transition-normal: 0.3s ease;
    --transition-val-0-15s-ease: 0.15s ease;
    --transition-val-0-25s-ease: 0.25s ease;
    --transition-val-0-2s: 0.2s;
    --transition-val-0-3s: 0.3s;
    --transition-val-0-3s-ease-in-out: 0.3s ease-in-out;
    --transition-val-0-3s-ease-out: 0.3s ease-out;
    --transition-val-0-4s: 0.4s;
    --transition-val-0-4s-ease: 0.4s ease;
    --transition-val-0-4s-ease-in-out: 0.4s ease-in-out;
    --transition-val-0-5s: 0.5s;
    --transition-val-0-5s-ease-in-out: 0.5s ease-in-out;
    --transition-val-0-6s-ease: 0.6s ease;
    --transition-val-0-6s-linear: 0.6s linear;
    --transition-val-3s: 3s;
    --transition-val-0ms: 0ms;
    --transition-val-1000s: 1000s;
    --transition-val-140ms: 140ms;
    --transition-val-150ms: 150ms;
    --transition-val-160ms-ease: 160ms ease;
    --transition-val-180ms-ease: 180ms ease;
    --transition-val-200ms-ease: 200ms ease;
    --transition-val-220ms-ease: 220ms ease;
    --transition-val-22s: 22s;
    --transition-val-280ms: 280ms;
    --transition-val-2s: 2s;
    --transition-val-300ms-ease: 300ms ease;
    --transition-val-30s: 30s;
    --transition-val-38s: 38s;
    --transition-val-420ms: 420ms;
    --transition-val-45s: 45s;
    --transition-val-500ms-ease: 500ms ease;
    --transition-val-560ms: 560ms;
    --transition-val-650ms-ease: 650ms ease;
    --transition-val-0-18s-ease: 0.18s ease;
    --transition-val-4-5s-linear: 4.5s linear;
    --transition-val-0-2s-ease-in-out: 0.2s ease-in-out;
    --transition-val-180ms: 180ms;
    --transition-val-1s: 1s;
    --transition-val-25s: 25s;
    --transition-val-5s: 5s;
    --transition-val-6s: 6s;
    --transition-val-8s: 8s;
    --transition-val-9s: 9s;

    /* ==========================
       Z-INDEX
    ========================== */
    --z-base:     1;
    --z-sticky:   10;
    --z-dropdown: 1055;
    --z-val-neg-1: -1;
    --z-val-10001: 10001;
    --z-val-1031: 1031;
    --z-val-1040: 1040;
    --z-val-2: 2;
    --z-val-20: 20;
    --z-val-3: 3;
    --z-val-5: 5;
    --z-val-99: 99;
    --z-val-999: 999;
    --z-val-9999: 9999;
    --z-val-1000: 1000;
    --z-val-0-2: 0.2;
    --z-val-1035: 1035;
    --z-val-1050: 1050;
    --z-val-2000: 2000;
    --z-val-99999: 99999;
    --z-val-9999999: 9999999;
}
