/* ─────────────────────────────────────────────────────────────────────────
   samhan.ai — core stylesheet
   Palette: hanji mineral. Light is primary; dark is a second token set.
   The rule that governs colour: ink is evidence, crimson is what remains
   to be done — unturned, inferred, not yet adjudicated. Crimson is never
   used for emphasis, for a button, or for decoration.
   ───────────────────────────────────────────────────────────────────────── */
:root{
  --bg:#F7F5EF; --pn:#FFFDF8; --pn2:#EFEBE0;
  --ink:#17150F; --soft:#625C4E; --faint:#78705F;
  --rule:#DCD5C4; --hair:#C9C0AC;
  --acc:#A8352A;            /* crimson — the reading not yet made */
  --mark-acc:#A8352A;       /* the mark's turned flap — crimson in both themes */
  --acc2:#2E4C6D;           /* mineral blue — outward links only  */
  --fd:"Newsreader","Iowan Old Style","Palatino Linotype",Palatino,Georgia,"Times New Roman",serif;
  --fb:"Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  --fm:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --fh:"Noto Serif TC","Songti TC","Songti SC","PingFang TC","Hiragino Mincho ProN",serif;
  --fk:"Noto Serif KR","Apple SD Gothic Neo","Malgun Gothic",serif;
  --u:8px; --pad:clamp(18px,4vw,34px); --nav-h:46px;
  --dur:520ms; --ease:cubic-bezier(.22,.61,.36,1);
}
/* The dark token set is declared twice, deliberately.

   html[data-theme="dark"] is the visitor's own choice, stored and restored.
   The media block is what happens when they have made no choice at all: with
   no data-theme on the document, the system preference decides, and it decides
   on the first paint with no script involved. :not([data-theme="light"]) is
   what lets a stored choice of light survive a system that is set to dark —
   the toggle wins in either direction, and the system wins only by default. */
html[data-theme="dark"]{
  --bg:#23231E; --pn:#2C2C26; --pn2:#191914;
  --ink:#EDEAE0; --soft:#B7B29E; --faint:#999585;
  --rule:#3E3D34; --hair:#54523F;
  --acc:#DE8365; --acc2:#8FB4D6;
  --mark-acc:#DA5549;   /* the flap keeps the light theme's hue */
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#23231E; --pn:#2C2C26; --pn2:#191914;
    --ink:#EDEAE0; --soft:#B7B29E; --faint:#999585;
    --rule:#3E3D34; --hair:#54523F;
    --acc:#DE8365; --acc2:#8FB4D6;
    --mark-acc:#DA5549;   /* the flap keeps the light theme's hue */
  }
}
*{box-sizing:border-box}
body>*{min-width:0;max-width:100%}
.sect,.idx{min-width:0}
html{-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--fb);
  min-height:100vh;display:flex;flex-direction:column;
  font-size:15px;line-height:1.62;-webkit-font-smoothing:antialiased;
  font-feature-settings:"kern","liga"}
h1,h2,h3,h4{margin:0;font-weight:400;line-height:1.14}
p{margin:0}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible{outline:2px solid var(--acc);outline-offset:3px}
svg{display:block}
.hj{font-family:var(--fh)}
.kr{font-family:var(--fk)}
.mo{font-family:var(--fm);font-size:10px;letter-spacing:.09em;color:var(--soft)}
.wrap{max-width:1180px;margin:0 auto;padding:0 var(--pad)}

/* ── the bar ─────────────────────────────────────────────────────────────────
   One sticky bar, 38px — the same height as Sebo's imprint strip, so the seam
   between the two sites needs no height change at all. At the top of the page
   it carries the site's record (works · sources · records · period · revised);
   once the masthead has scrolled away it carries only the imprint and the
   toggle. The two faces crossfade in place; nothing reflows. */
.ledger{position:sticky;top:0;z-index:40;height:38px;border-bottom:1px solid var(--rule);
  background:color-mix(in srgb,var(--pn) 94%,transparent);backdrop-filter:blur(8px)}
/* The toggle is placed against the viewport's right edge, outside the flow, so
   the faces have to be told about it: --tglzone is the button's own box (44px)
   plus its offset (18px) plus a 10px gap, measured in from the viewport edge.
   The bar's right padding takes the larger of that and the ordinary gutter, so
   the record's scroller *ends* before the button instead of running under it —
   a mask cannot do this, because a scroller's own padding is at the end of its
   content, not on screen. Past 1180px the button has moved outside the column
   and the reserve falls back to the gutter on its own. */
.ledger-in{max-width:1180px;margin:0 auto;height:100%;
  --tglzone:calc(72px - max(0px,(100vw - 1180px)/2));
  padding:0 max(var(--pad),var(--tglzone)) 0 var(--pad);
  position:relative;display:flex;align-items:center}
/* The two faces hand over rather than dissolve through each other: whichever is
   leaving goes in 130ms, whichever is arriving waits 120ms and then comes. */
.limp{position:absolute;left:var(--pad);top:0;bottom:0;display:flex;align-items:center;gap:10px;
  text-decoration:none;
  max-width:calc(100% - var(--pad) - max(var(--pad),var(--tglzone)))}
/* mark and word share one line: baseline alignment with the mark pushed down
   a quarter of its height puts its rule exactly on the word's baseline — the
   masthead's arrangement, at bar size. .limp keeps its transform free for the
   flight, so the pairing lives on an inner span. */
.wmset{display:flex;align-items:baseline;gap:10px}
.limp .mk{transform:translateY(25%)}
/* the name is always set in the wordmark's face, here and in the footer and
   on Sebo's imprint strip, so the seam carries one word in one voice */
.limp .wmm{font-family:var(--fd);font-weight:500;font-size:15px;letter-spacing:-.008em;
  color:var(--ink);white-space:nowrap}
.limp .wmm .dot{color:var(--mark-acc)}
.tgl{background:none;border:0;cursor:pointer;color:var(--soft);display:flex;align-items:center;font:inherit}
.tgl:hover{color:var(--ink)}
/* 44 x 40 of hit area around a 20px glyph; the offset is pulled in by the same
   amount the padding grew, so the glyph itself has not moved. */
/* The toggle is a mark in its own right and carries its own rule, at 16.5 of
   its 24 viewBox. That rule — not the icon's box — is what must land on the
   bar's line, where the mark's rule and the word's baseline already sit:
   centred, its rule falls 2.84px short, so the icon is pushed down by that. */
.ledger .tgl{position:absolute;top:50%;transform:translateY(calc(-50% + 2.84px));padding:10px 12px;
  justify-content:center;
  /* the glyph's right edge sits on the content column's right border. The
     button is positioned inside .ledger-in, which is already the centred
     1180px column, so the border is simply --pad in from its edge; the
     button's own 12px padding is pulled back out so the invisible hit box,
     not the icon, is what overhangs. */
  right:calc(var(--pad) - 12px)}

/* ── masthead ── */
.mast{padding:clamp(34px,6vw,58px) 0 clamp(26px,4vw,38px);border-bottom:1px solid var(--rule)}
/* A flex item's synthesised baseline is its border-box bottom; the mark's own
   rule sits a quarter of its height above that. Baseline row + translateY(25%)
   therefore sets the mark's rule on the text baseline at any mark size. */
.wmrow{display:flex;align-items:baseline;gap:clamp(14px,2.4vw,24px);flex-wrap:wrap}
.mk{color:var(--ink);flex:none;transform:translateY(25%)}
.wm{font-family:var(--fd);font-size:clamp(38px,7.2vw,68px);font-weight:400;
  letter-spacing:-.03em;line-height:1;font-variant-ligatures:none}
/* the point is the flap: one gesture, one colour, in both themes */
.wm .dot{color:var(--mark-acc)}
/* the name, stylised inside running prose: the wordmark's case and its
   crimson point, at the paragraph's own size and weight */
.nm-wm{font-family:var(--fd);font-weight:500;letter-spacing:-.008em}
.nm-wm .dot{color:var(--mark-acc)}
.strap{font-family:var(--fd);font-style:italic;font-size:clamp(17px,2.1vw,22px);
  color:var(--soft);margin-top:clamp(14px,2vw,20px);letter-spacing:-.006em;max-width:48ch}
.by{font-family:var(--fm);font-size:9.6px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--soft);margin-top:16px}
.blurb{font-size:clamp(14.5px,1.5vw,16.5px);line-height:1.74;color:var(--soft);
  max-width:72ch;margin-top:clamp(18px,2.6vw,26px)}

/* ── the index ── */
.idx{padding-bottom:clamp(30px,5vw,54px)}
/* the sticky nav is opaque: an anchored section must clear it */
.sect,.idx{scroll-margin-top:calc(var(--nav-h) + var(--u))}
/* --rec-inset holds the record's content clear of its sheet's left and right
   edges. The deckle rules are absolutely positioned against the padding box,
   so they still run the sheet's full width: only the content moves. */
:root{--rec-inset:clamp(12px,1.5vw,24px)}
/* an entry reached by its anchor stops just under the sticky bar, with the
   whole record — title, ID row and all — in view */
.entry{scroll-margin-top:calc(38px + 18px)}
.entry{display:block;border-bottom:1px solid var(--rule);
  padding:clamp(20px,3vw,30px) var(--rec-inset);
  position:relative;transition:background var(--dur) var(--ease)}
.idx>.entry:last-child{border-bottom:0}
.entry-in{display:grid;grid-template-columns:132px 1fr;gap:clamp(18px,3vw,34px);align-items:start}
@media(max-width:680px){.entry-in{grid-template-columns:88px 1fr;gap:16px}}
.plate{aspect-ratio:1;width:100%;color:var(--ink)}
.entry-main{display:flex;flex-direction:column-reverse;align-items:flex-start;gap:10px}
.rechead{margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,max-content));
  gap:2px clamp(14px,2.2vw,30px);align-items:start}
@media(max-width:560px){.rechead{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 16px}}
.rechead div{min-width:0}
.rechead dt{margin:0;font-family:var(--fm);font-size:8px;letter-spacing:.17em;
  text-transform:uppercase;color:var(--soft)}
.rechead dd{margin:2px 0 0;font-family:var(--fm);font-size:10.6px;letter-spacing:.05em}
.rechead dd.id{color:var(--acc)}
/* the share cell carries the tally meter and its figure on one line */
/* The meter's rule is the exact centre of its viewBox, so the drawing is taken
   out of flow and hung with that centre on the cell's own text baseline: the
   value then sits level with Id, Period and Version instead of riding below
   them, and the figure — set on the same baseline — reads off the rule. */
.rechead .shr dd{position:relative;padding-left:81px;font-size:10.6px;color:var(--soft)}
/* 11px is where this cell's baseline falls in its own line box; hanging the
   meter's centre there puts its rule on that baseline. */
.rechead .shr dd svg{position:absolute;left:0;top:11px;transform:translateY(-50%)}
.rechead .shr .pc{font-size:inherit;color:inherit}
.rechead .rb .sg{color:var(--acc);margin-left:0}
.rechead .rb .sg+.sg{margin-left:7px}
/* a corpus is a record, not a destination: nothing to follow yet */
.entry.corpus{cursor:default}
.entry.corpus:hover .etitle .t{text-decoration:none}
/* ── the lemma: one middle axis for Sebo 世譜 세보 BETA ] ───────────────────
   Every piece of the title cluster is centred on one horizontal axis: the
   middle of the Latin title's cap band, which is .338 of the title size above
   the shared baseline (Newsreader's cap height is .672–.681 of the size over
   the 20–40px range this design uses, and the optical sizing moves it by less
   than .05px within the title's own clamp).

   Baseline alignment, not `align-items:center`, is the mechanism. A flex line
   centres on the line box, and the line box's height depends on which items
   happen to be in it — so a wrap, or the hangul folding away mid-flight, moves
   the centre for everything. Baselines do not move. Each piece therefore sits
   on the shared baseline and is then lifted by the difference between the axis
   and its own optical middle, measured from the face it is actually set in:

     世譜  Noto Serif TC     ideographic centre  .3796 of its size
     세보  Noto Serif KR     ideographic centre  .3725 of its size
     ]   IBM Plex Mono     ink centre          .3110 of its size
     BETA  its border box  centre 2.898px above its own baseline
           (8.2px, line-height 1, 2px padding, 1px border)

   Because every lift is a fixed multiple of a length, a uniform scale — the
   flight to the work's own header — preserves the axis for every piece. */
.etitle{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;
  --tsz:clamp(21px,2.7vw,28px);--hsz:clamp(15px,1.7vw,18px);--ksz:12.6px;
  --mid:calc(.338 * var(--tsz))}
.etitle .t{font-family:var(--fd);font-size:var(--tsz);letter-spacing:-.018em;line-height:1.14}
.etitle .h{font-family:var(--fh);font-size:var(--hsz);color:var(--soft);
  transform:translateY(calc(.3796 * var(--hsz) - var(--mid)))}
.etitle .k{font-family:var(--fk);font-size:var(--ksz);color:var(--faint);max-width:220px;
  transform:translateY(calc(.3725 * var(--ksz) - var(--mid)))}
/* The bracket is half the title, exactly as the work's own header sets it, so
   the two are the same ornament at the same relative size across the seam —
   and on the same middle axis at both ends, since -.1825 of the title size is
   what .1555 (the ink centre of ] at half the title size) minus .338 comes to. */
.etitle .br{font-family:var(--fm);font-size:calc(.5 * var(--tsz));color:var(--acc);opacity:0;
  margin-left:1px;transition:opacity 240ms var(--ease);line-height:1;
  transform:translateY(calc(-.1825 * var(--tsz)))}
.etitle .stage{align-self:baseline;transform:translateY(calc(2.898px - var(--mid)))}
.entry:hover .etitle .br,.entry:focus-visible .etitle .br{opacity:.45}
.esub{font-size:14px;color:var(--soft);line-height:1.66;max-width:74ch;margin-top:10px}
.efoot{display:flex;gap:20px;flex-wrap:wrap;margin-top:14px;font-family:var(--fm);
  font-size:9.8px;letter-spacing:.06em;color:var(--soft);align-items:baseline}
.efoot .go{margin-left:auto;color:var(--acc2);display:flex;align-items:center;gap:7px}
.efoot .go i{font-style:normal;transition:transform 240ms var(--ease);display:inline-block}
.entry:hover .efoot .go i{transform:translateX(3px)}
.entry:hover .etitle .t{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}

/* ── groups: Applications · Experiments · Data ── */
.grp{padding-top:clamp(24px,3.6vw,40px);border-bottom:1px solid var(--rule);scroll-margin-top:calc(var(--nav-h) + var(--u))}
.grp-h{font-family:var(--fm);font-size:10.2px;letter-spacing:.2em;text-transform:uppercase;color:var(--soft);
  display:flex;align-items:baseline;gap:12px;padding-bottom:9px;border-bottom:1px solid var(--ink)}
.grp-h .cnt{color:var(--faint);letter-spacing:.1em}
.grp .idx{padding-bottom:0}
.sub{border-top:1px solid var(--rule);padding:clamp(20px,3vw,32px) 0 clamp(26px,4vw,44px)}
.sub-h{font-family:var(--fd);font-size:clamp(19px,2.2vw,24px);letter-spacing:-.014em}
.efoot .ext{color:var(--acc2);display:inline-flex;align-items:center;gap:5px}
.efoot a.ext:hover{text-decoration:underline;text-underline-offset:3px}
.efoot .ext i{font-style:normal}

/* ── section blocks ── */
.sect{padding:clamp(30px,4.5vw,52px) 0;border-bottom:1px solid var(--rule)}
.sect:last-child{border-bottom:0}
.sect h2{font-family:var(--fd);font-size:clamp(21px,2.5vw,28px);letter-spacing:-.018em}
.sect .lead{color:var(--soft);font-size:14.4px;max-width:74ch;margin-top:11px;line-height:1.7}
.grp>.lead{color:var(--soft);font-size:14.4px;max-width:74ch;margin:11px 0 0;line-height:1.7}

/* stage: works still under development */
/* The tag is centred on the title's cap band rather than on the flex line, so
   it holds the same relation to the baseline at every title size. The lift is
   set by whichever cluster it sits in — .etitle above, .sebo-id .t below. */
.stage{font-family:var(--fm);font-size:8.2px;letter-spacing:.16em;border:1px solid var(--acc);
  color:var(--acc);padding:2px 5px;line-height:1;white-space:nowrap;align-self:baseline}
.entry.soon{cursor:default}
.entry.soon .efoot .go{color:var(--faint)}
.entry.soon:hover .etitle .t{text-decoration:none}

/* sources — every row draws its columns from one set of tracks on .srcs, so
   a row with two sigla can no longer pull its own columns out of line. */
.srcs{margin-top:22px;border-top:1px solid var(--ink)}
.src{display:grid;grid-template-columns:1.3fr 170px 1.2fr auto;gap:20px;align-items:center;
  padding:14px var(--rec-inset);border-bottom:1px solid var(--rule)}
