:root{--term-bg: #0c0c0c;--term-bg-raised: #131313;--term-fg: #e4e4e4;--term-fg-dim: #8a8a8a;--term-accent: #d8d8d8;--term-accent-dim: #5a5a5a;--term-red: #ff3333;--term-red-glow: rgba(255, 51, 51, .12);--term-border: #2e2e2e;--term-error: #ff5f56;--term-radius: 4px;--term-ease: cubic-bezier(.2, .8, .2, 1);--term-font: "Cascadia Code", "Fira Code", "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}html{color-scheme:dark;scroll-behavior:smooth;background:var(--term-bg)}@view-transition{navigation:auto}.dot-field{position:fixed;inset:0;z-index:-1;pointer-events:none}.dot-field canvas{position:absolute;inset:0;width:100%;height:100%}.logo-bg{position:fixed;inset:0;z-index:-1;display:flex;align-items:center;justify-content:center;pointer-events:none}.logo-bg canvas{width:min(60vw,520px);height:min(60vw,520px);opacity:.14}[hidden]{display:none!important}body{margin:0;min-height:100vh;display:flex;flex-direction:column;font-family:var(--term-font);line-height:1.6;color:var(--term-fg);background:transparent;text-shadow:0 0 1px rgba(255,255,255,.12);-webkit-font-smoothing:antialiased}::selection{background:var(--term-red);color:var(--term-bg)}a{color:var(--term-accent);text-underline-offset:3px;transition:color .15s var(--term-ease)}a:hover{color:var(--term-red)}:focus-visible{outline:2px solid var(--term-red);outline-offset:2px}h1,h2,h3{line-height:1.25;letter-spacing:.02em}button,input,textarea{font-family:var(--term-font)}button{background:transparent;color:var(--term-accent);border:1px solid var(--term-accent-dim);border-radius:var(--term-radius);padding:.45rem .9rem;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;font-size:.85em;transition:background .18s var(--term-ease),color .18s var(--term-ease),border-color .18s var(--term-ease)}button:hover{background:var(--term-red-glow);border-color:var(--term-red);color:var(--term-red)}button:active{transform:translateY(1px)}input,textarea{background:var(--term-bg-raised);color:var(--term-fg);border:1px solid var(--term-border);border-radius:var(--term-radius);padding:.55rem .65rem;font-size:16px;max-width:100%;transition:border-color .18s var(--term-ease),box-shadow .18s var(--term-ease)}input:focus,textarea:focus{outline:none;border-color:var(--term-red);box-shadow:0 0 0 3px var(--term-red-glow)}::placeholder{color:var(--term-fg-dim);opacity:.7}*{overflow-wrap:break-word}img,svg,iframe{max-width:100%}.scanlines{position:fixed;inset:0;pointer-events:none;z-index:999;background:repeating-linear-gradient(to bottom,#0000,#00000026,#0000 2px);mix-blend-mode:multiply;opacity:.35}.cursor{color:var(--term-red);animation:blink 1s steps(1) infinite}@keyframes blink{50%{opacity:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}header[data-astro-cid-5hce7sga]{position:sticky;top:0;z-index:100;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:1rem 2rem;border-bottom:1px solid var(--term-border);background:#0c0c0cd9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.brand[data-astro-cid-5hce7sga]{display:inline-flex;align-items:center;gap:.6rem;font-weight:700;text-decoration:none;color:var(--term-accent);letter-spacing:.05em}.brand[data-astro-cid-5hce7sga] img[data-astro-cid-5hce7sga]{display:block;transition:transform .3s var(--term-ease)}.brand[data-astro-cid-5hce7sga]:hover img[data-astro-cid-5hce7sga]{transform:rotate(45deg)}.brand[data-astro-cid-5hce7sga]:hover{color:var(--term-fg)}nav[data-astro-cid-5hce7sga]{display:flex;flex-wrap:wrap}nav[data-astro-cid-5hce7sga] a[data-astro-cid-5hce7sga]{position:relative;margin-left:1.5rem;text-decoration:none;color:var(--term-fg-dim);white-space:nowrap}nav[data-astro-cid-5hce7sga] a[data-astro-cid-5hce7sga]:after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:1px;background:var(--term-red);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--term-ease)}nav[data-astro-cid-5hce7sga] a[data-astro-cid-5hce7sga]:hover,nav[data-astro-cid-5hce7sga] a[data-astro-cid-5hce7sga].active{color:var(--term-red)}nav[data-astro-cid-5hce7sga] a[data-astro-cid-5hce7sga]:hover:after,nav[data-astro-cid-5hce7sga] a[data-astro-cid-5hce7sga].active:after{transform:scaleX(1)}main[data-astro-cid-5hce7sga]{flex:1;width:100%;box-sizing:border-box;padding:2.5rem 2rem 3rem;max-width:720px;margin:0 auto;animation:fade-up .35s var(--term-ease) backwards}main[data-astro-cid-5hce7sga].wide{max-width:960px}@keyframes fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(max-width:600px){header[data-astro-cid-5hce7sga]{padding:1rem}nav[data-astro-cid-5hce7sga] a[data-astro-cid-5hce7sga]{margin-left:0;margin-right:1rem}main[data-astro-cid-5hce7sga]{padding:1rem}}footer[data-astro-cid-5hce7sga]{text-align:center;padding:1.5rem;color:var(--term-fg-dim);font-size:.8em;letter-spacing:.05em;border-top:1px solid var(--term-border)}#dotfield-panel[data-astro-cid-5hce7sga]{position:fixed;right:1rem;bottom:1rem;z-index:1000;font-size:.75rem}#dotfield-panel-body[data-astro-cid-5hce7sga]{margin-top:.5rem;width:220px;max-height:70vh;overflow-y:auto;display:flex;flex-direction:column;gap:.4rem;background:var(--term-bg-raised);border:1px solid var(--term-border);border-radius:var(--term-radius);padding:.75rem}#dotfield-panel-body[data-astro-cid-5hce7sga] label[data-astro-cid-5hce7sga]{display:flex;flex-direction:column;gap:.15rem;color:var(--term-fg-dim);font-size:.7rem}#dotfield-panel-body[data-astro-cid-5hce7sga] input[data-astro-cid-5hce7sga][type=text]{font-size:.75rem;padding:.2rem .35rem}.dotfield-actions[data-astro-cid-5hce7sga]{display:flex;gap:.4rem;margin-top:.25rem}.dotfield-actions[data-astro-cid-5hce7sga] button[data-astro-cid-5hce7sga]{flex:1;font-size:.7rem;padding:.3rem .4rem}#df-output[data-astro-cid-5hce7sga]{white-space:pre-wrap;font-size:.65rem;background:var(--term-bg);border:1px solid var(--term-border);border-radius:var(--term-radius);padding:.5rem;margin:.5rem 0 0;max-height:150px;overflow:auto}
