@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&family=Sora:wght@300;400;500;600&family=Lora:ital,wght@0,400;0,500;1,400&display=swap";footer[data-astro-cid-sz7xmlte]{border-top:.5px solid var(--border);padding:2.5rem 2rem 1.75rem}.footer-top[data-astro-cid-sz7xmlte]{display:grid;grid-template-columns:1.8fr 1fr 1fr;gap:2rem;margin-bottom:2rem}.footer-logo[data-astro-cid-sz7xmlte]{font-family:var(--font-mono);font-size:16px;color:var(--accent);margin-bottom:10px;letter-spacing:-.5px}.footer-logo[data-astro-cid-sz7xmlte] span[data-astro-cid-sz7xmlte]{color:var(--accent-dim)}.footer-desc[data-astro-cid-sz7xmlte]{font-size:12px;color:var(--text-faint);line-height:1.7;max-width:220px;margin-bottom:1.25rem}.footer-socials[data-astro-cid-sz7xmlte]{display:flex;gap:8px}.social-btn[data-astro-cid-sz7xmlte]{width:32px;height:32px;border-radius:8px;border:.5px solid var(--btn-contact-border);background:var(--card-bg);display:flex;align-items:center;justify-content:center;transition:border-color .15s}.social-btn[data-astro-cid-sz7xmlte]:hover{border-color:var(--accent-hover)}.social-btn[data-astro-cid-sz7xmlte] svg[data-astro-cid-sz7xmlte]{width:14px;height:14px;fill:var(--text-faint);color:var(--text-faint)}.footer-col-title[data-astro-cid-sz7xmlte]{font-size:10px;font-family:var(--font-mono);color:var(--text-weak);letter-spacing:1.5px;text-transform:uppercase;margin-bottom:12px}.footer-links[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;gap:8px}.footer-link[data-astro-cid-sz7xmlte]{font-size:13px;color:var(--text-faint);transition:color .15s;display:flex;align-items:center;gap:6px}.footer-link[data-astro-cid-sz7xmlte]:hover{color:var(--accent)}.footer-link-dot[data-astro-cid-sz7xmlte]{width:4px;height:4px;border-radius:50%;background:var(--accent-hover);flex-shrink:0}.footer-bottom[data-astro-cid-sz7xmlte]{display:flex;align-items:center;justify-content:space-between;padding-top:1.5rem;border-top:.5px solid var(--border-faint)}.footer-copy[data-astro-cid-sz7xmlte]{font-size:11px;color:var(--text-ghost);font-family:var(--font-mono)}.footer-copy[data-astro-cid-sz7xmlte] span[data-astro-cid-sz7xmlte]{color:var(--accent-dim)}.footer-made[data-astro-cid-sz7xmlte]{font-size:11px;color:var(--text-ghost);font-family:var(--font-mono);display:flex;align-items:center;gap:6px}.footer-made-heart[data-astro-cid-sz7xmlte]{color:var(--accent);font-size:12px}.footer-tag[data-astro-cid-sz7xmlte]{font-size:10px;font-family:var(--font-mono);padding:2px 8px;border-radius:3px;background:var(--accent-bg);border:.5px solid var(--accent-border);color:var(--accent-dim)}@media(max-width:768px){footer[data-astro-cid-sz7xmlte]{padding:1.5rem 1rem 1rem}.footer-top[data-astro-cid-sz7xmlte]{grid-template-columns:1fr;gap:1.5rem}.footer-bottom[data-astro-cid-sz7xmlte]{flex-direction:column;align-items:flex-start;gap:8px}}:root{--bg: #0d0f14;--bg-hover: #111318;--text: #e8eaf0;--text-bright: #f0f2f8;--text-dim: rgba(232, 234, 240, .5);--text-faint: rgba(232, 234, 240, .35);--text-muted: rgba(232, 234, 240, .3);--text-weak: rgba(232, 234, 240, .25);--text-ghost: rgba(232, 234, 240, .2);--text-body: rgba(232, 234, 240, .75);--code-text: #c9d1d9;--accent: #7eeea0;--accent-dim: rgba(126, 238, 160, .4);--accent-bg: rgba(126, 238, 160, .08);--accent-border: rgba(126, 238, 160, .2);--accent-hover: rgba(126, 238, 160, .3);--accent-strong-bg: rgba(126, 238, 160, .06);--accent-chip-bg: rgba(126, 238, 160, .05);--ios-color: #9ab4f5;--ios-bg: rgba(154, 180, 245, .06);--ios-border: rgba(154, 180, 245, .3);--ios-chip-bg: rgba(154, 180, 245, .08);--ios-chip-border: rgba(154, 180, 245, .25);--warn-color: rgba(250, 199, 117, .7);--warn-bg: rgba(250, 199, 117, .06);--warn-border: rgba(250, 199, 117, .2);--star-color: #f0c060;--red-color: rgba(255, 100, 80, .1);--purple-color: rgba(180, 120, 245, .1);--border: rgba(255, 255, 255, .08);--border-faint: rgba(255, 255, 255, .06);--border-subtle: rgba(255, 255, 255, .07);--card-bg: rgba(255, 255, 255, .03);--card-border: rgba(255, 255, 255, .07);--card-hover: rgba(126, 238, 160, .25);--chip-bg: rgba(255, 255, 255, .04);--chip-border: rgba(255, 255, 255, .1);--chip-md-border: rgba(255, 255, 255, .09);--chip-md-bg: rgba(255, 255, 255, .03);--chip-lo-border: rgba(255, 255, 255, .06);--btn-primary-text: #0d1a12;--btn-secondary-border: rgba(255, 255, 255, .12);--btn-secondary-text: rgba(232, 234, 240, .6);--btn-contact-border: rgba(255, 255, 255, .1);--btn-contact-text: rgba(232, 234, 240, .5);--code-bg: #0a0c10;--code-border: rgba(255, 255, 255, .08);--font-body: "Sora", sans-serif;--font-mono: "JetBrains Mono", monospace;--font-serif: "Lora", serif}[data-theme=light]{--bg: #f5f6f8;--bg-hover: #ecedf0;--text: #1a1d26;--text-bright: #0d0f14;--text-dim: rgba(26, 29, 38, .65);--text-faint: rgba(26, 29, 38, .5);--text-muted: rgba(26, 29, 38, .45);--text-weak: rgba(26, 29, 38, .35);--text-ghost: rgba(26, 29, 38, .25);--text-body: rgba(26, 29, 38, .75);--code-text: #24292e;--accent: #0d9448;--accent-dim: rgba(13, 148, 72, .55);--accent-bg: rgba(13, 148, 72, .1);--accent-border: rgba(13, 148, 72, .25);--accent-hover: rgba(13, 148, 72, .35);--accent-strong-bg: rgba(13, 148, 72, .07);--accent-chip-bg: rgba(13, 148, 72, .05);--ios-color: #2b5fb8;--ios-bg: rgba(43, 95, 184, .07);--ios-border: rgba(43, 95, 184, .3);--ios-chip-bg: rgba(43, 95, 184, .07);--ios-chip-border: rgba(43, 95, 184, .25);--warn-color: rgba(160, 100, 10, .9);--warn-bg: rgba(160, 100, 10, .07);--warn-border: rgba(160, 100, 10, .25);--star-color: #c49018;--red-color: rgba(220, 60, 40, .08);--purple-color: rgba(130, 80, 220, .08);--border: rgba(0, 0, 0, .12);--border-faint: rgba(0, 0, 0, .08);--border-subtle: rgba(0, 0, 0, .1);--card-bg: #ffffff;--card-border: rgba(0, 0, 0, .1);--card-hover: rgba(13, 148, 72, .25);--chip-bg: rgba(0, 0, 0, .05);--chip-border: rgba(0, 0, 0, .12);--chip-md-border: rgba(0, 0, 0, .1);--chip-md-bg: rgba(0, 0, 0, .04);--chip-lo-border: rgba(0, 0, 0, .08);--btn-primary-text: #ffffff;--btn-secondary-border: rgba(0, 0, 0, .18);--btn-secondary-text: rgba(26, 29, 38, .65);--btn-contact-border: rgba(0, 0, 0, .15);--btn-contact-text: rgba(26, 29, 38, .55);--code-bg: #eef0f4;--code-border: rgba(0, 0, 0, .1)}*{margin:0;padding:0;box-sizing:border-box}[data-theme=dark] .astro-code,[data-theme=dark] .astro-code span{color:var(--shiki-dark)!important}[data-theme=dark] .astro-code{background-color:var(--shiki-dark-bg)!important}html{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;overflow-x:clip}a{color:inherit;text-decoration:none}button{font-family:var(--font-body);cursor:pointer}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.nav[data-astro-cid-37fxchfa]{display:flex;align-items:center;justify-content:space-between;padding:0 2rem;height:56px;border-bottom:.5px solid var(--border);background:color-mix(in srgb,var(--bg) 95%,transparent);position:sticky;top:0;z-index:100}.logo[data-astro-cid-37fxchfa]{font-family:var(--font-mono);font-size:15px;color:var(--accent);letter-spacing:-.5px;text-decoration:none}.logo-dim[data-astro-cid-37fxchfa]{color:var(--accent-dim)}.cursor[data-astro-cid-37fxchfa]{display:inline-block;width:2px;height:14px;background:var(--accent);margin-left:2px;vertical-align:middle;animation:blink 1s step-end infinite}.navlinks[data-astro-cid-37fxchfa]{display:flex;gap:0;align-items:center}.navlink[data-astro-cid-37fxchfa]{font-size:13px;color:var(--text-dim);padding:0 14px;height:56px;display:flex;align-items:center;border-bottom:2px solid transparent;transition:all .15s}.navlink[data-astro-cid-37fxchfa]:hover{color:var(--text)}.navlink[data-astro-cid-37fxchfa].active{color:var(--accent);border-bottom-color:var(--accent)}.menu-btn[data-astro-cid-37fxchfa]{background:transparent;border:none;cursor:pointer;margin-left:8px;display:flex;align-items:center;color:var(--text-dim);transition:color .15s;line-height:1;padding:4px}.menu-btn[data-astro-cid-37fxchfa] .material-symbols-outlined[data-astro-cid-37fxchfa]{font-size:20px}.menu-btn[data-astro-cid-37fxchfa]:hover{color:var(--text)}.dialog-overlay[data-astro-cid-37fxchfa]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:200;backdrop-filter:blur(4px)}.dialog-overlay[data-astro-cid-37fxchfa][data-hidden]{display:none}.dialog[data-astro-cid-37fxchfa]{background:color-mix(in srgb,var(--bg) 92%,white);border:.5px solid var(--border);border-radius:10px;width:280px;max-width:90vw;box-shadow:0 8px 32px #0000004d}.dialog-header[data-astro-cid-37fxchfa]{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:.5px solid var(--border)}.dialog-title[data-astro-cid-37fxchfa]{font-family:var(--font-mono);font-size:10px;color:var(--text-dim);letter-spacing:1.5px;text-transform:uppercase}.dialog-close[data-astro-cid-37fxchfa]{background:none;border:none;color:var(--text-ghost);cursor:pointer;padding:2px;line-height:1;display:flex;align-items:center}.dialog-close[data-astro-cid-37fxchfa] .material-symbols-outlined[data-astro-cid-37fxchfa]{font-size:16px}.dialog-close[data-astro-cid-37fxchfa]:hover{color:var(--text)}.dialog-section[data-astro-cid-37fxchfa]{padding:12px 14px 16px}.dialog-section[data-astro-cid-37fxchfa]+.dialog-section[data-astro-cid-37fxchfa]{border-top:.5px solid var(--border-faint)}.dialog-section-title[data-astro-cid-37fxchfa]{font-family:var(--font-mono);font-size:10px;color:var(--text-dim);letter-spacing:1.5px;text-transform:uppercase;margin-bottom:8px}.dialog-options[data-astro-cid-37fxchfa]{display:flex;gap:6px}.dialog-option[data-astro-cid-37fxchfa]{flex:1;display:flex;align-items:center;gap:6px;padding:9px 12px;border-radius:6px;border:.5px solid var(--border);background:var(--card-bg);color:var(--text-dim);cursor:pointer;text-decoration:none;transition:border-color .15s,color .15s,background .15s;font-family:var(--font-body);font-size:12px}.dialog-option-full[data-astro-cid-37fxchfa]{width:100%}.dialog-option-hint[data-astro-cid-37fxchfa]{font-size:10px;color:var(--text-ghost);margin-left:auto}.dialog-option[data-astro-cid-37fxchfa].active .dialog-option-hint[data-astro-cid-37fxchfa]{color:var(--accent-dim)}.dialog-option[data-astro-cid-37fxchfa]:hover{border-color:var(--accent-hover);color:var(--text)}.dialog-option[data-astro-cid-37fxchfa].active{border-color:var(--accent);color:var(--accent);background:var(--accent-bg)}.dialog-option-label[data-astro-cid-37fxchfa]{font-weight:500}.dialog-option-code[data-astro-cid-37fxchfa]{font-family:var(--font-mono);font-size:10px;color:var(--text-ghost);margin-left:auto}.dialog-option[data-astro-cid-37fxchfa].active .dialog-option-code[data-astro-cid-37fxchfa]{color:var(--accent-dim)}.dialog-option-icon[data-astro-cid-37fxchfa].material-symbols-outlined{font-size:14px;line-height:1}.main[data-astro-cid-37fxchfa]{max-width:960px;margin:0 auto;flex:1;min-width:0;width:100%}.body[data-astro-cid-37fxchfa]{min-height:100vh;display:flex;flex-direction:column}@media(max-width:768px){.nav[data-astro-cid-37fxchfa]{padding:0 1rem}.navlink[data-astro-cid-37fxchfa]{padding:0 8px;font-size:12px}}
