.header[data-astro-cid-3ef6ksr2]{--header-overlay: rgba(10, 10, 15, .75);position:sticky;top:0;z-index:var(--z-sticky);height:var(--header-height);display:flex;align-items:center;background:#fff0;border-bottom:1px solid var(--glass-border-transparent);box-shadow:0 8px 32px #0000}[data-theme=light] .header[data-astro-cid-3ef6ksr2]{--header-overlay: rgba(255, 255, 255, .75)}.header[data-astro-cid-3ef6ksr2].ready{transition:all var(--transition-base)}.header[data-astro-cid-3ef6ksr2].scrolled{background:var(--header-overlay);backdrop-filter:blur(var(--glass-blur-heavy));-webkit-backdrop-filter:blur(var(--glass-blur-heavy));border-bottom:1px solid var(--glass-border-color);box-shadow:var(--glass-shadow)}.header-inner[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:space-between;width:100%;height:100%}.header-logo[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:var(--space-2);text-decoration:none;color:var(--color-text-primary);font-weight:700;font-size:var(--font-size-lg);letter-spacing:var(--letter-spacing-tight);transition:opacity var(--transition-fast)}.header-logo[data-astro-cid-3ef6ksr2]:hover{opacity:.8;color:var(--color-text-primary)}.logo-icon[data-astro-cid-3ef6ksr2]{width:24px;height:24px}.nav-list[data-astro-cid-3ef6ksr2]{display:flex;list-style:none;gap:var(--space-1);padding:0;margin:0}.nav-link[data-astro-cid-3ef6ksr2]{display:block;padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary);text-decoration:none;border-radius:var(--glass-radius-sm);transition:all var(--transition-fast)}.nav-link[data-astro-cid-3ef6ksr2]:hover{color:var(--color-text-primary);background:var(--glass-bg)}.nav-link[data-astro-cid-3ef6ksr2].active{color:var(--color-accent);background:#7c6aff14}.header-actions[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:var(--space-2)}.search-trigger[data-astro-cid-3ef6ksr2]{padding:var(--space-2) var(--space-3);gap:var(--space-2)}.search-shortcut[data-astro-cid-3ef6ksr2]{font-size:var(--font-size-xs);color:var(--color-text-tertiary);background:var(--glass-bg);padding:1px 6px;border-radius:4px;border:1px solid var(--color-border)}.theme-toggle[data-astro-cid-3ef6ksr2]{padding:var(--space-2);width:36px;height:36px}[data-theme=dark] .icon-sun[data-astro-cid-3ef6ksr2]{display:block}[data-theme=dark] .icon-moon[data-astro-cid-3ef6ksr2],[data-theme=light] .icon-sun[data-astro-cid-3ef6ksr2]{display:none}[data-theme=light] .icon-moon[data-astro-cid-3ef6ksr2]{display:block}:root:not([data-theme]) .icon-sun[data-astro-cid-3ef6ksr2]{display:block}:root:not([data-theme]) .icon-moon[data-astro-cid-3ef6ksr2]{display:none}.mobile-menu-btn[data-astro-cid-3ef6ksr2]{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:36px;height:36px;padding:var(--space-2);background:none;border:none;cursor:pointer}.hamburger-line[data-astro-cid-3ef6ksr2]{width:18px;height:2px;background:var(--color-text-primary);border-radius:2px;transition:all var(--transition-base)}.mobile-menu-btn[data-astro-cid-3ef6ksr2].open .hamburger-line[data-astro-cid-3ef6ksr2]:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.mobile-menu-btn[data-astro-cid-3ef6ksr2].open .hamburger-line[data-astro-cid-3ef6ksr2]:nth-child(2){opacity:0}.mobile-menu-btn[data-astro-cid-3ef6ksr2].open .hamburger-line[data-astro-cid-3ef6ksr2]:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.mobile-nav[data-astro-cid-3ef6ksr2]{display:none;position:absolute;top:var(--header-height);left:0;right:0;background:var(--header-overlay);backdrop-filter:blur(var(--glass-blur-heavy));-webkit-backdrop-filter:blur(var(--glass-blur-heavy));border-bottom:1px solid var(--glass-border-color);padding:var(--space-4);animation:slide-down var(--transition-base) ease-out}.header[data-astro-cid-3ef6ksr2].scrolled.menu-open{background:var(--color-bg);backdrop-filter:none;-webkit-backdrop-filter:none;transition:none}.mobile-nav[data-astro-cid-3ef6ksr2].open{display:block}.mobile-nav-list[data-astro-cid-3ef6ksr2]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-1)}.mobile-nav-link[data-astro-cid-3ef6ksr2]{display:block;padding:var(--space-3) var(--space-4);font-size:var(--font-size-base);font-weight:500;color:var(--color-text-secondary);text-decoration:none;border-radius:var(--glass-radius-sm);transition:all var(--transition-fast)}.mobile-nav-link[data-astro-cid-3ef6ksr2]:hover,.mobile-nav-link[data-astro-cid-3ef6ksr2].active{color:var(--color-accent);background:#7c6aff14}@media(max-width:768px){.header-nav[data-astro-cid-3ef6ksr2],.search-shortcut[data-astro-cid-3ef6ksr2]{display:none}.mobile-menu-btn[data-astro-cid-3ef6ksr2]{display:flex}}.footer[data-astro-cid-sz7xmlte]{margin-top:var(--space-24);padding:var(--space-12) 0 var(--space-8);border-top:1px solid var(--color-border);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur))}.footer-content[data-astro-cid-sz7xmlte]{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-12);margin-bottom:var(--space-10)}.footer-brand[data-astro-cid-sz7xmlte]{max-width:300px}.footer-logo[data-astro-cid-sz7xmlte]{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:700;font-size:var(--font-size-lg);color:var(--color-text-primary);text-decoration:none;margin-bottom:var(--space-3)}.footer-logo[data-astro-cid-sz7xmlte]:hover{color:var(--color-text-primary)}.logo-icon[data-astro-cid-sz7xmlte]{width:24px;height:24px}.footer-description[data-astro-cid-sz7xmlte]{font-size:var(--font-size-sm);color:var(--color-text-tertiary);line-height:var(--line-height-relaxed)}.footer-social[data-astro-cid-sz7xmlte]{display:flex;align-items:center;gap:var(--space-3);list-style:none;padding:0;margin:var(--space-4) 0 0}.footer-social[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;color:var(--color-text-tertiary);background:var(--glass-bg);border:var(--glass-border);transition:color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast)}.footer-social[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--color-accent);border-color:var(--glass-border-hover);background:var(--glass-bg-hover)}.footer-nav[data-astro-cid-sz7xmlte]{display:flex;flex-wrap:wrap;gap:var(--space-8) var(--space-10)}.footer-nav-group[data-astro-cid-sz7xmlte]{min-width:140px}.footer-nav-group[data-astro-cid-sz7xmlte] ul[data-astro-cid-sz7xmlte]{list-style:none;padding:0;margin:0}.footer-nav-title[data-astro-cid-sz7xmlte]{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-primary);margin-bottom:var(--space-3)}.footer-nav-group[data-astro-cid-sz7xmlte] li[data-astro-cid-sz7xmlte]+li[data-astro-cid-sz7xmlte]{margin-top:var(--space-2)}.footer-nav-group[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{font-size:var(--font-size-sm);color:var(--color-text-tertiary);text-decoration:none;transition:color var(--transition-fast)}.footer-nav-group[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--color-text-primary)}.footer-bottom[data-astro-cid-sz7xmlte]{padding-top:var(--space-6);border-top:1px solid var(--color-border)}.footer-copyright[data-astro-cid-sz7xmlte]{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.footer-copyright[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:inherit;text-decoration:none}.footer-copyright[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--color-text-primary)}@media(max-width:640px){.footer-content[data-astro-cid-sz7xmlte]{flex-direction:column;gap:var(--space-8)}.footer-nav[data-astro-cid-sz7xmlte]{gap:var(--space-8)}}.search-overlay[data-astro-cid-otpdt6jm]{position:fixed;inset:0;z-index:var(--z-modal);display:none;align-items:flex-start;justify-content:center;padding:10vh var(--space-4) var(--space-4)}.search-overlay[data-astro-cid-otpdt6jm].active{display:flex;animation:fade-in var(--transition-fast) ease-out}.search-backdrop[data-astro-cid-otpdt6jm]{position:absolute;inset:0;background:#00000080;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.search-container[data-astro-cid-otpdt6jm]{position:relative;width:100%;max-width:600px;max-height:70vh;display:flex;flex-direction:column;animation:slide-down var(--transition-base) ease-out;overflow:hidden}.search-header[data-astro-cid-otpdt6jm]{padding:var(--space-4);border-bottom:1px solid var(--color-border)}.search-input-wrapper[data-astro-cid-otpdt6jm]{display:flex;align-items:center;gap:var(--space-3)}.search-icon[data-astro-cid-otpdt6jm]{flex-shrink:0;color:var(--color-text-tertiary)}.search-input[data-astro-cid-otpdt6jm]{flex:1;background:none;border:none;outline:none;font-size:var(--font-size-lg);color:var(--color-text-primary);font-family:var(--font-family)}.search-input[data-astro-cid-otpdt6jm]::placeholder{color:var(--color-text-tertiary)}.search-kbd[data-astro-cid-otpdt6jm]{flex-shrink:0;font-size:var(--font-size-xs);padding:2px 8px;border-radius:4px;background:var(--glass-bg);border:1px solid var(--color-border);color:var(--color-text-tertiary);font-family:var(--font-family)}.search-results[data-astro-cid-otpdt6jm]{overflow-y:auto;padding:var(--space-2)}.search-empty[data-astro-cid-otpdt6jm]{text-align:center;padding:var(--space-8);color:var(--color-text-tertiary);font-size:var(--font-size-sm)}.search-result-item{display:block;padding:var(--space-4);border-radius:var(--glass-radius-sm);text-decoration:none;transition:background var(--transition-fast)}.search-result-item:hover{background:var(--glass-bg-hover)}.search-result-title{font-weight:600;color:var(--color-text-primary);margin-bottom:var(--space-1)}.search-result-desc{font-size:var(--font-size-sm);color:var(--color-text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:var(--space-2)}.search-result-meta{display:flex;flex-wrap:wrap;gap:var(--space-2)}.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}:root{--color-bg: #0a0a0f;--color-bg-secondary: #12121a;--color-surface: rgba(255, 255, 255, .03);--color-text-primary: #f0f0f5;--color-text-secondary: #a0a0b8;--color-text-tertiary: #6a6a80;--color-accent: #e84d83;--color-accent-secondary: #ff8a5c;--color-accent-tertiary: #6affec;--color-border: rgba(255, 255, 255, .08);--color-border-hover: rgba(255, 255, 255, .15);--color-link: #f17da5;--color-link-hover: #f6a1bf;--color-code-bg: rgba(255, 255, 255, .06);--color-selection: rgba(232, 77, 131, .3);--mesh-1: rgba(208, 45, 102, .08);--mesh-2: rgba(232, 85, 85, .06);--mesh-3: rgba(106, 255, 236, .08);--mesh-4: rgba(255, 200, 106, .06);--glass-bg: rgba(255, 255, 255, .04);--glass-bg-hover: rgba(255, 255, 255, .07);--glass-bg-active: rgba(255, 255, 255, .1);--glass-blur: 20px;--glass-blur-heavy: 40px;--glass-border: 1px solid rgba(255, 255, 255, .08);--glass-border-color: rgba(255, 255, 255, .08);--glass-border-hover: rgba(255, 255, 255, .15);--glass-border-transparent: rgba(255, 255, 255, 0);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .3);--glass-shadow-hover: 0 12px 48px rgba(0, 0, 0, .4);--glass-glow: 0 0 30px rgba(232, 77, 131, .1);--glass-glow-hover: 0 0 40px rgba(232, 77, 131, .2);--glass-radius: 16px;--glass-radius-sm: 10px;--glass-radius-lg: 24px;--glass-radius-xl: 32px;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic UI", "Yu Gothic", Roboto, "Noto Sans CJK JP", "Source Han Sans JP", "Source Han Sans", "Droid Sans Fallback", Meiryo, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", "SF Mono", Consolas, monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-size-6xl: 3.75rem;--line-height-tight: 1.2;--line-height-normal: 1.6;--line-height-relaxed: 1.8;--letter-spacing-tight: -.02em;--letter-spacing-normal: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--content-width: 720px;--content-width-wide: 960px;--page-width: 1200px;--header-height: 64px;--sidebar-width: 260px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .4s cubic-bezier(.4, 0, .2, 1);--transition-spring: .5s cubic-bezier(.175, .885, .32, 1.275);--z-base: 1;--z-sticky: 100;--z-overlay: 200;--z-modal: 300;--z-toast: 400}[data-theme=light]{--color-bg: #f5f5fa;--color-bg-secondary: #eeeef4;--color-surface: rgba(255, 255, 255, .6);--color-text-primary: #1a1a2e;--color-text-secondary: #4a4a60;--color-text-tertiary: #8a8aa0;--color-accent: #d02d66;--color-accent-secondary: #e85555;--color-accent-tertiary: #2ad4c0;--color-border: rgba(0, 0, 0, .08);--color-border-hover: rgba(0, 0, 0, .15);--color-link: #be1c54;--color-link-hover: #e84d83;--color-code-bg: rgba(0, 0, 0, .04);--color-selection: rgba(208, 45, 102, .2);--mesh-1: rgba(106, 82, 255, .08);--mesh-2: rgba(232, 85, 168, .06);--mesh-3: rgba(42, 212, 192, .05);--mesh-4: rgba(255, 180, 80, .04);--glass-bg: rgba(255, 255, 255, .6);--glass-bg-hover: rgba(255, 255, 255, .75);--glass-bg-active: rgba(255, 255, 255, .9);--glass-border: 1px solid rgba(0, 0, 0, .06);--glass-border-color: rgba(0, 0, 0, .06);--glass-border-hover: rgba(0, 0, 0, .12);--glass-border-transparent: rgba(0, 0, 0, 0);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .06);--glass-shadow-hover: 0 12px 48px rgba(0, 0, 0, .1);--glass-glow: 0 0 30px rgba(208, 45, 102, .06);--glass-glow-hover: 0 0 40px rgba(208, 45, 102, .12)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;background-color:var(--color-bg)}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg);min-height:100vh;overflow-x:hidden}html.theme-transition,html.theme-transition body,html.theme-transition .mesh-bg,html.theme-transition .glass-panel,html.theme-transition .glass-card{transition-duration:var(--transition-slow)!important;transition-property:background-color,border-color,box-shadow,color!important}::selection{background:var(--color-selection)}::view-transition-group(root){background-color:var(--color-bg)}a{color:var(--color-link);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-link-hover)}img{max-width:100%;height:auto;display:block}.mesh-bg{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 80% 50% at 20% 20%,var(--mesh-1) 0%,transparent 60%),radial-gradient(ellipse 60% 60% at 80% 10%,var(--mesh-2) 0%,transparent 50%),radial-gradient(ellipse 50% 80% at 50% 80%,var(--mesh-3) 0%,transparent 50%),radial-gradient(ellipse 70% 40% at 90% 60%,var(--mesh-4) 0%,transparent 50%),var(--color-bg);transition:background var(--transition-slow)}.mesh-bg:after{content:"";position:absolute;inset:0;background:radial-gradient(circle 400px at 30% 40%,var(--mesh-1) 0%,transparent 100%),radial-gradient(circle 300px at 70% 30%,var(--mesh-2) 0%,transparent 100%);animation:mesh-drift 20s ease-in-out infinite alternate;opacity:.5}@keyframes mesh-drift{0%{transform:translate(0) scale(1)}33%{transform:translate(20px,-10px) scale(1.02)}66%{transform:translate(-15px,15px) scale(.98)}to{transform:translate(10px,5px) scale(1.01)}}.glass-panel{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:var(--glass-border);border-radius:var(--glass-radius);box-shadow:var(--glass-shadow);transition:background var(--transition-base),border-color var(--transition-base),box-shadow var(--transition-base),transform var(--transition-base)}.glass-panel:hover{background:var(--glass-bg-hover);border-color:var(--glass-border-hover);box-shadow:var(--glass-shadow-hover),var(--glass-glow-hover)}.glass-panel-static{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:var(--glass-border);border-radius:var(--glass-radius);box-shadow:var(--glass-shadow)}.glass-card{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:var(--glass-border);border-radius:var(--glass-radius);box-shadow:var(--glass-shadow);transition:background var(--transition-base),border-color var(--transition-base),box-shadow var(--transition-base),transform var(--transition-spring);position:relative;overflow:hidden}.glass-card:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,.06) 0%,transparent 50%,rgba(255,255,255,.02) 100%);pointer-events:none;transition:opacity var(--transition-base);opacity:0}.glass-card:hover{background:var(--glass-bg-hover);border-color:var(--glass-border-hover);box-shadow:var(--glass-shadow-hover),var(--glass-glow-hover);transform:translateY(-2px)}.glass-card:hover:before{opacity:1}.container{max-width:var(--page-width);margin:0 auto;padding:0 var(--space-6)}.container-narrow{max-width:var(--content-width);margin:0 auto;padding:0 var(--space-6)}.container-wide{max-width:var(--content-width-wide);margin:0 auto;padding:0 var(--space-6)}.chip{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-3);border-radius:999px;font-size:var(--font-size-xs);font-weight:500;letter-spacing:.02em;background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--glass-border-color);color:var(--color-text-secondary);transition:all var(--transition-fast);text-decoration:none;white-space:nowrap}.chip:hover{background:var(--glass-bg-hover);border-color:var(--glass-border-hover);color:var(--color-text-primary);transform:translateY(-1px)}.chip-accent{background:#e84d831f;border-color:#e84d8333;color:var(--color-accent)}.chip-accent:hover{background:#e84d8333;border-color:#e84d834d;color:var(--color-accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);border-radius:var(--glass-radius-sm);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:500;border:var(--glass-border);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-base);text-decoration:none}.btn:hover{background:var(--glass-bg-hover);border-color:var(--glass-border-hover);color:var(--color-text-primary);box-shadow:var(--glass-glow)}.btn-primary{background:linear-gradient(135deg,var(--color-accent),var(--color-accent-secondary));border:none;color:#fff}.btn-primary:hover{background:linear-gradient(135deg,var(--color-accent),var(--color-accent-secondary));opacity:.9;box-shadow:0 0 20px #e84d8366;color:#fff}.prose{color:var(--color-text-primary);line-height:var(--line-height-relaxed);font-size:var(--font-size-lg)}.prose>*+*{margin-top:var(--space-6)}.prose h1,.prose h2,.prose h3,.prose h4,.prose h5,.prose h6{font-weight:700;line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);color:var(--color-text-primary);scroll-margin-top:calc(var(--header-height) + var(--space-8))}.prose h1{font-size:var(--font-size-4xl);margin-top:var(--space-16)}.prose h2{font-size:var(--font-size-3xl);margin-top:var(--space-16);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border)}.prose h3{font-size:var(--font-size-2xl);margin-top:var(--space-12)}.prose h4{font-size:var(--font-size-xl);margin-top:var(--space-10)}.prose p{color:var(--color-text-secondary)}.prose a{color:var(--color-link);text-decoration:underline;text-decoration-color:#e84d834d;text-underline-offset:3px;transition:all var(--transition-fast)}.prose a:hover{color:var(--color-link-hover);text-decoration-color:var(--color-link-hover)}.prose strong{font-weight:600;color:var(--color-text-primary)}.prose em{font-style:italic}.prose ul,.prose ol{padding-left:var(--space-6);color:var(--color-text-secondary)}.prose li+li{margin-top:var(--space-2)}.prose li::marker{color:var(--color-accent)}.prose blockquote{border-left:3px solid var(--color-accent);padding:var(--space-4) var(--space-6);background:var(--glass-bg);border-radius:0 var(--glass-radius-sm) var(--glass-radius-sm) 0;color:var(--color-text-secondary);font-style:italic}.prose blockquote p{color:var(--color-text-secondary)}.prose .admonition{margin:var(--space-6) 0;padding:var(--space-4) var(--space-5);border-radius:var(--glass-radius-sm);border:var(--glass-border);border-left:3px solid var(--admonition-color);background:var(--glass-bg)}.prose .admonition>:last-child{margin-bottom:0}.prose .admonition-title{display:flex;align-items:center;gap:var(--space-2);margin:0 0 var(--space-2);font-weight:700;font-size:var(--font-size-sm);color:var(--admonition-color)}.prose .admonition-title svg{flex-shrink:0}.prose .admonition-note{--admonition-color: #3b82f6}.prose .admonition-tip{--admonition-color: #22c55e}.prose .admonition-important{--admonition-color: #a855f7}.prose .admonition-warning{--admonition-color: #f59e0b}.prose .admonition-caution{--admonition-color: #ef4444}.prose code{font-family:var(--font-mono);font-size:.88em;padding:.15em .4em;background:var(--color-code-bg);border-radius:4px;color:var(--color-accent)}.prose pre{font-family:var(--font-mono);font-size:var(--font-size-sm);line-height:1.7;padding:var(--space-6);background:var(--glass-bg)!important;backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:var(--glass-border);border-radius:var(--glass-radius);overflow-x:auto}.prose pre code{background:none;padding:0;border-radius:0;color:inherit;font-size:inherit}html[data-theme=dark] .astro-code,html[data-theme=dark] .astro-code span{color:var(--shiki-dark, inherit)!important;font-style:var(--shiki-dark-font-style, inherit)!important;font-weight:var(--shiki-dark-font-weight, inherit)!important;text-decoration:var(--shiki-dark-text-decoration, inherit)!important}html[data-theme=light] .astro-code,html[data-theme=light] .astro-code span{color:var(--shiki-light, inherit)!important;font-style:var(--shiki-light-font-style, inherit)!important;font-weight:var(--shiki-light-font-weight, inherit)!important;text-decoration:var(--shiki-light-text-decoration, inherit)!important}.code-block-wrapper{position:relative;margin:var(--space-6) 0}.code-block-wrapper pre{margin:0}.copy-code-btn{position:absolute;top:var(--space-2);right:var(--space-2);padding:var(--space-2);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur-heavy));-webkit-backdrop-filter:blur(var(--glass-blur-heavy));border:var(--glass-border);border-radius:var(--glass-radius-sm);color:var(--color-text-secondary);cursor:pointer;opacity:0;transition:all var(--transition-base);display:flex;align-items:center;justify-content:center;width:32px;height:32px}.code-block-wrapper:hover .copy-code-btn{opacity:1}.copy-code-btn:hover{background:var(--glass-bg-hover);color:var(--color-text-primary)}.copy-code-btn.copied{color:#10b981;border-color:#10b9814d}.prose img{border-radius:var(--glass-radius);border:var(--glass-border);box-shadow:var(--glass-shadow)}.prose hr{border:none;height:1px;background:linear-gradient(90deg,transparent,var(--color-border),transparent);margin:var(--space-12) 0}.prose table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.prose th,.prose td{padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);text-align:left}.prose th{background:var(--glass-bg);font-weight:600;color:var(--color-text-primary)}.prose td{color:var(--color-text-secondary)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-down{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes glow-pulse{0%,to{box-shadow:var(--glass-glow)}50%{box-shadow:var(--glass-glow-hover)}}.animate-fade-in{animation:fade-in var(--transition-slow) ease-out both}.animate-slide-up{animation:slide-up var(--transition-slow) ease-out both}.animate-slide-down{animation:slide-down var(--transition-base) ease-out both}.stagger-children>*{animation:slide-up var(--transition-slow) ease-out both}.stagger-children>*:nth-child(1){animation-delay:0ms}.stagger-children>*:nth-child(2){animation-delay:60ms}.stagger-children>*:nth-child(3){animation-delay:.12s}.stagger-children>*:nth-child(4){animation-delay:.18s}.stagger-children>*:nth-child(5){animation-delay:.24s}.stagger-children>*:nth-child(6){animation-delay:.3s}.stagger-children>*:nth-child(7){animation-delay:.36s}.stagger-children>*:nth-child(8){animation-delay:.42s}.stagger-children>*:nth-child(9){animation-delay:.48s}.stagger-children>*:nth-child(10){animation-delay:.54s}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-border-hover)}@media(max-width:768px){:root{--font-size-5xl: 2.25rem;--font-size-4xl: 1.875rem;--font-size-3xl: 1.5rem;--font-size-2xl: 1.25rem;--header-height: 56px}.container,.container-narrow,.container-wide{padding:0 var(--space-4)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.text-gradient{background:linear-gradient(135deg,var(--color-accent),var(--color-accent-secondary),var(--color-accent-tertiary));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.link-card{display:flex;text-decoration:none;overflow:hidden;margin:var(--space-6) 0}.link-card-image{flex-shrink:0;width:200px;overflow:hidden}.link-card-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-base)}.link-card:hover .link-card-image img{transform:scale(1.05)}.link-card-content{flex:1;padding:var(--space-4) var(--space-5);display:flex;flex-direction:column;justify-content:center;min-width:0}.link-card-title{font-size:var(--font-size-base);font-weight:600;color:var(--color-text-primary);line-height:var(--line-height-tight);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.link-card-description{font-size:var(--font-size-sm);color:var(--color-text-tertiary);margin-top:var(--space-2);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.5}.link-card-meta{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-3);font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.link-card-favicon{border-radius:2px;flex-shrink:0}.link-card-domain{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-card-external{flex-shrink:0;margin-left:auto;opacity:.5}@media(max-width:640px){.link-card{flex-direction:column}.link-card-image{width:100%;height:160px}}.main-content[data-astro-cid-37fxchfa]{min-height:calc(100vh - var(--header-height) - 200px)}@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}}