@media(min-width:901px){
  .srcs{display:grid;column-gap:20px;
    grid-template-columns:minmax(0,1.3fr) 170px minmax(0,1.2fr) max-content}
  .src{grid-column:1/-1;grid-template-columns:subgrid}
  .src .s4{justify-self:end}   /* the sigla close the row on the content edge */
  @supports not (grid-template-columns:subgrid){
    .srcs{display:block}
    .src{grid-column:auto;grid-template-columns:1.3fr 170px 1.2fr 96px}
  }
}
@media(max-width:900px){
  .src{grid-template-columns:1fr auto;gap:9px 18px;align-items:baseline}
  .src .s1{grid-column:1/-1}
  .src .s2{justify-self:start}
  .src .s3{grid-column:1/-1}
  .src .s4{grid-column:1/-1;justify-self:start}
}
@media(max-width:560px){
  .src{grid-template-columns:1fr;padding:16px var(--rec-inset)}
  .src .nm{font-size:16px}
  .src .hj2{display:block;margin-left:0;margin-top:2px}
}
.src .nm{font-family:var(--fd);font-size:17px;letter-spacing:-.012em}
.src .hj2{font-family:var(--fh);font-size:13.5px;color:var(--soft);margin-left:9px}
.src .s2{display:flex;align-items:center;gap:11px;color:var(--ink)}
.src .pc{font-family:var(--fm);font-size:10.4px;color:var(--soft);min-width:30px}
/* meter() centres its viewBox on the rule, so centring the label's box and
   then lifting it by (baseline − box centre) sets the digits on that rule. */
.src .pc,.meter .val{transform:translateY(-.345em)}
.src .ct{font-family:var(--fm);font-size:10px;letter-spacing:.05em;color:var(--soft);display:block}
.src .nt{font-size:12px;color:var(--faint);display:block;margin-top:3px;line-height:1.45}
.src .sg{font-family:var(--fm);font-size:9.6px;letter-spacing:.08em;color:var(--acc);margin-left:8px}
.src .sg:first-child{margin-left:0}

/* timeline */
/* The axis is drawn only where the content column can hold all 1040px of it
   (see timeline_block: TL_MIN). That is a 1108px viewport; below 1120 the
   stacked list form is used instead. overflow-x:auto is kept as a floor for
   the case where some future zoom or font size still narrows the column — but
   in the ordinary run it never has anything to scroll, so there is no dead
   scrollbar and nothing is ever sliced off the right edge. */
.tl-scroll{margin-top:26px;max-width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;
  -webkit-overflow-scrolling:touch;padding-bottom:8px;overscroll-behavior-x:contain}
.tl{position:relative;width:100%;min-width:1040px}
.axis{position:absolute;left:0;right:0;bottom:34px;height:1px;background:var(--hair)}
.tk{position:absolute;bottom:34px}
.tk i{display:block;width:1px;height:4px;background:var(--rule)}
.tk.mj i{height:7px;background:var(--faint)}
.tk b{position:absolute;top:12px;left:0;transform:translateX(-50%);font-family:var(--fm);
  font-size:9px;color:var(--faint);white-space:nowrap;font-weight:400;letter-spacing:.06em}
.ms{position:absolute;bottom:34px;width:0}
.ms .dotm{position:absolute;left:-4px;bottom:-4px;width:8px;height:8px;background:var(--acc);
  border-radius:50%}
/* A stem rising to an upper lane crosses the labels below it; the label sits
   one layer up, on the page's own ground, so the stem passes behind the text. */
.ms .stem{position:absolute;left:0;bottom:0;width:1px;background:var(--rule);z-index:0}
.ms .ms-b{position:absolute;left:11px;width:150px;z-index:1;background:var(--bg)}
.ms.flip .ms-b{left:auto;right:11px;text-align:right}
.ms .yr{font-family:var(--fm);font-size:9.6px;letter-spacing:.11em;color:var(--acc);display:block}
.ms .lb{font-family:var(--fd);font-size:14.5px;line-height:1.24;display:block;margin-top:4px;
  letter-spacing:-.01em}
.ms .nt{font-size:11.6px;color:var(--soft);line-height:1.5;display:block;margin-top:4px}

@media(max-width:1119.98px){
  .tl-scroll{overflow:visible;padding-bottom:0}
  .tl{width:auto!important;min-width:0;height:auto!important;
    border-top:1px solid var(--ink);margin-top:14px}
  .axis,.tk{display:none}
  .ms{position:static!important;bottom:auto;width:auto;display:grid;
    grid-template-columns:14px 1fr;gap:0 14px;align-items:start;
    padding:14px 0;border-bottom:1px solid var(--rule)}
  .ms .stem{display:none}
  .ms .dotm{position:static;margin-top:6px}
  .ms .ms-b,.ms.flip .ms-b{position:static!important;left:auto;right:auto;bottom:auto;
    width:auto;text-align:left!important;background:none}
  .ms .lb{font-size:16px}
}

/* colophon */
.colo{margin-top:20px;max-width:76ch}
.colo .c1{font-size:15.5px;line-height:1.72}
.colo .c1+.c1{margin-top:2px}
.colo .c2{font-size:13.6px;color:var(--soft);margin-top:14px;line-height:1.7}
.colo a{border-bottom:1px solid var(--hair)}
.colo a:hover{border-bottom-color:var(--acc);color:var(--ink)}
.cite{margin-top:24px;border-left:2px solid var(--acc);padding:2px 0 2px 17px}
.cite .cl{font-family:var(--fm);font-size:8.4px;letter-spacing:.15em;text-transform:uppercase;
  color:var(--soft);display:block;margin-bottom:7px}
.cite p{font-size:14px;line-height:1.68;max-width:70ch}
.copy{margin-top:12px;font-family:var(--fm);font-size:8.6px;letter-spacing:.14em;text-transform:uppercase;
  background:none;border:1px solid var(--hair);color:var(--soft);padding:5px 11px;cursor:pointer}
.copy:hover{color:var(--ink);border-color:var(--ink)}

