@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/_astro/nunito-cyrillic-ext-wght-normal.D4X5GqEv.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/_astro/nunito-cyrillic-wght-normal.CY6AOgYE.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/_astro/nunito-vietnamese-wght-normal.U01xdrZh.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/_astro/nunito-latin-ext-wght-normal.CXYtwYOx.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/_astro/nunito-latin-wght-normal.BzFMHfZw.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:dark;--ink:#1d140e;--ink-2:#2e2018;--cream:#f6ead0;--muted:#c4ad8a;--brass:#d8a64c;--brass-dim:#d8a64c80;--brass-ink:#2a1808;--gold:#ffd84a;--parchment:#e8d6ae;--quill:#4a2c16;--violet:#b67cff;--meadow:#2d5a27;--wood-900:#170f0a;--wood-800:#20160f;--wood-700:#2a1d14;--wood-600:#34241a;--line:#3d2b1e;--line-strong:#5a4029;--shadow:0 10px 28px #00000073;--ease-soft:cubic-bezier(.2, .8, .2, 1);--font:"Nunito Variable", ui-rounded, system-ui, -apple-system, "Segoe UI", sans-serif;--wrap:1120px;--gutter:16px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:72px}body{background:var(--ink);color:var(--cream);font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;margin:0;font-size:16px;font-weight:600;line-height:1.55;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit}h1,h2,h3,p{margin:0}.pixel{image-rendering:pixelated;image-rendering:crisp-edges}.wrap{width:100%;max-width:calc(var(--wrap) + var(--gutter) * 2);padding:0 var(--gutter);margin:0 auto}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{z-index:100;position:absolute;top:-60px;left:8px}.skip:focus{top:8px}.px{letter-spacing:.01em;font-weight:800}.text-shadow{text-shadow:0 1px 2px #0009,0 0 12px #00000059}.btn{min-height:48px;font:inherit;text-align:center;color:var(--brass-ink);cursor:pointer;transition:transform 90ms var(--ease-soft), filter .12s var(--ease-soft);background:linear-gradient(#e7bb63,#c99640);border:1px solid #8a6024;border-radius:10px;justify-content:center;align-items:center;gap:.5em;padding:11px 22px;font-size:16px;font-weight:800;line-height:1.15;text-decoration:none;display:inline-flex;box-shadow:inset 0 1px #fff4d273,0 2px #5c3d14}.btn:hover{filter:brightness(1.06)}.btn:active{transform:translateY(1px);box-shadow:inset 0 1px #fff4d259}.btn:focus-visible,.focus:focus-visible{outline-offset:3px;outline:2px solid #fff0bee6}.btn.big{min-height:56px;padding:14px 28px;font-size:18px}.btn.small{min-height:40px;padding:8px 14px;font-size:14px}.btn.ghost{border-color:var(--line-strong);background:var(--wood-600);color:var(--cream);box-shadow:inset 0 1px 0 #ffe6be0f, 0 2px 0 var(--wood-900)}.btn.ghost:active{box-shadow:none}.btn[aria-disabled=true]{opacity:.5;filter:grayscale(.6);cursor:default;pointer-events:none}.btn svg{flex:none;width:20px;height:20px}.panel{border:1px solid var(--brass-dim);background:radial-gradient(circle at 9px 9px, var(--brass) 1.6px, transparent 2.2px), radial-gradient(circle at calc(100% - 9px) 9px, var(--brass) 1.6px, transparent 2.2px), radial-gradient(circle at 9px calc(100% - 9px), var(--brass) 1.6px, transparent 2.2px), radial-gradient(circle at calc(100% - 9px) calc(100% - 9px), var(--brass) 1.6px, transparent 2.2px), linear-gradient(180deg, var(--wood-700), var(--wood-800));box-shadow:inset 0 0 0 1px var(--wood-900), var(--shadow);border-radius:12px;padding:20px}.card{border:1px solid var(--line);background:#ffecc808;border-radius:10px}.parchment{background:var(--parchment);color:var(--quill);--cream:var(--quill);--muted:#82603e;border:1px solid #b8956a;border-radius:10px;box-shadow:0 10px 34px #00000073}.ribbon{letter-spacing:.08em;text-transform:uppercase;color:var(--cream);background:var(--wood-800);border:1px solid var(--brass-dim);border-radius:8px;align-items:center;padding:5px 16px;font-size:13px;font-weight:800;display:inline-flex}.label{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);align-items:center;gap:10px;font-size:12px;font-weight:700;display:flex}.label:after{content:"";background:var(--line);flex:1;height:1px}.chip{min-height:32px;color:var(--muted);border:1px solid var(--line-strong);background:#170f0a8c;border-radius:9999px;align-items:center;gap:6px;padding:4px 12px;font-size:13px;font-weight:700;display:inline-flex}.chip.on{color:var(--cream);border-color:var(--brass);background:#d8a64c24}.slot{border:1px solid var(--line);background:var(--wood-900);border-radius:9px;flex:none;place-items:center;display:grid;box-shadow:inset 0 1px 3px #00000080}.tick{border-bottom:2.5px solid;border-right:2.5px solid;width:6px;height:11px;margin:0 3px 3px 2px;display:inline-block;transform:rotate(45deg)}.section{padding:72px 0;position:relative}.section-head{flex-direction:column;align-items:flex-start;gap:12px;max-width:720px;margin-bottom:32px;display:flex}.section-head h2{font-size:clamp(26px,4.2vw,40px);font-weight:800;line-height:1.15}.section-head p{color:var(--muted);font-size:17px}.center{text-align:center;align-items:center;margin-left:auto;margin-right:auto}.divider{background:linear-gradient(90deg, transparent, var(--line-strong) 20%, var(--line-strong) 80%, transparent);height:1px;position:relative}.divider:after{content:"";background:var(--brass);width:7px;height:7px;box-shadow:0 0 0 4px var(--ink);border-radius:9999px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sprite{width:calc(var(--w) * var(--s) * 1px);height:calc(var(--h) * var(--s) * 1px);background-repeat:no-repeat;background-size:calc(var(--w) * var(--n) * var(--s) * 1px) auto;background-position:0 calc(var(--row) * var(--h) * var(--s) * -1px);image-rendering:pixelated;animation:sprite-run calc(var(--n) / var(--fps) * 1s) steps(var(--n)) infinite}@keyframes sprite-run{to{background-position-x:calc(var(--w) * var(--n) * var(--s) * -1px)}}@keyframes spark-up{0%{opacity:0;transform:translate(0)scale(1)}10%{opacity:1}to{transform:translate(var(--drift,8px), -110px) scale(.3);opacity:0}}@keyframes glow-pulse{0%,to{opacity:.4}50%{opacity:.9}}@keyframes twinkle{0%,to{opacity:.25}50%{opacity:1}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes walk-across{0%{transform:translate(-140px)}to{transform:translate(calc(100vw + 40px))}}@keyframes rise-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.reveal{animation:rise-in .6s var(--ease-soft) both}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.bar[data-astro-cid-hkbrpulz]{z-index:50;-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--line-strong);padding-top:env(safe-area-inset-top,0px);background:#170f0adb;position:sticky;top:0}.bar-row[data-astro-cid-hkbrpulz]{align-items:center;gap:16px;min-height:60px;display:flex}.brand[data-astro-cid-hkbrpulz]{border-radius:6px;align-items:center;gap:10px;min-width:0;font-size:17px;text-decoration:none;display:inline-flex}.brand[data-astro-cid-hkbrpulz] span[data-astro-cid-hkbrpulz]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.bar-nav[data-astro-cid-hkbrpulz]{gap:4px;margin-left:12px;display:none}.bar-nav[data-astro-cid-hkbrpulz] a[data-astro-cid-hkbrpulz]{color:var(--muted);border-bottom:2px solid #0000;padding:8px 10px;font-size:14px;font-weight:700;text-decoration:none}.bar-nav[data-astro-cid-hkbrpulz] a[data-astro-cid-hkbrpulz]:hover{color:var(--cream);border-bottom-color:var(--brass)}.bar-end[data-astro-cid-hkbrpulz]{flex:none;align-items:center;gap:10px;margin-left:auto;display:flex}.langs[data-astro-cid-hkbrpulz]{border:1px solid var(--line-strong);border-radius:9px;display:flex;overflow:hidden}.langs[data-astro-cid-hkbrpulz] a[data-astro-cid-hkbrpulz]{min-width:40px;min-height:40px;color:var(--muted);place-items:center;padding:0 8px;font-size:13px;font-weight:800;text-decoration:none;display:grid}.langs[data-astro-cid-hkbrpulz] a[data-astro-cid-hkbrpulz]+a[data-astro-cid-hkbrpulz]{border-left:1px solid var(--line-strong)}.langs[data-astro-cid-hkbrpulz] a[data-astro-cid-hkbrpulz][aria-current=page]{color:var(--brass-ink);background:linear-gradient(#e7bb63,#c99640)}.langs[data-astro-cid-hkbrpulz] a[data-astro-cid-hkbrpulz]:not([aria-current]):hover{color:var(--cream);background:var(--wood-600)}.lang-hint[data-astro-cid-hkbrpulz]{text-align:center;color:var(--gold);background:var(--wood-800);border-top:1px solid var(--line);padding:6px 16px;font-size:14px;font-weight:700;text-decoration:none;display:block}.lang-hint[data-astro-cid-hkbrpulz][hidden]{display:none}@media (width>=900px){.bar-nav[data-astro-cid-hkbrpulz]{display:flex}}@media (width<=420px){.brand[data-astro-cid-hkbrpulz] span[data-astro-cid-hkbrpulz]{font-size:15px}}@media (width<=360px){.brand[data-astro-cid-hkbrpulz] span[data-astro-cid-hkbrpulz]{display:none}}.foot[data-astro-cid-hkbrpulz]{border-top:1px solid var(--line-strong);background:linear-gradient(180deg, var(--wood-800), var(--wood-900));padding:48px 0 calc(28px + env(safe-area-inset-bottom,0px));font-size:15px}.foot-grid[data-astro-cid-hkbrpulz]{grid-template-columns:1fr;gap:32px;display:grid}@media (width>=640px){.foot-grid[data-astro-cid-hkbrpulz]{grid-template-columns:1fr 1fr}}@media (width>=960px){.foot-grid[data-astro-cid-hkbrpulz]{grid-template-columns:1.6fr 1fr 1fr 1fr}}.foot-brand[data-astro-cid-hkbrpulz] p[data-astro-cid-hkbrpulz]{color:var(--muted);max-width:32ch;margin-top:12px}.foot[data-astro-cid-hkbrpulz] h2[data-astro-cid-hkbrpulz]{margin-bottom:12px}.foot[data-astro-cid-hkbrpulz] ul[data-astro-cid-hkbrpulz]{gap:8px;margin:0;padding:0;list-style:none;display:grid}.foot[data-astro-cid-hkbrpulz] ul[data-astro-cid-hkbrpulz] a[data-astro-cid-hkbrpulz]{color:var(--cream);overflow-wrap:anywhere;text-decoration:none}.foot[data-astro-cid-hkbrpulz] ul[data-astro-cid-hkbrpulz] a[data-astro-cid-hkbrpulz]:hover{color:var(--gold);text-underline-offset:3px;text-decoration:underline}.muted[data-astro-cid-hkbrpulz]{color:var(--muted);font-size:13px}.socials[data-astro-cid-hkbrpulz]{gap:8px;margin-top:16px;display:flex}.socials[data-astro-cid-hkbrpulz] a[data-astro-cid-hkbrpulz]{background:var(--wood-700);border:1px solid var(--brass-dim);width:44px;height:44px;color:var(--cream);border-radius:9999px;place-items:center;display:grid}.socials[data-astro-cid-hkbrpulz] a[data-astro-cid-hkbrpulz]:hover{color:var(--gold)}.socials[data-astro-cid-hkbrpulz] svg{width:20px;height:20px}.foot-copy[data-astro-cid-hkbrpulz]{border-top:1px solid var(--line);color:var(--muted);margin-top:40px;padding-top:20px;font-size:14px}
