@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/jetbrains-mono-latin-400-normal.V6pRDFza.woff2) format("woff2"),url(/_astro/jetbrains-mono-latin-400-normal.6-qcROiO.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/jetbrains-mono-latin-500-normal.BWZEU5yA.woff2) format("woff2"),url(/_astro/jetbrains-mono-latin-500-normal.CJOVTJB7.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/jetbrains-mono-latin-600-normal.C8RAYTDA.woff2) format("woff2"),url(/_astro/jetbrains-mono-latin-600-normal.BfsvjouI.woff) format("woff")}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-wght-normal.Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@layer vh-base,vh-part;@property --spin{syntax: "<angle>"; initial-value: 0deg; inherits: false;}@layer vh-base{:root{color-scheme:dark;--bg: #0d0c0b;--bg-elev: #15130f;--bg-raised: #1c1a16;--bg-inset: #080706;--fg: #f5efe2;--fg-muted: #a39a88;--fg-quiet: #6e6759;--fg-inverse: #0d0c0b;--border: #252220;--border-strong: #3a3530;--border-hot: #ff5733;--accent: #ff5733;--accent-hover: #ff7a5c;--accent-ink: #d33f1e;--accent-wash: rgba(255, 87, 51, .1);--signal: #b4ff39;--signal-dim: #7fb81f;--radius: 4px;--radius-lg: 8px;--radius-pill: 999px;--maxw: 1400px;--maxw-text: 68ch;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 20px 40px -20px rgba(0, 0, 0, .7), 0 4px 10px -4px rgba(0, 0, 0, .4);--shadow-lg: 0 40px 80px -30px rgba(0, 0, 0, .85), 0 16px 32px -20px rgba(0, 0, 0, .5);--glow: 0 0 0 1px var(--border-strong), 0 0 24px -2px rgba(255, 87, 51, .15);--font-sans: "Inter Variable", "Hiragino Kaku Gothic ProN", "Yu Gothic Medium", "Yu Gothic", "Meiryo", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-jp: "Hiragino Kaku Gothic ProN", "Yu Gothic Medium", "Yu Gothic", "Meiryo", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--font-display: var(--font-sans);--font-body: var(--font-sans);--track-wide: .14em;--track-caps: .08em;--ease: cubic-bezier(.2, .8, .2, 1);--ease-bounce: cubic-bezier(.34, 1.56, .64, 1)}*,*:before,*:after{box-sizing:border-box}[hidden]{display:none!important}html{background:var(--bg);color:var(--fg);scrollbar-color:var(--border-strong) var(--bg);scrollbar-width:thin}html,body{margin:0;padding:0}body{font-family:var(--font-body);font-size:16px;font-weight:400;line-height:1.75;min-height:100dvh;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:"palt","kern","ss01","cv11";font-variation-settings:"opsz" 16;position:relative;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.96  0 0 0 0 0.94  0 0 0 0 0.89  0 0 0 0.7 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");opacity:.04;mix-blend-mode:overlay}body:after{content:"";position:fixed;top:-40vh;right:-20vw;width:80vw;height:80vh;background:radial-gradient(closest-side,rgba(255,87,51,.22),transparent 70%);pointer-events:none;z-index:-1;filter:blur(60px)}img,svg,video,iframe{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration-color:color-mix(in srgb,var(--accent) 60%,transparent);text-underline-offset:3px;text-decoration-thickness:1px;transition:color .2s var(--ease),text-decoration-color .2s var(--ease)}a:hover{color:var(--accent);text-decoration-color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}::selection{background:var(--accent);color:var(--fg-inverse)}.skip-link{position:absolute;top:0;left:0;padding:.7rem 1.1rem;background:var(--accent);color:var(--fg-inverse);font-weight:700;text-decoration:none;border-radius:0 0 4px;transform:translateY(-120%);transition:transform .2s var(--ease);z-index:10000}.skip-link:focus{transform:translateY(0);color:var(--fg-inverse)}.container{max-width:var(--maxw);margin-inline:auto;padding-inline:clamp(1.25rem,4vw,3rem)}main{padding-block:clamp(1.5rem,3vw,2.5rem) clamp(4rem,8vw,7rem);scroll-margin-top:1rem}.site-header{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--bg) 78%,transparent);backdrop-filter:saturate(140%) blur(16px);-webkit-backdrop-filter:saturate(140%) blur(16px);border-bottom:1px solid var(--border)}.site-header .inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:.85rem}.brand{display:inline-flex;align-items:center;gap:.7rem;text-decoration:none;color:inherit;line-height:1}.brand-mark{display:inline-flex;align-items:center;gap:.5rem;position:relative}.brand-mark:before{content:"";width:8px;height:8px;border-radius:999px;background:var(--signal);box-shadow:0 0 8px var(--signal);animation:brand-pulse 2.4s ease-in-out infinite}@keyframes brand-pulse{0%,to{box-shadow:0 0 6px var(--signal),0 0 0 0 var(--signal);opacity:1}50%{box-shadow:0 0 14px var(--signal),0 0 0 3px #b4ff3926;opacity:.85}}.brand-name{font-family:var(--font-display);font-weight:800;font-size:1.15rem;line-height:1;letter-spacing:-.02em;font-variation-settings:"opsz" 32}.brand-tag{font-family:var(--font-mono);font-size:.7rem;letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--fg-muted);padding-left:.75rem;border-left:1px solid var(--border-strong)}@media(max-width:700px){.brand-tag{display:none}}.brand:hover .brand-name{color:var(--accent)}.header-right{display:inline-flex;align-items:center;gap:.6rem}.header-nav-link{font-size:.84rem;line-height:1.7;color:var(--fg-muted);text-decoration:none;padding:.3rem .6rem;border:1px solid var(--border);border-radius:var(--radius-pill);white-space:nowrap;transition:all .2s var(--ease)}.header-nav-link:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-wash)}.header-right .build-id{font-family:var(--font-mono);font-size:.7rem;letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--fg-quiet)}@media(max-width:540px){.header-right .build-id{display:none}}footer.site-footer{margin-top:6rem;border-top:1px solid var(--border);position:relative}footer.site-footer:before{content:"";position:absolute;top:-2px;left:0;width:80px;height:2px;background:var(--accent)}footer.site-footer .colophon{display:grid;gap:2rem;grid-template-columns:1fr;padding-block:3rem 2rem}@media(min-width:760px){footer.site-footer .colophon{grid-template-columns:2fr 1fr 1fr 1fr;gap:2.5rem}}footer.site-footer .cap{font-family:var(--font-mono);font-size:.68rem;letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--fg-quiet);margin:0 0 .75rem}footer.site-footer .footer-lede{font-family:var(--font-display);font-weight:700;font-size:1.2rem;line-height:1.5;margin:0 0 .6rem;letter-spacing:-.01em}footer.site-footer p{margin:0;color:var(--fg-muted);font-size:.92rem;line-height:1.7}footer.site-footer ul.footer-nav{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem;font-size:.92rem}footer.site-footer ul.footer-nav a{text-decoration:none;color:var(--fg);display:inline-flex;align-items:center;gap:.4rem;transition:color .2s var(--ease)}footer.site-footer ul.footer-nav a:before{content:"→";font-family:var(--font-mono);color:var(--fg-quiet);transition:transform .2s var(--ease),color .2s var(--ease)}footer.site-footer ul.footer-nav a:hover{color:var(--accent)}footer.site-footer ul.footer-nav a:hover:before{transform:translate(3px);color:var(--accent)}footer.site-footer .credit{border-top:1px solid var(--border);padding-block:1.25rem 1.5rem;font-family:var(--font-mono);font-size:.72rem;letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--fg-quiet);display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.5rem}footer.site-footer .credit a{color:var(--fg-muted);text-decoration:none}footer.site-footer .credit a:hover{color:var(--accent)}.eyebrow{font-family:var(--font-mono);font-size:.72rem;font-weight:500;letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--accent);margin:0 0 1.25rem;display:inline-flex;align-items:center;gap:.65rem;line-height:1}.eyebrow:before{content:"";width:28px;height:1px;background:var(--accent);box-shadow:0 0 8px #ff573366}.section{margin-block:clamp(3.5rem,6vw,5.5rem)}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem 2rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border);flex-wrap:wrap}.section-head h2{margin:0;font-family:var(--font-display);font-weight:700;font-size:clamp(1.6rem,2.5vw,2.2rem);line-height:1.4;letter-spacing:0;font-variation-settings:"opsz" 48}.section-head .section-meta{font-family:var(--font-mono);font-size:.72rem;letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--fg-quiet);font-variant-numeric:tabular-nums;white-space:nowrap;padding-bottom:.35rem}.section>h2:not(.section-head h2){font-family:var(--font-display);font-weight:700;font-size:clamp(1.5rem,2.3vw,2rem);line-height:1.3;letter-spacing:0;margin:0 0 1.5rem;scroll-margin-top:5rem}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}body:before{display:none}.ticker-track{animation:none}.hero h1{animation:none;font-variation-settings:"opsz" 144,"wght" 800}}::view-transition-old(root),::view-transition-new(root){animation-duration:.35s;animation-timing-function:var(--ease)}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}.search-trigger[data-astro-cid-otpdt6jm]{display:inline-flex;align-items:center;gap:.45rem;height:34px;padding:0 .85rem;background:var(--bg-elev);border:1px solid var(--border);border-radius:999px;color:var(--fg-muted);cursor:pointer;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;transition:all .2s var(--ease)}.search-trigger[data-astro-cid-otpdt6jm]:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-wash)}.search-kbd[data-astro-cid-otpdt6jm]{font-family:var(--font-mono);font-size:.68rem;color:var(--fg-quiet);padding:.08rem .4rem;background:var(--bg-inset);border:1px solid var(--border);border-radius:4px}.search-trigger[data-astro-cid-otpdt6jm]:hover .search-kbd[data-astro-cid-otpdt6jm]{color:var(--accent);border-color:var(--accent)}.search-modal[data-astro-cid-otpdt6jm]{border:0;padding:0;background:transparent;width:min(720px,94vw);max-height:82vh;margin:8vh auto}.search-modal[data-astro-cid-otpdt6jm]::backdrop{background:color-mix(in srgb,#000 45%,transparent);backdrop-filter:blur(4px)}.search-modal[data-astro-cid-otpdt6jm][open]{display:flex;flex-direction:column;background:var(--bg-elev);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden}.search-close-form[data-astro-cid-otpdt6jm]{position:absolute;top:10px;right:10px;z-index:2;margin:0}.search-close[data-astro-cid-otpdt6jm]{width:30px;height:30px;border-radius:999px;border:1px solid var(--border);background:var(--bg-inset);color:var(--fg-muted);cursor:pointer;font-size:.9rem;transition:all .2s var(--ease)}.search-close[data-astro-cid-otpdt6jm]:hover{color:var(--accent);border-color:var(--accent)}#pagefind-ui-root[data-astro-cid-otpdt6jm]{padding:2.5rem 1.25rem 1.25rem;overflow:auto;--pagefind-ui-primary: var(--accent);--pagefind-ui-text: var(--fg);--pagefind-ui-background: var(--bg-elev);--pagefind-ui-border: var(--border);--pagefind-ui-tag: var(--accent-wash);--pagefind-ui-border-width: 1px;--pagefind-ui-border-radius: 10px;--pagefind-ui-image-border-radius: 8px;--pagefind-ui-image-box-ratio: 3 / 2;--pagefind-ui-font: var(--font-sans)}@media(max-width:720px){.search-kbd[data-astro-cid-otpdt6jm]{display:none}.search-trigger[data-astro-cid-otpdt6jm]{padding:0 .5rem;width:34px;justify-content:center}}.btn-random[data-astro-cid-ezactete]{display:inline-flex;align-items:center;gap:.5rem;height:34px;padding:0 .85rem;background:var(--accent-wash);border:1px solid color-mix(in srgb,var(--accent) 38%,transparent);border-radius:999px;color:var(--accent);cursor:pointer;font-family:var(--font-mono);font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;transition:all .2s var(--ease, cubic-bezier(.2, .8, .2, 1))}.btn-random[data-astro-cid-ezactete]:hover{background:var(--accent);color:var(--fg-inverse);border-color:var(--accent);box-shadow:0 6px 16px -6px #ff573373}.btn-random[data-astro-cid-ezactete] .dice[data-astro-cid-ezactete]{transition:transform .25s var(--ease, cubic-bezier(.2, .8, .2, 1));flex:none}.btn-random[data-astro-cid-ezactete]:hover .dice[data-astro-cid-ezactete]{transform:rotate(18deg)}.btn-random[data-astro-cid-ezactete].is-rolling .dice[data-astro-cid-ezactete]{animation:btn-random-roll .45s cubic-bezier(.34,1.56,.64,1)}.btn-random[data-astro-cid-ezactete]:active{transform:translateY(1px)}@keyframes btn-random-roll{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.25)}to{transform:rotate(360deg) scale(1)}}@media(max-width:640px){.btn-random[data-astro-cid-ezactete] .lbl[data-astro-cid-ezactete]{display:none}.btn-random[data-astro-cid-ezactete]{padding:0 .55rem;width:34px;justify-content:center}}.btn-random[data-astro-cid-ezactete].as-btn{height:auto;padding:.6rem 1.1rem;background:var(--bg-elev);border-color:var(--border-strong);color:var(--fg);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;border-radius:999px}.btn-random[data-astro-cid-ezactete].as-btn:hover{background:var(--accent);color:var(--fg-inverse);border-color:var(--accent)}.btn-random[data-astro-cid-ezactete].as-btn .lbl[data-astro-cid-ezactete]{display:inline}.random-hero[data-astro-cid-ezactete]{display:inline-flex;align-items:center;gap:1rem;margin:1.5rem 0 0;padding:.4rem .5rem .4rem 1.1rem;border:1px solid var(--border);border-radius:999px;background:var(--bg-elev);max-width:100%}.random-hero-cap[data-astro-cid-ezactete]{margin:0;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-muted);flex:none}.btn-random[data-astro-cid-ezactete].as-hero{height:auto;padding:.65rem 1.15rem;background:var(--accent);border:0;color:var(--fg-inverse);font-family:inherit;font-size:.92rem;letter-spacing:0;text-transform:none;font-weight:700;border-radius:999px;box-shadow:0 6px 18px -8px #ff573380}.btn-random[data-astro-cid-ezactete].as-hero:hover{background:var(--accent-hover);border-color:transparent;color:var(--fg-inverse);transform:translateY(-1px);box-shadow:0 12px 24px -10px #ff573399}.btn-random[data-astro-cid-ezactete].as-hero .arr[data-astro-cid-ezactete]{margin-left:.15rem;transition:transform .2s var(--ease, cubic-bezier(.2, .8, .2, 1))}.btn-random[data-astro-cid-ezactete].as-hero:hover .arr[data-astro-cid-ezactete]{transform:translate(3px)}.btn-random[data-astro-cid-ezactete].as-hero .lbl[data-astro-cid-ezactete]{display:inline}@media(max-width:540px){.random-hero[data-astro-cid-ezactete]{flex-direction:column;align-items:stretch;gap:.5rem;padding:.85rem;border-radius:16px}.random-hero-cap[data-astro-cid-ezactete]{text-align:center}.btn-random[data-astro-cid-ezactete].as-hero{justify-content:center}}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media(prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}}