/* ── the counter, used as a 0–100% meter ── */
.meter{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.meter .lb{font-family:var(--fm);font-size:9.4px;letter-spacing:.13em;text-transform:uppercase;
  color:var(--soft)}
.meter .val{font-family:var(--fm);font-size:11px;color:var(--ink)}

/* ── footer ── */
.foot{border-top:1px solid var(--rule);background:var(--pn);padding:20px 0 46px;margin-top:auto}
main{flex:1 1 auto;min-width:0;width:100%}
.foot-in{max-width:1180px;margin:0 auto;padding:0 var(--pad);display:flex;gap:22px;
  flex-wrap:wrap;align-items:baseline;font-family:var(--fm);font-size:9.8px;letter-spacing:.09em;
  color:var(--soft)}
.foot-in .sp{flex:1}
.foot-in .views{color:var(--faint)}
.foot-in .nm-wm{font-size:14px;color:var(--ink)}

/* ── transition ──────────────────────────────────────────────────────────────
   Selecting a work collapses the ledger to the samhan.ai imprint — exactly the
   strip Sebo carries at its top-left — while the metadata folds away and the
   chosen title rides up, above the bar, to the position it holds in the work's
   own header. So across the seam two things are continuous and unbroken: the
   samhan.ai mark and the title. Return reverses it. Reduced motion opts out.

   What the flight matches is the middle: the title's cap-band centre here lands
   on the title's cap-band centre in the work's header. Every other piece of the
   lemma — 世譜, BETA — is already fixed to that same axis by a lift that is a
   constant fraction of a length (see .etitle), so the uniform scale of the
   flight keeps all of them on the axis in every frame, with nothing to animate
   separately. The bracket is on that axis too, but it is never lit here: it
   marks a lemma the reader is pointing at, and a departure or a return is not
   a reader pointing at anything. It stays at rest — opacity 0, margin-left 1px
   — for the whole flight, so there is nothing of it to carry across either.
   (An `.entry[data-mark] .etitle .br` rule used to light it on the entry you
   came back to; that is a transition state wearing a hover's clothes.) */
/* the licences as a record: mono terms, values aligned on one column */
.lic{margin:18px 0 0;display:grid;grid-template-columns:max-content 1fr;
  gap:7px clamp(16px,2.4vw,28px);align-items:baseline;max-width:34ch}
.lic>div{display:contents}
.lic dt{margin:0;font-family:var(--fm);font-size:8.4px;letter-spacing:.17em;
  text-transform:uppercase;color:var(--soft)}
.lic dd{margin:0;font-size:13.6px}
/* the mark set beside its own explanation, on the gallery's plate-and-text grid */
.markbox{margin-top:clamp(24px,3vw,34px);display:grid;
  grid-template-columns:96px minmax(0,1fr);gap:clamp(18px,3vw,30px);align-items:start}
.markfig{display:block;color:var(--ink)}
.markfig .mk{transform:none}
.mk-h{margin:0 0 7px;font-family:var(--fm);font-size:8.4px;letter-spacing:.17em;
  text-transform:uppercase;color:var(--soft);font-weight:400}
.marknote{margin:0;font-size:13.4px;color:var(--soft);max-width:64ch;line-height:1.72}
/* a work still being made says so in the mineral, not the crimson: crimson
   carries one meaning on this site, the reading not yet made, and a status
   note is not that. */
.esub .dev{color:var(--acc2)}
@media(max-width:560px){.markbox{grid-template-columns:1fr;gap:14px}
  .markfig{max-width:96px}}
@media (prefers-reduced-motion:no-preference){
  /* Closed up to one line the cluster is wider than the column it sits in, and
     under about 300px it runs past the right edge for the length of the flight
     — 26px at 280. `clip` rather than `hidden`: it takes no scroll box, so the
     sticky nav and the page's own scrolling are untouched, and a browser that
     does not know it simply behaves as before. */
  body.leaving{overflow-x:clip}
  .leaving .ledger,.returning .ledger{z-index:5}
  .leaving .ledger .led-rec,.returning .ledger .led-rec{opacity:0;transform:translateY(-5px);
    pointer-events:none;transition:opacity 130ms var(--ease),transform 240ms var(--ease)}
  .leaving .ledger .limp,.returning .ledger .limp{opacity:1;pointer-events:auto;
    transition:opacity 180ms 60ms var(--ease),transform 380ms var(--ease)}
  /* The imprint glides to the work's own gutter — clamp(14px,2.4vw,26px), the
     measured value, not a flat 26px — so the mark does not jump at the seam.
     Below 700px the work's imprint strip is 34px rather than 38px, and the
     mark rides 2px up to meet it. */
  .leaving .ledger .limp{transform:translate(calc(clamp(14px,2.4vw,26px) - var(--pad)
    - max(0px,(100vw - 1180px)/2)),0)}
  @media(max-width:700px){
    .leaving .ledger .limp{transform:translate(calc(clamp(14px,2.4vw,26px) - var(--pad)
      - max(0px,(100vw - 1180px)/2)),-2px)}
  }
  .returning .ledger .limp{transform:none}
  .leaving .entry[data-recede],.leaving .mast,.leaving .grp-h,.leaving .sub,.leaving .sect,.leaving .foot{
    opacity:0;transition:opacity 220ms var(--ease)}
  .leaving .entry[data-open]{position:relative;z-index:30;border-bottom-color:transparent}
  .leaving .entry[data-open] .plate,.leaving .entry[data-open] .esub,
  .leaving .entry[data-open] .efoot,.leaving .entry[data-open] .rechead{
    opacity:0;transition:opacity 180ms var(--ease)}
  /* Under ~340px the resting title breaks over two lines; the work's header
     never does, so the flight closes the row up first. Without this the
     bracket and the tag ride a second line for the whole flight and arrive
     27px below the title. */
  .leaving .entry[data-open] .etitle{flex-wrap:nowrap;transition:transform 400ms var(--ease)}
  /* and nothing inside the row may break either. Closed up to one line the
     items are free to shrink instead, and under about 300px the squeezed 世譜
     folded to one character per line: the row went 24px to 35px tall and the
     hanja rode the whole flight 16px below the middle the rest of the lemma was
     holding. The work's header never breaks its title, so neither does this.
     (.k already carried this fix on its own; it belongs to the row.) */
  .leaving .entry[data-open] .etitle>*{white-space:nowrap}
  /* The bracket gets no rule of its own in the flight, and that is the safe
     choice rather than the daring one: at rest it is opacity 0 with a 1px
     left margin, so with nothing said here it neither fades nor shifts while
     the row is in the air, and the geometry the flight was measured against
     is the geometry it keeps. (It also wants no transform. The lift of
     -.1825 of the title size is what puts it on the cluster's middle axis at
     both ends of the seam, and the flight's uniform scale carries that
     fraction across unchanged; a transform here would overwrite the lift.) */
  /* white-space:nowrap is load-bearing: max-width:0 on a wrappable run makes it
     reflow to one character per line, and the box — still in the flex line,
     merely clipped — grew from 14px to 49px tall and dragged the line's centre,
     and the tag centred on it, ~13px down mid-flight. */
  .leaving .entry[data-open] .etitle .k{opacity:0;max-width:0;margin-left:-12px;overflow:hidden;
    white-space:nowrap;
    transition:opacity 150ms var(--ease),max-width 320ms var(--ease),margin-left 320ms var(--ease)}
  .returning .entry[data-mark]{position:relative;z-index:30}
  .returning .entry[data-mark] .etitle{transition:transform 420ms var(--ease)}
  .returning .entry:not([data-mark]),.returning .mast,.returning .grp-h,.returning .sub,.returning .sect{
    animation:re-in 480ms 120ms var(--ease) both}
  .returning .entry[data-mark] .plate,.returning .entry[data-mark] .esub,.returning .entry[data-mark] .efoot,
  .returning .entry[data-mark] .rechead{animation:re-in 380ms 200ms var(--ease) both}
  @keyframes re-in{from{opacity:0}to{opacity:1}}
}

/* ── sebo (subdomain) ── */
.sebo-head{border-bottom:1px solid var(--rule);background:var(--pn)}
.sebo-top{max-width:1180px;margin:0 auto;padding:0 var(--pad);display:flex;align-items:center;
  gap:14px;height:46px;border-bottom:1px solid var(--rule)}
.sebo-top .up{font-family:var(--fm);font-size:9.6px;letter-spacing:.17em;color:var(--soft);
  display:flex;align-items:baseline;gap:9px}
.sebo-top .up:hover{color:var(--ink)}
.sebo-top .sp{flex:1}
.sebo-id{max-width:1180px;margin:0 auto;padding:clamp(18px,3vw,26px) var(--pad) clamp(14px,2vw,20px)}
/* the same one middle axis as the index lemma — see .etitle above */
.sebo-id .t{font-family:var(--fd);--tsz:clamp(26px,4vw,40px);--hsz:calc(.68 * var(--tsz));
  --mid:calc(.338 * var(--tsz));font-size:var(--tsz);
  letter-spacing:-.024em;display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.sebo-id .t .stage{align-self:baseline;transform:translateY(calc(2.898px - var(--mid)))}
.sebo-id .ap{font-family:var(--fm);font-size:11px;letter-spacing:.13em;color:var(--soft);
  display:flex;gap:clamp(12px,1.8vw,20px);flex-wrap:wrap;align-self:baseline}
.sebo-id .t .h{font-family:var(--fh);font-size:var(--hsz);color:var(--acc2);
  transform:translateY(calc(.3796 * var(--hsz) - var(--mid)))}
.sebo-id .s{font-family:var(--fd);font-style:italic;font-size:clamp(14px,1.7vw,17px);
  color:var(--soft);margin-top:8px}
.tools{max-width:1180px;margin:0 auto;padding:0 var(--pad);display:flex;overflow-x:auto;
  scrollbar-width:none;border-top:1px solid var(--rule)}
.tools::-webkit-scrollbar{display:none}
.tools a{font-family:var(--fm);font-size:9.6px;letter-spacing:.15em;padding:11px 0;margin-right:24px;
  color:var(--soft);border-bottom:2px solid transparent;white-space:nowrap}
.tools a[aria-current]{color:var(--acc2);border-bottom-color:var(--acc2)}
/* The panel bleeds to the viewport, but its outer padding carries the same
   gutter the 1180px content column has, so its text keeps the one left edge. */
.work{display:grid;grid-template-columns:1.25fr 1fr;gap:0;border-bottom:1px solid var(--rule);
  --bleed:max(0px,calc((100vw - 1180px) / 2))}
@media(max-width:820px){.work{grid-template-columns:1fr}}
.work .l{padding:clamp(18px,3vw,28px) var(--pad) clamp(18px,3vw,28px)
  calc(var(--pad) + var(--bleed));border-right:1px solid var(--rule)}
.work .r{padding:clamp(18px,3vw,28px) calc(var(--pad) + var(--bleed))
  clamp(18px,3vw,28px) var(--pad);background:var(--pn2)}
@media(max-width:820px){
  /* stacked: both panels are full width, so both carry the bleed on both sides */
  .work .l{padding-right:calc(var(--pad) + var(--bleed));
    border-right:0;border-bottom:1px solid var(--rule)}
  .work .r{padding-left:calc(var(--pad) + var(--bleed))}
}
.passage{font-family:var(--fh);font-size:clamp(16px,2vw,21px);line-height:2.05;letter-spacing:.03em}
.passage u{text-decoration:none;border-bottom:1.5px solid var(--acc2);cursor:pointer}
.passage u.prop{border-bottom-style:dashed;border-bottom-color:var(--acc)}
.gloss{font-family:var(--fk);font-size:13.4px;color:var(--soft);line-height:1.85;margin-top:12px}
.nodes{font-family:var(--fm);font-size:10.4px;line-height:2;letter-spacing:.05em}
.nodes b{font-family:var(--fh);font-size:13px;font-weight:400;color:var(--ink)}
.nodes .p{color:var(--acc)}

/* ═══════════════════════════════════════════════════════════════════════════
   한지 — the ground, the sheet and the rule.
   Everything below is procedural: SVG filters and paths serialised to data
   URIs, and CSS gradients. No image is fetched. Three ideas:

     the ground is a raw sheet and every panel is a burnished one (도침/생지);
     the page is a sheet with a torn edge, not a rectangle (배접);
     no rule on this site is a straight line (발끝).

   Every mask takes its colour from a token, so one asset serves both themes
   and every colour the rule is ever asked to be. Nothing here changes layout:
   the borders all remain, at their old widths, with transparent colour, and
   the wandering band is painted over them.
   ═══════════════════════════════════════════════════════════════════════════ */
:root{
  --tex-fibre:var(--tex-fibre-l,url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='760'%20height='760'%20viewBox='0%200%20760%20760'%20preserveAspectRatio='none'%3E%3Cg%20fill='none'%20stroke='%2317150F'%20stroke-opacity='0.042'%20stroke-width='0.75'%3E%3Cpath%20d='M442%20148C387%20157%20328%20155%20277%20166M219%20526C256%20556%20301%20601%20354%20632M279%20358C299%20390%20322%20429%20347%20471M84%20626C67%20661%2034%20699%2012%20740M307%20508C345%20506%20372%20514%20418%20511M7%20429C19%20430%2035%20450%2060%20456M553%20276C536%20315%20516%20348%20502%20375M525%20519C538%20517%20576%20527%20590%20521M637%2090C613%20135%20572%20163%20548%20208M602%20561C576%20566%20543%20592%20500%20597M257%2051C247%2088%20239%20147%20236%20187M69%20712C80%20740%20113%20746%20125%20769M73%20497C58%20509%2037%20511%2020%20516M611%20181C641%20215%20666%20256%20699%20283M219%20516C179%20522%20147%20532%20122%20550M92%20260C109%20296%20123%20324%20135%20360M504%20418C537%20437%20581%20444%20615%20465M331%20346C334%20370%20359%20376%20366%20394M507%20204C477%20248%20447%20300%20403%20338M44%20313C51%20335%2057%20377%2057%20400M47%20526C79%20567%20110%20588%20135%20624M555%20112C529%20134%20507%20171%20489%20194M73%20177C97%20192%20116%20212%20134%20219M341%2029C377%2058%20405%2067%20438%2094M450%20710C485%20759%20505%20799%20534%20855M84%2031C77%2077%2061%20116%2036%20163M102%2045C135%2072%20145%20111%20175%20139M295%20424C349%20453%20395%20469%20435%20496M25%20232C-16%20237%20-51%20254%20-81%20267M704%20672C663%20710%20629%20739%20598%20772M25%20678C67%20697%20105%20709%20141%20728M602%20713C588%20758%20564%20812%20540%20874M503%20282C493%20283%20459%20291%20448%20309M95%20749C42%20780%206%20807%20-48%20831M205%20738C171%20770%20150%20806%20115%20841M371%20699C376%20750%20400%20791%20410%20852M529%20217C506%20265%20492%20290%20479%20337M336%2049C375%2064%20435%2078%20475%2094M619%20631C643%20648%20662%20656%20675%20663M388%20728C362%20755%20326%20800%20287%20835M10%20194C-14%20221%20-38%20262%20-65%20286M745%20420C724%20437%20722%20445%20701%20469M112%20380C120%20398%20145%20413%20153%20439M612%2057C635%2085%20669%20115%20708%20153M674%20121C635%20169%20602%20210%20569%20248M441%20266C395%20284%20352%20295%20312%20315M713%20741C765%20758%20802%20792%20858%20820M674%20664C707%20684%20718%20713%20751%20741M517%20663C494%20664%20485%20676%20465%20685M701%20468C680%20517%20676%20558%20653%20596M595%20131C631%20131%20666%20148%20692%20148M529%20368C568%20391%20624%20416%20665%20437M179%20668C197%20701%20208%20729%20236%20757M371%20609C396%20638%20409%20682%20421%20721M228%20209C262%20250%20308%20270%20349%20307M595%20442C576%20442%20545%20457%20528%20467M238%20215C226%20262%20222%20303%20207%20356M758%2018C774%2062%20793%20120%20819%20160M666%2062C654%2081%20664%20110%20657%20135M218%20441C242%20455%20278%20461%20311%20465M255%20316C249%20348%20234%20366%20235%20399M15%20371C46%20385%2084%20402%20126%20411M620%20729C632%20779%20641%20843%20638%20890M120%20571C100%20603%2078%20646%2048%20679M139%20734C117%20743%20115%20768%2098%20780M708%20671C721%20685%20748%20700%20770%20718M624%20466C586%20496%20537%20527%20495%20557M350%20508C305%20530%20268%20542%20228%20569M80%20343C27%20359%20-6%20362%20-57%20368M5%20236C17%20270%2044%20303%2061%20334M376%20424C430%20448%20476%20454%20520%20477M223%2039C190%2073%20147%20110%20100%20137M92%2052C43%2076%20-15%20101%20-67%20117M217%2041C204%2056%20176%2064%20166%2077M207%20613C177%20631%20158%20656%20135%20674M720%20244C757%20268%20800%20283%20837%20302M620%20149C600%20166%20581%20174%20560%20197M349%20213C370%20234%20397%20274%20417%20294M720%20137C748%20163%20773%20183%20798%20206M759%20731C741%20738%20721%20767%20689%20780M703%20322C694%20338%20660%20362%20651%20389M505%20408C473%20442%20423%20453%20392%20486M219%20102C206%20148%20200%20185%20196%20241M201%20202C162%20248%20138%20298%20106%20344M113%20727C138%20759%20173%20791%20194%20822M259%20724C310%20749%20363%20789%20404%20813M386%20615C414%20631%20440%20640%20471%20640M441%20546C430%20562%20398%20569%20386%20591M607%20427C557%20437%20510%20459%20453%20463M233%20395C244%20400%20272%20416%20289%20417M570%20733C603%20768%20643%20816%20680%20846M353%2044C373%2075%20382%20113%20403%20157M390%20299C415%20333%20435%20362%20452%20397M704%2089C725%2091%20741%2090%20769%20104M598%2044C571%2097%20560%20146%20530%20201M699%2026C688%2080%20685%20128%20665%20171'/%3E%3C/g%3E%3C/svg%3E"));
  --tex-form:none;--tex-form-size:auto;
  --tex-pn-fibre:none;--tex-pn-size:auto;
  --tex-size:760px 760px;
  --tex-grain:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='128'%20height='128'%20viewBox='0%200%20128%20128'%20preserveAspectRatio='none'%3E%3Cfilter%20id='g'%20x='0'%20y='0'%20width='100%25'%20height='100%25'%20color-interpolation-filters='sRGB'%3E%3CfeTurbulence%20type='fractalNoise'%20baseFrequency='.85'%20numOctaves='1'%20seed='5'%20stitchTiles='stitch'/%3E%3CfeColorMatrix%20values='1%200%200%200%200%201%200%200%200%200%201%200%200%200%200%200%200%200%200%200.045'/%3E%3C/filter%3E%3Crect%20width='128'%20height='128'%20filter='url(%23g)'/%3E%3C/svg%3E");
  --tex-grain-pn:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='128'%20height='128'%20viewBox='0%200%20128%20128'%20preserveAspectRatio='none'%3E%3Cfilter%20id='g'%20x='0'%20y='0'%20width='100%25'%20height='100%25'%20color-interpolation-filters='sRGB'%3E%3CfeTurbulence%20type='fractalNoise'%20baseFrequency='.85'%20numOctaves='1'%20seed='5'%20stitchTiles='stitch'/%3E%3CfeColorMatrix%20values='1%200%200%200%200%201%200%200%200%200%201%200%200%200%200%200%200%200%200%200.016'/%3E%3C/filter%3E%3Crect%20width='128'%20height='128'%20filter='url(%23g)'/%3E%3C/svg%3E");
  --tex-mug:rgba(96,112,92,.030);
  --tex-lap:rgba(23,21,15,.010);
  --tex-zebra:rgba(23,21,15,.016);
  --table:#E7E4D9;
  --drh:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='1000'%20height='3'%20viewBox='0%200%201000%203'%20preserveAspectRatio='none'%3E%3Cpath%20d='M0%201.5L23.3%200.8L46.5%201.9L69.8%201.8L93.0%201.5L116.3%200.9L139.5%202.1L162.8%202.1L186.0%201.5L209.3%201.5L232.6%201.0L255.8%200.5L279.1%201.2L302.3%201.7L325.6%200.6L348.8%202.1L372.1%201.0L395.3%201.0L418.6%200.6L441.9%202.5L465.1%202.0L488.4%202.3L511.6%201.7L534.9%200.6L558.1%201.2L581.4%201.5L604.7%200.7L627.9%202.4L651.2%201.2L674.4%200.8L697.7%202.1L720.9%200.7L744.2%202.4L767.4%201.4L790.7%201.6L814.0%201.2L837.2%201.5L860.5%200.9L883.7%200.6L907.0%202.2L930.2%201.0L953.5%202.1L976.7%200.9L1000.0%201.5'%20fill='none'%20stroke='%23000'%20stroke-width='1.05'%20stroke-linecap='square'/%3E%3C/svg%3E");   --drv:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='3'%20height='1000'%20viewBox='0%200%203%201000'%20preserveAspectRatio='none'%3E%3Cpath%20d='M1.5%200L1.8%2023.3L1.9%2046.5L2.4%2069.8L0.9%2093.0L0.6%20116.3L2.1%20139.5L1.2%20162.8L1.2%20186.0L2.1%20209.3L0.9%20232.6L2.3%20255.8L1.5%20279.1L0.6%20302.3L2.3%20325.6L1.6%20348.8L0.7%20372.1L2.2%20395.3L2.0%20418.6L2.0%20441.9L1.8%20465.1L2.5%20488.4L0.5%20511.6L2.4%20534.9L1.8%20558.1L1.0%20581.4L1.7%20604.7L1.2%20627.9L1.8%20651.2L1.9%20674.4L1.5%20697.7L0.7%20720.9L1.3%20744.2L1.1%20767.4L2.0%20790.7L2.4%20814.0L2.1%20837.2L1.6%20860.5L0.8%20883.7L1.9%20907.0L1.0%20930.2L2.5%20953.5L0.8%20976.7L1.5%201000.0'%20fill='none'%20stroke='%23000'%20stroke-width='1.05'%20stroke-linecap='square'/%3E%3C/svg%3E");
  --drh-s:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='240'%20height='3'%20viewBox='0%200%20240%203'%20preserveAspectRatio='none'%3E%3Cpath%20d='M0%201.5L13.3%201.6L26.7%201.7L40.0%202.0L53.3%201.1L66.7%201.8L80.0%202.2L93.3%202.2L106.7%201.0L120.0%201.8L133.3%201.7L146.7%201.5L160.0%202.3L173.3%201.5L186.7%201.4L200.0%202.3L213.3%201.7L226.7%201.2L240.0%201.5'%20fill='none'%20stroke='%23000'%20stroke-width='1.0'%20stroke-linecap='square'/%3E%3C/svg%3E"); --drv-s:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='3'%20height='240'%20viewBox='0%200%203%20240'%20preserveAspectRatio='none'%3E%3Cpath%20d='M1.5%200L1.0%2013.3L1.3%2026.7L1.0%2040.0L1.3%2053.3L1.6%2066.7L1.7%2080.0L1.1%2093.3L1.3%20106.7L1.0%20120.0L2.0%20133.3L1.1%20146.7L2.2%20160.0L0.8%20173.3L0.7%20186.7L1.4%20200.0L1.4%20213.3L1.9%20226.7L1.5%20240.0'%20fill='none'%20stroke='%23000'%20stroke-width='1.0'%20stroke-linecap='square'/%3E%3C/svg%3E");
  --dk-t:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='1200'%20height='7'%20viewBox='0%200%201200%207'%20preserveAspectRatio='none'%3E%3Cpath%20d='M0%200L1200%200L1200%207L1178.9%205.9L1157.9%207.2L1136.8%206.5L1115.8%207.4L1094.7%207.5L1073.7%205.2L1052.6%205.0L1031.6%208.4L1010.5%206.0L989.5%205.9L968.4%209.1L947.4%206.9L926.3%208.4L905.3%206.9L884.2%207.6L863.2%205.5L842.1%207.6L821.1%208.5L800.0%207.1L778.9%208.0L757.9%207.7L736.8%205.2L715.8%208.1L694.7%207.4L673.7%206.2L652.6%205.0L631.6%208.5L610.5%206.9L589.5%207.9L568.4%208.6L547.4%207.9L526.3%208.8L505.3%206.6L484.2%208.3L463.2%206.8L442.1%208.8L421.1%208.6L400.0%205.3L378.9%205.5L357.9%205.8L336.8%209.0L315.8%206.7L294.7%207.5L273.7%206.2L252.6%207.0L231.6%206.5L210.5%206.4L189.5%207.4L168.4%207.4L147.4%208.7L126.3%207.8L105.3%208.8L84.2%208.5L63.2%209.1L42.1%207.7L21.1%205.6L0.0%207.0L0%200Z'%20fill='%23000'/%3E%3C/svg%3E"); --dk-b:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='1200'%20height='7'%20viewBox='0%200%201200%207'%20preserveAspectRatio='none'%3E%3Cpath%20d='M0%200L21.1%20-0.7L42.1%20-1.5L63.2%200.6L84.2%20-1.8L105.3%200.2L126.3%20-0.6L147.4%20-1.9L168.4%200.0L189.5%20-1.9L210.5%20-0.3L231.6%20-1.8L252.6%20-1.7L273.7%20-0.3L294.7%201.4L315.8%20-1.6L336.8%20-1.2L357.9%200.5L378.9%201.9L400.0%200.3L421.1%20-0.4L442.1%202.0L463.2%20-1.9L484.2%201.5L505.3%20-0.9L526.3%20-1.5L547.4%20-1.6L568.4%20-0.8L589.5%201.3L610.5%20-1.3L631.6%200.3L652.6%200.6L673.7%20-0.5L694.7%200.2L715.8%20-1.8L736.8%20-1.8L757.9%20-1.2L778.9%200.8L800.0%20-0.3L821.1%20-0.8L842.1%200.4L863.2%20-0.2L884.2%20-0.8L905.3%201.2L926.3%200.8L947.4%20-1.1L968.4%200.3L989.5%200.1L1010.5%201.6L1031.6%201.0L1052.6%20-0.9L1073.7%202.0L1094.7%20-1.6L1115.8%20-0.3L1136.8%201.1L1157.9%20-1.5L1178.9%20-0.0L1200.0%200.0L1200%207L0%207L0%200Z'%20fill='%23000'/%3E%3C/svg%3E");
  --dk-l:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='7'%20height='900'%20viewBox='0%200%207%20900'%20preserveAspectRatio='none'%3E%3Cpath%20d='M0%200L7%200L6.8%2021.4L7.3%2042.9L8.8%2064.3L6.9%2085.7L7.0%20107.1L7.4%20128.6L5.7%20150.0L7.1%20171.4L7.5%20192.9L8.2%20214.3L5.3%20235.7L6.2%20257.1L5.3%20278.6L8.3%20300.0L7.8%20321.4L5.1%20342.9L9.0%20364.3L9.0%20385.7L7.6%20407.1L7.5%20428.6L5.6%20450.0L5.0%20471.4L7.1%20492.9L5.2%20514.3L5.7%20535.7L5.9%20557.1L5.0%20578.6L6.8%20600.0L6.8%20621.4L8.4%20642.9L7.1%20664.3L7.6%20685.7L7.0%20707.1L7.7%20728.6L6.8%20750.0L6.1%20771.4L9.1%20792.9L9.1%20814.3L8.4%20835.7L7.9%20857.1L6.2%20878.6L7.0%20900.0L0%20900L0%200Z'%20fill='%23000'/%3E%3C/svg%3E"); --dk-r:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='7'%20height='900'%20viewBox='0%200%207%20900'%20preserveAspectRatio='none'%3E%3Cpath%20d='M0%200L7%200L7%20900L0%20900L2.0%20878.6L-2.1%20857.1L1.0%20835.7L-1.4%20814.3L2.0%20792.9L-2.0%20771.4L1.6%20750.0L0.8%20728.6L1.5%20707.1L2.1%20685.7L-1.1%20664.3L-0.7%20642.9L0.9%20621.4L-0.9%20600.0L-1.0%20578.6L-1.1%20557.1L1.5%20535.7L1.6%20514.3L1.2%20492.9L-1.2%20471.4L1.8%20450.0L0.0%20428.6L-1.1%20407.1L-0.2%20385.7L-0.3%20364.3L-1.8%20342.9L0.3%20321.4L-0.6%20300.0L0.3%20278.6L1.8%20257.1L0.6%20235.7L-0.4%20214.3L1.5%20192.9L2.1%20171.4L-0.0%20150.0L1.9%20128.6L-2.0%20107.1L-1.5%2085.7L-1.4%2064.3L1.8%2042.9L0.8%2021.4L0.0%200.0Z'%20fill='%23000'/%3E%3C/svg%3E");
  --edge-t:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='1200'%20height='8'%20viewBox='0%200%201200%208'%20preserveAspectRatio='none'%3E%3Cpath%20d='M0%202.7L19.0%201.5L38.1%204.7L57.1%201.1L76.2%203.6L95.2%200.9L114.3%201.6L133.3%204.9L152.4%201.4L171.4%203.3L190.5%202.5L209.5%202.5L228.6%202.7L247.6%201.3L266.7%204.2L285.7%200.9L304.8%201.5L323.8%200.6L342.9%201.7L361.9%202.3L381.0%204.5L400.0%202.2L419.0%201.0L438.1%201.6L457.1%204.9L476.2%200.8L495.2%203.2L514.3%202.2L533.3%203.4L552.4%202.0L571.4%203.5L590.5%202.7L609.5%203.4L628.6%204.5L647.6%203.1L666.7%201.1L685.7%200.8L704.8%204.7L723.8%202.7L742.9%201.4L761.9%204.7L781.0%203.0L800.0%203.7L819.0%204.4L838.1%201.8L857.1%202.1L876.2%204.4L895.2%201.1L914.3%203.9L933.3%200.9L952.4%203.5L971.4%203.6L990.5%204.7L1009.5%204.2L1028.6%202.7L1047.6%201.4L1066.7%201.2L1085.7%202.8L1104.8%202.7L1123.8%200.8L1142.9%204.5L1161.9%202.7L1181.0%203.6L1200.0%202.7L1200%208L0%208Z'%20fill='%23000'/%3E%3C/svg%3E"); --edge-b:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='1200'%20height='8'%20viewBox='0%200%201200%208'%20preserveAspectRatio='none'%3E%3Cpath%20d='M0%200L1200%200L1200%208L1181.0%207.9L1161.9%208.7L1142.9%208.7L1123.8%206.4L1104.8%205.8L1085.7%207.4L1066.7%207.0L1047.6%209.4L1028.6%208.8L1009.5%208.4L990.5%208.3L971.4%208.7L952.4%206.4L933.3%207.7L914.3%206.5L895.2%209.8L876.2%206.1L857.1%209.4L838.1%206.1L819.0%208.8L800.0%207.3L781.0%207.6L761.9%209.5L742.9%205.9L723.8%206.1L704.8%209.8L685.7%208.0L666.7%206.2L647.6%2010.1L628.6%2010.0L609.5%206.3L590.5%207.7L571.4%206.4L552.4%207.2L533.3%208.5L514.3%206.5L495.2%208.9L476.2%206.0L457.1%206.6L438.1%209.4L419.0%207.6L400.0%207.6L381.0%208.4L361.9%207.9L342.9%207.5L323.8%205.9L304.8%209.0L285.7%2010.1L266.7%2010.1L247.6%208.7L228.6%207.4L209.5%207.4L190.5%208.8L171.4%208.8L152.4%206.3L133.3%206.8L114.3%207.4L95.2%208.0L76.2%209.4L57.1%208.0L38.1%205.9L19.0%209.4L0.0%208.0L0%200Z'%20fill='%23000'/%3E%3C/svg%3E");
  --mast-rule:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='1200'%20height='6'%20viewBox='0%200%201200%206'%20preserveAspectRatio='none'%3E%3Cpath%20d='M0%203.0L19.0%202.1L38.1%203.2L57.1%202.6L76.2%203.4L95.2%203.4L114.3%201.5L133.3%201.3L152.4%204.1L171.4%202.2L190.5%202.1L209.5%204.7L228.6%202.9L247.6%204.1L266.7%202.9L285.7%203.5L304.8%201.8L323.8%203.5L342.9%204.3L361.9%203.1L381.0%203.8L400.0%203.6L419.0%201.5L438.1%203.9L457.1%203.3L476.2%202.3L495.2%201.4L514.3%204.2L533.3%202.9L552.4%203.7L571.4%204.3L590.5%203.7L609.5%204.4L628.6%202.6L647.6%204.0L666.7%202.8L685.7%204.5L704.8%204.3L723.8%201.6L742.9%201.8L761.9%202.0L781.0%204.6L800.0%202.8L819.0%203.4L838.1%202.3L857.1%203.0L876.2%202.6L895.2%202.5L914.3%203.3L933.3%203.3L952.4%204.4L971.4%203.6L990.5%204.5L1009.5%204.2L1028.6%204.7L1047.6%203.6L1066.7%201.9L1085.7%204.2L1104.8%204.6L1123.8%204.4L1142.9%203.2L1161.9%203.7L1181.0%202.0L1200.0%203.0'%20fill='none'%20stroke='%23000'%20stroke-width='1.15'%20stroke-linecap='square'/%3E%3C/svg%3E");
}
html[data-theme="dark"]{
  --tex-fibre:var(--tex-fibre-d,url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='760'%20height='760'%20viewBox='0%200%20760%20760'%20preserveAspectRatio='none'%3E%3Cg%20fill='none'%20stroke-linecap='round'%3E%3Cg%20stroke='%23000000'%20stroke-opacity='0.24'%20stroke-width='1.08'%20transform='translate(0.95%201.25)'%3E%3Cpath%20d='M191%20608C160%20621%20147%20644%20120%20667M751%2078C711%20120%20667%20143%20628%20182M506%20668C515%20717%20531%20780%20553%20833M16%20439C52%20465%2083%20497%20125%20524M421%2099C382%20135%20350%20176%20302%20215M156%20676C128%20701%20107%20707%2093%20736M257%20227C301%20242%20337%20256%20391%20265M587%20158C630%20156%20673%20161%20722%20173M245%20567C247%20585%20234%20613%20237%20636M155%2026C156%2082%20149%20136%20159%20189M561%20510C530%20547%20497%20588%20453%20624M126%20445C158%20461%20211%20477%20246%20498M408%20266C425%20294%20416%20320%20434%20357M537%20426C513%20430%20480%20448%20444%20462M479%20196C519%20194%20548%20193%20583%20197M257%20617C233%20672%20195%20718%20176%20771M317%20134C334%20171%20353%20188%20370%20228M150%20403C192%20413%20227%20410%20278%20407M117%20538C94%20563%2097%20586%2073%20611M345%20609C316%20627%20292%20642%20271%20670M374%20284C347%20286%20325%20306%20312%20312M653%20495C638%20521%20599%20554%20584%20573M689%20332C715%20361%20748%20386%20766%20401M607%20646C634%20671%20653%20682%20675%20714M256%20481C219%20502%20186%20511%20141%20533M272%20744C251%20787%20231%20849%20207%20893M429%20253C448%20309%20455%20359%20464%20422M294%20307C305%20330%20323%20367%20341%20387M461%20270C446%20288%20436%20323%20414%20348M352%20317C385%20323%20420%20331%20452%20334M756%20670C791%20668%20833%20674%20873%20684M688%20592C721%20637%20767%20661%20802%20701M51%209C92%2012%20124%2012%20158%2019M496%20406C483%20422%20458%20441%20451%20458M378%20674C412%20710%20447%20731%20484%20771M364%2089C380%20100%20394%20111%20410%20122M108%20159C127%20182%20151%20198%20181%20223M38%2086C4%20107%20-27%20121%20-64%20125M91%20430C46%20459%200%20507%20-34%20536M229%20332C214%20349%20197%20355%20173%20367M477%20156C458%20200%20428%20239%20396%20274M189%20699C225%20708%20267%20710%20312%20705M166%20294C149%20336%20140%20378%20125%20420M215%20731C201%20748%20198%20787%20177%20806M285%20567C263%20601%20237%20620%20200%20646M2%20285C35%20339%2053%20386%2078%20442M507%20213C492%20225%20476%20243%20462%20249M584%202C602%2030%20625%2053%20643%2084M220%20571C207%20598%20210%20623%20202%20638M510%20409C511%20456%20521%20510%20521%20572M492%20148C502%20172%20513%20202%20515%20225M544%20679C568%20703%20589%20718%20605%20729M279%20485C235%20485%20201%20487%20150%20502M702%20225C663%20246%20633%20262%20596%20290M90%20755C118%20782%20145%20792%20187%20813M29%20595C45%20638%2067%20685%2098%20745M227%20506C197%20530%20150%20548%20119%20556M508%20544C490%20592%20452%20631%20431%20673M87%20588C105%20615%20131%20650%20149%20686M465%20158C456%20173%20433%20193%20413%20200M71%20288C64%20314%2066%20341%2076%20376M140%20433C135%20475%20129%20517%20111%20561M758%20592C763%20620%20752%20640%20753%20657M236%20598C199%20634%20180%20666%20144%20705M258%20413C284%20439%20317%20473%20335%20500M670%20402C672%20446%20671%20477%20679%20529M307%20246C289%20279%20279%20296%20256%20326M755%20397C773%20447%20797%20498%20808%20542M54%20560C60%20584%2067%20623%2069%20646M694%2017C740%2029%20786%2040%20831%2052M272%20672C246%20687%20222%20701%20203%20710M392%20598C402%20654%20400%20692%20406%20741M487%20366C463%20406%20461%20428%20436%20469M278%20380C312%20424%20333%20472%20356%20510M163%20433C180%20475%20203%20519%20231%20551M635%20651C667%20694%20706%20722%20736%20765M569%20494C573%20542%20580%20588%20594%20624M199%20194C209%20206%20211%20224%20223%20244M497%20614C454%20649%20424%20687%20392%20711M405%20618C391%20625%20375%20645%20350%20650M607%20328C548%20330%20496%20336%20451%20334M475%20222C425%20223%20355%20234%20303%20241M73%20538C55%20537%2027%20544%2010%20555M40%2042C63%2076%2079%20113%2096%20137M170%2031C133%2066%20106%20104%2084%20143M342%20187C343%20225%20323%20268%20321%20315M95%20311C107%20321%20131%20320%20157%20326M299%20658C273%20666%20245%20686%20222%20690M611%2059C577%2071%20534%2086%20501%2094M77%20753C67%20798%2039%20834%2032%20867M214%20706C170%20703%20130%20702%2081%20713M78%20353C114%20355%20148%20358%20186%20368M213%2022C202%2043%20189%2071%20188%20109M402%2013C353%2029%20308%2036%20271%2060M268%2079C251%2091%20236%20116%20219%20123M452%20516C448%20532%20433%20570%20435%20591M570%20609C562%20632%20538%20661%20522%20700M312%20399C293%20408%20268%20412%20247%20416M206%20265C166%20282%20113%20296%2075%20310M261%20147C292%20193%20313%20232%20350%20273M429%20531C408%20542%20371%20529%20352%20538M345%20484C374%20504%20398%20542%20439%20570M584%2027C614%2032%20636%2046%20671%2060M451%20580C464%20605%20484%20633%20491%20673M246%20138C283%20176%20307%20210%20341%20236M512%20260C547%20268%20560%20275%20595%20280M176%20656C157%20698%20125%20743%20109%20779M464%20718C443%20725%20436%20734%20410%20738M61%20235C82%20248%20102%20242%20126%20258M292%20719C296%20766%20292%20820%20298%20863M310%20441C290%20488%20246%20523%20224%20579M527%20341C522%20377%20521%20423%20526%20467M493%20530C475%20573%20459%20609%20438%20661M502%20318C497%20366%20480%20407%20464%20452M739%20337C734%20379%20740%20433%20733%20487M442%20664C439%20685%20425%20706%20422%20738M179%20458C218%20482%20239%20503%20278%20518M294%20569C310%20602%20331%20629%20354%20651M650%20210C639%20258%20614%20304%20606%20365M476%20498C460%20522%20437%20537%20404%20570M659%20384C627%20423%20597%20473%20563%20512M543%20675C546%20704%20547%20730%20553%20750M295%20575C264%20579%20246%20596%20224%20596M370%2099C407%20137%20438%20180%20467%20223M301%2093C317%20114%20318%20130%20323%20154M564%20616C527%20632%20489%20663%20452%20678M733%20628C711%20664%20702%20699%20679%20736M700%20507C728%20514%20743%20532%20766%20552M444%20445C462%20490%20465%20528%20489%20577M159%20441C142%20444%20131%20453%20107%20464M154%20212C143%20232%20117%20266%20104%20296M223%20351C196%20379%20175%20412%20163%20444M630%2044C613%2092%20589%20153%20567%20196M265%20580C220%20607%20198%20632%20155%20665M694%20155C728%20168%20750%20204%20770%20220M733%20688C756%20741%20784%20780%20797%20824M451%20676C468%20698%20491%20709%20514%20722M508%20433C489%20463%20469%20495%20453%20525M641%20271C654%20274%20665%20298%20688%20307M421%2087C416%20138%20425%20184%20419%20225'/%3E%3C/g%3E%3Cg%20stroke='%23F2E9D6'%20stroke-opacity='0.068'%20stroke-width='0.92'%3E%3Cpath%20d='M191%20608C160%20621%20147%20644%20120%20667M751%2078C711%20120%20667%20143%20628%20182M506%20668C515%20717%20531%20780%20553%20833M16%20439C52%20465%2083%20497%20125%20524M421%2099C382%20135%20350%20176%20302%20215M156%20676C128%20701%20107%20707%2093%20736M257%20227C301%20242%20337%20256%20391%20265M587%20158C630%20156%20673%20161%20722%20173M245%20567C247%20585%20234%20613%20237%20636M155%2026C156%2082%20149%20136%20159%20189M561%20510C530%20547%20497%20588%20453%20624M126%20445C158%20461%20211%20477%20246%20498M408%20266C425%20294%20416%20320%20434%20357M537%20426C513%20430%20480%20448%20444%20462M479%20196C519%20194%20548%20193%20583%20197M257%20617C233%20672%20195%20718%20176%20771M317%20134C334%20171%20353%20188%20370%20228M150%20403C192%20413%20227%20410%20278%20407M117%20538C94%20563%2097%20586%2073%20611M345%20609C316%20627%20292%20642%20271%20670M374%20284C347%20286%20325%20306%20312%20312M653%20495C638%20521%20599%20554%20584%20573M689%20332C715%20361%20748%20386%20766%20401M607%20646C634%20671%20653%20682%20675%20714M256%20481C219%20502%20186%20511%20141%20533M272%20744C251%20787%20231%20849%20207%20893M429%20253C448%20309%20455%20359%20464%20422M294%20307C305%20330%20323%20367%20341%20387M461%20270C446%20288%20436%20323%20414%20348M352%20317C385%20323%20420%20331%20452%20334M756%20670C791%20668%20833%20674%20873%20684M688%20592C721%20637%20767%20661%20802%20701M51%209C92%2012%20124%2012%20158%2019M496%20406C483%20422%20458%20441%20451%20458M378%20674C412%20710%20447%20731%20484%20771M364%2089C380%20100%20394%20111%20410%20122M108%20159C127%20182%20151%20198%20181%20223M38%2086C4%20107%20-27%20121%20-64%20125M91%20430C46%20459%200%20507%20-34%20536M229%20332C214%20349%20197%20355%20173%20367M477%20156C458%20200%20428%20239%20396%20274M189%20699C225%20708%20267%20710%20312%20705M166%20294C149%20336%20140%20378%20125%20420M215%20731C201%20748%20198%20787%20177%20806M285%20567C263%20601%20237%20620%20200%20646M2%20285C35%20339%2053%20386%2078%20442M507%20213C492%20225%20476%20243%20462%20249M584%202C602%2030%20625%2053%20643%2084M220%20571C207%20598%20210%20623%20202%20638M510%20409C511%20456%20521%20510%20521%20572M492%20148C502%20172%20513%20202%20515%20225M544%20679C568%20703%20589%20718%20605%20729M279%20485C235%20485%20201%20487%20150%20502M702%20225C663%20246%20633%20262%20596%20290M90%20755C118%20782%20145%20792%20187%20813M29%20595C45%20638%2067%20685%2098%20745M227%20506C197%20530%20150%20548%20119%20556M508%20544C490%20592%20452%20631%20431%20673M87%20588C105%20615%20131%20650%20149%20686M465%20158C456%20173%20433%20193%20413%20200M71%20288C64%20314%2066%20341%2076%20376M140%20433C135%20475%20129%20517%20111%20561M758%20592C763%20620%20752%20640%20753%20657M236%20598C199%20634%20180%20666%20144%20705M258%20413C284%20439%20317%20473%20335%20500M670%20402C672%20446%20671%20477%20679%20529M307%20246C289%20279%20279%20296%20256%20326M755%20397C773%20447%20797%20498%20808%20542M54%20560C60%20584%2067%20623%2069%20646M694%2017C740%2029%20786%2040%20831%2052M272%20672C246%20687%20222%20701%20203%20710M392%20598C402%20654%20400%20692%20406%20741M487%20366C463%20406%20461%20428%20436%20469M278%20380C312%20424%20333%20472%20356%20510M163%20433C180%20475%20203%20519%20231%20551M635%20651C667%20694%20706%20722%20736%20765M569%20494C573%20542%20580%20588%20594%20624M199%20194C209%20206%20211%20224%20223%20244M497%20614C454%20649%20424%20687%20392%20711M405%20618C391%20625%20375%20645%20350%20650M607%20328C548%20330%20496%20336%20451%20334M475%20222C425%20223%20355%20234%20303%20241M73%20538C55%20537%2027%20544%2010%20555M40%2042C63%2076%2079%20113%2096%20137M170%2031C133%2066%20106%20104%2084%20143M342%20187C343%20225%20323%20268%20321%20315M95%20311C107%20321%20131%20320%20157%20326M299%20658C273%20666%20245%20686%20222%20690M611%2059C577%2071%20534%2086%20501%2094M77%20753C67%20798%2039%20834%2032%20867M214%20706C170%20703%20130%20702%2081%20713M78%20353C114%20355%20148%20358%20186%20368M213%2022C202%2043%20189%2071%20188%20109M402%2013C353%2029%20308%2036%20271%2060M268%2079C251%2091%20236%20116%20219%20123M452%20516C448%20532%20433%20570%20435%20591M570%20609C562%20632%20538%20661%20522%20700M312%20399C293%20408%20268%20412%20247%20416M206%20265C166%20282%20113%20296%2075%20310M261%20147C292%20193%20313%20232%20350%20273M429%20531C408%20542%20371%20529%20352%20538M345%20484C374%20504%20398%20542%20439%20570M584%2027C614%2032%20636%2046%20671%2060M451%20580C464%20605%20484%20633%20491%20673M246%20138C283%20176%20307%20210%20341%20236M512%20260C547%20268%20560%20275%20595%20280M176%20656C157%20698%20125%20743%20109%20779M464%20718C443%20725%20436%20734%20410%20738M61%20235C82%20248%20102%20242%20126%20258M292%20719C296%20766%20292%20820%20298%20863M310%20441C290%20488%20246%20523%20224%20579M527%20341C522%20377%20521%20423%20526%20467M493%20530C475%20573%20459%20609%20438%20661M502%20318C497%20366%20480%20407%20464%20452M739%20337C734%20379%20740%20433%20733%20487M442%20664C439%20685%20425%20706%20422%20738M179%20458C218%20482%20239%20503%20278%20518M294%20569C310%20602%20331%20629%20354%20651M650%20210C639%20258%20614%20304%20606%20365M476%20498C460%20522%20437%20537%20404%20570M659%20384C627%20423%20597%20473%20563%20512M543%20675C546%20704%20547%20730%20553%20750M295%20575C264%20579%20246%20596%20224%20596M370%2099C407%20137%20438%20180%20467%20223M301%2093C317%20114%20318%20130%20323%20154M564%20616C527%20632%20489%20663%20452%20678M733%20628C711%20664%20702%20699%20679%20736M700%20507C728%20514%20743%20532%20766%20552M444%20445C462%20490%20465%20528%20489%20577M159%20441C142%20444%20131%20453%20107%20464M154%20212C143%20232%20117%20266%20104%20296M223%20351C196%20379%20175%20412%20163%20444M630%2044C613%2092%20589%20153%20567%20196M265%20580C220%20607%20198%20632%20155%20665M694%20155C728%20168%20750%20204%20770%20220M733%20688C756%20741%20784%20780%20797%20824M451%20676C468%20698%20491%20709%20514%20722M508%20433C489%20463%20469%20495%20453%20525M641%20271C654%20274%20665%20298%20688%20307M421%2087C416%20138%20425%20184%20419%20225'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E"));
  --tex-form:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='1024'%20height='1024'%20viewBox='0%200%201024%201024'%20preserveAspectRatio='none'%3E%3Cfilter%20id='f0'%20x='0'%20y='0'%20width='100%25'%20height='100%25'%20color-interpolation-filters='sRGB'%3E%3CfeTurbulence%20type='fractalNoise'%20baseFrequency='0.004'%20numOctaves='3'%20seed='19'%20stitchTiles='stitch'/%3E%3CfeColorMatrix%20values='0%200%200%200%200.97%200%200%200%200%200.94%200%200%200%200%200.86%200.026399999999999996%200.0176%200%200%20-0.01364'/%3E%3C/filter%3E%3Crect%20width='1024'%20height='1024'%20filter='url(%23f0)'/%3E%3Cfilter%20id='f1'%20x='0'%20y='0'%20width='100%25'%20height='100%25'%20color-interpolation-filters='sRGB'%3E%3CfeTurbulence%20type='fractalNoise'%20baseFrequency='0.004'%20numOctaves='3'%20seed='56'%20stitchTiles='stitch'/%3E%3CfeColorMatrix%20values='0%200%200%200%200.06%200%200%200%200%200.06%200%200%200%200%200.05%200.138%200.09200000000000001%200%200%20-0.0713'/%3E%3C/filter%3E%3Crect%20width='1024'%20height='1024'%20filter='url(%23f1)'/%3E%3C/svg%3E");--tex-form-size:1024px 1024px;
  --tex-pn-fibre:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='760'%20height='760'%20viewBox='0%200%20760%20760'%20preserveAspectRatio='none'%3E%3Cg%20fill='none'%20stroke-linecap='round'%3E%3Cg%20stroke='%23000000'%20stroke-opacity='0.1'%20stroke-width='1.08'%20transform='translate(0.95%201.25)'%3E%3Cpath%20d='M336%20313C294%20314%20260%20322%20231%20315M536%20564C568%20586%20590%20588%20619%20607M118%20264C162%20291%20199%20320%20243%20350M454%2056C429%2064%20391%2060%20372%2062M523%20396C530%20429%20522%20463%20530%20485M85%20536C66%20554%2051%20585%2035%20605M36%20382C46%20393%2064%20429%2071%20441M473%20399C517%20431%20549%20455%20597%20477M259%20468C241%20514%20237%20555%20222%20605M630%20392C578%20399%20545%20408%20496%20427M536%20697C581%20710%20619%20730%20666%20753M130%20400C107%20423%2099%20438%2077%20462M48%20675C36%20710%209%20740%20-8%20770M77%20325C107%20332%20152%20346%20189%20350M755%20532C796%20556%20837%20585%20889%20601M34%20441C81%20457%20123%20493%20159%20508M619%20311C591%20342%20562%20374%20528%20413M2%20650C-35%20685%20-76%20712%20-118%20740M702%2092C695%20116%20695%20157%20693%20190M671%20344C711%20352%20772%20385%20815%20394M309%20141C337%20135%20379%20144%20421%20147M748%20504C797%20533%20850%20564%20893%20592M403%20125C368%20168%20342%20223%20316%20269M544%20735C566%20750%20588%20778%20622%20800M471%20272C458%20307%20447%20346%20425%20380M140%20440C146%20492%20144%20529%20142%20577M577%20192C573%20217%20560%20219%20555%20245M740%20694C720%20726%20683%20751%20658%20770M546%20472C504%20503%20479%20541%20442%20577M609%20206C613%20232%20627%20276%20631%20310M350%20344C366%20363%20379%20395%20382%20425M629%20678C666%20704%20720%20714%20760%20740M601%20366C636%20391%20652%20406%20691%20436M254%20705C232%20745%20205%20796%20193%20844M575%20653C530%20689%20484%20718%20443%20754M396%20529C343%20546%20282%20565%20232%20576M325%20637C302%20666%20271%20713%20239%20748M37%20416C-8%20440%20-63%20465%20-103%20490M526%20667C527%20697%20528%20730%20528%20771M50%20743C88%20743%20124%20739%20163%20747M735%20608C763%20622%20799%20642%20822%20654M137%20486C168%20482%20177%20503%20209%20500M52%20458C91%20465%20137%20464%20193%20474M543%20428C580%20429%20616%20438%20652%20444M615%20547C557%20570%20507%20600%20457%20615M598%20463C567%20488%20529%20527%20489%20562M276%20507C276%20528%20301%20547%20303%20567M307%20360C286%20411%20248%20454%20222%20510M517%20465C475%20491%20446%20529%20404%20565M738%2096C744%20114%20742%20130%20748%20154M241%20599C229%20646%20234%20677%20228%20728M648%20576C652%20615%20638%20667%20640%20720M262%20553C272%20604%20307%20644%20316%20684M716%20547C711%20584%20711%20606%20700%20643M704%20450C716%20473%20716%20515%20720%20542M563%20357C603%20383%20621%20413%20658%20432M432%20255C481%20258%20534%20281%20581%20283M114%2090C77%2091%2049%20101%2026%20101M660%20399C649%20424%20621%20452%20601%20473M326%20402C292%20413%20243%20415%20210%20413M359%20163C404%20182%20449%20212%20489%20245M561%20456C522%20476%20461%20490%20422%20511M537%20530C498%20556%20460%20564%20413%20586M166%20453C147%20495%20145%20541%20123%20596M535%20577C551%20584%20582%20602%20595%20602M245%20732C261%20773%20289%20810%20310%20852M727%2062C736%20100%20729%20134%20734%20178M490%20738C491%20761%20510%20802%20519%20824M120%20571C151%20609%20189%20656%20228%20692M273%20701C290%20752%20308%20792%20316%20839M27%2053C35%2076%2044%20121%2058%20145M68%20519C86%20571%2099%20625%20120%20678M249%2075C268%2085%20274%20112%20299%20118M732%20103C756%20123%20769%20157%20793%20183M732%20419C693%20451%20666%20490%20628%20519M55%20633C7%20643%20-44%20641%20-88%20650M34%20235C69%20283%20104%20318%20147%20368M349%20350C338%20374%20325%20394%20308%20411M723%20401C744%20435%20790%20453%20815%20475M431%20497C469%20530%20489%20549%20529%20579M471%2030C476%2072%20495%2098%20495%20144M176%20255C231%20260%20265%20269%20319%20288M394%20203C421%20238%20453%20288%20484%20331M81%20387C92%20432%20115%20492%20122%20542M419%2099C448%20130%20481%20157%20505%20183M690%20558C734%20594%20755%20615%20801%20650M425%20642C388%20661%20369%20695%20330%20723M509%20720C484%20730%20456%20717%20425%20729M18%20708C77%20720%20123%20726%20172%20744M591%20572C569%20614%20548%20654%20533%20699M297%20215C300%20234%20280%20261%20285%20270M443%2041C406%2051%20383%2056%20351%2068M399%20474C360%20490%20320%20512%20288%20527M223%20624C230%20638%20234%20664%20237%20687M282%20652C291%20700%20285%20738%20298%20771M19%20109C39%20129%2064%20140%2080%20163M690%20664C744%20692%20779%20733%20827%20763M598%20737C621%20766%20638%20791%20671%20811M220%20526C206%20549%20214%20568%20204%20586M486%20658C519%20670%20562%20674%20600%20686M173%20210C153%20229%20135%20262%20124%20275M502%20243C486%20259%20459%20257%20430%20269M327%20753C342%20753%20358%20771%20381%20779M139%20198C171%20235%20205%20277%20231%20323M204%20122C235%20152%20264%20177%20291%20214M141%2043C163%2074%20164%20126%20183%20159M527%20449C539%20506%20565%20546%20575%20597M365%20204C401%20220%20444%20240%20472%20250M488%20739C537%20764%20604%20776%20652%20791M576%20629C557%20669%20547%20718%20536%20761M636%20353C636%20395%20640%20427%20629%20469M460%20717C477%20747%20493%20775%20522%20792M183%20326C138%20357%2084%20382%2039%20412M42%20435C33%20476%2029%20526%2016%20571M206%20729C163%20744%20134%20752%2093%20762M232%2064C203%20109%20162%20139%20125%20183M598%2091C552%20110%20492%20122%20433%20131M97%20754C142%20785%20183%20799%20226%20835M55%20576C69%20611%2093%20657%20112%20701M603%20282C641%20298%20675%20307%20699%20308M248%20391C218%20392%20184%20409%20143%20418M454%20544C479%20559%20487%20592%20516%20618M66%20387C27%20381%201%20390%20-45%20390M705%20703C712%20732%20703%20750%20704%20784M52%201C5%2017%20-42%2027%20-89%2049M295%20580C343%20605%20405%20606%20462%20631M417%2089C429%20102%20454%20135%20469%20157M39%20759C52%20796%2061%20820%2077%20863M24%20170C9%20190%20-6%20224%20-13%20250M0%20342C20%20355%2041%20376%2054%20396M171%20223C164%20264%20146%20298%20129%20328M1%20529C16%20560%2023%20607%2027%20640M341%20530C324%20551%20300%20561%20277%20571M403%20201C443%20198%20491%20215%20532%20214M197%2052C199%2091%20202%20152%20211%20192M571%20467C591%20482%20621%20516%20637%20537M255%20223C227%20247%20204%20273%20167%20296M324%20303C290%20306%20258%20318%20228%20313M66%2068C12%2085%20-31%2082%20-87%2097M600%20682C589%20731%20578%20761%20574%20810'/%3E%3C/g%3E%3Cg%20stroke='%23F2E9D6'%20stroke-opacity='0.048'%20stroke-width='0.92'%3E%3Cpath%20d='M336%20313C294%20314%20260%20322%20231%20315M536%20564C568%20586%20590%20588%20619%20607M118%20264C162%20291%20199%20320%20243%20350M454%2056C429%2064%20391%2060%20372%2062M523%20396C530%20429%20522%20463%20530%20485M85%20536C66%20554%2051%20585%2035%20605M36%20382C46%20393%2064%20429%2071%20441M473%20399C517%20431%20549%20455%20597%20477M259%20468C241%20514%20237%20555%20222%20605M630%20392C578%20399%20545%20408%20496%20427M536%20697C581%20710%20619%20730%20666%20753M130%20400C107%20423%2099%20438%2077%20462M48%20675C36%20710%209%20740%20-8%20770M77%20325C107%20332%20152%20346%20189%20350M755%20532C796%20556%20837%20585%20889%20601M34%20441C81%20457%20123%20493%20159%20508M619%20311C591%20342%20562%20374%20528%20413M2%20650C-35%20685%20-76%20712%20-118%20740M702%2092C695%20116%20695%20157%20693%20190M671%20344C711%20352%20772%20385%20815%20394M309%20141C337%20135%20379%20144%20421%20147M748%20504C797%20533%20850%20564%20893%20592M403%20125C368%20168%20342%20223%20316%20269M544%20735C566%20750%20588%20778%20622%20800M471%20272C458%20307%20447%20346%20425%20380M140%20440C146%20492%20144%20529%20142%20577M577%20192C573%20217%20560%20219%20555%20245M740%20694C720%20726%20683%20751%20658%20770M546%20472C504%20503%20479%20541%20442%20577M609%20206C613%20232%20627%20276%20631%20310M350%20344C366%20363%20379%20395%20382%20425M629%20678C666%20704%20720%20714%20760%20740M601%20366C636%20391%20652%20406%20691%20436M254%20705C232%20745%20205%20796%20193%20844M575%20653C530%20689%20484%20718%20443%20754M396%20529C343%20546%20282%20565%20232%20576M325%20637C302%20666%20271%20713%20239%20748M37%20416C-8%20440%20-63%20465%20-103%20490M526%20667C527%20697%20528%20730%20528%20771M50%20743C88%20743%20124%20739%20163%20747M735%20608C763%20622%20799%20642%20822%20654M137%20486C168%20482%20177%20503%20209%20500M52%20458C91%20465%20137%20464%20193%20474M543%20428C580%20429%20616%20438%20652%20444M615%20547C557%20570%20507%20600%20457%20615M598%20463C567%20488%20529%20527%20489%20562M276%20507C276%20528%20301%20547%20303%20567M307%20360C286%20411%20248%20454%20222%20510M517%20465C475%20491%20446%20529%20404%20565M738%2096C744%20114%20742%20130%20748%20154M241%20599C229%20646%20234%20677%20228%20728M648%20576C652%20615%20638%20667%20640%20720M262%20553C272%20604%20307%20644%20316%20684M716%20547C711%20584%20711%20606%20700%20643M704%20450C716%20473%20716%20515%20720%20542M563%20357C603%20383%20621%20413%20658%20432M432%20255C481%20258%20534%20281%20581%20283M114%2090C77%2091%2049%20101%2026%20101M660%20399C649%20424%20621%20452%20601%20473M326%20402C292%20413%20243%20415%20210%20413M359%20163C404%20182%20449%20212%20489%20245M561%20456C522%20476%20461%20490%20422%20511M537%20530C498%20556%20460%20564%20413%20586M166%20453C147%20495%20145%20541%20123%20596M535%20577C551%20584%20582%20602%20595%20602M245%20732C261%20773%20289%20810%20310%20852M727%2062C736%20100%20729%20134%20734%20178M490%20738C491%20761%20510%20802%20519%20824M120%20571C151%20609%20189%20656%20228%20692M273%20701C290%20752%20308%20792%20316%20839M27%2053C35%2076%2044%20121%2058%20145M68%20519C86%20571%2099%20625%20120%20678M249%2075C268%2085%20274%20112%20299%20118M732%20103C756%20123%20769%20157%20793%20183M732%20419C693%20451%20666%20490%20628%20519M55%20633C7%20643%20-44%20641%20-88%20650M34%20235C69%20283%20104%20318%20147%20368M349%20350C338%20374%20325%20394%20308%20411M723%20401C744%20435%20790%20453%20815%20475M431%20497C469%20530%20489%20549%20529%20579M471%2030C476%2072%20495%2098%20495%20144M176%20255C231%20260%20265%20269%20319%20288M394%20203C421%20238%20453%20288%20484%20331M81%20387C92%20432%20115%20492%20122%20542M419%2099C448%20130%20481%20157%20505%20183M690%20558C734%20594%20755%20615%20801%20650M425%20642C388%20661%20369%20695%20330%20723M509%20720C484%20730%20456%20717%20425%20729M18%20708C77%20720%20123%20726%20172%20744M591%20572C569%20614%20548%20654%20533%20699M297%20215C300%20234%20280%20261%20285%20270M443%2041C406%2051%20383%2056%20351%2068M399%20474C360%20490%20320%20512%20288%20527M223%20624C230%20638%20234%20664%20237%20687M282%20652C291%20700%20285%20738%20298%20771M19%20109C39%20129%2064%20140%2080%20163M690%20664C744%20692%20779%20733%20827%20763M598%20737C621%20766%20638%20791%20671%20811M220%20526C206%20549%20214%20568%20204%20586M486%20658C519%20670%20562%20674%20600%20686M173%20210C153%20229%20135%20262%20124%20275M502%20243C486%20259%20459%20257%20430%20269M327%20753C342%20753%20358%20771%20381%20779M139%20198C171%20235%20205%20277%20231%20323M204%20122C235%20152%20264%20177%20291%20214M141%2043C163%2074%20164%20126%20183%20159M527%20449C539%20506%20565%20546%20575%20597M365%20204C401%20220%20444%20240%20472%20250M488%20739C537%20764%20604%20776%20652%20791M576%20629C557%20669%20547%20718%20536%20761M636%20353C636%20395%20640%20427%20629%20469M460%20717C477%20747%20493%20775%20522%20792M183%20326C138%20357%2084%20382%2039%20412M42%20435C33%20476%2029%20526%2016%20571M206%20729C163%20744%20134%20752%2093%20762M232%2064C203%20109%20162%20139%20125%20183M598%2091C552%20110%20492%20122%20433%20131M97%20754C142%20785%20183%20799%20226%20835M55%20576C69%20611%2093%20657%20112%20701M603%20282C641%20298%20675%20307%20699%20308M248%20391C218%20392%20184%20409%20143%20418M454%20544C479%20559%20487%20592%20516%20618M66%20387C27%20381%201%20390%20-45%20390M705%20703C712%20732%20703%20750%20704%20784M52%201C5%2017%20-42%2027%20-89%2049M295%20580C343%20605%20405%20606%20462%20631M417%2089C429%20102%20454%20135%20469%20157M39%20759C52%20796%2061%20820%2077%20863M24%20170C9%20190%20-6%20224%20-13%20250M0%20342C20%20355%2041%20376%2054%20396M171%20223C164%20264%20146%20298%20129%20328M1%20529C16%20560%2023%20607%2027%20640M341%20530C324%20551%20300%20561%20277%20571M403%20201C443%20198%20491%20215%20532%20214M197%2052C199%2091%20202%20152%20211%20192M571%20467C591%20482%20621%20516%20637%20537M255%20223C227%20247%20204%20273%20167%20296M324%20303C290%20306%20258%20318%20228%20313M66%2068C12%2085%20-31%2082%20-87%2097M600%20682C589%20731%20578%20761%20574%20810'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");--tex-pn-size:var(--tex-size);
  --tex-grain:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='128'%20height='128'%20viewBox='0%200%20128%20128'%20preserveAspectRatio='none'%3E%3Cfilter%20id='g'%20x='0'%20y='0'%20width='100%25'%20height='100%25'%20color-interpolation-filters='sRGB'%3E%3CfeTurbulence%20type='fractalNoise'%20baseFrequency='.85'%20numOctaves='1'%20seed='5'%20stitchTiles='stitch'/%3E%3CfeColorMatrix%20values='1%200%200%200%200%201%200%200%200%200%201%200%200%200%200%200%200%200%200%200.03'/%3E%3C/filter%3E%3Crect%20width='128'%20height='128'%20filter='url(%23g)'/%3E%3C/svg%3E"); --tex-grain-pn:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='128'%20height='128'%20viewBox='0%200%20128%20128'%20preserveAspectRatio='none'%3E%3Cfilter%20id='g'%20x='0'%20y='0'%20width='100%25'%20height='100%25'%20color-interpolation-filters='sRGB'%3E%3CfeTurbulence%20type='fractalNoise'%20baseFrequency='.85'%20numOctaves='1'%20seed='5'%20stitchTiles='stitch'/%3E%3CfeColorMatrix%20values='1%200%200%200%200%201%200%200%200%200%201%200%200%200%200%200%200%200%200%200.020'/%3E%3C/filter%3E%3Crect%20width='128'%20height='128'%20filter='url(%23g)'/%3E%3C/svg%3E");
  --tex-mug:rgba(132,148,124,.030);
  --tex-lap:rgba(242,233,214,.032);
  --tex-zebra:rgba(224,220,200,.022);
  --table:#141410;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --tex-fibre:var(--tex-fibre-d,url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='760'%20height='760'%20viewBox='0%200%20760%20760'%20preserveAspectRatio='none'%3E%3Cg%20fill='none'%20stroke-linecap='round'%3E%3Cg%20stroke='%23000000'%20stroke-opacity='0.24'%20stroke-width='1.08'%20transform='translate(0.95%201.25)'%3E%3Cpath%20d='M191%20608C160%20621%20147%20644%20120%20667M751%2078C711%20120%20667%20143%20628%20182M506%20668C515%20717%20531%20780%20553%20833M16%20439C52%20465%2083%20497%20125%20524M421%2099C382%20135%20350%20176%20302%20215M156%20676C128%20701%20107%20707%2093%20736M257%20227C301%20242%20337%20256%20391%20265M587%20158C630%20156%20673%20161%20722%20173M245%20567C247%20585%20234%20613%20237%20636M155%2026C156%2082%20149%20136%20159%20189M561%20510C530%20547%20497%20588%20453%20624M126%20445C158%20461%20211%20477%20246%20498M408%20266C425%20294%20416%20320%20434%20357M537%20426C513%20430%20480%20448%20444%20462M479%20196C519%20194%20548%20193%20583%20197M257%20617C233%20672%20195%20718%20176%20771M317%20134C334%20171%20353%20188%20370%20228M150%20403C192%20413%20227%20410%20278%20407M117%20538C94%20563%2097%20586%2073%20611M345%20609C316%20627%20292%20642%20271%20670M374%20284C347%20286%20325%20306%20312%20312M653%20495C638%20521%20599%20554%20584%20573M689%20332C715%20361%20748%20386%20766%20401M607%20646C634%20671%20653%20682%20675%20714M256%20481C219%20502%20186%20511%20141%20533M272%20744C251%20787%20231%20849%20207%20893M429%20253C448%20309%20455%20359%20464%20422M294%20307C305%20330%20323%20367%20341%20387M461%20270C446%20288%20436%20323%20414%20348M352%20317C385%20323%20420%20331%20452%20334M756%20670C791%20668%20833%20674%20873%20684M688%20592C721%20637%20767%20661%20802%20701M51%209C92%2012%20124%2012%20158%2019M496%20406C483%20422%20458%20441%20451%20458M378%20674C412%20710%20447%20731%20484%20771M364%2089C380%20100%20394%20111%20410%20122M108%20159C127%20182%20151%20198%20181%20223M38%2086C4%20107%20-27%20121%20-64%20125M91%20430C46%20459%200%20507%20-34%20536M229%20332C214%20349%20197%20355%20173%20367M477%20156C458%20200%20428%20239%20396%20274M189%20699C225%20708%20267%20710%20312%20705M166%20294C149%20336%20140%20378%20125%20420M215%20731C201%20748%20198%20787%20177%20806M285%20567C263%20601%20237%20620%20200%20646M2%20285C35%20339%2053%20386%2078%20442M507%20213C492%20225%20476%20243%20462%20249M584%202C602%2030%20625%2053%20643%2084M220%20571C207%20598%20210%20623%20202%20638M510%20409C511%20456%20521%20510%20521%20572M492%20148C502%20172%20513%20202%20515%20225M544%20679C568%20703%20589%20718%20605%20729M279%20485C235%20485%20201%20487%20150%20502M702%20225C663%20246%20633%20262%20596%20290M90%20755C118%20782%20145%20792%20187%20813M29%20595C45%20638%2067%20685%2098%20745M227%20506C197%20530%20150%20548%20119%20556M508%20544C490%20592%20452%20631%20431%20673M87%20588C105%20615%20131%20650%20149%20686M465%20158C456%20173%20433%20193%20413%20200M71%20288C64%20314%2066%20341%2076%20376M140%20433C135%20475%20129%20517%20111%20561M758%20592C763%20620%20752%20640%20753%20657M236%20598C199%20634%20180%20666%20144%20705M258%20413C284%20439%20317%20473%20335%20500M670%20402C672%20446%20671%20477%20679%20529M307%20246C289%20279%20279%20296%20256%20326M755%20397C773%20447%20797%20498%20808%20542M54%20560C60%20584%2067%20623%2069%20646M694%2017C740%2029%20786%2040%20831%2052M272%20672C246%20687%20222%20701%20203%20710M392%20598C402%20654%20400%20692%20406%20741M487%20366C463%20406%20461%20428%20436%20469M278%20380C312%20424%20333%20472%20356%20510M163%20433C180%20475%20203%20519%20231%20551M635%20651C667%20694%20706%20722%20736%20765M569%20494C573%20542%20580%20588%20594%20624M199%20194C209%20206%20211%20224%20223%20244M497%20614C454%20649%20424%20687%20392%20711M405%20618C391%20625%20375%20645%20350%20650M607%20328C548%20330%20496%20336%20451%20334M475%20222C425%20223%20355%20234%20303%20241M73%20538C55%20537%2027%20544%2010%20555M40%2042C63%2076%2079%20113%2096%20137M170%2031C133%2066%20106%20104%2084%20143M342%20187C343%20225%20323%20268%20321%20315M95%20311C107%20321%20131%20320%20157%20326M299%20658C273%20666%20245%20686%20222%20690M611%2059C577%2071%20534%2086%20501%2094M77%20753C67%20798%2039%20834%2032%20867M214%20706C170%20703%20130%20702%2081%20713M78%20353C114%20355%20148%20358%20186%20368M213%2022C202%2043%20189%2071%20188%20109M402%2013C353%2029%20308%2036%20271%2060M268%2079C251%2091%20236%20116%20219%20123M452%20516C448%20532%20433%20570%20435%20591M570%20609C562%20632%20538%20661%20522%20700M312%20399C293%20408%20268%20412%20247%20416M206%20265C166%20282%20113%20296%2075%20310M261%20147C292%20193%20313%20232%20350%20273M429%20531C408%20542%20371%20529%20352%20538M345%20484C374%20504%20398%20542%20439%20570M584%2027C614%2032%20636%2046%20671%2060M451%20580C464%20605%20484%20633%20491%20673M246%20138C283%20176%20307%20210%20341%20236M512%20260C547%20268%20560%20275%20595%20280M176%20656C157%20698%20125%20743%20109%20779M464%20718C443%20725%20436%20734%20410%20738M61%20235C82%20248%20102%20242%20126%20258M292%20719C296%20766%20292%20820%20298%20863M310%20441C290%20488%20246%20523%20224%20579M527%20341C522%20377%20521%20423%20526%20467M493%20530C475%20573%20459%20609%20438%20661M502%20318C497%20366%20480%20407%20464%20452M739%20337C734%20379%20740%20433%20733%20487M442%20664C439%20685%20425%20706%20422%20738M179%20458C218%20482%20239%20503%20278%20518M294%20569C310%20602%20331%20629%20354%20651M650%20210C639%20258%20614%20304%20606%20365M476%20498C460%20522%20437%20537%20404%20570M659%20384C627%20423%20597%20473%20563%20512M543%20675C546%20704%20547%20730%20553%20750M295%20575C264%20579%20246%20596%20224%20596M370%2099C407%20137%20438%20180%20467%20223M301%2093C317%20114%20318%20130%20323%20154M564%20616C527%20632%20489%20663%20452%20678M733%20628C711%20664%20702%20699%20679%20736M700%20507C728%20514%20743%20532%20766%20552M444%20445C462%20490%20465%20528%20489%20577M159%20441C142%20444%20131%20453%20107%20464M154%20212C143%20232%20117%20266%20104%20296M223%20351C196%20379%20175%20412%20163%20444M630%2044C613%2092%20589%20153%20567%20196M265%20580C220%20607%20198%20632%20155%20665M694%20155C728%20168%20750%20204%20770%20220M733%20688C756%20741%20784%20780%20797%20824M451%20676C468%20698%20491%20709%20514%20722M508%20433C489%20463%20469%20495%20453%20525M641%20271C654%20274%20665%20298%20688%20307M421%2087C416%20138%20425%20184%20419%20225'/%3E%3C/g%3E%3Cg%20stroke='%23F2E9D6'%20stroke-opacity='0.068'%20stroke-width='0.92'%3E%3Cpath%20d='M191%20608C160%20621%20147%20644%20120%20667M751%2078C711%20120%20667%20143%20628%20182M506%20668C515%20717%20531%20780%20553%20833M16%20439C52%20465%2083%20497%20125%20524M421%2099C382%20135%20350%20176%20302%20215M156%20676C128%20701%20107%20707%2093%20736M257%20227C301%20242%20337%20256%20391%20265M587%20158C630%20156%20673%20161%20722%20173M245%20567C247%20585%20234%20613%20237%20636M155%2026C156%2082%20149%20136%20159%20189M561%20510C530%20547%20497%20588%20453%20624M126%20445C158%20461%20211%20477%20246%20498M408%20266C425%20294%20416%20320%20434%20357M537%20426C513%20430%20480%20448%20444%20462M479%20196C519%20194%20548%20193%20583%20197M257%20617C233%20672%20195%20718%20176%20771M317%20134C334%20171%20353%20188%20370%20228M150%20403C192%20413%20227%20410%20278%20407M117%20538C94%20563%2097%20586%2073%20611M345%20609C316%20627%20292%20642%20271%20670M374%20284C347%20286%20325%20306%20312%20312M653%20495C638%20521%20599%20554%20584%20573M689%20332C715%20361%20748%20386%20766%20401M607%20646C634%20671%20653%20682%20675%20714M256%20481C219%20502%20186%20511%20141%20533M272%20744C251%20787%20231%20849%20207%20893M429%20253C448%20309%20455%20359%20464%20422M294%20307C305%20330%20323%20367%20341%20387M461%20270C446%20288%20436%20323%20414%20348M352%20317C385%20323%20420%20331%20452%20334M756%20670C791%20668%20833%20674%20873%20684M688%20592C721%20637%20767%20661%20802%20701M51%209C92%2012%20124%2012%20158%2019M496%20406C483%20422%20458%20441%20451%20458M378%20674C412%20710%20447%20731%20484%20771M364%2089C380%20100%20394%20111%20410%20122M108%20159C127%20182%20151%20198%20181%20223M38%2086C4%20107%20-27%20121%20-64%20125M91%20430C46%20459%200%20507%20-34%20536M229%20332C214%20349%20197%20355%20173%20367M477%20156C458%20200%20428%20239%20396%20274M189%20699C225%20708%20267%20710%20312%20705M166%20294C149%20336%20140%20378%20125%20420M215%20731C201%20748%20198%20787%20177%20806M285%20567C263%20601%20237%20620%20200%20646M2%20285C35%20339%2053%20386%2078%20442M507%20213C492%20225%20476%20243%20462%20249M584%202C602%2030%20625%2053%20643%2084M220%20571C207%20598%20210%20623%20202%20638M510%20409C511%20456%20521%20510%20521%20572M492%20148C502%20172%20513%20202%20515%20225M544%20679C568%20703%20589%20718%20605%20729M279%20485C235%20485%20201%20487%20150%20502M702%20225C663%20246%20633%20262%20596%20290M90%20755C118%20782%20145%20792%20187%20813M29%20595C45%20638%2067%20685%2098%20745M227%20506C197%20530%20150%20548%20119%20556M508%20544C490%20592%20452%20631%20431%20673M87%20588C105%20615%20131%20650%20149%20686M465%20158C456%20173%20433%20193%20413%20200M71%20288C64%20314%2066%20341%2076%20376M140%20433C135%20475%20129%20517%20111%20561M758%20592C763%20620%20752%20640%20753%20657M236%20598C199%20634%20180%20666%20144%20705M258%20413C284%20439%20317%20473%20335%20500M670%20402C672%20446%20671%20477%20679%20529M307%20246C289%20279%20279%20296%20256%20326M755%20397C773%20447%20797%20498%20808%20542M54%20560C60%20584%2067%20623%2069%20646M694%2017C740%2029%20786%2040%20831%2052M272%20672C246%20687%20222%20701%20203%20710M392%20598C402%20654%20400%20692%20406%20741M487%20366C463%20406%20461%20428%20436%20469M278%20380C312%20424%20333%20472%20356%20510M163%20433C180%20475%20203%20519%20231%20551M635%20651C667%20694%20706%20722%20736%20765M569%20494C573%20542%20580%20588%20594%20624M199%20194C209%20206%20211%20224%20223%20244M497%20614C454%20649%20424%20687%20392%20711M405%20618C391%20625%20375%20645%20350%20650M607%20328C548%20330%20496%20336%20451%20334M475%20222C425%20223%20355%20234%20303%20241M73%20538C55%20537%2027%20544%2010%20555M40%2042C63%2076%2079%20113%2096%20137M170%2031C133%2066%20106%20104%2084%20143M342%20187C343%20225%20323%20268%20321%20315M95%20311C107%20321%20131%20320%20157%20326M299%20658C273%20666%20245%20686%20222%20690M611%2059C577%2071%20534%2086%20501%2094M77%20753C67%20798%2039%20834%2032%20867M214%20706C170%20703%20130%20702%2081%20713M78%20353C114%20355%20148%20358%20186%20368M213%2022C202%2043%20189%2071%20188%20109M402%2013C353%2029%20308%2036%20271%2060M268%2079C251%2091%20236%20116%20219%20123M452%20516C448%20532%20433%20570%20435%20591M570%20609C562%20632%20538%20661%20522%20700M312%20399C293%20408%20268%20412%20247%20416M206%20265C166%20282%20113%20296%2075%20310M261%20147C292%20193%20313%20232%20350%20273M429%20531C408%20542%20371%20529%20352%20538M345%20484C374%20504%20398%20542%20439%20570M584%2027C614%2032%20636%2046%20671%2060M451%20580C464%20605%20484%20633%20491%20673M246%20138C283%20176%20307%20210%20341%20236M512%20260C547%20268%20560%20275%20595%20280M176%20656C157%20698%20125%20743%20109%20779M464%20718C443%20725%20436%20734%20410%20738M61%20235C82%20248%20102%20242%20126%20258M292%20719C296%20766%20292%20820%20298%20863M310%20441C290%20488%20246%20523%20224%20579M527%20341C522%20377%20521%20423%20526%20467M493%20530C475%20573%20459%20609%20438%20661M502%20318C497%20366%20480%20407%20464%20452M739%20337C734%20379%20740%20433%20733%20487M442%20664C439%20685%20425%20706%20422%20738M179%20458C218%20482%20239%20503%20278%20518M294%20569C310%20602%20331%20629%20354%20651M650%20210C639%20258%20614%20304%20606%20365M476%20498C460%20522%20437%20537%20404%20570M659%20384C627%20423%20597%20473%20563%20512M543%20675C546%20704%20547%20730%20553%20750M295%20575C264%20579%20246%20596%20224%20596M370%2099C407%20137%20438%20180%20467%20223M301%2093C317%20114%20318%20130%20323%20154M564%20616C527%20632%20489%20663%20452%20678M733%20628C711%20664%20702%20699%20679%20736M700%20507C728%20514%20743%20532%20766%20552M444%20445C462%20490%20465%20528%20489%20577M159%20441C142%20444%20131%20453%20107%20464M154%20212C143%20232%20117%20266%20104%20296M223%20351C196%20379%20175%20412%20163%20444M630%2044C613%2092%20589%20153%20567%20196M265%20580C220%20607%20198%20632%20155%20665M694%20155C728%20168%20750%20204%20770%20220M733%20688C756%20741%20784%20780%20797%20824M451%20676C468%20698%20491%20709%20514%20722M508%20433C489%20463%20469%20495%20453%20525M641%20271C654%20274%20665%20298%20688%20307M421%2087C416%20138%20425%20184%20419%20225'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E"));
    --tex-form:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='1024'%20height='1024'%20viewBox='0%200%201024%201024'%20preserveAspectRatio='none'%3E%3Cfilter%20id='f0'%20x='0'%20y='0'%20width='100%25'%20height='100%25'%20color-interpolation-filters='sRGB'%3E%3CfeTurbulence%20type='fractalNoise'%20baseFrequency='0.004'%20numOctaves='3'%20seed='19'%20stitchTiles='stitch'/%3E%3CfeColorMatrix%20values='0%200%200%200%200.97%200%200%200%200%200.94%200%200%200%200%200.86%200.026399999999999996%200.0176%200%200%20-0.01364'/%3E%3C/filter%3E%3Crect%20width='1024'%20height='1024'%20filter='url(%23f0)'/%3E%3Cfilter%20id='f1'%20x='0'%20y='0'%20width='100%25'%20height='100%25'%20color-interpolation-filters='sRGB'%3E%3CfeTurbulence%20type='fractalNoise'%20baseFrequency='0.004'%20numOctaves='3'%20seed='56'%20stitchTiles='stitch'/%3E%3CfeColorMatrix%20values='0%200%200%200%200.06%200%200%200%200%200.06%200%200%200%200%200.05%200.138%200.09200000000000001%200%200%20-0.0713'/%3E%3C/filter%3E%3Crect%20width='1024'%20height='1024'%20filter='url(%23f1)'/%3E%3C/svg%3E");--tex-form-size:1024px 1024px;
  --tex-pn-fibre:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='760'%20height='760'%20viewBox='0%200%20760%20760'%20preserveAspectRatio='none'%3E%3Cg%20fill='none'%20stroke-linecap='round'%3E%3Cg%20stroke='%23000000'%20stroke-opacity='0.1'%20stroke-width='1.08'%20transform='translate(0.95%201.25)'%3E%3Cpath%20d='M336%20313C294%20314%20260%20322%20231%20315M536%20564C568%20586%20590%20588%20619%20607M118%20264C162%20291%20199%20320%20243%20350M454%2056C429%2064%20391%2060%20372%2062M523%20396C530%20429%20522%20463%20530%20485M85%20536C66%20554%2051%20585%2035%20605M36%20382C46%20393%2064%20429%2071%20441M473%20399C517%20431%20549%20455%20597%20477M259%20468C241%20514%20237%20555%20222%20605M630%20392C578%20399%20545%20408%20496%20427M536%20697C581%20710%20619%20730%20666%20753M130%20400C107%20423%2099%20438%2077%20462M48%20675C36%20710%209%20740%20-8%20770M77%20325C107%20332%20152%20346%20189%20350M755%20532C796%20556%20837%20585%20889%20601M34%20441C81%20457%20123%20493%20159%20508M619%20311C591%20342%20562%20374%20528%20413M2%20650C-35%20685%20-76%20712%20-118%20740M702%2092C695%20116%20695%20157%20693%20190M671%20344C711%20352%20772%20385%20815%20394M309%20141C337%20135%20379%20144%20421%20147M748%20504C797%20533%20850%20564%20893%20592M403%20125C368%20168%20342%20223%20316%20269M544%20735C566%20750%20588%20778%20622%20800M471%20272C458%20307%20447%20346%20425%20380M140%20440C146%20492%20144%20529%20142%20577M577%20192C573%20217%20560%20219%20555%20245M740%20694C720%20726%20683%20751%20658%20770M546%20472C504%20503%20479%20541%20442%20577M609%20206C613%20232%20627%20276%20631%20310M350%20344C366%20363%20379%20395%20382%20425M629%20678C666%20704%20720%20714%20760%20740M601%20366C636%20391%20652%20406%20691%20436M254%20705C232%20745%20205%20796%20193%20844M575%20653C530%20689%20484%20718%20443%20754M396%20529C343%20546%20282%20565%20232%20576M325%20637C302%20666%20271%20713%20239%20748M37%20416C-8%20440%20-63%20465%20-103%20490M526%20667C527%20697%20528%20730%20528%20771M50%20743C88%20743%20124%20739%20163%20747M735%20608C763%20622%20799%20642%20822%20654M137%20486C168%20482%20177%20503%20209%20500M52%20458C91%20465%20137%20464%20193%20474M543%20428C580%20429%20616%20438%20652%20444M615%20547C557%20570%20507%20600%20457%20615M598%20463C567%20488%20529%20527%20489%20562M276%20507C276%20528%20301%20547%20303%20567M307%20360C286%20411%20248%20454%20222%20510M517%20465C475%20491%20446%20529%20404%20565M738%2096C744%20114%20742%20130%20748%20154M241%20599C229%20646%20234%20677%20228%20728M648%20576C652%20615%20638%20667%20640%20720M262%20553C272%20604%20307%20644%20316%20684M716%20547C711%20584%20711%20606%20700%20643M704%20450C716%20473%20716%20515%20720%20542M563%20357C603%20383%20621%20413%20658%20432M432%20255C481%20258%20534%20281%20581%20283M114%2090C77%2091%2049%20101%2026%20101M660%20399C649%20424%20621%20452%20601%20473M326%20402C292%20413%20243%20415%20210%20413M359%20163C404%20182%20449%20212%20489%20245M561%20456C522%20476%20461%20490%20422%20511M537%20530C498%20556%20460%20564%20413%20586M166%20453C147%20495%20145%20541%20123%20596M535%20577C551%20584%20582%20602%20595%20602M245%20732C261%20773%20289%20810%20310%20852M727%2062C736%20100%20729%20134%20734%20178M490%20738C491%20761%20510%20802%20519%20824M120%20571C151%20609%20189%20656%20228%20692M273%20701C290%20752%20308%20792%20316%20839M27%2053C35%2076%2044%20121%2058%20145M68%20519C86%20571%2099%20625%20120%20678M249%2075C268%2085%20274%20112%20299%20118M732%20103C756%20123%20769%20157%20793%20183M732%20419C693%20451%20666%20490%20628%20519M55%20633C7%20643%20-44%20641%20-88%20650M34%20235C69%20283%20104%20318%20147%20368M349%20350C338%20374%20325%20394%20308%20411M723%20401C744%20435%20790%20453%20815%20475M431%20497C469%20530%20489%20549%20529%20579M471%2030C476%2072%20495%2098%20495%20144M176%20255C231%20260%20265%20269%20319%20288M394%20203C421%20238%20453%20288%20484%20331M81%20387C92%20432%20115%20492%20122%20542M419%2099C448%20130%20481%20157%20505%20183M690%20558C734%20594%20755%20615%20801%20650M425%20642C388%20661%20369%20695%20330%20723M509%20720C484%20730%20456%20717%20425%20729M18%20708C77%20720%20123%20726%20172%20744M591%20572C569%20614%20548%20654%20533%20699M297%20215C300%20234%20280%20261%20285%20270M443%2041C406%2051%20383%2056%20351%2068M399%20474C360%20490%20320%20512%20288%20527M223%20624C230%20638%20234%20664%20237%20687M282%20652C291%20700%20285%20738%20298%20771M19%20109C39%20129%2064%20140%2080%20163M690%20664C744%20692%20779%20733%20827%20763M598%20737C621%20766%20638%20791%20671%20811M220%20526C206%20549%20214%20568%20204%20586M486%20658C519%20670%20562%20674%20600%20686M173%20210C153%20229%20135%20262%20124%20275M502%20243C486%20259%20459%20257%20430%20269M327%20753C342%20753%20358%20771%20381%20779M139%20198C171%20235%20205%20277%20231%20323M204%20122C235%20152%20264%20177%20291%20214M141%2043C163%2074%20164%20126%20183%20159M527%20449C539%20506%20565%20546%20575%20597M365%20204C401%20220%20444%20240%20472%20250M488%20739C537%20764%20604%20776%20652%20791M576%20629C557%20669%20547%20718%20536%20761M636%20353C636%20395%20640%20427%20629%20469M460%20717C477%20747%20493%20775%20522%20792M183%20326C138%20357%2084%20382%2039%20412M42%20435C33%20476%2029%20526%2016%20571M206%20729C163%20744%20134%20752%2093%20762M232%2064C203%20109%20162%20139%20125%20183M598%2091C552%20110%20492%20122%20433%20131M97%20754C142%20785%20183%20799%20226%20835M55%20576C69%20611%2093%20657%20112%20701M603%20282C641%20298%20675%20307%20699%20308M248%20391C218%20392%20184%20409%20143%20418M454%20544C479%20559%20487%20592%20516%20618M66%20387C27%20381%201%20390%20-45%20390M705%20703C712%20732%20703%20750%20704%20784M52%201C5%2017%20-42%2027%20-89%2049M295%20580C343%20605%20405%20606%20462%20631M417%2089C429%20102%20454%20135%20469%20157M39%20759C52%20796%2061%20820%2077%20863M24%20170C9%20190%20-6%20224%20-13%20250M0%20342C20%20355%2041%20376%2054%20396M171%20223C164%20264%20146%20298%20129%20328M1%20529C16%20560%2023%20607%2027%20640M341%20530C324%20551%20300%20561%20277%20571M403%20201C443%20198%20491%20215%20532%20214M197%2052C199%2091%20202%20152%20211%20192M571%20467C591%20482%20621%20516%20637%20537M255%20223C227%20247%20204%20273%20167%20296M324%20303C290%20306%20258%20318%20228%20313M66%2068C12%2085%20-31%2082%20-87%2097M600%20682C589%20731%20578%20761%20574%20810'/%3E%3C/g%3E%3Cg%20stroke='%23F2E9D6'%20stroke-opacity='0.048'%20stroke-width='0.92'%3E%3Cpath%20d='M336%20313C294%20314%20260%20322%20231%20315M536%20564C568%20586%20590%20588%20619%20607M118%20264C162%20291%20199%20320%20243%20350M454%2056C429%2064%20391%2060%20372%2062M523%20396C530%20429%20522%20463%20530%20485M85%20536C66%20554%2051%20585%2035%20605M36%20382C46%20393%2064%20429%2071%20441M473%20399C517%20431%20549%20455%20597%20477M259%20468C241%20514%20237%20555%20222%20605M630%20392C578%20399%20545%20408%20496%20427M536%20697C581%20710%20619%20730%20666%20753M130%20400C107%20423%2099%20438%2077%20462M48%20675C36%20710%209%20740%20-8%20770M77%20325C107%20332%20152%20346%20189%20350M755%20532C796%20556%20837%20585%20889%20601M34%20441C81%20457%20123%20493%20159%20508M619%20311C591%20342%20562%20374%20528%20413M2%20650C-35%20685%20-76%20712%20-118%20740M702%2092C695%20116%20695%20157%20693%20190M671%20344C711%20352%20772%20385%20815%20394M309%20141C337%20135%20379%20144%20421%20147M748%20504C797%20533%20850%20564%20893%20592M403%20125C368%20168%20342%20223%20316%20269M544%20735C566%20750%20588%20778%20622%20800M471%20272C458%20307%20447%20346%20425%20380M140%20440C146%20492%20144%20529%20142%20577M577%20192C573%20217%20560%20219%20555%20245M740%20694C720%20726%20683%20751%20658%20770M546%20472C504%20503%20479%20541%20442%20577M609%20206C613%20232%20627%20276%20631%20310M350%20344C366%20363%20379%20395%20382%20425M629%20678C666%20704%20720%20714%20760%20740M601%20366C636%20391%20652%20406%20691%20436M254%20705C232%20745%20205%20796%20193%20844M575%20653C530%20689%20484%20718%20443%20754M396%20529C343%20546%20282%20565%20232%20576M325%20637C302%20666%20271%20713%20239%20748M37%20416C-8%20440%20-63%20465%20-103%20490M526%20667C527%20697%20528%20730%20528%20771M50%20743C88%20743%20124%20739%20163%20747M735%20608C763%20622%20799%20642%20822%20654M137%20486C168%20482%20177%20503%20209%20500M52%20458C91%20465%20137%20464%20193%20474M543%20428C580%20429%20616%20438%20652%20444M615%20547C557%20570%20507%20600%20457%20615M598%20463C567%20488%20529%20527%20489%20562M276%20507C276%20528%20301%20547%20303%20567M307%20360C286%20411%20248%20454%20222%20510M517%20465C475%20491%20446%20529%20404%20565M738%2096C744%20114%20742%20130%20748%20154M241%20599C229%20646%20234%20677%20228%20728M648%20576C652%20615%20638%20667%20640%20720M262%20553C272%20604%20307%20644%20316%20684M716%20547C711%20584%20711%20606%20700%20643M704%20450C716%20473%20716%20515%20720%20542M563%20357C603%20383%20621%20413%20658%20432M432%20255C481%20258%20534%20281%20581%20283M114%2090C77%2091%2049%20101%2026%20101M660%20399C649%20424%20621%20452%20601%20473M326%20402C292%20413%20243%20415%20210%20413M359%20163C404%20182%20449%20212%20489%20245M561%20456C522%20476%20461%20490%20422%20511M537%20530C498%20556%20460%20564%20413%20586M166%20453C147%20495%20145%20541%20123%20596M535%20577C551%20584%20582%20602%20595%20602M245%20732C261%20773%20289%20810%20310%20852M727%2062C736%20100%20729%20134%20734%20178M490%20738C491%20761%20510%20802%20519%20824M120%20571C151%20609%20189%20656%20228%20692M273%20701C290%20752%20308%20792%20316%20839M27%2053C35%2076%2044%20121%2058%20145M68%20519C86%20571%2099%20625%20120%20678M249%2075C268%2085%20274%20112%20299%20118M732%20103C756%20123%20769%20157%20793%20183M732%20419C693%20451%20666%20490%20628%20519M55%20633C7%20643%20-44%20641%20-88%20650M34%20235C69%20283%20104%20318%20147%20368M349%20350C338%20374%20325%20394%20308%20411M723%20401C744%20435%20790%20453%20815%20475M431%20497C469%20530%20489%20549%20529%20579M471%2030C476%2072%20495%2098%20495%20144M176%20255C231%20260%20265%20269%20319%20288M394%20203C421%20238%20453%20288%20484%20331M81%20387C92%20432%20115%20492%20122%20542M419%2099C448%20130%20481%20157%20505%20183M690%20558C734%20594%20755%20615%20801%20650M425%20642C388%20661%20369%20695%20330%20723M509%20720C484%20730%20456%20717%20425%20729M18%20708C77%20720%20123%20726%20172%20744M591%20572C569%20614%20548%20654%20533%20699M297%20215C300%20234%20280%20261%20285%20270M443%2041C406%2051%20383%2056%20351%2068M399%20474C360%20490%20320%20512%20288%20527M223%20624C230%20638%20234%20664%20237%20687M282%20652C291%20700%20285%20738%20298%20771M19%20109C39%20129%2064%20140%2080%20163M690%20664C744%20692%20779%20733%20827%20763M598%20737C621%20766%20638%20791%20671%20811M220%20526C206%20549%20214%20568%20204%20586M486%20658C519%20670%20562%20674%20600%20686M173%20210C153%20229%20135%20262%20124%20275M502%20243C486%20259%20459%20257%20430%20269M327%20753C342%20753%20358%20771%20381%20779M139%20198C171%20235%20205%20277%20231%20323M204%20122C235%20152%20264%20177%20291%20214M141%2043C163%2074%20164%20126%20183%20159M527%20449C539%20506%20565%20546%20575%20597M365%20204C401%20220%20444%20240%20472%20250M488%20739C537%20764%20604%20776%20652%20791M576%20629C557%20669%20547%20718%20536%20761M636%20353C636%20395%20640%20427%20629%20469M460%20717C477%20747%20493%20775%20522%20792M183%20326C138%20357%2084%20382%2039%20412M42%20435C33%20476%2029%20526%2016%20571M206%20729C163%20744%20134%20752%2093%20762M232%2064C203%20109%20162%20139%20125%20183M598%2091C552%20110%20492%20122%20433%20131M97%20754C142%20785%20183%20799%20226%20835M55%20576C69%20611%2093%20657%20112%20701M603%20282C641%20298%20675%20307%20699%20308M248%20391C218%20392%20184%20409%20143%20418M454%20544C479%20559%20487%20592%20516%20618M66%20387C27%20381%201%20390%20-45%20390M705%20703C712%20732%20703%20750%20704%20784M52%201C5%2017%20-42%2027%20-89%2049M295%20580C343%20605%20405%20606%20462%20631M417%2089C429%20102%20454%20135%20469%20157M39%20759C52%20796%2061%20820%2077%20863M24%20170C9%20190%20-6%20224%20-13%20250M0%20342C20%20355%2041%20376%2054%20396M171%20223C164%20264%20146%20298%20129%20328M1%20529C16%20560%2023%20607%2027%20640M341%20530C324%20551%20300%20561%20277%20571M403%20201C443%20198%20491%20215%20532%20214M197%2052C199%2091%20202%20152%20211%20192M571%20467C591%20482%20621%20516%20637%20537M255%20223C227%20247%20204%20273%20167%20296M324%20303C290%20306%20258%20318%20228%20313M66%2068C12%2085%20-31%2082%20-87%2097M600%20682C589%20731%20578%20761%20574%20810'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");--tex-pn-size:var(--tex-size);
    --tex-grain:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='128'%20height='128'%20viewBox='0%200%20128%20128'%20preserveAspectRatio='none'%3E%3Cfilter%20id='g'%20x='0'%20y='0'%20width='100%25'%20height='100%25'%20color-interpolation-filters='sRGB'%3E%3CfeTurbulence%20type='fractalNoise'%20baseFrequency='.85'%20numOctaves='1'%20seed='5'%20stitchTiles='stitch'/%3E%3CfeColorMatrix%20values='1%200%200%200%200%201%200%200%200%200%201%200%200%200%200%200%200%200%200%200.03'/%3E%3C/filter%3E%3Crect%20width='128'%20height='128'%20filter='url(%23g)'/%3E%3C/svg%3E"); --tex-grain-pn:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='128'%20height='128'%20viewBox='0%200%20128%20128'%20preserveAspectRatio='none'%3E%3Cfilter%20id='g'%20x='0'%20y='0'%20width='100%25'%20height='100%25'%20color-interpolation-filters='sRGB'%3E%3CfeTurbulence%20type='fractalNoise'%20baseFrequency='.85'%20numOctaves='1'%20seed='5'%20stitchTiles='stitch'/%3E%3CfeColorMatrix%20values='1%200%200%200%200%201%200%200%200%200%201%200%200%200%200%200%200%200%200%200.020'/%3E%3C/filter%3E%3Crect%20width='128'%20height='128'%20filter='url(%23g)'/%3E%3C/svg%3E");
    --tex-mug:rgba(132,148,124,.030);
    --tex-lap:rgba(242,233,214,.032);
    --tex-zebra:rgba(224,220,200,.022);
    --table:#141410;
  }
}

