:root{--c-bg: #F5F5F3;--c-bg-warm: #EDEBE6;--c-surface: #FAFAF8;--c-card: #FFFFFF;--c-text: #2C2C2E;--c-text-soft: #8E8E93;--c-text-muted: #A5A59E;--c-accent: #7A8B76;--c-accent-soft: #9BAE97;--c-accent-dark: #6A7B66;--c-border: #E5E5E5;--c-border-light: #EAE7E2;--c-shadow: rgba(0, 0, 0, .05);--tag-ocher: #A35555;--tag-orange: #C27D43;--tag-straw: #B89C49;--tag-sage: #627A5D;--tag-mist: #5C7694;--tag-twilight: #786A8A;--tag-stone: #75757A;--tag-teal: #4F8A86;--tag-rose: #B06A83;--tag-chestnut: #8A6A52;--font-display: "Kameron", Georgia, serif;--font-body: "DM Sans", -apple-system, BlinkMacSystemFont, sans-serif;--max-width-page: 720px;--max-width-prose: 640px;--card-radius: 20px;--card-radius-sm: 12px;--card-padding: 16px;color-scheme:light}[data-theme=dark]{--c-bg: #1A1A1C;--c-bg-warm: #1E1E20;--c-surface: #242426;--c-card: #242426;--c-text: #EAEAEA;--c-text-soft: #7A7A80;--c-text-muted: #636368;--c-accent: #8A9A86;--c-accent-soft: #6A7A66;--c-accent-dark: #7A8A76;--c-border: #3A3A3C;--c-border-light: #2E2E30;--c-shadow: rgba(0, 0, 0, .3);color-scheme:dark}@media(prefers-color-scheme:dark){:root:not([data-theme]){--c-bg: #1A1A1C;--c-bg-warm: #1E1E20;--c-surface: #242426;--c-card: #242426;--c-text: #EAEAEA;--c-text-soft: #7A7A80;--c-text-muted: #636368;--c-accent: #8A9A86;--c-accent-soft: #6A7A66;--c-accent-dark: #7A8A76;--c-border: #3A3A3C;--c-border-light: #2E2E30;--c-shadow: rgba(0, 0, 0, .3);color-scheme:dark}}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);font-weight:400;line-height:1.7;color:var(--c-text);background-color:var(--c-bg);position:relative;transition:background-color .3s ease,color .3s ease}.grain{position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:.028;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:180px 180px}.page-container{max-width:var(--max-width-page);margin:0 auto;padding:0 1.6rem}.prose-container{max-width:var(--max-width-prose);margin:0 auto;padding:0 1.6rem}.narrow-container{max-width:560px;margin:0 auto;padding:0 1.6rem}.card{background:var(--c-card);border-radius:var(--card-radius);box-shadow:0 2px 8px var(--c-shadow);overflow:hidden;transition:background-color .3s ease,box-shadow .3s ease,transform .3s ease}.card-sm{border-radius:var(--card-radius-sm)}.card-hover:hover{transform:translateY(-2px);box-shadow:0 4px 16px var(--c-shadow)}.section-line{width:40px;height:1px;background:var(--c-accent-soft);margin-bottom:2rem}@keyframes breathe{0%,to{transform:scale(1);opacity:.6}50%{transform:scale(1.15);opacity:1}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInSlow{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fadeIn .8s ease both}.prose h2{font-family:var(--font-display);font-size:1.5rem;font-weight:400;margin-top:2.8rem;margin-bottom:.8rem;letter-spacing:-.01em;color:var(--c-text);line-height:1.3}.prose h3{font-family:var(--font-body);font-size:1rem;font-weight:600;margin-top:1.6rem;margin-bottom:.5rem;color:var(--c-text)}.prose p{color:var(--c-text-soft);font-size:1rem;line-height:1.8;margin-bottom:1rem}.prose a{color:var(--c-accent);text-decoration:none;border-bottom:1px solid var(--c-border);transition:border-color .3s ease}.prose a:hover{border-color:var(--c-accent)}.prose blockquote{border-left:2px solid var(--c-accent-soft);padding-left:1.2rem;margin:1.6rem 0}.prose blockquote p{font-family:var(--font-display);font-style:italic;font-size:1.1rem;color:var(--c-text);line-height:1.7}.prose code{background:var(--c-bg-warm);padding:.15rem .4rem;border-radius:4px;font-size:.9em}.prose pre{background:var(--c-bg-warm);border:1px solid var(--c-border-light);border-radius:8px;padding:1rem 1.2rem;overflow-x:auto;margin:1.2rem 0}.prose pre code{background:none;padding:0}.prose ul,.prose ol{margin:.8rem 0 1rem 1.4rem;color:var(--c-text-soft);line-height:1.8}.prose li{margin-bottom:.4rem}.prose img{max-width:100%;border-radius:8px;margin:1.2rem 0}.prose strong{font-weight:600;color:var(--c-text)}.prose hr{border:none;border-top:1px solid var(--c-border);margin:2rem 0}.prose table{width:100%;border-collapse:collapse;margin:1.4rem 0}.prose th,.prose td{border:1px solid var(--c-border);padding:.7rem .9rem;text-align:left;font-size:.88rem}.prose th{background:var(--c-bg-warm);font-weight:600;color:var(--c-text)}.prose td{color:var(--c-text-soft)}@media(prefers-reduced-motion:reduce){.animate-fade-in{animation:none}html{scroll-behavior:auto}}.site-header[data-astro-cid-37fxchfa]{position:relative;z-index:10}.site-nav[data-astro-cid-37fxchfa]{max-width:var(--max-width-page);margin:0 auto;padding:1.4rem 1.6rem;display:flex;align-items:center;justify-content:space-between}.nav-logo[data-astro-cid-37fxchfa]{font-family:var(--font-display);font-size:1.25rem;font-weight:700;color:var(--c-text);text-decoration:none;letter-spacing:-.01em;transition:color .3s ease}.nav-logo[data-astro-cid-37fxchfa]:hover{color:var(--c-accent)}.nav-right[data-astro-cid-37fxchfa]{display:flex;align-items:center;gap:2rem}.nav-links[data-astro-cid-37fxchfa]{display:flex;gap:2rem}.nav-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]{font-size:.85rem;font-weight:500;color:var(--c-text-soft);text-decoration:none;letter-spacing:.02em;transition:color .3s ease}.nav-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]:hover{color:var(--c-accent)}.theme-toggle[data-astro-cid-37fxchfa]{background:none;border:1px solid var(--c-border);border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--c-text-soft);transition:border-color .3s ease,color .3s ease;padding:0}.theme-toggle[data-astro-cid-37fxchfa]:hover{border-color:var(--c-accent);color:var(--c-accent)}.icon-sun[data-astro-cid-37fxchfa]{display:none}.icon-moon[data-astro-cid-37fxchfa],[data-theme=dark] .icon-sun[data-astro-cid-37fxchfa]{display:block}[data-theme=dark] .icon-moon[data-astro-cid-37fxchfa]{display:none}@media(prefers-color-scheme:dark){:root:not([data-theme]) .icon-sun[data-astro-cid-37fxchfa]{display:block}:root:not([data-theme]) .icon-moon[data-astro-cid-37fxchfa]{display:none}}.site-footer[data-astro-cid-37fxchfa]{padding:2.4rem 0;border-top:1px solid var(--c-border-light);transition:border-color .3s ease}.footer-inner[data-astro-cid-37fxchfa]{max-width:var(--max-width-page);margin:0 auto;padding:0 1.6rem;display:flex;align-items:center;justify-content:space-between}.footer-copy[data-astro-cid-37fxchfa]{font-size:.8rem;color:var(--c-text-muted)}.footer-links[data-astro-cid-37fxchfa]{display:flex;gap:1.6rem}.footer-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]{font-size:.8rem;color:var(--c-text-muted);text-decoration:none;transition:color .3s ease}.footer-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]:hover{color:var(--c-accent)}@media(max-width:640px){.site-nav[data-astro-cid-37fxchfa]{flex-direction:column;gap:.8rem;padding:1.2rem 1.4rem}.nav-links[data-astro-cid-37fxchfa]{gap:1.4rem}.footer-inner[data-astro-cid-37fxchfa]{flex-direction:column;gap:.8rem;text-align:center}}
