:root{--paper:#f6f0df;--desk:#e4ddcc;--ink:#34372f;--muted:#777764;--rule:#d4cbb5;--accent:#815846;--paper-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='p'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Cpath fill='%23000' opacity='.055' filter='url(%23p)' d='M0 0h120v120H0z'/%3E%3C/svg%3E")}html{scroll-padding-top:24px}body.paper-site{--bg:var(--paper);--maincolor:var(--accent);--darkMaincolor:var(--accent);--bordercl:var(--rule);--hovercolor:var(--ink);margin:0;padding:44px 24px;color:var(--ink);background:var(--paper-grain),var(--desk);line-height:1.8}body.paper-site.dark-active{--paper:#292b24;--desk:#1c1e19;--ink:#e7e0cb;--muted:#aaa58e;--rule:#494b3d;--accent:#d4af86}.site-sheet{position:relative;box-sizing:border-box;max-width:1040px;min-height:calc(100svh - 88px);margin:0 auto;padding:42px 68px 28px;background:var(--paper-grain),linear-gradient(100deg,rgba(181,147,83,.035),transparent 14%,rgba(255,255,255,9%) 60%,rgba(181,147,83,4%)),var(--paper);border:1px solid color-mix(in srgb,var(--rule) 70%,transparent);box-shadow:0 2px 3px rgba(63,54,33,6%),0 15px 45px -28px rgba(63,54,33,.35),4px 5px 0 -1px var(--paper),4px 5px 0 var(--rule);transition:opacity 550ms ease,transform 550ms ease}.site-sheet:focus{outline:none}.site-sheet header{align-items:baseline;gap:14px 24px;margin:0 0 34px;padding-bottom:24px;border-bottom:1px solid var(--ink);line-height:1.6}.site-sheet header .main{font:1.8rem/1.5 Georgia,songti sc,serif;letter-spacing:-.025em}.site-nav{display:flex;align-items:center;gap:14px;font-size:.78rem}.site-nav-links{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.site-nav-links a{border:0;padding-block:5px}.site-nav-links a[aria-current=page]{box-shadow:0 1px currentColor}.site-nav-links a:hover{background:0 0;color:var(--accent)}.site-nav #dark-mode-toggle{border:0;padding:4px;color:var(--muted);background:0 0}.site-sheet a{border-bottom-width:1px;text-underline-offset:4px}.site-sheet a:hover{background:var(--ink);color:var(--paper)}.site-sheet :is(h1,h2,h3,h4){color:var(--ink);line-height:1.4;letter-spacing:-.035em}.site-sheet h1{font-size:1.7rem}.site-sheet h2{font-size:1.35rem}.site-sheet h3{font-size:1.1rem}.site-sheet :is(h1,h2,h3,h4,h5,h6)::before{content:none}.site-sheet p{font-family:Georgia,songti sc,serif;font-size:1.05rem;line-height:1.85}.site-sheet :is(time,.meta,.pub-venue){color:var(--muted)}.site-sheet .meta,.site-sheet time{font-size:.8rem}.site-sheet ul,.site-sheet ol{padding-left:1.5em}.site-sheet li{margin-block:.45em}.site-sheet hr{border:0;border-top:1px solid var(--rule)}.site-sheet blockquote{border-left:2px solid var(--rule);color:var(--muted)}.site-sheet code{background:color-mix(in srgb,var(--ink) 6%,transparent);color:inherit}.site-sheet pre{border:1px solid var(--rule);background:#282c25;color:#ede9d7;border-radius:2px}.site-sheet pre code{background:0 0}.site-sheet img{border:1px solid var(--rule)}.site-sheet :is(.toc,.callout){background:color-mix(in srgb,var(--ink) 5%,var(--paper));color:var(--ink);border:1px solid var(--rule);border-radius:0}.paper-section{margin:34px 0}.paper-section-content{display:flow-root}.paper-section-content>:is(h1,h2):first-child{margin-top:0}.paper-section-content>:last-child{margin-bottom:0}.home-page .body>table:first-of-type{margin:8px 0 24px}.home-page .body>table:first-of-type tr{display:flex;align-items:center;gap:28px}.home-page .body>table:first-of-type td:first-child{flex:1;padding:0;font-size:.88rem;line-height:1.9}.home-page .body>table:first-of-type td:last-child{flex:0 0 168px;float:none!important;padding:0}.home-page .body>table:first-of-type img{box-sizing:border-box;border:8px solid #fffaf0;box-shadow:1px 3px 9px rgba(57,49,29,.18);transform:rotate(1.5deg)}.home-page .body>div[style*=HuiMoShouShu]{color:var(--accent);line-height:1.6}.home-page .body>div[style*=Dynalight]{color:var(--muted);line-height:1.5}.home-index{margin-top:38px}.home-index-nav{display:flex;align-items:center;overflow-x:auto;gap:4px;padding:0 0 9px;border-bottom:1px solid var(--rule);scrollbar-width:thin}.home-index-tab{flex-shrink:0;padding:8px 10px;border:0;border-radius:2px 2px 0 0;background:0 0;color:var(--muted);font:.88rem/1.4 roboto mono,monospace;cursor:pointer}.home-index-tab[aria-selected=true]{color:var(--paper);background:var(--ink)}.home-index-tab:hover{color:var(--accent)}.home-index-tab[aria-selected=true]:hover{color:var(--paper)}.home-index-panels{padding-top:24px}.home-index-panels .paper-section{margin:0}.home-index-panels .paper-section[hidden]{display:none}.home-index-panels .paper-section-content>h1:first-child,.home-index-panels .pub-heading-row>h1{position:absolute;width:1px;height:1px;margin:0;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.home-index-panels .paper-section-content>h1:first-child+*{margin-top:0}.home-index-panels .pub-heading-row{justify-content:flex-end;margin-top:0}.paper-site .pub-links a{border:1px solid var(--accent);border-radius:1px;color:var(--accent)}.paper-site .pub-links a:hover{background:var(--ink);color:var(--paper)}.paper-site .pub-dd-menu{background:var(--paper);border-color:var(--rule);border-radius:1px;box-shadow:3px 4px rgba(60,50,30,8%)}.paper-site .pub-heading-row{min-height:28px}.paper-site .pub-ctrl-group{gap:4px}.paper-site .pub-search-box{background:var(--paper);border-color:var(--rule);border-radius:1px}.paper-post{padding-block:28px;border-bottom:1px solid var(--rule)}.paper-post:first-child{padding-top:0}.paper-post h1.title{margin-top:0;font-size:1.5rem}.paper-post .description{margin-top:12px;font:1rem/1.8 Georgia,songti sc,serif;color:var(--muted)}.paper-site .controls-sidebar{margin-top:5px;padding-left:16px;border-left:1px solid var(--rule)}.paper-site .control-label{color:var(--muted)}.paper-site :is(.sort-btn,.tag-btn){box-sizing:border-box;padding:.3em .6em;border:1px solid var(--rule);border-radius:1px;color:var(--muted);background:0 0;font:.8rem/1.5 roboto mono,monospace;cursor:pointer}.paper-site :is(.sort-btn,.tag-btn)[aria-pressed=true]{color:var(--paper);background:var(--ink);border-color:var(--ink)}.paper-site :is(.sort-btn,.tag-btn):hover{border-color:var(--accent)}.paper-site :focus-visible{outline:2px solid var(--accent);outline-offset:4px}.paper-site footer{flex-wrap:wrap;gap:10px;margin-top:42px;padding:22px 0 0;border-top:1px solid var(--rule);font-size:.7rem;color:var(--muted)}.intro-replay{flex-basis:100%;width:fit-content;padding:0 0 8px;border:0;background:0 0;color:var(--muted);text-align:left;text-decoration:underline;text-underline-offset:4px;font:inherit;cursor:pointer}@media(max-width:760px){body.paper-site{padding:16px 12px}.site-sheet{padding:28px 26px 22px;min-height:calc(100svh - 32px)}.site-sheet header .main{font-size:1.5rem}.site-nav{gap:12px}.site-nav-links{gap:12px}.home-index-tab{font-size:.85rem}}@media(max-width:540px){body.paper-site{padding:0}.site-sheet{padding:24px 22px;border:0;box-shadow:none;min-height:100svh}.site-sheet header{margin-bottom:24px;padding-bottom:20px}.site-sheet header .main{font-size:1.4rem}.home-page .body>table:first-of-type tr{flex-direction:column-reverse;gap:24px;align-items:stretch}.home-page .body>table:first-of-type td:last-child{flex-basis:auto;text-align:center}.home-page .body>table:first-of-type img{width:145px}.paper-site .controls-sidebar{padding-left:0;border:0}.site-sheet footer{font-size:.65rem}.footer-info{margin-left:0!important}}@media(prefers-reduced-motion:reduce){.site-sheet{transition:none}}@media print{body.paper-site{padding:0;color:#222;background:#fff;--paper:#fff;--ink:#222;--rule:#ccc}.site-sheet{max-width:none;padding:0;border:0;box-shadow:none;background:#fff;opacity:1!important;transform:none!important}.home-index-nav,.intro-replay,#dark-mode-toggle{display:none}.home-index-panels .paper-section[hidden],.home-index-panels .paper-section{display:block!important;margin:24px 0}.home-index-panels .paper-section-content>h1:first-child,.home-index-panels .pub-heading-row>h1{position:static;width:auto;height:auto;overflow:visible;clip-path:none}}