/* ── 생지 · the raw ground ─────────────────────────────────────────────────
   The fibre layer is replaced at load by a per-view random mat (see the boot
   script); this is the sheet the page has before the script runs, and the one
   it keeps if the visitor has asked for reduced data. */
body{position:relative;
  background-color:var(--bg);
  background-image:var(--tex-form),var(--tex-fibre),var(--tex-grain),
                   linear-gradient(var(--tex-mug),var(--tex-mug));
  background-size:var(--tex-form-size),var(--tex-size),128px 128px,auto;
  background-attachment:scroll}

/* ── 도침 · the burnished panels ─────────────────────────────────────────── */
.foot,.ledger,.sebo-head,.work .r{
  background-color:var(--pn);
  background-image:var(--tex-pn-fibre),var(--tex-grain-pn);
  background-size:var(--tex-pn-size),128px 128px}

/* ── 배접 · the sheet's own torn edge, at the window ───────────────────────
   One fixed overlay, four mask layers, painting the table colour over the
   outer 7px of the sheet. It never moves and never repaints, it takes no
   pointer events, and it changes no layout — so the flight between samhan.ai
   and a work passes underneath it untouched. */
.hanji-edge{position:fixed;inset:0;z-index:60;pointer-events:none;background:var(--table);
  -webkit-mask-image:var(--dk-t),var(--dk-b),var(--dk-l),var(--dk-r);
  -webkit-mask-repeat:repeat-x,repeat-x,repeat-y,repeat-y;
  -webkit-mask-position:0 0,0 100%,0 0,100% 0;
  -webkit-mask-size:1200px 4px,1200px 7px,7px 900px,7px 900px;
  mask-image:var(--dk-t),var(--dk-b),var(--dk-l),var(--dk-r);
  mask-repeat:repeat-x,repeat-x,repeat-y,repeat-y;
  mask-position:0 0,0 100%,0 0,100% 0;
  mask-size:1200px 4px,1200px 7px,7px 900px,7px 900px;
  -webkit-mask-composite:source-over;mask-composite:add}

