/* Pilotage — pilotagespec.org  ·  design system */
:root{
  --ink0:#0A0D14; --ink1:#0E121C; --ink2:#141926; --ink3:#1A2030; --ink4:#232B3F;
  --line:#232B3F; --line-soft:#1C2334;
  --text:#CDD6E6; --head:#EAF0FA; --dim:#8B95AC; --faint:#5C6680;
  --gold:#F5C15C; --gold-soft:#FFD27A; --gold-dim:#C79A45; --gold-glow:rgba(245,193,92,.13);
  --cyan:#5AD9E4; --cyan-dim:#3FA9B4; --cyan-glow:rgba(90,217,228,.12);
  --green:#7BD88F; --rose:#F27E9D; --violet:#B39DFF;
  --mono:"SFMono-Regular",ui-monospace,"Cascadia Code","JetBrains Mono","Consolas",Menlo,monospace;
  --sans:"Inter","Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,sans-serif;
  --maxw:1180px; --content:760px; --sidebar:270px; --toc:220px;
  --radius:12px; --radius-sm:8px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
html.landing{scroll-behavior:smooth}
body{
  background:var(--ink0);color:var(--text);font-family:var(--sans);
  font-size:16px;line-height:1.68;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
a{color:var(--cyan);text-decoration:none;transition:color .15s}
a:hover{color:var(--gold-soft)}
code,pre,kbd{font-family:var(--mono)}
img{max-width:100%}
::selection{background:rgba(245,193,92,.22);color:#fff}

/* ---------- top nav ---------- */
.nav{position:sticky;top:0;z-index:50;background:rgba(10,13,20,.82);backdrop-filter:saturate(150%) blur(12px);
  border-bottom:1px solid var(--line-soft)}
.nav-in{max-width:var(--maxw);margin:0 auto;height:58px;display:flex;align-items:center;gap:26px;padding:0 24px}
.brand{font-family:var(--mono);font-weight:700;letter-spacing:.18em;color:var(--gold);font-size:15px;white-space:nowrap}
.brand:hover{color:var(--gold)}
.nav-links{display:flex;gap:22px;align-items:center;margin-left:6px}
.nav-links a{color:var(--dim);font-size:14.5px;font-weight:500;padding:4px 0;position:relative}
.nav-links a:hover{color:var(--head)}
.nav-links a.active{color:var(--head)}
.nav-links a.active::after{content:"";position:absolute;left:0;right:0;bottom:-19px;height:2px;background:var(--gold);border-radius:2px}
.nav-right{margin-left:auto;display:flex;gap:18px;align-items:center}
.nav-right a{color:var(--dim);font-size:13.5px}
.nav-right a:hover{color:var(--head)}
.nav-cta{border:1px solid var(--line4,var(--ink4));border-radius:999px;padding:6px 14px !important;color:var(--text) !important;background:var(--ink2)}
.nav-cta:hover{border-color:var(--faint)}
.menu-btn{display:none}

/* ---------- generic layout ---------- */
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.muted{color:var(--dim)}
.mono{font-family:var(--mono)}

/* ================= LANDING ================= */
.hero{position:relative;overflow:hidden;padding:96px 0 62px;
  background:
    radial-gradient(1100px 460px at 72% -8%, var(--cyan-glow), transparent 62%),
    radial-gradient(820px 400px at 8% 2%, var(--gold-glow), transparent 55%);}
.hero .grid-fade{position:absolute;inset:0;background-image:
  linear-gradient(var(--line-soft) 1px,transparent 1px),linear-gradient(90deg,var(--line-soft) 1px,transparent 1px);
  background-size:52px 52px;opacity:.35;mask-image:radial-gradient(680px 380px at 60% 0%,#000,transparent 75%);pointer-events:none}
.hero .wrap{position:relative}
.kicker{font-family:var(--mono);font-size:12.5px;letter-spacing:.16em;color:var(--cyan);text-transform:uppercase}
.hero h1{font-size:clamp(34px,5.4vw,58px);line-height:1.08;margin:16px 0 20px;color:var(--head);
  font-weight:680;letter-spacing:-.02em;max-width:16ch}
.hero h1 em{font-style:normal;color:var(--gold)}
.hero .sub{max-width:640px;color:var(--dim);font-size:18.5px;line-height:1.6}
.hero .sub b{color:var(--text);font-weight:600}
.chips{display:flex;gap:9px;flex-wrap:wrap;margin:26px 0 2px}
.chip{font-family:var(--mono);font-size:11.5px;color:var(--dim);border:1px solid var(--line);
  border-radius:999px;padding:5px 12px;background:rgba(20,25,38,.6)}
.chip b{color:var(--text);font-weight:600}
.ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;border-radius:9px;font-size:15px;
  font-weight:600;border:1px solid var(--line);transition:all .16s}
.btn.primary{background:var(--gold);color:#141007;border-color:var(--gold)}
.btn.primary:hover{background:var(--gold-soft);color:#141007;transform:translateY(-1px)}
.btn.ghost{color:var(--text);background:var(--ink2)}
.btn.ghost:hover{border-color:var(--faint);color:var(--head);transform:translateY(-1px)}

section.band{padding:64px 0}
section.band.alt{background:linear-gradient(180deg,var(--ink1),var(--ink0));border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.14em;color:var(--gold-dim);text-transform:uppercase}
h2.sec{font-size:29px;color:var(--head);margin:10px 0 8px;font-weight:660;letter-spacing:-.015em}
.sec-lead{color:var(--dim);max-width:680px;font-size:16.5px;margin-bottom:34px}

/* loop rail */
.rail{display:flex;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;
  background:linear-gradient(180deg,var(--ink2),var(--ink1))}
.rail .node{flex:1 1 0;min-width:150px;padding:20px 18px;border-right:1px solid var(--line)}
.rail .node:last-child{border-right:0}
.rail .rn{font-family:var(--mono);font-size:13.5px;color:var(--gold);white-space:nowrap}
.rail .rn .arw{color:var(--faint);margin-left:5px}
.rail .rd{font-size:12.8px;color:var(--dim);margin-top:7px;line-height:1.5}

/* cards grid */
.cards{display:grid;gap:16px}
.g3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.g2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
.card{border:1px solid var(--line);border-radius:var(--radius);padding:24px;background:var(--ink1);transition:border-color .16s,transform .16s}
.card h3{font-size:17px;color:var(--head);margin-bottom:9px;font-weight:620}
.card p{font-size:14.2px;color:var(--dim)}
.card .num{font-family:var(--mono);color:var(--cyan);font-size:12px;letter-spacing:.1em;display:block;margin-bottom:10px}
.card code{font-size:12.5px;color:#AEE9EF;background:var(--ink3);padding:1px 6px;border-radius:5px}

/* section showcase (big cards) */
.showcase{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
a.big{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;padding:26px;
  background:linear-gradient(180deg,var(--ink2),var(--ink1));transition:all .18s;min-height:210px}
a.big:hover{border-color:var(--gold-dim);transform:translateY(-3px);box-shadow:0 18px 40px -24px rgba(0,0,0,.8)}
a.big .tag{font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;color:var(--cyan);text-transform:uppercase}
a.big h3{font-size:22px;color:var(--head);margin:12px 0 10px;font-weight:640;letter-spacing:-.01em}
a.big p{color:var(--dim);font-size:14.5px;flex:1}
a.big .go{margin-top:16px;color:var(--gold);font-weight:600;font-size:14px}

/* demo split */
.split{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}
.demo{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--ink1)}
.demo .bar{display:flex;align-items:center;gap:8px;padding:11px 16px;border-bottom:1px solid var(--line);background:var(--ink2)}
.demo .dot{width:9px;height:9px;border-radius:50%;background:var(--faint);opacity:.55}
.demo .lbl{font-family:var(--mono);font-size:11.5px;color:var(--faint);margin-left:auto;letter-spacing:.04em}
.demo pre{padding:18px 20px;font-size:13px;line-height:1.62;overflow-x:auto;background:none;border:0;margin:0}
.k{color:var(--cyan)} .s{color:var(--gold)} .g{color:var(--green)} .r{color:var(--rose)} .cm{color:var(--faint);font-style:italic}

/* ---------- footer ---------- */
footer.site{border-top:1px solid var(--line-soft);padding:40px 0 52px;color:var(--faint);font-size:13.5px;background:var(--ink1)}
footer.site .cols{display:flex;flex-wrap:wrap;gap:40px;align-items:flex-start}
footer.site .brand{font-size:14px}
footer.site .fl{display:flex;flex-direction:column;gap:8px}
footer.site .fl a{color:var(--dim);font-size:13.5px}
footer.site .fl a:hover{color:var(--head)}
footer.site .fl .ft{color:var(--faint);font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:3px}
footer.site .cite{margin-top:26px;padding-top:20px;border-top:1px solid var(--line-soft);font-size:12.5px;line-height:1.6;color:var(--faint)}

/* ================= DOC PAGES ================= */
.doc{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);gap:0;padding:0 24px}
.doc.with-toc{grid-template-columns:var(--sidebar) minmax(0,1fr) var(--toc)}
.sidebar{position:sticky;top:58px;align-self:start;height:calc(100vh - 58px);overflow-y:auto;
  padding:30px 24px 40px 0;border-right:1px solid var(--line-soft)}
.sidebar .grp{margin-bottom:24px}
.sidebar .grp-t{font-family:var(--mono);font-size:11px;letter-spacing:.13em;color:var(--faint);text-transform:uppercase;margin-bottom:10px}
.sidebar a{display:block;color:var(--dim);font-size:14px;padding:5px 0 5px 12px;border-left:2px solid transparent;line-height:1.35}
.sidebar a:hover{color:var(--head)}
.sidebar a.cur{color:var(--gold);border-left-color:var(--gold);font-weight:500}
.content{min-width:0;padding:40px 0 90px 44px}
.doc:not(.with-toc) .content{padding-right:20px}
.tocbar{position:sticky;top:58px;align-self:start;height:calc(100vh - 58px);overflow-y:auto;padding:40px 0 40px 24px}
.tocbar .tt{font-family:var(--mono);font-size:11px;letter-spacing:.13em;color:var(--faint);text-transform:uppercase;margin-bottom:12px}
.tocbar a{display:block;color:var(--dim);font-size:13px;padding:4px 0;line-height:1.4}
.tocbar a:hover{color:var(--head)}
.tocbar a.h3{padding-left:12px;font-size:12.5px}

/* doc breadcrumb + article */
.crumb{font-family:var(--mono);font-size:12px;color:var(--faint);letter-spacing:.06em;margin-bottom:18px}
.crumb a{color:var(--gold-dim)}
article{font-size:16px}
article>*{max-width:var(--content)}
article h1{font-size:34px;color:var(--head);font-weight:680;letter-spacing:-.02em;line-height:1.14;margin:0 0 8px}
article h2{font-size:24px;color:var(--head);font-weight:640;letter-spacing:-.01em;margin:44px 0 14px;padding-top:8px;scroll-margin-top:18px}
article h3{font-size:19px;color:var(--head);font-weight:620;margin:32px 0 12px;scroll-margin-top:18px}
article h4{font-size:16px;color:var(--head);font-weight:640;margin:24px 0 8px;scroll-margin-top:18px}
article h2+p,article h3+p{margin-top:0}
article p{margin:0 0 16px;color:var(--text)}
article ul,article ol{margin:0 0 18px;padding-left:24px}
article li{margin:6px 0}
article li::marker{color:var(--faint)}
article strong{color:var(--head);font-weight:640}
article em{color:var(--text)}
article a{border-bottom:1px solid rgba(90,217,228,.28)}
article a:hover{border-bottom-color:var(--gold-soft)}
article hr{border:0;border-top:1px solid var(--line-soft);margin:40px 0;max-width:var(--content)}
article blockquote{margin:0 0 18px;padding:14px 20px;border-left:3px solid var(--gold-dim);
  background:rgba(245,193,92,.05);border-radius:0 8px 8px 0;color:var(--text)}
article blockquote p:last-child{margin-bottom:0}
.anchor{opacity:0;margin-left:10px;color:var(--faint);font-weight:400;text-decoration:none;font-size:.8em}
article h2:hover .anchor,article h3:hover .anchor,article h4:hover .anchor{opacity:1}

/* inline code */
article :not(pre)>code{font-size:.86em;color:#AEE9EF;background:var(--ink3);padding:2px 6px;border-radius:5px;border:1px solid var(--line-soft)}

/* code blocks */
article pre{max-width:var(--content);background:var(--ink2);border:1px solid var(--line);border-radius:10px;
  padding:16px 18px;overflow-x:auto;margin:0 0 18px;font-size:13px;line-height:1.6}
article pre code{background:none;border:0;padding:0;color:#C4CEDE;font-size:13px}
.codewrap{max-width:var(--content);margin:0 0 18px}
.codewrap.lang::before{content:attr(data-lang);display:block;font-family:var(--mono);font-size:10.5px;
  letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin-bottom:-8px;padding-left:2px}
.codewrap pre{margin:0}

/* request / response cards */
.wire{max-width:var(--content);border:1px solid var(--line);border-radius:10px;overflow:hidden;margin:0 0 8px}
.wire .whead{display:flex;align-items:center;gap:8px;padding:8px 15px;font-family:var(--mono);font-size:11px;
  letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid var(--line)}
.wire.req .whead{color:var(--cyan);background:rgba(90,217,228,.06)}
.wire.res .whead{color:var(--gold);background:rgba(245,193,92,.06)}
.wire .whead .ic{font-size:12px}
.wire pre{border:0;border-radius:0;margin:0;background:var(--ink2);max-width:none}
.wirepair{margin:0 0 20px}

/* callout: "What this taught" etc. via h3 heuristic handled in build */
.callout{max-width:var(--content);border:1px solid var(--line);border-left:3px solid var(--cyan-dim);
  background:linear-gradient(180deg,rgba(90,217,228,.045),transparent);border-radius:0 10px 10px 0;
  padding:16px 20px;margin:0 0 20px}
.callout .ct{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--cyan-dim);margin-bottom:6px}
.callout p:last-child{margin-bottom:0}

/* tables */
article .tablewrap{max-width:var(--content);overflow-x:auto;margin:0 0 20px}
article table{border-collapse:collapse;width:100%;font-size:14px}
article th,article td{border:1px solid var(--line);padding:9px 13px;text-align:left;vertical-align:top}
article th{background:var(--ink2);color:var(--head);font-weight:600;font-size:12.5px;letter-spacing:.02em}
article td{color:var(--text)}
article tbody tr:nth-child(even){background:rgba(20,25,38,.4)}
article td code,article th code{white-space:nowrap}

/* prev/next */
.pager{max-width:var(--content);display:flex;justify-content:space-between;gap:16px;margin-top:48px;padding-top:24px;border-top:1px solid var(--line-soft)}
.pager a{flex:1;border:1px solid var(--line);border-radius:10px;padding:14px 18px;background:var(--ink1);transition:border-color .15s}
.pager a:hover{border-color:var(--faint)}
.pager .dir{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}
.pager .ttl{color:var(--head);font-weight:600;font-size:15px;margin-top:3px}
.pager a.next{text-align:right}

/* pygments overrides for cohesion (dark) */
.highlight,pre .hll{background:none}

@media(max-width:1080px){
  .doc,.doc.with-toc{grid-template-columns:1fr}
  .sidebar{display:none}
  .tocbar{display:none}
  .content{padding:34px 0 80px}
  .menu-btn{display:inline-flex}
}
@media(max-width:680px){
  .nav-links{display:none}
  .hero{padding:64px 0 44px}
  article>*,article pre,.wire,.wirewrap,.callout,.tablewrap,article table,.pager{max-width:100%}
  article{font-size:15.5px}
}

/* ---- agent-driven loop animation (landing) ---- */
.agentloop{max-width:900px;margin:10px auto 0;position:relative}
.agentloop svg{width:100%;height:auto;display:block;overflow:visible}
.agentloop .spoke{stroke:#202a3d;stroke-width:2;fill:none;transition:stroke .25s}
.agentloop .spoke.active{stroke:#37506a}
.agentloop .node .ring{fill:#0E131F;stroke:#2A344A;stroke-width:1.7;transition:stroke .3s,fill .3s,filter .3s}
.agentloop .node .halo{fill:none;stroke:var(--cyan);stroke-width:1.6;opacity:0;transform-box:fill-box;transform-origin:center;transition:opacity .3s,transform .3s}
.agentloop .node .glyph{stroke:#8B95AC;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round;transition:stroke .3s}
.agentloop .node .glyph.f{fill:#8B95AC;stroke:none;transition:fill .3s}
.agentloop .node text{fill:var(--dim);font-family:var(--mono);font-size:13px;text-anchor:middle;transition:fill .3s}
.agentloop .node .sub2{fill:var(--faint);font-size:11px}
.agentloop .node.lit .ring{stroke:var(--gold);fill:#181a13;filter:drop-shadow(0 0 10px rgba(245,193,92,.5))}
.agentloop .node.lit .halo{opacity:.9;transform:scale(1.16)}
.agentloop .node.lit .glyph{stroke:var(--gold-soft)} .agentloop .node.lit .glyph.f{fill:var(--gold-soft)}
.agentloop .node.lit text{fill:var(--head)}
.agentloop .node.err .ring{stroke:var(--rose);filter:drop-shadow(0 0 10px rgba(242,126,157,.5))}
.agentloop .node.err .halo{stroke:var(--rose)} .agentloop .node.err .glyph{stroke:var(--rose)} .agentloop .node.err .glyph.f{fill:var(--rose)}
.agentloop .node.ok .ring{stroke:var(--green);filter:drop-shadow(0 0 10px rgba(123,216,143,.5))}
.agentloop .node.ok .halo{stroke:var(--green)} .agentloop .node.ok .glyph{stroke:var(--green)} .agentloop .node.ok .glyph.f{fill:var(--green)}
.agentloop .chip{opacity:0;transition:opacity .25s,fill .3s}
.agentloop .node.err .chip{opacity:1;fill:var(--rose)} .agentloop .node.ok .chip{opacity:1;fill:var(--green)}
.agentloop .tbar{transform-box:fill-box;transform-origin:left center;transform:scaleX(0);opacity:0;transition:transform .35s,opacity .3s}
.agentloop .node.trace .tb1{transform:scaleX(1);opacity:1;transition-delay:.05s}
.agentloop .node.trace .tb2{transform:scaleX(1);opacity:1;transition-delay:.18s}
.agentloop .node.trace .tb3{transform:scaleX(1);opacity:1;transition-delay:.31s}
.agentloop .agent-core{fill:url(#agentGrad);filter:drop-shadow(0 0 18px rgba(245,193,92,.35))}
.agentloop .agent-core.think{animation:aloopThink .9s ease-out}
@keyframes aloopThink{0%{filter:drop-shadow(0 0 10px rgba(245,193,92,.3))}40%{filter:drop-shadow(0 0 26px rgba(245,193,92,.75))}100%{filter:drop-shadow(0 0 18px rgba(245,193,92,.35))}}
.agentloop .agent-ring{fill:none;stroke:#3A465F;stroke-width:1.6}
.agentloop .agent-label{fill:var(--gold-soft);font-family:var(--mono);font-size:13px;text-anchor:middle;letter-spacing:.08em;font-weight:600}
.agentloop .agent-glyph{stroke:#141007;stroke-width:2;fill:none;stroke-linecap:round}
.agentloop #aloop-packet{opacity:0;transition:transform .5s cubic-bezier(.5,0,.3,1),opacity .18s}
.agentloop #aloop-packet.req circle{fill:url(#reqGrad);filter:drop-shadow(0 0 8px rgba(245,193,92,.9))}
.agentloop #aloop-packet.res circle{fill:url(#resGrad);filter:drop-shadow(0 0 8px rgba(90,217,228,.9))}
.aloop-legend{margin-top:22px;display:flex;gap:28px;justify-content:center;flex-wrap:wrap;font-family:var(--mono);font-size:12px;color:var(--faint)}
.aloop-legend .dotk{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:7px;vertical-align:middle}
.aloop-legend .dotk.g{background:var(--gold)} .aloop-legend .dotk.c{background:var(--cyan)}
@media(prefers-reduced-motion:reduce){.agentloop #aloop-packet,.agentloop .agent-core{transition:none;animation:none}}

/* ---- cinematic centered cover hero ---- */
.hero{padding:100px 0 78px}
.hero .wrap{text-align:center;max-width:1000px;z-index:1}
.hero h1{max-width:none;margin:20px auto 22px}
.hero h1 .l1,.hero h1 .l2{display:block}
.hero h1 .l2{color:var(--gold)}
.hero .sub{max-width:660px;margin:0 auto}
.chips{justify-content:center;margin:34px 0 0}
.ctas{justify-content:center;margin-top:30px}

/* living aurora backdrop (the "cover" motion) */
.hero .aurora{position:absolute;inset:-15% -12% -25%;pointer-events:none;z-index:0;
  background:
    radial-gradient(560px 380px at 28% 20%, rgba(245,193,92,.14), transparent 60%),
    radial-gradient(620px 420px at 74% 26%, rgba(90,217,228,.14), transparent 62%),
    radial-gradient(520px 360px at 52% 82%, rgba(179,157,255,.08), transparent 66%);
  animation:auroraDrift 24s ease-in-out infinite alternate}
@keyframes auroraDrift{
  0%{transform:translate3d(-2%,-1%,0) scale(1);opacity:.85}
  50%{transform:translate3d(2%,1.4%,0) scale(1.08);opacity:1}
  100%{transform:translate3d(-1%,2%,0) scale(1.03);opacity:.9}}
.hero .grid-fade{animation:gridPan 70s linear infinite}
@keyframes gridPan{from{background-position:0 0}to{background-position:52px 52px}}

/* staggered slide-in for titles + hero pieces */
.reveal{opacity:0;transform:translateY(22px);animation:heroIn .82s cubic-bezier(.2,.7,.2,1) forwards}
@keyframes heroIn{to{opacity:1;transform:translateY(0)}}
.reveal.d1{animation-delay:.05s}
.reveal.d2{animation-delay:.20s}
.reveal.d3{animation-delay:.34s}
.reveal.d4{animation-delay:.50s}
.reveal.d5{animation-delay:.66s}
.reveal.d6{animation-delay:.86s}
.reveal.d7{animation-delay:1.0s}

/* live-loop product panel (app window) */
.loop-panel{max-width:900px;margin:44px auto 0;border:1px solid var(--line);border-radius:16px;overflow:hidden;
  background:linear-gradient(180deg,rgba(20,25,38,.92),rgba(14,18,28,.92));backdrop-filter:blur(2px);
  box-shadow:0 50px 110px -55px rgba(0,0,0,.92), 0 0 0 1px rgba(255,255,255,.02) inset;
  text-align:left}
.loop-bar{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--line-soft);
  background:rgba(10,13,20,.55)}
.loop-bar .pd{width:10px;height:10px;border-radius:50%;background:var(--ink4)}
.loop-bar .pd.a{background:rgba(242,126,157,.5)}
.loop-bar .pd.b{background:rgba(245,193,92,.5)}
.loop-bar .pd.c{background:rgba(123,216,143,.5)}
.loop-title{font-family:var(--mono);font-size:11.5px;color:var(--faint);margin-left:8px;letter-spacing:.05em}
.loop-title b{color:var(--gold-dim);font-weight:400}
.loop-body{padding:24px 28px 26px}
.loop-body .agentloop{max-width:760px;margin:0 auto}
.loop-body .aloop-legend{margin-top:16px}

@media(prefers-reduced-motion:reduce){
  .reveal{animation:none;opacity:1;transform:none}
  .hero .aurora,.hero .grid-fade{animation:none}
}
@media(max-width:680px){
  .loop-body{padding:16px 12px 18px}
  .aloop-legend{gap:14px;font-size:11px}
}

/* ---- fit the hero cover within one screen (no clipped panel) ---- */
.hero{min-height:100vh;padding:74px 0 26px;display:flex;align-items:center}
.hero .wrap{width:100%}
.hero h1{font-size:clamp(26px,3.8vw,42px);line-height:1.08;margin:11px auto 11px}
.hero .sub{font-size:15px;line-height:1.5;max-width:588px}
.loop-panel{max-width:610px;margin:18px auto 0}
.loop-bar{padding:8px 13px}
.loop-title{font-size:11px}
.loop-body{padding:10px 14px 12px}
.loop-body .agentloop{max-width:520px}
.agentloop .node text{font-size:18px}
.agentloop .node .sub2{font-size:14px}
.agentloop .agent-label{font-size:16px}
.hero .aloop-legend{margin-top:8px;font-size:10.5px;gap:20px}
.chips{margin:13px 0 0;gap:7px}
.chip{font-size:10.5px;padding:4px 10px}
.ctas{margin-top:15px}
.btn{padding:10px 18px;font-size:14.5px}

/* ---- interactive "see it work" stepper ---- */
.stepper{max-width:900px;margin:8px auto 0}
.sp-panel{border:1px solid var(--line);border-radius:16px;overflow:hidden;
  background:linear-gradient(180deg,rgba(20,25,38,.94),rgba(14,18,28,.94));
  box-shadow:0 40px 90px -50px rgba(0,0,0,.9),0 0 0 1px rgba(255,255,255,.02) inset}
.sp-bar{display:flex;align-items:center;gap:8px;padding:11px 15px;border-bottom:1px solid var(--line-soft);background:rgba(10,13,20,.5)}
.sp-bar .pd{width:10px;height:10px;border-radius:50%}
.sp-bar .pd.a{background:rgba(242,126,157,.5)} .sp-bar .pd.b{background:rgba(245,193,92,.5)} .sp-bar .pd.c{background:rgba(123,216,143,.5)}
.sp-title{font-family:var(--mono);font-size:11px;color:var(--faint);margin-left:8px;letter-spacing:.04em}
.sp-title .live{color:var(--green)}
.sp-rail{display:flex;gap:6px;flex-wrap:wrap;padding:12px 15px;border-bottom:1px solid var(--line-soft);background:rgba(10,13,20,.22)}
.sp-st{cursor:pointer;font-family:var(--mono);font-size:11.5px;color:var(--dim);background:rgba(20,25,38,.6);
  border:1px solid var(--line);border-radius:999px;padding:5px 12px;transition:all .25s;white-space:nowrap;user-select:none}
.sp-st:hover{border-color:var(--faint);color:var(--head)}
.sp-st.on{color:#141007;background:var(--gold);border-color:var(--gold);box-shadow:0 0 14px rgba(245,193,92,.35)}
.sp-st.done{color:var(--green);border-color:rgba(123,216,143,.3)}
.sp-wire{display:grid;grid-template-columns:1fr 1fr;height:300px}
.sp-col{padding:14px 16px;overflow:hidden;min-width:0}
.sp-col.req{border-right:1px solid var(--line-soft)}
.sp-ch{font-family:var(--mono);font-size:11.5px;letter-spacing:.05em;margin-bottom:11px;display:flex;align-items:center;gap:6px}
.sp-col.req .sp-ch{color:var(--cyan)}
.sp-col.res .sp-ch{color:var(--gold)}
.sp-col.res .sp-ch.err{color:var(--rose)}
.sp-ch .tool{color:var(--head);font-weight:600}
.sp-ch .tag{margin-left:auto;color:var(--faint);font-weight:400;font-size:11px}
.sp-col.res .sp-ch.err .tag{color:var(--rose)}
.sp-wire pre{margin:0;overflow:hidden}
.sp-wire code{font-family:var(--mono);font-size:12px;line-height:1.55;display:block;white-space:pre-wrap;word-break:break-word}
.sp-wire .ln{display:block;opacity:0;transform:translateY(3px);animation:lnIn .3s ease forwards}
.sp-wire .cursor{display:inline-block;width:6px;height:12px;background:var(--cyan);margin-left:2px;vertical-align:text-bottom;animation:blink .9s step-end infinite;opacity:.8}
.sp-wire .key{color:var(--cyan)} .sp-wire .str{color:var(--gold-soft)} .sp-wire .num{color:var(--violet)}
.sp-wire .bool{color:var(--green)} .sp-wire .boolf{color:var(--rose)} .sp-wire .nul{color:var(--faint)}
.sp-cap{padding:13px 18px;border-top:1px solid var(--line-soft);color:var(--dim);font-size:14px;line-height:1.5;min-height:52px;background:rgba(10,13,20,.3)}
.sp-cap b{color:var(--head);font-weight:600}
.sp-nav{display:flex;align-items:center;justify-content:center;gap:16px;padding:11px;border-top:1px solid var(--line-soft)}
.sp-arrow{cursor:pointer;width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:var(--ink2);color:var(--dim);
  display:flex;align-items:center;justify-content:center;font-size:16px;line-height:1;transition:all .18s;user-select:none}
.sp-arrow:hover{border-color:var(--faint);color:var(--head);transform:translateY(-1px)}
.sp-dots{display:flex;gap:7px}
.sp-dot{width:8px;height:8px;border-radius:50%;background:var(--ink4);cursor:pointer;transition:all .2s;padding:0;border:0}
.sp-dot.on{background:var(--gold);transform:scale(1.25)}
@keyframes lnIn{to{opacity:1;transform:none}}
@keyframes blink{50%{opacity:0}}
@media(max-width:640px){.sp-wire{grid-template-columns:1fr;height:auto;min-height:280px}.sp-col.req{border-right:0;border-bottom:1px solid var(--line-soft)}}
@media(prefers-reduced-motion:reduce){.sp-wire .ln{animation:none;opacity:1;transform:none}.sp-wire .cursor{animation:none}}

/* ---- fit the stepper section in one screen + gentle whole-section snap ---- */
#see-it-work{padding:40px 0}
#see-it-work h2.sec{margin:8px 0 7px}
#see-it-work .sec-lead{margin-bottom:20px}
.sp-wire{height:286px}
.sp-cap{height:60px;min-height:0;padding:11px 18px;overflow:hidden}
.sp-nav{padding:9px}
html{scroll-padding-top:64px}

/* ---- stepper mission intro slide ---- */
.sp-body{height:286px;position:relative}
.sp-wire{height:100%}
.sp-intro{position:absolute;inset:0;display:none;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:22px 34px;gap:11px}
.sp-panel.is-intro .sp-wire{display:none}
.sp-panel.is-intro .sp-intro{display:flex}
.sp-intro-eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.16em;color:var(--cyan);text-transform:uppercase}
.sp-intro-title{font-size:23px;color:var(--head);font-weight:660;letter-spacing:-.01em;max-width:560px;line-height:1.22}
.sp-intro-sub{color:var(--dim);font-size:14.5px;max-width:470px;line-height:1.5}

/* ---- "how it works" concept animation (MCP vs Pilotage) ---- */
.cx{display:grid;gap:16px;margin-top:6px}
.cx-lane{border:1px solid var(--line);border-radius:14px;padding:20px 24px;background:linear-gradient(180deg,var(--ink2),var(--ink1))}
.cx-mcp{opacity:.94}
.cx-tag{font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:15px}
.cx-mcp .cx-tag{color:var(--rose)} .cx-pil .cx-tag{color:var(--gold)}
.cx-flow{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.cx-chip{font-family:var(--mono);font-size:13px;padding:8px 14px;border-radius:8px;border:1px solid var(--line);
  color:var(--dim);background:rgba(14,18,28,.7);white-space:nowrap;transition:all .3s}
.cx-agent{color:var(--head);border-color:var(--ink4)}
.cx-wire{flex:1;min-width:16px;height:1px;background:var(--line)}
.cx-fail{color:var(--rose);border-color:rgba(242,126,157,.4);animation:cxFail 3.8s ease-in-out infinite}
@keyframes cxFail{0%,55%{opacity:.4;box-shadow:none}70%{opacity:1;box-shadow:0 0 18px rgba(242,126,157,.45);border-color:var(--rose)}100%{opacity:.4}}
.cx-step{animation:cxStep 3.8s ease-in-out infinite;animation-delay:calc(var(--i) * 0.5s)}
@keyframes cxStep{0%,8%{color:var(--dim);border-color:var(--line);box-shadow:none}18%,36%{color:var(--green);border-color:var(--green);box-shadow:0 0 14px rgba(123,216,143,.4)}52%,100%{color:var(--dim);border-color:var(--line);box-shadow:none}}
.cx-ok{color:var(--green);border-color:rgba(123,216,143,.4);animation:cxOk 3.8s ease-in-out infinite}
@keyframes cxOk{0%,60%{opacity:.42;box-shadow:none}76%{opacity:1;box-shadow:0 0 18px rgba(123,216,143,.5);border-color:var(--green)}100%{opacity:.5}}
.cx-note{margin-top:14px;color:var(--dim);font-size:13.5px;line-height:1.55;max-width:660px}
.cx-punch{margin-top:22px;text-align:center;color:var(--dim);font-size:16.5px}
.cx-punch b{color:var(--head);font-weight:600}
@media(max-width:560px){.cx-wire{display:none}}
@media(prefers-reduced-motion:reduce){.cx-fail,.cx-step,.cx-ok{animation:none}.cx-step{color:var(--green);border-color:var(--green)}}

/* ---- "how it works" hub panel (approved concept diagram, v1.1) ---- */
#how-it-works{padding:40px 0}
#how-it-works h2.sec{margin:8px 0 7px}
#how-it-works .sec-lead{margin-bottom:18px}
#how-it-works .sec-lead b{color:var(--gold-soft);font-weight:600}
.cxh-panel{max-width:920px;margin:0 auto;border:1px solid var(--line);border-radius:16px;overflow:hidden;
  background:linear-gradient(180deg,rgba(20,25,38,.94),rgba(13,17,26,.97));
  box-shadow:0 40px 90px -50px rgba(0,0,0,.9),0 0 0 1px rgba(255,255,255,.02) inset}
.cxh-bar{display:flex;align-items:center;gap:8px;padding:10px 15px;border-bottom:1px solid var(--line-soft);background:rgba(10,13,20,.5)}
.cxh-bar .pd{width:10px;height:10px;border-radius:50%}
.cxh-bar .pd.a{background:rgba(242,126,157,.5)} .cxh-bar .pd.b{background:rgba(245,193,92,.5)} .cxh-bar .pd.c{background:rgba(123,216,143,.5)}
.cxh-bt{font-family:var(--mono);font-size:11px;color:var(--faint);margin-left:8px;letter-spacing:.04em}
.cxh-body{padding:10px 14px 4px}
.cxhub svg{display:block;width:100%;height:auto}
.cxhub .colh{font-family:var(--mono);font-size:12px;letter-spacing:.12em;font-weight:600}
.cxhub .colh.mcp{fill:var(--cyan-dim)} .cxhub .colh.pil{fill:var(--gold)}
.cxhub .node{fill:url(#nfill);stroke:var(--line);stroke-width:1}
.cxhub .node.first{stroke:rgba(245,193,92,.55)}
.cxhub .node.fail{stroke:rgba(242,126,157,.45)}
.cxhub .accent{rx:1.5}
.cxhub .nt{font-family:var(--mono);font-size:12px;font-weight:600;fill:var(--head)}
.cxhub .nt .num{fill:var(--gold-dim)}
.cxhub .nt.rose{fill:var(--rose)} .cxhub .nt.cyan{fill:var(--cyan)}
.cxhub .ns{font-family:var(--sans);font-size:8.5px;fill:var(--faint)}
.cxhub .chip{fill:rgba(14,18,28,.92);stroke:var(--line);stroke-width:1}
.cxhub .ct{font-family:var(--mono);font-size:10.5px;fill:var(--text)}
.cxhub .ct .dim{fill:var(--faint)} .cxhub .ct .g{fill:var(--green)} .cxhub .ct .w{fill:var(--gold)} .cxhub .ct .r{fill:var(--rose)} .cxhub .ct .c{fill:var(--cyan)}
.cxhub .tiny{font-family:var(--mono);font-size:8.5px;fill:var(--faint)}
.cxhub .wire{fill:none;stroke:#26314B;stroke-width:1.2}
.cxhub .wire.soft{stroke:#222C44}
.cxhub .coup{fill:none;stroke:#33405F;stroke-width:1.1;stroke-dasharray:2 5}
.cxhub .ghostwire{fill:none;stroke:#2A3247;stroke-width:1.1;stroke-dasharray:3 4}
.cxhub .ghost{fill:rgba(14,18,28,.5);stroke:#2E3346;stroke-width:1;stroke-dasharray:4 4}
.cxhub .gt{font-family:var(--sans);font-size:10px;fill:#5F6377}
.cxhub .agent-core{fill:url(#agentGrad);filter:drop-shadow(0 0 16px rgba(245,193,92,.35))}
.cxhub .agent-ring{fill:none;stroke:#3A465F;stroke-width:1.4}
.cxhub .agent-glyph{stroke:#141007;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}
.cxhub .agent-label{font-family:var(--mono);font-size:13px;font-weight:600;fill:var(--gold-soft);text-anchor:middle;letter-spacing:.06em}
.cxhub .agent-sub{font-family:var(--sans);font-size:9px;fill:var(--faint);text-anchor:middle}
.cxhub .dot{filter:drop-shadow(0 0 4px currentColor)}
.cxhub .dot.gold{fill:var(--gold-soft);color:rgba(245,193,92,.9)}
.cxhub .dot.cyan{fill:var(--cyan);color:rgba(90,217,228,.9)}
.cxhub .dot.rose{fill:var(--rose);color:rgba(242,126,157,.9)}
.cxh-legend{display:flex;gap:26px;justify-content:center;margin-top:2px;font-family:var(--mono);font-size:11px;color:var(--faint)}
.cxh-legend .dk{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:middle}
.cxh-legend .dk.g{background:var(--gold)} .cxh-legend .dk.c{background:var(--cyan)}
.cxh-caption{text-align:center;margin:8px 0 0;padding:10px 0 10px;border-top:1px solid var(--line-soft);color:var(--dim);font-size:14.5px}
.cxh-caption b{color:var(--head);font-weight:600}
.cxh-caption .g{color:var(--gold)}
@media(prefers-reduced-motion:reduce){.cxhub .dot{display:none}}

/* ---- motioning page: part-by-part scroll, each part revealed in motion ---- */
html.landing{scroll-snap-type:y mandatory}
.landing .hero,.landing section.band{scroll-snap-align:start;scroll-snap-stop:always}
.landing footer.site{scroll-snap-align:end}
.landing section.band{min-height:100vh;display:flex;align-items:center}
.landing section.band .wrap{width:100%}
html.landing.js section.band .wrap > *{opacity:0;transform:translateY(28px);
  transition:opacity .65s cubic-bezier(.2,.7,.2,1),transform .65s cubic-bezier(.2,.7,.2,1)}
html.landing.js section.band.inview .wrap > *{opacity:1;transform:none}
.landing section.band.inview .wrap > *:nth-child(2){transition-delay:.12s}
.landing section.band.inview .wrap > *:nth-child(3){transition-delay:.22s}
.landing section.band.inview .wrap > *:nth-child(4){transition-delay:.34s}
.landing section.band.inview .wrap > *:nth-child(5){transition-delay:.46s}
html.landing.js footer.site{opacity:0;transition:opacity .8s ease .15s}
html.landing.js footer.site.inview{opacity:1}
@media(prefers-reduced-motion:reduce){
  html.landing{scroll-snap-type:none}
  html.landing.js section.band .wrap > *{opacity:1;transform:none;transition:none}
  html.landing.js footer.site{opacity:1;transition:none}
}

/* part sizing: each part = viewport minus nav, so nothing hides under the bar */
html{scroll-padding-top:58px}
.landing section.band{min-height:calc(100vh - 58px)}
/* the hub panel scales with viewport height so the whole part fits in one look */
.cxh-panel{max-width:min(920px, calc((100vh - 400px) * 1.55))}

/* ---- docs v2: wider canvas, lit chapters, sub-chapter minimap, journey nav ---- */
:root{--content:880px;--toc:240px}
.doc{max-width:1360px}
.content{padding:44px 24px 90px 48px}
.tocbar a{padding:4px 0 4px 12px;border-left:2px solid var(--line-soft);transition:color .2s,border-color .2s}
.tocbar a.h3{padding-left:26px}
.tocbar a.on{color:var(--gold-soft);border-left-color:var(--gold)}
article h2,article h3{transition:color .35s}
article h2.lit,article h3.lit{color:var(--gold-soft)}
article h2{margin:54px 0 16px;padding-top:26px;border-top:1px solid var(--line-soft)}
.sidebar a .n{display:inline-block;min-width:20px;margin-right:8px;font-family:var(--mono);font-size:11px;color:var(--faint)}
.sidebar a.cur .n{color:var(--gold)}
article .pnav{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:var(--content);margin:56px 0 0}
article .pnav a{display:block;border:1px solid var(--line);border-radius:12px;padding:15px 18px;background:var(--ink1);border-bottom:1px solid var(--line)}
article .pnav a:hover{border-color:var(--gold-dim);border-bottom-color:var(--gold-dim)}
article .pnav .lbl{display:block;font-family:var(--mono);font-size:10.5px;color:var(--faint);letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px}
article .pnav .t{color:var(--head);font-weight:600;font-size:14.5px}
article .pnav a.next{text-align:right}
article ol.chlist{list-style:none;padding:0;margin:0 0 26px;max-width:var(--content)}
.chlist li{margin:0 0 10px}
article .chlist a{display:flex;gap:16px;align-items:baseline;border:1px solid var(--line);border-radius:12px;padding:13px 18px;background:var(--ink1);border-bottom:1px solid var(--line)}
article .chlist a:hover{border-color:var(--gold-dim);border-bottom-color:var(--gold-dim)}
.chlist .n{font-family:var(--mono);color:var(--gold-dim);font-size:13px;min-width:24px}
.chlist .t{color:var(--head);font-weight:600;font-size:15px}
article .btn{border-bottom:0}

/* ---- sidebar v2: aligned badges, hanging wrap, sub-indexes, scroll lighting ---- */
.sidebar a{display:flex;align-items:baseline;gap:9px}
.sidebar a .n{flex:0 0 16px;min-width:16px;margin:0;text-align:right}
.sidebar a.sub{font-size:12.5px;color:var(--faint);padding:3px 0 3px 12px;margin-left:14px;border-left:1px solid var(--line-soft)}
.sidebar a.sub:hover{color:var(--head)}
.sidebar a.on{color:var(--gold-soft);border-left-color:var(--gold)}
.sidebar a.sub.on{color:var(--gold-soft);border-left-color:var(--gold)}

/* deeper sub-chapter level in the sidebar (h3) */
.sidebar a.sub.s3{margin-left:26px;font-size:12px}

/* ---- quiet scrollbars: slim, dark, invisible until needed ---- */
*{scrollbar-width:thin;scrollbar-color:#222A3E transparent}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:#1E2537;border-radius:5px;border:2px solid var(--ink0)}
::-webkit-scrollbar-thumb:hover{background:#2A3247}
.sidebar{scrollbar-gutter:stable;scrollbar-color:transparent transparent}
.sidebar:hover{scrollbar-color:#222A3E transparent}
.sidebar::-webkit-scrollbar{width:6px}
.sidebar::-webkit-scrollbar-thumb{background:transparent;border:0;border-radius:3px}
.sidebar:hover::-webkit-scrollbar-thumb{background:#232B3F}
/* no double rule where a source hr meets a chapter border */
article hr+h2{border-top:0;padding-top:8px}
article h1+h2,article h2:first-child{border-top:0;padding-top:8px}

/* pygments */
pre { line-height: 125%; }
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
.highlight .hll { background-color: #ffffcc }
.highlight .c { color: #7F848E } /* Comment */
.highlight .err { color: #ABB2BF } /* Error */
.highlight .esc { color: #ABB2BF } /* Escape */
.highlight .g { color: #ABB2BF } /* Generic */
.highlight .k { color: #C678DD } /* Keyword */
.highlight .l { color: #ABB2BF } /* Literal */
.highlight .n { color: #E06C75 } /* Name */
.highlight .o { color: #56B6C2 } /* Operator */
.highlight .x { color: #ABB2BF } /* Other */
.highlight .p { color: #ABB2BF } /* Punctuation */
.highlight .ch { color: #7F848E } /* Comment.Hashbang */
.highlight .cm { color: #7F848E } /* Comment.Multiline */
.highlight .cp { color: #7F848E } /* Comment.Preproc */
.highlight .cpf { color: #7F848E } /* Comment.PreprocFile */
.highlight .c1 { color: #7F848E } /* Comment.Single */
.highlight .cs { color: #7F848E } /* Comment.Special */
.highlight .gd { color: #ABB2BF } /* Generic.Deleted */
.highlight .ge { color: #ABB2BF } /* Generic.Emph */
.highlight .ges { color: #ABB2BF } /* Generic.EmphStrong */
.highlight .gr { color: #ABB2BF } /* Generic.Error */
.highlight .gh { color: #ABB2BF } /* Generic.Heading */
.highlight .gi { color: #ABB2BF } /* Generic.Inserted */
.highlight .go { color: #ABB2BF } /* Generic.Output */
.highlight .gp { color: #ABB2BF } /* Generic.Prompt */
.highlight .gs { color: #ABB2BF } /* Generic.Strong */
.highlight .gu { color: #ABB2BF } /* Generic.Subheading */
.highlight .gt { color: #ABB2BF } /* Generic.Traceback */
.highlight .kc { color: #E5C07B } /* Keyword.Constant */
.highlight .kd { color: #C678DD } /* Keyword.Declaration */
.highlight .kn { color: #C678DD } /* Keyword.Namespace */
.highlight .kp { color: #C678DD } /* Keyword.Pseudo */
.highlight .kr { color: #C678DD } /* Keyword.Reserved */
.highlight .kt { color: #E5C07B } /* Keyword.Type */
.highlight .ld { color: #ABB2BF } /* Literal.Date */
.highlight .m { color: #D19A66 } /* Literal.Number */
.highlight .s { color: #98C379 } /* Literal.String */
.highlight .na { color: #E06C75 } /* Name.Attribute */
.highlight .nb { color: #E5C07B } /* Name.Builtin */
.highlight .nc { color: #E5C07B } /* Name.Class */
.highlight .no { color: #E06C75 } /* Name.Constant */
.highlight .nd { color: #61AFEF } /* Name.Decorator */
.highlight .ni { color: #E06C75 } /* Name.Entity */
.highlight .ne { color: #E06C75 } /* Name.Exception */
.highlight .nf { color: #61AFEF; font-weight: bold } /* Name.Function */
.highlight .nl { color: #E06C75 } /* Name.Label */
.highlight .nn { color: #E06C75 } /* Name.Namespace */
.highlight .nx { color: #E06C75 } /* Name.Other */
.highlight .py { color: #E06C75 } /* Name.Property */
.highlight .nt { color: #E06C75 } /* Name.Tag */
.highlight .nv { color: #E06C75 } /* Name.Variable */
.highlight .ow { color: #56B6C2 } /* Operator.Word */
.highlight .pm { color: #ABB2BF } /* Punctuation.Marker */
.highlight .w { color: #ABB2BF } /* Text.Whitespace */
.highlight .mb { color: #D19A66 } /* Literal.Number.Bin */
.highlight .mf { color: #D19A66 } /* Literal.Number.Float */
.highlight .mh { color: #D19A66 } /* Literal.Number.Hex */
.highlight .mi { color: #D19A66 } /* Literal.Number.Integer */
.highlight .mo { color: #D19A66 } /* Literal.Number.Oct */
.highlight .sa { color: #98C379 } /* Literal.String.Affix */
.highlight .sb { color: #98C379 } /* Literal.String.Backtick */
.highlight .sc { color: #98C379 } /* Literal.String.Char */
.highlight .dl { color: #98C379 } /* Literal.String.Delimiter */
.highlight .sd { color: #98C379 } /* Literal.String.Doc */
.highlight .s2 { color: #98C379 } /* Literal.String.Double */
.highlight .se { color: #98C379 } /* Literal.String.Escape */
.highlight .sh { color: #98C379 } /* Literal.String.Heredoc */
.highlight .si { color: #98C379 } /* Literal.String.Interpol */
.highlight .sx { color: #98C379 } /* Literal.String.Other */
.highlight .sr { color: #98C379 } /* Literal.String.Regex */
.highlight .s1 { color: #98C379 } /* Literal.String.Single */
.highlight .ss { color: #98C379 } /* Literal.String.Symbol */
.highlight .bp { color: #E5C07B } /* Name.Builtin.Pseudo */
.highlight .fm { color: #56B6C2; font-weight: bold } /* Name.Function.Magic */
.highlight .vc { color: #E06C75 } /* Name.Variable.Class */
.highlight .vg { color: #E06C75 } /* Name.Variable.Global */
.highlight .vi { color: #E06C75 } /* Name.Variable.Instance */
.highlight .vm { color: #E06C75 } /* Name.Variable.Magic */
.highlight .il { color: #D19A66 } /* Literal.Number.Integer.Long */
