/* Shared appearance only: no page content or application behavior changes. */
:root[data-theme]{color-scheme:dark;--green:#7ed357;--brand:#7ed357;--brand2:#7ed357;--bg:#000;--ink:#f4f5f2;--muted:#b0b9ae;--faint:#a0aca0;--line:#29382c;--panel:#0c140e;--theme-surface:#0c140e;--theme-header:#000;--theme-control:#101c13;--theme-haze:#22472b66;--theme-haze2:#16362444;--red:#ffaaa0}
:root[data-theme=light]{color-scheme:light;--bg:#fff;--ink:#111;--muted:#333d34;--faint:#465448;--line:#c4d1c3;--panel:#f6faf4;--theme-surface:#f6faf4;--theme-header:#fff;--theme-control:#fff;--theme-haze:#315e251c;--theme-haze2:#244a1b12;--red:#a52424;--shadow:0 14px 45px #12301612}
html[data-theme] body{color:var(--ink);background:radial-gradient(ellipse at 83% 3%,var(--theme-haze),transparent 37rem),radial-gradient(ellipse at 0 70%,var(--theme-haze2),transparent 40rem),var(--bg)}
html[data-theme] header,html[data-theme] header.nav{background:var(--theme-header);border-color:var(--line)}
header .brand{flex-shrink:0;max-width:100%}
header .brand img.theme-logo{width:380px;height:auto;max-width:100%;object-fit:contain;display:block}
header .brand img.theme-logo-light{display:none}
:root[data-theme=light] header .brand img.theme-logo-dark{display:none}
:root[data-theme=light] header .brand img.theme-logo-light{display:block}
header .shell{min-height:134px;gap:22px;flex-wrap:wrap}
header .navInner{gap:18px;flex-wrap:wrap;padding-block:8px}
header .links{flex:1;min-width:260px}
header .actions{flex-wrap:wrap}
.theme-toggle{flex-shrink:0;border:1px solid var(--line);border-radius:8px;background:var(--theme-control);color:var(--ink);padding:9px 13px;min-height:44px;font:inherit;font-size:13px;cursor:pointer;white-space:nowrap}
.theme-toggle:focus-visible{outline:2px solid var(--green);outline-offset:3px}
.theme-toggle:hover{border-color:var(--green)}
html[data-theme] .menu{background:var(--theme-surface);color:var(--ink)}
html[data-theme] .btnPrimary{background:var(--green);color:#10200a;-webkit-text-fill-color:#10200a;border-color:var(--green);box-shadow:none}
:root[data-theme=light] h1,:root[data-theme=light] h2,:root[data-theme=light] h3,:root[data-theme=light] .brandWord{background:none;color:var(--ink);-webkit-text-fill-color:currentColor;filter:none}
:root[data-theme=light] :is(.hero p,.project p,.cta p,.notice){color:var(--ink)}
:root[data-theme=light] :is(button,input,select,textarea){color:var(--ink);background:var(--theme-control);border-color:var(--line)}
:root[data-theme=light] :is(.panel,.metric,.card,.trustRow,.notice,.callout,.cta,.codeBlock,pre,.visual figcaption,th){background:var(--theme-surface);border-color:var(--line)}
:root[data-theme=light] :is(.footer,.pagefooter){background:transparent}
:root[data-theme=light] tbody tr:hover{background:#eaf4e6}
:root[data-theme=light] .error{color:#8b3600}
:root[data-theme=light] .pill.green{background:#17351e;color:var(--green)}
:root[data-theme=light] .primary,:root[data-theme=light] .chip[aria-pressed=true]{background:var(--green);color:#10200a}
:root[data-theme=light] .skip:focus{background:#fff;color:#111}
@media(max-width:1100px){header .navInner{justify-content:flex-start}header .navInner .links{flex-wrap:wrap}header .shell{align-items:center}}
@media(max-width:850px){header .shell{flex-direction:row;justify-content:space-between}header .shell nav{flex-basis:100%;flex-wrap:wrap}header .brand img.theme-logo{width:340px}header .navInner{align-items:flex-start}}
@media(max-width:520px){header .brand{width:100%}header .brand img.theme-logo{width:min(380px,100%)}header .shell{gap:12px}header .navInner .links{min-width:0;width:100%}.theme-toggle{font-size:12px}}

html[data-theme] #launch{background:linear-gradient(90deg,var(--theme-haze),var(--theme-haze2)) !important}
html[data-theme] .eyebrow{background:var(--theme-haze2);border-color:var(--line)}
html[data-theme] a.menuItem:hover{background:var(--theme-haze2)}
/* Owner-supplied Bauhaus: Regular is the normal/medium face in this font package. */
@font-face{font-family:"Chaingentic Bauhaus";src:url("/network-assets/BauhausRegular.ttf") format("truetype");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Chaingentic Bauhaus";src:url("/network-assets/BauhausItalic.ttf") format("truetype");font-weight:500;font-style:italic;font-display:swap}
html[data-theme] body,html[data-theme] body *{font-family:"Chaingentic Bauhaus","Segoe UI",sans-serif;font-weight:500;font-synthesis:none}

/* Shared mobile navigation and content layout, including the stats and directory. */
.cg-mobile-toggle{display:none}
.cg-table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
.cg-table-scroll:focus-visible{outline:2px solid var(--green);outline-offset:3px}
@media(max-width:850px){
  html[data-theme] header.cg-mobile-ready{position:relative;padding:0!important}
  html[data-theme] header.cg-mobile-ready :is(.navInner,.shell){display:flex;flex-direction:row!important;flex-wrap:wrap;align-items:center!important;justify-content:space-between;gap:12px;width:100%;min-height:88px!important;padding:12px 16px!important}
  header.cg-mobile-ready .brand{width:auto;max-width:calc(100% - 116px)}
  header.cg-mobile-ready .brand img.theme-logo{width:260px;max-width:100%;height:auto}
  header.cg-mobile-ready .cg-mobile-toggle{display:inline-flex;align-items:center;justify-content:center;order:0;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--theme-control);color:var(--ink);font:inherit;font-size:16px;cursor:pointer}
  html[data-theme] header.cg-mobile-ready .cg-mobile-panel{display:none!important}
  html[data-theme] header.cg-mobile-open .cg-mobile-panel{display:flex!important;order:1;flex-basis:100%;width:100%;min-width:0}
  html[data-theme] header.cg-mobile-open nav.cg-mobile-panel{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px!important;margin:0;text-align:left}
  html[data-theme] header.cg-mobile-open nav :is(a,.menuTrigger){min-height:44px;display:flex;align-items:center;justify-content:flex-start;padding:10px 4px;white-space:normal!important;font-size:16px;line-height:1.4}
  html[data-theme] header.cg-mobile-open nav .stack2 br{display:none}
  header.cg-mobile-open .theme-toggle{justify-content:center;font-size:16px}
  header.cg-mobile-open .actions{gap:10px;flex-wrap:wrap;flex-direction:row!important}
  header.cg-mobile-open .actions a{flex:1 1 140px;min-height:44px;font-size:16px;white-space:normal!important;text-align:center}
  header.cg-mobile-ready .menuWrap{grid-column:1/-1}
  header.cg-mobile-ready .menu{position:static;display:none;min-width:0;max-width:100%;opacity:1;visibility:visible;transform:none;box-shadow:none}
  header.cg-mobile-ready .cg-resources-open .menu{display:grid}
  header.cg-mobile-ready :focus-visible{outline:2px solid var(--green);outline-offset:3px}
  html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
  main{min-width:0;overflow-wrap:break-word}
  main :is(.grid2,.bento,.steps,.footerGrid,.twocol,.threecol,.project-grid)>*,main .panel{min-width:0}
  main :is(input,select,textarea){font-size:16px!important;max-width:100%;min-width:0;box-sizing:border-box}
  main :is(button,.btn,.button,.chip){min-height:44px;white-space:normal}
  main pre{max-width:100%;overflow:auto}
  main :is(code,.codeBlock){overflow-wrap:anywhere}
  main .eyebrow{font-size:12px;letter-spacing:.09em;line-height:1.6;max-width:100%}
  main .hero{padding-top:32px;padding-bottom:32px;min-height:0}
  main .section:not(.section[id]){padding-block:48px}
  main .heroActions{gap:10px}
  main .heroActions a{flex:1 1 180px;text-align:center}
  main .grid2{gap:28px}
  .tablewrap{max-width:100%;overscroll-behavior-x:contain}
  .metrics,.twocol,.threecol,.project-grid{min-width:0}
  .metrics>*{min-width:0;overflow-wrap:anywhere}
  .toolbar>*,.toolbar .grow{min-width:0;max-width:100%}
  .toolbar :is(button,select,input){min-height:44px;font-size:16px!important}
  .subnav{gap:6px 16px}.subnav a{display:inline-flex;align-items:center;min-height:44px;font-size:16px}
  .pagefooter{padding-bottom:calc(32px + env(safe-area-inset-bottom,0px))}
}
@media(max-width:380px){header.cg-mobile-ready .brand img.theme-logo{width:205px}.metrics{grid-template-columns:1fr}.metric{border-right:0;border-bottom:1px solid var(--line)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