/* ── 겹침 · the lap, where the next sheet begins ───────────────────────────
   A trimmed edge, so a straight one — but the script snaps it to a division
   the page already has, so it never crosses a line of text. */
.hanji-lap{position:absolute;left:0;right:0;bottom:0;top:62%;z-index:0;pointer-events:none;
  background:var(--tex-lap);
  border-top:1px solid color-mix(in srgb,var(--rule) 55%,transparent)}

/* ── 발끝 · the deckle rule ────────────────────────────────────────────────
   A 3px band of --dr masked by a hairline that wanders ±1px and returns to
   centre at both ends, so it tiles without a joint. The old border stays, at
   its old width, with no colour: layout is untouched. */
.mast,.grp,.grp-h,.entry,.sect,.sub,.srcs,.src,.cite,.foot,
.sebo-head,.sebo-top,.tools,.work,.work .l{position:relative}
.ledger,.mast,.grp,.entry,.sect,.src,.foot,.sebo-head,.sebo-top,.work,.work .l{
  border-bottom-color:transparent}
.grp-h{border-bottom-color:transparent}
.sub,.srcs,.tools{border-top-color:transparent}
.cite{border-left-color:transparent}
.mast::after,.grp::after,.entry::after,.sect::after,.src::after,
.grp-h::after,.sebo-head::after,.sebo-top::after,.work::after{
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;pointer-events:none;
  background:var(--dr,var(--rule));z-index:1;
  -webkit-mask:var(--drh) repeat-x 0 50%/1000px 3px;mask:var(--drh) repeat-x 0 50%/1000px 3px}
