@font-face{font-family:Manrope;src:url(/assets/Manrope-latin-rNOCJiQw.woff2) format("woff2");font-weight:400 700;font-style:normal;font-display:optional;unicode-range:U+0020-007E,U+00A0,U+2013-2014,U+2018-201F,U+2022,U+2026,U+20AC,U+2122,U+2212}@font-face{font-family:JetBrainsMono;src:url(/assets/JetBrainsMono-DozFE8E7.woff2) format("woff2");font-weight:400;font-style:normal;font-display:optional;unicode-range:U+0020-007E,U+00A0,U+2013-2014,U+2018-201F,U+2022,U+2026,U+20AC,U+2122,U+2212}:root{--grid-unit: 20px;--layout-unit: var(--grid-unit);--content-width: min(1240px, calc(100vw - 60px) );--content-offset: calc((100vw - var(--content-width)) / 2);--brand-color: #32f08c;--brand-hover: #0fdc78;--on-primary: #0a0b0d;--button-shadow-color: #0a0b0d;--background-color: #fff;--text-color: #1a1a1a;--primary-color: #32f08c;--secondary-color: #5b6066;--border-color: rgba(0, 0, 0, .18);--grid-color: rgba(0, 0, 0, .06);color-scheme:light}@supports (width: round(down,100vw,40px)){:root{--content-width: min(1240px, round(down, calc(100vw - 60px) , 40px));--content-offset: round(down, calc((100vw - var(--content-width)) / 2), 20px)}}@media (max-width: 760px){:root{--content-width: 100vw;--content-offset: 0px}}:root.dark{--button-shadow-color: #fff;--background-color: #0a0b0d;--text-color: #f5f9fe;--secondary-color: #a6aab5;--border-color: rgba(255, 255, 255, .18);--grid-color: rgba(255, 255, 255, .06);color-scheme:dark}body{background-color:var(--background-color);color:var(--text-color)}.image-emphasis{-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;transition:transform .18s ease,box-shadow .18s ease}.image-emphasis:focus-visible,.image-emphasis[data-touch-active]{outline:none;transform:translate(-3px,-3px);box-shadow:0 0 0 1px var(--primary-color),6px 6px 0 var(--primary-color)}@media (hover: hover){.image-emphasis:hover{transform:translate(-3px,-3px);box-shadow:0 0 0 1px var(--primary-color),6px 6px 0 var(--primary-color)}}:root[data-mode=normal]{--content-width: min(1120px, calc(100% - 48px) );--content-offset: auto;--header-height: 64px;--brand-color: #245d88;--brand-hover: #1c4c70;--primary-color: #245d88;--on-primary: #fff;--grid-color: transparent}:root[data-mode=normal].dark{--brand-color: #9cc5e5;--brand-hover: #b5d5ed;--primary-color: #9cc5e5;--on-primary: #0a0b0d}:root[data-mode=normal] .site-grid-header-trail{display:none}:root[data-mode=normal] .grid-snap{width:auto}:root[data-mode=normal] .image-emphasis{transition:none;transform:none!important;box-shadow:none!important}:root[data-mode=normal] .image-emphasis:focus-visible{outline:2px solid var(--primary-color);outline-offset:3px}:root[data-mode=normal] a:focus-visible,:root[data-mode=normal] button:focus-visible{outline:2px solid var(--primary-color);outline-offset:3px}*{margin:0;padding:0;box-sizing:border-box}html{--heading-font: "Manrope", "PingFang SC", "Microsoft YaHei", sans-serif;--reading-font: -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", "PingFang SC", "Microsoft YaHei", sans-serif;--header-rows: 3;--header-height: calc(var(--layout-unit) * var(--header-rows));scroll-behavior:smooth;scroll-padding-top:var(--header-height);scrollbar-width:none;-webkit-text-size-adjust:100%;text-size-adjust:100%}html::-webkit-scrollbar{display:none}body{min-width:320px;font-family:var(--reading-font);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--heading-font)}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0;cursor:pointer}button:disabled{cursor:default;opacity:.5}a{color:inherit;text-decoration:none}a[href],a[href] *{-webkit-touch-callout:none}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--primary-color);outline-offset:5px}::selection{background:var(--brand-color);color:var(--on-primary)}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}#app{min-height:100vh}.site-grid{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background-color:var(--background-color);background-image:linear-gradient(var(--grid-color) 1px,transparent 1px),linear-gradient(90deg,var(--grid-color) 1px,transparent 1px);background-size:var(--grid-unit) var(--grid-unit)}.site-grid-trail{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;pointer-events:none}.site-grid-header-trail{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;pointer-events:none}.grid-snap{width:calc(var(--grid-unit) * var(--grid-columns));flex-shrink:0}.grid-label-content{display:inline-flex;align-items:center;gap:inherit;width:max-content;flex-shrink:0}.grid-contrast-text *{-webkit-text-fill-color:currentColor}.grid-contrast-text{--grid-text-fill: currentColor;--grid-text-size: auto;--grid-text-position: 0 0;--grid-text-attachment: scroll;background-image:var(--grid-contrast-image, none),linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-origin:border-box;background-clip:text;-webkit-background-clip:text;background-size:var(--grid-text-size, auto);background-position:var(--grid-text-position, 0 0);background-attachment:var(--grid-text-attachment, scroll);-webkit-text-fill-color:var(--grid-text-fill, currentColor)}.site-grid-control-contrast{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;pointer-events:none;overflow:hidden}.site-grid-control-contrast .grid-control-copy{background:var(--grid-control-background)!important;color:var(--grid-control-color)!important;border-color:var(--grid-control-color)!important;-webkit-text-fill-color:currentColor;pointer-events:none}.site-grid-control-contrast .grid-control-copy *{color:inherit!important;-webkit-text-fill-color:currentColor}.site-grid-control-contrast input::placeholder{color:var(--grid-control-color);opacity:.7}.site-grid-control-contrast svg{position:static;inset:auto}._curtain_1shtf_1{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;width:100%;height:100%;pointer-events:none}._switching_1shtf_10{pointer-events:auto;touch-action:none}@media (prefers-reduced-motion: no-preference){html.grid-opening-pending #root:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;pointer-events:none;background-color:var(--background-color);background-image:linear-gradient(var(--grid-color) 1px,transparent 1px),linear-gradient(90deg,var(--grid-color) 1px,transparent 1px);background-size:var(--grid-unit) var(--grid-unit)}}.site-grid-icon-contrast{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;pointer-events:none;overflow:hidden}.site-grid-icon-contrast svg{position:absolute;left:50%;top:50%}._languageGlyph_15ty9_1{transition:transform .18s ease}._downArrow_15ty9_5{transform:rotate(90deg);width:14px}._upArrow_15ty9_10{transform:rotate(-90deg);width:14px}._header_100c6_1{position:sticky;top:0;z-index:20;background-color:var(--background-color);box-shadow:inset 0 -1px var(--border-color);background-image:linear-gradient(var(--grid-color) 1px,transparent 1px),linear-gradient(90deg,var(--grid-color) 1px,transparent 1px);background-size:var(--grid-unit) var(--grid-unit)}._headerInner_100c6_11{width:var(--content-width, calc(100% - 48px) );margin-inline:var(--content-offset, 24px);position:relative;z-index:1;display:flex;align-items:center;justify-content:center;height:var(--header-height)}._navigation_100c6_22{display:flex;align-items:center;height:100%;gap:calc(var(--grid-unit) * 2);transform:translate(calc(round(nearest,-50%,var(--grid-unit)) + 50%));font-family:var(--heading-font)}._navigation_100c6_22 a{position:relative;display:flex;align-items:center;justify-content:center;width:calc(var(--grid-unit) * var(--grid-columns));height:100%;color:var(--secondary-color);font-size:13px;line-height:calc(var(--grid-unit) * 1);white-space:nowrap}@media (hover: hover){._navigation_100c6_22 a:not(:disabled):hover{color:var(--primary-color)}}._navigation_100c6_22 a:not(:disabled):active,._navigation_100c6_22 a:not(:disabled)[data-touch-active]{color:var(--primary-color)}._navigation_100c6_22 a[aria-current]{color:var(--primary-color)}._navigation_100c6_22 a[aria-current]:after{position:absolute;content:"";bottom:0;inset-inline:0;height:2px;background:var(--primary-color)}._headerControls_100c6_62{position:absolute;right:calc(var(--grid-unit) * .5);top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:0}._languageButton_100c6_72,._themeButton_100c6_73,._modeButton_100c6_74{display:inline-flex;align-items:center;justify-content:center;width:calc(var(--grid-unit) * 2);height:calc(var(--grid-unit) * 2);padding:0;border:0;background:transparent;color:var(--text-color)}@media (hover: hover){._languageButton_100c6_72:not(:disabled):hover,._themeButton_100c6_73:not(:disabled):hover,._modeButton_100c6_74:not(:disabled):hover{color:var(--primary-color)}}._languageButton_100c6_72:focus-visible,._themeButton_100c6_73:focus-visible,._modeButton_100c6_74:focus-visible{color:var(--primary-color)}._languageButton_100c6_72 svg,._themeButton_100c6_73 svg,._modeButton_100c6_74 svg{width:calc(var(--grid-unit) * 1);height:calc(var(--grid-unit) * 1);stroke-width:1.5}@media (max-width: 1000px){._headerInner_100c6_11{justify-content:flex-start;padding-inline:calc(var(--grid-unit) * 2)}._navigation_100c6_22{transform:none}}@media (max-width: 900px){._navigation_100c6_22 a{font-size:12px}}@media (max-width: 760px){._headerInner_100c6_11{justify-content:space-between;gap:8px;padding-inline:calc(var(--grid-unit) * 1)}._headerControls_100c6_62{position:static;transform:none;flex-shrink:0}._languageButton_100c6_72,._themeButton_100c6_73,._modeButton_100c6_74{width:32px}._navigation_100c6_22{flex:1;gap:8px;min-width:0;overflow-x:auto;scrollbar-width:none;transform:none}._navigation_100c6_22::-webkit-scrollbar{display:none}}@media (max-width: 360px){._navigation_100c6_22{gap:4px}}html[data-mode=normal] ._headerInner_100c6_11{padding-inline:0}html[data-mode=normal] ._navigation_100c6_22{gap:32px;transform:none}html[data-mode=normal] ._navigation_100c6_22 a{width:auto;line-height:1.5}html[data-mode=normal] ._headerControls_100c6_62{right:0}@media (max-width: 760px){html[data-mode=normal] ._headerInner_100c6_11{width:100%;margin-inline:0;padding-inline:24px}html[data-mode=normal] ._navigation_100c6_22{gap:12px}}._gridBlock_1p1pz_1{min-width:0;min-height:calc(var(--grid-unit) * var(--grid-rows, 0))}._gridContent_1p1pz_6{display:flow-root;min-width:0}._sectionAnchor_14489_1{display:block;width:fit-content;color:var(--primary-color);font-size:12px;line-height:calc(var(--grid-unit) * 1)}@media (hover: hover){._sectionAnchor_14489_1:not(:disabled):hover{text-decoration:underline;text-underline-offset:4px}}._sectionAnchor_14489_1:not(:disabled):active,._sectionAnchor_14489_1:not(:disabled)[data-touch-active]{text-decoration:underline;text-underline-offset:4px}._sectionHeading_14489_19{margin-bottom:calc(var(--grid-unit) * 1)}._sectionHeading_14489_19 h2{margin-top:calc(var(--grid-unit) * 1);font-size:20px;font-weight:600;letter-spacing:-.045em;line-height:calc(var(--grid-unit) * 1)}._sectionDescription_14489_30{margin-top:calc(var(--grid-unit) * 1);font-size:13px;color:var(--secondary-color);line-height:calc(var(--grid-unit) * 1)}._sectionDivider_14489_37{width:100%;margin-top:calc(var(--grid-unit) * 1);box-shadow:inset 0 1px var(--border-color),inset 0 -1px var(--border-color)}._flush_14489_43{margin-top:0}._dividerInner_14489_47{width:var(--content-width, calc(100% - 48px) );margin-inline:var(--content-offset, 24px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:calc(var(--grid-unit) * 1);height:calc(var(--grid-unit) * 3);padding-inline:var(--content-padding);color:var(--secondary-color);font-size:11px;line-height:calc(var(--grid-unit) * 1)}._dividerInner_14489_47>._dividerIdentity_14489_60,._dividerInner_14489_47>a{display:flex;align-items:center;gap:9px}._dividerInner_14489_47>a{justify-self:end;white-space:nowrap;height:calc(var(--grid-unit) * 3)}@media (hover: hover){._dividerInner_14489_47 a:not(:disabled):hover{color:var(--primary-color)}}._dividerInner_14489_47 a:not(:disabled):active,._dividerInner_14489_47 a:not(:disabled)[data-touch-active]{color:var(--primary-color)}._dividerIdentity_14489_60{font-family:JetBrainsMono,monospace;font-size:10px}._dividerTopic_14489_85{text-align:center;letter-spacing:.05em;font-size:10px}._statusDot_14489_91{display:inline-block;flex-shrink:0;width:6px;height:6px;background:var(--primary-color)}._footer_14489_99{position:relative;z-index:1}._footerBlock_14489_104{width:var(--content-width, calc(100% - 48px) );margin-inline:var(--content-offset, 24px)}._footerContent_14489_109{display:flex;align-items:center;justify-content:space-between;gap:calc(var(--grid-unit) * 1);padding:calc(var(--grid-unit) * 1) var(--content-padding);color:var(--secondary-color);font-size:9px;line-height:calc(var(--grid-unit) * 1)}._footerContent_14489_109>a:last-child{display:flex;align-items:center;gap:10px}@media (hover: hover){._footerContent_14489_109>a:not(:disabled):hover{color:var(--primary-color)}}._footerContent_14489_109>a:not(:disabled):active,._footerContent_14489_109>a:not(:disabled)[data-touch-active]{color:var(--primary-color)}._footerName_14489_133{font-size:11px;color:var(--text-color)}@media (max-width: 760px){._dividerInner_14489_47{grid-template-columns:1fr 1fr;height:calc(var(--grid-unit) * 3);gap:0 calc(var(--grid-unit) * .5);font-size:11px}._dividerTopic_14489_85{display:none}._footerContent_14489_109{flex-wrap:wrap;gap:calc(var(--grid-unit) * 1)}}html[data-mode=normal] ._sectionAnchor_14489_1{line-height:1.5}html[data-mode=normal] ._sectionHeading_14489_19{margin-bottom:20px}html[data-mode=normal] ._sectionHeading_14489_19 h2{margin-top:12px;font-size:24px;line-height:1.3;letter-spacing:-.03em}html[data-mode=normal] ._sectionDescription_14489_30{margin-top:8px;line-height:1.65}html[data-mode=normal] ._footerContent_14489_109{padding:24px 0;gap:16px;line-height:1.6}._hero_7ungo_1{width:var(--content-width, calc(100% - 48px) );margin-inline:var(--content-offset, 24px)}._heroBody_7ungo_6{padding:calc(var(--grid-unit) * 2) var(--content-padding)}._heroHeading_7ungo_10{display:grid;grid-template-columns:minmax(0,1fr) calc(var(--grid-unit) * 8);align-items:start;gap:calc(var(--grid-unit) * 2);margin-top:calc(var(--grid-unit) * 1)}._heroCopy_7ungo_18{min-width:0;grid-column:1;grid-row:1}._heroTitle_7ungo_24{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}._heroIntroduction_7ungo_34{width:100%;margin:0;font-family:var(--reading-font);font-size:14px;line-height:calc(var(--grid-unit) * 1);color:var(--secondary-color)}._heroIntroduction_7ungo_34 strong{color:var(--text-color);font-weight:600}._heroIntroduction_7ungo_34 a{display:inline-block;vertical-align:top;height:calc(var(--grid-unit) * 1);color:var(--text-color);box-shadow:0 1px 0 var(--primary-color)}@media (hover: hover){._heroIntroduction_7ungo_34 a:not(:disabled):hover{color:var(--primary-color)}}._heroIntroduction_7ungo_34 a:not(:disabled):active,._heroIntroduction_7ungo_34 a:not(:disabled)[data-touch-active]{color:var(--primary-color)}._heroIntroduction_7ungo_34 ._undergraduateUniversity_7ungo_61,._heroIntroduction_7ungo_34 ._labLink_7ungo_62{display:inline;vertical-align:baseline;height:auto}._heroActions_7ungo_68{display:flex;flex-wrap:wrap;align-items:center;gap:calc(var(--grid-unit) * 1);margin-top:calc(var(--grid-unit) * 1)}._heroActions_7ungo_68>a{font-family:var(--heading-font);font-size:12px;font-weight:500}._primaryButton_7ungo_81{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;gap:calc(var(--grid-unit) * .5);min-width:calc(var(--grid-unit) * 7);height:calc(var(--grid-unit) * 2);padding:0 calc(var(--grid-unit) * .5);-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:0;box-shadow:none;background:var(--brand-color);color:var(--on-primary);font-size:13px;font-weight:700;line-height:calc(var(--grid-unit) * 1);transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease}@media (hover: hover){._primaryButton_7ungo_81:not(:disabled):hover{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--button-shadow-color)}}._primaryButton_7ungo_81:not(:disabled):active,._primaryButton_7ungo_81:not(:disabled)[data-touch-active]{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--button-shadow-color)}._primaryButton_7ungo_81:focus-visible{outline:2px solid var(--primary-color);outline-offset:3px;transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--button-shadow-color)}html[data-mode=normal] ._primaryButton_7ungo_81:hover,html[data-mode=normal] ._primaryButton_7ungo_81:active,html[data-mode=normal] ._primaryButton_7ungo_81:focus-visible,html[data-mode=normal] ._primaryButton_7ungo_81[data-touch-active]{transform:none;box-shadow:none}._primaryButton_7ungo_81>svg{flex-shrink:0}._githubButton_7ungo_125,._heroEmail_7ungo_126{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;gap:calc(var(--grid-unit) * .5);height:calc(var(--grid-unit) * 2);padding:0 calc(var(--grid-unit) * .5);box-shadow:inset 0 0 0 1px var(--border-color);font-size:12px;line-height:calc(var(--grid-unit) * 1);white-space:nowrap;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease}@media (hover: hover){._githubButton_7ungo_125:not(:disabled):hover,._heroEmail_7ungo_126:not(:disabled):hover{transform:translate(-1px,-1px);box-shadow:inset 0 0 0 1px var(--primary-color),3px 3px 0 var(--primary-color)}}._githubButton_7ungo_125:not(:disabled):active,._githubButton_7ungo_125:not(:disabled)[data-touch-active],._heroEmail_7ungo_126:not(:disabled):active,._heroEmail_7ungo_126:not(:disabled)[data-touch-active]{transform:translate(-1px,-1px);box-shadow:inset 0 0 0 1px var(--primary-color),3px 3px 0 var(--primary-color)}._githubButton_7ungo_125:focus-visible,._heroEmail_7ungo_126:focus-visible{outline:2px solid var(--primary-color);outline-offset:3px;transform:translate(-1px,-1px);box-shadow:inset 0 0 0 1px var(--primary-color),3px 3px 0 var(--primary-color)}html[data-mode=normal] ._githubButton_7ungo_125:hover,html[data-mode=normal] ._githubButton_7ungo_125:active,html[data-mode=normal] ._githubButton_7ungo_125:focus-visible,html[data-mode=normal] ._githubButton_7ungo_125[data-touch-active],html[data-mode=normal] ._heroEmail_7ungo_126:hover,html[data-mode=normal] ._heroEmail_7ungo_126:active,html[data-mode=normal] ._heroEmail_7ungo_126:focus-visible,html[data-mode=normal] ._heroEmail_7ungo_126[data-touch-active]{transform:none;box-shadow:inset 0 0 0 1px var(--border-color)}._githubButton_7ungo_125>svg,._heroEmail_7ungo_126>svg{flex-shrink:0}._githubButton_7ungo_125>svg:first-child,._heroEmail_7ungo_126>svg:first-child{width:16px;height:16px}._githubButton_7ungo_125>svg:last-child,._heroEmail_7ungo_126>svg:last-child{width:12px;height:12px}._githubButton_7ungo_125{min-width:calc(var(--grid-unit) * 6)}._heroEmail_7ungo_126{min-width:calc(var(--grid-unit) * 4)}._heroPortrait_7ungo_191{grid-column:2;grid-row:1;width:calc(var(--grid-unit) * 8);height:calc(var(--grid-unit) * 8);margin:calc(var(--grid-unit) * -2) 0 0}._portraitFrame_7ungo_199{position:relative;width:100%;height:100%;aspect-ratio:1}._portraitImage_7ungo_206{display:block;width:100%;height:100%;object-fit:contain}@media (max-width: 760px){._heroHeading_7ungo_10{gap:calc(var(--grid-unit) * 1)}}@media (max-width: 680px){._heroHeading_7ungo_10{display:flow-root}._heroPortrait_7ungo_191{float:right;margin:calc(var(--grid-unit) * -2) 0 calc(var(--grid-unit) * 1) calc(var(--grid-unit) * 1)}._heroActions_7ungo_68{clear:both}}html[data-mode=normal] ._heroBody_7ungo_6{padding:48px 0 40px}html[data-mode=normal] ._heroHeading_7ungo_10{grid-template-columns:minmax(0,1fr) 144px;gap:32px;margin-top:16px}html[data-mode=normal] ._heroIntroduction_7ungo_34{line-height:1.75}html[data-mode=normal] ._heroIntroduction_7ungo_34 a{display:inline;height:auto;vertical-align:baseline}html[data-mode=normal] ._heroActions_7ungo_68{gap:12px;margin-top:20px}html[data-mode=normal] ._primaryButton_7ungo_81,html[data-mode=normal] ._githubButton_7ungo_125,html[data-mode=normal] ._heroEmail_7ungo_126{min-width:0;height:auto;min-height:40px;padding:10px 14px;gap:8px;border-radius:4px;line-height:1.5}html[data-mode=normal] ._heroPortrait_7ungo_191{width:144px;height:144px;margin:0}@media (max-width: 760px){html[data-mode=normal] ._heroBody_7ungo_6{padding:32px 0 36px}html[data-mode=normal] ._heroHeading_7ungo_10{gap:24px}}@media (max-width: 680px){html[data-mode=normal] ._heroPortrait_7ungo_191{width:120px;height:120px;margin:4px 0 16px 20px}}@media (max-width: 420px){html[data-mode=normal] ._heroPortrait_7ungo_191{width:104px;height:104px;margin-left:16px}}._abstractBlock_1goah_1{margin-top:calc(var(--grid-unit) * 1)}._abstractDrawer_1goah_5{overflow:hidden;opacity:0;transition:height .38s cubic-bezier(.22,1,.36,1),opacity .2s ease}._researchAbstract_1goah_11{margin:0;padding-top:calc(var(--grid-unit) * 1);font-family:var(--reading-font);color:var(--secondary-color);font-size:13px;line-height:calc(var(--grid-unit) * 1)}._abstractExpanded_1goah_20 ._abstractDrawer_1goah_5{opacity:1}._abstractToggle_1goah_24 svg{transition:transform .18s ease}._abstractToggle_1goah_24[aria-expanded=true] svg{transform:rotate(180deg)}._paperFooter_1goah_31{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:flex-start;gap:calc(var(--grid-unit) * 1)}._paperLinks_1goah_39{display:flex;flex-wrap:wrap;gap:calc(var(--grid-unit) * 1)}._paperLinks_1goah_39 a,._paperLinks_1goah_39 button{display:inline-flex;align-items:center;justify-content:center;gap:2px;height:calc(var(--grid-unit) * 1);padding:0 calc(var(--grid-unit) * .25);color:var(--primary-color);font-size:12px;line-height:calc(var(--grid-unit) * 1);white-space:nowrap;box-shadow:inset 0 0 0 1px var(--border-color);transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease}@media (hover: hover){._paperLinks_1goah_39 a:not(:disabled):hover,._paperLinks_1goah_39 button:not(:disabled):hover{transform:translate(-1px,-1px);box-shadow:inset 0 0 0 1px var(--primary-color),3px 3px 0 var(--primary-color)}}._paperLinks_1goah_39 a:not(:disabled):active,._paperLinks_1goah_39 a:not(:disabled)[data-touch-active],._paperLinks_1goah_39 button:not(:disabled):active,._paperLinks_1goah_39 button:not(:disabled)[data-touch-active]{transform:translate(-1px,-1px);box-shadow:inset 0 0 0 1px var(--primary-color),3px 3px 0 var(--primary-color)}._paperLinks_1goah_39 a:focus-visible,._paperLinks_1goah_39 button:focus-visible{outline:2px solid var(--primary-color);outline-offset:3px;transform:translate(-1px,-1px);box-shadow:inset 0 0 0 1px var(--primary-color),3px 3px 0 var(--primary-color)}html[data-mode=normal] ._paperLinks_1goah_39 a:hover,html[data-mode=normal] ._paperLinks_1goah_39 a:active,html[data-mode=normal] ._paperLinks_1goah_39 a:focus-visible,html[data-mode=normal] ._paperLinks_1goah_39 a[data-touch-active],html[data-mode=normal] ._paperLinks_1goah_39 button:hover,html[data-mode=normal] ._paperLinks_1goah_39 button:active,html[data-mode=normal] ._paperLinks_1goah_39 button:focus-visible,html[data-mode=normal] ._paperLinks_1goah_39 button[data-touch-active]{transform:none;box-shadow:inset 0 0 0 1px var(--border-color)}._paperLinks_1goah_39 button{border:0;background:transparent}html[data-mode=normal] ._abstractBlock_1goah_1{margin-top:12px}html[data-mode=normal] ._researchAbstract_1goah_11{padding-top:14px;font-size:13px;line-height:1.75}html[data-mode=normal] ._paperFooter_1goah_31,html[data-mode=normal] ._paperLinks_1goah_39{gap:8px}html[data-mode=normal] ._paperLinks_1goah_39 a,html[data-mode=normal] ._paperLinks_1goah_39 button{height:auto;min-height:30px;padding:5px 10px;gap:4px;border-radius:4px;line-height:1.5;color:var(--primary-color)}html[data-mode=normal] ._paperLinks_1goah_39 a:hover,html[data-mode=normal] ._paperLinks_1goah_39 a:active,html[data-mode=normal] ._paperLinks_1goah_39 a:focus-visible,html[data-mode=normal] ._paperLinks_1goah_39 button:hover,html[data-mode=normal] ._paperLinks_1goah_39 button:active,html[data-mode=normal] ._paperLinks_1goah_39 button:focus-visible{box-shadow:inset 0 0 0 1px var(--primary-color)}._section_ccdcu_1{width:var(--content-width, calc(100% - 48px) );margin-inline:var(--content-offset, 24px);padding:calc(var(--grid-unit) * 1) var(--content-padding) 0}._researchItem_ccdcu_7{box-shadow:inset 0 -1px var(--border-color)}._researchItem_ccdcu_7:first-of-type{box-shadow:inset 0 1px var(--border-color),inset 0 -1px var(--border-color)}._researchItem_ccdcu_7:last-of-type{box-shadow:none}._researchGrid_ccdcu_17{display:grid;grid-template-columns:calc(var(--grid-unit) * 13) minmax(0,1fr);gap:calc(var(--grid-unit) * 1) calc(var(--grid-unit) * 2);align-items:start;padding:calc(var(--grid-unit) * 1) 0}._paperMetadata_ccdcu_25{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:calc(var(--grid-unit) * 1);min-width:0}._researchFigure_ccdcu_35{position:relative;width:100%;align-self:start;margin:0;padding:0}._researchFigure_ccdcu_35 img{display:block;width:100%;height:auto;padding:4px;background-color:#fff}._venueBadges_ccdcu_50{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:calc(var(--grid-unit) * 1);font-size:11px;line-height:calc(var(--grid-unit) * 1)}._venueBadges_ccdcu_50>span{display:inline-flex;align-items:center;justify-content:center;min-width:calc(var(--grid-unit) * 3);height:calc(var(--grid-unit) * 1);padding:0;white-space:nowrap;color:var(--text-color);background:var(--background-color);box-shadow:inset 0 0 0 1px var(--border-color)}._venueBadges_ccdcu_50 ._venueTag_ccdcu_70{min-width:calc(var(--grid-unit) * 4);background:var(--brand-color);color:var(--on-primary);font-weight:600}._researchContent_ccdcu_77{min-width:0}._researchContent_ccdcu_77 h3{font-weight:600;font-size:16px;line-height:calc(var(--grid-unit) * 1);letter-spacing:-.02em}._authors_ccdcu_87{margin-top:0;font-size:12px;line-height:calc(var(--grid-unit) * 1);color:var(--secondary-color)}._authors_ccdcu_87 a{display:inline-block;vertical-align:top;height:calc(var(--grid-unit) * 1);box-shadow:0 1px 0 var(--border-color)}@media (hover: hover){._authors_ccdcu_87 a:not(:disabled):hover{color:var(--primary-color);box-shadow:0 1px 0 currentColor}}._authors_ccdcu_87 a:not(:disabled):active,._authors_ccdcu_87 a:not(:disabled)[data-touch-active]{color:var(--primary-color);box-shadow:0 1px 0 currentColor}._authors_ccdcu_87 sup{font-size:.75em;line-height:0}._authors_ccdcu_87 ._selfAuthor_ccdcu_113{font-weight:600;color:var(--text-color)}._researchTags_ccdcu_118{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;margin-left:auto;list-style:none;gap:calc(var(--grid-unit) * 1);color:var(--secondary-color);font-size:11px;line-height:calc(var(--grid-unit) * 1)}._researchTags_ccdcu_118 li{display:inline-flex;align-items:center;justify-content:center;height:calc(var(--grid-unit) * 1);padding:0 calc(var(--grid-unit) * .5);white-space:nowrap;border-radius:0;box-shadow:inset 0 0 0 1px var(--border-color)}@media (max-width: 900px){._researchGrid_ccdcu_17{grid-template-columns:calc(var(--grid-unit) * 11) minmax(0,1fr)}}@media (max-width: 760px){._paperMetadata_ccdcu_25{justify-content:flex-start}._venueBadges_ccdcu_50,._researchTags_ccdcu_118{display:contents}._researchGrid_ccdcu_17{grid-template-columns:minmax(0,1fr);gap:calc(var(--grid-unit) * 1)}._researchFigure_ccdcu_35{width:min(100%,var(--grid-unit) * 20)}}@media (max-width: 420px){._researchContent_ccdcu_77 h3{font-size:16px}}html[data-mode=normal] ._section_ccdcu_1{padding:0 0 24px}html[data-mode=normal] ._researchGrid_ccdcu_17{grid-template-columns:232px minmax(0,1fr);gap:16px 28px;padding:24px 0}html[data-mode=normal] ._paperMetadata_ccdcu_25{gap:8px;align-items:center}html[data-mode=normal] ._venueBadges_ccdcu_50{gap:8px;line-height:1.5}html[data-mode=normal] ._venueBadges_ccdcu_50>span{min-width:0;height:auto;padding:3px 8px;border-radius:3px}html[data-mode=normal] ._researchTags_ccdcu_118{gap:8px;line-height:1.5}html[data-mode=normal] ._researchTags_ccdcu_118 li{height:auto;padding:3px 8px;border-radius:3px}html[data-mode=normal] ._researchContent_ccdcu_77 h3{font-size:17px;line-height:1.45;letter-spacing:-.01em}html[data-mode=normal] ._authors_ccdcu_87{margin-top:6px;line-height:1.7}html[data-mode=normal] ._authors_ccdcu_87 a{display:inline;height:auto;vertical-align:baseline}@media (max-width: 900px){html[data-mode=normal] ._researchGrid_ccdcu_17{grid-template-columns:200px minmax(0,1fr);gap:16px 24px}}@media (max-width: 760px){html[data-mode=normal] ._paperMetadata_ccdcu_25{justify-content:flex-start}html[data-mode=normal] ._researchGrid_ccdcu_17{grid-template-columns:minmax(0,1fr);gap:16px}html[data-mode=normal] ._researchFigure_ccdcu_35{width:min(100%,400px)}}._viewport_kclln_1{touch-action:pan-y pinch-zoom;cursor:grab;-webkit-user-select:none;user-select:none}._viewport_kclln_1 a{cursor:grab}._viewport_kclln_1:focus-visible{outline:2px solid var(--primary-color);outline-offset:-2px}._dragging_kclln_14,._dragging_kclln_14 *{cursor:grabbing}._track_kclln_19{display:flex;width:max-content;animation:_marqueeScroll_kclln_1 linear infinite;will-change:transform}._group_kclln_26{display:flex;flex-shrink:0}._staticGroup_kclln_31{display:grid;grid-template-columns:minmax(0,1fr)}html[data-mode=normal] ._staticViewport_kclln_36{overflow:visible;container-type:inline-size}html[data-mode=normal] ._staticGroup_kclln_31>*{width:100%;min-width:0}html[data-mode=normal] .marquee-repeat,html[data-mode=normal] ._group_kclln_26[aria-hidden=true]{display:none}html[data-mode=normal] ._track_kclln_19{animation:none;transform:none;width:100%;will-change:auto}html[data-mode=normal] ._group_kclln_26{display:grid;width:100%;grid-template-columns:minmax(0,1fr)}@container (min-width: 640px){._staticGroup_kclln_31{grid-template-columns:repeat(2,minmax(0,1fr))}@supports (width: round(down,50%,20px)){._staticGroup_kclln_31{grid-template-columns:repeat(2,round(down,50%,var(--grid-unit)))}}}@container (min-width: 1000px){._staticGroup_kclln_31{grid-template-columns:repeat(3,minmax(0,1fr))}@supports (width: round(down,33%,20px)){._staticGroup_kclln_31{grid-template-columns:repeat(3,round(down,33.3333333333%,var(--grid-unit)))}}}@keyframes _marqueeScroll_kclln_1{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion: reduce){.marquee-repeat{display:none}._track_kclln_19{animation:none;transform:none;will-change:auto}._group_kclln_26[aria-hidden=true]{display:none}}._honors_595yw_1{margin-top:calc(var(--grid-unit) * 1)}._honors_595yw_1 h3{margin-bottom:calc(var(--grid-unit) * 1);color:var(--secondary-color);font-size:12px;font-weight:500;line-height:calc(var(--grid-unit) * 1)}._honorsMarquee_595yw_12{width:calc(var(--content-width) + var(--content-offset) * 2);margin-left:calc(-1 * var(--content-offset) - var(--content-padding));overflow:hidden;box-shadow:inset 0 1px var(--border-color),inset 0 -1px var(--border-color)}._honor_595yw_1{display:flex;align-items:center;justify-content:center;gap:calc(var(--grid-unit) * 1);width:calc(var(--grid-unit) * 18);min-height:calc(var(--grid-unit) * 10);padding:calc(var(--grid-unit) * 1);box-shadow:inset -1px 0 var(--border-color);font-size:12px}._honor_595yw_1 img{display:block;width:auto;height:auto;max-width:calc(var(--grid-unit) * 6);max-height:calc(var(--grid-unit) * 8);object-fit:contain;flex-shrink:0}._honor_595yw_1>div{min-width:0;display:grid;gap:calc(var(--grid-unit) * .5);text-align:center}._honor_595yw_1 span{font-size:11px;color:var(--secondary-color)}._honor_595yw_1 span,._honor_595yw_1 p,._honor_595yw_1 strong{line-height:calc(var(--grid-unit) * 1)}._honor_595yw_1 strong{color:var(--primary-color);font-weight:500;font-size:12px}._honor_595yw_1 ._honorDetail_595yw_57{color:var(--secondary-color)}html[data-mode=normal] ._honorsMarquee_595yw_12{width:100%;margin-left:0;overflow:visible}html[data-mode=normal] ._honor_595yw_1{width:100%}@media (prefers-reduced-motion: reduce){._honorsMarquee_595yw_12{overflow-x:auto}}._projectsSection_1q1n0_1{padding-top:calc(var(--grid-unit) * 1)}._projectHeading_1q1n0_5,._projectFoot_1q1n0_6,._projectHonors_1q1n0_7{width:var(--content-width, calc(100% - 48px) );margin-inline:var(--content-offset, 24px);padding-inline:var(--content-padding)}._marquee_1q1n0_13{display:grid;width:100%;margin:0;padding:0;overflow:hidden}._marqueeRow_1q1n0_21{overflow:hidden;padding-block:calc(var(--grid-unit) * 1);box-shadow:inset 0 1px var(--border-color)}._marqueeRow_1q1n0_21:last-child{box-shadow:inset 0 1px var(--border-color),inset 0 -1px var(--border-color)}._marqueeReverse_1q1n0_30 ._marqueeTrack_1q1n0_30{animation-direction:reverse;animation-duration:48s}._projectCard_1q1n0_35{position:relative;z-index:1;display:flex;flex-direction:column;flex-shrink:0;min-width:0;width:calc(var(--grid-unit) * 16);height:calc(var(--grid-unit) * 11);padding:calc(var(--grid-unit) * 1);box-shadow:inset -1px 0 var(--border-color);transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}._projectCard_1q1n0_35 h3{margin-top:calc(var(--grid-unit) * 1);font-size:16px;font-weight:500;line-height:calc(var(--grid-unit) * 1)}._projectCard_1q1n0_35>p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;max-height:calc(var(--grid-unit) * 2);margin-top:calc(var(--grid-unit) * 1);font-size:12px;line-height:calc(var(--grid-unit) * 1);color:var(--secondary-color)}@media (hover: hover){._projectCard_1q1n0_35:not(:disabled):hover{z-index:2;transform:translate(-3px,-3px);background-color:var(--background-color);box-shadow:inset 0 0 0 1px var(--primary-color),6px 6px 0 var(--primary-color)}}._projectCard_1q1n0_35:not(:disabled):active,._projectCard_1q1n0_35:not(:disabled)[data-touch-active]{z-index:2;transform:translate(-3px,-3px);background-color:var(--background-color);box-shadow:inset 0 0 0 1px var(--primary-color),6px 6px 0 var(--primary-color)}._projectCard_1q1n0_35:has(:focus-visible){z-index:2;outline:none;transform:translate(-3px,-3px);background-color:var(--background-color);box-shadow:inset 0 0 0 1px var(--primary-color),6px 6px 0 var(--primary-color)}._projectLink_1q1n0_88{outline:none}._projectLink_1q1n0_88:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}._projectMeta_1q1n0_98{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:calc(var(--grid-unit) * 1);font-size:11px;line-height:calc(var(--grid-unit) * 1);color:var(--secondary-color)}._projectMeta_1q1n0_98>span:first-child{color:var(--primary-color)}._projectActions_1q1n0_112{display:flex;align-items:center;gap:calc(var(--grid-unit) * .5)}._projectActions_1q1n0_112>span{display:flex;align-items:center;gap:9px}._projectActions_1q1n0_112>span>svg{width:14px;height:14px}._projectRepository_1q1n0_127{position:relative;z-index:2;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:calc(var(--grid-unit) * 1.5);height:calc(var(--grid-unit) * 1)}@media (hover: hover){._projectRepository_1q1n0_127:not(:disabled):hover{color:var(--primary-color)}}._projectRepository_1q1n0_127:focus-visible{color:var(--primary-color)}._projectTechnologies_1q1n0_146{display:flex;gap:calc(var(--grid-unit) * 1);padding-top:calc(var(--grid-unit) * 1);margin-top:auto;font-size:11px;line-height:calc(var(--grid-unit) * 1);color:var(--secondary-color)}._projectFoot_1q1n0_6{margin-top:calc(var(--grid-unit) * 1);color:var(--secondary-color);line-height:calc(var(--grid-unit) * 1)}._projectFootContent_1q1n0_162{display:flex;justify-content:flex-end}._textLink_1q1n0_167{display:inline-flex;align-items:center;gap:8px;font-size:12px;line-height:calc(var(--grid-unit) * 1)}@media (hover: hover){._textLink_1q1n0_167:not(:disabled):hover{color:var(--primary-color)}}._textLink_1q1n0_167:not(:disabled):active,._textLink_1q1n0_167:not(:disabled)[data-touch-active]{color:var(--primary-color)}html[data-mode=normal] ._marquee_1q1n0_13{width:var(--content-width, calc(100% - 48px) );margin-inline:var(--content-offset, 24px);padding-inline:var(--content-padding);overflow:visible}html[data-mode=normal] ._projectCard_1q1n0_35{width:100%}html[data-mode=normal] ._projectCard_1q1n0_35:hover,html[data-mode=normal] ._projectCard_1q1n0_35:active,html[data-mode=normal] ._projectCard_1q1n0_35:focus-within,html[data-mode=normal] ._projectCard_1q1n0_35[data-touch-active]{transform:none;background:transparent;box-shadow:inset -1px 0 var(--border-color)}html[data-mode=normal] ._projectLink_1q1n0_88:focus-visible{outline:2px solid var(--primary-color);outline-offset:3px}@media (max-width: 420px){._textLink_1q1n0_167{font-size:11px;gap:6px}}@media (prefers-reduced-motion: reduce){._marqueeRow_1q1n0_21{overflow-x:auto;scrollbar-width:thin}}._colorPicker_tkzuh_1{display:flex;align-items:center;flex-shrink:0;gap:calc(var(--grid-unit) * .5);margin-left:calc(var(--grid-unit) * .5);font-size:11px;line-height:calc(var(--grid-unit) * 1);color:var(--secondary-color)}._colorTrigger_tkzuh_12{position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0;width:calc(var(--grid-unit) * 2);height:calc(var(--grid-unit) * 2);padding:calc(var(--grid-unit) * .25);-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:0;background:var(--background-color);cursor:pointer;box-shadow:inset 0 0 0 1px var(--border-color);transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease}@media (hover: hover){._colorTrigger_tkzuh_12:not(:disabled):hover{transform:translate(-1px,-1px);box-shadow:inset 0 0 0 1px var(--primary-color),3px 3px 0 var(--primary-color)}}._colorTrigger_tkzuh_12:not(:disabled):active,._colorTrigger_tkzuh_12:not(:disabled)[data-touch-active]{transform:translate(-1px,-1px);box-shadow:inset 0 0 0 1px var(--primary-color),3px 3px 0 var(--primary-color)}._colorTrigger_tkzuh_12:focus-visible{outline:2px solid var(--primary-color);outline-offset:3px;transform:translate(-1px,-1px);box-shadow:inset 0 0 0 1px var(--primary-color),3px 3px 0 var(--primary-color)}html[data-mode=normal] ._colorTrigger_tkzuh_12:hover,html[data-mode=normal] ._colorTrigger_tkzuh_12:active,html[data-mode=normal] ._colorTrigger_tkzuh_12:focus-visible,html[data-mode=normal] ._colorTrigger_tkzuh_12[data-touch-active]{transform:none;box-shadow:inset 0 0 0 1px var(--border-color)}._colorTrigger_tkzuh_12>span{width:100%;height:100%;background:var(--ink-color)}._colorTrigger_tkzuh_12:has(input:focus-visible){outline:2px solid var(--primary-color);outline-offset:3px;transform:translate(-1px,-1px);box-shadow:inset 0 0 0 1px var(--primary-color),3px 3px 0 var(--primary-color)}._colorInput_tkzuh_61{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;padding:0;border:0;border-radius:0;opacity:0;cursor:pointer}@media (any-pointer: coarse){._colorInput_tkzuh_61{font-size:16px}}@media (max-width: 420px){._colorPicker_tkzuh_1{gap:calc(var(--grid-unit) * .25)}}._drawingPanel_gnvod_1{--drawing-error-color: #b42318;min-width:0;width:min(100%,var(--grid-unit) * 24);justify-self:center}.dark ._drawingPanel_gnvod_1{--drawing-error-color: #f97066}._drawingToolbar_gnvod_11,._drawingSurface_gnvod_12,._drawingSubmit_gnvod_13,._drawingStatus_gnvod_14{width:var(--board-size, 100%);margin-left:var(--board-offset-x, 0px)}._drawingToolbar_gnvod_11{display:flex;align-items:center;gap:calc(var(--grid-unit) * .5);height:calc(var(--grid-unit) * 3);padding:calc(var(--grid-unit) * .5);box-shadow:inset 0 1px var(--border-color),inset 1px 0 var(--border-color),inset -1px 0 var(--border-color)}._pixelInk_gnvod_28{display:inline-flex;align-items:center;gap:8px;color:var(--secondary-color);font-family:JetBrainsMono,monospace;font-size:10px;line-height:calc(var(--grid-unit) * 1);white-space:nowrap}._drawingTools_gnvod_39{display:flex;flex-shrink:0;margin-left:auto;margin-right:calc(var(--grid-unit) * -.5)}._drawingTools_gnvod_39 button{display:inline-flex;align-items:center;justify-content:center;width:calc(var(--grid-unit) * 2);height:calc(var(--grid-unit) * 2);border:0;background:transparent;color:var(--text-color)}@media (hover: hover){._drawingTools_gnvod_39 button:not(:disabled):hover{color:var(--primary-color)}}._drawingTools_gnvod_39 button:focus-visible{color:var(--primary-color)}._drawingSurface_gnvod_12{position:relative;box-shadow:inset 0 0 0 1px var(--border-color);height:var(--board-size, calc(var(--grid-unit) * 16));transition:box-shadow .18s ease}@media (hover: hover){._drawingSurface_gnvod_12:hover{box-shadow:inset 0 0 0 1px var(--primary-color),6px 6px 0 var(--primary-color)}}._drawingSurface_gnvod_12._drawingActive_gnvod_75{box-shadow:inset 0 0 0 1px var(--primary-color),6px 6px 0 var(--primary-color);transition:none}._drawingSurface_gnvod_12 canvas{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair}._drawingSlot_gnvod_87{padding-top:var(--board-offset-y, 0px)}._drawingPrompt_gnvod_91{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;justify-content:center;align-items:center;padding:calc(var(--grid-unit) * 1);color:var(--secondary-color);font-size:13px;line-height:calc(var(--grid-unit) * 1);pointer-events:none}._drawingSubmit_gnvod_13{display:flex;align-items:center;gap:calc(var(--grid-unit) * 1);margin-top:calc(var(--grid-unit) * 1)}._primaryButton_gnvod_111{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;gap:calc(var(--grid-unit) * .5);min-width:calc(var(--grid-unit) * 7);height:calc(var(--grid-unit) * 2);padding:0 calc(var(--grid-unit) * .5);-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:0;box-shadow:none;background:var(--brand-color);color:var(--on-primary);font-size:13px;font-weight:700;line-height:calc(var(--grid-unit) * 1);transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease}@media (hover: hover){._primaryButton_gnvod_111:not(:disabled):hover{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--button-shadow-color)}}._primaryButton_gnvod_111:not(:disabled):active,._primaryButton_gnvod_111:not(:disabled)[data-touch-active]{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--button-shadow-color)}._primaryButton_gnvod_111:focus-visible{outline:2px solid var(--primary-color);outline-offset:3px;transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--button-shadow-color)}html[data-mode=normal] ._primaryButton_gnvod_111:hover,html[data-mode=normal] ._primaryButton_gnvod_111:active,html[data-mode=normal] ._primaryButton_gnvod_111:focus-visible,html[data-mode=normal] ._primaryButton_gnvod_111[data-touch-active]{transform:none;box-shadow:none}._primaryButton_gnvod_111>svg{flex-shrink:0}._primaryButton_gnvod_111{flex:0 0 calc(var(--grid-unit) * 9);width:calc(var(--grid-unit) * 9);min-width:calc(var(--grid-unit) * 9);max-width:calc(var(--grid-unit) * 9);padding-inline:calc(var(--grid-unit) * .5);font-size:12px;gap:8px;white-space:nowrap}._drawingNameField_gnvod_165{display:flex;flex:1;align-items:center;min-width:0;height:calc(var(--grid-unit) * 2);border:1px solid var(--border-color);color:var(--secondary-color);font-size:11px;line-height:calc(var(--grid-unit) * 1);transition:transform .16s ease,box-shadow .16s ease}@media (hover: hover){._drawingNameField_gnvod_165:hover{transform:translate(-1px,-1px);box-shadow:inset 0 0 0 1px var(--primary-color),3px 3px 0 var(--primary-color)}}._drawingNameField_gnvod_165:focus-within{transform:translate(-1px,-1px);box-shadow:inset 0 0 0 1px var(--primary-color),3px 3px 0 var(--primary-color)}._drawingNameInput_gnvod_188{flex:1;min-width:0;height:100%;padding:0 calc(var(--grid-unit) * .5);-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:0;outline:none;background:transparent;color:var(--text-color);caret-color:var(--brand-color);font-size:13px}._drawingNameCount_gnvod_203{flex-shrink:0;padding-right:calc(var(--grid-unit) * .5);font-variant-numeric:tabular-nums;white-space:nowrap}._drawingNameCount_gnvod_203[data-invalid]{color:var(--drawing-error-color)}._drawingStatus_gnvod_14{min-height:calc(var(--grid-unit) * 1);margin-top:calc(var(--grid-unit) * 1);font-size:12px;color:var(--secondary-color);line-height:calc(var(--grid-unit) * 1)}@media (any-pointer: coarse){._drawingNameInput_gnvod_188{font-size:16px}}@media (max-width: 420px){._pixelInk_gnvod_28{font-size:9px}._drawingToolbar_gnvod_11{gap:calc(var(--grid-unit) * .25)}._drawingSubmit_gnvod_13{flex-wrap:wrap}._drawingSubmit_gnvod_13>label{flex-basis:100%}._primaryButton_gnvod_111{flex-basis:calc(var(--grid-unit) * 9)}}._visitorMarquee_yqdxs_1{width:100%;overflow:hidden;box-shadow:inset 0 1px var(--border-color),inset 0 -1px var(--border-color)}._visitorDrawing_yqdxs_7{margin:0;flex:0 0 calc(var(--grid-unit) * 12);width:calc(var(--grid-unit) * 12);padding:calc(var(--grid-unit) * 1);box-shadow:inset -1px 0 var(--border-color)}._visitorDrawing_yqdxs_7 svg{display:block;width:100%;aspect-ratio:1;background:var(--background-color);box-shadow:inset 0 0 0 1px var(--border-color)}._visitorDrawing_yqdxs_7 figcaption{display:flex;justify-content:space-between;align-items:center;gap:6px;height:calc(var(--grid-unit) * 2);padding-top:calc(var(--grid-unit) * 1);font-size:10px;line-height:calc(var(--grid-unit) * 1);color:var(--secondary-color)}._visitorDrawing_yqdxs_7 figcaption>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._visitorDrawing_yqdxs_7 time{flex-shrink:0}@media (prefers-reduced-motion: reduce){._visitorMarquee_yqdxs_1{overflow-x:auto;scrollbar-width:thin}}._guestbook_lnzle_1{margin-top:calc(var(--grid-unit) * 2);padding-top:calc(var(--grid-unit) * 1);box-shadow:inset 0 1px var(--border-color)}._guestbookHeading_lnzle_7{margin-bottom:calc(var(--grid-unit) * 1)}._guestbookHeading_lnzle_7 h3{margin-top:calc(var(--grid-unit) * 1);font-size:20px;line-height:calc(var(--grid-unit) * 1);font-weight:500;letter-spacing:-.04em}._guestbookHeading_lnzle_7 p{margin-top:calc(var(--grid-unit) * 1);color:var(--secondary-color);font-size:13px;line-height:calc(var(--grid-unit) * 1)}._guestbookStats_lnzle_24{display:flex;flex-shrink:0;gap:calc(var(--grid-unit) * 1)}._guestbookStats_lnzle_24>span{display:flex;align-items:center;gap:6px;color:var(--secondary-color);font-size:11px;line-height:calc(var(--grid-unit) * 1);white-space:nowrap}._guestbookStats_lnzle_24 strong{color:var(--primary-color);font-family:var(--heading-font);font-weight:500;font-size:18px;line-height:calc(var(--grid-unit) * 1)}._guestbookGrid_lnzle_46{display:grid;grid-template-columns:minmax(0,1fr);gap:calc(var(--grid-unit) * 2)}._visitorWall_lnzle_52{min-width:0;width:calc(var(--content-width) + var(--content-offset) * 2);margin-left:calc(-1 * var(--content-offset) - var(--content-padding))}._visitorWall_lnzle_52 h4{flex-shrink:0;font-size:13px;font-weight:500;line-height:calc(var(--grid-unit) * 1);color:var(--secondary-color);white-space:nowrap}._visitorWallHeading_lnzle_66{display:flex;align-items:center;justify-content:space-between;gap:calc(var(--grid-unit) * 1);width:calc(var(--content-width) - var(--content-padding) * 2);margin:0 calc(var(--content-offset) + var(--content-padding)) calc(var(--grid-unit) * 1);height:calc(var(--grid-unit) * 1)}._galleryMessage_lnzle_76{padding:calc(var(--grid-unit) * 2) calc(var(--content-offset) + var(--content-padding));color:var(--secondary-color);font-size:13px;line-height:calc(var(--grid-unit) * 1)}._textButton_lnzle_83{display:inline-flex;height:calc(var(--grid-unit) * 2);align-items:center;background:transparent;color:var(--primary-color);border:0;font-size:12px;line-height:calc(var(--grid-unit) * 1);transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease}@media (hover: hover){._textButton_lnzle_83:not(:disabled):hover{transform:translate(-1px,-1px);box-shadow:inset 0 0 0 1px var(--primary-color),3px 3px 0 var(--primary-color)}}._textButton_lnzle_83:not(:disabled):active,._textButton_lnzle_83:not(:disabled)[data-touch-active]{transform:translate(-1px,-1px);box-shadow:inset 0 0 0 1px var(--primary-color),3px 3px 0 var(--primary-color)}._textButton_lnzle_83:focus-visible{outline:2px solid var(--primary-color);outline-offset:3px;transform:translate(-1px,-1px);box-shadow:inset 0 0 0 1px var(--primary-color),3px 3px 0 var(--primary-color)}html[data-mode=normal] ._textButton_lnzle_83:hover,html[data-mode=normal] ._textButton_lnzle_83:active,html[data-mode=normal] ._textButton_lnzle_83:focus-visible,html[data-mode=normal] ._textButton_lnzle_83[data-touch-active]{transform:none;box-shadow:inset 0 0 0 1px var(--border-color)}._textButton_lnzle_83+._textButton_lnzle_83{margin-left:12px}._galleryMessage_lnzle_76 ._textButton_lnzle_83{display:flex}html[data-mode=normal] ._visitorWall_lnzle_52{width:100%;margin-left:0}html[data-mode=normal] ._visitorWallHeading_lnzle_66{width:100%;margin-inline:0}html[data-mode=normal] ._galleryMessage_lnzle_76{padding-inline:0}@media (max-width: 760px){._guestbookStats_lnzle_24{gap:calc(var(--grid-unit) * .5)}._guestbookStats_lnzle_24>span{gap:4px;font-size:10px}}._contact_lt74f_1{width:var(--content-width, calc(100% - 48px) );margin-inline:var(--content-offset, 24px);position:relative}._contactContent_lt74f_7{padding:calc(var(--grid-unit) * 1) var(--content-padding)}._contactIntro_lt74f_11{display:flex;align-items:flex-end;justify-content:space-between;gap:calc(var(--grid-unit) * 1)}._contactCopy_lt74f_18{flex:1;min-width:0}._contactCopy_lt74f_18 h2{margin-top:calc(var(--grid-unit) * 1);font-size:20px;line-height:calc(var(--grid-unit) * 1);font-weight:500;letter-spacing:-.045em}._contactCopy_lt74f_18>p{margin-top:calc(var(--grid-unit) * 1);color:var(--secondary-color);font-size:13px;line-height:calc(var(--grid-unit) * 1)}._contactLinks_lt74f_36{display:flex;align-items:center;gap:calc(var(--grid-unit) * 1);margin-top:calc(var(--grid-unit) * 1)}._contactGithub_lt74f_43{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;gap:calc(var(--grid-unit) * .5);height:calc(var(--grid-unit) * 2);padding:0 calc(var(--grid-unit) * .5);box-shadow:inset 0 0 0 1px var(--border-color);font-size:12px;line-height:calc(var(--grid-unit) * 1);white-space:nowrap;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease}@media (hover: hover){._contactGithub_lt74f_43:not(:disabled):hover{transform:translate(-1px,-1px);box-shadow:inset 0 0 0 1px var(--primary-color),3px 3px 0 var(--primary-color)}}._contactGithub_lt74f_43:not(:disabled):active,._contactGithub_lt74f_43:not(:disabled)[data-touch-active]{transform:translate(-1px,-1px);box-shadow:inset 0 0 0 1px var(--primary-color),3px 3px 0 var(--primary-color)}._contactGithub_lt74f_43:focus-visible{outline:2px solid var(--primary-color);outline-offset:3px;transform:translate(-1px,-1px);box-shadow:inset 0 0 0 1px var(--primary-color),3px 3px 0 var(--primary-color)}html[data-mode=normal] ._contactGithub_lt74f_43:hover,html[data-mode=normal] ._contactGithub_lt74f_43:active,html[data-mode=normal] ._contactGithub_lt74f_43:focus-visible,html[data-mode=normal] ._contactGithub_lt74f_43[data-touch-active]{transform:none;box-shadow:inset 0 0 0 1px var(--border-color)}._contactGithub_lt74f_43>svg{flex-shrink:0}._contactGithub_lt74f_43>svg:first-child{width:16px;height:16px}._contactGithub_lt74f_43>svg:last-child{width:12px;height:12px}._emailLink_lt74f_89{display:inline-flex;align-items:center;justify-content:center;gap:calc(var(--grid-unit) * .5);padding:0 calc(var(--grid-unit) * 1);font-size:13px;font-weight:600;height:calc(var(--grid-unit) * 2);line-height:calc(var(--grid-unit) * 1);background:var(--brand-color);color:var(--on-primary);transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease}@media (hover: hover){._emailLink_lt74f_89:not(:disabled):hover{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--button-shadow-color)}}._emailLink_lt74f_89:not(:disabled):active,._emailLink_lt74f_89:not(:disabled)[data-touch-active]{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--button-shadow-color)}._emailLink_lt74f_89:focus-visible{outline:2px solid var(--primary-color);outline-offset:3px;transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--button-shadow-color)}html[data-mode=normal] ._emailLink_lt74f_89:hover,html[data-mode=normal] ._emailLink_lt74f_89:active,html[data-mode=normal] ._emailLink_lt74f_89:focus-visible,html[data-mode=normal] ._emailLink_lt74f_89[data-touch-active]{transform:none;box-shadow:none}._copyButton_lt74f_124{box-shadow:inset 0 0 0 1px var(--border-color);display:inline-flex;align-items:center;justify-content:center;width:calc(var(--grid-unit) * 2);height:calc(var(--grid-unit) * 2);padding:0;border:0;background:transparent;color:var(--text-color)}@media (hover: hover){._copyButton_lt74f_124:not(:disabled):hover{color:var(--primary-color)}}._copyButton_lt74f_124:focus-visible{color:var(--primary-color)}._copyButton_lt74f_124._copied_lt74f_144{color:var(--primary-color)}._copyIcon_lt74f_148{display:inline-flex;animation:_iconAppear_lt74f_1 .18s ease-out}@keyframes _iconAppear_lt74f_1{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@media (max-width: 900px){._contactIntro_lt74f_11{flex-wrap:wrap}}@media (max-width: 760px){._contactIntro_lt74f_11{flex-direction:column;align-items:flex-start}}html[data-mode=normal] ._contactContent_lt74f_7{padding:24px 0 32px}html[data-mode=normal] ._contactIntro_lt74f_11{gap:20px}html[data-mode=normal] ._contactCopy_lt74f_18 h2{margin-top:12px;font-size:24px;line-height:1.3;letter-spacing:-.03em}html[data-mode=normal] ._contactCopy_lt74f_18>p{margin-top:8px;font-size:14px;line-height:1.7}html[data-mode=normal] ._contactLinks_lt74f_36{flex-wrap:wrap;gap:12px;margin-top:16px}html[data-mode=normal] ._emailLink_lt74f_89,html[data-mode=normal] ._contactGithub_lt74f_43{height:auto;min-height:40px;padding:10px 14px;gap:8px;border-radius:4px;line-height:1.5}html[data-mode=normal] ._copyButton_lt74f_124{border-radius:4px}._main_1nbgz_1{--content-padding: calc(var(--grid-unit) * 2);position:relative;isolation:isolate;min-height:100vh}._container_1nbgz_8{position:relative;z-index:1}._skipLink_1nbgz_13{position:fixed;top:calc(var(--grid-unit) * 1);left:calc(var(--grid-unit) * 1);z-index:100;padding:12px 20px;background:var(--brand-color);color:var(--on-primary);transform:translateY(-200%)}._skipLink_1nbgz_13:focus{transform:translateY(0)}@media (max-width: 760px){._main_1nbgz_1{--content-padding: calc(var(--grid-unit) * 1)}}html[data-mode=normal] ._main_1nbgz_1{--content-padding: 0px}