.sub::before,.srcs::before,.tools::before{
  content:"";position:absolute;left:0;right:0;top:-1px;height:3px;pointer-events:none;
  background:var(--dr,var(--rule));z-index:1;
  -webkit-mask:var(--drh) repeat-x 0 50%/1000px 3px;mask:var(--drh) repeat-x 0 50%/1000px 3px}
.grp-h,.srcs{--dr:var(--ink)}
.mast::after{background:var(--rule);height:6px;bottom:0;
  -webkit-mask:var(--mast-rule) repeat-x 0 0/1200px 6px;
  mask:var(--mast-rule) repeat-x 0 0/1200px 6px}
.idx>.entry:last-child::after,.sect:last-child::after{display:none}
.cite::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;pointer-events:none;
  background:var(--acc);
  -webkit-mask:var(--drv-s) repeat-y 50% 0/3px 240px;mask:var(--drv-s) repeat-y 50% 0/3px 240px}
.cite::after{content:"";position:absolute;left:2px;top:0;bottom:0;width:3px;pointer-events:none;
  background:color-mix(in srgb,var(--acc) 55%,var(--ink));opacity:.5;
  -webkit-mask:var(--drv-s) repeat-y 50% 0/3px 240px;mask:var(--drv-s) repeat-y 50% 0/3px 240px}
.stage{box-shadow:0 0 0 .5px color-mix(in srgb,var(--acc) 55%,var(--ink))}
/* the timeline's axis is a chain line, not a ruler laid on the sheet */
.axis{height:3px;background:var(--hair);
  -webkit-mask:var(--drh) repeat-x 0 50%/1000px 3px;mask:var(--drh) repeat-x 0 50%/1000px 3px}
/* R13 · the footer is a sheet laid on the page, torn along the edge that
   faces the text */
.foot::before{content:"";position:absolute;left:0;right:0;top:-7px;height:8px;
  pointer-events:none;background:var(--pn);
  -webkit-mask:var(--edge-t) repeat-x 0 0/1200px 8px;mask:var(--edge-t) repeat-x 0 0/1200px 8px}
.foot{border-top-color:transparent}
.foot::after{display:none}
/* R14 · the sticky bar sits open on the page — but open is not the same as
   cut. It keeps no border and no flap; instead its own sheet ends two pixels
   below the box on a torn edge, and a hairline of the rule wanders along that
   edge at two pixels rather than three. The bar reads as a strip of paper laid
   over the page, which is what it is, and nothing about its height, its
   stickiness or the crossfade between its two faces changes. */
.ledger::before{content:"";position:absolute;left:0;right:0;bottom:-2px;height:8px;
  pointer-events:none;z-index:0;
  background-color:var(--pn);
  background-image:var(--tex-pn-fibre),var(--tex-grain-pn);
  background-size:var(--tex-pn-size),128px 128px;
  -webkit-mask:var(--edge-b) repeat-x 0 0/1200px 8px;mask:var(--edge-b) repeat-x 0 0/1200px 8px}
.ledger::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;
  pointer-events:none;z-index:1;
  background:color-mix(in srgb,var(--rule) 72%,transparent);
  -webkit-mask:var(--drh) repeat-x 0 50%/1000px 2px;mask:var(--drh) repeat-x 0 50%/1000px 2px}

/* ── 색한지 · a dyed sheet per work, carried across the seam ───────────────
   Below recognition as colour, above recognition as sameness. */
.dy-jok  {background-image:linear-gradient(rgba(46,76,109,.028),rgba(46,76,109,.028))}
.dy-gal  {background-image:linear-gradient(rgba(138,90,59,.026),rgba(138,90,59,.026))}
.dy-chi  {background-image:linear-gradient(rgba(196,160,70,.026),rgba(196,160,70,.026))}
.dy-meok {background-image:linear-gradient(rgba(70,70,66,.024),rgba(70,70,66,.024))}
html[data-theme="dark"] .dy-jok  {background-image:linear-gradient(rgba(127,166,201,.030),rgba(127,166,201,.030))}
html[data-theme="dark"] .dy-gal  {background-image:linear-gradient(rgba(192,138,94,.030),rgba(192,138,94,.030))}
html[data-theme="dark"] .dy-chi  {background-image:linear-gradient(rgba(214,186,110,.028),rgba(214,186,110,.028))}
html[data-theme="dark"] .dy-meok {background-image:linear-gradient(rgba(168,168,160,.026),rgba(168,168,160,.026))}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]) .dy-jok  {background-image:linear-gradient(rgba(127,166,201,.030),rgba(127,166,201,.030))}
  :root:not([data-theme="light"]) .dy-gal  {background-image:linear-gradient(rgba(192,138,94,.030),rgba(192,138,94,.030))}
  :root:not([data-theme="light"]) .dy-chi  {background-image:linear-gradient(rgba(214,186,110,.028),rgba(214,186,110,.028))}
  :root:not([data-theme="light"]) .dy-meok {background-image:linear-gradient(rgba(168,168,160,.026),rgba(168,168,160,.026))}
}
/* ── zebra · alternate rows are one sheet-tone step, in the ground's own dye
   family, so a striped table reads as a mount of alternating sheets ─────── */
.idx>.entry:nth-of-type(even),.src:nth-of-type(even){
  background-image:linear-gradient(var(--tex-zebra),var(--tex-zebra))}
.idx>.entry.dy-jok:nth-of-type(even) {background-image:linear-gradient(var(--tex-zebra),var(--tex-zebra)),linear-gradient(rgba(46,76,109,.028),rgba(46,76,109,.028))}
.idx>.entry.dy-gal:nth-of-type(even) {background-image:linear-gradient(var(--tex-zebra),var(--tex-zebra)),linear-gradient(rgba(138,90,59,.026),rgba(138,90,59,.026))}
.idx>.entry.dy-chi:nth-of-type(even) {background-image:linear-gradient(var(--tex-zebra),var(--tex-zebra)),linear-gradient(rgba(196,160,70,.026),rgba(196,160,70,.026))}
.idx>.entry.dy-meok:nth-of-type(even){background-image:linear-gradient(var(--tex-zebra),var(--tex-zebra)),linear-gradient(rgba(70,70,66,.024),rgba(70,70,66,.024))}
/* a dyed sheet in the dark set is a lighter tint, so the striped mount has to
   restate it: the light combination above out-specifies the theme rule. */
html[data-theme="dark"] .idx>.entry.dy-jok:nth-of-type(even){background-image:linear-gradient(var(--tex-zebra),var(--tex-zebra)),linear-gradient(rgba(127,166,201,.030),rgba(127,166,201,.030))}
html[data-theme="dark"] .idx>.entry.dy-gal:nth-of-type(even){background-image:linear-gradient(var(--tex-zebra),var(--tex-zebra)),linear-gradient(rgba(192,138,94,.030),rgba(192,138,94,.030))}
html[data-theme="dark"] .idx>.entry.dy-chi:nth-of-type(even){background-image:linear-gradient(var(--tex-zebra),var(--tex-zebra)),linear-gradient(rgba(214,186,110,.028),rgba(214,186,110,.028))}
html[data-theme="dark"] .idx>.entry.dy-meok:nth-of-type(even){background-image:linear-gradient(var(--tex-zebra),var(--tex-zebra)),linear-gradient(rgba(168,168,160,.026),rgba(168,168,160,.026))}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]) .idx>.entry.dy-jok:nth-of-type(even){background-image:linear-gradient(var(--tex-zebra),var(--tex-zebra)),linear-gradient(rgba(127,166,201,.030),rgba(127,166,201,.030))}
  :root:not([data-theme="light"]) .idx>.entry.dy-gal:nth-of-type(even){background-image:linear-gradient(var(--tex-zebra),var(--tex-zebra)),linear-gradient(rgba(192,138,94,.030),rgba(192,138,94,.030))}
  :root:not([data-theme="light"]) .idx>.entry.dy-chi:nth-of-type(even){background-image:linear-gradient(var(--tex-zebra),var(--tex-zebra)),linear-gradient(rgba(214,186,110,.028),rgba(214,186,110,.028))}
  :root:not([data-theme="light"]) .idx>.entry.dy-meok:nth-of-type(even){background-image:linear-gradient(var(--tex-zebra),var(--tex-zebra)),linear-gradient(rgba(168,168,160,.026),rgba(168,168,160,.026))}
}

@media print{
  body{background-image:none}
  .hanji-edge,.hanji-lap,.foot::before,.ledger::before,.ledger::after{display:none}
}

/* the milestone label no longer needs a patch of ground behind it: on a
   textured sheet an opaque rectangle is exactly the thing this stylesheet is
   trying to stop drawing. The stem gives way instead. */
.ms .ms-b{background:none}
.ms .stem{opacity:.34}

/* During the flight the chosen entry is the one thing held at full opacity, so
   its dyed sheet would be left behind as a rectangle on an otherwise empty
   page. The sheet goes with the rest of the index; the title flies alone. */
.leaving .entry[data-open]{background-image:none}
